diff --git a/build/vega-lite-schema.json b/build/vega-lite-schema.json index 6a21a34356..a3a05eca58 100644 --- a/build/vega-lite-schema.json +++ b/build/vega-lite-schema.json @@ -8185,32 +8185,6 @@ }, "type": "object" }, - "EncodingSortField": { - "additionalProperties": false, - "description": "A sort definition for sorting a discrete scale in an encoding field definition.", - "properties": { - "field": { - "$ref": "#/definitions/FieldName", - "description": "The data [field](https://vega.github.io/vega-lite/docs/field.html) to sort by.\n\n__Default value:__ If unspecified, defaults to the field specified in the outer data reference." - }, - "op": { - "$ref": "#/definitions/NonArgAggregateOp", - "description": "An [aggregate operation](https://vega.github.io/vega-lite/docs/aggregate.html#ops) to perform on the field prior to sorting (e.g., `\"count\"`, `\"mean\"` and `\"median\"`). An aggregation is required when there are multiple values of the sort field for each encoded data field. The input data objects will be aggregated, grouped by the encoded data field.\n\nFor a full list of operations, please see the documentation for [aggregate](https://vega.github.io/vega-lite/docs/aggregate.html#ops).\n\n__Default value:__ `\"sum\"` for stacked plots. Otherwise, `\"min\"`." - }, - "order": { - "anyOf": [ - { - "$ref": "#/definitions/SortOrder" - }, - { - "type": "null" - } - ], - "description": "The sort order. One of `\"ascending\"` (default), `\"descending\"`, or `null` (no not sort)." - } - }, - "type": "object" - }, "ErrorBand": { "const": "errorband", "type": "string" @@ -8808,87 +8782,6 @@ }, "type": "object" }, - "FacetFieldDef": { - "additionalProperties": false, - "properties": { - "aggregate": { - "$ref": "#/definitions/Aggregate", - "description": "Aggregation function for the field (e.g., `\"mean\"`, `\"sum\"`, `\"median\"`, `\"min\"`, `\"max\"`, `\"count\"`).\n\n__Default value:__ `undefined` (None)\n\n__See also:__ [`aggregate`](https://vega.github.io/vega-lite/docs/aggregate.html) documentation." - }, - "band": { - "description": "For rect-based marks (`rect`, `bar`, and `image`), mark size relative to bandwidth of [band scales](https://vega.github.io/vega-lite/docs/scale.html#band), bins or time units. If set to `1`, the mark size is set to the bandwidth, the bin interval, or the time unit interval. If set to `0.5`, the mark size is half of the bandwidth or the time unit interval.\n\nFor other marks, relative position on a band of a stacked, binned, time unit or band scale. If set to `0`, the marks will be positioned at the beginning of the band. If set to `0.5`, the marks will be positioned in the middle of the band.", - "maximum": 1, - "minimum": 0, - "type": "number" - }, - "bin": { - "anyOf": [ - { - "type": "boolean" - }, - { - "$ref": "#/definitions/BinParams" - }, - { - "type": "null" - } - ], - "description": "A flag for binning a `quantitative` field, [an object defining binning parameters](https://vega.github.io/vega-lite/docs/bin.html#params), or indicating that the data for `x` or `y` channel are binned before they are imported into Vega-Lite (`\"binned\"`).\n\n- If `true`, default [binning parameters](https://vega.github.io/vega-lite/docs/bin.html) will be applied.\n\n- If `\"binned\"`, this indicates that the data for the `x` (or `y`) channel are already binned. You can map the bin-start field to `x` (or `y`) and the bin-end field to `x2` (or `y2`). The scale and axis will be formatted similar to binning in Vega-Lite. To adjust the axis ticks based on the bin step, you can also set the axis's [`tickMinStep`](https://vega.github.io/vega-lite/docs/axis.html#ticks) property.\n\n__Default value:__ `false`\n\n__See also:__ [`bin`](https://vega.github.io/vega-lite/docs/bin.html) documentation." - }, - "field": { - "$ref": "#/definitions/FieldName", - "description": "__Required.__ A string defining the name of the field from which to pull a data value or an object defining iterated values from the [`repeat`](https://vega.github.io/vega-lite/docs/repeat.html) operator.\n\n__See also:__ [`field`](https://vega.github.io/vega-lite/docs/field.html) documentation.\n\n__Notes:__ 1) Dots (`.`) and brackets (`[` and `]`) can be used to access nested objects (e.g., `\"field\": \"foo.bar\"` and `\"field\": \"foo['bar']\"`). If field names contain dots or brackets but are not nested, you can use `\\\\` to escape dots and brackets (e.g., `\"a\\\\.b\"` and `\"a\\\\[0\\\\]\"`). See more details about escaping in the [field documentation](https://vega.github.io/vega-lite/docs/field.html). 2) `field` is not required if `aggregate` is `count`." - }, - "header": { - "$ref": "#/definitions/Header", - "description": "An object defining properties of a facet's header." - }, - "sort": { - "anyOf": [ - { - "$ref": "#/definitions/SortArray" - }, - { - "$ref": "#/definitions/SortOrder" - }, - { - "$ref": "#/definitions/EncodingSortField" - }, - { - "type": "null" - } - ], - "description": "Sort order for the encoded field.\n\nFor continuous fields (quantitative or temporal), `sort` can be either `\"ascending\"` or `\"descending\"`.\n\nFor discrete fields, `sort` can be one of the following: - `\"ascending\"` or `\"descending\"` -- for sorting by the values' natural order in JavaScript. - [A sort field definition](https://vega.github.io/vega-lite/docs/sort.html#sort-field) for sorting by another field. - [An array specifying the field values in preferred order](https://vega.github.io/vega-lite/docs/sort.html#sort-array). In this case, the sort order will obey the values in the array, followed by any unspecified values in their original order. For discrete time field, values in the sort array can be [date-time definition objects](types#datetime). In addition, for time units `\"month\"` and `\"day\"`, the values can be the month or day names (case insensitive) or their 3-letter initials (e.g., `\"Mon\"`, `\"Tue\"`). - `null` indicating no sort.\n\n__Default value:__ `\"ascending\"`\n\n__Note:__ `null` is not supported for `row` and `column`." - }, - "timeUnit": { - "anyOf": [ - { - "$ref": "#/definitions/TimeUnit" - }, - { - "$ref": "#/definitions/TimeUnitParams" - } - ], - "description": "Time unit (e.g., `year`, `yearmonth`, `month`, `hours`) for a temporal field. or [a temporal field that gets casted as ordinal](https://vega.github.io/vega-lite/docs/type.html#cast).\n\n__Default value:__ `undefined` (None)\n\n__See also:__ [`timeUnit`](https://vega.github.io/vega-lite/docs/timeunit.html) documentation." - }, - "title": { - "anyOf": [ - { - "$ref": "#/definitions/Text" - }, - { - "type": "null" - } - ], - "description": "A title for the field. If `null`, the title will be removed.\n\n__Default value:__ derived from the field's name and transformation function (`aggregate`, `bin` and `timeUnit`). If the field has an aggregate function, the function is displayed as part of the title (e.g., `\"Sum of Profit\"`). If the field is binned or has a time unit applied, the applied function is shown in parentheses (e.g., `\"Profit (binned)\"`, `\"Transaction Date (year-month)\"`). Otherwise, the title is simply the field name.\n\n__Notes__:\n\n1) You can customize the default field title format by providing the [`fieldTitle`](https://vega.github.io/vega-lite/docs/config.html#top-level-config) property in the [config](https://vega.github.io/vega-lite/docs/config.html) or [`fieldTitle` function via the `compile` function's options](https://vega.github.io/vega-lite/docs/compile.html#field-title).\n\n2) If both field definition's `title` and axis, header, or legend `title` are defined, axis/header/legend title will be used." - }, - "type": { - "$ref": "#/definitions/StandardType", - "description": "The type of measurement (`\"quantitative\"`, `\"temporal\"`, `\"ordinal\"`, or `\"nominal\"`) for the encoded field or constant value (`datum`). It can also be a `\"geojson\"` type for encoding ['geoshape'](https://vega.github.io/vega-lite/docs/geoshape.html).\n\nVega-Lite automatically infers data types in many cases as discussed below. However, type is required for a field if: (1) the field is not nominal and the field encoding has no specified `aggregate` (except `argmin` and `argmax`), `bin`, scale type, custom `sort` order, nor `timeUnit` or (2) if you wish to use an ordinal scale for a field with `bin` or `timeUnit`.\n\n__Default value:__\n\n1) For a data `field`, `\"nominal\"` is the default data type unless the field encoding has `aggregate`, `channel`, `bin`, scale type, `sort`, or `timeUnit` that satisfies the following criteria: - `\"quantitative\"` is the default type if (1) the encoded field contains `bin` or `aggregate` except `\"argmin\"` and `\"argmax\"`, (2) the encoding channel is `latitude` or `longitude` channel or (3) if the specified scale type is [a quantitative scale](https://vega.github.io/vega-lite/docs/scale.html#type). - `\"temporal\"` is the default type if (1) the encoded field contains `timeUnit` or (2) the specified scale type is a time or utc scale - `ordinal\"\"` is the default type if (1) the encoded field contains a [custom `sort` order](https://vega.github.io/vega-lite/docs/sort.html#specifying-custom-sort-order), (2) the specified scale type is an ordinal/point/band scale, or (3) the encoding channel is `order`.\n\n2) For a constant value in data domain (`datum`): - `\"quantitative\"` if the datum is a number - `\"nominal\"` if the datum is a string - `\"temporal\"` if the datum is [a date time object](https://vega.github.io/vega-lite/docs/datetime.html)\n\n__Note:__ - Data `type` describes the semantics of the data rather than the primitive data types (number, string, etc.). The same primitive data type can have different types of measurement. For example, numeric data can represent quantitative, ordinal, or nominal data. - Data values for a temporal field can be either a date-time string (e.g., `\"2015-03-07 12:32:17\"`, `\"17:01\"`, `\"2015-03-16\"`. `\"2015\"`) or a timestamp number (e.g., `1552199579097`). - When using with [`bin`](https://vega.github.io/vega-lite/docs/bin.html), the `type` property can be either `\"quantitative\"` (for using a linear bin scale) or [`\"ordinal\"` (for using an ordinal bin scale)](https://vega.github.io/vega-lite/docs/type.html#cast-bin). - When using with [`timeUnit`](https://vega.github.io/vega-lite/docs/timeunit.html), the `type` property can be either `\"temporal\"` (default, for using a temporal scale) or [`\"ordinal\"` (for using an ordinal scale)](https://vega.github.io/vega-lite/docs/type.html#cast-bin). - When using with [`aggregate`](https://vega.github.io/vega-lite/docs/aggregate.html), the `type` property refers to the post-aggregation data type. For example, we can calculate count `distinct` of a categorical field `\"cat\"` using `{\"aggregate\": \"distinct\", \"field\": \"cat\"}`. The `\"type\"` of the aggregate output is `\"quantitative\"`. - Secondary channels (e.g., `x2`, `y2`, `xError`, `yError`) do not have `type` as they must have exactly the same type as their primary channels (e.g., `x`, `y`).\n\n__See also:__ [`type`](https://vega.github.io/vega-lite/docs/type.html) documentation." - } - }, - "type": "object" - }, "FacetMapping": { "additionalProperties": false, "properties": { @@ -8903,20 +8796,6 @@ }, "type": "object" }, - "FacetMapping": { - "additionalProperties": false, - "properties": { - "column": { - "$ref": "#/definitions/FacetFieldDef", - "description": "A field definition for the horizontal facet of trellis plots." - }, - "row": { - "$ref": "#/definitions/FacetFieldDef", - "description": "A field definition for the vertical facet of trellis plots." - } - }, - "type": "object" - }, "FacetedEncoding": { "additionalProperties": false, "properties": { @@ -10653,109 +10532,6 @@ } ] }, - "NormalizedConcatSpec": { - "additionalProperties": false, - "description": "Base interface for a generalized concatenation specification.", - "properties": { - "align": { - "anyOf": [ - { - "$ref": "#/definitions/LayoutAlign" - }, - { - "$ref": "#/definitions/RowCol" - } - ], - "description": "The alignment to apply to grid rows and columns. The supported string values are `\"all\"`, `\"each\"`, and `\"none\"`.\n\n- For `\"none\"`, a flow layout will be used, in which adjacent subviews are simply placed one after the other. - For `\"each\"`, subviews will be aligned into a clean grid structure, but each row or column may be of variable size. - For `\"all\"`, subviews will be aligned and each row or column will be sized identically based on the maximum observed size. String values for this property will be applied to both grid rows and columns.\n\nAlternatively, an object value of the form `{\"row\": string, \"column\": string}` can be used to supply different alignments for rows and columns.\n\n__Default value:__ `\"all\"`." - }, - "bounds": { - "description": "The bounds calculation method to use for determining the extent of a sub-plot. One of `full` (the default) or `flush`.\n\n- If set to `full`, the entire calculated bounds (including axes, title, and legend) will be used. - If set to `flush`, only the specified width and height values for the sub-view will be used. The `flush` setting can be useful when attempting to place sub-plots without axes or legends into a uniform grid structure.\n\n__Default value:__ `\"full\"`", - "enum": [ - "full", - "flush" - ], - "type": "string" - }, - "center": { - "anyOf": [ - { - "type": "boolean" - }, - { - "$ref": "#/definitions/RowCol" - } - ], - "description": "Boolean flag indicating if subviews should be centered relative to their respective rows or columns.\n\nAn object value of the form `{\"row\": boolean, \"column\": boolean}` can be used to supply different centering values for rows and columns.\n\n__Default value:__ `false`" - }, - "columns": { - "description": "The number of columns to include in the view composition layout.\n\n__Default value__: `undefined` -- An infinite number of columns (a single row) will be assumed. This is equivalent to `hconcat` (for `concat`) and to using the `column` channel (for `facet` and `repeat`).\n\n__Note__:\n\n1) This property is only for: - the general (wrappable) `concat` operator (not `hconcat`/`vconcat`) - the `facet` and `repeat` operator with one field/repetition definition (without row/column nesting)\n\n2) Setting the `columns` to `1` is equivalent to `vconcat` (for `concat`) and to using the `row` channel (for `facet` and `repeat`).", - "type": "number" - }, - "concat": { - "description": "A list of views to be concatenated.", - "items": { - "$ref": "#/definitions/NormalizedSpec" - }, - "type": "array" - }, - "data": { - "anyOf": [ - { - "$ref": "#/definitions/Data" - }, - { - "type": "null" - } - ], - "description": "An object describing the data source. Set to `null` to ignore the parent's data source. If no data is set, it is derived from the parent." - }, - "description": { - "description": "Description of this mark for commenting purpose.", - "type": "string" - }, - "name": { - "description": "Name of the visualization for later reference.", - "type": "string" - }, - "resolve": { - "$ref": "#/definitions/Resolve", - "description": "Scale, axis, and legend resolutions for view composition specifications." - }, - "spacing": { - "anyOf": [ - { - "type": "number" - }, - { - "$ref": "#/definitions/RowCol" - } - ], - "description": "The spacing in pixels between sub-views of the composition operator. An object of the form `{\"row\": number, \"column\": number}` can be used to set different spacing values for rows and columns.\n\n__Default value__: Depends on `\"spacing\"` property of [the view composition configuration](https://vega.github.io/vega-lite/docs/config.html#view-config) (`20` by default)" - }, - "title": { - "anyOf": [ - { - "$ref": "#/definitions/Text" - }, - { - "$ref": "#/definitions/TitleParams" - } - ], - "description": "Title for the plot." - }, - "transform": { - "description": "An array of data transformations such as filter and new field calculation.", - "items": { - "$ref": "#/definitions/Transform" - }, - "type": "array" - } - }, - "required": [ - "concat" - ], - "type": "object" - }, "ConcatSpec": { "additionalProperties": false, "description": "Base interface for a generalized concatenation specification.", @@ -10859,7 +10635,7 @@ ], "type": "object" }, - "NormalizedFacetSpec": { + "FacetSpec": { "additionalProperties": false, "description": "Base interface for a facet specification.", "properties": { @@ -10978,199 +10754,6 @@ ], "type": "object" }, - "FacetSpec": { - "additionalProperties": false, - "description": "Base interface for a facet specification.", - "properties": { - "align": { - "anyOf": [ - { - "$ref": "#/definitions/LayoutAlign" - }, - { - "$ref": "#/definitions/RowCol" - } - ], - "description": "The alignment to apply to grid rows and columns. The supported string values are `\"all\"`, `\"each\"`, and `\"none\"`.\n\n- For `\"none\"`, a flow layout will be used, in which adjacent subviews are simply placed one after the other. - For `\"each\"`, subviews will be aligned into a clean grid structure, but each row or column may be of variable size. - For `\"all\"`, subviews will be aligned and each row or column will be sized identically based on the maximum observed size. String values for this property will be applied to both grid rows and columns.\n\nAlternatively, an object value of the form `{\"row\": string, \"column\": string}` can be used to supply different alignments for rows and columns.\n\n__Default value:__ `\"all\"`." - }, - "bounds": { - "description": "The bounds calculation method to use for determining the extent of a sub-plot. One of `full` (the default) or `flush`.\n\n- If set to `full`, the entire calculated bounds (including axes, title, and legend) will be used. - If set to `flush`, only the specified width and height values for the sub-view will be used. The `flush` setting can be useful when attempting to place sub-plots without axes or legends into a uniform grid structure.\n\n__Default value:__ `\"full\"`", - "enum": [ - "full", - "flush" - ], - "type": "string" - }, - "center": { - "anyOf": [ - { - "type": "boolean" - }, - { - "$ref": "#/definitions/RowCol" - } - ], - "description": "Boolean flag indicating if subviews should be centered relative to their respective rows or columns.\n\nAn object value of the form `{\"row\": boolean, \"column\": boolean}` can be used to supply different centering values for rows and columns.\n\n__Default value:__ `false`" - }, - "columns": { - "description": "The number of columns to include in the view composition layout.\n\n__Default value__: `undefined` -- An infinite number of columns (a single row) will be assumed. This is equivalent to `hconcat` (for `concat`) and to using the `column` channel (for `facet` and `repeat`).\n\n__Note__:\n\n1) This property is only for: - the general (wrappable) `concat` operator (not `hconcat`/`vconcat`) - the `facet` and `repeat` operator with one field/repetition definition (without row/column nesting)\n\n2) Setting the `columns` to `1` is equivalent to `vconcat` (for `concat`) and to using the `row` channel (for `facet` and `repeat`).", - "type": "number" - }, - "data": { - "anyOf": [ - { - "$ref": "#/definitions/Data" - }, - { - "type": "null" - } - ], - "description": "An object describing the data source. Set to `null` to ignore the parent's data source. If no data is set, it is derived from the parent." - }, - "description": { - "description": "Description of this mark for commenting purpose.", - "type": "string" - }, - "facet": { - "anyOf": [ - { - "$ref": "#/definitions/FacetFieldDef" - }, - { - "$ref": "#/definitions/FacetMapping" - } - ], - "description": "Definition for how to facet the data. One of: 1) [a field definition for faceting the plot by one field](https://vega.github.io/vega-lite/docs/facet.html#field-def) 2) [An object that maps `row` and `column` channels to their field definitions](https://vega.github.io/vega-lite/docs/facet.html#mapping)" - }, - "name": { - "description": "Name of the visualization for later reference.", - "type": "string" - }, - "resolve": { - "$ref": "#/definitions/Resolve", - "description": "Scale, axis, and legend resolutions for view composition specifications." - }, - "spacing": { - "anyOf": [ - { - "type": "number" - }, - { - "$ref": "#/definitions/RowCol" - } - ], - "description": "The spacing in pixels between sub-views of the composition operator. An object of the form `{\"row\": number, \"column\": number}` can be used to set different spacing values for rows and columns.\n\n__Default value__: Depends on `\"spacing\"` property of [the view composition configuration](https://vega.github.io/vega-lite/docs/config.html#view-config) (`20` by default)" - }, - "spec": { - "anyOf": [ - { - "$ref": "#/definitions/LayerSpec" - }, - { - "$ref": "#/definitions/FacetedUnitSpec" - } - ], - "description": "A specification of the view that gets faceted." - }, - "title": { - "anyOf": [ - { - "$ref": "#/definitions/Text" - }, - { - "$ref": "#/definitions/TitleParams" - } - ], - "description": "Title for the plot." - }, - "transform": { - "description": "An array of data transformations such as filter and new field calculation.", - "items": { - "$ref": "#/definitions/Transform" - }, - "type": "array" - } - }, - "required": [ - "facet", - "spec" - ], - "type": "object" - }, - "NormalizedHConcatSpec": { - "additionalProperties": false, - "description": "Base interface for a horizontal concatenation specification.", - "properties": { - "bounds": { - "description": "The bounds calculation method to use for determining the extent of a sub-plot. One of `full` (the default) or `flush`.\n\n- If set to `full`, the entire calculated bounds (including axes, title, and legend) will be used. - If set to `flush`, only the specified width and height values for the sub-view will be used. The `flush` setting can be useful when attempting to place sub-plots without axes or legends into a uniform grid structure.\n\n__Default value:__ `\"full\"`", - "enum": [ - "full", - "flush" - ], - "type": "string" - }, - "center": { - "description": "Boolean flag indicating if subviews should be centered relative to their respective rows or columns.\n\n__Default value:__ `false`", - "type": "boolean" - }, - "data": { - "anyOf": [ - { - "$ref": "#/definitions/Data" - }, - { - "type": "null" - } - ], - "description": "An object describing the data source. Set to `null` to ignore the parent's data source. If no data is set, it is derived from the parent." - }, - "description": { - "description": "Description of this mark for commenting purpose.", - "type": "string" - }, - "hconcat": { - "description": "A list of views to be concatenated and put into a row.", - "items": { - "$ref": "#/definitions/NormalizedSpec" - }, - "type": "array" - }, - "name": { - "description": "Name of the visualization for later reference.", - "type": "string" - }, - "resolve": { - "$ref": "#/definitions/Resolve", - "description": "Scale, axis, and legend resolutions for view composition specifications." - }, - "spacing": { - "description": "The spacing in pixels between sub-views of the concat operator.\n\n__Default value__: `10`", - "type": "number" - }, - "title": { - "anyOf": [ - { - "$ref": "#/definitions/Text" - }, - { - "$ref": "#/definitions/TitleParams" - } - ], - "description": "Title for the plot." - }, - "transform": { - "description": "An array of data transformations such as filter and new field calculation.", - "items": { - "$ref": "#/definitions/Transform" - }, - "type": "array" - } - }, - "required": [ - "hconcat" - ], - "type": "object" - }, "HConcatSpec": { "additionalProperties": false, "description": "Base interface for a horizontal concatenation specification.", @@ -11245,32 +10828,6 @@ ], "type": "object" }, - "NormalizedSpec": { - "anyOf": [ - { - "$ref": "#/definitions/FacetedUnitSpec" - }, - { - "$ref": "#/definitions/LayerSpec" - }, - { - "$ref": "#/definitions/RepeatSpec" - }, - { - "$ref": "#/definitions/NormalizedFacetSpec" - }, - { - "$ref": "#/definitions/NormalizedConcatSpec" - }, - { - "$ref": "#/definitions/NormalizedVConcatSpec" - }, - { - "$ref": "#/definitions/NormalizedHConcatSpec" - } - ], - "description": "Any specification in Vega-Lite." - }, "Spec": { "anyOf": [ { @@ -11297,80 +10854,6 @@ ], "description": "Any specification in Vega-Lite." }, - "NormalizedVConcatSpec": { - "additionalProperties": false, - "description": "Base interface for a vertical concatenation specification.", - "properties": { - "bounds": { - "description": "The bounds calculation method to use for determining the extent of a sub-plot. One of `full` (the default) or `flush`.\n\n- If set to `full`, the entire calculated bounds (including axes, title, and legend) will be used. - If set to `flush`, only the specified width and height values for the sub-view will be used. The `flush` setting can be useful when attempting to place sub-plots without axes or legends into a uniform grid structure.\n\n__Default value:__ `\"full\"`", - "enum": [ - "full", - "flush" - ], - "type": "string" - }, - "center": { - "description": "Boolean flag indicating if subviews should be centered relative to their respective rows or columns.\n\n__Default value:__ `false`", - "type": "boolean" - }, - "data": { - "anyOf": [ - { - "$ref": "#/definitions/Data" - }, - { - "type": "null" - } - ], - "description": "An object describing the data source. Set to `null` to ignore the parent's data source. If no data is set, it is derived from the parent." - }, - "description": { - "description": "Description of this mark for commenting purpose.", - "type": "string" - }, - "name": { - "description": "Name of the visualization for later reference.", - "type": "string" - }, - "resolve": { - "$ref": "#/definitions/Resolve", - "description": "Scale, axis, and legend resolutions for view composition specifications." - }, - "spacing": { - "description": "The spacing in pixels between sub-views of the concat operator.\n\n__Default value__: `10`", - "type": "number" - }, - "title": { - "anyOf": [ - { - "$ref": "#/definitions/Text" - }, - { - "$ref": "#/definitions/TitleParams" - } - ], - "description": "Title for the plot." - }, - "transform": { - "description": "An array of data transformations such as filter and new field calculation.", - "items": { - "$ref": "#/definitions/Transform" - }, - "type": "array" - }, - "vconcat": { - "description": "A list of views to be concatenated and put into a column.", - "items": { - "$ref": "#/definitions/NormalizedSpec" - }, - "type": "array" - } - }, - "required": [ - "vconcat" - ], - "type": "object" - }, "VConcatSpec": { "additionalProperties": false, "description": "Base interface for a vertical concatenation specification.", @@ -19189,7 +18672,7 @@ "description": "The spacing in pixels between sub-views of the composition operator. An object of the form `{\"row\": number, \"column\": number}` can be used to set different spacing values for rows and columns.\n\n__Default value__: Depends on `\"spacing\"` property of [the view composition configuration](https://vega.github.io/vega-lite/docs/config.html#view-config) (`20` by default)" }, "spec": { - "$ref": "#/definitions/Spec", + "$ref": "#/definitions/NonNormalizedSpec", "description": "A specification of the view that gets repeated." }, "title": { @@ -19217,6 +18700,9 @@ ], "type": "object" }, + "NonNormalizedSpec": { + "$ref": "#/definitions/Spec" + }, "NumericArrayMarkPropDef": { "$ref": "#/definitions/MarkPropDef" }, @@ -29343,7 +28829,7 @@ ], "type": "object" }, - "TopLevelNormalizedConcatSpec": { + "TopLevelConcatSpec": { "additionalProperties": false, "properties": { "$schema": { @@ -29410,7 +28896,7 @@ "concat": { "description": "A list of views to be concatenated.", "items": { - "$ref": "#/definitions/NormalizedSpec" + "$ref": "#/definitions/NonNormalizedSpec" }, "type": "array" }, @@ -29502,7 +28988,7 @@ ], "type": "object" }, - "TopLevelNormalizedHConcatSpec": { + "TopLevelHConcatSpec": { "additionalProperties": false, "properties": { "$schema": { @@ -29570,7 +29056,7 @@ "hconcat": { "description": "A list of views to be concatenated and put into a row.", "items": { - "$ref": "#/definitions/NormalizedSpec" + "$ref": "#/definitions/NonNormalizedSpec" }, "type": "array" }, @@ -29632,7 +29118,7 @@ ], "type": "object" }, - "TopLevelNormalizedVConcatSpec": { + "TopLevelVConcatSpec": { "additionalProperties": false, "properties": { "$schema": { @@ -29752,7 +29238,7 @@ "vconcat": { "description": "A list of views to be concatenated and put into a column.", "items": { - "$ref": "#/definitions/NormalizedSpec" + "$ref": "#/definitions/NonNormalizedSpec" }, "type": "array" } @@ -30066,7 +29552,7 @@ "description": "The spacing in pixels between sub-views of the composition operator. An object of the form `{\"row\": number, \"column\": number}` can be used to set different spacing values for rows and columns.\n\n__Default value__: Depends on `\"spacing\"` property of [the view composition configuration](https://vega.github.io/vega-lite/docs/config.html#view-config) (`20` by default)" }, "spec": { - "$ref": "#/definitions/Spec", + "$ref": "#/definitions/NonNormalizedSpec", "description": "A specification of the view that gets repeated." }, "title": { @@ -30459,13 +29945,13 @@ "$ref": "#/definitions/TopLevelRepeatSpec" }, { - "$ref": "#/definitions/TopLevelNormalizedConcatSpec" + "$ref": "#/definitions/TopLevelConcatSpec" }, { - "$ref": "#/definitions/TopLevelNormalizedVConcatSpec" + "$ref": "#/definitions/TopLevelVConcatSpec" }, { - "$ref": "#/definitions/TopLevelNormalizedHConcatSpec" + "$ref": "#/definitions/TopLevelHConcatSpec" } ], "description": "A Vega-Lite top-level specification. This is the root class for all Vega-Lite specifications. (The json schema is generated from this type.)" diff --git a/scripts/rename-schema.sh b/scripts/rename-schema.sh index 2ca9687733..c47ecef8e0 100755 --- a/scripts/rename-schema.sh +++ b/scripts/rename-schema.sh @@ -9,8 +9,8 @@ perl -pi -e s,'','',g build/vega-lite-schema.json perl -pi -e s,'\,ExprRef>','>',g build/vega-lite-schema.json perl -pi -e s,'CompositeEncoding','Encoding',g build/vega-lite-schema.json -perl -pi -e s,'Generic(.*)','\1',g build/vega-lite-schema.json -perl -pi -e s,'Generic(.*)','Normalized\1',g build/vega-lite-schema.json +perl -pi -e s,'Generic(.*)','\1',g build/vega-lite-schema.json +perl -pi -e s,'Generic(.*)','\1',g build/vega-lite-schema.json perl -pi -e s,'ValueDef(.*)','ValueDef\1',g build/vega-lite-schema.json perl -pi -e s,'Conditional<(.*)>','Conditional\1',g build/vega-lite-schema.json diff --git a/src/compile/format.ts b/src/compile/format.ts index 505cc8e6fa..12d03ae2d3 100644 --- a/src/compile/format.ts +++ b/src/compile/format.ts @@ -1,4 +1,4 @@ -import {SignalRef} from 'vega-typings/types'; +import {SignalRef} from 'vega'; import {isString} from 'vega-util'; import {isBinning} from '../bin'; import { diff --git a/src/compile/mark/encode/offset.ts b/src/compile/mark/encode/offset.ts index dde5111a68..08678188cc 100644 --- a/src/compile/mark/encode/offset.ts +++ b/src/compile/mark/encode/offset.ts @@ -1,7 +1,7 @@ /** * Utility files for producing Vega ValueRef for marks */ -import {SignalRef} from 'vega-typings/types'; +import {SignalRef} from 'vega'; import {getOffsetChannel, PolarPositionChannel, PositionChannel} from '../../../channel'; import {Mark, MarkDef} from '../../../mark'; diff --git a/src/compile/mark/encode/position-range.ts b/src/compile/mark/encode/position-range.ts index de732f597f..7aff238f5b 100644 --- a/src/compile/mark/encode/position-range.ts +++ b/src/compile/mark/encode/position-range.ts @@ -1,4 +1,4 @@ -import {SignalRef} from 'vega-typings/types'; +import {SignalRef} from 'vega'; import {getMainRangeChannel, getSecondaryRangeChannel, getSizeChannel, getVgPositionChannel} from '../../../channel'; import {isFieldOrDatumDef} from '../../../channeldef'; import {MarkConfig} from '../../../mark'; diff --git a/src/compile/mark/text.ts b/src/compile/mark/text.ts index af6b08de58..40a6a17e26 100644 --- a/src/compile/mark/text.ts +++ b/src/compile/mark/text.ts @@ -1,4 +1,4 @@ -import {SignalRef} from 'vega-typings/types'; +import {SignalRef} from 'vega'; import {Config} from '../../config'; import {Encoding} from '../../encoding'; import {MarkDef} from '../../mark'; diff --git a/src/compositemark/index.ts b/src/compositemark/index.ts index 25fc4ec4da..29ae3539ae 100644 --- a/src/compositemark/index.ts +++ b/src/compositemark/index.ts @@ -53,20 +53,18 @@ export function remove(mark: string) { delete compositeMarkRegistry[mark]; } -export type CompositeEncoding = Encoding & ErrorExtraEncoding; +export type CompositeEncoding = Encoding & ErrorExtraEncoding; export type PartialIndex> = { [t in keyof T]?: Partial; }; -export type SharedCompositeEncoding = PartialIndex< +export type SharedCompositeEncoding = PartialIndex< Omit, 'detail' | 'order' | 'tooltip'> // need to omit and cherry pick detail / order / tooltip since they allow array > & Pick, 'detail' | 'order' | 'tooltip'>; -export type FacetedCompositeEncoding = Encoding & - ErrorExtraEncoding & - EncodingFacetMapping; +export type FacetedCompositeEncoding = Encoding & ErrorExtraEncoding & EncodingFacetMapping; export type CompositeMark = BoxPlot | ErrorBar | ErrorBand; diff --git a/src/normalize/base.ts b/src/normalize/base.ts index ae29921b8c..50f79d8115 100644 --- a/src/normalize/base.ts +++ b/src/normalize/base.ts @@ -1,4 +1,4 @@ -import {SignalRef} from 'vega-typings/types'; +import {SignalRef} from 'vega'; import {FieldName} from '../channeldef'; import {Config} from '../config'; import {Encoding} from '../encoding'; diff --git a/src/normalize/core.ts b/src/normalize/core.ts index 1ada42824e..b441be580c 100644 --- a/src/normalize/core.ts +++ b/src/normalize/core.ts @@ -31,7 +31,7 @@ import {PathOverlayNormalizer} from './pathoverlay'; import {replaceRepeaterInEncoding, replaceRepeaterInFacet} from './repeater'; import {RuleForRangedLineNormalizer} from './ruleforrangedline'; -export class CoreNormalizer extends SpecMapper { +export class CoreNormalizer extends SpecMapper, LayerSpec> { private nonFacetUnitNormalizers: NonFacetUnitNormalizer[] = [ boxPlotNormalizer, errorBarNormalizer, @@ -40,7 +40,7 @@ export class CoreNormalizer extends SpecMapper, params: NormalizerParams) { + public map(spec: GenericSpec, LayerSpec, RepeatSpec, Field>, params: NormalizerParams) { // Special handling for a faceted unit spec as it can return a facet spec, not just a layer or unit spec like a normal unit spec. if (isUnitSpec(spec)) { const hasRow = channelHasField(spec.encoding, ROW); @@ -56,7 +56,7 @@ export class CoreNormalizer extends SpecMapper, params: NormalizerParams): NormalizedUnitSpec | NormalizedLayerSpec { const {parentEncoding, parentProjection} = params; const encoding = replaceRepeaterInEncoding(spec.encoding, params.repeater); @@ -194,7 +194,7 @@ export class CoreNormalizer extends SpecMapper, + spec: GenericFacetSpec, LayerSpec, Field>, params: NormalizerParams ): GenericFacetSpec { const {facet} = spec; @@ -209,7 +209,7 @@ export class CoreNormalizer extends SpecMapper, params: NormalizerParams ): NormalizedUnitSpec | NormalizedLayerSpec { const {encoding, projection} = spec; @@ -230,7 +230,7 @@ export class CoreNormalizer extends SpecMapper, params: NormalizerParams): NormalizedFacetSpec { // New encoding in the inside spec should not contain row / column // as row/column should be moved to facet const {row, column, facet, ...encoding} = spec.encoding; @@ -312,7 +312,7 @@ export class CoreNormalizer extends SpecMapper, {parentEncoding, parentProjection, ...otherParams}: NormalizerParams ): NormalizedLayerSpec { // Special handling for extended layer spec diff --git a/src/normalize/index.ts b/src/normalize/index.ts index f03cb0c49e..d15a5c5c42 100644 --- a/src/normalize/index.ts +++ b/src/normalize/index.ts @@ -1,19 +1,17 @@ -import {SignalRef} from 'vega-typings/types'; +import {SignalRef} from 'vega'; import {isString} from 'vega-util'; import {Field} from '../channeldef'; import {Config, initConfig} from '../config'; import * as log from '../log'; import { FacetedUnitSpec, - GenericSpec, isLayerSpec, isUnitSpec, - LayerSpec, LayoutSizeMixins, + NonNormalizedSpec, NormalizedSpec, RepeatSpec, - TopLevelSpec, - UnitSpec + TopLevelSpec } from '../spec'; import {AutoSizeParams, AutosizeType, TopLevel} from '../spec/toplevel'; import {deepEqual} from '../util'; @@ -45,7 +43,7 @@ const normalizer = new CoreNormalizer(); * Decompose extended unit specs into composition of pure unit specs. */ function normalizeGenericSpec( - spec: GenericSpec | FacetedUnitSpec | RepeatSpec, + spec: NonNormalizedSpec | FacetedUnitSpec | RepeatSpec, config: Config = {} ) { return normalizer.map(spec, {config}); diff --git a/src/normalize/pathoverlay.ts b/src/normalize/pathoverlay.ts index 29c21da474..f48046a337 100644 --- a/src/normalize/pathoverlay.ts +++ b/src/normalize/pathoverlay.ts @@ -1,4 +1,4 @@ -import {SignalRef} from 'vega-typings/types'; +import {SignalRef} from 'vega'; import {isObject} from 'vega-util'; import {Config} from '../config'; import {Encoding, normalizeEncoding} from '../encoding'; diff --git a/src/parameter.ts b/src/parameter.ts index e26ecbc9c9..f93c8a6e62 100644 --- a/src/parameter.ts +++ b/src/parameter.ts @@ -1,4 +1,4 @@ -import {Binding, Expr, InitSignal, NewSignal} from 'vega-typings/types'; +import {Binding, Expr, InitSignal, NewSignal} from 'vega'; export interface Parameter { /** diff --git a/src/predicate.ts b/src/predicate.ts index de77fbe854..7055d431b4 100644 --- a/src/predicate.ts +++ b/src/predicate.ts @@ -1,4 +1,4 @@ -import {SignalRef} from 'vega-typings/types'; +import {SignalRef} from 'vega'; import {isArray} from 'vega-util'; import {FieldName, valueExpr, vgField} from './channeldef'; import {DateTime} from './datetime'; diff --git a/src/spec/index.ts b/src/spec/index.ts index bb000ef107..02ceb99700 100644 --- a/src/spec/index.ts +++ b/src/spec/index.ts @@ -4,8 +4,8 @@ * - The external specs (no prefix) would allow composite marks, row/column encodings, and mark macros like point/line overlay. * - The internal specs (with `Normalized` prefix) would only support primitive marks and support no macros/shortcuts. */ -import {Field} from '../channeldef'; -import {FieldName} from '../channeldef'; +import {Field, FieldName} from '../channeldef'; +import {Encoding} from '../encoding'; import {DataMixins} from './base'; import {GenericConcatSpec, GenericHConcatSpec, GenericVConcatSpec} from './concat'; import {GenericFacetSpec} from './facet'; @@ -33,8 +33,8 @@ export {FacetedUnitSpec, GenericUnitSpec, isUnitSpec, NormalizedUnitSpec, UnitSp * Any specification in Vega-Lite. */ export type GenericSpec< - U extends GenericUnitSpec, - L extends GenericLayerSpec, + U extends GenericUnitSpec, any>, + L extends GenericLayerSpec, R extends RepeatSpec, F extends Field > = @@ -51,7 +51,10 @@ export type GenericSpec< */ export type NormalizedSpec = GenericSpec; -export type TopLevelFacetSpec = TopLevel> & DataMixins; +export type TopLevelFacetSpec = TopLevel, LayerSpec, Field>> & + DataMixins; + +export type NonNormalizedSpec = GenericSpec, LayerSpec, RepeatSpec, Field>; /** * A Vega-Lite top-level specification. @@ -59,10 +62,10 @@ export type TopLevelFacetSpec = TopLevel | TopLevelFacetSpec - | TopLevel + | TopLevel> | TopLevel - | TopLevel>> - | TopLevel>> - | TopLevel>>; + | TopLevel> + | TopLevel> + | TopLevel>; diff --git a/src/spec/layer.ts b/src/spec/layer.ts index 089e5dd404..beb903aba9 100644 --- a/src/spec/layer.ts +++ b/src/spec/layer.ts @@ -1,3 +1,4 @@ +import {Field} from '../channeldef'; import {SharedCompositeEncoding} from '../compositemark'; import {Projection} from '../projection'; import {BaseSpec, FrameMixins, ResolveMixins} from './base'; @@ -18,18 +19,18 @@ export interface GenericLayerSpec> extends B /** * A full layered plot specification, which may contains `encoding` and `projection` properties that will be applied to underlying unit (single-view) specifications. */ -export interface LayerSpec extends BaseSpec, FrameMixins, ResolveMixins { +export interface LayerSpec extends BaseSpec, FrameMixins, ResolveMixins { /** * Layer or single view specifications to be layered. * * __Note__: Specifications inside `layer` cannot use `row` and `column` channels as layering facet specifications is not allowed. Instead, use the [facet operator](https://vega.github.io/vega-lite/docs/facet.html) and place a layer inside a facet. */ - layer: (LayerSpec | UnitSpec)[]; + layer: (LayerSpec | UnitSpec)[]; /** * A shared key-value mapping between encoding channels and definition of fields in the underlying layers. */ - encoding?: SharedCompositeEncoding; + encoding?: SharedCompositeEncoding; /** * An object defining properties of the geographic projection shared by underlying layers. diff --git a/src/spec/repeat.ts b/src/spec/repeat.ts index 405f7e053e..9f208b8a00 100644 --- a/src/spec/repeat.ts +++ b/src/spec/repeat.ts @@ -1,8 +1,8 @@ import {isArray} from 'vega-util'; -import {GenericSpec, LayerSpec} from '.'; -import {FieldName} from '../channeldef'; +import {LayerSpec, NonNormalizedSpec} from '.'; +import {Field} from '../channeldef'; import {BaseSpec, GenericCompositionLayoutWithColumns, ResolveMixins} from './base'; -import {FacetedUnitSpec, UnitSpec} from './unit'; +import {UnitSpec} from './unit'; export interface RepeatMapping { /** @@ -39,7 +39,7 @@ export interface NonLayerRepeatSpec extends BaseSpec, GenericCompositionLayoutWi /** * A specification of the view that gets repeated. */ - spec: GenericSpec; + spec: NonNormalizedSpec; } export interface LayerRepeatSpec extends BaseSpec, GenericCompositionLayoutWithColumns, ResolveMixins { @@ -53,7 +53,7 @@ export interface LayerRepeatSpec extends BaseSpec, GenericCompositionLayoutWithC /** * A specification of the view that gets repeated. */ - spec: LayerSpec | UnitSpec; + spec: LayerSpec | UnitSpec; } export function isRepeatSpec(spec: BaseSpec): spec is RepeatSpec { diff --git a/src/spec/unit.ts b/src/spec/unit.ts index 5d012805ab..ce2b23e791 100644 --- a/src/spec/unit.ts +++ b/src/spec/unit.ts @@ -1,3 +1,4 @@ +import {Field} from './../channeldef'; import {FieldName} from '../channeldef'; import {CompositeEncoding, FacetedCompositeEncoding} from '../compositemark'; import {Encoding} from '../encoding'; @@ -48,20 +49,20 @@ export type NormalizedUnitSpec = GenericUnitSpec, Mark | Mar /** * A unit specification, which can contain either [primitive marks or composite marks](https://vega.github.io/vega-lite/docs/mark.html#types). */ -export type UnitSpec = GenericUnitSpec & DeprecatedFrameMixins; +export type UnitSpec = GenericUnitSpec, AnyMark> & DeprecatedFrameMixins; -export type UnitSpecWithFrame = GenericUnitSpec & FrameMixins; +export type UnitSpecWithFrame = GenericUnitSpec, AnyMark> & FrameMixins; /** * Unit spec that can have a composite mark and row or column channels (shorthand for a facet spec). */ -export type FacetedUnitSpec = GenericUnitSpec & +export type FacetedUnitSpec = GenericUnitSpec, AnyMark> & ResolveMixins & GenericCompositionLayout & FrameMixins; -export type TopLevelUnitSpec = TopLevel & DataMixins; +export type TopLevelUnitSpec = TopLevel> & DataMixins; -export function isUnitSpec(spec: BaseSpec): spec is FacetedUnitSpec | NormalizedUnitSpec { +export function isUnitSpec(spec: BaseSpec): spec is FacetedUnitSpec | NormalizedUnitSpec { return 'mark' in spec; } diff --git a/test/channeldef.test.ts b/test/channeldef.test.ts index 2801977cf3..bfd7a136ce 100644 --- a/test/channeldef.test.ts +++ b/test/channeldef.test.ts @@ -1,4 +1,4 @@ -import {SignalRef} from 'vega-typings/types'; +import {SignalRef} from 'vega'; import {COUNTING_OPS} from '../src/aggregate'; import {CHANNELS} from '../src/channel'; import { diff --git a/test/compile/facet.test.ts b/test/compile/facet.test.ts index 6b55dc4315..d53f234db3 100644 --- a/test/compile/facet.test.ts +++ b/test/compile/facet.test.ts @@ -1,4 +1,4 @@ -import {SignalRef} from 'vega-typings/types'; +import {SignalRef} from 'vega'; import {ROW} from '../../src/channel'; import {FacetModel} from '../../src/compile/facet'; import {assembleLabelTitle} from '../../src/compile/header/assemble'; diff --git a/test/compile/mark/encode/offset.test.ts b/test/compile/mark/encode/offset.test.ts index 2541cffac3..2a6c79a5ad 100644 --- a/test/compile/mark/encode/offset.test.ts +++ b/test/compile/mark/encode/offset.test.ts @@ -1,4 +1,4 @@ -import {SignalRef} from 'vega-typings/types'; +import {SignalRef} from 'vega'; import {getOffset} from '../../../../src/compile/mark/encode/offset'; import {Mark, MarkDef} from '../../../../src/mark'; diff --git a/test/compositemark/errorbar.test.ts b/test/compositemark/errorbar.test.ts index a50bc18296..f9d14a294a 100644 --- a/test/compositemark/errorbar.test.ts +++ b/test/compositemark/errorbar.test.ts @@ -1,4 +1,5 @@ import {AggregateOp} from 'vega'; +import {FieldName} from '../../src/channeldef'; import {ErrorBarCenter, ErrorBarExtent} from '../../src/compositemark/errorbar'; import {defaultConfig} from '../../src/config'; import * as log from '../../src/log'; @@ -515,7 +516,7 @@ describe('normalizeErrorBar for all possible extents and centers with raw data i for (const center of centers) { for (const extent of extents) { - const spec: TopLevelUnitSpec = { + const spec: TopLevelUnitSpec = { data: {url: 'data/population.json'}, mark: {type, ...(center ? {center} : {}), ...(extent ? {extent} : {})}, encoding: { diff --git a/test/config.test.ts b/test/config.test.ts index a281e6a9ea..5d4772ad01 100644 --- a/test/config.test.ts +++ b/test/config.test.ts @@ -1,4 +1,4 @@ -import {SignalRef} from 'vega-typings/types'; +import {SignalRef} from 'vega'; import { Config, defaultConfig, diff --git a/test/normalize/ruleforrangedline.test.ts b/test/normalize/ruleforrangedline.test.ts index 28b43928b8..8fbc500505 100644 --- a/test/normalize/ruleforrangedline.test.ts +++ b/test/normalize/ruleforrangedline.test.ts @@ -1,3 +1,4 @@ +import {FieldName} from '../../src/channeldef'; import * as log from '../../src/log'; import {normalize} from '../../src/normalize'; import {TopLevelUnitSpec} from '../../src/spec/unit'; @@ -6,7 +7,7 @@ describe('RuleForRangedLineNormalizer', () => { it( 'correctly normalizes line with rule where there is x2 or y2.', log.wrap(localLogger => { - const spec: TopLevelUnitSpec = { + const spec: TopLevelUnitSpec = { data: {url: 'data/stocks.csv', format: {type: 'csv'}}, mark: 'line', encoding: { @@ -26,7 +27,7 @@ describe('RuleForRangedLineNormalizer', () => { ); it('does not normalize line when there is x2 or y2, but its primary channel is "binned".', () => { - const spec: TopLevelUnitSpec = { + const spec: TopLevelUnitSpec = { data: {url: 'data/stocks.csv', format: {type: 'csv'}}, mark: 'line', encoding: { diff --git a/test/util.ts b/test/util.ts index b8f7bb2dcb..156880d9f5 100644 --- a/test/util.ts +++ b/test/util.ts @@ -1,4 +1,5 @@ -import {SignalRef} from 'vega-typings/types'; +import {SignalRef} from 'vega'; +import {Field} from '../src/channeldef'; import {buildModel} from '../src/compile/buildmodel'; import {ConcatModel} from '../src/compile/concat'; import {FacetModel} from '../src/compile/facet'; @@ -84,7 +85,7 @@ export function parseConcatModel(spec: TopLevel) { return new ConcatModel(spec, null, '', initConfig(spec.config)); } -export function assertIsUnitSpec(spec: BaseSpec): asserts spec is FacetedUnitSpec | NormalizedUnitSpec { +export function assertIsUnitSpec(spec: BaseSpec): asserts spec is FacetedUnitSpec | NormalizedUnitSpec { if (!isUnitSpec(spec)) { throw new Error('Spec is not a unit spec!'); } diff --git a/tsconfig.build.json b/tsconfig.build.json index 92acf0c8e1..d54a04de65 100644 --- a/tsconfig.build.json +++ b/tsconfig.build.json @@ -7,6 +7,5 @@ "declarationMap": true, "sourceMap": true }, - "files": ["src/index.ts"], "include": [] } diff --git a/tsconfig.json b/tsconfig.json index 9fea8d13ab..ef252304da 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -18,5 +18,6 @@ "noEmit": true }, "files": ["src/index.ts"], - "include": ["src/**/*.ts", "test/**/*.ts", "test-runtime/**/*.ts", "site/static/**/*.ts", "examples/*.test.ts"] + "include": ["src/**/*.ts", "test/**/*.ts", "test-runtime/**/*.ts", "site/static/**/*.ts", "examples/*.test.ts"], + "exclude": ["build/**/*"] }