@govtechsg/sgds-web-component 3.25.0 → 3.25.1-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/components/Checkbox/index.umd.min.js +233 -233
  2. package/components/Checkbox/index.umd.min.js.map +1 -1
  3. package/components/Checkbox/sgds-checkbox.d.ts +1 -0
  4. package/components/Checkbox/sgds-checkbox.js +6 -1
  5. package/components/Checkbox/sgds-checkbox.js.map +1 -1
  6. package/components/ComboBox/index.umd.min.js +241 -242
  7. package/components/ComboBox/index.umd.min.js.map +1 -1
  8. package/components/ComboBox/sgds-combo-box.js +0 -1
  9. package/components/ComboBox/sgds-combo-box.js.map +1 -1
  10. package/components/DataTable/data-table.js +6 -0
  11. package/components/DataTable/data-table.js.map +1 -0
  12. package/components/DataTable/index.d.ts +12 -0
  13. package/components/DataTable/index.js +11 -0
  14. package/components/DataTable/index.js.map +1 -0
  15. package/components/DataTable/index.umd.min.js +2633 -0
  16. package/components/DataTable/index.umd.min.js.map +1 -0
  17. package/components/DataTable/sgds-data-table-cell.d.ts +15 -0
  18. package/components/DataTable/sgds-data-table-cell.js +32 -0
  19. package/components/DataTable/sgds-data-table-cell.js.map +1 -0
  20. package/components/DataTable/sgds-data-table-head.d.ts +28 -0
  21. package/components/DataTable/sgds-data-table-head.js +69 -0
  22. package/components/DataTable/sgds-data-table-head.js.map +1 -0
  23. package/components/DataTable/sgds-data-table-row.d.ts +76 -0
  24. package/components/DataTable/sgds-data-table-row.js +333 -0
  25. package/components/DataTable/sgds-data-table-row.js.map +1 -0
  26. package/components/DataTable/sgds-data-table.d.ts +82 -0
  27. package/components/DataTable/sgds-data-table.js +405 -0
  28. package/components/DataTable/sgds-data-table.js.map +1 -0
  29. package/components/Datepicker/datepicker-calendar.js +4 -4
  30. package/components/Datepicker/datepicker-calendar.js.map +1 -1
  31. package/components/Datepicker/datepicker-header.js +2 -2
  32. package/components/Datepicker/datepicker-header.js.map +1 -1
  33. package/components/Datepicker/datepicker-input.js +13 -48
  34. package/components/Datepicker/datepicker-input.js.map +1 -1
  35. package/components/Datepicker/index.umd.min.js +341 -341
  36. package/components/Datepicker/index.umd.min.js.map +1 -1
  37. package/components/Datepicker/sgds-datepicker.js +6 -6
  38. package/components/Datepicker/sgds-datepicker.js.map +1 -1
  39. package/components/Footer/index.umd.min.js +1 -1
  40. package/components/Input/index.umd.min.js +2 -2
  41. package/components/Input/index.umd.min.js.map +1 -1
  42. package/components/Input/input.js +1 -1
  43. package/components/QuantityToggle/index.umd.min.js +1 -1
  44. package/components/QuantityToggle/index.umd.min.js.map +1 -1
  45. package/components/Select/index.umd.min.js +21 -22
  46. package/components/Select/index.umd.min.js.map +1 -1
  47. package/components/Select/sgds-select.js +0 -1
  48. package/components/Select/sgds-select.js.map +1 -1
  49. package/components/Sidebar/index.umd.min.js +24 -24
  50. package/components/Sidebar/index.umd.min.js.map +1 -1
  51. package/components/Sidebar/sgds-sidebar-group.d.ts +1 -0
  52. package/components/Sidebar/sgds-sidebar-group.js +7 -1
  53. package/components/Sidebar/sgds-sidebar-group.js.map +1 -1
  54. package/components/Sidebar/sgds-sidebar-section.d.ts +1 -0
  55. package/components/Sidebar/sgds-sidebar-section.js +12 -2
  56. package/components/Sidebar/sgds-sidebar-section.js.map +1 -1
  57. package/components/Sidebar/sgds-sidebar.d.ts +5 -4
  58. package/components/Sidebar/sgds-sidebar.js.map +1 -1
  59. package/components/Sidebar/sidebar-element.d.ts +2 -2
  60. package/components/Sidebar/sidebar-element.js +12 -34
  61. package/components/Sidebar/sidebar-element.js.map +1 -1
  62. package/components/Sidebar/types.d.ts +3 -0
  63. package/components/Subnav/index.umd.min.js +1 -1
  64. package/components/Tab/index.umd.min.js +8 -8
  65. package/components/Tab/index.umd.min.js.map +1 -1
  66. package/components/Tab/sgds-tab-group.d.ts +2 -0
  67. package/components/Tab/sgds-tab-group.js +9 -0
  68. package/components/Tab/sgds-tab-group.js.map +1 -1
  69. package/components/Tab/tab-group.js +1 -1
  70. package/components/Tab/tab-panel.js +1 -1
  71. package/components/Tab/tab.js +1 -1
  72. package/components/Textarea/index.umd.min.js +1 -1
  73. package/components/index.d.ts +4 -0
  74. package/components/index.js +4 -0
  75. package/components/index.js.map +1 -1
  76. package/components/index.umd.min.js +567 -475
  77. package/components/index.umd.min.js.map +1 -1
  78. package/css/fouc.css +4 -0
  79. package/css/grid.css +347 -124
  80. package/css/grid.js +1 -1
  81. package/css/utility.css +0 -1
  82. package/custom-elements.json +1541 -149
  83. package/index.d.ts +1 -0
  84. package/index.js +1 -0
  85. package/index.js.map +1 -1
  86. package/index.umd.min.js +422 -330
  87. package/index.umd.min.js.map +1 -1
  88. package/package.json +1 -3
  89. package/react/components/Checkbox/sgds-checkbox.cjs.js +6 -1
  90. package/react/components/Checkbox/sgds-checkbox.cjs.js.map +1 -1
  91. package/react/components/Checkbox/sgds-checkbox.js +6 -1
  92. package/react/components/Checkbox/sgds-checkbox.js.map +1 -1
  93. package/react/components/ComboBox/sgds-combo-box.cjs.js +0 -1
  94. package/react/components/ComboBox/sgds-combo-box.cjs.js.map +1 -1
  95. package/react/components/ComboBox/sgds-combo-box.js +0 -1
  96. package/react/components/ComboBox/sgds-combo-box.js.map +1 -1
  97. package/react/components/DataTable/data-table.cjs.js +11 -0
  98. package/react/components/DataTable/data-table.cjs.js.map +1 -0
  99. package/react/components/DataTable/data-table.js +7 -0
  100. package/react/components/DataTable/data-table.js.map +1 -0
  101. package/react/components/DataTable/sgds-data-table-cell.cjs.js +38 -0
  102. package/react/components/DataTable/sgds-data-table-cell.cjs.js.map +1 -0
  103. package/react/components/DataTable/sgds-data-table-cell.js +33 -0
  104. package/react/components/DataTable/sgds-data-table-cell.js.map +1 -0
  105. package/react/components/DataTable/sgds-data-table-head.cjs.js +75 -0
  106. package/react/components/DataTable/sgds-data-table-head.cjs.js.map +1 -0
  107. package/react/components/DataTable/sgds-data-table-head.js +70 -0
  108. package/react/components/DataTable/sgds-data-table-head.js.map +1 -0
  109. package/react/components/DataTable/sgds-data-table-row.cjs.js +339 -0
  110. package/react/components/DataTable/sgds-data-table-row.cjs.js.map +1 -0
  111. package/react/components/DataTable/sgds-data-table-row.js +334 -0
  112. package/react/components/DataTable/sgds-data-table-row.js.map +1 -0
  113. package/react/components/DataTable/sgds-data-table.cjs.js +411 -0
  114. package/react/components/DataTable/sgds-data-table.cjs.js.map +1 -0
  115. package/react/components/DataTable/sgds-data-table.js +406 -0
  116. package/react/components/DataTable/sgds-data-table.js.map +1 -0
  117. package/react/components/Datepicker/datepicker-calendar.cjs.js +4 -4
  118. package/react/components/Datepicker/datepicker-calendar.cjs.js.map +1 -1
  119. package/react/components/Datepicker/datepicker-calendar.js +4 -4
  120. package/react/components/Datepicker/datepicker-calendar.js.map +1 -1
  121. package/react/components/Datepicker/datepicker-header.cjs.js +2 -2
  122. package/react/components/Datepicker/datepicker-header.cjs.js.map +1 -1
  123. package/react/components/Datepicker/datepicker-header.js +2 -2
  124. package/react/components/Datepicker/datepicker-header.js.map +1 -1
  125. package/react/components/Datepicker/datepicker-input.cjs.js +13 -52
  126. package/react/components/Datepicker/datepicker-input.cjs.js.map +1 -1
  127. package/react/components/Datepicker/datepicker-input.js +13 -48
  128. package/react/components/Datepicker/datepicker-input.js.map +1 -1
  129. package/react/components/Datepicker/sgds-datepicker.cjs.js +6 -6
  130. package/react/components/Datepicker/sgds-datepicker.cjs.js.map +1 -1
  131. package/react/components/Datepicker/sgds-datepicker.js +6 -6
  132. package/react/components/Datepicker/sgds-datepicker.js.map +1 -1
  133. package/react/components/Input/input.cjs.js +1 -1
  134. package/react/components/Input/input.js +1 -1
  135. package/react/components/Select/sgds-select.cjs.js +0 -1
  136. package/react/components/Select/sgds-select.cjs.js.map +1 -1
  137. package/react/components/Select/sgds-select.js +0 -1
  138. package/react/components/Select/sgds-select.js.map +1 -1
  139. package/react/components/Sidebar/sgds-sidebar-group.cjs.js +7 -1
  140. package/react/components/Sidebar/sgds-sidebar-group.cjs.js.map +1 -1
  141. package/react/components/Sidebar/sgds-sidebar-group.js +7 -1
  142. package/react/components/Sidebar/sgds-sidebar-group.js.map +1 -1
  143. package/react/components/Sidebar/sgds-sidebar-section.cjs.js +12 -2
  144. package/react/components/Sidebar/sgds-sidebar-section.cjs.js.map +1 -1
  145. package/react/components/Sidebar/sgds-sidebar-section.js +12 -2
  146. package/react/components/Sidebar/sgds-sidebar-section.js.map +1 -1
  147. package/react/components/Sidebar/sgds-sidebar.cjs.js.map +1 -1
  148. package/react/components/Sidebar/sgds-sidebar.js.map +1 -1
  149. package/react/components/Sidebar/sidebar-element.cjs.js +12 -34
  150. package/react/components/Sidebar/sidebar-element.cjs.js.map +1 -1
  151. package/react/components/Sidebar/sidebar-element.js +12 -34
  152. package/react/components/Sidebar/sidebar-element.js.map +1 -1
  153. package/react/components/Tab/sgds-tab-group.cjs.js +9 -0
  154. package/react/components/Tab/sgds-tab-group.cjs.js.map +1 -1
  155. package/react/components/Tab/sgds-tab-group.js +9 -0
  156. package/react/components/Tab/sgds-tab-group.js.map +1 -1
  157. package/react/components/Tab/tab-group.cjs.js +1 -1
  158. package/react/components/Tab/tab-group.js +1 -1
  159. package/react/components/Tab/tab-panel.cjs.js +1 -1
  160. package/react/components/Tab/tab-panel.js +1 -1
  161. package/react/components/Tab/tab.cjs.js +1 -1
  162. package/react/components/Tab/tab.js +1 -1
  163. package/react/css/grid.cjs.js +1 -1
  164. package/react/css/grid.js +1 -1
  165. package/react/data-table/index.cjs.js +44 -0
  166. package/react/data-table/index.cjs.js.map +1 -0
  167. package/react/data-table/index.d.ts +4 -0
  168. package/react/data-table/index.js +20 -0
  169. package/react/data-table/index.js.map +1 -0
  170. package/react/data-table-cell/index.cjs.js +40 -0
  171. package/react/data-table-cell/index.cjs.js.map +1 -0
  172. package/react/data-table-cell/index.d.ts +4 -0
  173. package/react/data-table-cell/index.js +16 -0
  174. package/react/data-table-cell/index.js.map +1 -0
  175. package/react/data-table-head/index.cjs.js +40 -0
  176. package/react/data-table-head/index.cjs.js.map +1 -0
  177. package/react/data-table-head/index.d.ts +4 -0
  178. package/react/data-table-head/index.js +16 -0
  179. package/react/data-table-head/index.js.map +1 -0
  180. package/react/data-table-row/index.cjs.js +45 -0
  181. package/react/data-table-row/index.cjs.js.map +1 -0
  182. package/react/data-table-row/index.d.ts +4 -0
  183. package/react/data-table-row/index.js +21 -0
  184. package/react/data-table-row/index.js.map +1 -0
  185. package/react/index.cjs.js +126 -118
  186. package/react/index.cjs.js.map +1 -1
  187. package/react/index.d.ts +4 -0
  188. package/react/index.js +4 -0
  189. package/react/index.js.map +1 -1
  190. package/react/styles/form-text-control.cjs.js +1 -1
  191. package/react/styles/form-text-control.js +1 -1
  192. package/react/utils/date-helpers.cjs.js +120 -0
  193. package/react/utils/date-helpers.cjs.js.map +1 -0
  194. package/react/utils/date-helpers.js +108 -0
  195. package/react/utils/date-helpers.js.map +1 -0
  196. package/react/utils/date-mask.cjs.js +203 -0
  197. package/react/utils/date-mask.cjs.js.map +1 -0
  198. package/react/utils/date-mask.js +199 -0
  199. package/react/utils/date-mask.js.map +1 -0
  200. package/react/utils/time.cjs.js +7 -7
  201. package/react/utils/time.cjs.js.map +1 -1
  202. package/react/utils/time.js +1 -1
  203. package/react/utils/time.js.map +1 -1
  204. package/styles/form-text-control.js +1 -1
  205. package/types/react.d.ts +101 -0
  206. package/utils/date-helpers.d.ts +22 -0
  207. package/utils/date-helpers.js +107 -0
  208. package/utils/date-helpers.js.map +1 -0
  209. package/utils/date-mask.d.ts +44 -0
  210. package/utils/date-mask.js +198 -0
  211. package/utils/date-mask.js.map +1 -0
  212. package/utils/time.js +1 -1
  213. package/utils/time.js.map +1 -1
@@ -3352,6 +3352,13 @@
3352
3352
  }
3353
3353
  ],
3354
3354
  "members": [
3355
+ {
3356
+ "kind": "field",
3357
+ "name": "hasSlotController",
3358
+ "privacy": "private",
3359
+ "default": "new HasSlotController(this, \"[default]\")",
3360
+ "type": {}
3361
+ },
3355
3362
  {
3356
3363
  "kind": "field",
3357
3364
  "name": "value",
@@ -5732,201 +5739,1549 @@
5732
5739
  "description": "The input's placeholder text.",
5733
5740
  "fieldName": "placeholder",
5734
5741
  "inheritedFrom": {
5735
- "name": "SelectElement",
5736
- "module": "src/base/select-element.ts"
5742
+ "name": "SelectElement",
5743
+ "module": "src/base/select-element.ts"
5744
+ }
5745
+ },
5746
+ {
5747
+ "name": "autofocus",
5748
+ "type": {
5749
+ "text": "boolean"
5750
+ },
5751
+ "default": "false",
5752
+ "description": "Autofocus the input",
5753
+ "fieldName": "autofocus",
5754
+ "inheritedFrom": {
5755
+ "name": "SelectElement",
5756
+ "module": "src/base/select-element.ts"
5757
+ }
5758
+ },
5759
+ {
5760
+ "name": "disabled",
5761
+ "type": {
5762
+ "text": "boolean"
5763
+ },
5764
+ "default": "false",
5765
+ "description": "Disables the input.",
5766
+ "fieldName": "disabled",
5767
+ "inheritedFrom": {
5768
+ "name": "DropdownElement",
5769
+ "module": "src/base/dropdown-element.ts"
5770
+ }
5771
+ },
5772
+ {
5773
+ "name": "required",
5774
+ "type": {
5775
+ "text": "boolean"
5776
+ },
5777
+ "default": "false",
5778
+ "description": "Makes the input a required field.",
5779
+ "fieldName": "required",
5780
+ "inheritedFrom": {
5781
+ "name": "SelectElement",
5782
+ "module": "src/base/select-element.ts"
5783
+ }
5784
+ },
5785
+ {
5786
+ "name": "loading",
5787
+ "type": {
5788
+ "text": "boolean"
5789
+ },
5790
+ "default": "false",
5791
+ "description": "Sets the loading state of the component",
5792
+ "fieldName": "loading",
5793
+ "inheritedFrom": {
5794
+ "name": "SelectElement",
5795
+ "module": "src/base/select-element.ts"
5796
+ }
5797
+ },
5798
+ {
5799
+ "name": "value",
5800
+ "type": {
5801
+ "text": "string"
5802
+ },
5803
+ "default": "\"\"",
5804
+ "description": "IMPORTANT:\nWe still expose `.value` externally, but this is now the underlying ID or data\n(e.g. 1, 2, 'abc', ...), not the label that appears in the input box.",
5805
+ "fieldName": "value",
5806
+ "inheritedFrom": {
5807
+ "name": "SelectElement",
5808
+ "module": "src/base/select-element.ts"
5809
+ }
5810
+ },
5811
+ {
5812
+ "name": "hasFeedback",
5813
+ "type": {
5814
+ "text": "boolean"
5815
+ },
5816
+ "default": "false",
5817
+ "description": "Allows invalidFeedback, invalid and valid styles to be visible with the input",
5818
+ "fieldName": "hasFeedback",
5819
+ "inheritedFrom": {
5820
+ "name": "SelectElement",
5821
+ "module": "src/base/select-element.ts"
5822
+ }
5823
+ },
5824
+ {
5825
+ "name": "invalidFeedback",
5826
+ "type": {
5827
+ "text": "string"
5828
+ },
5829
+ "default": "\"\"",
5830
+ "description": "Feedback text for error state when validated",
5831
+ "fieldName": "invalidFeedback",
5832
+ "inheritedFrom": {
5833
+ "name": "SelectElement",
5834
+ "module": "src/base/select-element.ts"
5835
+ }
5836
+ },
5837
+ {
5838
+ "name": "invalid",
5839
+ "type": {
5840
+ "text": "boolean"
5841
+ },
5842
+ "default": "false",
5843
+ "description": "Marks the component as invalid. Replace the pseudo :invalid selector.",
5844
+ "fieldName": "invalid",
5845
+ "inheritedFrom": {
5846
+ "name": "SelectElement",
5847
+ "module": "src/base/select-element.ts"
5848
+ }
5849
+ },
5850
+ {
5851
+ "name": "autocomplete",
5852
+ "type": {
5853
+ "text": "string"
5854
+ },
5855
+ "default": "\"on\"",
5856
+ "description": "Controlling of autocomplete behaviour",
5857
+ "fieldName": "autocomplete",
5858
+ "inheritedFrom": {
5859
+ "name": "SelectElement",
5860
+ "module": "src/base/select-element.ts"
5861
+ }
5862
+ },
5863
+ {
5864
+ "name": "menuList",
5865
+ "type": {
5866
+ "text": "SgdsOptionData[]"
5867
+ },
5868
+ "default": "[]",
5869
+ "description": "The list of items to display in the dropdown.\n`interface SgdsComboBoxItemData {\nlabel: string;\nvalue: string;\n}`",
5870
+ "deprecated": "Deprecated in favour of slots",
5871
+ "fieldName": "menuList",
5872
+ "inheritedFrom": {
5873
+ "name": "SelectElement",
5874
+ "module": "src/base/select-element.ts"
5875
+ }
5876
+ },
5877
+ {
5878
+ "name": "hidden",
5879
+ "type": {
5880
+ "text": "boolean"
5881
+ },
5882
+ "default": "false",
5883
+ "fieldName": "hidden",
5884
+ "inheritedFrom": {
5885
+ "name": "DropdownListElement",
5886
+ "module": "src/base/dropdown-list-element.ts"
5887
+ }
5888
+ },
5889
+ {
5890
+ "name": "floatingOpts",
5891
+ "type": {
5892
+ "text": "{ placement?: Placement; middleware?: Array<Middleware> }"
5893
+ },
5894
+ "default": "{}",
5895
+ "description": "Additional configuration to pass to Floating UI.",
5896
+ "fieldName": "floatingOpts",
5897
+ "inheritedFrom": {
5898
+ "name": "DropdownElement",
5899
+ "module": "src/base/dropdown-element.ts"
5900
+ }
5901
+ },
5902
+ {
5903
+ "name": "menuIsOpen",
5904
+ "type": {
5905
+ "text": "boolean"
5906
+ },
5907
+ "default": "false",
5908
+ "description": "When true, dropdown menu shows on first load",
5909
+ "fieldName": "menuIsOpen",
5910
+ "inheritedFrom": {
5911
+ "name": "DropdownElement",
5912
+ "module": "src/base/dropdown-element.ts"
5913
+ }
5914
+ },
5915
+ {
5916
+ "name": "readonly",
5917
+ "type": {
5918
+ "text": "boolean"
5919
+ },
5920
+ "default": "false",
5921
+ "description": "Makes the input readonly.",
5922
+ "fieldName": "readonly",
5923
+ "inheritedFrom": {
5924
+ "name": "DropdownElement",
5925
+ "module": "src/base/dropdown-element.ts"
5926
+ }
5927
+ }
5928
+ ],
5929
+ "superclass": {
5930
+ "name": "SelectElement",
5931
+ "module": "/src/base/select-element"
5932
+ },
5933
+ "summary": "ComboBox component is used for users to make one or more selections from a list through user input, keyboard or mouse actions",
5934
+ "tagName": "sgds-combo-box",
5935
+ "customElement": true,
5936
+ "modulePath": "src/components/ComboBox/sgds-combo-box.ts",
5937
+ "cssProperties": [],
5938
+ "cssParts": [],
5939
+ "cssStates": []
5940
+ }
5941
+ ],
5942
+ "exports": [
5943
+ {
5944
+ "kind": "js",
5945
+ "name": "ISgdsComboBoxInputEventDetail",
5946
+ "declaration": {
5947
+ "name": "ISgdsComboBoxInputEventDetail",
5948
+ "module": "src/components/ComboBox/sgds-combo-box.ts"
5949
+ }
5950
+ },
5951
+ {
5952
+ "kind": "js",
5953
+ "name": "SgdsComboBox",
5954
+ "declaration": {
5955
+ "name": "SgdsComboBox",
5956
+ "module": "src/components/ComboBox/sgds-combo-box.ts"
5957
+ }
5958
+ },
5959
+ {
5960
+ "kind": "js",
5961
+ "name": "default",
5962
+ "declaration": {
5963
+ "name": "SgdsComboBox",
5964
+ "module": "src/components/ComboBox/sgds-combo-box.ts"
5965
+ }
5966
+ }
5967
+ ]
5968
+ },
5969
+ {
5970
+ "kind": "javascript-module",
5971
+ "path": "src/components/DataTable/sgds-data-table-cell.ts",
5972
+ "declarations": [
5973
+ {
5974
+ "kind": "class",
5975
+ "description": "",
5976
+ "name": "SgdsDataTableCell",
5977
+ "slots": [
5978
+ {
5979
+ "description": "Content to display inside the cell.",
5980
+ "name": "default"
5981
+ }
5982
+ ],
5983
+ "members": [
5984
+ {
5985
+ "kind": "field",
5986
+ "name": "colspan",
5987
+ "type": {
5988
+ "text": "number | undefined"
5989
+ },
5990
+ "description": "Number of columns this cell spans.",
5991
+ "attribute": "colspan",
5992
+ "reflects": true
5993
+ },
5994
+ {
5995
+ "kind": "field",
5996
+ "name": "rowspan",
5997
+ "type": {
5998
+ "text": "number | undefined"
5999
+ },
6000
+ "description": "Number of rows this cell spans.",
6001
+ "attribute": "rowspan",
6002
+ "reflects": true
6003
+ },
6004
+ {
6005
+ "kind": "method",
6006
+ "name": "emit",
6007
+ "parameters": [
6008
+ {
6009
+ "name": "name",
6010
+ "type": {
6011
+ "text": "string"
6012
+ }
6013
+ },
6014
+ {
6015
+ "name": "options",
6016
+ "optional": true,
6017
+ "type": {
6018
+ "text": "CustomEventInit<T>"
6019
+ }
6020
+ }
6021
+ ],
6022
+ "description": "Emits a custom event with more convenient defaults.",
6023
+ "type": {},
6024
+ "inheritedFrom": {
6025
+ "name": "SgdsElement",
6026
+ "module": "src/base/sgds-element.ts"
6027
+ }
6028
+ },
6029
+ {
6030
+ "kind": "method",
6031
+ "name": "define",
6032
+ "static": true,
6033
+ "parameters": [
6034
+ {
6035
+ "name": "name",
6036
+ "type": {
6037
+ "text": "string"
6038
+ }
6039
+ },
6040
+ {
6041
+ "name": "elementConstructor",
6042
+ "default": "this"
6043
+ },
6044
+ {
6045
+ "name": "options",
6046
+ "default": "{}",
6047
+ "type": {
6048
+ "text": "ElementDefinitionOptions"
6049
+ }
6050
+ }
6051
+ ],
6052
+ "type": {},
6053
+ "inheritedFrom": {
6054
+ "name": "SgdsElement",
6055
+ "module": "src/base/sgds-element.ts"
6056
+ }
6057
+ }
6058
+ ],
6059
+ "attributes": [
6060
+ {
6061
+ "name": "colspan",
6062
+ "type": {
6063
+ "text": "number | undefined"
6064
+ },
6065
+ "description": "Number of columns this cell spans.",
6066
+ "fieldName": "colspan"
6067
+ },
6068
+ {
6069
+ "name": "rowspan",
6070
+ "type": {
6071
+ "text": "number | undefined"
6072
+ },
6073
+ "description": "Number of rows this cell spans.",
6074
+ "fieldName": "rowspan"
6075
+ }
6076
+ ],
6077
+ "superclass": {
6078
+ "name": "SgdsElement",
6079
+ "module": "/src/base/sgds-element"
6080
+ },
6081
+ "summary": "Data container for a table cell. Rendered as a `<td>` by the parent `sgds-data-table-row`.",
6082
+ "tagName": "sgds-data-table-cell",
6083
+ "customElement": true,
6084
+ "modulePath": "src/components/DataTable/sgds-data-table-cell.ts",
6085
+ "cssProperties": [],
6086
+ "cssParts": [],
6087
+ "cssStates": [],
6088
+ "events": []
6089
+ }
6090
+ ],
6091
+ "exports": [
6092
+ {
6093
+ "kind": "js",
6094
+ "name": "SgdsDataTableCell",
6095
+ "declaration": {
6096
+ "name": "SgdsDataTableCell",
6097
+ "module": "src/components/DataTable/sgds-data-table-cell.ts"
6098
+ }
6099
+ },
6100
+ {
6101
+ "kind": "js",
6102
+ "name": "default",
6103
+ "declaration": {
6104
+ "name": "SgdsDataTableCell",
6105
+ "module": "src/components/DataTable/sgds-data-table-cell.ts"
6106
+ }
6107
+ }
6108
+ ]
6109
+ },
6110
+ {
6111
+ "kind": "javascript-module",
6112
+ "path": "src/components/DataTable/sgds-data-table-head.ts",
6113
+ "declarations": [
6114
+ {
6115
+ "kind": "class",
6116
+ "description": "",
6117
+ "name": "SgdsDataTableHead",
6118
+ "slots": [
6119
+ {
6120
+ "description": "Content to display inside the header cell.",
6121
+ "name": "default"
6122
+ }
6123
+ ],
6124
+ "members": [
6125
+ {
6126
+ "kind": "field",
6127
+ "name": "width",
6128
+ "type": {
6129
+ "text": "string | undefined"
6130
+ },
6131
+ "description": "Sets the column width.",
6132
+ "attribute": "width",
6133
+ "reflects": true
6134
+ },
6135
+ {
6136
+ "kind": "field",
6137
+ "name": "colspan",
6138
+ "type": {
6139
+ "text": "number | undefined"
6140
+ },
6141
+ "description": "Number of columns this cell spans.",
6142
+ "attribute": "colspan",
6143
+ "reflects": true
6144
+ },
6145
+ {
6146
+ "kind": "field",
6147
+ "name": "rowspan",
6148
+ "type": {
6149
+ "text": "number | undefined"
6150
+ },
6151
+ "description": "Number of rows this cell spans.",
6152
+ "attribute": "rowspan",
6153
+ "reflects": true
6154
+ },
6155
+ {
6156
+ "kind": "field",
6157
+ "name": "textAlign",
6158
+ "type": {
6159
+ "text": "\"left\" | \"right\""
6160
+ },
6161
+ "default": "\"left\"",
6162
+ "description": "Text alignment for the header content.",
6163
+ "attribute": "textAlign",
6164
+ "reflects": true
6165
+ },
6166
+ {
6167
+ "kind": "field",
6168
+ "name": "ariasort",
6169
+ "type": {
6170
+ "text": "\"ascending\" | \"descending\" | \"none\" | \"other\" | undefined"
6171
+ },
6172
+ "description": "Current sort direction for this column.",
6173
+ "attribute": "ariasort",
6174
+ "reflects": true
6175
+ },
6176
+ {
6177
+ "kind": "field",
6178
+ "name": "sorting",
6179
+ "type": {
6180
+ "text": "boolean"
6181
+ },
6182
+ "default": "false",
6183
+ "description": "When true, clicking this header cycles through ascending → descending → none sort.",
6184
+ "attribute": "sorting",
6185
+ "reflects": true
6186
+ },
6187
+ {
6188
+ "kind": "field",
6189
+ "name": "sortKey",
6190
+ "type": {
6191
+ "text": "string"
6192
+ },
6193
+ "default": "\"\"",
6194
+ "description": "Column key emitted in the row's internal sort payload, used to identify which column to sort.",
6195
+ "attribute": "sortKey",
6196
+ "reflects": true
6197
+ },
6198
+ {
6199
+ "kind": "method",
6200
+ "name": "emit",
6201
+ "parameters": [
6202
+ {
6203
+ "name": "name",
6204
+ "type": {
6205
+ "text": "string"
6206
+ }
6207
+ },
6208
+ {
6209
+ "name": "options",
6210
+ "optional": true,
6211
+ "type": {
6212
+ "text": "CustomEventInit<T>"
6213
+ }
6214
+ }
6215
+ ],
6216
+ "description": "Emits a custom event with more convenient defaults.",
6217
+ "type": {},
6218
+ "inheritedFrom": {
6219
+ "name": "SgdsElement",
6220
+ "module": "src/base/sgds-element.ts"
6221
+ }
6222
+ },
6223
+ {
6224
+ "kind": "method",
6225
+ "name": "define",
6226
+ "static": true,
6227
+ "parameters": [
6228
+ {
6229
+ "name": "name",
6230
+ "type": {
6231
+ "text": "string"
6232
+ }
6233
+ },
6234
+ {
6235
+ "name": "elementConstructor",
6236
+ "default": "this"
6237
+ },
6238
+ {
6239
+ "name": "options",
6240
+ "default": "{}",
6241
+ "type": {
6242
+ "text": "ElementDefinitionOptions"
6243
+ }
6244
+ }
6245
+ ],
6246
+ "type": {},
6247
+ "inheritedFrom": {
6248
+ "name": "SgdsElement",
6249
+ "module": "src/base/sgds-element.ts"
6250
+ }
6251
+ }
6252
+ ],
6253
+ "attributes": [
6254
+ {
6255
+ "name": "width",
6256
+ "type": {
6257
+ "text": "string | undefined"
6258
+ },
6259
+ "description": "Sets the column width.",
6260
+ "fieldName": "width"
6261
+ },
6262
+ {
6263
+ "name": "colspan",
6264
+ "type": {
6265
+ "text": "number | undefined"
6266
+ },
6267
+ "description": "Number of columns this cell spans.",
6268
+ "fieldName": "colspan"
6269
+ },
6270
+ {
6271
+ "name": "rowspan",
6272
+ "type": {
6273
+ "text": "number | undefined"
6274
+ },
6275
+ "description": "Number of rows this cell spans.",
6276
+ "fieldName": "rowspan"
6277
+ },
6278
+ {
6279
+ "name": "textAlign",
6280
+ "type": {
6281
+ "text": "\"left\" | \"right\""
6282
+ },
6283
+ "default": "\"left\"",
6284
+ "description": "Text alignment for the header content.",
6285
+ "fieldName": "textAlign"
6286
+ },
6287
+ {
6288
+ "name": "ariasort",
6289
+ "type": {
6290
+ "text": "\"ascending\" | \"descending\" | \"none\" | \"other\" | undefined"
6291
+ },
6292
+ "description": "Current sort direction for this column.",
6293
+ "fieldName": "ariasort"
6294
+ },
6295
+ {
6296
+ "name": "sorting",
6297
+ "type": {
6298
+ "text": "boolean"
6299
+ },
6300
+ "default": "false",
6301
+ "description": "When true, clicking this header cycles through ascending → descending → none sort.",
6302
+ "fieldName": "sorting"
6303
+ },
6304
+ {
6305
+ "name": "sortKey",
6306
+ "type": {
6307
+ "text": "string"
6308
+ },
6309
+ "default": "\"\"",
6310
+ "description": "Column key emitted in the row's internal sort payload, used to identify which column to sort.",
6311
+ "fieldName": "sortKey"
6312
+ }
6313
+ ],
6314
+ "superclass": {
6315
+ "name": "SgdsElement",
6316
+ "module": "/src/base/sgds-element"
6317
+ },
6318
+ "summary": "Data container for a table header cell. Rendered as a `<th>` by the parent `sgds-data-table-row`.",
6319
+ "tagName": "sgds-data-table-head",
6320
+ "customElement": true,
6321
+ "modulePath": "src/components/DataTable/sgds-data-table-head.ts",
6322
+ "cssProperties": [],
6323
+ "cssParts": [],
6324
+ "cssStates": [],
6325
+ "events": []
6326
+ }
6327
+ ],
6328
+ "exports": [
6329
+ {
6330
+ "kind": "js",
6331
+ "name": "SgdsDataTableHead",
6332
+ "declaration": {
6333
+ "name": "SgdsDataTableHead",
6334
+ "module": "src/components/DataTable/sgds-data-table-head.ts"
6335
+ }
6336
+ },
6337
+ {
6338
+ "kind": "js",
6339
+ "name": "default",
6340
+ "declaration": {
6341
+ "name": "SgdsDataTableHead",
6342
+ "module": "src/components/DataTable/sgds-data-table-head.ts"
6343
+ }
6344
+ }
6345
+ ]
6346
+ },
6347
+ {
6348
+ "kind": "javascript-module",
6349
+ "path": "src/components/DataTable/sgds-data-table-row.ts",
6350
+ "declarations": [
6351
+ {
6352
+ "kind": "class",
6353
+ "description": "",
6354
+ "name": "SgdsDataTableRow",
6355
+ "slots": [
6356
+ {
6357
+ "description": "Insert `sgds-data-table-cell` or `sgds-data-table-head` elements.",
6358
+ "name": "default"
6359
+ },
6360
+ {
6361
+ "description": "Content shown in the animated expand area beneath the row.",
6362
+ "name": "content"
6363
+ }
6364
+ ],
6365
+ "members": [
6366
+ {
6367
+ "kind": "field",
6368
+ "name": "rowData",
6369
+ "type": {
6370
+ "text": "Record<string, unknown>"
6371
+ },
6372
+ "default": "{}",
6373
+ "description": "Arbitrary data associated with this row. Returned in event detail on row selection.",
6374
+ "attribute": "rowData",
6375
+ "reflects": true
6376
+ },
6377
+ {
6378
+ "kind": "field",
6379
+ "name": "expand",
6380
+ "type": {
6381
+ "text": "boolean"
6382
+ },
6383
+ "default": "false",
6384
+ "description": "When true, the row has an expandable content area toggled by a chevron.",
6385
+ "attribute": "expand",
6386
+ "reflects": true
6387
+ },
6388
+ {
6389
+ "kind": "field",
6390
+ "name": "open",
6391
+ "type": {
6392
+ "text": "boolean"
6393
+ },
6394
+ "default": "false",
6395
+ "description": "When true, the expandable content area is open.",
6396
+ "attribute": "open",
6397
+ "reflects": true
6398
+ },
6399
+ {
6400
+ "kind": "field",
6401
+ "name": "checked",
6402
+ "type": {
6403
+ "text": "boolean"
6404
+ },
6405
+ "default": "false",
6406
+ "description": "When true, the row is checked.",
6407
+ "attribute": "checked",
6408
+ "reflects": true
6409
+ },
6410
+ {
6411
+ "kind": "field",
6412
+ "name": "_isHeaderRow",
6413
+ "type": {
6414
+ "text": "boolean"
6415
+ },
6416
+ "privacy": "private",
6417
+ "default": "false"
6418
+ },
6419
+ {
6420
+ "kind": "field",
6421
+ "name": "_cellSlotNames",
6422
+ "privacy": "private",
6423
+ "default": "new WeakMap<SgdsDataTableCell | SgdsDataTableHead, string>()",
6424
+ "type": {}
6425
+ },
6426
+ {
6427
+ "kind": "field",
6428
+ "name": "_lightDomObserver",
6429
+ "type": {
6430
+ "text": "MutationObserver | undefined"
6431
+ },
6432
+ "privacy": "private"
6433
+ },
6434
+ {
6435
+ "kind": "field",
6436
+ "name": "checkbox",
6437
+ "type": {
6438
+ "text": "SgdsCheckbox | null"
6439
+ },
6440
+ "description": "The checkbox rendered inside this row, if `showCheckbox` is true."
6441
+ },
6442
+ {
6443
+ "kind": "method",
6444
+ "name": "handleExpandedChange",
6445
+ "type": {}
6446
+ },
6447
+ {
6448
+ "kind": "method",
6449
+ "name": "handleCheckedChange",
6450
+ "type": {}
6451
+ },
6452
+ {
6453
+ "kind": "method",
6454
+ "name": "show",
6455
+ "privacy": "public",
6456
+ "description": "Opens the expandable content area.",
6457
+ "type": {}
6458
+ },
6459
+ {
6460
+ "kind": "method",
6461
+ "name": "hide",
6462
+ "privacy": "public",
6463
+ "description": "Closes the expandable content area.",
6464
+ "type": {}
6465
+ },
6466
+ {
6467
+ "kind": "method",
6468
+ "name": "_getCells",
6469
+ "privacy": "private",
6470
+ "type": {}
6471
+ },
6472
+ {
6473
+ "kind": "method",
6474
+ "name": "_syncCellSlots",
6475
+ "privacy": "private",
6476
+ "parameters": [
6477
+ {
6478
+ "name": "cells",
6479
+ "type": {
6480
+ "text": "Array<SgdsDataTableCell | SgdsDataTableHead>"
6481
+ }
6482
+ }
6483
+ ],
6484
+ "type": {}
6485
+ },
6486
+ {
6487
+ "kind": "method",
6488
+ "name": "_handleLightDomChange",
6489
+ "privacy": "private",
6490
+ "type": {}
6491
+ },
6492
+ {
6493
+ "kind": "method",
6494
+ "name": "_onCheckboxChange",
6495
+ "privacy": "private",
6496
+ "parameters": [
6497
+ {
6498
+ "name": "e",
6499
+ "type": {
6500
+ "text": "CustomEvent"
6501
+ }
6502
+ }
6503
+ ],
6504
+ "type": {}
6505
+ },
6506
+ {
6507
+ "kind": "method",
6508
+ "name": "_toggleExpand",
6509
+ "privacy": "private",
6510
+ "type": {}
6511
+ },
6512
+ {
6513
+ "kind": "method",
6514
+ "name": "_onExpandKeyDown",
6515
+ "privacy": "private",
6516
+ "parameters": [
6517
+ {
6518
+ "name": "e",
6519
+ "type": {
6520
+ "text": "KeyboardEvent"
6521
+ }
6522
+ }
6523
+ ],
6524
+ "type": {}
6525
+ },
6526
+ {
6527
+ "kind": "method",
6528
+ "name": "_onSortKeyDown",
6529
+ "privacy": "private",
6530
+ "parameters": [
6531
+ {
6532
+ "name": "e",
6533
+ "type": {
6534
+ "text": "KeyboardEvent"
6535
+ }
6536
+ },
6537
+ {
6538
+ "name": "header",
6539
+ "type": {
6540
+ "text": "SgdsDataTableHead"
6541
+ }
6542
+ }
6543
+ ],
6544
+ "type": {}
6545
+ },
6546
+ {
6547
+ "kind": "method",
6548
+ "name": "_renderCell",
6549
+ "privacy": "private",
6550
+ "parameters": [
6551
+ {
6552
+ "name": "el",
6553
+ "type": {
6554
+ "text": "SgdsDataTableCell | SgdsDataTableHead"
6555
+ }
6556
+ },
6557
+ {
6558
+ "name": "columnIndex",
6559
+ "type": {
6560
+ "text": "number"
6561
+ }
6562
+ }
6563
+ ],
6564
+ "type": {}
6565
+ },
6566
+ {
6567
+ "kind": "method",
6568
+ "name": "_renderExpandCell",
6569
+ "privacy": "private",
6570
+ "type": {}
6571
+ },
6572
+ {
6573
+ "kind": "method",
6574
+ "name": "_renderExpandPlaceholder",
6575
+ "privacy": "private",
6576
+ "type": {}
6577
+ },
6578
+ {
6579
+ "kind": "method",
6580
+ "name": "_renderCheckboxCell",
6581
+ "privacy": "private",
6582
+ "type": {}
6583
+ },
6584
+ {
6585
+ "kind": "method",
6586
+ "name": "emit",
6587
+ "parameters": [
6588
+ {
6589
+ "name": "name",
6590
+ "type": {
6591
+ "text": "string"
6592
+ }
6593
+ },
6594
+ {
6595
+ "name": "options",
6596
+ "optional": true,
6597
+ "type": {
6598
+ "text": "CustomEventInit<T>"
6599
+ }
6600
+ }
6601
+ ],
6602
+ "description": "Emits a custom event with more convenient defaults.",
6603
+ "type": {},
6604
+ "inheritedFrom": {
6605
+ "name": "SgdsElement",
6606
+ "module": "src/base/sgds-element.ts"
6607
+ }
6608
+ },
6609
+ {
6610
+ "kind": "method",
6611
+ "name": "define",
6612
+ "static": true,
6613
+ "parameters": [
6614
+ {
6615
+ "name": "name",
6616
+ "type": {
6617
+ "text": "string"
6618
+ }
6619
+ },
6620
+ {
6621
+ "name": "elementConstructor",
6622
+ "default": "this"
6623
+ },
6624
+ {
6625
+ "name": "options",
6626
+ "default": "{}",
6627
+ "type": {
6628
+ "text": "ElementDefinitionOptions"
6629
+ }
6630
+ }
6631
+ ],
6632
+ "type": {},
6633
+ "inheritedFrom": {
6634
+ "name": "SgdsElement",
6635
+ "module": "src/base/sgds-element.ts"
6636
+ }
6637
+ }
6638
+ ],
6639
+ "events": [
6640
+ {
6641
+ "description": "Emitted when the expandable row begins to open.",
6642
+ "name": "sgds-show",
6643
+ "reactName": "onSgdsShow"
6644
+ },
6645
+ {
6646
+ "description": "Emitted after the expandable row open animation completes.",
6647
+ "name": "sgds-after-show",
6648
+ "reactName": "onSgdsAfterShow"
6649
+ },
6650
+ {
6651
+ "description": "Emitted when the expandable row begins to close.",
6652
+ "name": "sgds-hide",
6653
+ "reactName": "onSgdsHide"
6654
+ },
6655
+ {
6656
+ "description": "Emitted after the expandable row close animation completes.",
6657
+ "name": "sgds-after-hide",
6658
+ "reactName": "onSgdsAfterHide"
6659
+ }
6660
+ ],
6661
+ "attributes": [
6662
+ {
6663
+ "name": "rowData",
6664
+ "type": {
6665
+ "text": "Record<string, unknown>"
6666
+ },
6667
+ "default": "{}",
6668
+ "description": "Arbitrary data associated with this row. Returned in event detail on row selection.",
6669
+ "fieldName": "rowData"
6670
+ },
6671
+ {
6672
+ "name": "expand",
6673
+ "type": {
6674
+ "text": "boolean"
6675
+ },
6676
+ "default": "false",
6677
+ "description": "When true, the row has an expandable content area toggled by a chevron.",
6678
+ "fieldName": "expand"
6679
+ },
6680
+ {
6681
+ "name": "open",
6682
+ "type": {
6683
+ "text": "boolean"
6684
+ },
6685
+ "default": "false",
6686
+ "description": "When true, the expandable content area is open.",
6687
+ "fieldName": "open"
6688
+ },
6689
+ {
6690
+ "name": "checked",
6691
+ "type": {
6692
+ "text": "boolean"
6693
+ },
6694
+ "default": "false",
6695
+ "description": "When true, the row is checked.",
6696
+ "fieldName": "checked"
6697
+ }
6698
+ ],
6699
+ "superclass": {
6700
+ "name": "SgdsElement",
6701
+ "module": "/src/base/sgds-element"
6702
+ },
6703
+ "summary": "A data table row. Set `expand` to enable an expandable content area beneath\nthe row, then place detail content in the `content` slot.",
6704
+ "tagName": "sgds-data-table-row",
6705
+ "customElement": true,
6706
+ "modulePath": "src/components/DataTable/sgds-data-table-row.ts",
6707
+ "cssProperties": [],
6708
+ "cssParts": [],
6709
+ "cssStates": []
6710
+ }
6711
+ ],
6712
+ "exports": [
6713
+ {
6714
+ "kind": "js",
6715
+ "name": "SgdsDataTableRow",
6716
+ "declaration": {
6717
+ "name": "SgdsDataTableRow",
6718
+ "module": "src/components/DataTable/sgds-data-table-row.ts"
6719
+ }
6720
+ },
6721
+ {
6722
+ "kind": "js",
6723
+ "name": "default",
6724
+ "declaration": {
6725
+ "name": "SgdsDataTableRow",
6726
+ "module": "src/components/DataTable/sgds-data-table-row.ts"
6727
+ }
6728
+ }
6729
+ ]
6730
+ },
6731
+ {
6732
+ "kind": "javascript-module",
6733
+ "path": "src/components/DataTable/sgds-data-table.ts",
6734
+ "declarations": [
6735
+ {
6736
+ "kind": "class",
6737
+ "description": "",
6738
+ "name": "SgdsDataTable",
6739
+ "slots": [
6740
+ {
6741
+ "description": "Insert one or more `sgds-data-table-row` elements.",
6742
+ "name": "default"
6743
+ },
6744
+ {
6745
+ "description": "Custom content rendered when no body rows are available and `isLoading` is false.",
6746
+ "name": "no-data"
6747
+ }
6748
+ ],
6749
+ "members": [
6750
+ {
6751
+ "kind": "field",
6752
+ "name": "multiSelect",
6753
+ "type": {
6754
+ "text": "boolean"
6755
+ },
6756
+ "default": "false",
6757
+ "description": "If true, renders a checkbox column for row selection.",
6758
+ "attribute": "multiSelect"
6759
+ },
6760
+ {
6761
+ "kind": "field",
6762
+ "name": "dataLength",
6763
+ "type": {
6764
+ "text": "number"
6765
+ },
6766
+ "default": "0",
6767
+ "description": "Total number of data items (for server-side pagination).",
6768
+ "attribute": "dataLength"
6769
+ },
6770
+ {
6771
+ "kind": "field",
6772
+ "name": "currentPage",
6773
+ "type": {
6774
+ "text": "number"
6775
+ },
6776
+ "default": "1",
6777
+ "description": "Current page (1-based).",
6778
+ "attribute": "currentPage"
6779
+ },
6780
+ {
6781
+ "kind": "field",
6782
+ "name": "itemsPerPage",
6783
+ "type": {
6784
+ "text": "number"
6785
+ },
6786
+ "default": "5",
6787
+ "description": "Number of rows per page.",
6788
+ "attribute": "itemsPerPage"
6789
+ },
6790
+ {
6791
+ "kind": "field",
6792
+ "name": "footerText",
6793
+ "type": {
6794
+ "text": "string"
6795
+ },
6796
+ "default": "\"\"",
6797
+ "description": "Custom text shown on the footer's left side.",
6798
+ "attribute": "footerText"
6799
+ },
6800
+ {
6801
+ "kind": "field",
6802
+ "name": "hideFooter",
6803
+ "type": {
6804
+ "text": "boolean"
6805
+ },
6806
+ "default": "false",
6807
+ "description": "If true, hides the footer (summary text and pagination controls).",
6808
+ "attribute": "hideFooter"
6809
+ },
6810
+ {
6811
+ "kind": "field",
6812
+ "name": "isLoading",
6813
+ "type": {
6814
+ "text": "boolean"
6815
+ },
6816
+ "default": "false",
6817
+ "description": "When true, shows a loading state and hides body rows.",
6818
+ "attribute": "isLoading"
6819
+ },
6820
+ {
6821
+ "kind": "field",
6822
+ "name": "serverSort",
6823
+ "type": {
6824
+ "text": "boolean"
6825
+ },
6826
+ "default": "false",
6827
+ "description": "When true, emits sort events for external handling instead of local sorting.",
6828
+ "attribute": "serverSort"
6829
+ },
6830
+ {
6831
+ "kind": "field",
6832
+ "name": "layout",
6833
+ "type": {
6834
+ "text": "\"auto\" | \"fixed\""
6835
+ },
6836
+ "default": "\"auto\"",
6837
+ "description": "Controls the CSS `table-layout` algorithm.\nUse \"auto\" to let the browser size columns based on content, or \"fixed\" to distribute column widths evenly regardless of content.",
6838
+ "attribute": "layout",
6839
+ "reflects": true
6840
+ },
6841
+ {
6842
+ "kind": "field",
6843
+ "name": "mode",
6844
+ "type": {
6845
+ "text": "\"client\" | \"server\""
6846
+ },
6847
+ "default": "\"client\"",
6848
+ "description": "Pagination mode. `client` (default) slices rows and renders pagination controls.\n`server` renders all slotted rows as-is — the caller is responsible for passing\nthe correct page of data and handling `sgds-page-change` externally.",
6849
+ "attribute": "mode"
6850
+ },
6851
+ {
6852
+ "kind": "field",
6853
+ "name": "tableRows",
6854
+ "type": {
6855
+ "text": "SgdsDataTableRow[]"
6856
+ },
6857
+ "privacy": "private",
6858
+ "default": "[]"
6859
+ },
6860
+ {
6861
+ "kind": "field",
6862
+ "name": "headerRows",
6863
+ "type": {
6864
+ "text": "SgdsDataTableRow[]"
6865
+ },
6866
+ "privacy": "private",
6867
+ "default": "[]"
6868
+ },
6869
+ {
6870
+ "kind": "field",
6871
+ "name": "_headerCells",
6872
+ "type": {
6873
+ "text": "SgdsDataTableHead[]"
6874
+ },
6875
+ "privacy": "private",
6876
+ "default": "[]"
6877
+ },
6878
+ {
6879
+ "kind": "field",
6880
+ "name": "_initialRowPositions",
6881
+ "privacy": "private",
6882
+ "default": "new WeakMap<SgdsDataTableRow, number>()",
6883
+ "type": {}
6884
+ },
6885
+ {
6886
+ "kind": "field",
6887
+ "name": "_hasCapturedInitialRowPositions",
6888
+ "type": {
6889
+ "text": "boolean"
6890
+ },
6891
+ "privacy": "private",
6892
+ "default": "false"
6893
+ },
6894
+ {
6895
+ "kind": "field",
6896
+ "name": "_rowHandlers",
6897
+ "privacy": "private",
6898
+ "default": "new WeakMap<SgdsDataTableRow, EventListener>()",
6899
+ "type": {}
6900
+ },
6901
+ {
6902
+ "kind": "method",
6903
+ "name": "_isRowChecked",
6904
+ "privacy": "private",
6905
+ "parameters": [
6906
+ {
6907
+ "name": "row",
6908
+ "type": {
6909
+ "text": "SgdsDataTableRow"
6910
+ }
6911
+ }
6912
+ ],
6913
+ "type": {}
6914
+ },
6915
+ {
6916
+ "kind": "method",
6917
+ "name": "_updateHeaderCheckbox",
6918
+ "privacy": "private",
6919
+ "type": {}
6920
+ },
6921
+ {
6922
+ "kind": "method",
6923
+ "name": "_syncHeaderCheckboxAfterRender",
6924
+ "privacy": "private",
6925
+ "type": {}
6926
+ },
6927
+ {
6928
+ "kind": "method",
6929
+ "name": "_emitRowSelect",
6930
+ "privacy": "private",
6931
+ "type": {}
6932
+ },
6933
+ {
6934
+ "kind": "method",
6935
+ "name": "_attachRowListener",
6936
+ "privacy": "private",
6937
+ "parameters": [
6938
+ {
6939
+ "name": "row",
6940
+ "type": {
6941
+ "text": "SgdsDataTableRow"
6942
+ }
6943
+ }
6944
+ ],
6945
+ "type": {}
6946
+ },
6947
+ {
6948
+ "kind": "method",
6949
+ "name": "_configureRows",
6950
+ "privacy": "private",
6951
+ "type": {}
6952
+ },
6953
+ {
6954
+ "kind": "method",
6955
+ "name": "_applyColumnAlignment",
6956
+ "privacy": "private",
6957
+ "type": {}
6958
+ },
6959
+ {
6960
+ "kind": "method",
6961
+ "name": "_extractCellText",
6962
+ "privacy": "private",
6963
+ "parameters": [
6964
+ {
6965
+ "name": "row",
6966
+ "type": {
6967
+ "text": "SgdsDataTableRow"
6968
+ }
6969
+ },
6970
+ {
6971
+ "name": "columnIndex",
6972
+ "type": {
6973
+ "text": "number"
6974
+ }
6975
+ }
6976
+ ],
6977
+ "type": {}
6978
+ },
6979
+ {
6980
+ "kind": "method",
6981
+ "name": "_toComparableValue",
6982
+ "privacy": "private",
6983
+ "parameters": [
6984
+ {
6985
+ "name": "row",
6986
+ "type": {
6987
+ "text": "SgdsDataTableRow"
6988
+ }
6989
+ },
6990
+ {
6991
+ "name": "key",
6992
+ "type": {
6993
+ "text": "string"
6994
+ }
6995
+ },
6996
+ {
6997
+ "name": "columnIndex",
6998
+ "type": {
6999
+ "text": "number"
7000
+ }
7001
+ }
7002
+ ],
7003
+ "type": {}
7004
+ },
7005
+ {
7006
+ "kind": "method",
7007
+ "name": "_compareValues",
7008
+ "privacy": "private",
7009
+ "parameters": [
7010
+ {
7011
+ "name": "left",
7012
+ "type": {
7013
+ "text": "unknown"
7014
+ }
7015
+ },
7016
+ {
7017
+ "name": "right",
7018
+ "type": {
7019
+ "text": "unknown"
7020
+ }
7021
+ },
7022
+ {
7023
+ "name": "direction",
7024
+ "type": {
7025
+ "text": "\"ascending\" | \"descending\""
7026
+ }
7027
+ }
7028
+ ],
7029
+ "type": {}
7030
+ },
7031
+ {
7032
+ "kind": "method",
7033
+ "name": "_resetOtherHeaderSortStates",
7034
+ "privacy": "private",
7035
+ "parameters": [
7036
+ {
7037
+ "name": "activeHeader",
7038
+ "type": {
7039
+ "text": "SgdsDataTableHead | null"
7040
+ }
7041
+ }
7042
+ ],
7043
+ "type": {}
7044
+ },
7045
+ {
7046
+ "kind": "method",
7047
+ "name": "_getRowsInInitialPositionOrder",
7048
+ "privacy": "private",
7049
+ "parameters": [
7050
+ {
7051
+ "name": "rows",
7052
+ "type": {
7053
+ "text": "SgdsDataTableRow[]"
7054
+ }
7055
+ }
7056
+ ],
7057
+ "type": {}
7058
+ },
7059
+ {
7060
+ "kind": "method",
7061
+ "name": "_captureInitialRowPositions",
7062
+ "privacy": "private",
7063
+ "parameters": [
7064
+ {
7065
+ "name": "rows",
7066
+ "type": {
7067
+ "text": "SgdsDataTableRow[]"
7068
+ }
7069
+ }
7070
+ ],
7071
+ "type": {}
7072
+ },
7073
+ {
7074
+ "kind": "method",
7075
+ "name": "_handleSort",
7076
+ "privacy": "private",
7077
+ "parameters": [
7078
+ {
7079
+ "name": "e",
7080
+ "type": {
7081
+ "text": "Event"
7082
+ }
7083
+ }
7084
+ ],
7085
+ "type": {}
7086
+ },
7087
+ {
7088
+ "kind": "method",
7089
+ "name": "_syncDomRowOrder",
7090
+ "privacy": "private",
7091
+ "type": {}
7092
+ },
7093
+ {
7094
+ "kind": "method",
7095
+ "name": "_handleSlotChange",
7096
+ "privacy": "private",
7097
+ "parameters": [
7098
+ {
7099
+ "name": "e",
7100
+ "type": {
7101
+ "text": "Event"
7102
+ }
7103
+ }
7104
+ ],
7105
+ "type": {}
7106
+ },
7107
+ {
7108
+ "kind": "method",
7109
+ "name": "_updateVisibleRows",
7110
+ "privacy": "private",
7111
+ "type": {}
7112
+ },
7113
+ {
7114
+ "kind": "method",
7115
+ "name": "emit",
7116
+ "parameters": [
7117
+ {
7118
+ "name": "name",
7119
+ "type": {
7120
+ "text": "string"
7121
+ }
7122
+ },
7123
+ {
7124
+ "name": "options",
7125
+ "optional": true,
7126
+ "type": {
7127
+ "text": "CustomEventInit<T>"
7128
+ }
7129
+ }
7130
+ ],
7131
+ "description": "Emits a custom event with more convenient defaults.",
7132
+ "type": {},
7133
+ "inheritedFrom": {
7134
+ "name": "SgdsElement",
7135
+ "module": "src/base/sgds-element.ts"
5737
7136
  }
5738
7137
  },
5739
7138
  {
5740
- "name": "autofocus",
5741
- "type": {
5742
- "text": "boolean"
5743
- },
5744
- "default": "false",
5745
- "description": "Autofocus the input",
5746
- "fieldName": "autofocus",
7139
+ "kind": "method",
7140
+ "name": "define",
7141
+ "static": true,
7142
+ "parameters": [
7143
+ {
7144
+ "name": "name",
7145
+ "type": {
7146
+ "text": "string"
7147
+ }
7148
+ },
7149
+ {
7150
+ "name": "elementConstructor",
7151
+ "default": "this"
7152
+ },
7153
+ {
7154
+ "name": "options",
7155
+ "default": "{}",
7156
+ "type": {
7157
+ "text": "ElementDefinitionOptions"
7158
+ }
7159
+ }
7160
+ ],
7161
+ "type": {},
5747
7162
  "inheritedFrom": {
5748
- "name": "SelectElement",
5749
- "module": "src/base/select-element.ts"
7163
+ "name": "SgdsElement",
7164
+ "module": "src/base/sgds-element.ts"
5750
7165
  }
7166
+ }
7167
+ ],
7168
+ "events": [
7169
+ {
7170
+ "description": "Emitted when row checkboxes change. Detail: `{ selected: rowData[] }`.",
7171
+ "name": "sgds-row-select",
7172
+ "reactName": "onSgdsRowSelect"
5751
7173
  },
5752
7174
  {
5753
- "name": "disabled",
5754
- "type": {
5755
- "text": "boolean"
5756
- },
5757
- "default": "false",
5758
- "description": "Disables the input.",
5759
- "fieldName": "disabled",
5760
- "inheritedFrom": {
5761
- "name": "DropdownElement",
5762
- "module": "src/base/dropdown-element.ts"
5763
- }
7175
+ "description": "Emitted when `serverSort` is true and a sorting column header is clicked. Detail: `{ key: string; direction: \"ascending\" | \"descending\" | \"none\" }`.",
7176
+ "name": "sgds-sort",
7177
+ "reactName": "onSgdsSort"
5764
7178
  },
5765
7179
  {
5766
- "name": "required",
7180
+ "description": "Emitted when pagination changes page.",
7181
+ "name": "sgds-page-change",
7182
+ "reactName": "onSgdsPageChange"
7183
+ }
7184
+ ],
7185
+ "attributes": [
7186
+ {
7187
+ "name": "multiSelect",
5767
7188
  "type": {
5768
7189
  "text": "boolean"
5769
7190
  },
5770
7191
  "default": "false",
5771
- "description": "Makes the input a required field.",
5772
- "fieldName": "required",
5773
- "inheritedFrom": {
5774
- "name": "SelectElement",
5775
- "module": "src/base/select-element.ts"
5776
- }
7192
+ "description": "If true, renders a checkbox column for row selection.",
7193
+ "fieldName": "multiSelect"
5777
7194
  },
5778
7195
  {
5779
- "name": "loading",
7196
+ "name": "dataLength",
5780
7197
  "type": {
5781
- "text": "boolean"
7198
+ "text": "number"
5782
7199
  },
5783
- "default": "false",
5784
- "description": "Sets the loading state of the component",
5785
- "fieldName": "loading",
5786
- "inheritedFrom": {
5787
- "name": "SelectElement",
5788
- "module": "src/base/select-element.ts"
5789
- }
7200
+ "default": "0",
7201
+ "description": "Total number of data items (for server-side pagination).",
7202
+ "fieldName": "dataLength"
5790
7203
  },
5791
7204
  {
5792
- "name": "value",
7205
+ "name": "currentPage",
5793
7206
  "type": {
5794
- "text": "string"
7207
+ "text": "number"
5795
7208
  },
5796
- "default": "\"\"",
5797
- "description": "IMPORTANT:\nWe still expose `.value` externally, but this is now the underlying ID or data\n(e.g. 1, 2, 'abc', ...), not the label that appears in the input box.",
5798
- "fieldName": "value",
5799
- "inheritedFrom": {
5800
- "name": "SelectElement",
5801
- "module": "src/base/select-element.ts"
5802
- }
7209
+ "default": "1",
7210
+ "description": "Current page (1-based).",
7211
+ "fieldName": "currentPage"
5803
7212
  },
5804
7213
  {
5805
- "name": "hasFeedback",
7214
+ "name": "itemsPerPage",
5806
7215
  "type": {
5807
- "text": "boolean"
7216
+ "text": "number"
5808
7217
  },
5809
- "default": "false",
5810
- "description": "Allows invalidFeedback, invalid and valid styles to be visible with the input",
5811
- "fieldName": "hasFeedback",
5812
- "inheritedFrom": {
5813
- "name": "SelectElement",
5814
- "module": "src/base/select-element.ts"
5815
- }
7218
+ "default": "5",
7219
+ "description": "Number of rows per page.",
7220
+ "fieldName": "itemsPerPage"
5816
7221
  },
5817
7222
  {
5818
- "name": "invalidFeedback",
7223
+ "name": "footerText",
5819
7224
  "type": {
5820
7225
  "text": "string"
5821
7226
  },
5822
7227
  "default": "\"\"",
5823
- "description": "Feedback text for error state when validated",
5824
- "fieldName": "invalidFeedback",
5825
- "inheritedFrom": {
5826
- "name": "SelectElement",
5827
- "module": "src/base/select-element.ts"
5828
- }
7228
+ "description": "Custom text shown on the footer's left side.",
7229
+ "fieldName": "footerText"
5829
7230
  },
5830
7231
  {
5831
- "name": "invalid",
7232
+ "name": "hideFooter",
5832
7233
  "type": {
5833
7234
  "text": "boolean"
5834
7235
  },
5835
7236
  "default": "false",
5836
- "description": "Marks the component as invalid. Replace the pseudo :invalid selector.",
5837
- "fieldName": "invalid",
5838
- "inheritedFrom": {
5839
- "name": "SelectElement",
5840
- "module": "src/base/select-element.ts"
5841
- }
5842
- },
5843
- {
5844
- "name": "autocomplete",
5845
- "type": {
5846
- "text": "string"
5847
- },
5848
- "default": "\"on\"",
5849
- "description": "Controlling of autocomplete behaviour",
5850
- "fieldName": "autocomplete",
5851
- "inheritedFrom": {
5852
- "name": "SelectElement",
5853
- "module": "src/base/select-element.ts"
5854
- }
5855
- },
5856
- {
5857
- "name": "menuList",
5858
- "type": {
5859
- "text": "SgdsOptionData[]"
5860
- },
5861
- "default": "[]",
5862
- "description": "The list of items to display in the dropdown.\n`interface SgdsComboBoxItemData {\nlabel: string;\nvalue: string;\n}`",
5863
- "deprecated": "Deprecated in favour of slots",
5864
- "fieldName": "menuList",
5865
- "inheritedFrom": {
5866
- "name": "SelectElement",
5867
- "module": "src/base/select-element.ts"
5868
- }
7237
+ "description": "If true, hides the footer (summary text and pagination controls).",
7238
+ "fieldName": "hideFooter"
5869
7239
  },
5870
7240
  {
5871
- "name": "hidden",
7241
+ "name": "isLoading",
5872
7242
  "type": {
5873
7243
  "text": "boolean"
5874
7244
  },
5875
7245
  "default": "false",
5876
- "fieldName": "hidden",
5877
- "inheritedFrom": {
5878
- "name": "DropdownListElement",
5879
- "module": "src/base/dropdown-list-element.ts"
5880
- }
7246
+ "description": "When true, shows a loading state and hides body rows.",
7247
+ "fieldName": "isLoading"
5881
7248
  },
5882
7249
  {
5883
- "name": "floatingOpts",
7250
+ "name": "serverSort",
5884
7251
  "type": {
5885
- "text": "{ placement?: Placement; middleware?: Array<Middleware> }"
7252
+ "text": "boolean"
5886
7253
  },
5887
- "default": "{}",
5888
- "description": "Additional configuration to pass to Floating UI.",
5889
- "fieldName": "floatingOpts",
5890
- "inheritedFrom": {
5891
- "name": "DropdownElement",
5892
- "module": "src/base/dropdown-element.ts"
5893
- }
7254
+ "default": "false",
7255
+ "description": "When true, emits sort events for external handling instead of local sorting.",
7256
+ "fieldName": "serverSort"
5894
7257
  },
5895
7258
  {
5896
- "name": "menuIsOpen",
7259
+ "name": "layout",
5897
7260
  "type": {
5898
- "text": "boolean"
7261
+ "text": "\"auto\" | \"fixed\""
5899
7262
  },
5900
- "default": "false",
5901
- "description": "When true, dropdown menu shows on first load",
5902
- "fieldName": "menuIsOpen",
5903
- "inheritedFrom": {
5904
- "name": "DropdownElement",
5905
- "module": "src/base/dropdown-element.ts"
5906
- }
7263
+ "default": "\"auto\"",
7264
+ "description": "Controls the CSS `table-layout` algorithm.\nUse \"auto\" to let the browser size columns based on content, or \"fixed\" to distribute column widths evenly regardless of content.",
7265
+ "fieldName": "layout"
5907
7266
  },
5908
7267
  {
5909
- "name": "readonly",
7268
+ "name": "mode",
5910
7269
  "type": {
5911
- "text": "boolean"
7270
+ "text": "\"client\" | \"server\""
5912
7271
  },
5913
- "default": "false",
5914
- "description": "Makes the input readonly.",
5915
- "fieldName": "readonly",
5916
- "inheritedFrom": {
5917
- "name": "DropdownElement",
5918
- "module": "src/base/dropdown-element.ts"
5919
- }
7272
+ "default": "\"client\"",
7273
+ "description": "Pagination mode. `client` (default) slices rows and renders pagination controls.\n`server` renders all slotted rows as-is — the caller is responsible for passing\nthe correct page of data and handling `sgds-page-change` externally.",
7274
+ "fieldName": "mode"
5920
7275
  }
5921
7276
  ],
5922
7277
  "superclass": {
5923
- "name": "SelectElement",
5924
- "module": "/src/base/select-element"
7278
+ "name": "SgdsElement",
7279
+ "module": "/src/base/sgds-element"
5925
7280
  },
5926
- "summary": "ComboBox component is used for users to make one or more selections from a list through user input, keyboard or mouse actions",
5927
- "tagName": "sgds-combo-box",
7281
+ "summary": "A data table container with pagination, row selection, loading, and sorting support.",
7282
+ "tagName": "sgds-data-table",
5928
7283
  "customElement": true,
5929
- "modulePath": "src/components/ComboBox/sgds-combo-box.ts",
7284
+ "modulePath": "src/components/DataTable/sgds-data-table.ts",
5930
7285
  "cssProperties": [],
5931
7286
  "cssParts": [],
5932
7287
  "cssStates": []
@@ -5935,26 +7290,18 @@
5935
7290
  "exports": [
5936
7291
  {
5937
7292
  "kind": "js",
5938
- "name": "ISgdsComboBoxInputEventDetail",
5939
- "declaration": {
5940
- "name": "ISgdsComboBoxInputEventDetail",
5941
- "module": "src/components/ComboBox/sgds-combo-box.ts"
5942
- }
5943
- },
5944
- {
5945
- "kind": "js",
5946
- "name": "SgdsComboBox",
7293
+ "name": "SgdsDataTable",
5947
7294
  "declaration": {
5948
- "name": "SgdsComboBox",
5949
- "module": "src/components/ComboBox/sgds-combo-box.ts"
7295
+ "name": "SgdsDataTable",
7296
+ "module": "src/components/DataTable/sgds-data-table.ts"
5950
7297
  }
5951
7298
  },
5952
7299
  {
5953
7300
  "kind": "js",
5954
7301
  "name": "default",
5955
7302
  "declaration": {
5956
- "name": "SgdsComboBox",
5957
- "module": "src/components/ComboBox/sgds-combo-box.ts"
7303
+ "name": "SgdsDataTable",
7304
+ "module": "src/components/DataTable/sgds-data-table.ts"
5958
7305
  }
5959
7306
  }
5960
7307
  ]
@@ -18097,6 +19444,12 @@
18097
19444
  },
18098
19445
  "description": "Reports the visibility state of the submenu for nested groups.\nReturns true when the submenu is displayed showing child items, false when hidden.\nOnly applicable for nested groups (level 2+). Root-level groups use drawer overlay instead."
18099
19446
  },
19447
+ {
19448
+ "kind": "method",
19449
+ "name": "_handleSlotChange",
19450
+ "privacy": "protected",
19451
+ "type": {}
19452
+ },
18100
19453
  {
18101
19454
  "kind": "field",
18102
19455
  "name": "title",
@@ -18467,6 +19820,17 @@
18467
19820
  "attribute": "separator",
18468
19821
  "reflects": true
18469
19822
  },
19823
+ {
19824
+ "kind": "method",
19825
+ "name": "_handleSlotChange",
19826
+ "privacy": "protected",
19827
+ "return": {
19828
+ "type": {
19829
+ "text": "void"
19830
+ }
19831
+ },
19832
+ "type": {}
19833
+ },
18470
19834
  {
18471
19835
  "kind": "field",
18472
19836
  "name": "name",
@@ -18822,6 +20186,14 @@
18822
20186
  }
18823
20187
  ],
18824
20188
  "exports": [
20189
+ {
20190
+ "kind": "js",
20191
+ "name": "ISgdsSidebarSelectEventDetail",
20192
+ "declaration": {
20193
+ "name": "ISgdsSidebarSelectEventDetail",
20194
+ "module": "src/components/Sidebar/sgds-sidebar.ts"
20195
+ }
20196
+ },
18825
20197
  {
18826
20198
  "kind": "js",
18827
20199
  "name": "SgdsSidebar",
@@ -21852,6 +23224,17 @@
21852
23224
  "attribute": "density",
21853
23225
  "reflects": true
21854
23226
  },
23227
+ {
23228
+ "kind": "field",
23229
+ "name": "fullWidth",
23230
+ "type": {
23231
+ "text": "boolean"
23232
+ },
23233
+ "default": "false",
23234
+ "description": "When set, all `sgds-tabs` in its slot will be in full width. Only takes effect when `orientation` is set to `horizontal`",
23235
+ "attribute": "fullWidth",
23236
+ "reflects": true
23237
+ },
21855
23238
  {
21856
23239
  "kind": "method",
21857
23240
  "name": "show",
@@ -22077,6 +23460,15 @@
22077
23460
  "default": "\"default\"",
22078
23461
  "description": "The density of tabs. Controls the density of all `sgds-tabs` in its slot. It also sets the density attribute of `sgds-tab`",
22079
23462
  "fieldName": "density"
23463
+ },
23464
+ {
23465
+ "name": "fullWidth",
23466
+ "type": {
23467
+ "text": "boolean"
23468
+ },
23469
+ "default": "false",
23470
+ "description": "When set, all `sgds-tabs` in its slot will be in full width. Only takes effect when `orientation` is set to `horizontal`",
23471
+ "fieldName": "fullWidth"
22080
23472
  }
22081
23473
  ],
22082
23474
  "superclass": {
@@ -27983,7 +29375,7 @@
27983
29375
  "package": {
27984
29376
  "name": "@govtechsg/sgds-web-component",
27985
29377
  "description": "",
27986
- "version": "3.25.0",
29378
+ "version": "3.25.1-rc.0",
27987
29379
  "author": "GovTechSG",
27988
29380
  "license": "MIT"
27989
29381
  }