@semcore/data-table 16.5.3-prerelease.4 → 16.6.0-prerelease.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.
Files changed (82) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/lib/cjs/components/AccordionRows/AccordionRows.js +51 -51
  3. package/lib/cjs/components/Body/Body.js +71 -88
  4. package/lib/cjs/components/Body/Body.js.map +1 -1
  5. package/lib/cjs/components/Body/Body.types.js.map +1 -1
  6. package/lib/cjs/components/Body/Cell.js +51 -51
  7. package/lib/cjs/components/Body/LimitOverlay.js +51 -51
  8. package/lib/cjs/components/Body/LimitOverlay.js.map +1 -1
  9. package/lib/cjs/components/Body/Row.js +130 -157
  10. package/lib/cjs/components/Body/Row.js.map +1 -1
  11. package/lib/cjs/components/Body/Row.types.js.map +1 -1
  12. package/lib/cjs/components/Body/RowGroup.js +147 -0
  13. package/lib/cjs/components/Body/RowGroup.js.map +1 -0
  14. package/lib/cjs/components/Body/style.shadow.css +13 -4
  15. package/lib/cjs/components/DataTable/DataTable.js +122 -102
  16. package/lib/cjs/components/DataTable/DataTable.js.map +1 -1
  17. package/lib/cjs/components/DataTable/DataTable.types.js.map +1 -1
  18. package/lib/cjs/components/Head/Column.js +50 -47
  19. package/lib/cjs/components/Head/Column.js.map +1 -1
  20. package/lib/cjs/components/Head/Group.js +36 -36
  21. package/lib/cjs/components/Head/Head.js +90 -57
  22. package/lib/cjs/components/Head/Head.js.map +1 -1
  23. package/lib/cjs/components/Head/Head.types.js.map +1 -1
  24. package/lib/cjs/components/RowSelector/RowsSelector.js +124 -0
  25. package/lib/cjs/components/RowSelector/RowsSelector.js.map +1 -0
  26. package/lib/cjs/index.js +7 -0
  27. package/lib/cjs/index.js.map +1 -1
  28. package/lib/cjs/store/SelectableRows.js +210 -0
  29. package/lib/cjs/store/SelectableRows.js.map +1 -0
  30. package/lib/es6/components/AccordionRows/AccordionRows.js +51 -51
  31. package/lib/es6/components/Body/Body.js +73 -90
  32. package/lib/es6/components/Body/Body.js.map +1 -1
  33. package/lib/es6/components/Body/Body.types.js.map +1 -1
  34. package/lib/es6/components/Body/Cell.js +51 -51
  35. package/lib/es6/components/Body/LimitOverlay.js +51 -51
  36. package/lib/es6/components/Body/LimitOverlay.js.map +1 -1
  37. package/lib/es6/components/Body/Row.js +131 -158
  38. package/lib/es6/components/Body/Row.js.map +1 -1
  39. package/lib/es6/components/Body/Row.types.js.map +1 -1
  40. package/lib/es6/components/Body/RowGroup.js +140 -0
  41. package/lib/es6/components/Body/RowGroup.js.map +1 -0
  42. package/lib/es6/components/Body/style.shadow.css +13 -4
  43. package/lib/es6/components/DataTable/DataTable.js +122 -102
  44. package/lib/es6/components/DataTable/DataTable.js.map +1 -1
  45. package/lib/es6/components/DataTable/DataTable.types.js.map +1 -1
  46. package/lib/es6/components/Head/Column.js +50 -47
  47. package/lib/es6/components/Head/Column.js.map +1 -1
  48. package/lib/es6/components/Head/Group.js +36 -36
  49. package/lib/es6/components/Head/Head.js +90 -57
  50. package/lib/es6/components/Head/Head.js.map +1 -1
  51. package/lib/es6/components/Head/Head.types.js.map +1 -1
  52. package/lib/es6/components/RowSelector/RowsSelector.js +117 -0
  53. package/lib/es6/components/RowSelector/RowsSelector.js.map +1 -0
  54. package/lib/es6/index.js +2 -1
  55. package/lib/es6/index.js.map +1 -1
  56. package/lib/es6/store/SelectableRows.js +203 -0
  57. package/lib/es6/store/SelectableRows.js.map +1 -0
  58. package/lib/esm/components/AccordionRows/AccordionRows.mjs +52 -52
  59. package/lib/esm/components/Body/Body.mjs +74 -90
  60. package/lib/esm/components/Body/Cell.mjs +52 -52
  61. package/lib/esm/components/Body/LimitOverlay.mjs +52 -52
  62. package/lib/esm/components/Body/Row.mjs +71 -91
  63. package/lib/esm/components/Body/RowGroup.mjs +133 -0
  64. package/lib/esm/components/Body/style.shadow.css +13 -4
  65. package/lib/esm/components/DataTable/DataTable.mjs +68 -47
  66. package/lib/esm/components/Head/Column.mjs +51 -48
  67. package/lib/esm/components/Head/Group.mjs +37 -37
  68. package/lib/esm/components/Head/Head.mjs +91 -56
  69. package/lib/esm/components/RowSelector/RowsSelector.mjs +98 -0
  70. package/lib/esm/index.mjs +2 -0
  71. package/lib/esm/store/SelectableRows.mjs +200 -0
  72. package/lib/types/components/Body/Body.types.d.ts +2 -1
  73. package/lib/types/components/Body/Row.d.ts +0 -2
  74. package/lib/types/components/Body/Row.types.d.ts +2 -1
  75. package/lib/types/components/Body/RowGroup.d.ts +19 -0
  76. package/lib/types/components/DataTable/DataTable.types.d.ts +21 -12
  77. package/lib/types/components/Head/Column.d.ts +1 -0
  78. package/lib/types/components/Head/Head.types.d.ts +2 -1
  79. package/lib/types/components/RowSelector/RowsSelector.d.ts +31 -0
  80. package/lib/types/index.d.ts +2 -1
  81. package/lib/types/store/SelectableRows.d.ts +51 -0
  82. package/package.json +8 -8
@@ -19,46 +19,47 @@ var _checkbox = _interopRequireDefault(require("@semcore/checkbox"));
19
19
  var _react = _interopRequireDefault(require("react"));
20
20
  var _Column = require("./Column");
21
21
  var _Group = require("./Group");
22
+ var _SelectableRows = require("../../store/SelectableRows");
22
23
  var _DataTable = require("../DataTable/DataTable");
23
24
  /*!__reshadow-styles__:"./style.shadow.css"*/
24
- var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SGroupContainer_1141v_gg_,.___SHead_1141v_gg_{display:contents}.___SHead_1141v_gg_.__isDataEmpty_1141v_gg_.__gridTemplateColumns_1141v_gg_{display:grid;grid-template-columns:var(--gridTemplateColumns_1141v);overflow:auto;scrollbar-width:thin}.___SHead_1141v_gg_.__animationDuration_1141v_gg_>.___SColumn_1141v_gg_{transition:top var(--animationDuration_1141v) ease-out}.___SHead_1141v_gg_.__sticky_1141v_gg_ .___SColumn_1141v_gg_,.___SHead_1141v_gg_.__sticky_1141v_gg_ .___SGroup_1141v_gg_{position:sticky;top:0;z-index:18}.___SHead_1141v_gg_.__sticky_1141v_gg_ .___SGroupContainer_1141v_gg_>.___SColumn_1141v_gg_{position:sticky;z-index:18}.___SHead_1141v_gg_.__compact_1141v_gg_ .___SColumn_1141v_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-2x, 8px)}.___SColumn_1141v_gg_,.___SGroup_1141v_gg_{display:flex;align-items:flex-start;font-size:var(--intergalactic-fs-100, 12px);color:var(--intergalactic-text-primary, #191b23);box-sizing:border-box;height:100%;position:relative;transition:width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out,min-width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out,max-width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out;overflow:hidden;line-height:var(--intergalactic-lh-100, 133%)}.___SGroup_1141v_gg_{justify-content:center;text-align:center;background-color:var(--intergalactic-table-th-primary-cell, #f4f5f9)}.___SGroup_1141v_gg_._use_primary_1141v_gg_{padding:var(--intergalactic-spacing-3x, 12px)}.___SGroup_1141v_gg_._use_primary_1141v_gg_:has(~.___SColumn_1141v_gg_.__visibleSort_1141v_gg_){background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}.___SGroup_1141v_gg_._use_secondary_1141v_gg_{padding:var(--intergalactic-spacing-2x, 8px)}.___SColumn_1141v_gg_._borders_both_1141v_gg_,.___SColumn_1141v_gg_._borders_left_1141v_gg_,.___SGroup_1141v_gg_._borders_both_1141v_gg_,.___SGroup_1141v_gg_._borders_left_1141v_gg_{border-left:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SColumn_1141v_gg_._borders_both_1141v_gg_,.___SColumn_1141v_gg_._borders_right_1141v_gg_,.___SGroup_1141v_gg_._borders_both_1141v_gg_,.___SGroup_1141v_gg_._borders_right_1141v_gg_{border-right:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SColumn_1141v_gg_._use_primary_1141v_gg_{padding:var(--intergalactic-spacing-3x, 12px);border-bottom:1px solid var(--intergalactic-border-secondary, #e0e1e9);background-color:var(--intergalactic-table-th-primary-cell, #f4f5f9)}.___SColumn_1141v_gg_._use_primary_1141v_gg_ .___SSortWrapper_1141v_gg_::before{background:linear-gradient(270deg,var(--intergalactic-table-th-primary-cell-hover, #e0e1e9) 67.5%,rgba(224,225,233,0) 105%)}.___SColumn_1141v_gg_._use_primary_1141v_gg_.__visibleSort_1141v_gg_{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}.___SColumn_1141v_gg_._use_primary_1141v_gg_.__visibleSort_1141v_gg_ .___SSortWrapper_1141v_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}.___SColumn_1141v_gg_._use_primary_1141v_gg_.__visibleSort_1141v_gg_ .___SSortButton_1141v_gg_,.___SColumn_1141v_gg_._use_primary_1141v_gg_.__visibleSort_1141v_gg_ .___SSortWrapper_1141v_gg_::before,.___SColumn_1141v_gg_._use_secondary_1141v_gg_.__visibleSort_1141v_gg_ .___SSortWrapper_1141v_gg_::before{display:flex;opacity:1}.___SColumn_1141v_gg_._use_primary_1141v_gg_._justifyContent_right_1141v_gg_ .___SSortWrapper_1141v_gg_{position:absolute}.___SColumn_1141v_gg_._use_primary_1141v_gg_._justifyContent_right_1141v_gg_.__changeSortSize_1141v_gg_.__isSorted_1141v_gg_ .___SSortWrapper_1141v_gg_,.___SColumn_1141v_gg_._use_secondary_1141v_gg_._justifyContent_right_1141v_gg_.__changeSortSize_1141v_gg_.__isSorted_1141v_gg_ .___SSortWrapper_1141v_gg_{position:relative}.___SColumn_1141v_gg_._use_secondary_1141v_gg_{padding:var(--intergalactic-spacing-2x, 8px);border-bottom:1px solid var(--intergalactic-border-table-accent, #a9abb6);background-color:var(--intergalactic-table-th-secondary-cell, #ffffff)}.___SColumn_1141v_gg_._use_secondary_1141v_gg_ .___SSortWrapper_1141v_gg_::before{background:linear-gradient(270deg,var(--intergalactic-table-th-secondary-cell, #ffffff) 67.5%,rgba(255,255,255,0) 105%)}.___SColumn_1141v_gg_._use_secondary_1141v_gg_.__visibleSort_1141v_gg_ .___SSortWrapper_1141v_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}.___SColumn_1141v_gg_._use_secondary_1141v_gg_.__visibleSort_1141v_gg_ .___SSortButton_1141v_gg_{display:flex;opacity:1}.___SColumn_1141v_gg_._use_secondary_1141v_gg_._justifyContent_right_1141v_gg_ .___SSortWrapper_1141v_gg_{position:absolute}.___SColumn_1141v_gg_.__gridArea_1141v_gg_,.___SGroupTitle_1141v_gg_.__gridArea_1141v_gg_,.___SGroup_1141v_gg_.__gridArea_1141v_gg_{grid-area:var(--gridArea_1141v)}.___SHead_1141v_gg_ .___SColumn_1141v_gg_.__fixed_1141v_gg_,.___SHead_1141v_gg_ .___SGroup_1141v_gg_.__fixed_1141v_gg_,.___SHead_1141v_gg_.__sticky_1141v_gg_ .___SColumn_1141v_gg_.__fixed_1141v_gg_{position:sticky;z-index:19}@media (hover:hover){.___SColumn_1141v_gg_.__sortable_1141v_gg_:hover{cursor:pointer}}.___SSortWrapper_1141v_gg_{align-items:center;display:flex;flex-shrink:1;position:relative;flex-basis:0;min-height:16px;opacity:0;transition:all calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out}.___SSortButton_1141v_gg_,.___SSortWrapper_1141v_gg_:before{display:none;position:absolute;right:0;opacity:0;transition:opacity .3s ease}.___SSortWrapper_1141v_gg_:before{content:\"\";top:0;width:20px;height:100%}.___SSortButton_1141v_gg_{fill:var(--intergalactic-icon-secondary-neutral-hover-active, #878992);top:calc(-1*(1em*1.25 - 16px));margin-left:var(--intergalactic-spacing-1x, 4px)}.___SHead_1141v_gg_._sideIndents_wide_1141v_gg_ .___SColumn_1141v_gg_:first-child{padding-left:var(--intergalactic-spacing-5x, 20px)}.___SHead_1141v_gg_._sideIndents_wide_1141v_gg_ .___SColumn_1141v_gg_:last-child{padding-right:var(--intergalactic-spacing-5x, 20px)}.___SHeadCheckboxCol_1141v_gg_{cursor:pointer}.___SColumn_1141v_gg_.__fixed_1141v_gg_.__shadowVertical_1141v_gg_:after,.___SGroup_1141v_gg_.__fixed_1141v_gg_.__shadowVertical_1141v_gg_:after{content:\"\";position:absolute;pointer-events:none;display:none;top:0;width:5px;height:100%;z-index:5}.___SColumn_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_median_1141v_gg_,.___SColumn_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_start_1141v_gg_,.___SGroup_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_median_1141v_gg_,.___SGroup_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_start_1141v_gg_{margin-right:-5px;border-right-color:transparent}.___SColumn_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_median_1141v_gg_._use_primary_1141v_gg_,.___SColumn_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_start_1141v_gg_._use_primary_1141v_gg_,.___SGroup_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_median_1141v_gg_._use_primary_1141v_gg_,.___SGroup_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_start_1141v_gg_._use_primary_1141v_gg_{padding-right:calc(var(--intergalactic-spacing-3x, 12px) + 5px)}.___SColumn_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_median_1141v_gg_._use_secondary_1141v_gg_,.___SColumn_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_start_1141v_gg_._use_secondary_1141v_gg_,.___SGroup_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_median_1141v_gg_._use_secondary_1141v_gg_,.___SGroup_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_start_1141v_gg_._use_secondary_1141v_gg_{padding-right:calc(var(--intergalactic-spacing-2x, 8px) + 5px)}.___SColumn_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_median_1141v_gg_:after,.___SColumn_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_start_1141v_gg_:after,.___SGroup_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_median_1141v_gg_:after,.___SGroup_1141v_gg_._fixed_left_1141v_gg_._shadowVertical_start_1141v_gg_:after{display:block;right:0;background:var(--intergalactic-scroll-area-shadow-left,\n linear-gradient(to right, rgba(25, 27, 35, 0.1) 20.55%, rgba(255, 255, 255, 0.0001) 100%))}.___SColumn_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_end_1141v_gg_,.___SColumn_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_median_1141v_gg_,.___SGroup_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_end_1141v_gg_,.___SGroup_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_median_1141v_gg_{margin-left:-5px;border-left-color:transparent}.___SColumn_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_end_1141v_gg_._use_primary_1141v_gg_,.___SColumn_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_median_1141v_gg_._use_primary_1141v_gg_,.___SGroup_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_end_1141v_gg_._use_primary_1141v_gg_,.___SGroup_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_median_1141v_gg_._use_primary_1141v_gg_{padding-left:calc(var(--intergalactic-spacing-3x, 12px) + 5px)}.___SColumn_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_end_1141v_gg_._use_secondary_1141v_gg_,.___SColumn_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_median_1141v_gg_._use_secondary_1141v_gg_,.___SGroup_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_end_1141v_gg_._use_secondary_1141v_gg_,.___SGroup_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_median_1141v_gg_._use_secondary_1141v_gg_{padding-left:calc(var(--intergalactic-spacing-2x, 8px) + 5px)}.___SColumn_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_end_1141v_gg_:after,.___SColumn_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_median_1141v_gg_:after,.___SGroup_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_end_1141v_gg_:after,.___SGroup_1141v_gg_._fixed_right_1141v_gg_._shadowVertical_median_1141v_gg_:after{display:block;left:0;background:var(--intergalactic-scroll-area-shadow-right,\n linear-gradient(to left, rgba(25, 27, 35, 0.1) 20.55%, rgba(255, 255, 255, 0.0001) 100%))}", /*__inner_css_end__*/"1141v_gg_"),
25
+ var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SGroupContainer_3t5eh_gg_,.___SHead_3t5eh_gg_{display:contents}.___SHead_3t5eh_gg_.__isDataEmpty_3t5eh_gg_.__gridTemplateColumns_3t5eh_gg_{display:grid;grid-template-columns:var(--gridTemplateColumns_3t5eh);overflow:auto;scrollbar-width:thin}.___SHead_3t5eh_gg_.__animationDuration_3t5eh_gg_>.___SColumn_3t5eh_gg_{transition:top var(--animationDuration_3t5eh) ease-out}.___SHead_3t5eh_gg_.__sticky_3t5eh_gg_ .___SColumn_3t5eh_gg_,.___SHead_3t5eh_gg_.__sticky_3t5eh_gg_ .___SGroup_3t5eh_gg_{position:sticky;top:0;z-index:18}.___SHead_3t5eh_gg_.__sticky_3t5eh_gg_ .___SGroupContainer_3t5eh_gg_>.___SColumn_3t5eh_gg_{position:sticky;z-index:18}.___SHead_3t5eh_gg_.__compact_3t5eh_gg_ .___SColumn_3t5eh_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-2x, 8px)}.___SColumn_3t5eh_gg_,.___SGroup_3t5eh_gg_{display:flex;align-items:flex-start;font-size:var(--intergalactic-fs-100, 12px);color:var(--intergalactic-text-primary, #191b23);box-sizing:border-box;height:100%;position:relative;transition:width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out,min-width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out,max-width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out;overflow:hidden;line-height:var(--intergalactic-lh-100, 133%)}.___SGroup_3t5eh_gg_{justify-content:center;text-align:center;background-color:var(--intergalactic-table-th-primary-cell, #f4f5f9)}.___SGroup_3t5eh_gg_._use_primary_3t5eh_gg_{padding:var(--intergalactic-spacing-3x, 12px)}.___SGroup_3t5eh_gg_._use_primary_3t5eh_gg_:has(~.___SColumn_3t5eh_gg_.__visibleSort_3t5eh_gg_){background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}.___SGroup_3t5eh_gg_._use_secondary_3t5eh_gg_{padding:var(--intergalactic-spacing-2x, 8px)}.___SColumn_3t5eh_gg_._borders_both_3t5eh_gg_,.___SColumn_3t5eh_gg_._borders_left_3t5eh_gg_,.___SGroup_3t5eh_gg_._borders_both_3t5eh_gg_,.___SGroup_3t5eh_gg_._borders_left_3t5eh_gg_{border-left:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SColumn_3t5eh_gg_._borders_both_3t5eh_gg_,.___SColumn_3t5eh_gg_._borders_right_3t5eh_gg_,.___SGroup_3t5eh_gg_._borders_both_3t5eh_gg_,.___SGroup_3t5eh_gg_._borders_right_3t5eh_gg_{border-right:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SColumn_3t5eh_gg_._use_primary_3t5eh_gg_{padding:var(--intergalactic-spacing-3x, 12px);border-bottom:1px solid var(--intergalactic-border-secondary, #e0e1e9);background-color:var(--intergalactic-table-th-primary-cell, #f4f5f9)}.___SColumn_3t5eh_gg_._use_primary_3t5eh_gg_ .___SSortWrapper_3t5eh_gg_::before{background:linear-gradient(270deg,var(--intergalactic-table-th-primary-cell-hover, #e0e1e9) 67.5%,rgba(224,225,233,0) 105%)}.___SColumn_3t5eh_gg_._use_primary_3t5eh_gg_.__visibleSort_3t5eh_gg_{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}.___SColumn_3t5eh_gg_._use_primary_3t5eh_gg_.__visibleSort_3t5eh_gg_ .___SSortWrapper_3t5eh_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}.___SColumn_3t5eh_gg_._use_primary_3t5eh_gg_.__visibleSort_3t5eh_gg_ .___SSortButton_3t5eh_gg_,.___SColumn_3t5eh_gg_._use_primary_3t5eh_gg_.__visibleSort_3t5eh_gg_ .___SSortWrapper_3t5eh_gg_::before,.___SColumn_3t5eh_gg_._use_secondary_3t5eh_gg_.__visibleSort_3t5eh_gg_ .___SSortWrapper_3t5eh_gg_::before{display:flex;opacity:1}.___SColumn_3t5eh_gg_._use_primary_3t5eh_gg_._justifyContent_right_3t5eh_gg_ .___SSortWrapper_3t5eh_gg_{position:absolute}.___SColumn_3t5eh_gg_._use_primary_3t5eh_gg_._justifyContent_right_3t5eh_gg_.__changeSortSize_3t5eh_gg_.__isSorted_3t5eh_gg_ .___SSortWrapper_3t5eh_gg_,.___SColumn_3t5eh_gg_._use_secondary_3t5eh_gg_._justifyContent_right_3t5eh_gg_.__changeSortSize_3t5eh_gg_.__isSorted_3t5eh_gg_ .___SSortWrapper_3t5eh_gg_{position:relative}.___SColumn_3t5eh_gg_._use_secondary_3t5eh_gg_{padding:var(--intergalactic-spacing-2x, 8px);border-bottom:1px solid var(--intergalactic-border-table-accent, #a9abb6);background-color:var(--intergalactic-table-th-secondary-cell, #ffffff)}.___SColumn_3t5eh_gg_._use_secondary_3t5eh_gg_ .___SSortWrapper_3t5eh_gg_::before{background:linear-gradient(270deg,var(--intergalactic-table-th-secondary-cell, #ffffff) 67.5%,rgba(255,255,255,0) 105%)}.___SColumn_3t5eh_gg_._use_secondary_3t5eh_gg_.__visibleSort_3t5eh_gg_ .___SSortWrapper_3t5eh_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}.___SColumn_3t5eh_gg_._use_secondary_3t5eh_gg_.__visibleSort_3t5eh_gg_ .___SSortButton_3t5eh_gg_{display:flex;opacity:1}.___SColumn_3t5eh_gg_._use_secondary_3t5eh_gg_._justifyContent_right_3t5eh_gg_ .___SSortWrapper_3t5eh_gg_{position:absolute}.___SColumn_3t5eh_gg_.__gridArea_3t5eh_gg_,.___SGroupTitle_3t5eh_gg_.__gridArea_3t5eh_gg_,.___SGroup_3t5eh_gg_.__gridArea_3t5eh_gg_{grid-area:var(--gridArea_3t5eh)}.___SHead_3t5eh_gg_ .___SColumn_3t5eh_gg_.__fixed_3t5eh_gg_,.___SHead_3t5eh_gg_ .___SGroup_3t5eh_gg_.__fixed_3t5eh_gg_,.___SHead_3t5eh_gg_.__sticky_3t5eh_gg_ .___SColumn_3t5eh_gg_.__fixed_3t5eh_gg_{position:sticky;z-index:19}@media (hover:hover){.___SColumn_3t5eh_gg_.__sortable_3t5eh_gg_:hover{cursor:pointer}}.___SSortWrapper_3t5eh_gg_{align-items:center;display:flex;flex-shrink:1;position:relative;flex-basis:0;min-height:16px;opacity:0;transition:all calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out}.___SSortButton_3t5eh_gg_,.___SSortWrapper_3t5eh_gg_:before{display:none;position:absolute;right:0;opacity:0;transition:opacity .3s ease}.___SSortWrapper_3t5eh_gg_:before{content:\"\";top:0;width:20px;height:100%}.___SSortButton_3t5eh_gg_{fill:var(--intergalactic-icon-secondary-neutral-hover-active, #878992);top:calc(-1*(1em*1.25 - 16px));margin-left:var(--intergalactic-spacing-1x, 4px)}.___SHead_3t5eh_gg_._sideIndents_wide_3t5eh_gg_ .___SColumn_3t5eh_gg_:first-child{padding-left:var(--intergalactic-spacing-5x, 20px)}.___SHead_3t5eh_gg_._sideIndents_wide_3t5eh_gg_ .___SColumn_3t5eh_gg_:last-child{padding-right:var(--intergalactic-spacing-5x, 20px)}.___SHeadCheckboxCol_3t5eh_gg_{cursor:pointer}.___SColumn_3t5eh_gg_.__fixed_3t5eh_gg_.__shadowVertical_3t5eh_gg_:after,.___SGroup_3t5eh_gg_.__fixed_3t5eh_gg_.__shadowVertical_3t5eh_gg_:after{content:\"\";position:absolute;pointer-events:none;display:none;top:0;width:5px;height:100%;z-index:5}.___SColumn_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_median_3t5eh_gg_,.___SColumn_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_start_3t5eh_gg_,.___SGroup_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_median_3t5eh_gg_,.___SGroup_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_start_3t5eh_gg_{margin-right:-5px;border-right-color:transparent}.___SColumn_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_median_3t5eh_gg_._use_primary_3t5eh_gg_,.___SColumn_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_start_3t5eh_gg_._use_primary_3t5eh_gg_,.___SGroup_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_median_3t5eh_gg_._use_primary_3t5eh_gg_,.___SGroup_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_start_3t5eh_gg_._use_primary_3t5eh_gg_{padding-right:calc(var(--intergalactic-spacing-3x, 12px) + 5px)}.___SColumn_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_median_3t5eh_gg_._use_secondary_3t5eh_gg_,.___SColumn_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_start_3t5eh_gg_._use_secondary_3t5eh_gg_,.___SGroup_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_median_3t5eh_gg_._use_secondary_3t5eh_gg_,.___SGroup_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_start_3t5eh_gg_._use_secondary_3t5eh_gg_{padding-right:calc(var(--intergalactic-spacing-2x, 8px) + 5px)}.___SColumn_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_median_3t5eh_gg_:after,.___SColumn_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_start_3t5eh_gg_:after,.___SGroup_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_median_3t5eh_gg_:after,.___SGroup_3t5eh_gg_._fixed_left_3t5eh_gg_._shadowVertical_start_3t5eh_gg_:after{display:block;right:0;background:var(--intergalactic-scroll-area-shadow-left,\n linear-gradient(to right, rgba(25, 27, 35, 0.1) 20.55%, rgba(255, 255, 255, 0.0001) 100%))}.___SColumn_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_end_3t5eh_gg_,.___SColumn_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_median_3t5eh_gg_,.___SGroup_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_end_3t5eh_gg_,.___SGroup_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_median_3t5eh_gg_{margin-left:-5px;border-left-color:transparent}.___SColumn_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_end_3t5eh_gg_._use_primary_3t5eh_gg_,.___SColumn_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_median_3t5eh_gg_._use_primary_3t5eh_gg_,.___SGroup_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_end_3t5eh_gg_._use_primary_3t5eh_gg_,.___SGroup_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_median_3t5eh_gg_._use_primary_3t5eh_gg_{padding-left:calc(var(--intergalactic-spacing-3x, 12px) + 5px)}.___SColumn_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_end_3t5eh_gg_._use_secondary_3t5eh_gg_,.___SColumn_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_median_3t5eh_gg_._use_secondary_3t5eh_gg_,.___SGroup_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_end_3t5eh_gg_._use_secondary_3t5eh_gg_,.___SGroup_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_median_3t5eh_gg_._use_secondary_3t5eh_gg_{padding-left:calc(var(--intergalactic-spacing-2x, 8px) + 5px)}.___SColumn_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_end_3t5eh_gg_:after,.___SColumn_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_median_3t5eh_gg_:after,.___SGroup_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_end_3t5eh_gg_:after,.___SGroup_3t5eh_gg_._fixed_right_3t5eh_gg_._shadowVertical_median_3t5eh_gg_:after{display:block;left:0;background:var(--intergalactic-scroll-area-shadow-right,\n linear-gradient(to left, rgba(25, 27, 35, 0.1) 20.55%, rgba(255, 255, 255, 0.0001) 100%))}", /*__inner_css_end__*/"3t5eh_gg_"),
25
26
  /*__reshadow_css_end__*/
26
27
  {
27
- "__SHead": "___SHead_1141v_gg_",
28
- "__SGroupContainer": "___SGroupContainer_1141v_gg_",
29
- "_isDataEmpty": "__isDataEmpty_1141v_gg_",
30
- "_gridTemplateColumns": "__gridTemplateColumns_1141v_gg_",
31
- "--gridTemplateColumns": "--gridTemplateColumns_1141v",
32
- "_animationDuration": "__animationDuration_1141v_gg_",
33
- "__SColumn": "___SColumn_1141v_gg_",
34
- "--animationDuration": "--animationDuration_1141v",
35
- "_sticky": "__sticky_1141v_gg_",
36
- "__SGroup": "___SGroup_1141v_gg_",
37
- "_compact": "__compact_1141v_gg_",
38
- "_use_secondary": "_use_secondary_1141v_gg_",
39
- "_borders_both": "_borders_both_1141v_gg_",
40
- "_borders_left": "_borders_left_1141v_gg_",
41
- "_borders_right": "_borders_right_1141v_gg_",
42
- "_gridArea": "__gridArea_1141v_gg_",
43
- "__SGroupTitle": "___SGroupTitle_1141v_gg_",
44
- "--gridArea": "--gridArea_1141v",
45
- "_fixed": "__fixed_1141v_gg_",
46
- "_sortable": "__sortable_1141v_gg_",
47
- "__SSortWrapper": "___SSortWrapper_1141v_gg_",
48
- "__SSortButton": "___SSortButton_1141v_gg_",
49
- "__SHeadCheckboxCol": "___SHeadCheckboxCol_1141v_gg_",
50
- "_use_primary": "_use_primary_1141v_gg_",
51
- "_visibleSort": "__visibleSort_1141v_gg_",
52
- "_justifyContent_right": "_justifyContent_right_1141v_gg_",
53
- "_changeSortSize": "__changeSortSize_1141v_gg_",
54
- "_isSorted": "__isSorted_1141v_gg_",
55
- "_sideIndents_wide": "_sideIndents_wide_1141v_gg_",
56
- "_shadowVertical": "__shadowVertical_1141v_gg_",
57
- "_fixed_left": "_fixed_left_1141v_gg_",
58
- "_shadowVertical_median": "_shadowVertical_median_1141v_gg_",
59
- "_shadowVertical_start": "_shadowVertical_start_1141v_gg_",
60
- "_fixed_right": "_fixed_right_1141v_gg_",
61
- "_shadowVertical_end": "_shadowVertical_end_1141v_gg_"
28
+ "__SHead": "___SHead_3t5eh_gg_",
29
+ "__SGroupContainer": "___SGroupContainer_3t5eh_gg_",
30
+ "_isDataEmpty": "__isDataEmpty_3t5eh_gg_",
31
+ "_gridTemplateColumns": "__gridTemplateColumns_3t5eh_gg_",
32
+ "--gridTemplateColumns": "--gridTemplateColumns_3t5eh",
33
+ "_animationDuration": "__animationDuration_3t5eh_gg_",
34
+ "__SColumn": "___SColumn_3t5eh_gg_",
35
+ "--animationDuration": "--animationDuration_3t5eh",
36
+ "_sticky": "__sticky_3t5eh_gg_",
37
+ "__SGroup": "___SGroup_3t5eh_gg_",
38
+ "_compact": "__compact_3t5eh_gg_",
39
+ "_use_secondary": "_use_secondary_3t5eh_gg_",
40
+ "_borders_both": "_borders_both_3t5eh_gg_",
41
+ "_borders_left": "_borders_left_3t5eh_gg_",
42
+ "_borders_right": "_borders_right_3t5eh_gg_",
43
+ "_gridArea": "__gridArea_3t5eh_gg_",
44
+ "__SGroupTitle": "___SGroupTitle_3t5eh_gg_",
45
+ "--gridArea": "--gridArea_3t5eh",
46
+ "_fixed": "__fixed_3t5eh_gg_",
47
+ "_sortable": "__sortable_3t5eh_gg_",
48
+ "__SSortWrapper": "___SSortWrapper_3t5eh_gg_",
49
+ "__SSortButton": "___SSortButton_3t5eh_gg_",
50
+ "__SHeadCheckboxCol": "___SHeadCheckboxCol_3t5eh_gg_",
51
+ "_use_primary": "_use_primary_3t5eh_gg_",
52
+ "_visibleSort": "__visibleSort_3t5eh_gg_",
53
+ "_justifyContent_right": "_justifyContent_right_3t5eh_gg_",
54
+ "_changeSortSize": "__changeSortSize_3t5eh_gg_",
55
+ "_isSorted": "__isSorted_3t5eh_gg_",
56
+ "_sideIndents_wide": "_sideIndents_wide_3t5eh_gg_",
57
+ "_shadowVertical": "__shadowVertical_3t5eh_gg_",
58
+ "_fixed_left": "_fixed_left_3t5eh_gg_",
59
+ "_shadowVertical_median": "_shadowVertical_median_3t5eh_gg_",
60
+ "_shadowVertical_start": "_shadowVertical_start_3t5eh_gg_",
61
+ "_fixed_right": "_fixed_right_3t5eh_gg_",
62
+ "_shadowVertical_end": "_shadowVertical_end_3t5eh_gg_"
62
63
  });
63
64
  var HeadRoot = /*#__PURE__*/function (_Component) {
64
65
  function HeadRoot() {
@@ -68,21 +69,29 @@ var HeadRoot = /*#__PURE__*/function (_Component) {
68
69
  args[_key] = arguments[_key];
69
70
  }
70
71
  _this = (0, _callSuper2["default"])(this, HeadRoot, [].concat(args));
72
+ (0, _defineProperty2["default"])(_this, "unsubscribeSelectAll", undefined);
71
73
  (0, _defineProperty2["default"])(_this, "handleSelectAll", function (value, event) {
72
- var _this$asProps$onChang, _this$asProps;
73
- var _this$asProps$selecte = _this.asProps.selectedRows,
74
- selectedRows = _this$asProps$selecte === void 0 ? [] : _this$asProps$selecte;
75
- var idsSet = new Set(selectedRows);
76
- if (value) {
77
- _this.selectableRows.forEach(function (row) {
78
- idsSet.add(row[_DataTable.UNIQ_ROW_KEY]);
79
- });
80
- } else {
81
- _this.selectableRows.forEach(function (row) {
82
- idsSet["delete"](row[_DataTable.UNIQ_ROW_KEY]);
83
- });
74
+ var selectedRows = _this.asProps.selectedRows;
75
+ if (Array.isArray(selectedRows)) {
76
+ var _this$asProps$onChang, _this$asProps;
77
+ var idsSet = new Set(selectedRows);
78
+ if (value) {
79
+ _this.selectableRows.forEach(function (row) {
80
+ idsSet.add(row[_DataTable.UNIQ_ROW_KEY]);
81
+ });
82
+ } else {
83
+ _this.selectableRows.forEach(function (row) {
84
+ idsSet["delete"](row[_DataTable.UNIQ_ROW_KEY]);
85
+ });
86
+ }
87
+ (_this$asProps$onChang = (_this$asProps = _this.asProps).onChangeSelectAll) === null || _this$asProps$onChang === void 0 || _this$asProps$onChang.call(_this$asProps, Array.from(idsSet), event);
88
+ } else if (selectedRows) {
89
+ if (value) {
90
+ selectedRows.selectAll();
91
+ } else {
92
+ selectedRows.clearAllAvailable();
93
+ }
84
94
  }
85
- (_this$asProps$onChang = (_this$asProps = _this.asProps).onChangeSelectAll) === null || _this$asProps$onChang === void 0 || _this$asProps$onChang.call(_this$asProps, Array.from(idsSet), event);
86
95
  });
87
96
  (0, _defineProperty2["default"])(_this, "handleClickSelectAll", function (value) {
88
97
  return function (event) {
@@ -95,6 +104,23 @@ var HeadRoot = /*#__PURE__*/function (_Component) {
95
104
  }
96
105
  (0, _inherits2["default"])(HeadRoot, _Component);
97
106
  return (0, _createClass2["default"])(HeadRoot, [{
107
+ key: "componentDidMount",
108
+ value: function componentDidMount() {
109
+ var _this2 = this;
110
+ var selectedRows = this.asProps.selectedRows;
111
+ if (selectedRows && !Array.isArray(selectedRows)) {
112
+ this.unsubscribeSelectAll = selectedRows.subscribe(_SelectableRows.SelectableRows.SELECT_ALL_EVENT, function () {
113
+ _this2.forceUpdate();
114
+ });
115
+ }
116
+ }
117
+ }, {
118
+ key: "componentWillUnmount",
119
+ value: function componentWillUnmount() {
120
+ var _this$unsubscribeSele;
121
+ (_this$unsubscribeSele = this.unsubscribeSelectAll) === null || _this$unsubscribeSele === void 0 || _this$unsubscribeSele.call(this);
122
+ }
123
+ }, {
98
124
  key: "sortableColumnDescribeId",
99
125
  value: function sortableColumnDescribeId() {
100
126
  var uid = this.asProps.uid;
@@ -213,19 +239,26 @@ var HeadRoot = /*#__PURE__*/function (_Component) {
213
239
  }, {
214
240
  key: "areAllRowsSelected",
215
241
  get: function get() {
216
- var _this$asProps$selecte2 = this.asProps.selectedRows,
217
- selectedRows = _this$asProps$selecte2 === void 0 ? [] : _this$asProps$selecte2;
218
- return selectedRows.length > 0 && this.selectableRows.every(function (row) {
219
- return selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.includes(row[_DataTable.UNIQ_ROW_KEY]);
220
- });
242
+ var selectedRows = this.asProps.selectedRows;
243
+ if (Array.isArray(selectedRows)) {
244
+ return selectedRows.length > 0 && this.selectableRows.every(function (row) {
245
+ return selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.includes(row[_DataTable.UNIQ_ROW_KEY]);
246
+ });
247
+ } else if (selectedRows) {
248
+ return selectedRows.isAllSelected();
249
+ }
221
250
  }
222
251
  }, {
223
252
  key: "isIndeterminate",
224
253
  get: function get() {
225
254
  var selectedRows = this.asProps.selectedRows;
226
- return this.selectableRows.some(function (row) {
227
- return selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.includes(row[_DataTable.UNIQ_ROW_KEY]);
228
- });
255
+ if (Array.isArray(selectedRows)) {
256
+ return this.selectableRows.some(function (row) {
257
+ return selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.includes(row[_DataTable.UNIQ_ROW_KEY]);
258
+ });
259
+ } else if (selectedRows) {
260
+ return selectedRows.isIndeterminate();
261
+ }
229
262
  }
230
263
  }, {
231
264
  key: "selectableRows",
@@ -1 +1 @@
1
- {"version":3,"file":"Head.js","names":["_core","require","_baseComponents","_checkbox","_interopRequireDefault","_react","_Column","_Group","_DataTable","style","sstyled","insert","HeadRoot","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","value","event","_this$asProps$onChang","_this$asProps","_this$asProps$selecte","asProps","selectedRows","idsSet","Set","selectableRows","forEach","row","add","UNIQ_ROW_KEY","onChangeSelectAll","call","from","preventDefault","stopPropagation","handleSelectAll","_inherits2","_createClass2","key","sortableColumnDescribeId","uid","getGroupProps","props","index","fixed","columns","_this$asProps2","use","gridAreaGroupMap","children","getFixedStyle","shadowVertical","top","scrollDirection","groupColumns","firstColumn","lastColumn","_getFixedStyle","name","_getFixedStyle2","_slicedToArray2","undefined","_getFixedStyle3","_getFixedStyle4","gridArea","get","withConfig","showShadowVertical","getColumnProps","_","_this$asProps3","sort","onSortChange","tableRef","gridTemplateColumns","gridTemplateAreas","sticky","h","onCellClick","column","_getFixedStyle5","_getFixedStyle6","borders","parent","_this$asProps$selecte2","every","includes","some","_this$asProps4","flatRows","mappedFlatRows","filter","r","_columns$","nextColumnName","render","_ref","_ref2","SHead","Box","SHeadCheckboxCol","Head","Column","_this$asProps5","Children","styles","getI18nText","treeColumns","animationDuration","isDataEmpty","areAllRowsSelected","indeterminate","isIndeterminate","createElement","Fragment","cn","_objectSpread2","assignProps","join","SELECT_ALL","toString","handleClickSelectAll","Value","Control","CheckMark","mt","map","_i","_column$columns","columnsName","c","DataTable","Group","_extends2","title","ScreenReaderOnly","Component","exports","createComponent"],"sources":["../../../../src/components/Head/Head.tsx"],"sourcesContent":["import { Box, ScreenReaderOnly } from '@semcore/base-components';\nimport Checkbox from '@semcore/checkbox';\nimport { Component, createComponent, type Intergalactic, Root, sstyled } from '@semcore/core';\nimport type Tooltip from '@semcore/tooltip';\nimport React from 'react';\n\nimport { Column } from './Column';\nimport type { DataTableColumnProps } from './Column.types';\nimport { Group } from './Group';\nimport type { DataTableGroupProps } from './Group.type';\nimport type { DataTableHeadProps, HeadPropsInner } from './Head.types';\nimport style from './style.shadow.css';\nimport type { DTRow } from '../Body/Row.types';\nimport { DataTable, type ROW_GROUP, SELECT_ALL, UNIQ_ROW_KEY } from '../DataTable/DataTable';\nimport type { DataTableData } from '../DataTable/DataTable.types';\n\nclass HeadRoot<\n Data extends DataTableData,\n UniqKey extends (Data[number] extends { [ROW_GROUP]: DataTableData } ? keyof Data[number][typeof ROW_GROUP][number] : keyof Data[number]),\n UniqKeyType extends (Data[number] extends { [ROW_GROUP]: DataTableData } ? Data[number][typeof ROW_GROUP][number][UniqKey] : Data[number][UniqKey]),\n> extends Component<\n DataTableHeadProps,\n {},\n {},\n [],\n HeadPropsInner<Data, UniqKey, UniqKeyType>\n > {\n static displayName = 'Head';\n static style = style;\n\n sortableColumnDescribeId() {\n const { uid } = this.asProps;\n return `${uid}-column-sortable-describer`;\n }\n\n getGroupProps(props: any, index: number) {\n const { fixed, columns } = props;\n const { use, gridAreaGroupMap, children, getFixedStyle, shadowVertical, top, scrollDirection } = this.asProps;\n const groupColumns = columns ?? [];\n\n const firstColumn = groupColumns[0];\n const lastColumn = groupColumns[groupColumns.length - 1];\n\n const style: any = {};\n\n if (fixed === 'left' && firstColumn) {\n const [name, value] = getFixedStyle({ name: firstColumn.name, fixed: 'left' });\n if (name !== undefined && value !== undefined) {\n style[name] = value;\n }\n }\n if (fixed === 'right' && lastColumn) {\n const [name, value] = getFixedStyle({ name: lastColumn.name, fixed: 'right' });\n if (name !== undefined && value !== undefined) {\n style[name] = value;\n }\n }\n if (top && scrollDirection !== 'horizontal') {\n style.top = `${top}px`;\n }\n\n return {\n use,\n gridArea: gridAreaGroupMap.get(index),\n withConfig: children === undefined,\n getFixedStyle,\n shadowVertical: (firstColumn.showShadowVertical || lastColumn.showShadowVertical) ? shadowVertical : undefined,\n style,\n scrollDirection,\n };\n }\n\n getColumnProps(_: any, index: number) {\n const {\n use,\n columns,\n sort,\n onSortChange,\n tableRef,\n gridTemplateColumns,\n gridTemplateAreas,\n sticky,\n top,\n selectedRows,\n h,\n getFixedStyle,\n onCellClick,\n shadowVertical,\n scrollDirection,\n } = this.asProps;\n const column = columns[index];\n\n if (index === 0 && selectedRows && columns[index + 1].fixed) {\n column.fixed = 'left';\n }\n\n const [name, value] = getFixedStyle(column);\n const style: any = {};\n\n if (top && scrollDirection !== 'horizontal') {\n style.top = `${top}px`;\n }\n\n if (name !== undefined && value !== undefined) {\n style[name] = value;\n }\n\n return {\n use,\n 'aria-colindex': index + 1,\n style,\n 'gridArea': column.gridArea,\n 'fixed': column.fixed,\n sticky,\n 'borders': column.borders,\n sort,\n onSortChange,\n 'parent': column.parent,\n 'sortableColumnDescribeId': this.sortableColumnDescribeId(),\n 'columnIndex': index,\n tableRef,\n gridTemplateColumns,\n gridTemplateAreas,\n h,\n 'onClick': onCellClick,\n 'shadowVertical': column.showShadowVertical ? shadowVertical : undefined,\n scrollDirection,\n };\n }\n\n handleSelectAll = (value: boolean, event?: React.SyntheticEvent<HTMLElement>) => {\n const { selectedRows = [] } = this.asProps;\n const idsSet = new Set<UniqKeyType>(selectedRows);\n\n if (value) {\n this.selectableRows.forEach((row) => {\n idsSet.add(row[UNIQ_ROW_KEY]);\n });\n } else {\n this.selectableRows.forEach((row) => {\n idsSet.delete(row[UNIQ_ROW_KEY]);\n });\n }\n\n this.asProps.onChangeSelectAll?.(Array.from(idsSet), event);\n };\n\n handleClickSelectAll = (value: boolean) => (event?: React.SyntheticEvent<HTMLElement>) => {\n event?.preventDefault();\n event?.stopPropagation();\n\n this.handleSelectAll(value, event);\n };\n\n get areAllRowsSelected() {\n const { selectedRows = [] } = this.asProps;\n\n return selectedRows.length > 0 && this.selectableRows.every((row) => selectedRows?.includes(row[UNIQ_ROW_KEY]));\n }\n\n get isIndeterminate() {\n const { selectedRows } = this.asProps;\n\n return this.selectableRows.some((row) => selectedRows?.includes(row[UNIQ_ROW_KEY]));\n }\n\n get selectableRows(): DTRow<UniqKeyType>[] {\n const { columns, flatRows } = this.asProps;\n const mappedFlatRows = flatRows\n .filter((r) => {\n const nextColumnName = columns[1]?.name;\n return r[nextColumnName] !== undefined;\n });\n\n return mappedFlatRows;\n }\n\n render() {\n const SHead = Root;\n const SHeadCheckboxCol = Head.Column;\n const { Children, styles, getI18nText, children, treeColumns, selectedRows, sticky, animationDuration, isDataEmpty, gridTemplateColumns } = this.asProps;\n\n const areAllRowsSelected = this.areAllRowsSelected;\n const indeterminate = this.isIndeterminate && !areAllRowsSelected;\n\n return sstyled(styles)(\n <>\n <SHead\n render={Box}\n role='row'\n aria-rowindex={1}\n sticky={sticky}\n use:animationDuration={animationDuration ? `${animationDuration}ms` : undefined}\n isDataEmpty={isDataEmpty}\n use:gridTemplateColumns={gridTemplateColumns.join(' ')}\n tabIndex={isDataEmpty ? 0 : undefined}\n >\n {selectedRows && (\n <SHeadCheckboxCol\n name={SELECT_ALL.toString()}\n onClick={this.handleClickSelectAll(!areAllRowsSelected)}\n >\n <Checkbox\n checked={areAllRowsSelected}\n indeterminate={indeterminate}\n aria-label={getI18nText('DataTable.Header.selectAllCheckbox:aria-label')}\n onChange={this.handleSelectAll}\n >\n <Checkbox.Value>\n <Checkbox.Value.Control />\n <Checkbox.Value.CheckMark mt={0} />\n </Checkbox.Value>\n </Checkbox>\n </SHeadCheckboxCol>\n )}\n\n {children\n ? (\n <Children />\n )\n : (\n <>\n {treeColumns.map((column, _i) => {\n if ('columns' in column) {\n const columnsName = column.columns?.map((c) => c.name).join('/');\n return (\n <DataTable.Head.Group\n key={columnsName}\n {...column}\n name={columnsName}\n title=''\n />\n );\n }\n\n return <DataTable.Head.Column key={column.name} {...column} />;\n })}\n </>\n )}\n </SHead>\n\n <ScreenReaderOnly aria-hidden={true} id={this.sortableColumnDescribeId()}>\n {getI18nText('sortableColumn')}\n </ScreenReaderOnly>\n </>,\n );\n }\n}\n\nexport const Head = createComponent(HeadRoot, { Column, Group }) as Intergalactic.Component<\n 'div',\n DataTableHeadProps\n> & {\n Column: <Tag extends 'div' | typeof Tooltip = 'div'>(\n props: Intergalactic.InternalTypings.ComponentProps<Tag, 'div', DataTableColumnProps, {}, []>,\n ) => Intergalactic.InternalTypings.ComponentRenderingResults;\n Group: <Tag extends 'div' | typeof Tooltip = 'div'>(\n props: Intergalactic.InternalTypings.ComponentProps<Tag, 'div', DataTableGroupProps, {}, []>,\n ) => Intergalactic.InternalTypings.ComponentRenderingResults;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Head.js","names":["_core","require","_baseComponents","_checkbox","_interopRequireDefault","_react","_Column","_Group","_SelectableRows","_DataTable","style","sstyled","insert","HeadRoot","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","undefined","value","event","selectedRows","asProps","isArray","_this$asProps$onChang","_this$asProps","idsSet","Set","selectableRows","forEach","row","add","UNIQ_ROW_KEY","onChangeSelectAll","call","from","selectAll","clearAllAvailable","preventDefault","stopPropagation","handleSelectAll","_inherits2","_createClass2","key","componentDidMount","_this2","unsubscribeSelectAll","subscribe","SelectableRows","SELECT_ALL_EVENT","forceUpdate","componentWillUnmount","_this$unsubscribeSele","sortableColumnDescribeId","uid","getGroupProps","props","index","fixed","columns","_this$asProps2","use","gridAreaGroupMap","children","getFixedStyle","shadowVertical","top","scrollDirection","groupColumns","firstColumn","lastColumn","_getFixedStyle","name","_getFixedStyle2","_slicedToArray2","_getFixedStyle3","_getFixedStyle4","gridArea","get","withConfig","showShadowVertical","getColumnProps","_","_this$asProps3","sort","onSortChange","tableRef","gridTemplateColumns","gridTemplateAreas","sticky","h","onCellClick","column","_getFixedStyle5","_getFixedStyle6","borders","parent","every","includes","isAllSelected","some","isIndeterminate","_this$asProps4","flatRows","mappedFlatRows","filter","r","_columns$","nextColumnName","render","_ref","_ref2","SHead","Box","SHeadCheckboxCol","Head","Column","_this$asProps5","Children","styles","getI18nText","treeColumns","animationDuration","isDataEmpty","areAllRowsSelected","indeterminate","createElement","Fragment","cn","_objectSpread2","assignProps","join","SELECT_ALL","toString","handleClickSelectAll","Value","Control","CheckMark","mt","map","_i","_column$columns","columnsName","c","DataTable","Group","_extends2","title","ScreenReaderOnly","Component","exports","createComponent"],"sources":["../../../../src/components/Head/Head.tsx"],"sourcesContent":["import { Box, ScreenReaderOnly } from '@semcore/base-components';\nimport Checkbox from '@semcore/checkbox';\nimport { Component, createComponent, type Intergalactic, Root, sstyled } from '@semcore/core';\nimport type Tooltip from '@semcore/tooltip';\nimport React from 'react';\n\nimport { Column } from './Column';\nimport type { DataTableColumnProps } from './Column.types';\nimport { Group } from './Group';\nimport type { DataTableGroupProps } from './Group.type';\nimport type { DataTableHeadProps, HeadPropsInner } from './Head.types';\nimport style from './style.shadow.css';\nimport { SelectableRows } from '../../store/SelectableRows';\nimport type { DTRow } from '../Body/Row.types';\nimport { DataTable, type ROW_GROUP, SELECT_ALL, UNIQ_ROW_KEY } from '../DataTable/DataTable';\nimport type { DataTableData } from '../DataTable/DataTable.types';\n\nclass HeadRoot<\n Data extends DataTableData,\n UniqKey extends (Data[number] extends { [ROW_GROUP]: DataTableData } ? keyof Data[number][typeof ROW_GROUP][number] : keyof Data[number]),\n UniqKeyType extends (Data[number] extends { [ROW_GROUP]: DataTableData } ? Data[number][typeof ROW_GROUP][number][UniqKey] : Data[number][UniqKey]),\n> extends Component<\n DataTableHeadProps,\n {},\n {},\n [],\n HeadPropsInner<Data, UniqKey, UniqKeyType>\n > {\n static displayName = 'Head';\n static style = style;\n\n private unsubscribeSelectAll: undefined | (() => void) = undefined;\n\n componentDidMount() {\n const { selectedRows } = this.asProps;\n\n if (selectedRows && !Array.isArray(selectedRows)) {\n this.unsubscribeSelectAll = selectedRows.subscribe(SelectableRows.SELECT_ALL_EVENT, () => {\n this.forceUpdate();\n });\n }\n }\n\n componentWillUnmount() {\n this.unsubscribeSelectAll?.();\n }\n\n sortableColumnDescribeId() {\n const { uid } = this.asProps;\n return `${uid}-column-sortable-describer`;\n }\n\n getGroupProps(props: any, index: number) {\n const { fixed, columns } = props;\n const { use, gridAreaGroupMap, children, getFixedStyle, shadowVertical, top, scrollDirection } = this.asProps;\n const groupColumns = columns ?? [];\n\n const firstColumn = groupColumns[0];\n const lastColumn = groupColumns[groupColumns.length - 1];\n\n const style: any = {};\n\n if (fixed === 'left' && firstColumn) {\n const [name, value] = getFixedStyle({ name: firstColumn.name, fixed: 'left' });\n if (name !== undefined && value !== undefined) {\n style[name] = value;\n }\n }\n if (fixed === 'right' && lastColumn) {\n const [name, value] = getFixedStyle({ name: lastColumn.name, fixed: 'right' });\n if (name !== undefined && value !== undefined) {\n style[name] = value;\n }\n }\n if (top && scrollDirection !== 'horizontal') {\n style.top = `${top}px`;\n }\n\n return {\n use,\n gridArea: gridAreaGroupMap.get(index),\n withConfig: children === undefined,\n getFixedStyle,\n shadowVertical: (firstColumn.showShadowVertical || lastColumn.showShadowVertical) ? shadowVertical : undefined,\n style,\n scrollDirection,\n };\n }\n\n getColumnProps(_: any, index: number) {\n const {\n use,\n columns,\n sort,\n onSortChange,\n tableRef,\n gridTemplateColumns,\n gridTemplateAreas,\n sticky,\n top,\n selectedRows,\n h,\n getFixedStyle,\n onCellClick,\n shadowVertical,\n scrollDirection,\n } = this.asProps;\n const column = columns[index];\n\n if (index === 0 && selectedRows && columns[index + 1].fixed) {\n column.fixed = 'left';\n }\n\n const [name, value] = getFixedStyle(column);\n const style: any = {};\n\n if (top && scrollDirection !== 'horizontal') {\n style.top = `${top}px`;\n }\n\n if (name !== undefined && value !== undefined) {\n style[name] = value;\n }\n\n return {\n use,\n 'aria-colindex': index + 1,\n style,\n 'gridArea': column.gridArea,\n 'fixed': column.fixed,\n sticky,\n 'borders': column.borders,\n sort,\n onSortChange,\n 'parent': column.parent,\n 'sortableColumnDescribeId': this.sortableColumnDescribeId(),\n 'columnIndex': index,\n tableRef,\n gridTemplateColumns,\n gridTemplateAreas,\n h,\n 'onClick': onCellClick,\n 'shadowVertical': column.showShadowVertical ? shadowVertical : undefined,\n scrollDirection,\n };\n }\n\n handleSelectAll = (value: boolean, event?: React.SyntheticEvent<HTMLElement>) => {\n const { selectedRows } = this.asProps;\n\n if (Array.isArray(selectedRows)) {\n const idsSet = new Set<UniqKeyType>(selectedRows);\n\n if (value) {\n this.selectableRows.forEach((row) => {\n idsSet.add(row[UNIQ_ROW_KEY]);\n });\n } else {\n this.selectableRows.forEach((row) => {\n idsSet.delete(row[UNIQ_ROW_KEY]);\n });\n }\n\n this.asProps.onChangeSelectAll?.(Array.from(idsSet), event);\n } else if (selectedRows) {\n if (value) {\n selectedRows.selectAll();\n } else {\n selectedRows.clearAllAvailable();\n }\n }\n };\n\n handleClickSelectAll = (value: boolean) => (event?: React.SyntheticEvent<HTMLElement>) => {\n event?.preventDefault();\n event?.stopPropagation();\n\n this.handleSelectAll(value, event);\n };\n\n get areAllRowsSelected() {\n const { selectedRows } = this.asProps;\n\n if (Array.isArray(selectedRows)) {\n return selectedRows.length > 0 && this.selectableRows.every((row) => selectedRows?.includes(row[UNIQ_ROW_KEY]));\n } else if (selectedRows) {\n return selectedRows.isAllSelected();\n }\n }\n\n get isIndeterminate() {\n const { selectedRows } = this.asProps;\n\n if (Array.isArray(selectedRows)) {\n return this.selectableRows.some((row) => selectedRows?.includes(row[UNIQ_ROW_KEY]));\n } else if (selectedRows) {\n return selectedRows.isIndeterminate();\n }\n }\n\n get selectableRows(): DTRow<UniqKeyType>[] {\n const { columns, flatRows } = this.asProps;\n const mappedFlatRows = flatRows\n .filter((r) => {\n const nextColumnName = columns[1]?.name;\n return r[nextColumnName] !== undefined;\n });\n\n return mappedFlatRows;\n }\n\n render() {\n const SHead = Root;\n const SHeadCheckboxCol = Head.Column;\n const { Children, styles, getI18nText, children, treeColumns, selectedRows, sticky, animationDuration, isDataEmpty, gridTemplateColumns } = this.asProps;\n\n const areAllRowsSelected = this.areAllRowsSelected;\n const indeterminate = this.isIndeterminate && !areAllRowsSelected;\n\n return sstyled(styles)(\n <>\n <SHead\n render={Box}\n role='row'\n aria-rowindex={1}\n sticky={sticky}\n use:animationDuration={animationDuration ? `${animationDuration}ms` : undefined}\n isDataEmpty={isDataEmpty}\n use:gridTemplateColumns={gridTemplateColumns.join(' ')}\n tabIndex={isDataEmpty ? 0 : undefined}\n >\n {selectedRows && (\n <SHeadCheckboxCol\n name={SELECT_ALL.toString()}\n onClick={this.handleClickSelectAll(!areAllRowsSelected)}\n >\n <Checkbox\n checked={areAllRowsSelected}\n indeterminate={indeterminate}\n aria-label={getI18nText('DataTable.Header.selectAllCheckbox:aria-label')}\n onChange={this.handleSelectAll}\n >\n <Checkbox.Value>\n <Checkbox.Value.Control />\n <Checkbox.Value.CheckMark mt={0} />\n </Checkbox.Value>\n </Checkbox>\n </SHeadCheckboxCol>\n )}\n\n {children\n ? (\n <Children />\n )\n : (\n <>\n {treeColumns.map((column, _i) => {\n if ('columns' in column) {\n const columnsName = column.columns?.map((c) => c.name).join('/');\n return (\n <DataTable.Head.Group\n key={columnsName}\n {...column}\n name={columnsName}\n title=''\n />\n );\n }\n\n return <DataTable.Head.Column key={column.name} {...column} />;\n })}\n </>\n )}\n </SHead>\n\n <ScreenReaderOnly aria-hidden={true} id={this.sortableColumnDescribeId()}>\n {getI18nText('sortableColumn')}\n </ScreenReaderOnly>\n </>,\n );\n }\n}\n\nexport const Head = createComponent(HeadRoot, { Column, Group }) as Intergalactic.Component<\n 'div',\n DataTableHeadProps\n> & {\n Column: <Tag extends 'div' | typeof Tooltip = 'div'>(\n props: Intergalactic.InternalTypings.ComponentProps<Tag, 'div', DataTableColumnProps, {}, []>,\n ) => Intergalactic.InternalTypings.ComponentRenderingResults;\n Group: <Tag extends 'div' | typeof Tooltip = 'div'>(\n props: Intergalactic.InternalTypings.ComponentProps<Tag, 'div', DataTableGroupProps, {}, []>,\n ) => Intergalactic.InternalTypings.ComponentRenderingResults;\n};\n"],"mappings":";;;;;;;;;;;;;;;AAEA,IAAAA,KAAA,GAAAC,OAAA;AAFA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAC,sBAAA,CAAAH,OAAA;AAGA,IAAAI,MAAA,GAAAD,sBAAA,CAAAH,OAAA;AAEA,IAAAK,OAAA,GAAAL,OAAA;AAEA,IAAAM,MAAA,GAAAN,OAAA;AAIA,IAAAO,eAAA,GAAAP,OAAA;AAEA,IAAAQ,UAAA,GAAAR,OAAA;AAA6F;AAAA,IAAAS,KAAA,8BAAAV,KAAA,CAAAW,OAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAAA,IAGvFC,QAAQ,0BAAAC,UAAA;EAAA,SAAAD,SAAA;IAAA,IAAAE,KAAA;IAAA,IAAAC,gBAAA,mBAAAH,QAAA;IAAA,SAAAI,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,OAAAQ,WAAA,mBAAAV,QAAA,KAAAW,MAAA,CAAAJ,IAAA;IAAA,IAAAK,gBAAA,aAAAV,KAAA,0BAc6CW,SAAS;IAAA,IAAAD,gBAAA,aAAAV,KAAA,qBAoHhD,UAACY,KAAc,EAAEC,KAAyC,EAAK;MAC/E,IAAQC,YAAY,GAAKd,KAAA,CAAKe,OAAO,CAA7BD,YAAY;MAEpB,IAAIR,KAAK,CAACU,OAAO,CAACF,YAAY,CAAC,EAAE;QAAA,IAAAG,qBAAA,EAAAC,aAAA;QAC/B,IAAMC,MAAM,GAAG,IAAIC,GAAG,CAAcN,YAAY,CAAC;QAEjD,IAAIF,KAAK,EAAE;UACTZ,KAAA,CAAKqB,cAAc,CAACC,OAAO,CAAC,UAACC,GAAG,EAAK;YACnCJ,MAAM,CAACK,GAAG,CAACD,GAAG,CAACE,uBAAY,CAAC,CAAC;UAC/B,CAAC,CAAC;QACJ,CAAC,MAAM;UACLzB,KAAA,CAAKqB,cAAc,CAACC,OAAO,CAAC,UAACC,GAAG,EAAK;YACnCJ,MAAM,UAAO,CAACI,GAAG,CAACE,uBAAY,CAAC,CAAC;UAClC,CAAC,CAAC;QACJ;QAEA,CAAAR,qBAAA,IAAAC,aAAA,GAAAlB,KAAA,CAAKe,OAAO,EAACW,iBAAiB,cAAAT,qBAAA,eAA9BA,qBAAA,CAAAU,IAAA,CAAAT,aAAA,EAAiCZ,KAAK,CAACsB,IAAI,CAACT,MAAM,CAAC,EAAEN,KAAK,CAAC;MAC7D,CAAC,MAAM,IAAIC,YAAY,EAAE;QACvB,IAAIF,KAAK,EAAE;UACTE,YAAY,CAACe,SAAS,CAAC,CAAC;QAC1B,CAAC,MAAM;UACLf,YAAY,CAACgB,iBAAiB,CAAC,CAAC;QAClC;MACF;IACF,CAAC;IAAA,IAAApB,gBAAA,aAAAV,KAAA,0BAEsB,UAACY,KAAc;MAAA,OAAK,UAACC,KAAyC,EAAK;QACxFA,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEkB,cAAc,CAAC,CAAC;QACvBlB,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEmB,eAAe,CAAC,CAAC;QAExBhC,KAAA,CAAKiC,eAAe,CAACrB,KAAK,EAAEC,KAAK,CAAC;MACpC,CAAC;IAAA;IAAA,OAAAb,KAAA;EAAA;EAAA,IAAAkC,UAAA,aAAApC,QAAA,EAAAC,UAAA;EAAA,WAAAoC,aAAA,aAAArC,QAAA;IAAAsC,GAAA;IAAAxB,KAAA,EAjJD,SAAAyB,iBAAiBA,CAAA,EAAG;MAAA,IAAAC,MAAA;MAClB,IAAQxB,YAAY,GAAK,IAAI,CAACC,OAAO,CAA7BD,YAAY;MAEpB,IAAIA,YAAY,IAAI,CAACR,KAAK,CAACU,OAAO,CAACF,YAAY,CAAC,EAAE;QAChD,IAAI,CAACyB,oBAAoB,GAAGzB,YAAY,CAAC0B,SAAS,CAACC,8BAAc,CAACC,gBAAgB,EAAE,YAAM;UACxFJ,MAAI,CAACK,WAAW,CAAC,CAAC;QACpB,CAAC,CAAC;MACJ;IACF;EAAC;IAAAP,GAAA;IAAAxB,KAAA,EAED,SAAAgC,oBAAoBA,CAAA,EAAG;MAAA,IAAAC,qBAAA;MACrB,CAAAA,qBAAA,OAAI,CAACN,oBAAoB,cAAAM,qBAAA,eAAzBA,qBAAA,CAAAlB,IAAA,KAA4B,CAAC;IAC/B;EAAC;IAAAS,GAAA;IAAAxB,KAAA,EAED,SAAAkC,wBAAwBA,CAAA,EAAG;MACzB,IAAQC,GAAG,GAAK,IAAI,CAAChC,OAAO,CAApBgC,GAAG;MACX,UAAAtC,MAAA,CAAUsC,GAAG;IACf;EAAC;IAAAX,GAAA;IAAAxB,KAAA,EAED,SAAAoC,aAAaA,CAACC,KAAU,EAAEC,KAAa,EAAE;MACvC,IAAQC,KAAK,GAAcF,KAAK,CAAxBE,KAAK;QAAEC,OAAO,GAAKH,KAAK,CAAjBG,OAAO;MACtB,IAAAC,cAAA,GAAiG,IAAI,CAACtC,OAAO;QAArGuC,GAAG,GAAAD,cAAA,CAAHC,GAAG;QAAEC,gBAAgB,GAAAF,cAAA,CAAhBE,gBAAgB;QAAEC,QAAQ,GAAAH,cAAA,CAARG,QAAQ;QAAEC,aAAa,GAAAJ,cAAA,CAAbI,aAAa;QAAEC,cAAc,GAAAL,cAAA,CAAdK,cAAc;QAAEC,GAAG,GAAAN,cAAA,CAAHM,GAAG;QAAEC,eAAe,GAAAP,cAAA,CAAfO,eAAe;MAC5F,IAAMC,YAAY,GAAGT,OAAO,aAAPA,OAAO,cAAPA,OAAO,GAAI,EAAE;MAElC,IAAMU,WAAW,GAAGD,YAAY,CAAC,CAAC,CAAC;MACnC,IAAME,UAAU,GAAGF,YAAY,CAACA,YAAY,CAACzD,MAAM,GAAG,CAAC,CAAC;MAExD,IAAMT,KAAU,GAAG,CAAC,CAAC;MAErB,IAAIwD,KAAK,KAAK,MAAM,IAAIW,WAAW,EAAE;QACnC,IAAAE,cAAA,GAAsBP,aAAa,CAAC;YAAEQ,IAAI,EAAEH,WAAW,CAACG,IAAI;YAAEd,KAAK,EAAE;UAAO,CAAC,CAAC;UAAAe,eAAA,OAAAC,eAAA,aAAAH,cAAA;UAAvEC,IAAI,GAAAC,eAAA;UAAEtD,KAAK,GAAAsD,eAAA;QAClB,IAAID,IAAI,KAAKtD,SAAS,IAAIC,KAAK,KAAKD,SAAS,EAAE;UAC7ChB,KAAK,CAACsE,IAAI,CAAC,GAAGrD,KAAK;QACrB;MACF;MACA,IAAIuC,KAAK,KAAK,OAAO,IAAIY,UAAU,EAAE;QACnC,IAAAK,eAAA,GAAsBX,aAAa,CAAC;YAAEQ,IAAI,EAAEF,UAAU,CAACE,IAAI;YAAEd,KAAK,EAAE;UAAQ,CAAC,CAAC;UAAAkB,eAAA,OAAAF,eAAA,aAAAC,eAAA;UAAvEH,KAAI,GAAAI,eAAA;UAAEzD,MAAK,GAAAyD,eAAA;QAClB,IAAIJ,KAAI,KAAKtD,SAAS,IAAIC,MAAK,KAAKD,SAAS,EAAE;UAC7ChB,KAAK,CAACsE,KAAI,CAAC,GAAGrD,MAAK;QACrB;MACF;MACA,IAAI+C,GAAG,IAAIC,eAAe,KAAK,YAAY,EAAE;QAC3CjE,KAAK,CAACgE,GAAG,MAAAlD,MAAA,CAAMkD,GAAG,OAAI;MACxB;MAEA,OAAO;QACLL,GAAG,EAAHA,GAAG;QACHgB,QAAQ,EAAEf,gBAAgB,CAACgB,GAAG,CAACrB,KAAK,CAAC;QACrCsB,UAAU,EAAEhB,QAAQ,KAAK7C,SAAS;QAClC8C,aAAa,EAAbA,aAAa;QACbC,cAAc,EAAGI,WAAW,CAACW,kBAAkB,IAAIV,UAAU,CAACU,kBAAkB,GAAIf,cAAc,GAAG/C,SAAS;QAC9GhB,KAAK,EAALA,KAAK;QACLiE,eAAe,EAAfA;MACF,CAAC;IACH;EAAC;IAAAxB,GAAA;IAAAxB,KAAA,EAED,SAAA8D,cAAcA,CAACC,CAAM,EAAEzB,KAAa,EAAE;MACpC,IAAA0B,cAAA,GAgBI,IAAI,CAAC7D,OAAO;QAfduC,GAAG,GAAAsB,cAAA,CAAHtB,GAAG;QACHF,OAAO,GAAAwB,cAAA,CAAPxB,OAAO;QACPyB,IAAI,GAAAD,cAAA,CAAJC,IAAI;QACJC,YAAY,GAAAF,cAAA,CAAZE,YAAY;QACZC,QAAQ,GAAAH,cAAA,CAARG,QAAQ;QACRC,mBAAmB,GAAAJ,cAAA,CAAnBI,mBAAmB;QACnBC,iBAAiB,GAAAL,cAAA,CAAjBK,iBAAiB;QACjBC,MAAM,GAAAN,cAAA,CAANM,MAAM;QACNvB,GAAG,GAAAiB,cAAA,CAAHjB,GAAG;QACH7C,YAAY,GAAA8D,cAAA,CAAZ9D,YAAY;QACZqE,CAAC,GAAAP,cAAA,CAADO,CAAC;QACD1B,aAAa,GAAAmB,cAAA,CAAbnB,aAAa;QACb2B,WAAW,GAAAR,cAAA,CAAXQ,WAAW;QACX1B,cAAc,GAAAkB,cAAA,CAAdlB,cAAc;QACdE,eAAe,GAAAgB,cAAA,CAAfhB,eAAe;MAEjB,IAAMyB,MAAM,GAAGjC,OAAO,CAACF,KAAK,CAAC;MAE7B,IAAIA,KAAK,KAAK,CAAC,IAAIpC,YAAY,IAAIsC,OAAO,CAACF,KAAK,GAAG,CAAC,CAAC,CAACC,KAAK,EAAE;QAC3DkC,MAAM,CAAClC,KAAK,GAAG,MAAM;MACvB;MAEA,IAAAmC,eAAA,GAAsB7B,aAAa,CAAC4B,MAAM,CAAC;QAAAE,eAAA,OAAApB,eAAA,aAAAmB,eAAA;QAApCrB,IAAI,GAAAsB,eAAA;QAAE3E,KAAK,GAAA2E,eAAA;MAClB,IAAM5F,KAAU,GAAG,CAAC,CAAC;MAErB,IAAIgE,GAAG,IAAIC,eAAe,KAAK,YAAY,EAAE;QAC3CjE,KAAK,CAACgE,GAAG,MAAAlD,MAAA,CAAMkD,GAAG,OAAI;MACxB;MAEA,IAAIM,IAAI,KAAKtD,SAAS,IAAIC,KAAK,KAAKD,SAAS,EAAE;QAC7ChB,KAAK,CAACsE,IAAI,CAAC,GAAGrD,KAAK;MACrB;MAEA,OAAO;QACL0C,GAAG,EAAHA,GAAG;QACH,eAAe,EAAEJ,KAAK,GAAG,CAAC;QAC1BvD,KAAK,EAALA,KAAK;QACL,UAAU,EAAE0F,MAAM,CAACf,QAAQ;QAC3B,OAAO,EAAEe,MAAM,CAAClC,KAAK;QACrB+B,MAAM,EAANA,MAAM;QACN,SAAS,EAAEG,MAAM,CAACG,OAAO;QACzBX,IAAI,EAAJA,IAAI;QACJC,YAAY,EAAZA,YAAY;QACZ,QAAQ,EAAEO,MAAM,CAACI,MAAM;QACvB,0BAA0B,EAAE,IAAI,CAAC3C,wBAAwB,CAAC,CAAC;QAC3D,aAAa,EAAEI,KAAK;QACpB6B,QAAQ,EAARA,QAAQ;QACRC,mBAAmB,EAAnBA,mBAAmB;QACnBC,iBAAiB,EAAjBA,iBAAiB;QACjBE,CAAC,EAADA,CAAC;QACD,SAAS,EAAEC,WAAW;QACtB,gBAAgB,EAAEC,MAAM,CAACZ,kBAAkB,GAAGf,cAAc,GAAG/C,SAAS;QACxEiD,eAAe,EAAfA;MACF,CAAC;IACH;EAAC;IAAAxB,GAAA;IAAAmC,GAAA,EAmCD,SAAAA,IAAA,EAAyB;MACvB,IAAQzD,YAAY,GAAK,IAAI,CAACC,OAAO,CAA7BD,YAAY;MAEpB,IAAIR,KAAK,CAACU,OAAO,CAACF,YAAY,CAAC,EAAE;QAC/B,OAAOA,YAAY,CAACV,MAAM,GAAG,CAAC,IAAI,IAAI,CAACiB,cAAc,CAACqE,KAAK,CAAC,UAACnE,GAAG;UAAA,OAAKT,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAE6E,QAAQ,CAACpE,GAAG,CAACE,uBAAY,CAAC,CAAC;QAAA,EAAC;MACjH,CAAC,MAAM,IAAIX,YAAY,EAAE;QACvB,OAAOA,YAAY,CAAC8E,aAAa,CAAC,CAAC;MACrC;IACF;EAAC;IAAAxD,GAAA;IAAAmC,GAAA,EAED,SAAAA,IAAA,EAAsB;MACpB,IAAQzD,YAAY,GAAK,IAAI,CAACC,OAAO,CAA7BD,YAAY;MAEpB,IAAIR,KAAK,CAACU,OAAO,CAACF,YAAY,CAAC,EAAE;QAC/B,OAAO,IAAI,CAACO,cAAc,CAACwE,IAAI,CAAC,UAACtE,GAAG;UAAA,OAAKT,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAE6E,QAAQ,CAACpE,GAAG,CAACE,uBAAY,CAAC,CAAC;QAAA,EAAC;MACrF,CAAC,MAAM,IAAIX,YAAY,EAAE;QACvB,OAAOA,YAAY,CAACgF,eAAe,CAAC,CAAC;MACvC;IACF;EAAC;IAAA1D,GAAA;IAAAmC,GAAA,EAED,SAAAA,IAAA,EAA2C;MACzC,IAAAwB,cAAA,GAA8B,IAAI,CAAChF,OAAO;QAAlCqC,OAAO,GAAA2C,cAAA,CAAP3C,OAAO;QAAE4C,QAAQ,GAAAD,cAAA,CAARC,QAAQ;MACzB,IAAMC,cAAc,GAAGD,QAAQ,CAC5BE,MAAM,CAAC,UAACC,CAAC,EAAK;QAAA,IAAAC,SAAA;QACb,IAAMC,cAAc,IAAAD,SAAA,GAAGhD,OAAO,CAAC,CAAC,CAAC,cAAAgD,SAAA,uBAAVA,SAAA,CAAYnC,IAAI;QACvC,OAAOkC,CAAC,CAACE,cAAc,CAAC,KAAK1F,SAAS;MACxC,CAAC,CAAC;MAEJ,OAAOsF,cAAc;IACvB;EAAC;IAAA7D,GAAA;IAAAxB,KAAA,EAED,SAAA0F,MAAMA,CAAA,EAAG;MAAA,IAAAC,IAAA,QAAAxF,OAAA;QAAAyF,KAAA;MACP,IAAMC,KAAK,GAUGC,mBAAG;MATjB,IAAMC,gBAAgB,GAAGC,IAAI,CAACC,MAAM;MACpC,IAAAC,cAAA,GAA4I,IAAI,CAAC/F,OAAO;QAAhJgG,QAAQ,GAAAD,cAAA,CAARC,QAAQ;QAAEC,MAAM,GAAAF,cAAA,CAANE,MAAM;QAAEC,WAAW,GAAAH,cAAA,CAAXG,WAAW;QAAEzD,QAAQ,GAAAsD,cAAA,CAARtD,QAAQ;QAAE0D,WAAW,GAAAJ,cAAA,CAAXI,WAAW;QAAEpG,YAAY,GAAAgG,cAAA,CAAZhG,YAAY;QAAEoE,MAAM,GAAA4B,cAAA,CAAN5B,MAAM;QAAEiC,iBAAiB,GAAAL,cAAA,CAAjBK,iBAAiB;QAAEC,WAAW,GAAAN,cAAA,CAAXM,WAAW;QAAEpC,mBAAmB,GAAA8B,cAAA,CAAnB9B,mBAAmB;MAEvI,IAAMqC,kBAAkB,GAAG,IAAI,CAACA,kBAAkB;MAClD,IAAMC,aAAa,GAAG,IAAI,CAACxB,eAAe,IAAI,CAACuB,kBAAkB;MAEjE,OAAAb,KAAA,GAAO,IAAA5G,aAAO,EAACoH,MAAM,CAAC,eACpB1H,MAAA,YAAAiI,aAAA,CAAAjI,MAAA,YAAAkI,QAAA,qBACElI,MAAA,YAAAiI,aAAA,CAACd,KAAK,EAAAD,KAAA,CAAAiB,EAAA,cAAAC,cAAA,qBAAAzI,KAAA,CAAA0I,WAAA;QAAA,QAEC,KAAK;QAAA,iBACK,CAAC;QAAA,UACRzC,MAAM;QAAA,yBACSiC,iBAAiB,MAAA1G,MAAA,CAAM0G,iBAAiB,UAAOxG,SAAS;QAAA,eAClEyG,WAAW;QAAA,2BACCpC,mBAAmB,CAAC4C,IAAI,CAAC,GAAG,CAAC;QAAA,YAC5CR,WAAW,GAAG,CAAC,GAAGzG;MAAS,GAAA4F,IAAA,KAEpCzF,YAAY,iBACXxB,MAAA,YAAAiI,aAAA,CAACZ,gBAAgB,EAAAH,KAAA,CAAAiB,EAAA;QAAA,QACTI,qBAAU,CAACC,QAAQ,CAAC,CAAC;QAAA,WAClB,IAAI,CAACC,oBAAoB,CAAC,CAACV,kBAAkB;MAAC,iBAEvD/H,MAAA,YAAAiI,aAAA,CAACnI,SAAA,WAAQ,EAAAoH,KAAA,CAAAiB,EAAA;QAAA,WACEJ,kBAAkB;QAAA,iBACZC,aAAa;QAAA,cAChBL,WAAW,CAAC,+CAA+C,CAAC;QAAA,YAC9D,IAAI,CAAChF;MAAe,iBAE9B3C,MAAA,YAAAiI,aAAA,CAACnI,SAAA,WAAQ,CAAC4I,KAAK,qBACb1I,MAAA,YAAAiI,aAAA,CAACnI,SAAA,WAAQ,CAAC4I,KAAK,CAACC,OAAO,MAAE,CAAC,eAC1B3I,MAAA,YAAAiI,aAAA,CAACnI,SAAA,WAAQ,CAAC4I,KAAK,CAACE,SAAS;QAACC,EAAE,EAAE;MAAE,CAAE,CACpB,CACR,CACM,CACnB,EAEA3E,QAAQ,gBAEHlE,MAAA,YAAAiI,aAAA,CAACR,QAAQ,EAAAP,KAAA,CAAAiB,EAAA,gBAAE,CAAC,gBAGZnI,MAAA,YAAAiI,aAAA,CAAAjI,MAAA,YAAAkI,QAAA,QACGN,WAAW,CAACkB,GAAG,CAAC,UAAC/C,MAAM,EAAEgD,EAAE,EAAK;QAC/B,IAAI,SAAS,IAAIhD,MAAM,EAAE;UAAA,IAAAiD,eAAA;UACvB,IAAMC,WAAW,IAAAD,eAAA,GAAGjD,MAAM,CAACjC,OAAO,cAAAkF,eAAA,uBAAdA,eAAA,CAAgBF,GAAG,CAAC,UAACI,CAAC;YAAA,OAAKA,CAAC,CAACvE,IAAI;UAAA,EAAC,CAAC2D,IAAI,CAAC,GAAG,CAAC;UAChE,oBACEtI,MAAA,YAAAiI,aAAA,CAAC7H,UAAA,CAAA+I,SAAS,CAAC7B,IAAI,CAAC8B,KAAK,MAAAC,SAAA;YACnBvG,GAAG,EAAEmG;UAAY,GACblD,MAAM;YACVpB,IAAI,EAAEsE,WAAY;YAClBK,KAAK,EAAC;UAAE,EACT,CAAC;QAEN;QAEA,oBAAOtJ,MAAA,YAAAiI,aAAA,CAAC7H,UAAA,CAAA+I,SAAS,CAAC7B,IAAI,CAACC,MAAM,MAAA8B,SAAA;UAACvG,GAAG,EAAEiD,MAAM,CAACpB;QAAK,GAAKoB,MAAM,CAAG,CAAC;MAChE,CAAC,CACD,CAEH,CAAC,eAER/F,MAAA,YAAAiI,aAAA,CAACpI,eAAA,CAAA0J,gBAAgB,EAAArC,KAAA,CAAAiB,EAAA;QAAA,eAAc,IAAI;QAAA,MAAM,IAAI,CAAC3E,wBAAwB,CAAC;MAAC,IACrEmE,WAAW,CAAC,gBAAgB,CACb,CAClB,CAAC;IAEP;EAAC;AAAA,EAnQO6B,eAAS;AAAA,IAAApI,gBAAA,aAJbZ,QAAQ,iBAWS,MAAM;AAAA,IAAAY,gBAAA,aAXvBZ,QAAQ,WAYGH,KAAK;AA8Pf,IAAMiH,IAAI,GAAAmC,OAAA,CAAAnC,IAAA,GAAG,IAAAoC,qBAAe,EAAClJ,QAAQ,EAAE;EAAE+G,MAAM,EAANA,cAAM;EAAE6B,KAAK,EAALA;AAAM,CAAC,CAU9D","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"Head.types.js","names":[],"sources":["../../../../src/components/Head/Head.types.ts"],"sourcesContent":["import type { ColumnPropsInner, DTColumn } from './Column.types';\nimport type { BodyPropsInner } from '../Body/Body.types';\nimport type { DataTableCellProps } from '../Body/Cell.types';\nimport type { DTRow } from '../Body/Row.types';\nimport type { ROW_GROUP } from '../DataTable/DataTable';\nimport type { DataTableData, DataTableProps, DTUse } from '../DataTable/DataTable.types';\n\nexport type DataTableHeadProps = {\n /**\n * Sticky header\n * @default false\n */\n sticky?: boolean;\n\n /**\n * offset for sticky header\n */\n top?: number;\n\n /**\n * Height of header in px\n */\n h?: number;\n\n /** Enable scroll bar element in header */\n withScrollBar?: boolean;\n\n /** Animation duration for a top property. When it's set adds animation for top changes */\n animationDuration?: number;\n\n /** Outer ref for the header */\n ref?: React.Ref<HTMLDivElement>;\n};\n\nexport type HeadPropsInner<\n Data extends DataTableData,\n UniqKey extends (Data[number] extends { [ROW_GROUP]: DataTableData } ? keyof Data[number][typeof ROW_GROUP][number] : keyof Data[number]),\n UniqKeyType extends (Data[number] extends { [ROW_GROUP]: DataTableData } ? Data[number][typeof ROW_GROUP][number][UniqKey] : Data[number][UniqKey]),\n> = {\n use: DTUse;\n tableRef: React.RefObject<HTMLElement>;\n columns: DTColumn[];\n treeColumns: DTColumn[];\n compact: boolean;\n sort?: DataTableProps<Data, UniqKey, UniqKeyType>['sort'];\n onSortChange?: DataTableProps<Data, UniqKey, UniqKeyType>['onSortChange'];\n getI18nText: (key: string) => string;\n uid: string;\n ref: React.Ref<HTMLDivElement>;\n\n gridAreaGroupMap: Map<number, string>;\n gridTemplateColumns: string[];\n gridTemplateAreas: string[];\n sideIndents?: 'wide';\n\n totalRows: number;\n selectedRows?: UniqKeyType[];\n onChangeSelectAll?: (selectedRows: UniqKeyType[], event?: React.SyntheticEvent<HTMLElement>) => void;\n flatRows: DTRow<UniqKeyType>[];\n\n getFixedStyle: (\n cell: Pick<DTColumn, 'name' | 'fixed'>,\n ) => [side: 'left' | 'right', style: string | number] | [side: undefined, style: undefined];\n onCellClick: DataTableCellProps<Data, UniqKeyType>['onClick'];\n shadowVertical?: BodyPropsInner<Data, UniqKeyType>['shadowVertical'];\n scrollDirection?: ColumnPropsInner<Data, UniqKey, UniqKeyType>['scrollDirection'];\n isDataEmpty: boolean;\n};\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"Head.types.js","names":[],"sources":["../../../../src/components/Head/Head.types.ts"],"sourcesContent":["import type { ColumnPropsInner, DTColumn } from './Column.types';\nimport type { ISelectedRows } from '../../store/SelectableRows';\nimport type { BodyPropsInner } from '../Body/Body.types';\nimport type { DataTableCellProps } from '../Body/Cell.types';\nimport type { DTRow } from '../Body/Row.types';\nimport type { ROW_GROUP } from '../DataTable/DataTable';\nimport type { DataTableData, DataTableProps, DTUse } from '../DataTable/DataTable.types';\n\nexport type DataTableHeadProps = {\n /**\n * Sticky header\n * @default false\n */\n sticky?: boolean;\n\n /**\n * offset for sticky header\n */\n top?: number;\n\n /**\n * Height of header in px\n */\n h?: number;\n\n /** Enable scroll bar element in header */\n withScrollBar?: boolean;\n\n /** Animation duration for a top property. When it's set adds animation for top changes */\n animationDuration?: number;\n\n /** Outer ref for the header */\n ref?: React.Ref<HTMLDivElement>;\n};\n\nexport type HeadPropsInner<\n Data extends DataTableData,\n UniqKey extends (Data[number] extends { [ROW_GROUP]: DataTableData } ? keyof Data[number][typeof ROW_GROUP][number] : keyof Data[number]),\n UniqKeyType extends (Data[number] extends { [ROW_GROUP]: DataTableData } ? Data[number][typeof ROW_GROUP][number][UniqKey] : Data[number][UniqKey]),\n> = {\n use: DTUse;\n tableRef: React.RefObject<HTMLElement>;\n columns: DTColumn[];\n treeColumns: DTColumn[];\n compact: boolean;\n sort?: DataTableProps<Data, UniqKey, UniqKeyType>['sort'];\n onSortChange?: DataTableProps<Data, UniqKey, UniqKeyType>['onSortChange'];\n getI18nText: (key: string) => string;\n uid: string;\n ref: React.Ref<HTMLDivElement>;\n\n gridAreaGroupMap: Map<number, string>;\n gridTemplateColumns: string[];\n gridTemplateAreas: string[];\n sideIndents?: 'wide';\n\n totalRows: number;\n selectedRows?: UniqKeyType[] | ISelectedRows<UniqKeyType>;\n onChangeSelectAll?: (selectedRows: UniqKeyType[], event?: React.SyntheticEvent<HTMLElement>) => void;\n flatRows: DTRow<UniqKeyType>[];\n\n getFixedStyle: (\n cell: Pick<DTColumn, 'name' | 'fixed'>,\n ) => [side: 'left' | 'right', style: string | number] | [side: undefined, style: undefined];\n onCellClick: DataTableCellProps<Data, UniqKeyType>['onClick'];\n shadowVertical?: BodyPropsInner<Data, UniqKeyType>['shadowVertical'];\n scrollDirection?: ColumnPropsInner<Data, UniqKey, UniqKeyType>['scrollDirection'];\n isDataEmpty: boolean;\n};\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.RowSelector = void 0;
8
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
+ var _callSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/callSuper"));
11
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+ var _checkbox = _interopRequireDefault(require("@semcore/checkbox"));
14
+ var _react = _interopRequireDefault(require("react"));
15
+ var _SelectableRows = require("../../store/SelectableRows");
16
+ var _Row = require("../Body/Row");
17
+ var _DataTable = require("../DataTable/DataTable");
18
+ var RowSelector = exports.RowSelector = /*#__PURE__*/function (_React$PureComponent) {
19
+ function RowSelector(props) {
20
+ var _this;
21
+ (0, _classCallCheck2["default"])(this, RowSelector);
22
+ _this = (0, _callSuper2["default"])(this, RowSelector, [props]);
23
+ (0, _defineProperty2["default"])(_this, "state", {
24
+ checked: false
25
+ });
26
+ (0, _defineProperty2["default"])(_this, "unsubscribeToggle", undefined);
27
+ (0, _defineProperty2["default"])(_this, "handleSelectRow", function (value, event) {
28
+ var _this$props = _this.props,
29
+ row = _this$props.row,
30
+ rowIndex = _this$props.rowIndex,
31
+ onSelectRow = _this$props.onSelectRow,
32
+ selectedRows = _this$props.selectedRows;
33
+ onSelectRow === null || onSelectRow === void 0 || onSelectRow(value, rowIndex, row, event);
34
+ if (selectedRows && !Array.isArray(selectedRows)) {
35
+ selectedRows.toggle(value, row);
36
+ }
37
+ });
38
+ (0, _defineProperty2["default"])(_this, "handleClickCheckbox", function (value) {
39
+ return function (event) {
40
+ event === null || event === void 0 || event.preventDefault();
41
+ event === null || event === void 0 || event.stopPropagation();
42
+ var _this$props2 = _this.props,
43
+ row = _this$props2.row,
44
+ rowIndex = _this$props2.rowIndex,
45
+ onSelectRow = _this$props2.onSelectRow,
46
+ selectedRows = _this$props2.selectedRows;
47
+ onSelectRow === null || onSelectRow === void 0 || onSelectRow(value, rowIndex, row, event);
48
+ if (selectedRows && !Array.isArray(selectedRows)) {
49
+ selectedRows.toggle(value, row);
50
+ }
51
+ };
52
+ });
53
+ var _row = props.row,
54
+ _selectedRows = props.selectedRows;
55
+ if (_selectedRows && !Array.isArray(_selectedRows)) {
56
+ _this.state.checked = _selectedRows.has(_row[_DataTable.UNIQ_ROW_KEY]);
57
+ }
58
+ return _this;
59
+ }
60
+ (0, _inherits2["default"])(RowSelector, _React$PureComponent);
61
+ return (0, _createClass2["default"])(RowSelector, [{
62
+ key: "componentDidMount",
63
+ value: function componentDidMount() {
64
+ var _this2 = this;
65
+ var _this$props3 = this.props,
66
+ row = _this$props3.row,
67
+ selectedRows = _this$props3.selectedRows;
68
+ if (selectedRows && !Array.isArray(selectedRows)) {
69
+ this.unsubscribeToggle = selectedRows.subscribe(_SelectableRows.SelectableRows.TOGGLE_EVENT, function (key) {
70
+ if (row[_DataTable.UNIQ_ROW_KEY] === key) {
71
+ _this2.setState({
72
+ checked: selectedRows.has(row[_DataTable.UNIQ_ROW_KEY])
73
+ });
74
+ }
75
+ });
76
+ }
77
+ }
78
+ }, {
79
+ key: "componentWillUnmount",
80
+ value: function componentWillUnmount() {
81
+ var _this$unsubscribeTogg;
82
+ (_this$unsubscribeTogg = this.unsubscribeToggle) === null || _this$unsubscribeTogg === void 0 || _this$unsubscribeTogg.call(this);
83
+ }
84
+ }, {
85
+ key: "render",
86
+ value: function render() {
87
+ var SCheckboxCell = _Row.Row.Cell;
88
+ var _this$props4 = this.props,
89
+ row = _this$props4.row,
90
+ rowIndex = _this$props4.rowIndex,
91
+ gridRowIndex = _this$props4.gridRowIndex,
92
+ expanded = _this$props4.expanded,
93
+ withAccordion = _this$props4.withAccordion,
94
+ isAccordionRow = _this$props4.isAccordionRow,
95
+ isCellHidden = _this$props4.isCellHidden,
96
+ theme = _this$props4.theme,
97
+ uid = _this$props4.uid,
98
+ selectedRows = _this$props4.selectedRows;
99
+ var rowUniqKey = row[_DataTable.UNIQ_ROW_KEY];
100
+ var checked = Array.isArray(selectedRows) ? selectedRows.includes(rowUniqKey) : this.state.checked;
101
+ return /*#__PURE__*/_react["default"].createElement(SCheckboxCell, {
102
+ row: row,
103
+ rowIndex: rowIndex,
104
+ column: {
105
+ name: _DataTable.SELECT_ALL.toString()
106
+ },
107
+ columnIndex: 0,
108
+ gridRowIndex: gridRowIndex,
109
+ onClick: this.handleClickCheckbox(!checked),
110
+ expanded: expanded,
111
+ isAccordionRow: isAccordionRow,
112
+ "aria-hidden": isCellHidden,
113
+ withAccordion: withAccordion,
114
+ theme: theme,
115
+ "data-row-selector": true
116
+ }, /*#__PURE__*/_react["default"].createElement(_checkbox["default"], {
117
+ checked: checked,
118
+ "aria-labelledby": "".concat(uid, "_").concat(rowUniqKey, "_1"),
119
+ onChange: this.handleSelectRow
120
+ }, /*#__PURE__*/_react["default"].createElement(_checkbox["default"].Value, null)));
121
+ }
122
+ }]);
123
+ }(_react["default"].PureComponent);
124
+ //# sourceMappingURL=RowsSelector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RowsSelector.js","names":["_checkbox","_interopRequireDefault","require","_react","_SelectableRows","_Row","_DataTable","RowSelector","exports","_React$PureComponent","props","_this","_classCallCheck2","_callSuper2","_defineProperty2","checked","undefined","value","event","_this$props","row","rowIndex","onSelectRow","selectedRows","Array","isArray","toggle","preventDefault","stopPropagation","_this$props2","state","has","UNIQ_ROW_KEY","_inherits2","_createClass2","key","componentDidMount","_this2","_this$props3","unsubscribeToggle","subscribe","SelectableRows","TOGGLE_EVENT","setState","componentWillUnmount","_this$unsubscribeTogg","call","render","SCheckboxCell","Row","Cell","_this$props4","gridRowIndex","expanded","withAccordion","isAccordionRow","isCellHidden","theme","uid","rowUniqKey","includes","createElement","column","name","SELECT_ALL","toString","columnIndex","onClick","handleClickCheckbox","concat","onChange","handleSelectRow","Value","React","PureComponent"],"sources":["../../../../src/components/RowSelector/RowsSelector.tsx"],"sourcesContent":["import Checkbox from '@semcore/checkbox';\nimport React from 'react';\n\nimport type { ISelectedRows } from '../../store/SelectableRows';\nimport { SelectableRows } from '../../store/SelectableRows';\nimport type { Theme } from '../Body/Cell.types';\nimport { Row } from '../Body/Row';\nimport type { DTRow } from '../Body/Row.types';\nimport { UNIQ_ROW_KEY, SELECT_ALL } from '../DataTable/DataTable';\n\ntype RowSelectorProps<UniqKeyType> = {\n row: DTRow<UniqKeyType>;\n rowIndex: number;\n gridRowIndex: number;\n expanded: boolean;\n withAccordion: boolean;\n\n uid: string;\n theme?: Theme;\n isCellHidden?: boolean;\n isAccordionRow?: boolean;\n selectedRows?: UniqKeyType[] | ISelectedRows<UniqKeyType>;\n onSelectRow?: (\n isSelect: boolean,\n selectedRowIndex: number,\n row: DTRow<UniqKeyType>,\n event?: React.SyntheticEvent<HTMLElement>,\n ) => void;\n};\n\ntype State = {\n checked: boolean;\n};\n\nexport class RowSelector<UniqKeyType> extends React.PureComponent<RowSelectorProps<UniqKeyType>, State> {\n state: State = {\n checked: false,\n };\n\n private unsubscribeToggle: undefined | (() => void) = undefined;\n\n constructor(props: RowSelectorProps<UniqKeyType>) {\n super(props);\n\n const { row, selectedRows } = props;\n if (selectedRows && !Array.isArray(selectedRows)) {\n this.state.checked = selectedRows.has(row[UNIQ_ROW_KEY]);\n }\n }\n\n componentDidMount(): void {\n const { row, selectedRows } = this.props;\n if (selectedRows && !Array.isArray(selectedRows)) {\n this.unsubscribeToggle = selectedRows.subscribe(SelectableRows.TOGGLE_EVENT, (key: UniqKeyType) => {\n if (row[UNIQ_ROW_KEY] === key) {\n this.setState({ checked: selectedRows.has(row[UNIQ_ROW_KEY]) });\n }\n });\n }\n }\n\n componentWillUnmount(): void {\n this.unsubscribeToggle?.();\n }\n\n handleSelectRow = (value: boolean, event?: React.SyntheticEvent<HTMLElement>) => {\n const { row, rowIndex, onSelectRow, selectedRows } = this.props;\n\n onSelectRow?.(value, rowIndex, row, event);\n\n if (selectedRows && !Array.isArray(selectedRows)) {\n selectedRows.toggle(value, row);\n }\n };\n\n handleClickCheckbox = (value: boolean) => (event?: React.SyntheticEvent<HTMLElement>) => {\n event?.preventDefault();\n event?.stopPropagation();\n const { row, rowIndex, onSelectRow, selectedRows } = this.props;\n\n onSelectRow?.(value, rowIndex, row, event);\n\n if (selectedRows && !Array.isArray(selectedRows)) {\n selectedRows.toggle(value, row);\n }\n };\n\n render() {\n const SCheckboxCell = Row.Cell;\n\n const { row, rowIndex, gridRowIndex, expanded, withAccordion, isAccordionRow, isCellHidden, theme, uid, selectedRows } = this.props;\n const rowUniqKey = row[UNIQ_ROW_KEY];\n\n const checked = Array.isArray(selectedRows) ? selectedRows.includes(rowUniqKey) : this.state.checked;\n\n return (\n <SCheckboxCell\n row={row}\n rowIndex={rowIndex}\n column={{ name: SELECT_ALL.toString() }}\n columnIndex={0}\n gridRowIndex={gridRowIndex}\n onClick={this.handleClickCheckbox(!checked)}\n expanded={expanded}\n isAccordionRow={isAccordionRow}\n aria-hidden={isCellHidden}\n withAccordion={withAccordion}\n theme={theme}\n data-row-selector\n >\n <Checkbox\n checked={checked}\n aria-labelledby={`${uid}_${rowUniqKey}_1`}\n onChange={this.handleSelectRow}\n >\n <Checkbox.Value />\n </Checkbox>\n </SCheckboxCell>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
package/lib/cjs/index.js CHANGED
@@ -33,6 +33,12 @@ Object.defineProperty(exports, "ROW_GROUP", {
33
33
  return _DataTable.ROW_GROUP;
34
34
  }
35
35
  });
36
+ Object.defineProperty(exports, "SelectableRows", {
37
+ enumerable: true,
38
+ get: function get() {
39
+ return _SelectableRows.SelectableRows;
40
+ }
41
+ });
36
42
  Object.defineProperty(exports, "UNIQ_ROW_KEY", {
37
43
  enumerable: true,
38
44
  get: function get() {
@@ -42,6 +48,7 @@ Object.defineProperty(exports, "UNIQ_ROW_KEY", {
42
48
  exports.wrapDataTable = void 0;
43
49
  var _MergedCells = require("./components/Body/MergedCells");
44
50
  var _DataTable = require("./components/DataTable/DataTable");
51
+ var _SelectableRows = require("./store/SelectableRows");
45
52
  var wrapDataTable = exports.wrapDataTable = function wrapDataTable(wrapper) {
46
53
  return wrapper;
47
54
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_MergedCells","require","_DataTable","wrapDataTable","exports","wrapper"],"sources":["../../src/index.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type React from 'react';\n\nimport type { CellRenderProps } from './components/Body/Body.types';\nimport { MergedRowsCell, MergedColumnsCell } from './components/Body/MergedCells';\nimport { DataTable, ACCORDION, ROW_GROUP, UNIQ_ROW_KEY } from './components/DataTable/DataTable';\nimport type {\n DataTableSort,\n DataTableType,\n DataTableData,\n DataTableProps,\n DataTableChangeSort,\n ColumnGroupConfig,\n ColumnItemConfig,\n} from './components/DataTable/DataTable.types';\n\nconst wrapDataTable = <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<DataTableType>\n > &\n PropsExtending,\n ) => React.ReactNode,\n): DataTableType => wrapper as any;\n\nexport {\n MergedRowsCell,\n MergedColumnsCell,\n DataTable,\n ACCORDION,\n ROW_GROUP,\n /**\n * @deprecated use property `uniqueRowKey` in DataTableProps to set key of unique value in your data.\n */\n UNIQ_ROW_KEY,\n wrapDataTable,\n};\nexport type {\n DataTableSort,\n DataTableData,\n DataTableProps,\n DataTableChangeSort,\n ColumnGroupConfig,\n ColumnItemConfig,\n CellRenderProps,\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAWA,IAAME,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG,SAAhBA,aAAaA,CACjBE,OAKoB;EAAA,OACFA,OAAO;AAAA,CAAO","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_MergedCells","require","_DataTable","_SelectableRows","wrapDataTable","exports","wrapper"],"sources":["../../src/index.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type React from 'react';\n\nimport type { CellRenderProps } from './components/Body/Body.types';\nimport { MergedRowsCell, MergedColumnsCell } from './components/Body/MergedCells';\nimport { DataTable, ACCORDION, ROW_GROUP, UNIQ_ROW_KEY } from './components/DataTable/DataTable';\nimport type {\n DataTableSort,\n DataTableType,\n DataTableData,\n DataTableProps,\n DataTableChangeSort,\n ColumnGroupConfig,\n ColumnItemConfig,\n} from './components/DataTable/DataTable.types';\nimport { SelectableRows } from './store/SelectableRows';\n\nconst wrapDataTable = <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<DataTableType>\n > &\n PropsExtending,\n ) => React.ReactNode,\n): DataTableType => wrapper as any;\n\nexport {\n MergedRowsCell,\n MergedColumnsCell,\n DataTable,\n ACCORDION,\n ROW_GROUP,\n /**\n * @deprecated use property `uniqueRowKey` in DataTableProps to set key of unique value in your data.\n */\n UNIQ_ROW_KEY,\n wrapDataTable,\n SelectableRows,\n};\nexport type {\n DataTableSort,\n DataTableData,\n DataTableProps,\n DataTableChangeSort,\n ColumnGroupConfig,\n ColumnItemConfig,\n CellRenderProps,\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAUA,IAAAE,eAAA,GAAAF,OAAA;AAEA,IAAMG,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG,SAAhBA,aAAaA,CACjBE,OAKoB;EAAA,OACFA,OAAO;AAAA,CAAO","ignoreList":[]}