@fusion.dev/helix 0.110.5 → 0.111.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.
@@ -13539,6 +13539,18 @@
13539
13539
  "module": "src/canvas/node/canvas-node.ts"
13540
13540
  }
13541
13541
  },
13542
+ {
13543
+ "kind": "field",
13544
+ "name": "placement",
13545
+ "privacy": "private",
13546
+ "readonly": true,
13547
+ "default": "new PlacementController(this)",
13548
+ "description": "Where the card was placed, kept in its own shadow root.",
13549
+ "inheritedFrom": {
13550
+ "name": "HelixHeadlessCanvasNode",
13551
+ "module": "src/canvas/node/canvas-node.ts"
13552
+ }
13553
+ },
13542
13554
  {
13543
13555
  "kind": "field",
13544
13556
  "name": "name",
@@ -14296,6 +14308,14 @@
14296
14308
  "module": "src/canvas/node/canvas-node.ts"
14297
14309
  }
14298
14310
  },
14311
+ {
14312
+ "description": "Placed on the board.",
14313
+ "name": "placed",
14314
+ "inheritedFrom": {
14315
+ "name": "HelixHeadlessCanvasNode",
14316
+ "module": "src/canvas/node/canvas-node.ts"
14317
+ }
14318
+ },
14299
14319
  {
14300
14320
  "description": "The card is selected.",
14301
14321
  "name": "selected",
@@ -15169,6 +15189,20 @@
15169
15189
  "module": "src/canvas/root/canvas-root.ts"
15170
15190
  }
15171
15191
  },
15192
+ {
15193
+ "kind": "field",
15194
+ "name": "toneLabels",
15195
+ "type": {
15196
+ "text": "Partial<Record<CanvasTone, string>>"
15197
+ },
15198
+ "default": "{}",
15199
+ "description": "What each tone means on this board, in words read out with the cards and\nconnections in it, such as `{\"danger\": \"Blocked\", \"success\": \"Done\"}`.\n\n**Named by the page, since the tone names a color and the page gives it\nits meaning.** JSON Canvas leaves its six colors to the application, so\nred is \"blocked\" on one board and \"urgent\" on the next. A reader who can\nsee the board is told by the color; this is how a reader who cannot is\ntold the same. A tone left out is not read.",
15200
+ "attribute": "tone-labels",
15201
+ "inheritedFrom": {
15202
+ "name": "HelixHeadlessCanvas",
15203
+ "module": "src/canvas/root/canvas-root.ts"
15204
+ }
15205
+ },
15172
15206
  {
15173
15207
  "kind": "field",
15174
15208
  "name": "stop",
@@ -15627,6 +15661,31 @@
15627
15661
  "module": "src/canvas/root/canvas-root.ts"
15628
15662
  }
15629
15663
  },
15664
+ {
15665
+ "kind": "field",
15666
+ "name": "fingers",
15667
+ "privacy": "private",
15668
+ "readonly": true,
15669
+ "default": "new Map<number, { x: number; y: number }>()",
15670
+ "description": "Where each finger on the board is, by pointer, which a pinch is measured from.",
15671
+ "inheritedFrom": {
15672
+ "name": "HelixHeadlessCanvas",
15673
+ "module": "src/canvas/root/canvas-root.ts"
15674
+ }
15675
+ },
15676
+ {
15677
+ "kind": "field",
15678
+ "name": "pinching",
15679
+ "type": {
15680
+ "text": "| {\n at: { x: number; y: number; zoom: number }\n middle: { x: number; y: number }\n spread: number\n }\n | undefined"
15681
+ },
15682
+ "privacy": "private",
15683
+ "description": "A pinch under way: how far apart its fingers were and the point between\nthem, in the box, and the view, when the second finger landed.",
15684
+ "inheritedFrom": {
15685
+ "name": "HelixHeadlessCanvas",
15686
+ "module": "src/canvas/root/canvas-root.ts"
15687
+ }
15688
+ },
15630
15689
  {
15631
15690
  "kind": "field",
15632
15691
  "name": "dragging",
@@ -16895,6 +16954,51 @@
16895
16954
  "module": "src/canvas/root/canvas-root.ts"
16896
16955
  }
16897
16956
  },
16957
+ {
16958
+ "kind": "method",
16959
+ "name": "fingerSpan",
16960
+ "privacy": "private",
16961
+ "return": {
16962
+ "type": {
16963
+ "text": "{ middle: { x: number; y: number }; spread: number }"
16964
+ }
16965
+ },
16966
+ "description": "The fingers' spread and the point between them, in the box. Taken from\nthe first two fingers down, where a third has landed as well.",
16967
+ "inheritedFrom": {
16968
+ "name": "HelixHeadlessCanvas",
16969
+ "module": "src/canvas/root/canvas-root.ts"
16970
+ }
16971
+ },
16972
+ {
16973
+ "kind": "method",
16974
+ "name": "startPinch",
16975
+ "privacy": "private",
16976
+ "return": {
16977
+ "type": {
16978
+ "text": "void"
16979
+ }
16980
+ },
16981
+ "description": "Turns what the first finger was doing into a pinch, where that was a pan\nor a press that had not yet moved anything. A finger already carrying a\ncard, drawing a line, resizing or drawing a box goes on doing that.",
16982
+ "inheritedFrom": {
16983
+ "name": "HelixHeadlessCanvas",
16984
+ "module": "src/canvas/root/canvas-root.ts"
16985
+ }
16986
+ },
16987
+ {
16988
+ "kind": "method",
16989
+ "name": "pinch",
16990
+ "privacy": "private",
16991
+ "return": {
16992
+ "type": {
16993
+ "text": "void"
16994
+ }
16995
+ },
16996
+ "description": "Scales the board by how far the fingers have spread since the pinch\nbegan, about the point between them, and carries it with that point, so\nwhat was under the fingers stays under them.",
16997
+ "inheritedFrom": {
16998
+ "name": "HelixHeadlessCanvas",
16999
+ "module": "src/canvas/root/canvas-root.ts"
17000
+ }
17001
+ },
16898
17002
  {
16899
17003
  "kind": "method",
16900
17004
  "name": "zoomAbout",
@@ -17940,6 +18044,19 @@
17940
18044
  "name": "HelixHeadlessCanvas",
17941
18045
  "module": "src/canvas/root/canvas-root.ts"
17942
18046
  }
18047
+ },
18048
+ {
18049
+ "name": "tone-labels",
18050
+ "type": {
18051
+ "text": "Partial<Record<CanvasTone, string>>"
18052
+ },
18053
+ "default": "{}",
18054
+ "description": "What each tone means on this board, in words read out with the cards and\nconnections in it, such as `{\"danger\": \"Blocked\", \"success\": \"Done\"}`.\n\n**Named by the page, since the tone names a color and the page gives it\nits meaning.** JSON Canvas leaves its six colors to the application, so\nred is \"blocked\" on one board and \"urgent\" on the next. A reader who can\nsee the board is told by the color; this is how a reader who cannot is\ntold the same. A tone left out is not read.",
18055
+ "fieldName": "toneLabels",
18056
+ "inheritedFrom": {
18057
+ "name": "HelixHeadlessCanvas",
18058
+ "module": "src/canvas/root/canvas-root.ts"
18059
+ }
17943
18060
  }
17944
18061
  ],
17945
18062
  "superclass": {
@@ -17982,7 +18099,7 @@
17982
18099
  "slug": "read-only"
17983
18100
  },
17984
18101
  {
17985
- "description": "Outlined, filled, elevated, and plain cards, joined by solid, dashed, and dotted connections.",
18102
+ "description": "Outlined, filled, elevated, and plain cards, joined by solid, dashed, and dotted connections, with what each tone means read out.",
17986
18103
  "slug": "styles"
17987
18104
  },
17988
18105
  {
@@ -79801,6 +79918,18 @@
79801
79918
  "module": "src/map/marker/map-marker.ts"
79802
79919
  }
79803
79920
  },
79921
+ {
79922
+ "kind": "field",
79923
+ "name": "placement",
79924
+ "privacy": "private",
79925
+ "readonly": true,
79926
+ "default": "new PlacementController(this)",
79927
+ "description": "Where the marker was placed, kept in its own shadow root.",
79928
+ "inheritedFrom": {
79929
+ "name": "HelixHeadlessMapMarker",
79930
+ "module": "src/map/marker/map-marker.ts"
79931
+ }
79932
+ },
79804
79933
  {
79805
79934
  "kind": "field",
79806
79935
  "name": "name",
@@ -80474,6 +80603,14 @@
80474
80603
  "module": "src/map/marker/map-marker.ts"
80475
80604
  }
80476
80605
  },
80606
+ {
80607
+ "description": "Placed on the map by the connector.",
80608
+ "name": "placed",
80609
+ "inheritedFrom": {
80610
+ "name": "HelixHeadlessMapMarker",
80611
+ "module": "src/map/marker/map-marker.ts"
80612
+ }
80613
+ },
80477
80614
  {
80478
80615
  "description": "Shows its name before the point, because there was no room after it.",
80479
80616
  "name": "start",
@@ -81571,6 +81708,18 @@
81571
81708
  "module": "src/map/position/map-position.ts"
81572
81709
  }
81573
81710
  },
81711
+ {
81712
+ "kind": "field",
81713
+ "name": "placement",
81714
+ "privacy": "private",
81715
+ "readonly": true,
81716
+ "default": "new PlacementController(this)",
81717
+ "description": "Where the position was placed, kept in its own shadow root.",
81718
+ "inheritedFrom": {
81719
+ "name": "HelixHeadlessMapPosition",
81720
+ "module": "src/map/position/map-position.ts"
81721
+ }
81722
+ },
81574
81723
  {
81575
81724
  "kind": "field",
81576
81725
  "name": "spoken",
@@ -82155,6 +82304,14 @@
82155
82304
  }
82156
82305
  ],
82157
82306
  "cssStates": [
82307
+ {
82308
+ "description": "Placed on the map by the connector.",
82309
+ "name": "placed",
82310
+ "inheritedFrom": {
82311
+ "name": "HelixHeadlessMapPosition",
82312
+ "module": "src/map/position/map-position.ts"
82313
+ }
82314
+ },
82158
82315
  {
82159
82316
  "description": "Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.",
82160
82317
  "name": "settled",
@@ -205,7 +205,7 @@ color: var(--helix-color-foreground-subtle);
205
205
  font-size: var(--helix-text-xs);
206
206
  }
207
207
 
208
- :host(:not([style*="--_canvas-card-x"])) {
208
+ :host(:not(:state(placed))) {
209
209
  position: static;
210
210
  }
211
211
 
@@ -27,7 +27,7 @@ position: absolute;
27
27
  z-index: calc(var(--helix-layer-raised) + 1);
28
28
  }
29
29
 
30
- :host(:not([style*="--_map-marker-x"])) {
30
+ :host(:not(:state(placed))) {
31
31
  visibility: hidden;
32
32
  }
33
33
 
@@ -27,7 +27,7 @@ position: absolute;
27
27
  z-index: var(--helix-layer-raised);
28
28
  }
29
29
 
30
- :host(:not([style*="--_map-position-x"])) [part="position"] {
30
+ :host(:not(:state(placed))) [part="position"] {
31
31
  visibility: hidden;
32
32
  }
33
33
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@fusion.dev/helix",
3
3
  "description": "Styled component tier. Extends the headless tier with token-driven presentation.",
4
- "version": "0.110.5",
4
+ "version": "0.111.0",
5
5
  "license": "MIT",
6
6
  "author": "Ross Sheppard <ross.sheppard@fusion.dev>",
7
7
  "repository": {
@@ -51,13 +51,13 @@
51
51
  },
52
52
  "bugs": "https://github.com/project-fusion/fusion/issues",
53
53
  "dependencies": {
54
- "@fusion.dev/helix-core": "0.110.5",
55
- "@fusion.dev/helix-headless": "0.110.5",
56
- "@fusion.dev/helix-styles": "0.110.5"
54
+ "@fusion.dev/helix-core": "0.111.0",
55
+ "@fusion.dev/helix-headless": "0.111.0",
56
+ "@fusion.dev/helix-styles": "0.111.0"
57
57
  },
58
58
  "devDependencies": {
59
- "@fusion.dev/helix-cem": "0.110.5",
60
- "@fusion.dev/helix-testing": "0.110.5",
59
+ "@fusion.dev/helix-cem": "0.111.0",
60
+ "@fusion.dev/helix-testing": "0.111.0",
61
61
  "@fusion.dev/scripts": "0.0.0-dev",
62
62
  "@happy-dom/global-registrator": "^20.0.0",
63
63
  "@lit-labs/ssr": "^4.1.0",
package/types/jsx.d.ts CHANGED
@@ -3163,6 +3163,24 @@ Written to select from outside, and read to act on the selection. */
3163
3163
  "stopped-label"?: (HelixCanvas["stoppedLabel"]) | undefined;
3164
3164
  /** The text announced when a connection is stopped before it is requested. */
3165
3165
  stoppedLabel?: (HelixCanvas["stoppedLabel"]) | undefined;
3166
+ /** What each tone means on this board, in words read out with the cards and
3167
+ connections in it, such as `{"danger": "Blocked", "success": "Done"}`.
3168
+
3169
+ **Named by the page, since the tone names a color and the page gives it
3170
+ its meaning.** JSON Canvas leaves its six colors to the application, so
3171
+ red is "blocked" on one board and "urgent" on the next. A reader who can
3172
+ see the board is told by the color; this is how a reader who cannot is
3173
+ told the same. A tone left out is not read. */
3174
+ "tone-labels"?: (HelixCanvas["toneLabels"]) | undefined;
3175
+ /** What each tone means on this board, in words read out with the cards and
3176
+ connections in it, such as `{"danger": "Blocked", "success": "Done"}`.
3177
+
3178
+ **Named by the page, since the tone names a color and the page gives it
3179
+ its meaning.** JSON Canvas leaves its six colors to the application, so
3180
+ red is "blocked" on one board and "urgent" on the next. A reader who can
3181
+ see the board is told by the color; this is how a reader who cannot is
3182
+ told the same. A tone left out is not read. */
3183
+ toneLabels?: (HelixCanvas["toneLabels"]) | undefined;
3166
3184
  /** The board's current view: the document's point at the middle of the view,
3167
3185
  and the zoom.
3168
3186
 
@@ -3471,6 +3489,24 @@ Written to select from outside, and read to act on the selection. */
3471
3489
  "attr:stopped-label"?: (HelixCanvas["stoppedLabel"]) | undefined;
3472
3490
  /** The text announced when a connection is stopped before it is requested. */
3473
3491
  "prop:stoppedLabel"?: (HelixCanvas["stoppedLabel"]) | undefined;
3492
+ /** What each tone means on this board, in words read out with the cards and
3493
+ connections in it, such as `{"danger": "Blocked", "success": "Done"}`.
3494
+
3495
+ **Named by the page, since the tone names a color and the page gives it
3496
+ its meaning.** JSON Canvas leaves its six colors to the application, so
3497
+ red is "blocked" on one board and "urgent" on the next. A reader who can
3498
+ see the board is told by the color; this is how a reader who cannot is
3499
+ told the same. A tone left out is not read. */
3500
+ "attr:tone-labels"?: (HelixCanvas["toneLabels"]) | undefined;
3501
+ /** What each tone means on this board, in words read out with the cards and
3502
+ connections in it, such as `{"danger": "Blocked", "success": "Done"}`.
3503
+
3504
+ **Named by the page, since the tone names a color and the page gives it
3505
+ its meaning.** JSON Canvas leaves its six colors to the application, so
3506
+ red is "blocked" on one board and "urgent" on the next. A reader who can
3507
+ see the board is told by the color; this is how a reader who cannot is
3508
+ told the same. A tone left out is not read. */
3509
+ "prop:toneLabels"?: (HelixCanvas["toneLabels"]) | undefined;
3474
3510
  /** The board's current view: the document's point at the middle of the view,
3475
3511
  and the zoom.
3476
3512
 
@@ -28504,6 +28540,7 @@ export type CustomElements = {
28504
28540
  *
28505
28541
  * - `candidate`: While a connection is being drawn and this card is somewhere it could arrive.
28506
28542
  * - `current`: The card that receives focus when you tab into the board.
28543
+ * - `placed`: Placed on the board.
28507
28544
  * - `selected`: The card is selected.
28508
28545
  * - `target`: A connection being drawn would end here if you released it.
28509
28546
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
@@ -28672,6 +28709,14 @@ export type CustomElements = {
28672
28709
  *
28673
28710
  * Written to select from outside, and read to act on the selection.
28674
28711
  * - `stopped-label`/`stoppedLabel`: The text announced when a connection is stopped before it is requested.
28712
+ * - `tone-labels`/`toneLabels`: What each tone means on this board, in words read out with the cards and
28713
+ * connections in it, such as `{"danger": "Blocked", "success": "Done"}`.
28714
+ *
28715
+ * **Named by the page, since the tone names a color and the page gives it
28716
+ * its meaning.** JSON Canvas leaves its six colors to the application, so
28717
+ * red is "blocked" on one board and "urgent" on the next. A reader who can
28718
+ * see the board is told by the color; this is how a reader who cannot is
28719
+ * told the same. A tone left out is not read.
28675
28720
  * - `view`: The board's current view: the document's point at the middle of the view,
28676
28721
  * and the zoom.
28677
28722
  *
@@ -37238,6 +37283,7 @@ export type CustomElements = {
37238
37283
  * - `fanned`: Spread out from a location it shares with other markers, after their cluster was pressed.
37239
37284
  * - `icon`: Has content in the icon slot.
37240
37285
  * - `passed`: Marked as passed.
37286
+ * - `placed`: Placed on the map by the connector.
37241
37287
  * - `start`: Shows its name before the point, because there was no room after it.
37242
37288
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
37243
37289
  */
@@ -37400,6 +37446,7 @@ export type CustomElements = {
37400
37446
  *
37401
37447
  * These can be used to apply styling when a component is in a given state.
37402
37448
  *
37449
+ * - `placed`: Placed on the map by the connector.
37403
37450
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
37404
37451
  */
37405
37452
  "helix-map-position": Partial<
@@ -50301,6 +50348,7 @@ export type CustomElementsSolidJs = {
50301
50348
  *
50302
50349
  * - `candidate`: While a connection is being drawn and this card is somewhere it could arrive.
50303
50350
  * - `current`: The card that receives focus when you tab into the board.
50351
+ * - `placed`: Placed on the board.
50304
50352
  * - `selected`: The card is selected.
50305
50353
  * - `target`: A connection being drawn would end here if you released it.
50306
50354
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
@@ -50472,6 +50520,14 @@ export type CustomElementsSolidJs = {
50472
50520
  *
50473
50521
  * Written to select from outside, and read to act on the selection.
50474
50522
  * - `stopped-label`/`stoppedLabel`: The text announced when a connection is stopped before it is requested.
50523
+ * - `tone-labels`/`toneLabels`: What each tone means on this board, in words read out with the cards and
50524
+ * connections in it, such as `{"danger": "Blocked", "success": "Done"}`.
50525
+ *
50526
+ * **Named by the page, since the tone names a color and the page gives it
50527
+ * its meaning.** JSON Canvas leaves its six colors to the application, so
50528
+ * red is "blocked" on one board and "urgent" on the next. A reader who can
50529
+ * see the board is told by the color; this is how a reader who cannot is
50530
+ * told the same. A tone left out is not read.
50475
50531
  * - `view`: The board's current view: the document's point at the middle of the view,
50476
50532
  * and the zoom.
50477
50533
  *
@@ -59196,6 +59252,7 @@ export type CustomElementsSolidJs = {
59196
59252
  * - `fanned`: Spread out from a location it shares with other markers, after their cluster was pressed.
59197
59253
  * - `icon`: Has content in the icon slot.
59198
59254
  * - `passed`: Marked as passed.
59255
+ * - `placed`: Placed on the map by the connector.
59199
59256
  * - `start`: Shows its name before the point, because there was no room after it.
59200
59257
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
59201
59258
  */
@@ -59364,6 +59421,7 @@ export type CustomElementsSolidJs = {
59364
59421
  *
59365
59422
  * These can be used to apply styling when a component is in a given state.
59366
59423
  *
59424
+ * - `placed`: Placed on the map by the connector.
59367
59425
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
59368
59426
  */
59369
59427
  "helix-map-position": Partial<
package/types/svelte.d.ts CHANGED
@@ -25,6 +25,8 @@ declare module 'svelte/elements' {
25
25
  'helix-callout': CustomElements['helix-callout']
26
26
  'helix-canvas-edge': CustomElements['helix-canvas-edge']
27
27
  'helix-canvas-node': CustomElements['helix-canvas-node']
28
+ 'danger': CustomElements['danger']
29
+ 'success': CustomElements['success']
28
30
  'helix-canvas': CustomElements['helix-canvas']
29
31
  'helix-card': CustomElements['helix-card']
30
32
  'helix-carousel': CustomElements['helix-carousel']
package/types/vue.d.ts CHANGED
@@ -1777,6 +1777,24 @@ Written to select from outside, and read to act on the selection. */
1777
1777
  "stopped-label"?: (HelixCanvas["stoppedLabel"]) | undefined;
1778
1778
  /** The text announced when a connection is stopped before it is requested. */
1779
1779
  stoppedLabel?: (HelixCanvas["stoppedLabel"]) | undefined;
1780
+ /** What each tone means on this board, in words read out with the cards and
1781
+ connections in it, such as `{"danger": "Blocked", "success": "Done"}`.
1782
+
1783
+ **Named by the page, since the tone names a color and the page gives it
1784
+ its meaning.** JSON Canvas leaves its six colors to the application, so
1785
+ red is "blocked" on one board and "urgent" on the next. A reader who can
1786
+ see the board is told by the color; this is how a reader who cannot is
1787
+ told the same. A tone left out is not read. */
1788
+ "tone-labels"?: (HelixCanvas["toneLabels"]) | undefined;
1789
+ /** What each tone means on this board, in words read out with the cards and
1790
+ connections in it, such as `{"danger": "Blocked", "success": "Done"}`.
1791
+
1792
+ **Named by the page, since the tone names a color and the page gives it
1793
+ its meaning.** JSON Canvas leaves its six colors to the application, so
1794
+ red is "blocked" on one board and "urgent" on the next. A reader who can
1795
+ see the board is told by the color; this is how a reader who cannot is
1796
+ told the same. A tone left out is not read. */
1797
+ toneLabels?: (HelixCanvas["toneLabels"]) | undefined;
1780
1798
  /** The board's current view: the document's point at the middle of the view,
1781
1799
  and the zoom.
1782
1800