@fusion.dev/helix-headless 0.16.3 → 0.16.4

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.
@@ -41012,7 +41012,7 @@
41012
41012
  "text": "TemplateResult | typeof nothing"
41013
41013
  }
41014
41014
  },
41015
- "description": "The control that removes the item, with the mark a consumer can replace.\n\n**A method rather than markup inside `render`, and the slot moves with\nit.** A fallback answers a consumer and a seam answers the tier above, which\nare different people: the styled tier wants an icon here, and with the slot\nwritten inline the only way to change it is to reimplement the whole\ntemplate. Moving only the fallback out is not enough: the slot is the thing\na tier redraws.\n\n**The mark is drawn rather than typed, which is what lets it align.** A\ncharacter such as `&times;` is placed by its font rather than by its box:\nmeasured against the ghost button beside it at 8x, the cross carried 6\npixels of ink to the label's 9.5 and sat 1.5 pixels below its center, in two\nboxes whose own centers agreed to a tenth of a pixel. No stylesheet can\ncorrect that, because the offset is inside the glyph. An `<svg>` is centered\non its own viewBox, so it lands where the box says and takes the icon step\nthe row is already set in. It is the `x` the Tag's dismiss draws, so two\ncontrols that mean \"take this away\" are one mark."
41015
+ "description": "The control that removes the item, with the mark a consumer can replace.\n\n**A method rather than markup inside `render`, and the slot moves with\nit.** A fallback answers a consumer and a seam answers the tier above, which\nare different people: the styled tier wants an icon here, and with the slot\nwritten inline the only way to change it is to reimplement the whole\ntemplate. Moving only the fallback out is not enough: the slot is the thing\na tier redraws.\n\n**The mark is drawn rather than typed, which is what lets it align.** A\ncharacter such as `&times;` is placed by its font rather than by its box:\nmeasured against the ghost button beside it at 8x, the cross carried 6\npixels of ink to the label's 9.5 and sat 1.5 pixels below its center, in two\nboxes whose own centers agreed to a tenth of a pixel. No stylesheet can\ncorrect that, because the offset is inside the glyph. An `<svg>` is centered\non its own viewBox, so it lands where the box says and takes the icon step\nthe row is already set in.\n\n**A trash and not the `x` the Tag draws, because the two do not mean the\nsame thing.** A tag's cross takes a token off a field the reader is still\nfilling in, and putting it back is retyping a word. A notification is the\nonly copy of something that happened, and this removes it from the feed for\ngood, so the mark is the one every other interface uses for that and the\nink is `danger`. It is only ever on screen while the row is hovered or\nfocused, so a feed of twenty is not a column of red."
41016
41016
  },
41017
41017
  {
41018
41018
  "kind": "method",
@@ -75760,7 +75760,7 @@
75760
75760
  "text": "string"
75761
75761
  },
75762
75762
  "default": "''",
75763
- "description": "Controls beyond the ones every player has, named in the order they appear.\n\nA list rather than a property apiece. A bar is a row with a budget, and a\nboolean per feature invites a consumer to switch all of them on: naming\nthem makes the row a decision, and makes the order theirs. Anything\nunrecognized is skipped rather than throwing, since the list is markup and\na typo should cost a control, not a page.\n\n`pip` is offered only where the platform has it, checked rather than\nassumed: it is absent on iPhone and behind a flag in Firefox, and a button\nthat cannot work is worse than one that is not there.\n\nThe names are `speed`, `pip`, `remote` and `download`.\n\n**`download` is named and never assumed.** Offering the file is a decision\nabout the content rather than about the player, and plenty of consumers\ndecline it deliberately. It is also the one control whose success is not\nours to promise: the attribute is ignored cross-origin, so a file served\nfrom somewhere else opens rather than saves, which is the browser's rule\nand not something a player can work around.",
75763
+ "description": "Controls beyond the ones every player has, named in the order they appear.\n\nA list rather than a property apiece. A bar is a row with a budget, and a\nboolean per feature invites a consumer to switch all of them on: naming\nthem makes the row a decision, and makes the order theirs. Anything\nunrecognized is skipped rather than throwing, since the list is markup and\na typo should cost a control, not a page.\n\n`pip` is offered only where the platform has it, checked rather than\nassumed: it is absent on iPhone and behind a flag in Firefox, and a button\nthat cannot work is worse than one that is not there.\n\nThe names are `speed`, `pip`, `remote`, `download`, `rewind`, `forward`,\n`previous` and `next`.\n\n**`previous` and `next` do nothing to the video, and are offered anyway.**\nThey announce `helix-previous` and `helix-next` and stop there, so what\nthey move is whatever holds the set, which is what `VideoPlaylist` listens\nfor. A player standing alone therefore draws a pair of controls that change\nnothing, and that is deliberate: a player cannot know whether it is inside\na set, and one that hid them until it could prove there was one would be a\nplayer that never offers them. Name them where something is listening.\n\n**`download` is named and never assumed.** Offering the file is a decision\nabout the content rather than about the player, and plenty of consumers\ndecline it deliberately. It is also the one control whose success is not\nours to promise: the attribute is ignored cross-origin, so a file served\nfrom somewhere else opens rather than saves, which is the browser's rule\nand not something a player can work around.",
75764
75764
  "attribute": "extra-controls"
75765
75765
  },
75766
75766
  {
@@ -76916,7 +76916,7 @@
76916
76916
  "text": "string"
76917
76917
  },
76918
76918
  "default": "''",
76919
- "description": "Controls beyond the ones every player has, named in the order they appear.\n\nA list rather than a property apiece. A bar is a row with a budget, and a\nboolean per feature invites a consumer to switch all of them on: naming\nthem makes the row a decision, and makes the order theirs. Anything\nunrecognized is skipped rather than throwing, since the list is markup and\na typo should cost a control, not a page.\n\n`pip` is offered only where the platform has it, checked rather than\nassumed: it is absent on iPhone and behind a flag in Firefox, and a button\nthat cannot work is worse than one that is not there.\n\nThe names are `speed`, `pip`, `remote` and `download`.\n\n**`download` is named and never assumed.** Offering the file is a decision\nabout the content rather than about the player, and plenty of consumers\ndecline it deliberately. It is also the one control whose success is not\nours to promise: the attribute is ignored cross-origin, so a file served\nfrom somewhere else opens rather than saves, which is the browser's rule\nand not something a player can work around.",
76919
+ "description": "Controls beyond the ones every player has, named in the order they appear.\n\nA list rather than a property apiece. A bar is a row with a budget, and a\nboolean per feature invites a consumer to switch all of them on: naming\nthem makes the row a decision, and makes the order theirs. Anything\nunrecognized is skipped rather than throwing, since the list is markup and\na typo should cost a control, not a page.\n\n`pip` is offered only where the platform has it, checked rather than\nassumed: it is absent on iPhone and behind a flag in Firefox, and a button\nthat cannot work is worse than one that is not there.\n\nThe names are `speed`, `pip`, `remote`, `download`, `rewind`, `forward`,\n`previous` and `next`.\n\n**`previous` and `next` do nothing to the video, and are offered anyway.**\nThey announce `helix-previous` and `helix-next` and stop there, so what\nthey move is whatever holds the set, which is what `VideoPlaylist` listens\nfor. A player standing alone therefore draws a pair of controls that change\nnothing, and that is deliberate: a player cannot know whether it is inside\na set, and one that hid them until it could prove there was one would be a\nplayer that never offers them. Name them where something is listening.\n\n**`download` is named and never assumed.** Offering the file is a decision\nabout the content rather than about the player, and plenty of consumers\ndecline it deliberately. It is also the one control whose success is not\nours to promise: the attribute is ignored cross-origin, so a file served\nfrom somewhere else opens rather than saves, which is the browser's rule\nand not something a player can work around.",
76920
76920
  "fieldName": "extraControls"
76921
76921
  },
76922
76922
  {
@@ -146,8 +146,15 @@ export declare class HelixHeadlessNotification extends HelixElement {
146
146
  * boxes whose own centers agreed to a tenth of a pixel. No stylesheet can
147
147
  * correct that, because the offset is inside the glyph. An `<svg>` is centered
148
148
  * on its own viewBox, so it lands where the box says and takes the icon step
149
- * the row is already set in. It is the `x` the Tag's dismiss draws, so two
150
- * controls that mean "take this away" are one mark.
149
+ * the row is already set in.
150
+ *
151
+ * **A trash and not the `x` the Tag draws, because the two do not mean the
152
+ * same thing.** A tag's cross takes a token off a field the reader is still
153
+ * filling in, and putting it back is retyping a word. A notification is the
154
+ * only copy of something that happened, and this removes it from the feed for
155
+ * good, so the mark is the one every other interface uses for that and the
156
+ * ink is `danger`. It is only ever on screen while the row is hovered or
157
+ * focused, so a feed of twenty is not a column of red.
151
158
  */
152
159
  protected renderDismiss(): TemplateResult | typeof nothing;
153
160
  /**
@@ -5,7 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { customElement, HelixDismissEvent, HelixElement, HelixReadEvent, hostAria, requestChange, slotFilled, } from '@fusion.dev/helix-core';
8
- import { x } from '@fusion.dev/helix-icons';
8
+ import { trash } from '@fusion.dev/helix-icons';
9
9
  import { nothing } from 'lit';
10
10
  import { property } from 'lit/decorators.js';
11
11
  import { unsafeSVG } from 'lit/directives/unsafe-svg.js';
@@ -83,9 +83,9 @@ let HelixHeadlessNotification = class HelixHeadlessNotification extends HelixEle
83
83
  data-glyph
84
84
  fill="currentColor"
85
85
  part="dismiss-mark"
86
- viewBox=${x.viewBox}
86
+ viewBox=${trash.viewBox}
87
87
  >
88
- ${unsafeSVG(x.content)}
88
+ ${unsafeSVG(trash.content)}
89
89
  </svg>
90
90
  </slot>
91
91
  </button>`;
@@ -159,7 +159,16 @@ export declare class HelixHeadlessVideo extends HelixElement {
159
159
  * assumed: it is absent on iPhone and behind a flag in Firefox, and a button
160
160
  * that cannot work is worse than one that is not there.
161
161
  *
162
- * The names are `speed`, `pip`, `remote` and `download`.
162
+ * The names are `speed`, `pip`, `remote`, `download`, `rewind`, `forward`,
163
+ * `previous` and `next`.
164
+ *
165
+ * **`previous` and `next` do nothing to the video, and are offered anyway.**
166
+ * They announce `helix-previous` and `helix-next` and stop there, so what
167
+ * they move is whatever holds the set, which is what `VideoPlaylist` listens
168
+ * for. A player standing alone therefore draws a pair of controls that change
169
+ * nothing, and that is deliberate: a player cannot know whether it is inside
170
+ * a set, and one that hid them until it could prove there was one would be a
171
+ * player that never offers them. Name them where something is listening.
163
172
  *
164
173
  * **`download` is named and never assumed.** Offering the file is a decision
165
174
  * about the content rather than about the player, and plenty of consumers
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@fusion.dev/helix-headless",
3
3
  "description": "Headless component tier. Structure, accessibility, state, and form participation. No styling.",
4
- "version": "0.16.3",
4
+ "version": "0.16.4",
5
5
  "license": "MIT",
6
6
  "author": "Ross Sheppard <ross.sheppard@fusion.dev>",
7
7
  "repository": {
@@ -45,14 +45,14 @@
45
45
  },
46
46
  "bugs": "https://github.com/project-fusion/fusion/issues",
47
47
  "dependencies": {
48
- "@fusion.dev/helix-core": "0.16.3",
49
- "@fusion.dev/helix-icons": "0.16.3",
48
+ "@fusion.dev/helix-core": "0.16.4",
49
+ "@fusion.dev/helix-icons": "0.16.4",
50
50
  "uqr": "^0.1.3"
51
51
  },
52
52
  "devDependencies": {
53
53
  "@custom-elements-manifest/analyzer": "^0.11.0",
54
- "@fusion.dev/helix-cem": "0.16.3",
55
- "@fusion.dev/helix-testing": "0.16.3",
54
+ "@fusion.dev/helix-cem": "0.16.4",
55
+ "@fusion.dev/helix-testing": "0.16.4",
56
56
  "@fusion.dev/scripts": "0.0.0-dev",
57
57
  "@happy-dom/global-registrator": "^20.0.0",
58
58
  "@lit-labs/ssr": "^3.3.0",
package/types/jsx.d.ts CHANGED
@@ -15173,7 +15173,16 @@ a typo should cost a control, not a page.
15173
15173
  assumed: it is absent on iPhone and behind a flag in Firefox, and a button
15174
15174
  that cannot work is worse than one that is not there.
15175
15175
 
15176
- The names are `speed`, `pip`, `remote` and `download`.
15176
+ The names are `speed`, `pip`, `remote`, `download`, `rewind`, `forward`,
15177
+ `previous` and `next`.
15178
+
15179
+ **`previous` and `next` do nothing to the video, and are offered anyway.**
15180
+ They announce `helix-previous` and `helix-next` and stop there, so what
15181
+ they move is whatever holds the set, which is what `VideoPlaylist` listens
15182
+ for. A player standing alone therefore draws a pair of controls that change
15183
+ nothing, and that is deliberate: a player cannot know whether it is inside
15184
+ a set, and one that hid them until it could prove there was one would be a
15185
+ player that never offers them. Name them where something is listening.
15177
15186
 
15178
15187
  **`download` is named and never assumed.** Offering the file is a decision
15179
15188
  about the content rather than about the player, and plenty of consumers
@@ -15194,7 +15203,16 @@ a typo should cost a control, not a page.
15194
15203
  assumed: it is absent on iPhone and behind a flag in Firefox, and a button
15195
15204
  that cannot work is worse than one that is not there.
15196
15205
 
15197
- The names are `speed`, `pip`, `remote` and `download`.
15206
+ The names are `speed`, `pip`, `remote`, `download`, `rewind`, `forward`,
15207
+ `previous` and `next`.
15208
+
15209
+ **`previous` and `next` do nothing to the video, and are offered anyway.**
15210
+ They announce `helix-previous` and `helix-next` and stop there, so what
15211
+ they move is whatever holds the set, which is what `VideoPlaylist` listens
15212
+ for. A player standing alone therefore draws a pair of controls that change
15213
+ nothing, and that is deliberate: a player cannot know whether it is inside
15214
+ a set, and one that hid them until it could prove there was one would be a
15215
+ player that never offers them. Name them where something is listening.
15198
15216
 
15199
15217
  **`download` is named and never assumed.** Offering the file is a decision
15200
15218
  about the content rather than about the player, and plenty of consumers
@@ -15402,7 +15420,16 @@ a typo should cost a control, not a page.
15402
15420
  assumed: it is absent on iPhone and behind a flag in Firefox, and a button
15403
15421
  that cannot work is worse than one that is not there.
15404
15422
 
15405
- The names are `speed`, `pip`, `remote` and `download`.
15423
+ The names are `speed`, `pip`, `remote`, `download`, `rewind`, `forward`,
15424
+ `previous` and `next`.
15425
+
15426
+ **`previous` and `next` do nothing to the video, and are offered anyway.**
15427
+ They announce `helix-previous` and `helix-next` and stop there, so what
15428
+ they move is whatever holds the set, which is what `VideoPlaylist` listens
15429
+ for. A player standing alone therefore draws a pair of controls that change
15430
+ nothing, and that is deliberate: a player cannot know whether it is inside
15431
+ a set, and one that hid them until it could prove there was one would be a
15432
+ player that never offers them. Name them where something is listening.
15406
15433
 
15407
15434
  **`download` is named and never assumed.** Offering the file is a decision
15408
15435
  about the content rather than about the player, and plenty of consumers
@@ -15423,7 +15450,16 @@ a typo should cost a control, not a page.
15423
15450
  assumed: it is absent on iPhone and behind a flag in Firefox, and a button
15424
15451
  that cannot work is worse than one that is not there.
15425
15452
 
15426
- The names are `speed`, `pip`, `remote` and `download`.
15453
+ The names are `speed`, `pip`, `remote`, `download`, `rewind`, `forward`,
15454
+ `previous` and `next`.
15455
+
15456
+ **`previous` and `next` do nothing to the video, and are offered anyway.**
15457
+ They announce `helix-previous` and `helix-next` and stop there, so what
15458
+ they move is whatever holds the set, which is what `VideoPlaylist` listens
15459
+ for. A player standing alone therefore draws a pair of controls that change
15460
+ nothing, and that is deliberate: a player cannot know whether it is inside
15461
+ a set, and one that hid them until it could prove there was one would be a
15462
+ player that never offers them. Name them where something is listening.
15427
15463
 
15428
15464
  **`download` is named and never assumed.** Offering the file is a decision
15429
15465
  about the content rather than about the player, and plenty of consumers
@@ -29753,7 +29789,16 @@ export type CustomElements = {
29753
29789
  * assumed: it is absent on iPhone and behind a flag in Firefox, and a button
29754
29790
  * that cannot work is worse than one that is not there.
29755
29791
  *
29756
- * The names are `speed`, `pip`, `remote` and `download`.
29792
+ * The names are `speed`, `pip`, `remote`, `download`, `rewind`, `forward`,
29793
+ * `previous` and `next`.
29794
+ *
29795
+ * **`previous` and `next` do nothing to the video, and are offered anyway.**
29796
+ * They announce `helix-previous` and `helix-next` and stop there, so what
29797
+ * they move is whatever holds the set, which is what `VideoPlaylist` listens
29798
+ * for. A player standing alone therefore draws a pair of controls that change
29799
+ * nothing, and that is deliberate: a player cannot know whether it is inside
29800
+ * a set, and one that hid them until it could prove there was one would be a
29801
+ * player that never offers them. Name them where something is listening.
29757
29802
  *
29758
29803
  * **`download` is named and never assumed.** Offering the file is a decision
29759
29804
  * about the content rather than about the player, and plenty of consumers
@@ -44434,7 +44479,16 @@ export type CustomElementsSolidJs = {
44434
44479
  * assumed: it is absent on iPhone and behind a flag in Firefox, and a button
44435
44480
  * that cannot work is worse than one that is not there.
44436
44481
  *
44437
- * The names are `speed`, `pip`, `remote` and `download`.
44482
+ * The names are `speed`, `pip`, `remote`, `download`, `rewind`, `forward`,
44483
+ * `previous` and `next`.
44484
+ *
44485
+ * **`previous` and `next` do nothing to the video, and are offered anyway.**
44486
+ * They announce `helix-previous` and `helix-next` and stop there, so what
44487
+ * they move is whatever holds the set, which is what `VideoPlaylist` listens
44488
+ * for. A player standing alone therefore draws a pair of controls that change
44489
+ * nothing, and that is deliberate: a player cannot know whether it is inside
44490
+ * a set, and one that hid them until it could prove there was one would be a
44491
+ * player that never offers them. Name them where something is listening.
44438
44492
  *
44439
44493
  * **`download` is named and never assumed.** Offering the file is a decision
44440
44494
  * about the content rather than about the player, and plenty of consumers
package/types/vue.d.ts CHANGED
@@ -7819,7 +7819,16 @@ a typo should cost a control, not a page.
7819
7819
  assumed: it is absent on iPhone and behind a flag in Firefox, and a button
7820
7820
  that cannot work is worse than one that is not there.
7821
7821
 
7822
- The names are `speed`, `pip`, `remote` and `download`.
7822
+ The names are `speed`, `pip`, `remote`, `download`, `rewind`, `forward`,
7823
+ `previous` and `next`.
7824
+
7825
+ **`previous` and `next` do nothing to the video, and are offered anyway.**
7826
+ They announce `helix-previous` and `helix-next` and stop there, so what
7827
+ they move is whatever holds the set, which is what `VideoPlaylist` listens
7828
+ for. A player standing alone therefore draws a pair of controls that change
7829
+ nothing, and that is deliberate: a player cannot know whether it is inside
7830
+ a set, and one that hid them until it could prove there was one would be a
7831
+ player that never offers them. Name them where something is listening.
7823
7832
 
7824
7833
  **`download` is named and never assumed.** Offering the file is a decision
7825
7834
  about the content rather than about the player, and plenty of consumers
@@ -7840,7 +7849,16 @@ a typo should cost a control, not a page.
7840
7849
  assumed: it is absent on iPhone and behind a flag in Firefox, and a button
7841
7850
  that cannot work is worse than one that is not there.
7842
7851
 
7843
- The names are `speed`, `pip`, `remote` and `download`.
7852
+ The names are `speed`, `pip`, `remote`, `download`, `rewind`, `forward`,
7853
+ `previous` and `next`.
7854
+
7855
+ **`previous` and `next` do nothing to the video, and are offered anyway.**
7856
+ They announce `helix-previous` and `helix-next` and stop there, so what
7857
+ they move is whatever holds the set, which is what `VideoPlaylist` listens
7858
+ for. A player standing alone therefore draws a pair of controls that change
7859
+ nothing, and that is deliberate: a player cannot know whether it is inside
7860
+ a set, and one that hid them until it could prove there was one would be a
7861
+ player that never offers them. Name them where something is listening.
7844
7862
 
7845
7863
  **`download` is named and never assumed.** Offering the file is a decision
7846
7864
  about the content rather than about the player, and plenty of consumers