@ukic/canary-web-components 2.0.0-canary.34 → 2.0.0-canary.36

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 (98) hide show
  1. package/README.md +1 -0
  2. package/dist/cjs/core.cjs.js +1 -1
  3. package/dist/cjs/helpers-951fb33a.js.map +1 -1
  4. package/dist/cjs/ic-badge.cjs.entry.js +23 -0
  5. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ic-data-table.cjs.entry.js +23 -26
  8. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-date-input.cjs.entry.js +1 -1
  10. package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-empty-state_2.cjs.entry.js +31 -5
  12. package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-navigation-button.cjs.entry.js +2 -2
  14. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
  16. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-toast.cjs.entry.js +2 -2
  18. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  19. package/dist/cjs/loader.cjs.js +1 -1
  20. package/dist/collection/components/ic-data-table/ic-data-table.js +42 -27
  21. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  22. package/dist/collection/components/ic-data-table/story-data.js +39 -4
  23. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  24. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js +4 -1
  25. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js.map +1 -1
  26. package/dist/collection/components/ic-date-input/ic-date-input.js +1 -1
  27. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
  28. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +50 -5
  29. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  30. package/dist/collection/utils/types.js.map +1 -1
  31. package/dist/components/helpers2.js.map +1 -1
  32. package/dist/components/ic-badge.js +25 -2
  33. package/dist/components/ic-badge.js.map +1 -1
  34. package/dist/components/ic-data-table.js +24 -26
  35. package/dist/components/ic-data-table.js.map +1 -1
  36. package/dist/components/ic-date-input2.js +1 -1
  37. package/dist/components/ic-date-input2.js.map +1 -1
  38. package/dist/components/ic-navigation-button.js +2 -2
  39. package/dist/components/ic-navigation-button.js.map +1 -1
  40. package/dist/components/ic-navigation-item.js +1 -1
  41. package/dist/components/ic-navigation-item.js.map +1 -1
  42. package/dist/components/ic-pagination-bar2.js +33 -5
  43. package/dist/components/ic-pagination-bar2.js.map +1 -1
  44. package/dist/components/ic-toast.js +2 -2
  45. package/dist/components/ic-toast.js.map +1 -1
  46. package/dist/components/ic-tooltip2.js.map +1 -1
  47. package/dist/core/core.esm.js +1 -1
  48. package/dist/core/core.esm.js.map +1 -1
  49. package/dist/core/{p-938a0ccc.entry.js → p-080ebc66.entry.js} +2 -2
  50. package/dist/core/{p-938a0ccc.entry.js.map → p-080ebc66.entry.js.map} +1 -1
  51. package/dist/core/p-20241d58.entry.js +2 -0
  52. package/dist/core/p-20241d58.entry.js.map +1 -0
  53. package/dist/core/p-4476d3b0.entry.js +2 -0
  54. package/dist/core/p-4476d3b0.entry.js.map +1 -0
  55. package/dist/core/p-8ab58daa.js.map +1 -1
  56. package/dist/core/p-95871655.entry.js.map +1 -1
  57. package/dist/core/p-9c80c37d.entry.js +2 -0
  58. package/dist/core/p-9c80c37d.entry.js.map +1 -0
  59. package/dist/core/{p-4f118361.entry.js → p-9cd73369.entry.js} +2 -2
  60. package/dist/core/p-9cd73369.entry.js.map +1 -0
  61. package/dist/core/p-b68d6867.entry.js +2 -0
  62. package/dist/core/p-b68d6867.entry.js.map +1 -0
  63. package/dist/core/{p-2b61d283.entry.js → p-f2bb3c93.entry.js} +2 -2
  64. package/dist/core/{p-2b61d283.entry.js.map → p-f2bb3c93.entry.js.map} +1 -1
  65. package/dist/esm/core.js +1 -1
  66. package/dist/esm/helpers-948df101.js.map +1 -1
  67. package/dist/esm/ic-badge.entry.js +23 -0
  68. package/dist/esm/ic-badge.entry.js.map +1 -1
  69. package/dist/esm/ic-button_3.entry.js.map +1 -1
  70. package/dist/esm/ic-data-table.entry.js +23 -26
  71. package/dist/esm/ic-data-table.entry.js.map +1 -1
  72. package/dist/esm/ic-date-input.entry.js +1 -1
  73. package/dist/esm/ic-date-input.entry.js.map +1 -1
  74. package/dist/esm/ic-empty-state_2.entry.js +31 -5
  75. package/dist/esm/ic-empty-state_2.entry.js.map +1 -1
  76. package/dist/esm/ic-navigation-button.entry.js +2 -2
  77. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  78. package/dist/esm/ic-navigation-item.entry.js +1 -1
  79. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  80. package/dist/esm/ic-toast.entry.js +2 -2
  81. package/dist/esm/ic-toast.entry.js.map +1 -1
  82. package/dist/esm/loader.js +1 -1
  83. package/dist/types/components/ic-data-table/ic-data-table.d.ts +4 -0
  84. package/dist/types/components/ic-data-table/story-data.d.ts +2 -1
  85. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +5 -0
  86. package/dist/types/components.d.ts +16 -0
  87. package/dist/types/utils/types.d.ts +10 -9
  88. package/hydrate/index.js +87 -39
  89. package/package.json +12 -3
  90. package/dist/core/p-3156304b.entry.js +0 -2
  91. package/dist/core/p-3156304b.entry.js.map +0 -1
  92. package/dist/core/p-4f118361.entry.js.map +0 -1
  93. package/dist/core/p-61ca218b.entry.js +0 -2
  94. package/dist/core/p-61ca218b.entry.js.map +0 -1
  95. package/dist/core/p-d9f8f96d.entry.js +0 -2
  96. package/dist/core/p-d9f8f96d.entry.js.map +0 -1
  97. package/dist/core/p-e7439c1e.entry.js +0 -2
  98. package/dist/core/p-e7439c1e.entry.js.map +0 -1
@@ -201,6 +201,7 @@ const DataTable = class {
201
201
  }
202
202
  this.truncate(typographyEl, cellContainer, tooltip);
203
203
  };
204
+ this.getTruncWrapper = (typographyEl) => typographyEl.shadowRoot.querySelector(".trunc-wrapper");
204
205
  this.removeTextWrap = () => {
205
206
  this.getTypographyElements().forEach((typographyEl) => {
206
207
  const tableCell = typographyEl.closest("td");
@@ -252,12 +253,9 @@ const DataTable = class {
252
253
  return pxToRem(`${height * this.DENSITY_HEIGHT_MULTIPLIER[this.density] -
253
254
  this.DENSITY_PADDING_HEIGHT_DIFF[this.density]}px`);
254
255
  };
255
- this.setTruncationClass = () => {
256
- if (this.truncationPattern) {
257
- return { [`truncation-${this.truncationPattern}`]: true };
258
- }
259
- return {};
260
- };
256
+ this.setTruncationClass = () => this.truncationPattern
257
+ ? { [`truncation-${this.truncationPattern}`]: true }
258
+ : {};
261
259
  this.getColumnWidth = (columnWidth) => {
262
260
  // TODO: Setting max width on columns
263
261
  let columnWidthStyling = {};
@@ -371,7 +369,7 @@ const DataTable = class {
371
369
  Object.keys(cell).includes("actionElement") ? (h("div", { class: "cell-grid-wrapper" }, this.createCellContent(columnProps, cell, cellSlotName, rowOptions, rowAlignment, hasIcon, currentRowHeight, cellValue, rowEmphasis), h("span", { class: "action-element", innerHTML: cellValue("actionElement"),
372
370
  // eslint-disable-next-line react/jsx-no-bind
373
371
  onClick: cell.actionOnClick
374
- ? () => this.handleClick(cell.actionOnClick)
372
+ ? (event) => this.handleClick(event, cell.actionOnClick)
375
373
  : undefined }))) : (this.createCellContent(columnProps, cell, cellSlotName, rowOptions, rowAlignment, hasIcon, currentRowHeight, cellValue, rowEmphasis))));
376
374
  }
377
375
  });
@@ -432,7 +430,9 @@ const DataTable = class {
432
430
  : row;
433
431
  });
434
432
  return organisedData
435
- .sort(!this.sortable ? undefined : this.getSortFunction())
433
+ .sort(!this.sortable || this.disableAutoSort
434
+ ? undefined
435
+ : this.getSortFunction())
436
436
  .map((row, index) => {
437
437
  return (h("tr", {
438
438
  // eslint-disable-next-line react/jsx-no-bind
@@ -443,9 +443,7 @@ const DataTable = class {
443
443
  }, this.createCells(row, index)));
444
444
  });
445
445
  };
446
- this.getObjectValue = (cell, key) => {
447
- return Object.values(cell)[Object.keys(cell).indexOf(key)];
448
- };
446
+ this.getObjectValue = (cell, key) => Object.values(cell)[Object.keys(cell).indexOf(key)];
449
447
  this.getSortButtonLabel = (key) => {
450
448
  let label = "";
451
449
  const getNextSortOption = (option) => {
@@ -622,7 +620,7 @@ const DataTable = class {
622
620
  }
623
621
  });
624
622
  };
625
- this.handleClick = (callback) => callback();
623
+ this.handleClick = (event, callback) => callback(event);
626
624
  this.renderTableBody = (data, loading, overlay) => {
627
625
  if (!(data === null || data === void 0 ? void 0 : data.length))
628
626
  return;
@@ -684,6 +682,7 @@ const DataTable = class {
684
682
  this.columnHeaderTruncation = false;
685
683
  this.columns = undefined;
686
684
  this.data = undefined;
685
+ this.disableAutoSort = false;
687
686
  this.density = "default";
688
687
  this.embedded = false;
689
688
  this.globalRowHeight = "auto";
@@ -696,22 +695,23 @@ const DataTable = class {
696
695
  this.minWidth = undefined;
697
696
  this.minimumLoadingDisplayDuration = 1000;
698
697
  this.paginationBarOptions = {
698
+ alignment: "right",
699
+ appearance: "default",
700
+ hideAllFromItemsPerPage: false,
701
+ hideRangeLabel: false,
702
+ itemLabel: "Item",
699
703
  itemsPerPageOptions: [
700
704
  { label: "10", value: "10" },
701
705
  { label: "25", value: "25" },
702
706
  { label: "50", value: "50" },
703
707
  ],
704
- rangeLabelType: "page",
705
- type: "simple",
706
- showItemsPerPageControl: true,
707
- showGoToPageControl: true,
708
- alignment: "right",
709
- appearance: "default",
710
- itemLabel: "Item",
711
708
  pageLabel: "Page",
712
- hideRangeLabel: false,
713
- hideAllFromItemsPerPage: false,
709
+ rangeLabelType: "page",
710
+ selectedItemsPerPage: 10,
714
711
  setToFirstPageOnPaginationChange: false,
712
+ showGoToPageControl: true,
713
+ showItemsPerPageControl: true,
714
+ type: "simple",
715
715
  };
716
716
  this.showPagination = false;
717
717
  this.sortable = false;
@@ -987,9 +987,6 @@ const DataTable = class {
987
987
  cellContainer.classList.add(this.SHOW_HIDE_CSS_CLASS);
988
988
  this.createShowHideTruncation(typographyEl, cellContainer);
989
989
  }
990
- getTruncWrapper(typographyEl) {
991
- return typographyEl.shadowRoot.querySelector(".trunc-wrapper");
992
- }
993
990
  // Set the height to initial if row height is set and the show / hide truncation
994
991
  // is clicked
995
992
  handleTypographyTruncationExpandToggle({ detail, }) {
@@ -1228,7 +1225,7 @@ const DataTable = class {
1228
1225
  }
1229
1226
  render() {
1230
1227
  var _a;
1231
- const { caption, createColumnHeaders, createUpdatingIndicator, data, hideColumnHeaders, loading, loadingOptions, paginationBarOptions, scrollable, scrollOffset, showPagination, sortable, sortedColumnOrder, sortedColumn, stickyColumnHeaders, updateScrollOffset, updating, } = this;
1228
+ const { caption, createColumnHeaders, createUpdatingIndicator, data, hideColumnHeaders, loading, loadingOptions, paginationBarOptions, scrollable, scrollOffset, showPagination, sortable, sortedColumn, sortedColumnOrder, stickyColumnHeaders, updateScrollOffset, updating, } = this;
1232
1229
  return (h(Host, { style: Object.assign({}, this.setTableDimensions()) }, h("div", { class: "table-container" }, isSlotUsed(this.el, "title-bar") && h("slot", { name: "title-bar" }), h("div", { class: {
1233
1230
  ["table-row-container"]: true,
1234
1231
  scrollable,
@@ -1239,7 +1236,7 @@ const DataTable = class {
1239
1236
  ["column-header-overlay"]: stickyColumnHeaders && scrollOffset !== 0,
1240
1237
  } }, h("tr", null, createColumnHeaders()))), updating &&
1241
1238
  !loading &&
1242
- (hideColumnHeaders ? (h("thead", null, createUpdatingIndicator())) : (createUpdatingIndicator())), this.renderTableBody(data, loading, loadingOptions.overlay)), this.renderEmptyState(data, loading, loadingOptions.overlay)), h("div", { "aria-live": "assertive", class: "sr-only" }, this.renderAriaLiveLoading()), this.renderLoadingIndicator(loading, loadingOptions), (showPagination || isSlotUsed(this.el, "pagination-bar")) && (h("div", { class: "pagination-container" }, isSlotUsed(this.el, "pagination-bar") ? (h("slot", { name: "pagination-bar" })) : (h("ic-pagination-bar", { totalItems: (_a = data === null || data === void 0 ? void 0 : data.length) !== null && _a !== void 0 ? _a : 0, type: paginationBarOptions.type, rangeLabelType: paginationBarOptions.rangeLabelType, showItemsPerPageControl: paginationBarOptions.showItemsPerPageControl, showGoToPageControl: paginationBarOptions.showGoToPageControl, itemsPerPageOptions: paginationBarOptions.itemsPerPageOptions, alignment: paginationBarOptions.alignment, appearance: paginationBarOptions.appearance, itemLabel: paginationBarOptions.itemLabel, pageLabel: paginationBarOptions.pageLabel, hideRangeLabel: paginationBarOptions.hideRangeLabel, hideAllFromItemsPerPage: paginationBarOptions.hideAllFromItemsPerPage, setToFirstPageOnPaginationChange: paginationBarOptions.setToFirstPageOnPaginationChange })))), sortable && (h("div", { class: "screen-reader-sort-text", "aria-live": "polite" }, sortedColumnOrder !== "unsorted" && sortedColumn
1239
+ (hideColumnHeaders ? (h("thead", null, createUpdatingIndicator())) : (createUpdatingIndicator())), this.renderTableBody(data, loading, loadingOptions.overlay)), this.renderEmptyState(data, loading, loadingOptions.overlay)), h("div", { "aria-live": "assertive", class: "sr-only" }, this.renderAriaLiveLoading()), this.renderLoadingIndicator(loading, loadingOptions), (showPagination || isSlotUsed(this.el, "pagination-bar")) && (h("div", { class: "pagination-container" }, isSlotUsed(this.el, "pagination-bar") ? (h("slot", { name: "pagination-bar" })) : (h("ic-pagination-bar", { alignment: paginationBarOptions.alignment, appearance: paginationBarOptions.appearance, hideAllFromItemsPerPage: paginationBarOptions.hideAllFromItemsPerPage, hideRangeLabel: paginationBarOptions.hideRangeLabel, itemLabel: paginationBarOptions.itemLabel, itemsPerPageOptions: paginationBarOptions.itemsPerPageOptions, pageLabel: paginationBarOptions.pageLabel, rangeLabelType: paginationBarOptions.rangeLabelType, selectedItemsPerPage: paginationBarOptions.selectedItemsPerPage, setToFirstPageOnPaginationChange: paginationBarOptions.setToFirstPageOnPaginationChange, showGoToPageControl: paginationBarOptions.showGoToPageControl, showItemsPerPageControl: paginationBarOptions.showItemsPerPageControl, totalItems: (_a = data === null || data === void 0 ? void 0 : data.length) !== null && _a !== void 0 ? _a : 0, type: paginationBarOptions.type })))), sortable && (h("div", { class: "screen-reader-sort-text", "aria-live": "polite" }, sortedColumnOrder !== "unsorted" && sortedColumn
1243
1240
  ? `${sortedColumn} sorted ${sortedColumnOrder}`
1244
1241
  : "table unsorted")))));
1245
1242
  }