@nanoporetech-digital/components 8.12.2 → 8.13.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 (109) hide show
  1. package/dist/cjs/{fade-CaQNh008.js → fade-C7mRKYJR.js} +1 -1
  2. package/dist/cjs/{fullscreen-CYmWUVa6.js → fullscreen-C0vzuH0_.js} +1 -1
  3. package/dist/cjs/{lazyload-CDp0tl8u.js → lazyload-Cqdwd4el.js} +1 -1
  4. package/dist/cjs/nano-alert.cjs.entry.js +1 -1
  5. package/dist/cjs/nano-avatar_5.cjs.entry.js +1 -1
  6. package/dist/cjs/nano-checkbox-group.cjs.entry.js +1 -1
  7. package/dist/cjs/{nano-data-table-B07AITiQ.js → nano-data-table-CiPPql2J.js} +3 -3
  8. package/dist/cjs/nano-data-table.cjs.entry.js +1 -1
  9. package/dist/cjs/nano-datalist_3.cjs.entry.js +5 -5
  10. package/dist/cjs/nano-details.cjs.entry.js +1 -1
  11. package/dist/cjs/nano-dialog.cjs.entry.js +1 -1
  12. package/dist/cjs/nano-dropdown_2.cjs.entry.js +1 -1
  13. package/dist/cjs/nano-in-page-nav.cjs.entry.js +1 -1
  14. package/dist/cjs/nano-input-otp.cjs.entry.js +1 -1
  15. package/dist/cjs/nano-menu-drawer.cjs.entry.js +1 -1
  16. package/dist/cjs/nano-nav-item.cjs.entry.js +1 -1
  17. package/dist/cjs/{nano-slides-lMA8e6L6.js → nano-slides-DFBGKfHj.js} +17 -35
  18. package/dist/cjs/nano-slides.cjs.entry.js +1 -1
  19. package/dist/cjs/nano-table.cjs.entry.js +2 -2
  20. package/dist/cjs/{slot-BUMYLmup.js → slot-CM4lrtVE.js} +3 -2
  21. package/dist/cjs/{table.worker-Ctqp7IJT.js → table.worker-D7SJpZlV.js} +1 -1
  22. package/dist/collection/components/breadcrumb/breadcrumb.js +1 -1
  23. package/dist/collection/components/checkbox/checkbox-group.css +5 -3
  24. package/dist/collection/components/data-table/table.cell.js +1 -1
  25. package/dist/collection/components/data-table/table.utils.js +1 -1
  26. package/dist/collection/components/datalist/datalist.js +5 -5
  27. package/dist/collection/components/icon/pictogram/accessible-and-affordable.svg +6 -0
  28. package/dist/collection/components/icon/pictogram/faster-results.svg +3 -0
  29. package/dist/collection/components/icon/pictogram/richer-insights.svg +9 -0
  30. package/dist/collection/components/slides/slides.js +15 -34
  31. package/dist/collection/components/table/table.js +3 -3
  32. package/dist/collection/utils/slot.js +3 -2
  33. package/dist/components/datalist.js +5 -5
  34. package/dist/components/nano-checkbox-group.js +1 -1
  35. package/dist/components/nano-data-table.js +2 -2
  36. package/dist/components/nano-table.js +3 -3
  37. package/dist/components/slides.js +15 -34
  38. package/dist/components/slot.js +3 -2
  39. package/dist/esm/{fade-Brdw1NLw.js → fade-OXhXz-Sa.js} +1 -1
  40. package/dist/esm/{fullscreen-DeZTkFNA.js → fullscreen-CsGitfqH.js} +1 -1
  41. package/dist/esm/{lazyload-D68gi5uV.js → lazyload-DuEV3IVe.js} +1 -1
  42. package/dist/esm/nano-alert.entry.js +1 -1
  43. package/dist/esm/nano-avatar_5.entry.js +1 -1
  44. package/dist/esm/nano-checkbox-group.entry.js +1 -1
  45. package/dist/esm/{nano-data-table-B3_-hFqj.js → nano-data-table-BXdzSqWC.js} +3 -3
  46. package/dist/esm/nano-data-table.entry.js +1 -1
  47. package/dist/esm/nano-datalist_3.entry.js +5 -5
  48. package/dist/esm/nano-details.entry.js +1 -1
  49. package/dist/esm/nano-dialog.entry.js +1 -1
  50. package/dist/esm/nano-dropdown_2.entry.js +1 -1
  51. package/dist/esm/nano-in-page-nav.entry.js +1 -1
  52. package/dist/esm/nano-input-otp.entry.js +1 -1
  53. package/dist/esm/nano-menu-drawer.entry.js +1 -1
  54. package/dist/esm/nano-nav-item.entry.js +1 -1
  55. package/dist/esm/{nano-slides-DKkSSmWQ.js → nano-slides-Dtmc0c07.js} +17 -35
  56. package/dist/esm/nano-slides.entry.js +1 -1
  57. package/dist/esm/nano-table.entry.js +2 -2
  58. package/dist/esm/{slot-D31cEKyt.js → slot-BeXeAw-u.js} +3 -2
  59. package/dist/esm/{table.worker-By3ZdRHH.js → table.worker-DftFV8Z7.js} +1 -1
  60. package/dist/nano-assets/hash.txt +1 -1
  61. package/dist/nano-assets/icon/pictogram/accessible-and-affordable.svg +6 -0
  62. package/dist/nano-assets/icon/pictogram/faster-results.svg +3 -0
  63. package/dist/nano-assets/icon/pictogram/richer-insights.svg +9 -0
  64. package/dist/nano-components/{fade-Brdw1NLw.js → fade-OXhXz-Sa.js} +1 -1
  65. package/dist/nano-components/{fullscreen-DeZTkFNA.js → fullscreen-CsGitfqH.js} +1 -1
  66. package/dist/nano-components/{lazyload-D68gi5uV.js → lazyload-DuEV3IVe.js} +1 -1
  67. package/dist/nano-components/nano-alert.entry.js +1 -1
  68. package/dist/nano-components/nano-avatar_5.entry.js +1 -1
  69. package/dist/nano-components/nano-checkbox-group.entry.js +1 -1
  70. package/dist/nano-components/nano-components.css +1 -1
  71. package/dist/nano-components/{nano-data-table-B3_-hFqj.js → nano-data-table-BXdzSqWC.js} +1 -1
  72. package/dist/nano-components/nano-data-table.entry.js +1 -1
  73. package/dist/nano-components/nano-datalist_3.entry.js +1 -1
  74. package/dist/nano-components/nano-details.entry.js +1 -1
  75. package/dist/nano-components/nano-dialog.entry.js +1 -1
  76. package/dist/nano-components/nano-dropdown_2.entry.js +1 -1
  77. package/dist/nano-components/nano-in-page-nav.entry.js +1 -1
  78. package/dist/nano-components/nano-input-otp.entry.js +1 -1
  79. package/dist/nano-components/nano-menu-drawer.entry.js +1 -1
  80. package/dist/nano-components/nano-nav-item.entry.js +1 -1
  81. package/dist/nano-components/{nano-slides-DKkSSmWQ.js → nano-slides-Dtmc0c07.js} +3 -3
  82. package/dist/nano-components/nano-slides.entry.js +1 -1
  83. package/dist/nano-components/nano-table.entry.js +1 -1
  84. package/dist/nano-components/pictogram/accessible-and-affordable.svg +6 -0
  85. package/dist/nano-components/pictogram/faster-results.svg +3 -0
  86. package/dist/nano-components/pictogram/richer-insights.svg +9 -0
  87. package/dist/nano-components/slot-BeXeAw-u.js +4 -0
  88. package/dist/nano-components/{table.worker-By3ZdRHH.js → table.worker-DftFV8Z7.js} +1 -1
  89. package/dist/style/components.css +1 -1
  90. package/dist/style/components.css.map +1 -1
  91. package/dist/style/nano.css +1 -1
  92. package/dist/style/nano.css.map +1 -1
  93. package/dist/types/components/slides/slides.d.ts +0 -1
  94. package/dist/types/utils/renderer.d.ts +1 -1
  95. package/docs-json.json +7 -2
  96. package/hydrate/index.js +27 -42
  97. package/hydrate/index.mjs +27 -42
  98. package/package.json +2 -2
  99. package/dist/nano-components/slot-D31cEKyt.js +0 -4
  100. /package/dist/types/builds/{8qhywLzS → YtJk83se}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/generate-vue-component.d.ts +0 -0
  101. /package/dist/types/builds/{8qhywLzS → YtJk83se}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/index.d.ts +0 -0
  102. /package/dist/types/builds/{8qhywLzS → YtJk83se}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/output-vue.d.ts +0 -0
  103. /package/dist/types/builds/{8qhywLzS → YtJk83se}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/plugin.d.ts +0 -0
  104. /package/dist/types/builds/{8qhywLzS → YtJk83se}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/types.d.ts +0 -0
  105. /package/dist/types/builds/{8qhywLzS → YtJk83se}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/utils.d.ts +0 -0
  106. /package/dist/types/builds/{8qhywLzS → YtJk83se}/0/Digital/nano-components/packages/components/.stencil/stencil.config.d.ts +0 -0
  107. /package/dist/types/builds/{8qhywLzS → YtJk83se}/0/Digital/nano-components/packages/components/.stencil/stencil.config.prod.d.ts +0 -0
  108. /package/dist/types/builds/{8qhywLzS → YtJk83se}/0/Digital/nano-components/packages/components/.stencil/testing/mocks/intersection-observer.d.ts +0 -0
  109. /package/dist/types/builds/{8qhywLzS → YtJk83se}/0/Digital/nano-components/packages/components/.stencil/wdio.conf.d.ts +0 -0
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Custom elements for Nanopore-Digital Web applications
3
3
  */
4
- import { Host, Build, readTask, writeTask, } from "@stencil/core";
4
+ import { Host, readTask, writeTask, } from "@stencil/core";
5
5
  import { transformTag, h } from "../../utils/renderer";
6
6
  import { flickity } from "./lib/js";
7
7
  const modulo = (num, div) => {
@@ -32,7 +32,6 @@ const modulo = (num, div) => {
32
32
  export class Slides {
33
33
  flickityEl;
34
34
  flickityReady = false;
35
- mutationO;
36
35
  resizeO;
37
36
  readyflickity;
38
37
  flickity = new Promise((resolve) => {
@@ -96,7 +95,7 @@ export class Slides {
96
95
  async animationChange(_, oldAnim) {
97
96
  const [flkty, slides] = await Promise.all([
98
97
  this.getflickity(),
99
- this.waitForSlides(this.host),
98
+ this.waitForSlides(),
100
99
  ]);
101
100
  // clear old stuff
102
101
  slides.forEach((slide) => {
@@ -186,9 +185,11 @@ export class Slides {
186
185
  * child slides.
187
186
  */
188
187
  async update() {
188
+ if (!this.didInit)
189
+ return;
189
190
  const [flickity] = await Promise.all([
190
191
  this.getflickity(),
191
- this.waitForSlides(this.host),
192
+ this.waitForSlides(),
192
193
  ]);
193
194
  this.childrenEles = this.host.querySelectorAll(`${transformTag('nano-slide')} > *`);
194
195
  flickity.reloadCells();
@@ -376,7 +377,7 @@ export class Slides {
376
377
  const finalOptions = this.normalizeOptions();
377
378
  await this.loadFlickityModules(finalOptions);
378
379
  // init flickity core
379
- await this.waitForSlides(this.host);
380
+ await this.waitForSlides();
380
381
  this.flickityEl =
381
382
  this.flickityEl || this._getRoot().querySelector('.flickity-container');
382
383
  if (!this.flickityEl)
@@ -466,8 +467,8 @@ export class Slides {
466
467
  // @ts-expect-error - merged options don't quite match the flickity options
467
468
  return { ...flickityOptions, ...mergedEventOptions, ...this.options };
468
469
  }
469
- waitForSlides = (host) => {
470
- const allSlides = Array.from(host.querySelectorAll(transformTag('nano-slide')));
470
+ waitForSlides = () => {
471
+ const allSlides = Array.from(this.host.querySelectorAll(transformTag('nano-slide')));
471
472
  this.slideCount = allSlides.length;
472
473
  let toLoadSlides = allSlides.filter((ele) => !ele.ready);
473
474
  if (!toLoadSlides.length)
@@ -477,13 +478,13 @@ export class Slides {
477
478
  toLoadSlides = toLoadSlides.filter((ele) => ele !== ev.target);
478
479
  if (!toLoadSlides.length) {
479
480
  resolve(allSlides);
480
- host.removeEventListener('nanoSlideReady', slideResolver);
481
- host.removeEventListener('nano-slide-ready', slideResolver);
481
+ this.host.removeEventListener('nanoSlideReady', slideResolver);
482
+ this.host.removeEventListener('nano-slide-ready', slideResolver);
482
483
  }
483
484
  };
484
- host.addEventListener('nanoSlideReady', slideResolver);
485
+ this.host.addEventListener('nanoSlideReady', slideResolver);
485
486
  // fallback for vue who can't handle camelcase event names
486
- host.addEventListener('nano-slide-ready', slideResolver);
487
+ this.host.addEventListener('nano-slide-ready', slideResolver);
487
488
  });
488
489
  };
489
490
  componentDidLoad() {
@@ -492,28 +493,8 @@ export class Slides {
492
493
  this.didInit = true;
493
494
  this.initflickity();
494
495
  }
495
- if (Build.isBrowser &&
496
- typeof window !== 'undefined' &&
497
- window.MutationObserver) {
498
- const mut = (this.mutationO = new MutationObserver((e) => {
499
- if (e[0].addedNodes[0] &&
500
- e[0].addedNodes[0].nodeName.toLowerCase() ===
501
- transformTag('nano-slide') &&
502
- this.flickityReady) {
503
- this.update();
504
- }
505
- }));
506
- mut.observe(this.host, {
507
- childList: true,
508
- subtree: true,
509
- });
510
- }
511
496
  }
512
497
  disconnectedCallback() {
513
- if (this.mutationO) {
514
- this.mutationO.disconnect();
515
- this.mutationO = undefined;
516
- }
517
498
  if (this.resizeO) {
518
499
  this.resizeO.disconnect();
519
500
  this.resizeO = undefined;
@@ -521,15 +502,15 @@ export class Slides {
521
502
  this.destroyflickity();
522
503
  }
523
504
  render() {
524
- return (h(Host, { key: '6dedc1589f5ae629975f38303f658de914c8f506', class: "nano-slides" }, h("div", { key: '528c7b10972b258ef0345525a9fa82c289ecc083', class: {
505
+ return (h(Host, { key: '87cf8ae3ff3ded83f82ef3bfc5d76381afb967e0', class: "nano-slides" }, h("div", { key: 'af12496fc219421dcf416607a7c5cc9b0e59968e', class: {
525
506
  slideshow: true,
526
507
  ready: this.ready,
527
508
  'not-ready': !this.ready,
528
- }, part: "base" }, h("div", { key: '4d16a4da0692f53500c755600a539edf5dc2d606', ref: (div) => (this.flickityEl = div), class: {
509
+ }, part: "base" }, h("div", { key: 'c5995f58b334a741e4c7930be1354d4814dd436b', ref: (div) => (this.flickityEl = div), class: {
529
510
  'flickity-container': true,
530
511
  'slides-ready': this.slidesReady,
531
512
  'slides-not-ready': !this.slidesReady,
532
- }, part: "slide-container" }, h("slot", { key: 'ddcdf042f8d25069c08578e7417e3f5571386b76' })), h("div", { key: '5a456eee7631c979fef473352d2c4beec7a5cf2e', class: "ui-extras" }, h("slot", { key: '3994bac2fd8111223df9e3886481edf72b0f2d54', name: "ui" })), this.slideCount > 1 && this.pager && (h("div", { key: '2966cef941d7232110ba4dbba0aefdb33e757216', class: "pagination flickity-page-dots", part: "pagination" }, Array.from({ length: this.slideCount }).map((_, index) => (h("button", { part: "pagination-item--active", key: index, class: {
513
+ }, part: "slide-container" }, h("slot", { key: 'f4b17d46db05d7b23ff79501cc435b2b6beadcb2', onSlotchange: () => this.update() })), h("div", { key: '483ab2edd42b87d48bcc0793cbe5c21efdd1a4d3', class: "ui-extras" }, h("slot", { key: '8fc3e7b78980381d52817c0faa80efa5439a14a6', name: "ui" })), this.slideCount > 1 && this.pager && (h("div", { key: '4e7c781d179dda4d43356ae9a5892d913d17b43c', class: "pagination flickity-page-dots", part: "pagination" }, Array.from({ length: this.slideCount }).map((_, index) => (h("button", { part: "pagination-item--active", key: index, class: {
533
514
  'pagination-btn': true,
534
515
  'pagination-btn--active': this.isActive(index),
535
516
  'is-selected': this.isActive(index),
@@ -213,7 +213,7 @@ export class NanoTable {
213
213
  this.handleHideCaptionChange();
214
214
  }
215
215
  componentDidRender() {
216
- if (this.scrollable !== false && this.table) {
216
+ if (Build.isBrowser && this.scrollable !== false && this.table) {
217
217
  // a hack. Revise in-future.
218
218
  // the table is always rendered in the light DOM - so it should always be visible, but
219
219
  // if we conditionally render the slot within the masked overflow there's quite a noticeable
@@ -231,10 +231,10 @@ export class NanoTable {
231
231
  this.cleanUpObservers();
232
232
  }
233
233
  render() {
234
- return (h(Host, { key: '54758d3dbda3695305222d5717ad0503d355dc42', class: {
234
+ return (h(Host, { key: 'bd86de55fe8bc0259cf6e7e112c4bb48ad190761', class: {
235
235
  'nano-table': true,
236
236
  'nano-table--props-ready': this.propsReady,
237
- } }, this.scrollable && (h("nano-masked-overflow", { key: '28386faf317ffb158e7c743a9891c07d1843bcaf', hideScrollbars: false, scrollControls: false, label: this.caption?.textContent || undefined, class: "nano-table__overflow-container" }, h("div", { key: 'b3c3169a26443abbc19761df5bd543edafae52f2', class: "nano-table__overflow" }))), h("slot", { key: 'a2ced54f3b39798c78a06fded180291111dfd1b1' })));
237
+ } }, this.scrollable && (h("nano-masked-overflow", { key: '7002c33f0368801339f718e191922cb03b28ce08', hideScrollbars: false, scrollControls: false, label: this.caption?.textContent || undefined, class: "nano-table__overflow-container" }, h("div", { key: '60b7c9a2d7a6bde7ffcde6ce62b0477790601cf5', class: "nano-table__overflow" }))), h("slot", { key: '3d4fb01789dd5c1b0a2b3872534e796e5182d579' })));
238
238
  }
239
239
  static get is() { return "nano-table"; }
240
240
  static get encapsulation() { return "scoped"; }
@@ -84,7 +84,8 @@ export class HasSlotController {
84
84
  // * Regular shadow DOM component *
85
85
  childNodes = [...this.host.shadowRoot.childNodes];
86
86
  }
87
- else if (!this.host.classList.contains('hydrated')) {
87
+ else if (!this.host.classList.contains('hydrated') &&
88
+ this.host.__childNodes) {
88
89
  // * Non-shadow, polyfilled component *
89
90
  // Component has not done initial render. Return component internals
90
91
  childNodes = [...(this.host?.__childNodes ?? [])];
@@ -94,7 +95,7 @@ export class HasSlotController {
94
95
  childNodes = [...this.host.childNodes];
95
96
  }
96
97
  return childNodes.some((node) => {
97
- if (node.nodeType === Node.TEXT_NODE && node.textContent.trim() !== '') {
98
+ if (node.nodeType === Node.TEXT_NODE && !!node.textContent.trim()) {
98
99
  return true;
99
100
  }
100
101
  if (node.nodeType === Node.ELEMENT_NODE) {
@@ -529,18 +529,18 @@ const DataList = /*@__PURE__*/ proxyCustomElement(class DataList extends HTMLEle
529
529
  }
530
530
  }
531
531
  render() {
532
- return (h(Host, { key: '269f57e6eccd251685f84a94d53f380d6545a3cb', class: "nano-datalist", role: this.actvOptEles.length ? 'listbox' : undefined, "aria-owns": this.optionIds.length ? this.optionIds.join(' ') : undefined, "aria-label": this.optionIds.length
532
+ return (h(Host, { key: '8acb3be76246d665171db96444cff3a5141e1132', class: "nano-datalist", role: this.actvOptEles.length ? 'listbox' : undefined, "aria-owns": this.optionIds.length ? this.optionIds.join(' ') : undefined, "aria-label": this.optionIds.length
533
533
  ? 'Select options from the list below'
534
- : undefined }, h("nano-dropdown", { key: 'ee6398b356dc1a0ff9fa35e84955314fc95435b6', part: "dropdown", exportparts: "trigger:dropdown__trigger, panel:dropdown__panel", ...this.dropDownConfig, ref: (el) => (this.nanoDropdown = el), dialogTitle: "Select options from the list below", class: {
534
+ : undefined }, h("nano-dropdown", { key: '56c051873a20a3dab17a36eec1a2f040f83247fa', part: "dropdown", exportparts: "trigger:dropdown__trigger, panel:dropdown__panel", ...this.dropDownConfig, ref: (el) => (this.nanoDropdown = el), dialogTitle: "Select options from the list below", class: {
535
535
  dlist__dropdown: true,
536
536
  'dlist--isfiltered': this.isFiltered,
537
- }, onNanoAfterShow: this.handleShow, onNanoAfterHide: this.handleHide, role: "group" }, h("nano-menu", { key: 'f80006a5ba62c227094da52672b4abf6ee6335dc', part: "main-menu", ref: (el) => (this.listBox = el), hidden: !this.actvOptEles.length, type: "listbox", label: this.inputLabel ? this.inputLabel.textContent : undefined, class: {
537
+ }, onNanoAfterShow: this.handleShow, onNanoAfterHide: this.handleHide, role: "group" }, h("nano-menu", { key: '7559b648617c8d32f61c670e4dc78c0d60d36dc4', part: "main-menu", ref: (el) => (this.listBox = el), hidden: !this.actvOptEles.length, type: "listbox", label: this.inputLabel ? this.inputLabel.textContent : undefined, class: {
538
538
  dlist__menu: true,
539
539
  'dlist__menu--open': this.dropwdownOpen,
540
- }, tabIndex: -1, onNanoSelect: this.optSelected, onKeyDown: this.optionKeyDown }, h("slot", { key: '8a2d3160b990c99baeaf4fd9bdd7bb04229d642c', name: "list-top" }), h("slot", { key: '2230e4458be0998d59d18250e1d22188baf2f6b1' }), h("slot", { key: 'fca84cbd01495e4b62ba95c4c07681f506939d3f', name: "internal-opts" }), h("slot", { key: '076fd81c15f5ac6590e5311503262a07f60e8454', name: "list-bottom" })), h("nano-menu", { key: 'd4878bc502b4fcc0de01f67b5065ad017f445f75', part: "no-result-menu", type: "listbox", label: "No results found", hidden: !!this.actvOptEles.length, class: {
540
+ }, tabIndex: -1, onNanoSelect: this.optSelected, onKeyDown: this.optionKeyDown }, h("slot", { key: '02bd8ba511db314637e8991d29234a22967cf27d', name: "list-top" }), h("slot", { key: 'cb0234e0dd103293c1f1292af62575dd766af730' }), h("slot", { key: '0adac42b20ee0338de74217e6e91c00be6b5b6a7', name: "internal-opts" }), h("slot", { key: '906255e4e6fdc87fa8bf6e278ad076f179553925', name: "list-bottom" })), h("nano-menu", { key: '9aa978054227c9bb928c06ce93303ceda48cbf29', part: "no-result-menu", type: "listbox", label: "No results found", hidden: !!this.actvOptEles.length, class: {
541
541
  dlist__menu: true,
542
542
  'dlist__menu--open': this.dropwdownOpen,
543
- } }, h("slot", { key: '2ac583af3ac8b24ace627637ab86471999df9465', name: "no-result" })), !!this.actvOptEles && (h("div", { key: '4971780255baf694fcc447756ca02e1115ece871', class: "dlist__status" }, this.actvOptEles.length, " result", this.actvOptEles.length > 1 ? 's' : '', " available.")))));
543
+ } }, h("slot", { key: '4e2ce9dcb39d0c823ed27f13dc8c9a8873f0ca9f', name: "no-result" })), !!this.actvOptEles && (h("div", { key: 'c6bf0c88d7b1fcd24b2882c7db851ffca2e77ba3', class: "dlist__status" }, this.actvOptEles.length, " result", this.actvOptEles.length > 1 ? 's' : '', " available.")))));
544
544
  }
545
545
  static get watchers() { return {
546
546
  "open": ["openWatcher"],
@@ -6,7 +6,7 @@ import { g as getClassMap } from './theme.js';
6
6
  import { d as debounce } from './throttle.js';
7
7
  import { t as transformTag, h } from './renderer.js';
8
8
 
9
- const checkboxGroupCss = ".sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{box-sizing:border-box}[hidden].sc-nano-checkbox-group{display:none !important}@media (prefers-reduced-motion: reduce){.sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}.sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{box-sizing:border-box}[hidden].sc-nano-checkbox-group{display:none !important}@media (prefers-reduced-motion: reduce){.sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}.sc-nano-checkbox-group-h{--label-color:var(--nano-color-base-1000);--label-font-size:var(--nano-font-size-xs);--invalid-msg-color:var(--nano-color-danger-1100);--help-msg-color:var(--nano-color-base-1000);--more-font-size:var(--nano-font-size-2xs);display:block;inline-size:100%}.sc-nano-checkbox-group-h *.sc-nano-checkbox-group{box-sizing:inherit}.cbgroup.sc-nano-checkbox-group{margin:0;padding:0;border:0}.cbgroup__error.sc-nano-checkbox-group,.cbgroup__help.sc-nano-checkbox-group,.cbgroup__more.sc-nano-checkbox-group{display:block;inline-size:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cbgroup__error.sc-nano-checkbox-group,.cbgroup__help.sc-nano-checkbox-group{inset-block-start:0;inset-inline-start:0;position:absolute;font-size:var(--more-font-size);line-height:1.2;transition:0.3s ease-out opacity;font-style:italic}.show-error.sc-nano-checkbox-group .cbgroup__error.sc-nano-checkbox-group,.show-error.sc-nano-checkbox-group .cbgroup__help.sc-nano-checkbox-group{opacity:1}.cbgroup__error.sc-nano-checkbox-group{color:var(--invalid-msg-color);opacity:0}.has-error.sc-nano-checkbox-group .cbgroup__error.sc-nano-checkbox-group{opacity:1}.cbgroup__help.sc-nano-checkbox-group{opacity:1;color:var(--help-msg-color)}.has-error.sc-nano-checkbox-group .cbgroup__help.sc-nano-checkbox-group{opacity:0}.cbgroup__more.sc-nano-checkbox-group{block-size:1em;margin-block:var(--nano-spacing-sm) 0;position:relative;opacity:0;display:none;transition:all var(--nano-transition-fast) ease;transition-behavior:allow-discrete}.has-helper.sc-nano-checkbox-group .cbgroup__more.sc-nano-checkbox-group,.has-error.sc-nano-checkbox-group .cbgroup__more.sc-nano-checkbox-group{display:block;opacity:1}.cbgroup__legend.sc-nano-checkbox-group{font-size:var(--nano-font-size-xs);line-height:var(--nano-line-height-normal);letter-spacing:var(--nano-letter-spacing-loose);padding:0 0 0.9375rem;margin:0;display:block;inline-size:100%}.cbgroup__legend.visually-hide.sc-nano-checkbox-group{clip-path:inset(50%);block-size:1px;overflow:hidden;position:absolute;white-space:nowrap;inline-size:1px}.cbgroup__cbs.sc-nano-checkbox-group{margin:0;padding:0;display:flex;flex-direction:column;gap:var(--nano-spacing-md)}.types-segment.sc-nano-checkbox-group-h .cbgroup__cbs.sc-nano-checkbox-group{flex-direction:row;gap:0}.types-tag.sc-nano-checkbox-group-h .cbgroup__cbs.sc-nano-checkbox-group{flex-direction:row;gap:var(--nano-spacing-sm)}";
9
+ const checkboxGroupCss = ".sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{box-sizing:border-box}[hidden].sc-nano-checkbox-group{display:none !important}@media (prefers-reduced-motion: reduce){.sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}.sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{box-sizing:border-box}[hidden].sc-nano-checkbox-group{display:none !important}@media (prefers-reduced-motion: reduce){.sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}.sc-nano-checkbox-group-h{--label-color:var(--nano-color-base-1000);--label-font-size:var(--nano-font-size-xs);--invalid-msg-color:var(--nano-color-danger-1100);--help-msg-color:var(--nano-color-base-1000);--more-font-size:var(--nano-font-size-2xs);--gap:var(--nano-spacing-md);display:block;inline-size:100%}.sc-nano-checkbox-group-h *.sc-nano-checkbox-group{box-sizing:inherit}.cbgroup.sc-nano-checkbox-group{margin:0;padding:0;border:0}.cbgroup__error.sc-nano-checkbox-group,.cbgroup__help.sc-nano-checkbox-group,.cbgroup__more.sc-nano-checkbox-group{display:block;inline-size:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cbgroup__error.sc-nano-checkbox-group,.cbgroup__help.sc-nano-checkbox-group{inset-block-start:0;inset-inline-start:0;position:absolute;font-size:var(--more-font-size);line-height:1.2;transition:0.3s ease-out opacity;font-style:italic}.show-error.sc-nano-checkbox-group .cbgroup__error.sc-nano-checkbox-group,.show-error.sc-nano-checkbox-group .cbgroup__help.sc-nano-checkbox-group{opacity:1}.cbgroup__error.sc-nano-checkbox-group{color:var(--invalid-msg-color);opacity:0}.has-error.sc-nano-checkbox-group .cbgroup__error.sc-nano-checkbox-group{opacity:1}.cbgroup__help.sc-nano-checkbox-group{opacity:1;color:var(--help-msg-color)}.has-error.sc-nano-checkbox-group .cbgroup__help.sc-nano-checkbox-group{opacity:0}.cbgroup__more.sc-nano-checkbox-group{block-size:1em;margin-block:var(--nano-spacing-sm) 0;position:relative;opacity:0;display:none;transition:all var(--nano-transition-fast) ease;transition-behavior:allow-discrete}.has-helper.sc-nano-checkbox-group .cbgroup__more.sc-nano-checkbox-group,.has-error.sc-nano-checkbox-group .cbgroup__more.sc-nano-checkbox-group{display:block;opacity:1}.cbgroup__legend.sc-nano-checkbox-group{font-size:var(--nano-font-size-xs);line-height:var(--nano-line-height-normal);letter-spacing:var(--nano-letter-spacing-loose);padding:0 0 0.9375rem;margin:0;display:block;inline-size:100%}.cbgroup__legend.visually-hide.sc-nano-checkbox-group{clip-path:inset(50%);block-size:1px;overflow:hidden;position:absolute;white-space:nowrap;inline-size:1px}.cbgroup__cbs.sc-nano-checkbox-group{margin:0;padding:0;display:flex;flex-direction:column;gap:var(--gap)}.types-segment.sc-nano-checkbox-group-h .cbgroup__cbs.sc-nano-checkbox-group{flex-direction:row;--gap:0}.types-tag.sc-nano-checkbox-group-h .cbgroup__cbs.sc-nano-checkbox-group{flex-direction:row;--gap:var(--nano-spacing-sm)}";
10
10
 
11
11
  const CheckboxGroup = /*@__PURE__*/ proxyCustomElement(class CheckboxGroup extends HTMLElement {
12
12
  constructor() {
@@ -367,7 +367,7 @@ function mergeCellProperties(rowIndex, colIndex, defaultProps) {
367
367
  */
368
368
  function colheadFootRender(col) {
369
369
  const tpl = col?.columnTemplate;
370
- return tpl ? (tpl(h, col)) : (h(Fragment, null, col.title));
370
+ return tpl ? tpl(h, col) : (h(Fragment, null, col.title));
371
371
  }
372
372
  function headerPinClasses(type, vPinned, toString = false) {
373
373
  const classes = {
@@ -504,7 +504,7 @@ function cellRender(rowIndex, colIndex) {
504
504
  // custom rendering can render to the templateEle OR return a promise<string>
505
505
  tplResult = result && result['then'] ? result : templateEle;
506
506
  }
507
- return tplResult ? (tplResult) : model.cellModel !== undefined && model.cellModel !== null ? (h$1(Fragment, null, model.cellModel?.toString())) : ('');
507
+ return tplResult ? tplResult : model.cellModel !== undefined && model.cellModel !== null ? (h$1(Fragment, null, model.cellModel?.toString())) : ('');
508
508
  }
509
509
  const baseCellClasses = (colIndex, toString = false) => {
510
510
  const store = fetchStores();
@@ -215,7 +215,7 @@ const NanoTable$1 = /*@__PURE__*/ proxyCustomElement(class NanoTable extends HTM
215
215
  this.handleHideCaptionChange();
216
216
  }
217
217
  componentDidRender() {
218
- if (this.scrollable !== false && this.table) {
218
+ if (Build.isBrowser && this.scrollable !== false && this.table) {
219
219
  // a hack. Revise in-future.
220
220
  // the table is always rendered in the light DOM - so it should always be visible, but
221
221
  // if we conditionally render the slot within the masked overflow there's quite a noticeable
@@ -233,10 +233,10 @@ const NanoTable$1 = /*@__PURE__*/ proxyCustomElement(class NanoTable extends HTM
233
233
  this.cleanUpObservers();
234
234
  }
235
235
  render() {
236
- return (h(Host, { key: '54758d3dbda3695305222d5717ad0503d355dc42', class: {
236
+ return (h(Host, { key: 'bd86de55fe8bc0259cf6e7e112c4bb48ad190761', class: {
237
237
  'nano-table': true,
238
238
  'nano-table--props-ready': this.propsReady,
239
- } }, this.scrollable && (h("nano-masked-overflow", { key: '28386faf317ffb158e7c743a9891c07d1843bcaf', hideScrollbars: false, scrollControls: false, label: this.caption?.textContent || undefined, class: "nano-table__overflow-container" }, h("div", { key: 'b3c3169a26443abbc19761df5bd543edafae52f2', class: "nano-table__overflow" }))), h("slot", { key: 'a2ced54f3b39798c78a06fded180291111dfd1b1' })));
239
+ } }, this.scrollable && (h("nano-masked-overflow", { key: '7002c33f0368801339f718e191922cb03b28ce08', hideScrollbars: false, scrollControls: false, label: this.caption?.textContent || undefined, class: "nano-table__overflow-container" }, h("div", { key: '60b7c9a2d7a6bde7ffcde6ce62b0477790601cf5', class: "nano-table__overflow" }))), h("slot", { key: '3d4fb01789dd5c1b0a2b3872534e796e5182d579' })));
240
240
  }
241
241
  static get watchers() { return {
242
242
  "compact": ["handleCompactChange"],
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Custom elements for Nanopore-Digital Web applications
3
3
  */
4
- import { proxyCustomElement, HTMLElement as HTMLElement$1, createEvent, readTask, writeTask, Build, Host } from '@stencil/core/internal/client';
4
+ import { proxyCustomElement, HTMLElement as HTMLElement$1, createEvent, readTask, writeTask, Host } from '@stencil/core/internal/client';
5
5
  import { t as transformTag, h } from './renderer.js';
6
6
 
7
7
  function EvEmitter() { }
@@ -2490,7 +2490,6 @@ const Slides = /*@__PURE__*/ proxyCustomElement(class Slides extends HTMLElement
2490
2490
  }
2491
2491
  flickityEl;
2492
2492
  flickityReady = false;
2493
- mutationO;
2494
2493
  resizeO;
2495
2494
  readyflickity;
2496
2495
  flickity = new Promise((resolve) => {
@@ -2554,7 +2553,7 @@ const Slides = /*@__PURE__*/ proxyCustomElement(class Slides extends HTMLElement
2554
2553
  async animationChange(_, oldAnim) {
2555
2554
  const [flkty, slides] = await Promise.all([
2556
2555
  this.getflickity(),
2557
- this.waitForSlides(this.host),
2556
+ this.waitForSlides(),
2558
2557
  ]);
2559
2558
  // clear old stuff
2560
2559
  slides.forEach((slide) => {
@@ -2644,9 +2643,11 @@ const Slides = /*@__PURE__*/ proxyCustomElement(class Slides extends HTMLElement
2644
2643
  * child slides.
2645
2644
  */
2646
2645
  async update() {
2646
+ if (!this.didInit)
2647
+ return;
2647
2648
  const [flickity] = await Promise.all([
2648
2649
  this.getflickity(),
2649
- this.waitForSlides(this.host),
2650
+ this.waitForSlides(),
2650
2651
  ]);
2651
2652
  this.childrenEles = this.host.querySelectorAll(`${transformTag('nano-slide')} > *`);
2652
2653
  flickity.reloadCells();
@@ -2834,7 +2835,7 @@ const Slides = /*@__PURE__*/ proxyCustomElement(class Slides extends HTMLElement
2834
2835
  const finalOptions = this.normalizeOptions();
2835
2836
  await this.loadFlickityModules(finalOptions);
2836
2837
  // init flickity core
2837
- await this.waitForSlides(this.host);
2838
+ await this.waitForSlides();
2838
2839
  this.flickityEl =
2839
2840
  this.flickityEl || this._getRoot().querySelector('.flickity-container');
2840
2841
  if (!this.flickityEl)
@@ -2924,8 +2925,8 @@ const Slides = /*@__PURE__*/ proxyCustomElement(class Slides extends HTMLElement
2924
2925
  // @ts-expect-error - merged options don't quite match the flickity options
2925
2926
  return { ...flickityOptions, ...mergedEventOptions, ...this.options };
2926
2927
  }
2927
- waitForSlides = (host) => {
2928
- const allSlides = Array.from(host.querySelectorAll(transformTag('nano-slide')));
2928
+ waitForSlides = () => {
2929
+ const allSlides = Array.from(this.host.querySelectorAll(transformTag('nano-slide')));
2929
2930
  this.slideCount = allSlides.length;
2930
2931
  let toLoadSlides = allSlides.filter((ele) => !ele.ready);
2931
2932
  if (!toLoadSlides.length)
@@ -2935,13 +2936,13 @@ const Slides = /*@__PURE__*/ proxyCustomElement(class Slides extends HTMLElement
2935
2936
  toLoadSlides = toLoadSlides.filter((ele) => ele !== ev.target);
2936
2937
  if (!toLoadSlides.length) {
2937
2938
  resolve(allSlides);
2938
- host.removeEventListener('nanoSlideReady', slideResolver);
2939
- host.removeEventListener('nano-slide-ready', slideResolver);
2939
+ this.host.removeEventListener('nanoSlideReady', slideResolver);
2940
+ this.host.removeEventListener('nano-slide-ready', slideResolver);
2940
2941
  }
2941
2942
  };
2942
- host.addEventListener('nanoSlideReady', slideResolver);
2943
+ this.host.addEventListener('nanoSlideReady', slideResolver);
2943
2944
  // fallback for vue who can't handle camelcase event names
2944
- host.addEventListener('nano-slide-ready', slideResolver);
2945
+ this.host.addEventListener('nano-slide-ready', slideResolver);
2945
2946
  });
2946
2947
  };
2947
2948
  componentDidLoad() {
@@ -2950,28 +2951,8 @@ const Slides = /*@__PURE__*/ proxyCustomElement(class Slides extends HTMLElement
2950
2951
  this.didInit = true;
2951
2952
  this.initflickity();
2952
2953
  }
2953
- if (Build.isBrowser &&
2954
- typeof window !== 'undefined' &&
2955
- window.MutationObserver) {
2956
- const mut = (this.mutationO = new MutationObserver((e) => {
2957
- if (e[0].addedNodes[0] &&
2958
- e[0].addedNodes[0].nodeName.toLowerCase() ===
2959
- transformTag('nano-slide') &&
2960
- this.flickityReady) {
2961
- this.update();
2962
- }
2963
- }));
2964
- mut.observe(this.host, {
2965
- childList: true,
2966
- subtree: true,
2967
- });
2968
- }
2969
2954
  }
2970
2955
  disconnectedCallback() {
2971
- if (this.mutationO) {
2972
- this.mutationO.disconnect();
2973
- this.mutationO = undefined;
2974
- }
2975
2956
  if (this.resizeO) {
2976
2957
  this.resizeO.disconnect();
2977
2958
  this.resizeO = undefined;
@@ -2979,15 +2960,15 @@ const Slides = /*@__PURE__*/ proxyCustomElement(class Slides extends HTMLElement
2979
2960
  this.destroyflickity();
2980
2961
  }
2981
2962
  render() {
2982
- return (h(Host, { key: '6dedc1589f5ae629975f38303f658de914c8f506', class: "nano-slides" }, h("div", { key: '528c7b10972b258ef0345525a9fa82c289ecc083', class: {
2963
+ return (h(Host, { key: '87cf8ae3ff3ded83f82ef3bfc5d76381afb967e0', class: "nano-slides" }, h("div", { key: 'af12496fc219421dcf416607a7c5cc9b0e59968e', class: {
2983
2964
  slideshow: true,
2984
2965
  ready: this.ready,
2985
2966
  'not-ready': !this.ready,
2986
- }, part: "base" }, h("div", { key: '4d16a4da0692f53500c755600a539edf5dc2d606', ref: (div) => (this.flickityEl = div), class: {
2967
+ }, part: "base" }, h("div", { key: 'c5995f58b334a741e4c7930be1354d4814dd436b', ref: (div) => (this.flickityEl = div), class: {
2987
2968
  'flickity-container': true,
2988
2969
  'slides-ready': this.slidesReady,
2989
2970
  'slides-not-ready': !this.slidesReady,
2990
- }, part: "slide-container" }, h("slot", { key: 'ddcdf042f8d25069c08578e7417e3f5571386b76' })), h("div", { key: '5a456eee7631c979fef473352d2c4beec7a5cf2e', class: "ui-extras" }, h("slot", { key: '3994bac2fd8111223df9e3886481edf72b0f2d54', name: "ui" })), this.slideCount > 1 && this.pager && (h("div", { key: '2966cef941d7232110ba4dbba0aefdb33e757216', class: "pagination flickity-page-dots", part: "pagination" }, Array.from({ length: this.slideCount }).map((_, index) => (h("button", { part: "pagination-item--active", key: index, class: {
2971
+ }, part: "slide-container" }, h("slot", { key: 'f4b17d46db05d7b23ff79501cc435b2b6beadcb2', onSlotchange: () => this.update() })), h("div", { key: '483ab2edd42b87d48bcc0793cbe5c21efdd1a4d3', class: "ui-extras" }, h("slot", { key: '8fc3e7b78980381d52817c0faa80efa5439a14a6', name: "ui" })), this.slideCount > 1 && this.pager && (h("div", { key: '4e7c781d179dda4d43356ae9a5892d913d17b43c', class: "pagination flickity-page-dots", part: "pagination" }, Array.from({ length: this.slideCount }).map((_, index) => (h("button", { part: "pagination-item--active", key: index, class: {
2991
2972
  'pagination-btn': true,
2992
2973
  'pagination-btn--active': this.isActive(index),
2993
2974
  'is-selected': this.isActive(index),
@@ -66,7 +66,8 @@ class HasSlotController {
66
66
  // * Regular shadow DOM component *
67
67
  childNodes = [...this.host.shadowRoot.childNodes];
68
68
  }
69
- else if (!this.host.classList.contains('hydrated')) {
69
+ else if (!this.host.classList.contains('hydrated') &&
70
+ this.host.__childNodes) {
70
71
  // * Non-shadow, polyfilled component *
71
72
  // Component has not done initial render. Return component internals
72
73
  childNodes = [...(this.host?.__childNodes ?? [])];
@@ -76,7 +77,7 @@ class HasSlotController {
76
77
  childNodes = [...this.host.childNodes];
77
78
  }
78
79
  return childNodes.some((node) => {
79
- if (node.nodeType === Node.TEXT_NODE && node.textContent.trim() !== '') {
80
+ if (node.nodeType === Node.TEXT_NODE && !!node.textContent.trim()) {
80
81
  return true;
81
82
  }
82
83
  if (node.nodeType === Node.ELEMENT_NODE) {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Custom elements for Nanopore-Digital Web applications
3
3
  */
4
- import { F as Flickity, u as utils } from './nano-slides-DKkSSmWQ.js';
4
+ import { F as Flickity, u as utils } from './nano-slides-Dtmc0c07.js';
5
5
  import './index-BM3Om9WE.js';
6
6
  import './renderer-DpNDfhNy.js';
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Custom elements for Nanopore-Digital Web applications
3
3
  */
4
- import { F as Flickity } from './nano-slides-DKkSSmWQ.js';
4
+ import { F as Flickity } from './nano-slides-Dtmc0c07.js';
5
5
  import './index-BM3Om9WE.js';
6
6
  import './renderer-DpNDfhNy.js';
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Custom elements for Nanopore-Digital Web applications
3
3
  */
4
- import { F as Flickity, u as utils } from './nano-slides-DKkSSmWQ.js';
4
+ import { F as Flickity, u as utils } from './nano-slides-Dtmc0c07.js';
5
5
  import './index-BM3Om9WE.js';
6
6
  import './renderer-DpNDfhNy.js';
7
7
 
@@ -6,7 +6,7 @@ import { M as Modal } from './modal-CY_3_LJ7.js';
6
6
  import { l as lockBodyScrolling, u as unlockBodyScrolling } from './scroll-1nFw8CNk.js';
7
7
  import { h, t as transformTag } from './renderer-DpNDfhNy.js';
8
8
  import { b as blurActiveElement } from './active-element-CKJIkX0R.js';
9
- import { H as HasSlotController } from './slot-D31cEKyt.js';
9
+ import { H as HasSlotController } from './slot-BeXeAw-u.js';
10
10
  import './tabbable-BgopY-vd.js';
11
11
  import './dom-dlicJTEJ.js';
12
12
 
@@ -5,7 +5,7 @@ import { r as registerInstance, c as createEvent, g as getElement, a as Host } f
5
5
  import { h, t as transformTag } from './renderer-DpNDfhNy.js';
6
6
  import { M as Modal } from './modal-CY_3_LJ7.js';
7
7
  import { l as lockBodyScrolling, u as unlockBodyScrolling } from './scroll-1nFw8CNk.js';
8
- import { H as HasSlotController } from './slot-D31cEKyt.js';
8
+ import { H as HasSlotController } from './slot-BeXeAw-u.js';
9
9
  import { w as waitForEvent } from './events-ClRFmcmJ.js';
10
10
  import { C as ComponentStore } from './component-store-JYVuxwvK.js';
11
11
  import { g as getActiveElement } from './active-element-CKJIkX0R.js';
@@ -6,7 +6,7 @@ import { g as getClassMap } from './theme-aiuyr36I.js';
6
6
  import { d as debounce } from './throttle-C93FMm2Z.js';
7
7
  import { t as transformTag, h } from './renderer-DpNDfhNy.js';
8
8
 
9
- const checkboxGroupCss = ".sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{box-sizing:border-box}[hidden].sc-nano-checkbox-group{display:none !important}@media (prefers-reduced-motion: reduce){.sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}.sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{box-sizing:border-box}[hidden].sc-nano-checkbox-group{display:none !important}@media (prefers-reduced-motion: reduce){.sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}.sc-nano-checkbox-group-h{--label-color:var(--nano-color-base-1000);--label-font-size:var(--nano-font-size-xs);--invalid-msg-color:var(--nano-color-danger-1100);--help-msg-color:var(--nano-color-base-1000);--more-font-size:var(--nano-font-size-2xs);display:block;inline-size:100%}.sc-nano-checkbox-group-h *.sc-nano-checkbox-group{box-sizing:inherit}.cbgroup.sc-nano-checkbox-group{margin:0;padding:0;border:0}.cbgroup__error.sc-nano-checkbox-group,.cbgroup__help.sc-nano-checkbox-group,.cbgroup__more.sc-nano-checkbox-group{display:block;inline-size:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cbgroup__error.sc-nano-checkbox-group,.cbgroup__help.sc-nano-checkbox-group{inset-block-start:0;inset-inline-start:0;position:absolute;font-size:var(--more-font-size);line-height:1.2;transition:0.3s ease-out opacity;font-style:italic}.show-error.sc-nano-checkbox-group .cbgroup__error.sc-nano-checkbox-group,.show-error.sc-nano-checkbox-group .cbgroup__help.sc-nano-checkbox-group{opacity:1}.cbgroup__error.sc-nano-checkbox-group{color:var(--invalid-msg-color);opacity:0}.has-error.sc-nano-checkbox-group .cbgroup__error.sc-nano-checkbox-group{opacity:1}.cbgroup__help.sc-nano-checkbox-group{opacity:1;color:var(--help-msg-color)}.has-error.sc-nano-checkbox-group .cbgroup__help.sc-nano-checkbox-group{opacity:0}.cbgroup__more.sc-nano-checkbox-group{block-size:1em;margin-block:var(--nano-spacing-sm) 0;position:relative;opacity:0;display:none;transition:all var(--nano-transition-fast) ease;transition-behavior:allow-discrete}.has-helper.sc-nano-checkbox-group .cbgroup__more.sc-nano-checkbox-group,.has-error.sc-nano-checkbox-group .cbgroup__more.sc-nano-checkbox-group{display:block;opacity:1}.cbgroup__legend.sc-nano-checkbox-group{font-size:var(--nano-font-size-xs);line-height:var(--nano-line-height-normal);letter-spacing:var(--nano-letter-spacing-loose);padding:0 0 0.9375rem;margin:0;display:block;inline-size:100%}.cbgroup__legend.visually-hide.sc-nano-checkbox-group{clip-path:inset(50%);block-size:1px;overflow:hidden;position:absolute;white-space:nowrap;inline-size:1px}.cbgroup__cbs.sc-nano-checkbox-group{margin:0;padding:0;display:flex;flex-direction:column;gap:var(--nano-spacing-md)}.types-segment.sc-nano-checkbox-group-h .cbgroup__cbs.sc-nano-checkbox-group{flex-direction:row;gap:0}.types-tag.sc-nano-checkbox-group-h .cbgroup__cbs.sc-nano-checkbox-group{flex-direction:row;gap:var(--nano-spacing-sm)}";
9
+ const checkboxGroupCss = ".sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{box-sizing:border-box}[hidden].sc-nano-checkbox-group{display:none !important}@media (prefers-reduced-motion: reduce){.sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}.sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{box-sizing:border-box}[hidden].sc-nano-checkbox-group{display:none !important}@media (prefers-reduced-motion: reduce){.sc-nano-checkbox-group-h,*.sc-nano-checkbox-group,*.sc-nano-checkbox-group::before,*.sc-nano-checkbox-group::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}.sc-nano-checkbox-group-h{--label-color:var(--nano-color-base-1000);--label-font-size:var(--nano-font-size-xs);--invalid-msg-color:var(--nano-color-danger-1100);--help-msg-color:var(--nano-color-base-1000);--more-font-size:var(--nano-font-size-2xs);--gap:var(--nano-spacing-md);display:block;inline-size:100%}.sc-nano-checkbox-group-h *.sc-nano-checkbox-group{box-sizing:inherit}.cbgroup.sc-nano-checkbox-group{margin:0;padding:0;border:0}.cbgroup__error.sc-nano-checkbox-group,.cbgroup__help.sc-nano-checkbox-group,.cbgroup__more.sc-nano-checkbox-group{display:block;inline-size:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cbgroup__error.sc-nano-checkbox-group,.cbgroup__help.sc-nano-checkbox-group{inset-block-start:0;inset-inline-start:0;position:absolute;font-size:var(--more-font-size);line-height:1.2;transition:0.3s ease-out opacity;font-style:italic}.show-error.sc-nano-checkbox-group .cbgroup__error.sc-nano-checkbox-group,.show-error.sc-nano-checkbox-group .cbgroup__help.sc-nano-checkbox-group{opacity:1}.cbgroup__error.sc-nano-checkbox-group{color:var(--invalid-msg-color);opacity:0}.has-error.sc-nano-checkbox-group .cbgroup__error.sc-nano-checkbox-group{opacity:1}.cbgroup__help.sc-nano-checkbox-group{opacity:1;color:var(--help-msg-color)}.has-error.sc-nano-checkbox-group .cbgroup__help.sc-nano-checkbox-group{opacity:0}.cbgroup__more.sc-nano-checkbox-group{block-size:1em;margin-block:var(--nano-spacing-sm) 0;position:relative;opacity:0;display:none;transition:all var(--nano-transition-fast) ease;transition-behavior:allow-discrete}.has-helper.sc-nano-checkbox-group .cbgroup__more.sc-nano-checkbox-group,.has-error.sc-nano-checkbox-group .cbgroup__more.sc-nano-checkbox-group{display:block;opacity:1}.cbgroup__legend.sc-nano-checkbox-group{font-size:var(--nano-font-size-xs);line-height:var(--nano-line-height-normal);letter-spacing:var(--nano-letter-spacing-loose);padding:0 0 0.9375rem;margin:0;display:block;inline-size:100%}.cbgroup__legend.visually-hide.sc-nano-checkbox-group{clip-path:inset(50%);block-size:1px;overflow:hidden;position:absolute;white-space:nowrap;inline-size:1px}.cbgroup__cbs.sc-nano-checkbox-group{margin:0;padding:0;display:flex;flex-direction:column;gap:var(--gap)}.types-segment.sc-nano-checkbox-group-h .cbgroup__cbs.sc-nano-checkbox-group{flex-direction:row;--gap:0}.types-tag.sc-nano-checkbox-group-h .cbgroup__cbs.sc-nano-checkbox-group{flex-direction:row;--gap:var(--nano-spacing-sm)}";
10
10
 
11
11
  const CheckboxGroup = class {
12
12
  constructor(hostRef) {
@@ -112,7 +112,7 @@ const createWorkerProxy = (worker, workerMsgId, exportedMethod) => (
112
112
  })
113
113
  );
114
114
 
115
- const workerPromise = import('./table.worker-By3ZdRHH.js').then(m => m.worker);
115
+ const workerPromise = import('./table.worker-DftFV8Z7.js').then(m => m.worker);
116
116
  const createWorkerStore = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'createWorkerStore');
117
117
  const syncConfigToWorker = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'syncConfigToWorker');
118
118
  const syncDataToWorker = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'syncDataToWorker');
@@ -360,7 +360,7 @@ function mergeCellProperties(rowIndex, colIndex, defaultProps) {
360
360
  */
361
361
  function colheadFootRender(col) {
362
362
  const tpl = col?.columnTemplate;
363
- return tpl ? (tpl(h, col)) : (h(Fragment, null, col.title));
363
+ return tpl ? tpl(h, col) : (h(Fragment, null, col.title));
364
364
  }
365
365
  function headerPinClasses(type, vPinned, toString = false) {
366
366
  const classes = {
@@ -497,7 +497,7 @@ function cellRender(rowIndex, colIndex) {
497
497
  // custom rendering can render to the templateEle OR return a promise<string>
498
498
  tplResult = result && result['then'] ? result : templateEle;
499
499
  }
500
- return tplResult ? (tplResult) : model.cellModel !== undefined && model.cellModel !== null ? (h$1(Fragment, null, model.cellModel?.toString())) : ('');
500
+ return tplResult ? tplResult : model.cellModel !== undefined && model.cellModel !== null ? (h$1(Fragment, null, model.cellModel?.toString())) : ('');
501
501
  }
502
502
  const baseCellClasses = (colIndex, toString = false) => {
503
503
  const store = fetchStores();
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Custom elements for Nanopore-Digital Web applications
3
3
  */
4
- export { N as nano_data_table } from './nano-data-table-B3_-hFqj.js';
4
+ export { N as nano_data_table } from './nano-data-table-BXdzSqWC.js';
5
5
  import './index-BM3Om9WE.js';
6
6
  import './renderer-DpNDfhNy.js';
7
7
  import './math-BEqsTfVK.js';
@@ -525,18 +525,18 @@ const DataList = class {
525
525
  }
526
526
  }
527
527
  render() {
528
- return (h(Host, { key: '269f57e6eccd251685f84a94d53f380d6545a3cb', class: "nano-datalist", role: this.actvOptEles.length ? 'listbox' : undefined, "aria-owns": this.optionIds.length ? this.optionIds.join(' ') : undefined, "aria-label": this.optionIds.length
528
+ return (h(Host, { key: '8acb3be76246d665171db96444cff3a5141e1132', class: "nano-datalist", role: this.actvOptEles.length ? 'listbox' : undefined, "aria-owns": this.optionIds.length ? this.optionIds.join(' ') : undefined, "aria-label": this.optionIds.length
529
529
  ? 'Select options from the list below'
530
- : undefined }, h("nano-dropdown", { key: 'ee6398b356dc1a0ff9fa35e84955314fc95435b6', part: "dropdown", exportparts: "trigger:dropdown__trigger, panel:dropdown__panel", ...this.dropDownConfig, ref: (el) => (this.nanoDropdown = el), dialogTitle: "Select options from the list below", class: {
530
+ : undefined }, h("nano-dropdown", { key: '56c051873a20a3dab17a36eec1a2f040f83247fa', part: "dropdown", exportparts: "trigger:dropdown__trigger, panel:dropdown__panel", ...this.dropDownConfig, ref: (el) => (this.nanoDropdown = el), dialogTitle: "Select options from the list below", class: {
531
531
  dlist__dropdown: true,
532
532
  'dlist--isfiltered': this.isFiltered,
533
- }, onNanoAfterShow: this.handleShow, onNanoAfterHide: this.handleHide, role: "group" }, h("nano-menu", { key: 'f80006a5ba62c227094da52672b4abf6ee6335dc', part: "main-menu", ref: (el) => (this.listBox = el), hidden: !this.actvOptEles.length, type: "listbox", label: this.inputLabel ? this.inputLabel.textContent : undefined, class: {
533
+ }, onNanoAfterShow: this.handleShow, onNanoAfterHide: this.handleHide, role: "group" }, h("nano-menu", { key: '7559b648617c8d32f61c670e4dc78c0d60d36dc4', part: "main-menu", ref: (el) => (this.listBox = el), hidden: !this.actvOptEles.length, type: "listbox", label: this.inputLabel ? this.inputLabel.textContent : undefined, class: {
534
534
  dlist__menu: true,
535
535
  'dlist__menu--open': this.dropwdownOpen,
536
- }, tabIndex: -1, onNanoSelect: this.optSelected, onKeyDown: this.optionKeyDown }, h("slot", { key: '8a2d3160b990c99baeaf4fd9bdd7bb04229d642c', name: "list-top" }), h("slot", { key: '2230e4458be0998d59d18250e1d22188baf2f6b1' }), h("slot", { key: 'fca84cbd01495e4b62ba95c4c07681f506939d3f', name: "internal-opts" }), h("slot", { key: '076fd81c15f5ac6590e5311503262a07f60e8454', name: "list-bottom" })), h("nano-menu", { key: 'd4878bc502b4fcc0de01f67b5065ad017f445f75', part: "no-result-menu", type: "listbox", label: "No results found", hidden: !!this.actvOptEles.length, class: {
536
+ }, tabIndex: -1, onNanoSelect: this.optSelected, onKeyDown: this.optionKeyDown }, h("slot", { key: '02bd8ba511db314637e8991d29234a22967cf27d', name: "list-top" }), h("slot", { key: 'cb0234e0dd103293c1f1292af62575dd766af730' }), h("slot", { key: '0adac42b20ee0338de74217e6e91c00be6b5b6a7', name: "internal-opts" }), h("slot", { key: '906255e4e6fdc87fa8bf6e278ad076f179553925', name: "list-bottom" })), h("nano-menu", { key: '9aa978054227c9bb928c06ce93303ceda48cbf29', part: "no-result-menu", type: "listbox", label: "No results found", hidden: !!this.actvOptEles.length, class: {
537
537
  dlist__menu: true,
538
538
  'dlist__menu--open': this.dropwdownOpen,
539
- } }, h("slot", { key: '2ac583af3ac8b24ace627637ab86471999df9465', name: "no-result" })), !!this.actvOptEles && (h("div", { key: '4971780255baf694fcc447756ca02e1115ece871', class: "dlist__status" }, this.actvOptEles.length, " result", this.actvOptEles.length > 1 ? 's' : '', " available.")))));
539
+ } }, h("slot", { key: '4e2ce9dcb39d0c823ed27f13dc8c9a8873f0ca9f', name: "no-result" })), !!this.actvOptEles && (h("div", { key: 'c6bf0c88d7b1fcd24b2882c7db851ffca2e77ba3', class: "dlist__status" }, this.actvOptEles.length, " result", this.actvOptEles.length > 1 ? 's' : '', " available.")))));
540
540
  }
541
541
  static get watchers() { return {
542
542
  "open": ["openWatcher"],
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { r as registerInstance, c as createEvent, a as Host } from './index-BM3Om9WE.js';
5
5
  import { h } from './renderer-DpNDfhNy.js';
6
- import { H as HasSlotController } from './slot-D31cEKyt.js';
6
+ import { H as HasSlotController } from './slot-BeXeAw-u.js';
7
7
  import './dom-dlicJTEJ.js';
8
8
 
9
9
  const detailsCss = ":host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host{font-family:inherit;font-size:inherit;font-stretch:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;--padding:var(--nano-spacing-md);--btn-padding:var(--padding);--btn-bg-color:transparent;--btn-bg-color--hover:var(--nano-color-primary-100);--btn-bg-color--active:var(--nano-color-primary-300);--content-padding:var(--padding);display:block;border:1px solid var(--nano-color-neutral-300);color:var(--nano-color-neutral-1400)}:host([size=small]){--padding:var(--nano-spacing-sm) 0.9375rem}:host([size=large]){--padding:var(--nano-spacing-l)}:host([size=large]) .header{font-weight:var(--nano-font-weight-normal);font-size:var(--nano-font-size-lg);line-height:var(--nano-line-height-dense);text-wrap:balance}:host([disabled]){opacity:0.5}.header{all:unset;cursor:pointer;padding:var(--btn-padding);position:relative;display:flex;flex-wrap:wrap;align-items:center;background:var(--btn-bg-color);color:inherit;font-weight:var(--nano-font-weight-normal);font-size:var(--nano-font-size-md);line-height:var(--nano-line-height-dense);text-wrap:balance}.header::-webkit-details-marker{display:none}.header:focus{outline:none}.header:not([aria-disabled=true]):focus-visible{outline:var(--nano-focus-ring);outline-offset:var(--nano-focus-ring-offset)}.header:not([aria-disabled=true]):hover{background:var(--btn-bg-color--hover)}.header:not([aria-disabled=true]):active{background:var(--btn-bg-color--active)}.disabled .header{cursor:not-allowed}.header .label{inline-size:100%;max-inline-size:100%;max-block-size:100%;flex:1;display:inline-block}.header .icon{line-height:0;flex-direction:column;justify-content:center;display:inline-block;color:var(--nano-color-primary-1200)}.header .icon .default-icon{rotate:0deg;transform-origin:center;transition:var(--nano-transition-x-fast) ease rotate}:host([open]) .header .icon .default-icon{rotate:180deg}.header .icon--start{margin-inline:0 var(--btn-padding);margin-block:0}.header .icon--end{margin-inline:var(--btn-padding) 0;margin-block:0}.header .icon ::slotted(.nano-icon),.header .icon::slotted(.nano-icon){color:currentcolor;transition:var(--nano-transition-x-fast) ease rotate;transform-origin:center}.body{display:grid;grid-template-rows:0fr;transition:all var(--nano-transition-fast) ease-out;opacity:0}:host([open]) .body{grid-template-rows:1fr;opacity:1}.content-wrapper{overflow:hidden}.content{padding:var(--content-padding)}";
@@ -5,7 +5,7 @@ import { r as registerInstance, c as createEvent, g as getElement, a as Host } f
5
5
  import { h } from './renderer-DpNDfhNy.js';
6
6
  import { M as Modal } from './modal-CY_3_LJ7.js';
7
7
  import { l as lockBodyScrolling, u as unlockBodyScrolling } from './scroll-1nFw8CNk.js';
8
- import { H as HasSlotController } from './slot-D31cEKyt.js';
8
+ import { H as HasSlotController } from './slot-BeXeAw-u.js';
9
9
  import { C as ComponentStore } from './component-store-JYVuxwvK.js';
10
10
  import { g as getTabbableElements } from './tabbable-BgopY-vd.js';
11
11
  import './dom-dlicJTEJ.js';
@@ -7,7 +7,7 @@ import { P as Popover } from './popover-DNdFZ1hX.js';
7
7
  import { a as getNearestTabbableElement, g as getTabbableElements } from './tabbable-BgopY-vd.js';
8
8
  import { t as transformTag, h } from './renderer-DpNDfhNy.js';
9
9
  import { g as getDirectChildren } from './dom-dlicJTEJ.js';
10
- import { g as getTextContent } from './slot-D31cEKyt.js';
10
+ import { g as getTextContent } from './slot-BeXeAw-u.js';
11
11
 
12
12
  const dropdownCss = ":host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host{--width:auto;--border:none;--border-radius:0px;--background:var(--nano-color-neutral-75);--padding:0 0;--overflow:auto;--dropdown-z-index:var(--nano-z-index-dropdown);--min-width:0;--max-height:none;--box-shadow:var(--nano-shadow-l2);--menu-height:calc(100vh - 200px);display:inline-block}.dropdown{position:relative}.dropdown__trigger{display:block}.dropdown__positioner{position:absolute;z-index:var(--dropdown-z-index);min-inline-size:var(--min-width);border:0;background:none;padding:0;overflow:visible;color:unset}.dropdown__positioner::backdrop{display:none}.dropdown__positioner[popover],.dropdown__positioner:popover-open{inset:unset}@media (width <= 35.9375em){.dropdown__positioner{z-index:100}}.dropdown__panel{padding:var(--padding);background:var(--background);min-inline-size:var(--min-width);inline-size:var(--width);border:var(--border);border-radius:var(--border-radius);color:currentcolor;box-shadow:var(--box-shadow);opacity:0;transition:var(--nano-transition-x-fast) ease opacity, var(--nano-transition-x-fast) ease transform, var(--nano-transition-fast) ease min-block-size;min-block-size:20px;overflow:var(--overflow);max-block-size:var(--max-height);box-sizing:content-box !important}.dropdown__panel.loading{overflow-y:hidden}.dropdown__panel.top{transform:translateY(-20px) translateZ(0)}.dropdown__panel.bottom{transform:translateY(20px) translateZ(0)}.dropdown__positioner.popover-visible .dropdown__panel{opacity:1;transform:translateY(0) translateZ(0)}.dropdown__panel ::slotted(.nano-menu){max-block-size:var(--menu-height)}.dropdown__accessible-title{clip-path:inset(50%);block-size:1px;overflow:hidden;position:absolute;white-space:nowrap;inline-size:1px}";
13
13
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { r as registerInstance, g as getElement, a as Host } from './index-BM3Om9WE.js';
5
5
  import { h } from './renderer-DpNDfhNy.js';
6
- import { H as HasSlotController } from './slot-D31cEKyt.js';
6
+ import { H as HasSlotController } from './slot-BeXeAw-u.js';
7
7
  import { g as getDirectChildren } from './dom-dlicJTEJ.js';
8
8
  import { f as findScrollParent } from './scroll-1nFw8CNk.js';
9
9