@pixerate/editor 0.163.0 → 0.165.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (159) hide show
  1. package/dist/agent/index.cjs +54 -39
  2. package/dist/agent/index.js +24 -9
  3. package/dist/animation/index.cjs +6 -5
  4. package/dist/animation/index.js +5 -4
  5. package/dist/animation-editor/index.cjs +65 -64
  6. package/dist/animation-editor/index.js +8 -7
  7. package/dist/bridge/cli.cjs +3 -3
  8. package/dist/bridge/cli.js +2 -2
  9. package/dist/bridge/index.cjs +3 -3
  10. package/dist/bridge/index.js +2 -2
  11. package/dist/canvas/displacement.d.cts +34 -2
  12. package/dist/canvas/displacement.d.ts +34 -2
  13. package/dist/canvas/explosion-tools.d.cts +43 -0
  14. package/dist/canvas/explosion-tools.d.ts +43 -0
  15. package/dist/canvas/explosionLayout.d.cts +50 -0
  16. package/dist/canvas/explosionLayout.d.ts +50 -0
  17. package/dist/canvas/explosionState.d.cts +52 -0
  18. package/dist/canvas/explosionState.d.ts +52 -0
  19. package/dist/canvas/index.cjs +512 -168
  20. package/dist/canvas/index.d.cts +3 -0
  21. package/dist/canvas/index.d.ts +3 -0
  22. package/dist/canvas/index.js +434 -90
  23. package/dist/canvas/types.d.cts +27 -2
  24. package/dist/canvas/types.d.ts +27 -2
  25. package/dist/chart/controller.d.cts +31 -2
  26. package/dist/chart/controller.d.ts +31 -2
  27. package/dist/chart/index.cjs +504 -132
  28. package/dist/chart/index.d.cts +2 -0
  29. package/dist/chart/index.d.ts +2 -0
  30. package/dist/chart/index.js +386 -14
  31. package/dist/chart/layout-families.d.cts +7 -0
  32. package/dist/chart/layout-families.d.ts +7 -0
  33. package/dist/chart/links.d.cts +34 -0
  34. package/dist/chart/links.d.ts +34 -0
  35. package/dist/chart/mermaid.d.cts +9 -6
  36. package/dist/chart/mermaid.d.ts +9 -6
  37. package/dist/chart/schemas.d.cts +3 -0
  38. package/dist/chart/schemas.d.ts +3 -0
  39. package/dist/chart/spec.d.cts +3 -2
  40. package/dist/chart/spec.d.ts +3 -2
  41. package/dist/chart/style.d.cts +33 -0
  42. package/dist/chart/style.d.ts +33 -0
  43. package/dist/chart/types.d.cts +24 -2
  44. package/dist/chart/types.d.ts +24 -2
  45. package/dist/{chunk-TALQONZ5.js → chunk-2J5VLJHC.js} +3 -3
  46. package/dist/{chunk-3NEZJCBY.js → chunk-2ZRN43IN.js} +340 -201
  47. package/dist/{chunk-ZVNAMTFO.cjs → chunk-3FSUJIXN.cjs} +18 -174
  48. package/dist/{chunk-RQCMSEM5.cjs → chunk-4QUUHTGJ.cjs} +2 -2
  49. package/dist/{chunk-CIPIESX4.cjs → chunk-4ZC5QJE2.cjs} +3 -3
  50. package/dist/{chunk-S6X2QRVU.cjs → chunk-5UEFBM2M.cjs} +1 -138
  51. package/dist/{chunk-YSAGBIRW.cjs → chunk-64VWWR5U.cjs} +16 -16
  52. package/dist/{chunk-QYZGBVNC.js → chunk-7272D3K2.js} +10 -8
  53. package/dist/{chunk-462WGGXX.cjs → chunk-AMX23CSN.cjs} +27 -16
  54. package/dist/{chunk-3VLOOO3G.js → chunk-BDIM6NVW.js} +1 -1
  55. package/dist/{chunk-POR54B55.js → chunk-CRFSQWKQ.js} +4 -1
  56. package/dist/{chunk-GZ2FM3ZB.js → chunk-DKNEQX7T.js} +6 -162
  57. package/dist/{chunk-JCXMJUQO.cjs → chunk-EGZM52EO.cjs} +3 -3
  58. package/dist/{chunk-ES3UEVUT.cjs → chunk-EUIDTZNQ.cjs} +112 -110
  59. package/dist/{chunk-H3OEM3Q2.js → chunk-F6R67I3A.js} +1 -1
  60. package/dist/{chunk-5FNGLV2D.js → chunk-FEU2XVQH.js} +15 -3
  61. package/dist/{chunk-SZA42R4N.js → chunk-FRBRLKNQ.js} +154 -16
  62. package/dist/chunk-HIDFL5LQ.js +484 -0
  63. package/dist/{chunk-MKTDELCD.js → chunk-I5MRJW7B.js} +1 -1
  64. package/dist/{chunk-SDHZG5TF.js → chunk-ILP77UD6.js} +160 -2
  65. package/dist/{chunk-GKNEJ6EN.cjs → chunk-IMRXC7OA.cjs} +241 -103
  66. package/dist/chunk-KGRZMHZB.js +204 -0
  67. package/dist/{chunk-SET6KJOP.js → chunk-LPIKXPBM.js} +1 -1
  68. package/dist/{chunk-BQWGN5WH.js → chunk-M2TPMYJE.js} +1 -1
  69. package/dist/{chunk-GTELFJRE.cjs → chunk-M5GLQQWG.cjs} +2 -2
  70. package/dist/{chunk-4VU4CP7R.js → chunk-MHLU6GRJ.js} +1 -138
  71. package/dist/{chunk-D54JHQK2.cjs → chunk-MKXK6E4O.cjs} +51 -51
  72. package/dist/{chunk-DAPQGA55.js → chunk-N7NBGT2Y.js} +2 -2
  73. package/dist/chunk-O6OGNDND.js +164 -0
  74. package/dist/{chunk-22KLZZGH.cjs → chunk-ODFCS7HF.cjs} +8 -8
  75. package/dist/{chunk-PA3IMPPS.cjs → chunk-OVYQAYGH.cjs} +81 -81
  76. package/dist/{chunk-YXOW456B.js → chunk-PPEDZ5WR.js} +1 -1
  77. package/dist/{chunk-YGG7WDWT.cjs → chunk-Q25WAFTD.cjs} +21 -18
  78. package/dist/{chunk-SBQVEBSU.cjs → chunk-QO2T6KA5.cjs} +165 -67
  79. package/dist/{chunk-24M7VD6M.cjs → chunk-S4EIAIEW.cjs} +7 -7
  80. package/dist/{chunk-M4MIZPQI.cjs → chunk-SJ2CPTQC.cjs} +189 -15
  81. package/dist/chunk-TFF2GTGN.cjs +153 -0
  82. package/dist/chunk-TTCJPX4U.cjs +204 -0
  83. package/dist/{chunk-NZD2MZJC.cjs → chunk-TVQW26AV.cjs} +35 -23
  84. package/dist/{chunk-R3P2M7HU.cjs → chunk-UVXTOZ2B.cjs} +346 -207
  85. package/dist/{chunk-WI7QJA7A.cjs → chunk-UXETV2NC.cjs} +161 -3
  86. package/dist/{chunk-Z4P2RBMJ.js → chunk-V5GSY3NC.js} +101 -3
  87. package/dist/{chunk-QY4KUDMY.js → chunk-VRXXAXUT.js} +2 -2
  88. package/dist/chunk-VU6WQSMB.cjs +164 -0
  89. package/dist/{chunk-OXERWBKE.js → chunk-X5W645RI.js} +3 -3
  90. package/dist/{chunk-NHLYK3AX.js → chunk-XBQX76CT.js} +182 -8
  91. package/dist/{chunk-5AARIS3R.cjs → chunk-XCDGM7TD.cjs} +37 -37
  92. package/dist/{chunk-EVXQNQND.js → chunk-XZB3TJ6K.js} +16 -5
  93. package/dist/chunk-YBAPT7NL.js +153 -0
  94. package/dist/chunk-Z2UQYMPS.cjs +484 -0
  95. package/dist/color/index.cjs +5 -3
  96. package/dist/color/index.js +12 -10
  97. package/dist/diagram/index.cjs +55 -243
  98. package/dist/diagram/index.js +12 -200
  99. package/dist/export/index.cjs +7 -6
  100. package/dist/export/index.js +6 -5
  101. package/dist/extensions/index.cjs +12 -9
  102. package/dist/extensions/index.js +11 -8
  103. package/dist/gradient/index.cjs +29 -27
  104. package/dist/gradient/index.js +6 -4
  105. package/dist/image-editor/index.cjs +644 -643
  106. package/dist/image-editor/index.js +7 -6
  107. package/dist/index.cjs +21 -18
  108. package/dist/index.js +14 -11
  109. package/dist/paint-editor/index.cjs +19 -18
  110. package/dist/paint-editor/index.js +7 -6
  111. package/dist/parameters/index.cjs +2 -2
  112. package/dist/parameters/index.js +1 -1
  113. package/dist/persistence/assetWrites.d.cts +22 -0
  114. package/dist/persistence/assetWrites.d.ts +22 -0
  115. package/dist/persistence/assets.d.cts +71 -0
  116. package/dist/persistence/assets.d.ts +71 -0
  117. package/dist/persistence/documentStore.d.cts +17 -1
  118. package/dist/persistence/documentStore.d.ts +17 -1
  119. package/dist/persistence/documentTools.d.cts +5 -1
  120. package/dist/persistence/documentTools.d.ts +5 -1
  121. package/dist/persistence/editorAutosave.d.cts +7 -0
  122. package/dist/persistence/editorAutosave.d.ts +7 -0
  123. package/dist/persistence/index.cjs +141 -21
  124. package/dist/persistence/index.js +130 -10
  125. package/dist/persistence/storage.d.cts +13 -1
  126. package/dist/persistence/storage.d.ts +13 -1
  127. package/dist/spreadsheet/index.cjs +3 -3
  128. package/dist/spreadsheet/index.js +2 -2
  129. package/dist/tokens/index.cjs +11 -3
  130. package/dist/tokens/index.d.cts +1 -0
  131. package/dist/tokens/index.d.ts +1 -0
  132. package/dist/tokens/index.js +10 -2
  133. package/dist/tokens/style.d.cts +36 -0
  134. package/dist/tokens/style.d.ts +36 -0
  135. package/dist/tools/index.cjs +15 -3
  136. package/dist/tools/index.d.cts +2 -0
  137. package/dist/tools/index.d.ts +2 -0
  138. package/dist/tools/index.js +14 -2
  139. package/dist/tools/style-tools.d.cts +19 -0
  140. package/dist/tools/style-tools.d.ts +19 -0
  141. package/dist/tools/style.d.cts +212 -0
  142. package/dist/tools/style.d.ts +212 -0
  143. package/dist/tools/view.d.cts +6 -0
  144. package/dist/tools/view.d.ts +6 -0
  145. package/dist/typography/index.cjs +8 -6
  146. package/dist/typography/index.js +5 -3
  147. package/dist/vector/index.cjs +953 -952
  148. package/dist/vector/index.js +7 -6
  149. package/dist/video-editor/index.cjs +8 -7
  150. package/dist/video-editor/index.js +6 -5
  151. package/package.json +1 -1
  152. package/skills/README.md +12 -0
  153. package/skills/pixerate-agent-tools/SKILL.md +34 -1
  154. package/skills/pixerate-chart/SKILL.md +41 -9
  155. package/skills/pixerate-image-editor/SKILL.md +2 -0
  156. package/skills/pixerate-paint-editor/SKILL.md +2 -0
  157. package/skills/pixerate-tokens/SKILL.md +5 -0
  158. package/dist/chunk-ERAGQL2N.cjs +0 -68
  159. package/dist/chunk-KMU6QJB7.js +0 -68
@@ -17,7 +17,8 @@
17
17
 
18
18
 
19
19
 
20
- var _chunkR3P2M7HUcjs = require('./chunk-R3P2M7HU.cjs');
20
+
21
+ var _chunkUVXTOZ2Bcjs = require('./chunk-UVXTOZ2B.cjs');
21
22
 
22
23
  // src/chart/schemas.ts
23
24
  var VALUE = { type: ["number", "string", "null"], description: 'A number, numeric text ("1,200", "12%", "$40", "(3)") or null for a gap.' };
@@ -29,7 +30,7 @@ var FORMAT = {
29
30
  type: "object",
30
31
  description: "How numbers are written on this axis or series.",
31
32
  properties: {
32
- style: { type: "string", enum: [..._chunkR3P2M7HUcjs.CHART_NUMBER_STYLES], description: "number (default), percent (0.25 \u2192 25%), currency or compact (1.2K)." },
33
+ style: { type: "string", enum: [..._chunkUVXTOZ2Bcjs.CHART_NUMBER_STYLES], description: "number (default), percent (0.25 \u2192 25%), currency or compact (1.2K)." },
33
34
  decimals: { type: "integer", minimum: 0, maximum: 10, description: "Fixed decimals (default: what the ticks need)." },
34
35
  currency: { type: "string", description: 'ISO currency code for style "currency", e.g. "EUR" (default USD).' },
35
36
  prefix: { type: "string", description: "Text before every number." },
@@ -49,10 +50,10 @@ var AXIS = (what) => ({
49
50
  step: { type: ["number", "null"], exclusiveMinimum: 0, description: "Fixed distance between ticks, or null for automatic." },
50
51
  gridlines: { type: "boolean", description: "Grid lines at each tick." },
51
52
  format: FORMAT,
52
- kind: { type: ["string", "null"], enum: [..._chunkR3P2M7HUcjs.CHART_AXIS_KINDS, null], description: 'Category axis only: "date" reads categories as dates and labels them by calendar steps.' },
53
+ kind: { type: ["string", "null"], enum: [..._chunkUVXTOZ2Bcjs.CHART_AXIS_KINDS, null], description: 'Category axis only: "date" reads categories as dates and labels them by calendar steps.' },
53
54
  scale: {
54
55
  type: ["string", "null"],
55
- enum: [..._chunkR3P2M7HUcjs.CHART_AXIS_SCALES, null],
56
+ enum: [..._chunkUVXTOZ2Bcjs.CHART_AXIS_SCALES, null],
56
57
  description: 'Value axes and the numeric x axis of scatter / bubble charts: "log" spaces ticks by powers of logBase (values of 0 or less are skipped; min and max must be above 0; not with percent stacking). "linear" or null is the default. Ignored on a category axis.'
57
58
  },
58
59
  logBase: { type: ["number", "null"], minimum: 2, maximum: 1e3, description: "Base of a log axis, 2 to 1000 (default 10; null resets)." },
@@ -61,7 +62,7 @@ var AXIS = (what) => ({
61
62
  additionalProperties: false
62
63
  });
63
64
  var TRENDLINE_PROPS = {
64
- type: { type: "string", enum: [..._chunkR3P2M7HUcjs.CHART_TRENDLINE_TYPES], description: "Fit: linear, exponential, logarithmic, power, polynomial or moving-average." },
65
+ type: { type: "string", enum: [..._chunkUVXTOZ2Bcjs.CHART_TRENDLINE_TYPES], description: "Fit: linear, exponential, logarithmic, power, polynomial or moving-average." },
65
66
  order: { type: "integer", minimum: 2, maximum: 6, description: "Polynomial order (default 2)." },
66
67
  period: { type: "integer", minimum: 2, description: "Moving-average period in points (default 2)." },
67
68
  forward: { type: "number", minimum: 0, description: "Extend the line this many x units past the last point (default 0)." },
@@ -76,7 +77,7 @@ var REFERENCE_COMMON = {
76
77
  label: { type: "string", description: 'Text written on it, e.g. "Target" (default none).' },
77
78
  axis: {
78
79
  type: "string",
79
- enum: [..._chunkR3P2M7HUcjs.CHART_REFERENCE_AXES],
80
+ enum: [..._chunkUVXTOZ2Bcjs.CHART_REFERENCE_AXES],
80
81
  description: "Axis it is measured on: y (default) is the value axis, y2 the secondary value axis (needs a series there), x the numeric x axis of a scatter or bubble chart."
81
82
  },
82
83
  color: { type: "string", description: "CSS colour (default: the text colour)." }
@@ -92,7 +93,7 @@ var REFERENCE_BAND_PROPS = {
92
93
  };
93
94
  var REFERENCE_COMMON_PATCH = {
94
95
  label: { type: ["string", "null"], description: "Text written on it; null removes it." },
95
- axis: { type: ["string", "null"], enum: [..._chunkR3P2M7HUcjs.CHART_REFERENCE_AXES, null], description: "Axis it is measured on (y, y2 or x); null goes back to y." },
96
+ axis: { type: ["string", "null"], enum: [..._chunkUVXTOZ2Bcjs.CHART_REFERENCE_AXES, null], description: "Axis it is measured on (y, y2 or x); null goes back to y." },
96
97
  color: { type: ["string", "null"], description: "CSS colour; null goes back to the text colour." }
97
98
  };
98
99
  var REFERENCE_LINE_PATCH = { value: REFERENCE_LINE_PROPS.value, ...REFERENCE_COMMON_PATCH };
@@ -112,19 +113,26 @@ var TREE_NODE = {
112
113
  };
113
114
  var TREE_DEFS = { chartTreeNode: TREE_NODE };
114
115
  var TREE_PATH = { type: "array", items: { type: "string" }, minItems: 1, description: 'Names from the top level down to the node, e.g. ["Europe", "France"] (from get_chart treeTable or spec.tree).' };
116
+ var LINK_PROPS = {
117
+ source: { type: "string", description: "Name of the node the flow leaves." },
118
+ target: { type: "string", description: "Name of the node it reaches (a different node; flows only go forwards, no loops)." },
119
+ value: { type: "number", exclusiveMinimum: 0, description: "How much flows, above 0 (its width)." },
120
+ color: { type: "string", description: "CSS colour (default: by sankeyLinkColor)." }
121
+ };
122
+ var LINK_INDEX = { type: "integer", minimum: 0, description: "Flow index (0 = first), as get_chart lists them in spec.links." };
115
123
  var ERROR_BARS = (what) => ({
116
124
  type: ["object", "null"],
117
125
  description: `${what} null removes them.`,
118
126
  properties: {
119
127
  type: {
120
128
  type: "string",
121
- enum: [..._chunkR3P2M7HUcjs.CHART_ERROR_BAR_TYPES],
129
+ enum: [..._chunkUVXTOZ2Bcjs.CHART_ERROR_BAR_TYPES],
122
130
  description: "fixed: the same amount at every point; percent: a percentage of each value; stddev: value standard deviations of the series, drawn around the series mean (as Excel does); stderr: the standard error of the series at every point; custom: per-point plus / minus amounts."
123
131
  },
124
132
  value: { type: "number", minimum: 0, description: "Amount in data units for fixed (default 1), percent of each value for percent (default 5), number of standard deviations for stddev (default 1). Not for stderr or custom." },
125
133
  plus: { type: "array", items: VALUE, description: "custom only: amount above each point, one per category, in data units (0 or more; null for none)." },
126
134
  minus: { type: "array", items: VALUE, description: "custom only: amount below each point, one per category (default: the plus amounts)." },
127
- direction: { type: "string", enum: [..._chunkR3P2M7HUcjs.CHART_ERROR_BAR_DIRECTIONS], description: "both (default), plus (only above) or minus (only below)." },
135
+ direction: { type: "string", enum: [..._chunkUVXTOZ2Bcjs.CHART_ERROR_BAR_DIRECTIONS], description: "both (default), plus (only above) or minus (only below)." },
128
136
  cap: { type: "boolean", description: "Draw end caps (default true)." }
129
137
  },
130
138
  required: ["type"],
@@ -134,22 +142,22 @@ var SERIES_PROPS = {
134
142
  name: { type: "string", description: "Series name (legend and data grid header)." },
135
143
  values: { type: "array", items: VALUE, description: "One value per category, in category order (padded with gaps)." },
136
144
  color: { type: ["string", "null"], description: "CSS colour, or null for the palette colour." },
137
- type: { type: ["string", "null"], enum: [..._chunkR3P2M7HUcjs.CHART_SERIES_TYPES, null], description: "Draw this series as bar, line, area or scatter (a combo chart); null follows the chart type." },
145
+ type: { type: ["string", "null"], enum: [..._chunkUVXTOZ2Bcjs.CHART_SERIES_TYPES, null], description: "Draw this series as bar, line, area or scatter (a combo chart); null follows the chart type." },
138
146
  hidden: { type: "boolean", description: "Hide the series (its data is kept)." },
139
147
  axis: { type: ["string", "null"], enum: ["primary", "secondary", null], description: "Value axis: secondary is drawn on the right with its own scale." },
140
148
  x: { type: ["array", "null"], items: VALUE, description: "Numeric x per category, for scatter and bubble charts." },
141
149
  sizes: { type: ["array", "null"], items: VALUE, description: "Bubble sizes per category (area is proportional to size)." },
142
150
  pointColors: { type: ["array", "null"], items: { type: ["string", "null"] }, description: "Colour per category (null keeps the series colour)." },
143
151
  callouts: { type: ["array", "null"], items: { type: ["string", "null"] }, description: "A label pinned to each point that matters, one per category (null: none); null removes them all. Bar, line, area and scatter charts. set_chart_callout sets one." },
144
- marker: { type: ["string", "null"], enum: [..._chunkR3P2M7HUcjs.CHART_MARKERS, null], description: "Point marker shape for line, area and scatter series." },
145
- curve: { type: ["string", "null"], enum: [..._chunkR3P2M7HUcjs.CHART_CURVES, null], description: "Line shape for this series: linear, smooth or step." },
152
+ marker: { type: ["string", "null"], enum: [..._chunkUVXTOZ2Bcjs.CHART_MARKERS, null], description: "Point marker shape for line, area and scatter series." },
153
+ curve: { type: ["string", "null"], enum: [..._chunkUVXTOZ2Bcjs.CHART_CURVES, null], description: "Line shape for this series: linear, smooth or step." },
146
154
  dataLabels: { type: ["boolean", "null"], description: "Value labels for this series (null follows the chart)." },
147
155
  format: { ...FORMAT, type: ["object", "null"], description: "How this series' labels are written (null follows the value axis)." },
148
156
  errorBars: ERROR_BARS("Error bars along the value axis (bar, line, area and scatter series; on stacked charts they sit on the stack top)."),
149
157
  xErrorBars: ERROR_BARS("Error bars along the x axis (scatter and bubble charts with numeric x values; amounts in x units).")
150
158
  };
151
159
  var CHART_UPDATE_PROPERTIES = {
152
- type: { type: "string", enum: [..._chunkR3P2M7HUcjs.CHART_TYPES], description: "Chart type. slope joins each category from the first series (before) to the second (after); likert reads each category as a question and the series as answers from most negative to most positive; parliament draws the first series as seats; sunburst draws the grouped data (set_chart_tree) as rings, and a treemap with grouped data nests its groups." },
160
+ type: { type: "string", enum: [..._chunkUVXTOZ2Bcjs.CHART_TYPES], description: "Chart type. slope joins each category from the first series (before) to the second (after); likert reads each category as a question and the series as answers from most negative to most positive; parliament draws the first series as seats; sunburst draws the grouped data (set_chart_tree) as rings, and a treemap with grouped data nests its groups; sankey draws the flows (set_chart_links)." },
153
161
  title: { type: "string", description: 'Title ("" for none).' },
154
162
  subtitle: { type: "string", description: 'Subtitle ("" for none).' },
155
163
  xAxis: AXIS("Category axis (or numeric x axis of scatter / bubble charts)."),
@@ -158,15 +166,15 @@ var CHART_UPDATE_PROPERTIES = {
158
166
  legend: {
159
167
  type: "object",
160
168
  description: "Legend.",
161
- properties: { show: { type: "boolean", description: "Show the legend." }, position: { type: "string", enum: [..._chunkR3P2M7HUcjs.CHART_LEGEND_POSITIONS], description: "Where the legend goes." } },
169
+ properties: { show: { type: "boolean", description: "Show the legend." }, position: { type: "string", enum: [..._chunkUVXTOZ2Bcjs.CHART_LEGEND_POSITIONS], description: "Where the legend goes." } },
162
170
  additionalProperties: false
163
171
  },
164
- stacking: { type: "string", enum: [..._chunkR3P2M7HUcjs.CHART_STACKINGS], description: "none, stacked, or percent (each category scaled to 100%)." },
165
- orientation: { type: "string", enum: [..._chunkR3P2M7HUcjs.CHART_ORIENTATIONS], description: "horizontal draws bars sideways." },
166
- curve: { type: "string", enum: [..._chunkR3P2M7HUcjs.CHART_CURVES], description: "Line shape: linear, smooth or step." },
172
+ stacking: { type: "string", enum: [..._chunkUVXTOZ2Bcjs.CHART_STACKINGS], description: "none, stacked, or percent (each category scaled to 100%)." },
173
+ orientation: { type: "string", enum: [..._chunkUVXTOZ2Bcjs.CHART_ORIENTATIONS], description: "horizontal draws bars sideways." },
174
+ curve: { type: "string", enum: [..._chunkUVXTOZ2Bcjs.CHART_CURVES], description: "Line shape: linear, smooth or step." },
167
175
  points: { type: "boolean", description: "Dots on line and area series." },
168
176
  dataLabels: { type: "boolean", description: "Value labels on bars, points and slices." },
169
- labelPosition: { type: "string", enum: [..._chunkR3P2M7HUcjs.CHART_LABEL_POSITIONS], description: "Bar label position; auto drops labels that do not fit." },
177
+ labelPosition: { type: "string", enum: [..._chunkUVXTOZ2Bcjs.CHART_LABEL_POSITIONS], description: "Bar label position; auto drops labels that do not fit." },
170
178
  palette: { type: "array", items: { type: "string" }, minItems: 1, description: "Series colours in order (CSS colours)." },
171
179
  innerRadius: { type: "number", minimum: 0, maximum: 0.9, description: "Donut hole as a fraction of the radius." },
172
180
  gapWidth: { type: "number", minimum: 0, maximum: 0.9, description: "Space between bar groups as a fraction of the category (default 0.28)." },
@@ -174,18 +182,20 @@ var CHART_UPDATE_PROPERTIES = {
174
182
  bins: { type: ["integer", "null"], minimum: 1, maximum: 500, description: "Histogram bin count, or null for \u221An." },
175
183
  showTotal: { type: "boolean", description: "Waterfall: append a total bar." },
176
184
  radarTicks: { type: ["integer", "null"], minimum: 1, maximum: 50, description: "Radar: number of evenly spaced rings from the value axis min to max, or null for round-number rings (default null)." },
177
- radarGraticule: { type: "string", enum: [..._chunkR3P2M7HUcjs.CHART_RADAR_GRATICULES], description: "Radar: draw rings as polygons through the spokes or as circles (default polygon)." },
185
+ radarGraticule: { type: "string", enum: [..._chunkUVXTOZ2Bcjs.CHART_RADAR_GRATICULES], description: "Radar: draw rings as polygons through the spokes or as circles (default polygon)." },
178
186
  note: { type: "string", description: 'A source or footnote written under the chart ("" for none).' },
179
187
  highlight: { type: "array", items: { type: "string" }, description: "Category labels and series names (or ids) to draw normally while the rest are muted; [] shows everything. highlight_chart checks the names." },
180
188
  referenceLines: { type: "array", items: { type: "object", properties: REFERENCE_LINE_PROPS, required: ["value"], additionalProperties: false }, description: "Replaces every reference line (targets, floors, averages across the plot). add_chart_reference_line adds one." },
181
189
  referenceBands: { type: "array", items: { type: "object", properties: REFERENCE_BAND_PROPS, required: ["from", "to"], additionalProperties: false }, description: "Replaces every reference band (target ranges across the plot). add_chart_reference_band adds one." },
182
190
  varyColors: { type: "boolean", description: "A one-series bar, line, area or scatter chart colours each category from the palette, and its legend lists the categories (default false)." },
183
- likertNeutral: { type: "string", enum: [..._chunkR3P2M7HUcjs.CHART_LIKERT_NEUTRALS], description: "Likert with an odd number of answers: split (default) puts the middle answer across the centre line; separate draws it in its own column on the right." },
184
- likertSort: { type: "string", enum: [..._chunkR3P2M7HUcjs.CHART_LIKERT_SORTS], description: "Likert: order the questions by agreement (positive), by disagreement (negative) or as given (none, default)." },
191
+ likertNeutral: { type: "string", enum: [..._chunkUVXTOZ2Bcjs.CHART_LIKERT_NEUTRALS], description: "Likert with an odd number of answers: split (default) puts the middle answer across the centre line; separate draws it in its own column on the right." },
192
+ likertSort: { type: "string", enum: [..._chunkUVXTOZ2Bcjs.CHART_LIKERT_SORTS], description: "Likert: order the questions by agreement (positive), by disagreement (negative) or as given (none, default)." },
185
193
  parliamentArc: { type: "number", minimum: 90, maximum: 360, description: "Parliament: sweep of the hemicycle in degrees (default 180)." },
186
194
  parliamentMajority: { type: ["integer", "null"], minimum: 1, description: "Parliament: seats needed for a majority, drawn as a dashed line (null: half of the seats plus one)." },
187
195
  parliamentLabel: { type: "string", description: 'Parliament: caption under the seat total ("" writes "seats").' },
188
- sunburstLabel: { type: "string", description: 'Sunburst: caption under the total in the centre ("" for none).' }
196
+ sunburstLabel: { type: "string", description: 'Sunburst: caption under the total in the centre ("" for none).' },
197
+ sankeyLinkColor: { type: "string", enum: [..._chunkUVXTOZ2Bcjs.CHART_SANKEY_LINK_COLORS], description: "Sankey: colour each flow by its source node (default), its target node, or grey." },
198
+ sankeyNodes: { type: "array", items: { type: "string" }, description: "Sankey: node names in the order to stack them within their columns (reorder to untangle crossing flows); nodes left out follow in the order the flows name them." }
189
199
  };
190
200
 
191
201
 
@@ -204,4 +214,6 @@ var CHART_UPDATE_PROPERTIES = {
204
214
 
205
215
 
206
216
 
207
- exports.VALUE = VALUE; exports.SERIES_REF = SERIES_REF; exports.CATEGORY_REF = CATEGORY_REF; exports.WIDTH = WIDTH; exports.HEIGHT = HEIGHT; exports.TRENDLINE_PROPS = TRENDLINE_PROPS; exports.REFERENCE_LINE_PROPS = REFERENCE_LINE_PROPS; exports.REFERENCE_BAND_PROPS = REFERENCE_BAND_PROPS; exports.REFERENCE_LINE_PATCH = REFERENCE_LINE_PATCH; exports.REFERENCE_BAND_PATCH = REFERENCE_BAND_PATCH; exports.REFERENCE_INDEX = REFERENCE_INDEX; exports.TREE_DEFS = TREE_DEFS; exports.TREE_PATH = TREE_PATH; exports.SERIES_PROPS = SERIES_PROPS; exports.CHART_UPDATE_PROPERTIES = CHART_UPDATE_PROPERTIES;
217
+
218
+
219
+ exports.VALUE = VALUE; exports.SERIES_REF = SERIES_REF; exports.CATEGORY_REF = CATEGORY_REF; exports.WIDTH = WIDTH; exports.HEIGHT = HEIGHT; exports.TRENDLINE_PROPS = TRENDLINE_PROPS; exports.REFERENCE_LINE_PROPS = REFERENCE_LINE_PROPS; exports.REFERENCE_BAND_PROPS = REFERENCE_BAND_PROPS; exports.REFERENCE_LINE_PATCH = REFERENCE_LINE_PATCH; exports.REFERENCE_BAND_PATCH = REFERENCE_BAND_PATCH; exports.REFERENCE_INDEX = REFERENCE_INDEX; exports.TREE_DEFS = TREE_DEFS; exports.TREE_PATH = TREE_PATH; exports.LINK_PROPS = LINK_PROPS; exports.LINK_INDEX = LINK_INDEX; exports.SERIES_PROPS = SERIES_PROPS; exports.CHART_UPDATE_PROPERTIES = CHART_UPDATE_PROPERTIES;