@nanoporetech-digital/components 5.1.1 → 5.1.3

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 (112) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/nano-checkbox-group.cjs.entry.js +4 -0
  4. package/dist/cjs/nano-checkbox-group.cjs.entry.js.map +1 -1
  5. package/dist/cjs/nano-components.cjs.js +1 -1
  6. package/dist/cjs/nano-datalist_3.cjs.entry.js +13 -4
  7. package/dist/cjs/nano-datalist_3.cjs.entry.js.map +1 -1
  8. package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js +7 -4
  9. package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js.map +1 -1
  10. package/dist/cjs/nano-input.cjs.entry.js +3 -3
  11. package/dist/cjs/nano-input.cjs.entry.js.map +1 -1
  12. package/dist/cjs/nano-sortable.cjs.entry.js +70 -43
  13. package/dist/cjs/nano-sortable.cjs.entry.js.map +1 -1
  14. package/dist/cjs/nano-tab-group.cjs.entry.js +2 -0
  15. package/dist/cjs/nano-tab-group.cjs.entry.js.map +1 -1
  16. package/dist/cjs/{nano-table-66318604.js → nano-table-5a7a4d53.js} +17 -9
  17. package/dist/cjs/nano-table-5a7a4d53.js.map +1 -0
  18. package/dist/cjs/nano-table.cjs.entry.js +1 -1
  19. package/dist/cjs/{table.worker-e102343e.js → table.worker-77e56070.js} +2 -2
  20. package/dist/cjs/table.worker-77e56070.js.map +1 -0
  21. package/dist/collection/components/checkbox/checkbox-group.js +4 -0
  22. package/dist/collection/components/checkbox/checkbox-group.js.map +1 -1
  23. package/dist/collection/components/datalist/datalist.js +13 -4
  24. package/dist/collection/components/datalist/datalist.js.map +1 -1
  25. package/dist/collection/components/input/input.css +1 -1
  26. package/dist/collection/components/input/input.js +2 -2
  27. package/dist/collection/components/input/input.js.map +1 -1
  28. package/dist/collection/components/nav-item/nav-item.js +6 -3
  29. package/dist/collection/components/nav-item/nav-item.js.map +1 -1
  30. package/dist/collection/components/select/select.css +1 -1
  31. package/dist/collection/components/sortable/sortable.js +71 -44
  32. package/dist/collection/components/sortable/sortable.js.map +1 -1
  33. package/dist/collection/components/table/table.js +37 -7
  34. package/dist/collection/components/table/table.js.map +1 -1
  35. package/dist/collection/components/tabs/tab-group.js +2 -0
  36. package/dist/collection/components/tabs/tab-group.js.map +1 -1
  37. package/dist/components/datalist.js +13 -4
  38. package/dist/components/datalist.js.map +1 -1
  39. package/dist/components/input.js +3 -3
  40. package/dist/components/input.js.map +1 -1
  41. package/dist/components/nano-checkbox-group.js +4 -0
  42. package/dist/components/nano-checkbox-group.js.map +1 -1
  43. package/dist/components/nano-sortable.js +70 -43
  44. package/dist/components/nano-sortable.js.map +1 -1
  45. package/dist/components/nano-tab-group.js +2 -0
  46. package/dist/components/nano-tab-group.js.map +1 -1
  47. package/dist/components/nav-item.js +6 -3
  48. package/dist/components/nav-item.js.map +1 -1
  49. package/dist/components/select.js +1 -1
  50. package/dist/components/table.js +16 -7
  51. package/dist/components/table.js.map +1 -1
  52. package/dist/esm/loader.js +1 -1
  53. package/dist/esm/nano-checkbox-group.entry.js +4 -0
  54. package/dist/esm/nano-checkbox-group.entry.js.map +1 -1
  55. package/dist/esm/nano-components.js +1 -1
  56. package/dist/esm/nano-datalist_3.entry.js +13 -4
  57. package/dist/esm/nano-datalist_3.entry.js.map +1 -1
  58. package/dist/esm/nano-global-nav-user-profile_3.entry.js +7 -4
  59. package/dist/esm/nano-global-nav-user-profile_3.entry.js.map +1 -1
  60. package/dist/esm/nano-input.entry.js +3 -3
  61. package/dist/esm/nano-input.entry.js.map +1 -1
  62. package/dist/esm/nano-sortable.entry.js +70 -43
  63. package/dist/esm/nano-sortable.entry.js.map +1 -1
  64. package/dist/esm/nano-tab-group.entry.js +2 -0
  65. package/dist/esm/nano-tab-group.entry.js.map +1 -1
  66. package/dist/esm/{nano-table-eda322db.js → nano-table-026a0d30.js} +17 -9
  67. package/dist/esm/nano-table-026a0d30.js.map +1 -0
  68. package/dist/esm/nano-table.entry.js +1 -1
  69. package/dist/esm/{table.worker-245a7006.js → table.worker-c17a27ed.js} +2 -2
  70. package/dist/esm/table.worker-c17a27ed.js.map +1 -0
  71. package/dist/nano-components/nano-components.esm.js +1 -1
  72. package/dist/nano-components/nano-components.esm.js.map +1 -1
  73. package/dist/nano-components/{p-2d43a82b.entry.js → p-1a9d9956.entry.js} +2 -2
  74. package/dist/nano-components/p-1a9d9956.entry.js.map +1 -0
  75. package/dist/nano-components/{p-f7535f45.entry.js → p-1b687f96.entry.js} +2 -2
  76. package/dist/nano-components/p-1b687f96.entry.js.map +1 -0
  77. package/dist/nano-components/{p-df264b79.js → p-2e63676f.js} +2 -2
  78. package/dist/nano-components/{p-5157d7ba.entry.js → p-30cc21c2.entry.js} +2 -2
  79. package/dist/nano-components/{p-40b1c72f.entry.js → p-34501eae.entry.js} +2 -2
  80. package/dist/nano-components/p-34501eae.entry.js.map +1 -0
  81. package/dist/nano-components/p-3b4b7f40.entry.js +5 -0
  82. package/dist/nano-components/p-3b4b7f40.entry.js.map +1 -0
  83. package/dist/nano-components/{p-99167ef0.js → p-59eb9caa.js} +2 -2
  84. package/dist/nano-components/p-59eb9caa.js.map +1 -0
  85. package/dist/nano-components/p-7759d185.entry.js +5 -0
  86. package/dist/nano-components/p-7759d185.entry.js.map +1 -0
  87. package/dist/nano-components/p-9c4efe14.entry.js +5 -0
  88. package/dist/nano-components/p-9c4efe14.entry.js.map +1 -0
  89. package/dist/types/components/datalist/datalist.d.ts +1 -0
  90. package/dist/types/components/nav-item/nav-item.d.ts +1 -1
  91. package/dist/types/components/sortable/sortable.d.ts +2 -3
  92. package/dist/types/components/table/table.d.ts +1 -0
  93. package/dist/types/components.d.ts +2 -0
  94. package/docs-json.json +19 -2
  95. package/hydrate/index.js +115 -61
  96. package/package.json +2 -2
  97. package/dist/cjs/nano-table-66318604.js.map +0 -1
  98. package/dist/cjs/table.worker-e102343e.js.map +0 -1
  99. package/dist/esm/nano-table-eda322db.js.map +0 -1
  100. package/dist/esm/table.worker-245a7006.js.map +0 -1
  101. package/dist/nano-components/p-2d43a82b.entry.js.map +0 -1
  102. package/dist/nano-components/p-40b1c72f.entry.js.map +0 -1
  103. package/dist/nano-components/p-99167ef0.js.map +0 -1
  104. package/dist/nano-components/p-b0c60290.entry.js +0 -5
  105. package/dist/nano-components/p-b0c60290.entry.js.map +0 -1
  106. package/dist/nano-components/p-d1a5326f.entry.js +0 -5
  107. package/dist/nano-components/p-d1a5326f.entry.js.map +0 -1
  108. package/dist/nano-components/p-d79c6862.entry.js +0 -5
  109. package/dist/nano-components/p-d79c6862.entry.js.map +0 -1
  110. package/dist/nano-components/p-f7535f45.entry.js.map +0 -1
  111. /package/dist/nano-components/{p-5157d7ba.entry.js.map → p-2e63676f.js.map} +0 -0
  112. /package/dist/nano-components/{p-df264b79.js.map → p-30cc21c2.entry.js.map} +0 -0
@@ -863,8 +863,10 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
863
863
  */
864
864
  this.scrollHandler = () => {
865
865
  // don't listen if this table isn't in the viewport
866
- if (!this.store.general.state.isActive)
866
+ if (!this.store.general.state.isActive || !this.rows)
867
867
  return;
868
+ if (this.primaryBlockIndex === undefined)
869
+ this.primaryBlockIndex = 0;
868
870
  readTask(() => {
869
871
  this.cacheScrollPosition = this.scrollParent.scrollTop || window.scrollY;
870
872
  let cumulativeHeight = this.host.offsetTop;
@@ -881,7 +883,6 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
881
883
  ];
882
884
  if (potentialBlocks.toString() !== this.activeBlocks.toString()) {
883
885
  this.activeBlocks = potentialBlocks;
884
- this.setBlockHeight();
885
886
  }
886
887
  this.primaryBlockIndex = blockIndex;
887
888
  }
@@ -902,6 +903,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
902
903
  classes = [...e.target.className.split(' '), ...classes];
903
904
  this.tableWrapperEle.classList.add(...classes.filter((cl) => !!cl));
904
905
  };
906
+ this.jsxRenderer = undefined;
905
907
  this.type = 'table';
906
908
  this.caption = undefined;
907
909
  this.showCaption = false;
@@ -1282,7 +1284,6 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1282
1284
  : dRows.length;
1283
1285
  let rows = [];
1284
1286
  const blocks = [];
1285
- this.blockHeights = [];
1286
1287
  // old skool loop for perf
1287
1288
  for (i; i <= l; i++) {
1288
1289
  rows.push(this.store.data.state.rows[i - 1] || { __uuid: '' });
@@ -1311,14 +1312,14 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1311
1312
  getBlockHeight(blockIndex) {
1312
1313
  if (this.blockHeights.length) {
1313
1314
  const cachedBlockHeight = this.blockHeights.find((bh) => bh.blockIndex === blockIndex);
1314
- if (cachedBlockHeight)
1315
+ if (cachedBlockHeight && cachedBlockHeight.height)
1315
1316
  return cachedBlockHeight.height;
1316
1317
  }
1317
1318
  const blockLength = this.blocks[blockIndex].rows.length;
1318
1319
  if (blockLength === this.perBlock && this.measureHeight) {
1319
1320
  return this.measureHeight;
1320
1321
  }
1321
- return this.unitHeight ? this.unitHeight * blockLength : undefined;
1322
+ return this.unitHeight ? this.unitHeight * blockLength : 100;
1322
1323
  }
1323
1324
  /** cache the height for all active blocks for later renders */
1324
1325
  setBlockHeight() {
@@ -1327,6 +1328,8 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1327
1328
  if (!el)
1328
1329
  return;
1329
1330
  readTask(() => {
1331
+ if (el.classList.contains(`${CSSNAMESPACE}__inactive`))
1332
+ return;
1330
1333
  const height = el.getBoundingClientRect().height;
1331
1334
  // cache height to our block heights array
1332
1335
  // for subsequent renders
@@ -1369,7 +1372,9 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1369
1372
  // setup stores
1370
1373
  this.store = await generateStore(this.host, this.columns, this.scrollParent, this.isReady);
1371
1374
  await this.handleRowsChange();
1372
- this.store.general.onChange('isActive', this.scrollHandler);
1375
+ this.store.general.onChange('isActive', () => {
1376
+ this.scrollHandler();
1377
+ });
1373
1378
  this.store.data.onChange('rows', () => this.setBlocks());
1374
1379
  // setup dom and attach listeners
1375
1380
  this.processSlots();
@@ -1397,7 +1402,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1397
1402
  perMark('render');
1398
1403
  }
1399
1404
  componentDidRender() {
1400
- this.setMeasureElement();
1405
+ this.setMeasureElement().then(() => this.setBlockHeight());
1401
1406
  perMark('render', true);
1402
1407
  }
1403
1408
  disconnectedCallback() {
@@ -1405,6 +1410,9 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1405
1410
  return;
1406
1411
  this.activeWatcherIo.disconnect();
1407
1412
  this.activeWatcherIo = undefined;
1413
+ (this.scrollParent === document.documentElement
1414
+ ? document
1415
+ : this.scrollParent).removeEventListener('scroll', this.scrollHandler);
1408
1416
  }
1409
1417
  render() {
1410
1418
  this.blockElements = [];
@@ -1446,6 +1454,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1446
1454
  }; }
1447
1455
  static get style() { return tableCss; }
1448
1456
  }, [4, "nano-table", {
1457
+ "jsxRenderer": [16],
1449
1458
  "type": [1],
1450
1459
  "caption": [1],
1451
1460
  "showCaption": [4, "show-caption"],