@fusion.dev/helix-headless 0.208.0 → 0.208.1

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.
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import { ChildrenController, capturePointer, customElement, formatWords, HelixActivateEvent, HelixElement, HelixSelectEvent, hostAria, inlineStep, isRtl, MIRROR_RULE, motionPaused, numberConverter, onMotionChange, reducedMotion, requestChange, SCROLLER_RULE, timeConverter, words, } from '@fusion.dev/helix-core';
2
+ import { assignSlot, ChildrenController, capturePointer, customElement, formatWords, HelixActivateEvent, HelixElement, HelixSelectEvent, hostAria, inlineStep, isRtl, MIRROR_RULE, motionPaused, numberConverter, onMotionChange, reducedMotion, requestChange, SCROLLER_RULE, timeConverter, words, } from '@fusion.dev/helix-core';
3
3
  import { caretLeft, caretRight, play, stop } from '@fusion.dev/helix-icons';
4
4
  import { html, nothing } from 'lit';
5
5
  import { property, state } from 'lit/decorators.js';
@@ -464,16 +464,20 @@ let HelixHeadlessCarousel = class HelixHeadlessCarousel extends HelixElement {
464
464
  return;
465
465
  }
466
466
  for (const name of ICON_SLOTS) {
467
- this.renderRoot
468
- ?.querySelector?.(`slot[name="${name}"]`)
469
- ?.assign?.(...this.iconsFor(name));
467
+ const slot = this.renderRoot?.querySelector?.(`slot[name="${name}"]`);
468
+ if (slot) {
469
+ assignSlot(slot, ...this.iconsFor(name));
470
+ }
470
471
  }
471
472
  const panes = this.renderRoot?.querySelectorAll?.('[part="slide"] slot');
472
473
  if (!panes) {
473
474
  return;
474
475
  }
475
476
  this.slides.forEach((slide, index) => {
476
- panes[index]?.assign?.(slide);
477
+ const pane = panes[index];
478
+ if (pane) {
479
+ assignSlot(pane, slide);
480
+ }
477
481
  });
478
482
  }
479
483
  runEnd() {
@@ -1,6 +1,6 @@
1
1
  var HelixHeadlessChat_1;
2
2
  import { __decorate } from "tslib";
3
- import { ChildrenController, customElement, deepActiveElement, drawIcon, focusableElements, formatWords, HelixBeforePinEvent, HelixElement, HelixHistoryEvent, HelixPinEvent, hostAria, MixinCollection, numberConverter, onUnlessFalse, reportRuntime, requestChange, SCROLLER_RULE, UpgradeController, VIRTUAL_RULE, VirtualizeController, whenHydrated, words, wordsConverter, } from '@fusion.dev/helix-core';
3
+ import { assignSlot, ChildrenController, customElement, deepActiveElement, drawIcon, focusableElements, formatWords, HelixBeforePinEvent, HelixElement, HelixHistoryEvent, HelixPinEvent, hostAria, MixinCollection, numberConverter, onUnlessFalse, reportRuntime, requestChange, SCROLLER_RULE, UpgradeController, VIRTUAL_RULE, VirtualizeController, whenHydrated, words, wordsConverter, } from '@fusion.dev/helix-core';
4
4
  import { arrowDown } from '@fusion.dev/helix-icons';
5
5
  import { nothing } from 'lit';
6
6
  import { property, state } from 'lit/decorators.js';
@@ -291,9 +291,12 @@ let HelixHeadlessChat = class HelixHeadlessChat extends MixinCollection(HelixEle
291
291
  }
292
292
  return;
293
293
  }
294
- log.assign(...(this.fed ? [] : this.messages));
294
+ assignSlot(log, ...(this.fed ? [] : this.messages));
295
295
  for (const name of REGIONS) {
296
- root?.querySelector?.(`slot[name="${name}"]`)?.assign?.(...this.given(name));
296
+ const slot = root?.querySelector?.(`slot[name="${name}"]`);
297
+ if (slot) {
298
+ assignSlot(slot, ...this.given(name));
299
+ }
297
300
  }
298
301
  }
299
302
  given(name) {
@@ -1,6 +1,6 @@
1
1
  var HelixHeadlessDataTable_1;
2
2
  import { __decorate } from "tslib";
3
- import { anchorAt, arranged, auditChildren, auditServed, commaList, countLabel, customElement, cycle, deepActiveElement, deepContains, everyState, format, formatWords, gridMove, HelixActivateEvent, HelixElement, HelixExpandEvent, HelixFilterEvent, HelixFilteredEvent, HelixLoadMoreEvent, HelixNavigateEvent, HelixReorderEvent, HelixReorderedEvent, HelixSelectEvent, HelixSelectedEvent, HelixSortEvent, HelixSortedEvent, handedLocale, hostAria, inlineStep, inRowOrder, MIRROR_RULE, MixinCollection, markRegion, numberConverter, onAndroid, ordered, pageRows, parse, placeKey, ReorderController, rangeAdd, reportRuntime, requestChange, requestReorder, SCROLLER_RULE, scrollingAncestor, scrollRoom, selectsAll, Typeahead, toggleEvery, treeArrow, typesCharacter, VIRTUAL_RULE, VirtualizeController, valueAt, whenHydrated, window_, words, wordsLocale, writtenList, } from '@fusion.dev/helix-core';
3
+ import { anchorAt, arranged, assignSlot, auditChildren, auditServed, commaList, countLabel, customElement, cycle, deepActiveElement, deepContains, everyState, format, formatWords, gridMove, HelixActivateEvent, HelixElement, HelixExpandEvent, HelixFilterEvent, HelixFilteredEvent, HelixLoadMoreEvent, HelixNavigateEvent, HelixReorderEvent, HelixReorderedEvent, HelixSelectEvent, HelixSelectedEvent, HelixSortEvent, HelixSortedEvent, handedLocale, hostAria, inlineStep, inRowOrder, MIRROR_RULE, MixinCollection, markRegion, numberConverter, onAndroid, ordered, pageRows, parse, placeKey, ReorderController, rangeAdd, reportRuntime, requestChange, requestReorder, SCROLLER_RULE, scrollingAncestor, scrollRoom, selectsAll, Typeahead, toggleEvery, treeArrow, typesCharacter, VIRTUAL_RULE, VirtualizeController, valueAt, whenHydrated, window_, words, wordsLocale, writtenList, } from '@fusion.dev/helix-core';
4
4
  import { caretDown, caretRight, dotsSixVertical } from '@fusion.dev/helix-icons';
5
5
  import { nothing } from 'lit';
6
6
  import { property, state } from 'lit/decorators.js';
@@ -924,10 +924,11 @@ let HelixHeadlessDataTable = class HelixHeadlessDataTable extends MixinCollectio
924
924
  return;
925
925
  }
926
926
  const columns = this.orderedColumns;
927
- head.assign(...columns);
928
- root
929
- .querySelector('[part="table"] > slot:not([name])')
930
- ?.assign(...(this.serving ? this.servedRows : []));
927
+ assignSlot(head, ...columns);
928
+ const served = root.querySelector('[part="table"] > slot:not([name])');
929
+ if (served) {
930
+ assignSlot(served, ...(this.serving ? this.servedRows : []));
931
+ }
931
932
  const rest = [...this.children].filter((child) => !columns.includes(child));
932
933
  for (const [name, wanted] of [
933
934
  ['toolbar', true],
@@ -937,8 +938,8 @@ let HelixHeadlessDataTable = class HelixHeadlessDataTable extends MixinCollectio
937
938
  ['loading', true],
938
939
  ]) {
939
940
  const slot = root.querySelector(`slot[name="${name}"]`);
940
- if (slot?.assign && wanted) {
941
- slot.assign(...rest.filter((child) => child.getAttribute('slot') === name));
941
+ if (slot && wanted) {
942
+ assignSlot(slot, ...rest.filter((child) => child.getAttribute('slot') === name));
942
943
  }
943
944
  }
944
945
  }
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import { customElement, elementById, HelixActivateEvent, HelixElement, IndicatorController, numberConverter, plainClick, reflectElements, scrollingAncestor, scrollWithin, words, } from '@fusion.dev/helix-core';
2
+ import { assignSlot, customElement, elementById, HelixActivateEvent, HelixElement, IndicatorController, numberConverter, plainClick, reflectElements, scrollingAncestor, scrollWithin, words, } from '@fusion.dev/helix-core';
3
3
  import { html, nothing } from 'lit';
4
4
  import { property } from 'lit/decorators.js';
5
5
  import { levelOf, nest } from '../levels.js';
@@ -296,22 +296,27 @@ let HelixHeadlessOutline = class HelixHeadlessOutline extends HelixElement {
296
296
  }
297
297
  const root = this.renderRoot;
298
298
  const heading = root?.querySelector?.('slot[name="heading"]');
299
- heading?.assign?.(...this.knownChildren.filter((child) => child.slot === 'heading'));
300
- root
301
- ?.querySelector?.('slot[name="indicator"]')
302
- ?.assign?.(...this.knownChildren.filter((child) => child.slot === 'indicator'));
299
+ if (heading) {
300
+ assignSlot(heading, ...this.knownChildren.filter((child) => child.slot === 'heading'));
301
+ }
302
+ const indicator = root?.querySelector?.('slot[name="indicator"]');
303
+ if (indicator) {
304
+ assignSlot(indicator, ...this.knownChildren.filter((child) => child.slot === 'indicator'));
305
+ }
303
306
  const run = this.run;
304
307
  if (run) {
305
308
  for (const slot of root?.querySelectorAll?.('slot[data-link]') ?? []) {
306
309
  const link = run[Number(slot.dataset.link)];
307
310
  if (link) {
308
- slot.assign(link);
311
+ assignSlot(slot, link);
309
312
  }
310
313
  }
311
314
  return;
312
315
  }
313
316
  const plain = root?.querySelector?.('nav > slot:not([role])');
314
- plain?.assign?.(...[...this.childNodes].filter((node) => node instanceof Element ? !OWN_SLOTS.has(node.slot) : node instanceof Text));
317
+ if (plain) {
318
+ assignSlot(plain, ...[...this.childNodes].filter((node) => node instanceof Element ? !OWN_SLOTS.has(node.slot) : node instanceof Text));
319
+ }
315
320
  }
316
321
  updated(changed) {
317
322
  super.updated(changed);