public encode()

in packages/api-builder/src/api/MarkBuilder.ts [134:356]


	public encode(
		key: MarkEncodingKey.fillOpacity,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.stroke,
		encoding: undefined | MarkEncoding<string | Gradient>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.strokeOpacity,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.strokeWidth,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.strokeCap,
		encoding: undefined | MarkEncoding<StrokeCap>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.strokeDash,
		encoding: undefined | MarkEncoding<[number, number]>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.strokeDashOffset,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.strokeJoin,
		encoding: undefined | MarkEncoding<StrokeJoin>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.strokeMiterLimit,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.cursor,
		encoding: undefined | MarkEncoding<string>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.href,
		encoding: undefined | MarkEncoding<string>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.tooltip,
		encoding: undefined | MarkEncoding<string>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.zIndex,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.startAngle,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.endAngle,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.padAngle,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.innerRadius,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.outerRadius,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.cornerRadius,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.orient,
		encoding: undefined | MarkEncoding<Orientation>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.interpolate,
		encoding: undefined | MarkEncoding<Interpolation>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.tension,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.defined,
		encoding: undefined | MarkEncoding<boolean>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.clip,
		encoding: undefined | MarkEncoding<boolean>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.url,
		encoding: undefined | MarkEncoding<string>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.aspect,
		encoding: undefined | MarkEncoding<boolean>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.align,
		encoding: undefined | MarkEncoding<HorizontalAlignment>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.baseline,
		encoding:
			| undefined
			| MarkEncoding<VerticalAlignment | VerticalTextAlignment>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.path,
		encoding: undefined | MarkEncoding<string>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.size,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.shape,
		encoding: undefined | MarkEncoding<SymbolType | string>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.angle,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.dir,
		encoding: undefined | MarkEncoding<TextDirection>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.dx,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.dy,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.ellipsis,
		encoding: undefined | MarkEncoding<string>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.font,
		encoding: undefined | MarkEncoding<string>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.fontSize,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.fontWeight,
		encoding: undefined | MarkEncoding<FontWeight>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.fontVariant,
		encoding: undefined | MarkEncoding<string | number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.fontStyle,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.limit,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.radius,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.text,
		encoding: undefined | MarkEncoding<string>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.theta,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.ariaTitle,
		encoding: undefined | MarkEncoding<string>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.ariaDescription,
		encoding: undefined | MarkEncoding<string>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.tabIndex,
		encoding: undefined | MarkEncoding<number>,
	): MarkBuilder
	public encode(
		key: MarkEncodingKey.metadata,
		encoding: undefined | MarkEncoding<Metadata>,
	): MarkBuilder
	public encode(key: MarkEncodingKey, encoding: MarkEncoding<any>): MarkBuilder
	public encode(encodings: MarkEncodings): MarkBuilder

	// #endregion

	// Polymorphic function definition
	public encode(
		first: MarkEncodingKey | MarkEncodings,
		encoding?: MarkEncoding<any>,
	): MarkBuilder {
		if (typeof first === 'string') {
			// Handle encode(key, encoding) invocations
			this.spec.applyEncoding(first as string, encoding)
		} else {
			// Handle encode(map) invocations
			Object.entries(first as MarkEncodings).forEach(
				([name, entryEncoding]) => {
					this.spec.applyEncoding(name, entryEncoding)
				},
			)
		}

		this.onChange.next('mark encoders changed')
		return this
	}