globuswebcomponents 2.16.6 → 2.16.7

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 (239) hide show
  1. package/dist/cjs/gb-accordion-card_80.cjs.entry.js +114 -85
  2. package/dist/cjs/gb-token-field-compact.cjs.entry.js +1 -1
  3. package/dist/cjs/gb-token-field-compressed.cjs.entry.js +2 -2
  4. package/dist/cjs/gb-vertical-tabs.cjs.entry.js +1 -1
  5. package/dist/cjs/gb-wysiwyg-editor-icon.cjs.entry.js +1 -1
  6. package/dist/cjs/gb-wysiwyg-toolbar.cjs.entry.js +1 -1
  7. package/dist/cjs/globuscomponents.cjs.js +1 -1
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/cjs/reusableModels-_LRAKnsh.js.map +1 -1
  10. package/dist/cjs/test-input-tag.cjs.entry.js +2 -2
  11. package/dist/collection/assets/book-open-01.svg +4 -0
  12. package/dist/collection/assets/smart-phone-01.svg +4 -0
  13. package/dist/collection/assets/tablet-01.svg +4 -0
  14. package/dist/collection/components/gb-button/gb-button.css +5 -2
  15. package/dist/collection/components/gb-button/gb-button.js +22 -1
  16. package/dist/collection/components/gb-button/gb-button.js.map +1 -1
  17. package/dist/collection/components/gb-button/gb-button.tsx +2 -1
  18. package/dist/collection/components/gb-icon-button-base/gb-icon-button-base.css +3 -0
  19. package/dist/collection/components/gb-icon-button-base/gb-icon-button-base.js +18 -2
  20. package/dist/collection/components/gb-icon-button-base/gb-icon-button-base.js.map +1 -1
  21. package/dist/collection/components/gb-sidebar/gb-sidebar.css +1 -1
  22. package/dist/collection/components/gb-sidebar/gb-sidebar.js +7 -7
  23. package/dist/collection/components/gb-sidebar/gb-sidebar.js.map +1 -1
  24. package/dist/collection/components/gb-sidebar-child-item/gb-sidebar-child-item.css +6 -2
  25. package/dist/collection/components/gb-table/gb-table.js +83 -84
  26. package/dist/collection/components/gb-table/gb-table.js.map +1 -1
  27. package/dist/collection/components/gb-table-header/gb-table-header.css +5 -0
  28. package/dist/collection/components/gb-table-header/gb-table-header.js +45 -3
  29. package/dist/collection/components/gb-table-header/gb-table-header.js.map +1 -1
  30. package/dist/collection/components/gb-tag/gb-tag.js +1 -1
  31. package/dist/collection/components/gb-tag-checkbox/gb-tag-checkbox.js +1 -1
  32. package/dist/collection/components/gb-tag-close/gb-tag-close.js +1 -1
  33. package/dist/collection/components/gb-tag-count/gb-tag-count.js +1 -1
  34. package/dist/collection/components/gb-textarea-input-field/gb-textarea-input-field.js +3 -3
  35. package/dist/collection/components/gb-theme-tab/gb-theme-tab.js +1 -1
  36. package/dist/collection/components/gb-toast/gb-toast.js +1 -1
  37. package/dist/collection/components/gb-toast-button/gb-toast-button.js +1 -1
  38. package/dist/collection/components/gb-toggle/gb-toggle.js +1 -1
  39. package/dist/collection/components/gb-toggle-base/gb-toggle-base.js +2 -2
  40. package/dist/collection/components/gb-token-field-compact/gb-token-field-compact.js +1 -1
  41. package/dist/collection/components/gb-token-field-compressed/gb-token-field-compressed.js +2 -2
  42. package/dist/collection/components/gb-tooltip/gb-tooltip.js +1 -1
  43. package/dist/collection/components/gb-vertical-tabs/gb-vertical-tabs.js +1 -1
  44. package/dist/collection/components/gb-wysiwyg-editor-icon/gb-wysiwyg-editor-icon.js +1 -1
  45. package/dist/collection/components/gb-wysiwyg-toolbar/gb-wysiwyg-toolbar.js +1 -1
  46. package/dist/collection/components/test-input-tag/test-input-tag.js +2 -2
  47. package/dist/collection/models/reusableModels.js.map +1 -1
  48. package/dist/components/gb-accordion-card.js +2 -2
  49. package/dist/components/gb-action-panel.js +2 -2
  50. package/dist/components/gb-approval-modal.js +8 -8
  51. package/dist/components/gb-avatar-add-button.js +1 -1
  52. package/dist/components/gb-avatar-dropdown.js +1 -1
  53. package/dist/components/gb-avatar-group.js +2 -2
  54. package/dist/components/gb-btn.js +1 -1
  55. package/dist/components/gb-button.js +1 -1
  56. package/dist/components/gb-checkbox-group-item.js +1 -1
  57. package/dist/components/gb-checkbox-group.js +3 -3
  58. package/dist/components/gb-collapse-button.js +1 -1
  59. package/dist/components/gb-comment.js +2 -2
  60. package/dist/components/gb-complex-primary-side-bar-item.js +1 -1
  61. package/dist/components/gb-complex-secondary-side-bar-item.js +1 -1
  62. package/dist/components/gb-date-picker.js +1 -1
  63. package/dist/components/gb-detail-cell.js +2 -2
  64. package/dist/components/gb-empty-state.js +1 -1
  65. package/dist/components/gb-file-upload-item-base.js +1 -1
  66. package/dist/components/gb-file-upload.js +4 -4
  67. package/dist/components/gb-filter-button.js +1 -1
  68. package/dist/components/gb-filter-modal.js +1 -1
  69. package/dist/components/gb-header.js +13 -13
  70. package/dist/components/gb-help-tooltip.js +1 -1
  71. package/dist/components/gb-icon-button-base.js +1 -1
  72. package/dist/components/gb-input-dropdown-test.js +9 -9
  73. package/dist/components/gb-input-dropdown.js +1 -1
  74. package/dist/components/gb-input-field.js +1 -1
  75. package/dist/components/gb-modal-action.js +1 -1
  76. package/dist/components/gb-modal.js +3 -3
  77. package/dist/components/gb-nav-bar-item.js +1 -1
  78. package/dist/components/gb-nav-bar-sidemenu.js +1 -1
  79. package/dist/components/gb-nav-bar.js +2 -2
  80. package/dist/components/gb-notification-pane.js +1 -1
  81. package/dist/components/gb-pagination.js +1 -1
  82. package/dist/components/gb-password-button.js +1 -1
  83. package/dist/components/gb-progress-bar.js +1 -1
  84. package/dist/components/gb-prompt-modal.js +2 -2
  85. package/dist/components/gb-rich-text.js +12 -12
  86. package/dist/components/gb-sidebar-child-item.js +1 -1
  87. package/dist/components/gb-sidebar-sub-dropdown.js +1 -1
  88. package/dist/components/gb-sidebar.js +25 -43
  89. package/dist/components/gb-sidebar.js.map +1 -1
  90. package/dist/components/gb-simple-side-bar-item.js +1 -1
  91. package/dist/components/gb-slider-control-handle.js +1 -1
  92. package/dist/components/gb-slider.js +2 -2
  93. package/dist/components/gb-table-header.js +1 -1
  94. package/dist/components/gb-table.js +80 -77
  95. package/dist/components/gb-table.js.map +1 -1
  96. package/dist/components/gb-tag-checkbox.js +1 -1
  97. package/dist/components/gb-tag-close.js +1 -1
  98. package/dist/components/gb-tag-count.js +1 -1
  99. package/dist/components/gb-tag.js +1 -1
  100. package/dist/components/gb-textarea-input-field.js +1 -1
  101. package/dist/components/gb-theme-tab.js +1 -1
  102. package/dist/components/gb-toast-button.js +1 -1
  103. package/dist/components/gb-toast.js +1 -1
  104. package/dist/components/gb-toggle-base.js +1 -1
  105. package/dist/components/gb-toggle.js +1 -1
  106. package/dist/components/gb-token-field-compact.js +1 -1
  107. package/dist/components/gb-token-field-compressed.js +2 -2
  108. package/dist/components/gb-tooltip.js +1 -1
  109. package/dist/components/gb-vertical-tabs.js +1 -1
  110. package/dist/components/gb-wysiwyg-editor-icon.js +1 -1
  111. package/dist/components/gb-wysiwyg-toolbar.js +1 -1
  112. package/dist/components/gb-wysiwyg-tooltip.js +1 -1
  113. package/dist/components/{p-SlxBg8hR.js → p-2sFOwXcZ.js} +14 -14
  114. package/dist/components/{p-SlxBg8hR.js.map → p-2sFOwXcZ.js.map} +1 -1
  115. package/dist/components/{p-cbZ-VtHV.js → p-5Xq8t1Mq.js} +4 -4
  116. package/dist/components/{p-cbZ-VtHV.js.map → p-5Xq8t1Mq.js.map} +1 -1
  117. package/dist/components/{p-DY_bXxhu.js → p-B3_8Yy_f.js} +3 -3
  118. package/dist/components/{p-DY_bXxhu.js.map → p-B3_8Yy_f.js.map} +1 -1
  119. package/dist/components/{p-C0uOO7dx.js → p-B6qvek5r.js} +5 -5
  120. package/dist/components/{p-C0uOO7dx.js.map → p-B6qvek5r.js.map} +1 -1
  121. package/dist/components/{p-C3YPh43v.js → p-B9JGeRlv.js} +3 -3
  122. package/dist/components/{p-C3YPh43v.js.map → p-B9JGeRlv.js.map} +1 -1
  123. package/dist/components/{p-yGDG5-7k.js → p-BBJx6t2D.js} +10 -10
  124. package/dist/components/{p-yGDG5-7k.js.map → p-BBJx6t2D.js.map} +1 -1
  125. package/dist/components/{p-CTdWQWa8.js → p-BC7QT-DT.js} +3 -3
  126. package/dist/components/p-BC7QT-DT.js.map +1 -0
  127. package/dist/components/{p-CipnciZ0.js → p-BDWjPR9l.js} +5 -5
  128. package/dist/components/{p-CipnciZ0.js.map → p-BDWjPR9l.js.map} +1 -1
  129. package/dist/components/{p-41k9B0LP.js → p-BKpTpaGR.js} +3 -3
  130. package/dist/components/{p-41k9B0LP.js.map → p-BKpTpaGR.js.map} +1 -1
  131. package/dist/components/{p-KulPBqrE.js → p-BPKh01-Y.js} +3 -3
  132. package/dist/components/{p-KulPBqrE.js.map → p-BPKh01-Y.js.map} +1 -1
  133. package/dist/components/{p-DNoYOHYU.js → p-B_4Sufqr.js} +26 -17
  134. package/dist/components/p-B_4Sufqr.js.map +1 -0
  135. package/dist/components/{p-DcPBSreH.js → p-Bd2ZnVK1.js} +5 -5
  136. package/dist/components/{p-DcPBSreH.js.map → p-Bd2ZnVK1.js.map} +1 -1
  137. package/dist/components/{p-DMW9vQZa.js → p-BhAtkEeE.js} +3 -3
  138. package/dist/components/{p-DMW9vQZa.js.map → p-BhAtkEeE.js.map} +1 -1
  139. package/dist/components/{p-Cj9I8JDU.js → p-BllD9Ljp.js} +3 -3
  140. package/dist/components/{p-Cj9I8JDU.js.map → p-BllD9Ljp.js.map} +1 -1
  141. package/dist/components/{p-BXpubOeM.js → p-BmO34cKZ.js} +3 -3
  142. package/dist/components/{p-BXpubOeM.js.map → p-BmO34cKZ.js.map} +1 -1
  143. package/dist/components/{p-CM8Z8QqX.js → p-BmbAWgDy.js} +4 -4
  144. package/dist/components/{p-CM8Z8QqX.js.map → p-BmbAWgDy.js.map} +1 -1
  145. package/dist/components/{p-C9UQcv-D.js → p-Bz0jFwYF.js} +3 -3
  146. package/dist/components/{p-C9UQcv-D.js.map → p-Bz0jFwYF.js.map} +1 -1
  147. package/dist/components/{p-CEk7OrMo.js → p-CBGuVnFB.js} +3 -3
  148. package/dist/components/{p-CEk7OrMo.js.map → p-CBGuVnFB.js.map} +1 -1
  149. package/dist/components/{p-BOpf9ENE.js → p-CHQxg5wT.js} +4 -4
  150. package/dist/components/{p-BOpf9ENE.js.map → p-CHQxg5wT.js.map} +1 -1
  151. package/dist/components/{p-DoKlmsGb.js → p-CNZgIErI.js} +3 -3
  152. package/dist/components/{p-DoKlmsGb.js.map → p-CNZgIErI.js.map} +1 -1
  153. package/dist/components/{p-1ZFgtjE3.js → p-COetkeEu.js} +4 -4
  154. package/dist/components/{p-1ZFgtjE3.js.map → p-COetkeEu.js.map} +1 -1
  155. package/dist/components/{p-CRf1muxu.js → p-CYZqV7dd.js} +12 -12
  156. package/dist/components/{p-CRf1muxu.js.map → p-CYZqV7dd.js.map} +1 -1
  157. package/dist/components/{p-CFVboA-U.js → p-CZa3TqhR.js} +3 -3
  158. package/dist/components/{p-CFVboA-U.js.map → p-CZa3TqhR.js.map} +1 -1
  159. package/dist/components/{p-SOmp2u2j.js → p-CeoQ2L1U.js} +11 -11
  160. package/dist/components/{p-SOmp2u2j.js.map → p-CeoQ2L1U.js.map} +1 -1
  161. package/dist/components/{p-15tzhm6H.js → p-CjigXln7.js} +3 -3
  162. package/dist/components/{p-15tzhm6H.js.map → p-CjigXln7.js.map} +1 -1
  163. package/dist/components/{p-B0To20-c.js → p-CoJ4VSgF.js} +6 -6
  164. package/dist/components/{p-B0To20-c.js.map → p-CoJ4VSgF.js.map} +1 -1
  165. package/dist/components/{p-8R2iLkxl.js → p-D2ggwGg4.js} +4 -4
  166. package/dist/components/{p-8R2iLkxl.js.map → p-D2ggwGg4.js.map} +1 -1
  167. package/dist/components/{p-CuWlfGEa.js → p-DG0h2Btt.js} +9 -9
  168. package/dist/components/{p-CuWlfGEa.js.map → p-DG0h2Btt.js.map} +1 -1
  169. package/dist/components/{p-B1YiPq_G.js → p-DIl8jQ_E.js} +3 -3
  170. package/dist/components/{p-B1YiPq_G.js.map → p-DIl8jQ_E.js.map} +1 -1
  171. package/dist/components/{p-RqdJhjrL.js → p-DOIqRGL9.js} +3 -3
  172. package/dist/components/{p-RqdJhjrL.js.map → p-DOIqRGL9.js.map} +1 -1
  173. package/dist/components/{p-BTYRuLgI.js → p-DPuTbMwA.js} +22 -6
  174. package/dist/components/p-DPuTbMwA.js.map +1 -0
  175. package/dist/components/{p-B69brzJ5.js → p-DRCUtDIM.js} +3 -3
  176. package/dist/components/{p-B69brzJ5.js.map → p-DRCUtDIM.js.map} +1 -1
  177. package/dist/components/{p-CoECE73o.js → p-DZZ7BGdd.js} +3 -3
  178. package/dist/components/{p-CoECE73o.js.map → p-DZZ7BGdd.js.map} +1 -1
  179. package/dist/components/{p-Lyq8Ffqp.js → p-DeOS2_XS.js} +5 -5
  180. package/dist/components/{p-Lyq8Ffqp.js.map → p-DeOS2_XS.js.map} +1 -1
  181. package/dist/components/{p-C-cmMbHo.js → p-Djuz39na.js} +3 -3
  182. package/dist/components/{p-C-cmMbHo.js.map → p-Djuz39na.js.map} +1 -1
  183. package/dist/components/{p-CnIulILM.js → p-Dkns49uP.js} +4 -4
  184. package/dist/components/{p-CnIulILM.js.map → p-Dkns49uP.js.map} +1 -1
  185. package/dist/components/{p-DwwTg0Ug.js → p-DxHosdd2.js} +6 -6
  186. package/dist/components/{p-DwwTg0Ug.js.map → p-DxHosdd2.js.map} +1 -1
  187. package/dist/components/{p-CPk5Ttm2.js → p-I-FsdhaJ.js} +4 -4
  188. package/dist/components/{p-CPk5Ttm2.js.map → p-I-FsdhaJ.js.map} +1 -1
  189. package/dist/components/{p-BbygHijY.js → p-RYI-NXAf.js} +7 -5
  190. package/dist/components/p-RYI-NXAf.js.map +1 -0
  191. package/dist/components/p-cHn6O-Kf.js.map +1 -1
  192. package/dist/components/{p-wURi8Jg8.js → p-eocLyEbn.js} +4 -4
  193. package/dist/components/{p-wURi8Jg8.js.map → p-eocLyEbn.js.map} +1 -1
  194. package/dist/components/{p-DDOjLWeU.js → p-ruRtAV-Q.js} +4 -4
  195. package/dist/components/{p-DDOjLWeU.js.map → p-ruRtAV-Q.js.map} +1 -1
  196. package/dist/components/test-input-tag.js +6 -6
  197. package/dist/docs.json +153 -88
  198. package/dist/esm/gb-accordion-card_80.entry.js +114 -85
  199. package/dist/esm/gb-token-field-compact.entry.js +1 -1
  200. package/dist/esm/gb-token-field-compressed.entry.js +2 -2
  201. package/dist/esm/gb-vertical-tabs.entry.js +1 -1
  202. package/dist/esm/gb-wysiwyg-editor-icon.entry.js +1 -1
  203. package/dist/esm/gb-wysiwyg-toolbar.entry.js +1 -1
  204. package/dist/esm/globuscomponents.js +1 -1
  205. package/dist/esm/loader.js +1 -1
  206. package/dist/esm/reusableModels-cHn6O-Kf.js.map +1 -1
  207. package/dist/esm/test-input-tag.entry.js +2 -2
  208. package/dist/globuscomponents/assets/book-open-01.svg +4 -0
  209. package/dist/globuscomponents/assets/smart-phone-01.svg +4 -0
  210. package/dist/globuscomponents/assets/tablet-01.svg +4 -0
  211. package/dist/globuscomponents/gb-button.css +5 -2
  212. package/dist/globuscomponents/gb-button.tsx +2 -1
  213. package/dist/globuscomponents/globuscomponents.esm.js +1 -1
  214. package/dist/globuscomponents/{p-78b9a3ba.entry.js → p-28feaec2.entry.js} +2 -2
  215. package/dist/globuscomponents/{p-398da1af.entry.js → p-56c49467.entry.js} +2 -2
  216. package/dist/globuscomponents/{p-4e8cd974.entry.js → p-5782ab88.entry.js} +2 -2
  217. package/dist/globuscomponents/{p-2778d2ba.entry.js → p-7614551d.entry.js} +2 -2
  218. package/dist/globuscomponents/{p-6c217ace.entry.js → p-7e0ff4ed.entry.js} +2 -2
  219. package/dist/globuscomponents/{p-437239ba.entry.js → p-8894dc1d.entry.js} +2 -2
  220. package/dist/globuscomponents/p-cHn6O-Kf.js.map +1 -1
  221. package/dist/globuscomponents/{p-d09a6274.entry.js → p-db354494.entry.js} +2 -2
  222. package/dist/globuscomponents/p-db354494.entry.js.map +1 -0
  223. package/dist/types/components/gb-button/gb-button.d.ts +1 -0
  224. package/dist/types/components/gb-table/gb-table.d.ts +5 -2
  225. package/dist/types/components/gb-table-header/gb-table-header.d.ts +3 -0
  226. package/dist/types/components.d.ts +40 -18
  227. package/dist/types/models/reusableModels.d.ts +1 -0
  228. package/package.json +1 -1
  229. package/dist/components/p-BTYRuLgI.js.map +0 -1
  230. package/dist/components/p-BbygHijY.js.map +0 -1
  231. package/dist/components/p-CTdWQWa8.js.map +0 -1
  232. package/dist/components/p-DNoYOHYU.js.map +0 -1
  233. package/dist/globuscomponents/p-d09a6274.entry.js.map +0 -1
  234. /package/dist/globuscomponents/{p-78b9a3ba.entry.js.map → p-28feaec2.entry.js.map} +0 -0
  235. /package/dist/globuscomponents/{p-398da1af.entry.js.map → p-56c49467.entry.js.map} +0 -0
  236. /package/dist/globuscomponents/{p-4e8cd974.entry.js.map → p-5782ab88.entry.js.map} +0 -0
  237. /package/dist/globuscomponents/{p-2778d2ba.entry.js.map → p-7614551d.entry.js.map} +0 -0
  238. /package/dist/globuscomponents/{p-6c217ace.entry.js.map → p-7e0ff4ed.entry.js.map} +0 -0
  239. /package/dist/globuscomponents/{p-437239ba.entry.js.map → p-8894dc1d.entry.js.map} +0 -0
@@ -21,6 +21,7 @@ export declare class GbButton {
21
21
  iconLeadingStyle: string;
22
22
  iconLeadingType: string;
23
23
  };
24
+ fullWidth: boolean;
24
25
  el: HTMLElement;
25
26
  leadingIconSvg: string;
26
27
  trailingIconSvg: string;
@@ -19,6 +19,7 @@ export declare class GbTable {
19
19
  };
20
20
  };
21
21
  tableHeaderConfig: {
22
+ type: 'default' | 'table_control';
22
23
  tableHeading?: boolean;
23
24
  tableHeadingLabel?: string;
24
25
  showDateFilter?: boolean;
@@ -37,6 +38,7 @@ export declare class GbTable {
37
38
  datePickerMode?: 'single' | 'range';
38
39
  inputPlaceholder?: string;
39
40
  datePickerPlaceholder?: string;
41
+ searchMode?: 'internal' | 'external';
40
42
  };
41
43
  paginationConfig: {
42
44
  paginationMode: 'internal' | 'external';
@@ -75,8 +77,7 @@ export declare class GbTable {
75
77
  showCheckbox: boolean;
76
78
  tableHeadColor: 'gray' | 'blue';
77
79
  rowKey: string | ((row: any) => string);
78
- filterMode: 'internal' | 'external';
79
- searchMode: 'internal' | 'external';
80
+ tableHeaderType: 'default' | 'table_control';
80
81
  slicedData: any[];
81
82
  internalCurrentPage: number;
82
83
  internalPageSize: number;
@@ -128,6 +129,7 @@ export declare class GbTable {
128
129
  }>;
129
130
  filterApplied: EventEmitter<any>;
130
131
  filterCleared: EventEmitter<void>;
132
+ tableControlClicked: EventEmitter<string>;
131
133
  private isDraggingModal;
132
134
  private dragOffset;
133
135
  private actionButtonRefs;
@@ -177,6 +179,7 @@ export declare class GbTable {
177
179
  exportButtonClicked(detail: any): void;
178
180
  onRefreshButtonClicked(): void;
179
181
  switchTableLayout(layout: any): void;
182
+ emitTableContolClickedEvent(detail: any): void;
180
183
  private toggleColumn;
181
184
  private onModalPointerDown;
182
185
  private onModalPointerMove;
@@ -1,6 +1,7 @@
1
1
  import { EventEmitter } from '../../stencil-public-runtime';
2
2
  import { CloseButtonPositions, StateEnum, StateType } from '../../models/reusableModels';
3
3
  export declare class GbTableHeader {
4
+ type: 'default' | 'table_control';
4
5
  showFilter: boolean;
5
6
  showColumnOptions: boolean;
6
7
  tableHeading: boolean;
@@ -47,6 +48,7 @@ export declare class GbTableHeader {
47
48
  refreshButtonClicked: EventEmitter<void>;
48
49
  layoutButtonClicked: EventEmitter<string>;
49
50
  columnOptionsButtonClicked: EventEmitter<string>;
51
+ tableControlClicked: EventEmitter<string>;
50
52
  dateChange: EventEmitter<string | string[]>;
51
53
  el: HTMLElement;
52
54
  exportDropdown: HTMLElement;
@@ -57,6 +59,7 @@ export declare class GbTableHeader {
57
59
  toggleDropdown(): void;
58
60
  handleResize(): void;
59
61
  private updateParameters;
62
+ emitTableControlClicked(control: 'previous' | 'next'): void;
60
63
  emitValue(inputValue: any): void;
61
64
  onFilterButtonClicked(): void;
62
65
  emitSelection(selection: any): void;
@@ -452,6 +452,10 @@ export namespace Components {
452
452
  * @default false
453
453
  */
454
454
  "event": boolean;
455
+ /**
456
+ * @default true
457
+ */
458
+ "fullWidth": boolean;
455
459
  "getNativeButton": () => Promise<HTMLButtonElement | null>;
456
460
  /**
457
461
  * @default 'primary'
@@ -2347,7 +2351,7 @@ export namespace Components {
2347
2351
  */
2348
2352
  "state": 'expanded' | 'collapsed';
2349
2353
  /**
2350
- * @default [ // { label: 'Overview', icon: 'assets/dashboard-square-03.svg' }, // { // label: 'Content', // icon: 'assets/dashboard-square-03.svg', // children: [ // { label: 'Posts', icon: 'assets/dashboard-square-03.svg' }, // { label: 'News', icon: 'assets/dashboard-square-03.svg' }, // ], // }, // { // label: 'Content', // icon: 'assets/dashboard-square-03.svg', // children: [ // { label: 'Posts', icon: 'assets/dashboard-square-03.svg' }, // { label: 'News', icon: 'assets/dashboard-square-03.svg' }, // ], // }, // { label: 'Overview', icon: 'assets/dashboard-square-03.svg' }, ]
2354
+ * @default [ // { label: 'Overview', icon: 'assets/dashboard-square-03.svg' }, // { // label: 'Content', // icon: 'assets/dashboard-square-03.svg', // children: [ // { label: 'Posts', icon: 'assets/book-open-01.svg' }, // { label: 'News', icon: 'assets/dashboard-square-03.svg' }, // ], // }, // { // label: 'Content', // icon: 'assets/dashboard-square-03.svg', // children: [ // { label: 'Posts', icon: 'assets/dashboard-square-03.svg' }, // { label: 'News', icon: 'assets/dashboard-square-03.svg' }, // ], // }, // { label: 'Overview', icon: 'assets/dashboard-square-03.svg' }, ]
2351
2355
  */
2352
2356
  "subMenuData": SubMenuItem[];
2353
2357
  /**
@@ -2668,7 +2672,7 @@ export namespace Components {
2668
2672
  }
2669
2673
  interface GbTable {
2670
2674
  /**
2671
- * @default [ // { key: 'id', label: '#', width: '70px', sortable: true, sortType: 'string', mobile: { position: 'top_left' } }, // { key: 'date', label: 'Date', value: row => row.date.toLocaleString(), mobile: { position: 'bottom_left' } }, // { // key: 'name', // label: 'Name', // sortable: true, // sortType: 'string', // helpIcon: true, // searchable: true, // hasAvatar: true, // cellAvatar: { // // image: '', // slots: { // // initials: row => row.name.split(' ').map((nm: string) => nm.charAt(0)), // image: row => row.image, // }, // }, // mobile: { position: 'top_right' }, // }, // { key: 'role', label: 'Role', searchable: true }, // { key: 'amount', label: 'Amount', align: 'right', sortable: true, sortType: 'number', cellStyle: row => ({ color: row.amount > 200 ? 'green' : '' }) }, // { // key: 'status', // label: 'Status', // cellComponent: 'gb-badge', // cellProps: row => ({ color: row.status === 'Completed' ? 'success' : 'error', type: 'badge_modern', size: 'sm', icon: 'dot' }), // cellSlots: { // default: { // tag: 'p', // content: row => row.status, // }, // }, // }, ]
2675
+ * @default [ // { key: 'id', label: '#', width: '70px', sortable: true, sortType: 'string', mobile: { position: 'top_left' } }, // { key: 'date', label: 'Date', value: row => row.date.toLocaleString(), mobile: { position: 'bottom_left' } }, // { // key: 'name', // label: 'Name', // sortable: true, // sortType: 'string', // helpIcon: true, // searchable: true, // hasAvatar: true, // cellAvatar: { // // image: '', // slots: { // // initials: row => row.name.split(' ').map((nm: string) => nm.charAt(0)), // image: row => row.image, // }, // }, // mobile: { position: 'top_right' }, // }, // { key: 'role', label: 'Role', searchable: true }, // { key: 'amount', label: 'Amount', align: 'right', sortable: true, sortType: 'number', cellStyle: row => ({ color: row.amount > 200 ? 'green' : '' }) }, // { // key: 'status', // label: 'Status', // cellComponent: 'gb-badge', // cellProps: row => ({ color: row.status === 'Completed' ? 'success' : 'error', type: 'badge_modern', size: 'sm', icon: 'dot' }), // cellSlots: { // default: { // tag: 'p', // content: row => row.status, // }, // }, // }, ]
2672
2676
  */
2673
2677
  "columns": TableColumn[];
2674
2678
  /**
@@ -2703,11 +2707,10 @@ export namespace Components {
2703
2707
  fileType?: FileIconTypes;
2704
2708
  featuredIconSwap?: string;
2705
2709
  };
2706
- "filterConfig": FilterConfig;
2707
2710
  /**
2708
- * @default 'internal'
2711
+ * @default { mode: 'internal', title: '', fields: [ // { // tag: 'gb-date-picker', // label: 'Date', // columnKey: 'date', // key: { start: 'startDate', end: 'endDate' }, // event: 'dateChange', // }, // { // tag: 'gb-input-dropdown', // key: 'status', // event: 'dropdownItemSelected', // props: { // type: 'tags', // showLabel: true, // label: 'Status', // placeholder: 'Select a status', // items: ['Completed', 'Pending', 'Cancelled'], // }, // }, // { // tag: 'gb-slider', // key: 'amount', // event: 'thumbValueChanged', // props: { // showHeading: true, // heading: 'Amount range', // max: 600, // }, // }, ], initialValues: { pageNumber: 0, pageSize: 10, }, }
2709
2712
  */
2710
- "filterMode": 'internal' | 'external';
2713
+ "filterConfig": FilterConfig;
2711
2714
  "gridCardConfig"?: {
2712
2715
  name?: { key: string };
2713
2716
  badges?: { key: string; label?: string }[];
@@ -2732,10 +2735,6 @@ export namespace Components {
2732
2735
  * @default 'id'
2733
2736
  */
2734
2737
  "rowKey": string | ((row: any) => string);
2735
- /**
2736
- * @default 'internal'
2737
- */
2738
- "searchMode": 'internal' | 'external';
2739
2738
  /**
2740
2739
  * @default true
2741
2740
  */
@@ -2757,6 +2756,7 @@ export namespace Components {
2757
2756
  */
2758
2757
  "tableHeadColor": 'gray' | 'blue';
2759
2758
  "tableHeaderConfig": {
2759
+ type: 'default' | 'table_control';
2760
2760
  tableHeading?: boolean;
2761
2761
  tableHeadingLabel?: string;
2762
2762
  showDateFilter?: boolean;
@@ -2775,7 +2775,12 @@ export namespace Components {
2775
2775
  datePickerMode?: 'single' | 'range';
2776
2776
  inputPlaceholder?: string;
2777
2777
  datePickerPlaceholder?: string;
2778
+ searchMode?: 'internal' | 'external';
2778
2779
  };
2780
+ /**
2781
+ * @default 'default'
2782
+ */
2783
+ "tableHeaderType": 'default' | 'table_control';
2779
2784
  }
2780
2785
  interface GbTableHeader {
2781
2786
  /**
@@ -2883,6 +2888,10 @@ export namespace Components {
2883
2888
  * @default false
2884
2889
  */
2885
2890
  "twentyfourHr": boolean;
2891
+ /**
2892
+ * @default 'default'
2893
+ */
2894
+ "type": 'default' | 'table_control';
2886
2895
  }
2887
2896
  interface GbTag {
2888
2897
  "action": 'X_close' | 'text_only' | 'count';
@@ -4538,6 +4547,7 @@ declare global {
4538
4547
  "mobileRowClicked": { row: any };
4539
4548
  "filterApplied": any;
4540
4549
  "filterCleared": void;
4550
+ "tableControlClicked": string;
4541
4551
  }
4542
4552
  interface HTMLGbTableElement extends Components.GbTable, HTMLStencilElement {
4543
4553
  addEventListener<K extends keyof HTMLGbTableElementEventMap>(type: K, listener: (this: HTMLGbTableElement, ev: GbTableCustomEvent<HTMLGbTableElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -4560,6 +4570,7 @@ declare global {
4560
4570
  "refreshButtonClicked": void;
4561
4571
  "layoutButtonClicked": string;
4562
4572
  "columnOptionsButtonClicked": string;
4573
+ "tableControlClicked": string;
4563
4574
  "dateChange": string | string[];
4564
4575
  }
4565
4576
  interface HTMLGbTableHeaderElement extends Components.GbTableHeader, HTMLStencilElement {
@@ -5403,6 +5414,10 @@ declare namespace LocalJSX {
5403
5414
  * @default false
5404
5415
  */
5405
5416
  "event"?: boolean;
5417
+ /**
5418
+ * @default true
5419
+ */
5420
+ "fullWidth"?: boolean;
5406
5421
  /**
5407
5422
  * @default 'primary'
5408
5423
  */
@@ -7349,7 +7364,7 @@ declare namespace LocalJSX {
7349
7364
  */
7350
7365
  "state"?: 'expanded' | 'collapsed';
7351
7366
  /**
7352
- * @default [ // { label: 'Overview', icon: 'assets/dashboard-square-03.svg' }, // { // label: 'Content', // icon: 'assets/dashboard-square-03.svg', // children: [ // { label: 'Posts', icon: 'assets/dashboard-square-03.svg' }, // { label: 'News', icon: 'assets/dashboard-square-03.svg' }, // ], // }, // { // label: 'Content', // icon: 'assets/dashboard-square-03.svg', // children: [ // { label: 'Posts', icon: 'assets/dashboard-square-03.svg' }, // { label: 'News', icon: 'assets/dashboard-square-03.svg' }, // ], // }, // { label: 'Overview', icon: 'assets/dashboard-square-03.svg' }, ]
7367
+ * @default [ // { label: 'Overview', icon: 'assets/dashboard-square-03.svg' }, // { // label: 'Content', // icon: 'assets/dashboard-square-03.svg', // children: [ // { label: 'Posts', icon: 'assets/book-open-01.svg' }, // { label: 'News', icon: 'assets/dashboard-square-03.svg' }, // ], // }, // { // label: 'Content', // icon: 'assets/dashboard-square-03.svg', // children: [ // { label: 'Posts', icon: 'assets/dashboard-square-03.svg' }, // { label: 'News', icon: 'assets/dashboard-square-03.svg' }, // ], // }, // { label: 'Overview', icon: 'assets/dashboard-square-03.svg' }, ]
7353
7368
  */
7354
7369
  "subMenuData"?: SubMenuItem[];
7355
7370
  /**
@@ -7676,7 +7691,7 @@ declare namespace LocalJSX {
7676
7691
  }
7677
7692
  interface GbTable {
7678
7693
  /**
7679
- * @default [ // { key: 'id', label: '#', width: '70px', sortable: true, sortType: 'string', mobile: { position: 'top_left' } }, // { key: 'date', label: 'Date', value: row => row.date.toLocaleString(), mobile: { position: 'bottom_left' } }, // { // key: 'name', // label: 'Name', // sortable: true, // sortType: 'string', // helpIcon: true, // searchable: true, // hasAvatar: true, // cellAvatar: { // // image: '', // slots: { // // initials: row => row.name.split(' ').map((nm: string) => nm.charAt(0)), // image: row => row.image, // }, // }, // mobile: { position: 'top_right' }, // }, // { key: 'role', label: 'Role', searchable: true }, // { key: 'amount', label: 'Amount', align: 'right', sortable: true, sortType: 'number', cellStyle: row => ({ color: row.amount > 200 ? 'green' : '' }) }, // { // key: 'status', // label: 'Status', // cellComponent: 'gb-badge', // cellProps: row => ({ color: row.status === 'Completed' ? 'success' : 'error', type: 'badge_modern', size: 'sm', icon: 'dot' }), // cellSlots: { // default: { // tag: 'p', // content: row => row.status, // }, // }, // }, ]
7694
+ * @default [ // { key: 'id', label: '#', width: '70px', sortable: true, sortType: 'string', mobile: { position: 'top_left' } }, // { key: 'date', label: 'Date', value: row => row.date.toLocaleString(), mobile: { position: 'bottom_left' } }, // { // key: 'name', // label: 'Name', // sortable: true, // sortType: 'string', // helpIcon: true, // searchable: true, // hasAvatar: true, // cellAvatar: { // // image: '', // slots: { // // initials: row => row.name.split(' ').map((nm: string) => nm.charAt(0)), // image: row => row.image, // }, // }, // mobile: { position: 'top_right' }, // }, // { key: 'role', label: 'Role', searchable: true }, // { key: 'amount', label: 'Amount', align: 'right', sortable: true, sortType: 'number', cellStyle: row => ({ color: row.amount > 200 ? 'green' : '' }) }, // { // key: 'status', // label: 'Status', // cellComponent: 'gb-badge', // cellProps: row => ({ color: row.status === 'Completed' ? 'success' : 'error', type: 'badge_modern', size: 'sm', icon: 'dot' }), // cellSlots: { // default: { // tag: 'p', // content: row => row.status, // }, // }, // }, ]
7680
7695
  */
7681
7696
  "columns"?: TableColumn[];
7682
7697
  /**
@@ -7711,11 +7726,10 @@ declare namespace LocalJSX {
7711
7726
  fileType?: FileIconTypes;
7712
7727
  featuredIconSwap?: string;
7713
7728
  };
7714
- "filterConfig"?: FilterConfig;
7715
7729
  /**
7716
- * @default 'internal'
7730
+ * @default { mode: 'internal', title: '', fields: [ // { // tag: 'gb-date-picker', // label: 'Date', // columnKey: 'date', // key: { start: 'startDate', end: 'endDate' }, // event: 'dateChange', // }, // { // tag: 'gb-input-dropdown', // key: 'status', // event: 'dropdownItemSelected', // props: { // type: 'tags', // showLabel: true, // label: 'Status', // placeholder: 'Select a status', // items: ['Completed', 'Pending', 'Cancelled'], // }, // }, // { // tag: 'gb-slider', // key: 'amount', // event: 'thumbValueChanged', // props: { // showHeading: true, // heading: 'Amount range', // max: 600, // }, // }, ], initialValues: { pageNumber: 0, pageSize: 10, }, }
7717
7731
  */
7718
- "filterMode"?: 'internal' | 'external';
7732
+ "filterConfig"?: FilterConfig;
7719
7733
  "gridCardConfig"?: {
7720
7734
  name?: { key: string };
7721
7735
  badges?: { key: string; label?: string }[];
@@ -7736,6 +7750,7 @@ declare namespace LocalJSX {
7736
7750
  "onRefreshButtonClicked"?: (event: GbTableCustomEvent<void>) => void;
7737
7751
  "onRowActionClicked"?: (event: GbTableCustomEvent<{ action: string; row: any }>) => void;
7738
7752
  "onSelectionChanged"?: (event: GbTableCustomEvent<any[]>) => void;
7753
+ "onTableControlClicked"?: (event: GbTableCustomEvent<string>) => void;
7739
7754
  "paginationConfig"?: {
7740
7755
  paginationMode: 'internal' | 'external';
7741
7756
  entriesDropdownMenuPosition: 'top' | 'bottom';
@@ -7751,10 +7766,6 @@ declare namespace LocalJSX {
7751
7766
  * @default 'id'
7752
7767
  */
7753
7768
  "rowKey"?: string | ((row: any) => string);
7754
- /**
7755
- * @default 'internal'
7756
- */
7757
- "searchMode"?: 'internal' | 'external';
7758
7769
  /**
7759
7770
  * @default true
7760
7771
  */
@@ -7776,6 +7787,7 @@ declare namespace LocalJSX {
7776
7787
  */
7777
7788
  "tableHeadColor"?: 'gray' | 'blue';
7778
7789
  "tableHeaderConfig"?: {
7790
+ type: 'default' | 'table_control';
7779
7791
  tableHeading?: boolean;
7780
7792
  tableHeadingLabel?: string;
7781
7793
  showDateFilter?: boolean;
@@ -7794,7 +7806,12 @@ declare namespace LocalJSX {
7794
7806
  datePickerMode?: 'single' | 'range';
7795
7807
  inputPlaceholder?: string;
7796
7808
  datePickerPlaceholder?: string;
7809
+ searchMode?: 'internal' | 'external';
7797
7810
  };
7811
+ /**
7812
+ * @default 'default'
7813
+ */
7814
+ "tableHeaderType"?: 'default' | 'table_control';
7798
7815
  }
7799
7816
  interface GbTableHeader {
7800
7817
  /**
@@ -7857,6 +7874,7 @@ declare namespace LocalJSX {
7857
7874
  "onInputValueChanged"?: (event: GbTableHeaderCustomEvent<void>) => void;
7858
7875
  "onLayoutButtonClicked"?: (event: GbTableHeaderCustomEvent<string>) => void;
7859
7876
  "onRefreshButtonClicked"?: (event: GbTableHeaderCustomEvent<void>) => void;
7877
+ "onTableControlClicked"?: (event: GbTableHeaderCustomEvent<string>) => void;
7860
7878
  /**
7861
7879
  * @default StateEnum.Default
7862
7880
  */
@@ -7909,6 +7927,10 @@ declare namespace LocalJSX {
7909
7927
  * @default false
7910
7928
  */
7911
7929
  "twentyfourHr"?: boolean;
7930
+ /**
7931
+ * @default 'default'
7932
+ */
7933
+ "type"?: 'default' | 'table_control';
7912
7934
  }
7913
7935
  interface GbTag {
7914
7936
  "action"?: 'X_close' | 'text_only' | 'count';
@@ -167,6 +167,7 @@ export interface FilterField {
167
167
  default?: any;
168
168
  }
169
169
  export interface FilterConfig {
170
+ mode?: 'internal' | 'external';
170
171
  title?: string;
171
172
  showClearButton?: boolean;
172
173
  fields?: FilterField[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "globuswebcomponents",
3
- "version": "2.16.6",
3
+ "version": "2.16.7",
4
4
  "description": "Globus One",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",
@@ -1 +0,0 @@
1
- {"file":"p-BTYRuLgI.js","mappings":";;;AAAA,MAAM,mBAAmB,GAAG,006EAA006E;;MCOz16E,gBAAgB,iBAAAA,kBAAA,CAAA,MAAA,gBAAA,SAAAC,CAAA,CAAA;AAL7B,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;AAMU,QAAA,IAAO,CAAA,OAAA,GAAY,KAAK;AACxB,QAAA,IAAI,CAAA,IAAA,GAAW,EAAE;AACjB,QAAA,IAAK,CAAA,KAAA,GAAW,EAAE;AACjB,QAAA,IAAc,CAAA,cAAA,GAAW,EAAE;AAC3B,QAAA,IAAW,CAAA,WAAA,GAAY,KAAK;AA2BtC;IAzBC,MAAM,QAAQ,CAAC,QAAgB,EAAA;QAC7B,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,QAAQ,CAAA,CAAE,CAAC;AAC5C,QAAA,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC;AACtC,QAAA,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE;AACjC,QAAA,IAAI,CAAC,cAAc,GAAG,GAAG;;IAG3B,iBAAiB,GAAA;AACf,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;;IAG1B,MAAM,GAAA;AACJ,QAAA,QACE,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,4BAA4B,EAAA,EACpC,IAAI,CAAC,WAAW,KACf,CAAwB,CAAA,YAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,YAAA,EAAA,IAAI,EAAE,KAAK,EAAC,eAAe,EAAC,KAAK,EAAC,SAAS,EAAA,EACjE,CAAG,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,OAAO,EAAA,EAAE,IAAI,CAAC,KAAK,CAAK,CACrB,CACd,EACD,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,CAAA,qBAAA,EAAwB,IAAI,CAAC,OAAO,GAAG,SAAS,GAAG,EAAE,EAAE,EAAE,YAAY,EAAE,OAAO,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,YAAY,EAAE,OAAO,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,EAAA,EAChK,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,CAAA,KAAA,EAAQ,IAAI,CAAC,OAAO,GAAG,SAAS,GAAG,EAAE,CAAA,CAAE,EAAE,SAAS,EAAE,IAAI,CAAC,cAAc,EAAQ,CAAA,CACvF,CACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/gb-icon-button-base/gb-icon-button-base.css?tag=gb-icon-button-base&encapsulation=shadow","src/components/gb-icon-button-base/gb-icon-button-base.tsx"],"sourcesContent":["@import './../../global/global.css';\r\n\r\n.icon_button_base_container {\r\n position: relative;\r\n}\r\n\r\n.icon_button_base_div {\r\n display: flex;\r\n width: 100%;\r\n height: 2rem;\r\n padding: var(--spacing-none);\r\n justify-content: center;\r\n align-items: center;\r\n gap: 0.5rem;\r\n border-radius: var(--rounded-xs);\r\n cursor: pointer;\r\n}\r\n\r\n.icon_button_base_div:hover {\r\n background-color: var(--color-background-gray-subtle, #e3e8ef);\r\n}\r\n\r\n.icon_button_base_div:active {\r\n background-color: transparent;\r\n}\r\n\r\n.icon_button_base_div.current {\r\n background-color: var(--color-background-card, #ffffff);\r\n box-shadow: var(--shadow-md);\r\n}\r\n\r\n.icon_button_base_div.current:hover {\r\n background-color: var(--color-background-information-subtler, #c8e0f9);\r\n}\r\n\r\n.icon_button_base_div.current:active {\r\n background-color: var(--color-background-information-subtlest, #e4f0fc);\r\n}\r\n\r\n.icon {\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.icon svg path[stroke] {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon svg path[fill] {\r\n fill: none; \r\n}\r\n\r\n.icon.current svg path[stroke] {\r\n stroke: var(--color-icon-selected, #075db2);\r\n}\r\n\r\n.icon.current svg path[fill] {\r\n fill: var(--color-icon-selected, #075db2);\r\n}\r\n\r\n.tooltip {\r\n position: absolute;\r\n right: 100%;\r\n top: -130%;\r\n}\r\n","import { Component, Prop, State, getAssetPath, h } from '@stencil/core';\r\n\r\n@Component({\r\n tag: 'gb-icon-button-base',\r\n styleUrl: 'gb-icon-button-base.css',\r\n shadow: true,\r\n})\r\nexport class GbIconButtonBase {\r\n @Prop() current: boolean = false;\r\n @Prop() icon: string = '';\r\n @Prop() label: string = '';\r\n @State() leadingIconSvg: string = '';\r\n @State() showTooltip: boolean = false;\r\n\r\n async loadIcon(iconName: string) {\r\n const iconPath = getAssetPath(`${iconName}`);\r\n const response = await fetch(iconPath);\r\n const svg = await response.text();\r\n this.leadingIconSvg = svg;\r\n }\r\n\r\n componentWillLoad() {\r\n this.loadIcon(this.icon);\r\n }\r\n\r\n render() {\r\n return (\r\n <div class=\"icon_button_base_container\">\r\n {this.showTooltip && (\r\n <gb-tooltip show-arrow={true} arrow=\"bottom_center\" class=\"tooltip\">\r\n <p slot=\"label\">{this.label}</p>\r\n </gb-tooltip>\r\n )}\r\n <div class={`icon_button_base_div ${this.current ? 'current' : ''}`} onMouseEnter={() => (this.showTooltip = true)} onMouseLeave={() => (this.showTooltip = false)}>\r\n <div class={`icon ${this.current ? 'current' : ''}`} innerHTML={this.leadingIconSvg}></div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n"],"version":3}
@@ -1 +0,0 @@
1
- {"file":"p-BbygHijY.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/gb-button/gb-button.css?tag=gb-button&encapsulation=shadow","src/components/gb-button/gb-button.tsx"],"sourcesContent":["@import './../../global/global.css';\r\n\r\n:host {\r\n --button-color: var(--primary-color);\r\n --icon-color: var(--primary-color);\r\n display: flex;\r\n align-items: center;\r\n /* width: 100%; */\r\n}\r\n\r\n.button_wrapper {\r\n position: relative;\r\n width: 100%;\r\n}\r\n\r\nbutton {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n border: none;\r\n cursor: pointer;\r\n border-radius: var(--rounded-sm);\r\n width: 100%;\r\n transition:\r\n background-color 0.15s,\r\n color 0.15s;\r\n}\r\n\r\nbutton.only {\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\nbutton.only.rounded{\r\n border-radius: var(--rounded-full);\r\n}\r\n\r\nbutton .icon {\r\n display: inline-flex;\r\n width: auto;\r\n height: auto;\r\n}\r\n\r\nbutton .icon svg path[fill] {\r\n fill: var(--icon-color);\r\n}\r\n\r\nbutton .icon svg path[stroke] {\r\n stroke: var(--icon-color);\r\n}\r\n\r\nbutton .icon svg circle {\r\n stroke: var(--icon-color);\r\n}\r\n\r\n/* Button Sizes Styles */\r\nbutton.xxl {\r\n padding: var(--spacing-none) var(--spacing-6);\r\n height: 3.5rem;\r\n gap: var(--spacing-3);\r\n}\r\n\r\nbutton.xl {\r\n padding: var(--spacing-none) var(--spacing-5);\r\n height: 3rem;\r\n gap: var(--spacing-2);\r\n}\r\n\r\nbutton.lg {\r\n padding: 0.625rem 1.125rem;\r\n height: 2.75rem;\r\n gap: var(--spacing-2);\r\n}\r\n\r\nbutton.md {\r\n padding: var(--spacing-none) var(--spacing-4);\r\n height: 2.5rem;\r\n gap: var(--spacing-2);\r\n}\r\n\r\nbutton.sm {\r\n padding: var(--spacing-none) var(--spacing-3);\r\n height: 2.25rem;\r\n gap: var(--spacing-2);\r\n}\r\n\r\nbutton.only {\r\n padding: 0;\r\n}\r\n\r\nbutton.only.xxl {\r\n width: 3.5rem;\r\n height: 3.5rem;\r\n}\r\n\r\nbutton.only.xl {\r\n width: 3rem;\r\n height: 3rem;\r\n}\r\n\r\nbutton.only.lg {\r\n width: 2.75rem;\r\n height: 2.75rem;\r\n}\r\n\r\nbutton.only.md {\r\n width: 2.5rem;\r\n height: 2.5rem;\r\n /* padding: 0; */\r\n}\r\n\r\nbutton.only.sm {\r\n width: 2.25rem;\r\n height: 2.25rem;\r\n}\r\n\r\nbutton.xxl .icon svg {\r\n width: var(--spacing-6);\r\n height: var(--spacing-6);\r\n}\r\n\r\nbutton.xl .icon svg,\r\nbutton.lg .icon svg,\r\nbutton.md .icon svg,\r\nbutton.sm .icon svg {\r\n width: var(--spacing-5);\r\n height: var(--spacing-5);\r\n}\r\n\r\n/* Hierarchy Styles */\r\nbutton.primary {\r\n background-color: var(--color-background-brandRed, #e21b2e);\r\n --icon-color: var(--color-icon-inverse, #ffffff);\r\n color: var(--color-text-inverse, #ffffff);\r\n}\r\n\r\nbutton.secondary_gray {\r\n background-color: transparent;\r\n border: 1px solid var(--color-border, #9aa4b2);\r\n --icon-color: var(--color-icon, #4b5565);\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\nbutton.secondary_color {\r\n background-color: transparent;\r\n border: 1px solid var(--color-border-brandRed, #e21b2e);\r\n color: var(--color-text-brandRed, #e21b2e) !important;\r\n --icon-color: var(--color-icon-brandRed, #e21b2e);\r\n}\r\n\r\nbutton.tertiary_gray {\r\n background-color: transparent;\r\n --icon-color: var(--color-icon, #4b5565);\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\nbutton.tertiary_color {\r\n background-color: transparent;\r\n --icon-color: var(--color-icon-brandRed, #e21b2e);\r\n color: var(--color-text-brandRed, #e21b2e) !important;\r\n}\r\n\r\nbutton.link_gray {\r\n background-color: transparent;\r\n --icon-color: var(--color-icon, #4b5565);\r\n padding: var(--spacing-none);\r\n height: fit-content;\r\n justify-content: flex-start;\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\nbutton.link_color {\r\n background-color: transparent;\r\n --icon-color: var(--color-link, #075db2);\r\n padding: var(--spacing-none);\r\n height: fit-content;\r\n justify-content: flex-start;\r\n color: var(--color-link, #075db2) !important;\r\n}\r\n\r\n/* Button Destructive Styles */\r\nbutton.primary.destructive {\r\n background-color: var(--color-background-danger, #b51726);\r\n color: var(--color-text-inverse, #ffffff);\r\n --icon-color: var(--color-icon-danger-inverse, #ffffff);\r\n}\r\n\r\nbutton.secondary_gray.destructive,\r\nbutton.secondary_color.destructive {\r\n border: 1px solid var(--color-border-danger, #b51726);\r\n --icon-color: var(--color-icon-danger, #b51726);\r\n}\r\n\r\nbutton.tertiary_gray.destructive,\r\nbutton.tertiary_color.destructive {\r\n --icon-color: var(--color-icon-danger, #b51726);\r\n}\r\n\r\nbutton.link_gray.destructive,\r\nbutton.link_color.destructive {\r\n --icon-color: var(--color-icon-danger, #b51726);\r\n}\r\n\r\nbutton.secondary_gray.destructive,\r\nbutton.secondary_color.destructive,\r\nbutton.tertiary_gray.destructive,\r\nbutton.tertiary_color.destructive,\r\nbutton.link_gray.destructive,\r\nbutton.link_color.destructive {\r\n color: var(--color-text-danger, #b51726) !important;\r\n}\r\n\r\n/* Button States Styles */\r\nbutton.primary:hover {\r\n background-color: var(--color-background-brandRed-hover, #cc1a2a);\r\n}\r\n\r\nbutton.primary:active {\r\n background-color: var(--color-background-brandRed-pressed, #b51726);\r\n}\r\n\r\nbutton.secondary_gray:hover {\r\n background-color: var(--color-background-gray-subtler, #eef2f6);\r\n}\r\n\r\nbutton.secondary_gray:active {\r\n background-color: var(--color-background-gray-subtle, #e3e8ef);\r\n}\r\n\r\nbutton.secondary_color:hover {\r\n background-color: var(--color-background-danger-subtlest, #fef1f2);\r\n}\r\n\r\nbutton.secondary_color:active {\r\n background-color: var(--color-background-danger-subtler, #fde3e5);\r\n}\r\n\r\nbutton.tertiary_gray:hover {\r\n background-color: var(--color-background-gray-subtler, #eef2f6);\r\n}\r\n\r\nbutton.tertiary_gray:active {\r\n background-color: var(--color-background-gray-subtle, #e3e8ef);\r\n}\r\n\r\nbutton.tertiary_color:hover {\r\n background-color: var(--color-background-danger-subtlest, #fef1f2);\r\n}\r\n\r\nbutton.tertiary_color:active {\r\n background-color: var(--color-background-danger-subtler, #fde3e5);\r\n}\r\n\r\nbutton.link_gray:hover,\r\nbutton.link_color:hover {\r\n text-decoration: underline;\r\n}\r\n\r\nbutton.link_gray:active {\r\n text-decoration: none;\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\nbutton.link_color:active {\r\n text-decoration: none;\r\n color: var(--color-link-pressed, #064e94);\r\n}\r\n\r\nbutton.primary.destructive:hover {\r\n background-color: var(--color-background-danger-bold, #8c121d);\r\n}\r\n\r\nbutton.primary.destructive:active {\r\n background-color: var(--color-background-brandRed-hover, #cc1a2a); /* ask Mr Gideon about this */\r\n}\r\n\r\nbutton.secondary_gray.destructive:hover,\r\nbutton.secondary_color.destructive:hover {\r\n background-color: var(--color-background-danger-subtlest, #fef1f2);\r\n}\r\n\r\nbutton.secondary_gray.destructive:active,\r\nbutton.secondary_color.destructive:active {\r\n background-color: var(--color-background-danger-subtler, #fde3e5);\r\n}\r\n\r\nbutton.tertiary_gray.destructive:hover,\r\nbutton.tertiary_color.destructive:hover {\r\n background-color: var(--color-background-danger-subtlest, #fef1f2);\r\n}\r\n\r\nbutton.tertiary_gray.destructive:active,\r\nbutton.tertiary_color.destructive:active {\r\n background-color: var(--color-background-danger-subtler, #fde3e5);\r\n}\r\n\r\nbutton.link_gray.destructive:active {\r\n color: var(--color-text-danger-bold, #8c121d);\r\n}\r\n\r\nbutton.link_color.destructive:active {\r\n color: var(--color-text-warning-bold, #93370d);\r\n}\r\n\r\n/* Button Disabled Styles */\r\nbutton.disabled {\r\n cursor: not-allowed;\r\n /* pointer-events: none; */\r\n}\r\n\r\nbutton.primary.disabled {\r\n background-color: var(--color-background-btn-disabled, #eef2f6) !important;\r\n --icon-color: var(--color-icon-disabled, #9aa4b2);\r\n color: var(--color-text-disabled, #9aa4b2) !important;\r\n}\r\n\r\nbutton.secondary_gray.disabled,\r\nbutton.secondary_color.disabled {\r\n --icon-color: var(--color-icon-disabled, #9aa4b2);\r\n color: var(--color-text-disabled, #9aa4b2) !important;\r\n border-color: var(--color-border-disabled, #e3e8ef) !important;\r\n}\r\n\r\nbutton.tertiary_gray.disabled,\r\nbutton.tertiary_color.disabled,\r\nbutton.link_gray.disabled,\r\nbutton.link_color.disabled {\r\n --icon-color: var(--color-icon-disabled, #9aa4b2);\r\n color: var(--color-text-disabled, #9aa4b2) !important;\r\n}\r\n\r\n.btn_text {\r\n white-space: nowrap;\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.btn_text::first-letter {\r\n text-transform: uppercase;\r\n}\r\n\r\n.loader {\r\n --loader-thickness: 4px;\r\n aspect-ratio: 1;\r\n border-radius: 50%;\r\n -webkit-mask: radial-gradient(farthest-side, #0000 calc(100% - 8px), #000 0);\r\n animation: l13 1s infinite linear;\r\n mask: radial-gradient(farthest-side, rgba(0, 0, 0, 0) calc(100% - var(--loader-thickness)), #000 0);\r\n}\r\n\r\n.loader.default.sm,\r\n.loader.default.md,\r\n.loader.default.lg,\r\n.loader.default.xl {\r\n width: 1.8rem;\r\n}\r\n\r\n.loader.default.xxl {\r\n width: 2rem;\r\n}\r\n\r\n.loader.only.sm,\r\n.loader.only.md,\r\n.loader.only.lg,\r\n.loader.only.xl {\r\n width: 1.5rem;\r\n}\r\n\r\n.loader.only.xxl {\r\n width: 1.7rem;\r\n}\r\n\r\n.loader.primary,\r\n.loader.primary.destructive {\r\n background:\r\n radial-gradient(farthest-side, var(--color-text-inverse, #ffffff) 94%, #0000) top/var(--loader-thickness) var(--loader-thickness) no-repeat,\r\n conic-gradient(#0000 30%, var(--color-text-inverse, #ffffff));\r\n}\r\n\r\n.loader.secondary_gray,\r\n.loader.tertiary_gray {\r\n background:\r\n radial-gradient(farthest-side, var(--color-text, #4b5565) 94%, #0000) top/var(--loader-thickness) var(--loader-thickness) no-repeat,\r\n conic-gradient(#0000 30%, var(--color-text, #4b5565));\r\n}\r\n\r\n.loader.secondary_color,\r\n.loader.tertiary_color {\r\n background:\r\n radial-gradient(farthest-side, var(--color-text-brandRed, #e21b2e) 94%, #0000) top/var(--loader-thickness) var(--loader-thickness) no-repeat,\r\n conic-gradient(#0000 30%, var(--color-text-brandRed, #e21b2e));\r\n}\r\n\r\n.loader.destructive {\r\n background:\r\n radial-gradient(farthest-side, var(--color-text-danger-bold, #8c121d) 94%, #0000) top/var(--loader-thickness) var(--loader-thickness) no-repeat,\r\n conic-gradient(#0000 30%, var(--color-text-danger-bold, #8c121d));\r\n}\r\n\r\n@keyframes l13 {\r\n 100% {\r\n transform: rotate(1turn);\r\n }\r\n}\r\n\r\n.tooltip {\r\n position: absolute;\r\n left: 0;\r\n}\r\n\r\n.tooltip.sm {\r\n top: -120%;\r\n}\r\n\r\n.tooltip.md {\r\n top: -110%;\r\n}\r\n\r\n.tooltip.lg {\r\n top: -100%;\r\n}\r\n\r\n.tooltip.xl {\r\n top: -90%;\r\n}\r\n\r\n.tooltip.xxl {\r\n top: -75%;\r\n}\r\n","import { Component, Element, getAssetPath, h, Prop, State, Fragment, Method } from '@stencil/core';\r\nimport { ArrowPositions, GeneralHierarchies, GeneralSizes, StateType } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-button',\r\n styleUrl: 'gb-button.css',\r\n shadow: true,\r\n assetsDirs: [''],\r\n})\r\nexport class GbButton {\r\n @Prop() size: GeneralSizes = 'xl';\r\n @Prop() hierarchy: GeneralHierarchies = 'primary';\r\n @Prop() icon: 'default' | 'only' = 'default';\r\n @Prop() destructive: boolean = false;\r\n @Prop() state: StateType = 'default';\r\n @Prop() iconLeading: boolean = false;\r\n @Prop() iconLeadingSwap: string = '';\r\n @Prop() iconTrailing: boolean = false;\r\n @Prop() iconTrailingSwap: string = '';\r\n @Prop() tooltipText: string = '';\r\n @Prop() arrow: ArrowPositions = 'bottom_center';\r\n @Prop() event: boolean = false;\r\n @Prop() rounded: boolean = false;\r\n @Prop() iconLeadingStyle: string = '';\r\n @Prop() iconLeadingType: string = '';\r\n @Prop() iconTrailingStyle: string = '';\r\n @Prop() iconTrailingType: string = '';\r\n @Prop() iconConfig?: {\r\n iconLeadingStyle: string,\r\n iconLeadingType: string\r\n }\r\n @Element() el: HTMLElement;\r\n @State() leadingIconSvg: string = '';\r\n @State() trailingIconSvg: string = '';\r\n @State() internalButtonState: string = '';\r\n @State() internalIconLeadingState: string = '';\r\n @State() internalIconTrailingState: string = '';\r\n @State() tooltipShown: boolean = false;\r\n\r\n @Method()\r\n async getNativeButton(): Promise<HTMLButtonElement | null> {\r\n return this.el.shadowRoot.querySelector('button') ?? null;\r\n }\r\n\r\n componentWillLoad() {\r\n if (this.iconLeading && this.iconLeadingSwap) {\r\n this.loadIcon(this.iconLeadingSwap, 'leading');\r\n }\r\n if (this.iconTrailing && this.iconTrailingSwap) {\r\n this.loadIcon(this.iconTrailingSwap, 'trailing');\r\n }\r\n\r\n const buttonSlot = this.el?.querySelector('p');\r\n\r\n if (this.state === 'loading') {\r\n buttonSlot.style.display = 'none';\r\n }\r\n\r\n if (buttonSlot) {\r\n buttonSlot.classList.add(this.getButtonTextClasses() || '');\r\n buttonSlot.classList.add('nowrap');\r\n }\r\n }\r\n\r\n async loadIcon(iconName: string, type: 'leading' | 'trailing') {\r\n const iconPath = getAssetPath(`${iconName}`);\r\n const response = await fetch(iconPath);\r\n const svg = await response.text();\r\n if (type === 'leading') {\r\n this.leadingIconSvg = svg;\r\n } else {\r\n this.trailingIconSvg = svg;\r\n }\r\n }\r\n\r\n // Helper to apply color styles based on the button state\r\n getButtonClasses() {\r\n return {\r\n button: true,\r\n [this.size]: true,\r\n [this.hierarchy]: true,\r\n destructive: this.destructive,\r\n disabled: this.state === 'disabled',\r\n only: this.icon === 'only',\r\n rounded: this.rounded && this.icon === 'only',\r\n };\r\n }\r\n\r\n getButtonTextClasses() {\r\n switch (this.size) {\r\n case 'xxl':\r\n return 'text-md-semi-bold';\r\n case 'xl':\r\n return 'text-md-semi-bold';\r\n case 'lg':\r\n return 'text-md-semi-bold';\r\n case 'md':\r\n return 'text-sm-semi-bold';\r\n case 'sm':\r\n return 'text-sm-semi-bold';\r\n }\r\n }\r\n\r\n renderLeadingIcon() {\r\n return <div class={`icon left-icon ${this.size}`} innerHTML={this.leadingIconSvg}></div>;\r\n }\r\n\r\n renderTrailingIcon() {\r\n return <div class=\"icon right-icon\" innerHTML={this.trailingIconSvg}></div>;\r\n }\r\n\r\n render() {\r\n return (\r\n <div class=\"button_wrapper\">\r\n <button\r\n disabled={this.state === 'disabled'}\r\n class={this.getButtonClasses()}\r\n onMouseEnter={() => (this.tooltipShown = true)}\r\n onMouseLeave={() => (this.tooltipShown = false)}\r\n >\r\n {this.state === 'loading' && <div class={`loader ${this.hierarchy} ${this.size} ${this.icon} ${this.destructive ? 'destructive' : ''}`}></div>}\r\n {this.state !== 'loading' && (\r\n <>\r\n {this.iconLeading && this.icon === 'default' && this.renderLeadingIcon()}\r\n {this.icon === 'default' && (\r\n <div class={`btn_text`}>\r\n <slot></slot>\r\n </div>\r\n )}\r\n {this.iconTrailing && this.renderTrailingIcon()}\r\n {this.icon === 'only' && this.renderLeadingIcon()}\r\n </>\r\n )}\r\n </button>\r\n {this.tooltipText && this.icon === 'only' && this.tooltipShown && (\r\n <gb-tooltip show-arrow={true} arrow={this.arrow} class={`tooltip ${this.size}`}>\r\n <p slot=\"label\">{this.tooltipText}</p>\r\n </gb-tooltip>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n"],"version":3}
@@ -1 +0,0 @@
1
- {"file":"p-CTdWQWa8.js","mappings":";;AAAA,MAAM,qBAAqB,GAAG,kx9EAAkx9E;;MCQny9E,kBAAkB,iBAAAA,kBAAA,CAAA,MAAA,kBAAA,SAAAC,CAAA,CAAA;AAL/B,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;AAMU,QAAA,IAAK,CAAA,KAAA,GAAc,SAAS;AAE5B,QAAA,IAAK,CAAA,KAAA,GAAW,EAAE;AAClB,QAAA,IAAI,CAAA,IAAA,GAAW,EAAE;AACjB,QAAA,IAAQ,CAAA,QAAA,GAAY,KAAK;AACxB,QAAA,IAAc,CAAA,cAAA,GAAW,EAAE;AA4CrC;IA1CC,MAAM,QAAQ,CAAC,QAAgB,EAAA;;QAE7B,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,QAAQ,CAAA,CAAE,CAAC;AAC5C,QAAA,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC;AACtC,QAAA,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE;AAEjC,QAAA,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE;QAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,eAAe,CAAC;AAC3D,QAAA,MAAM,UAAU,GAAG,MAAM,CAAC,eAAe;;QAGzC,MAAM,mBAAmB,GAAG,UAAU,CAAC,gBAAgB,CAAC,WAAW,CAAC;AACpE,QAAA,mBAAmB,CAAC,OAAO,CAAC,EAAE,IAAG;AAC/B,YAAA,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC;AACjC,SAAC,CAAC;QAEF,MAAM,YAAY,GAAG,UAAU,CAAC,gBAAgB,CAAC,YAAY,CAAC;AAE9D,QAAA,YAAY,CAAC,OAAO,CAAC,CAAC,IAAG;AACvB,YAAA,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC;AAChC,SAAC,CAAC;;AAGF,QAAA,MAAM,WAAW,GAAG,UAAU,CAAC,SAAS;;AAExC,QAAA,IAAI,CAAC,cAAc,GAAG,WAAW;;IAGnC,gBAAgB,GAAA;AACd,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;;IAG1B,MAAM,GAAA;QACJ,QACE,4DAAK,KAAK,EAAE,CAAA,mBAAA,EAAsB,IAAI,CAAC,KAAK,CAAI,CAAA,EAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,EAAE,EAAE,EAAA,EAC/E,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,gBAAgB,EAAA,EACzB,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,CAAA,KAAA,EAAQ,IAAI,CAAC,KAAK,CAAI,CAAA,EAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,EAAE,CAAE,CAAA,EAAE,SAAS,EAAE,IAAI,CAAC,cAAc,EAAQ,CAAA,EAC3G,CAAG,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,CAAwB,qBAAA,EAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,EAAE,CAAI,CAAA,EAAA,IAAI,CAAC,KAAK,CAAE,CAAA,EAAG,EAAA,IAAI,CAAC,KAAK,CAAK,CAC/F,CACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/gb-sidebar-child-item/gb-sidebar-child-item.css?tag=gb-sidebar-child-item&encapsulation=shadow","src/components/gb-sidebar-child-item/gb-sidebar-child-item.tsx"],"sourcesContent":["@import './../../global/global.css';\r\n\r\n.sidebar_child_item {\r\n width: 100%;\r\n display: flex;\r\n padding: var(--spacing-2) var(--spacing-3);\r\n align-items: center;\r\n gap: 0.5rem;\r\n align-self: stretch;\r\n border-radius: var(--rounded-sm);\r\n box-sizing: border-box;\r\n}\r\n\r\n.sidebar_child_item:hover {\r\n background-color: var(--color-background-gray-subtler, #eef2f6);\r\n cursor: pointer;\r\n}\r\n\r\n.sidebar_child_item:active {\r\n background-color: var(--color-background-information-subtler, #c8e0f9);\r\n}\r\n\r\n/* Selected Styles */\r\n.sidebar_child_item.default.selected {\r\n background-color: var(--color-background-information-subtle, #9ac7f4);\r\n}\r\n\r\n.sidebar_child_item.default.selected:hover {\r\n background-color: var(--color-background-information-subtler, #c8e0f9);\r\n}\r\n\r\n.sidebar_child_item.default.selected:active {\r\n background-color: var(--color-background-information-subtlest, #e4f0fc);\r\n}\r\n\r\n.icon_and_label {\r\n display: flex;\r\n align-items: center;\r\n gap: 0.75rem;\r\n flex: 1 0 0;\r\n}\r\n\r\n.icon.default path {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon.default path[fill] {\r\n fill: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon.default path.has_opacity,\r\n.icon.default g.has_opacity,\r\n.icon.default circle.has_opacity {\r\n opacity: 0;\r\n}\r\n\r\n.sidebar_child_item:hover .icon path {\r\n stroke: var(--color-icon-bold, #202939);\r\n}\r\n\r\n.sidebar_child_item:active .icon path[stroke] {\r\n stroke: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.sidebar_child_item:active .icon path[fill] {\r\n fill: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.label.default {\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\n.sidebar_child_item:hover .label {\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\n.sidebar_child_item:active .label {\r\n color: var(--color-text-information-bold, #042f59);\r\n}\r\n\r\n.sidebar_child_item.selected .label {\r\n color: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.sidebar_child_item.selected .icon path[fill] {\r\n fill: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.sidebar_child_item.selected .icon path[stroke] {\r\n stroke: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.sidebar_child_item.selected .icon path#Icon[stroke],\r\n.sidebar_child_item.selected .icon path#Accent[stroke],\r\n.sidebar_child_item.selected .icon circle[stroke] {\r\n stroke: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.sidebar_child_item.selected .icon path#Icon[fill],\r\n.sidebar_child_item.selected .icon path#Accent[fill],\r\n.sidebar_child_item.selected .icon circle[fill] {\r\n fill: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.sidebar_child_item.selected .icon path.has_opacity,\r\n.sidebar_child_item.selected .icon g.has_opacity,\r\n.sidebar_child_item.selected .icon circle.has_opacity {\r\n opacity: 0.5;\r\n}\r\n","import { Component, Prop, State, getAssetPath, h } from '@stencil/core';\r\nimport { StateType } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-sidebar-child-item',\r\n styleUrl: 'gb-sidebar-child-item.css',\r\n shadow: true,\r\n})\r\nexport class GbSidebarChildItem {\r\n @Prop() state: StateType = 'default';\r\n @Prop() type: 'full_with_label' | 'icon_only';\r\n @Prop() label: string = '';\r\n @Prop() icon: string = '';\r\n @Prop() selected: boolean = false;\r\n @State() leadingIconSvg: string = '';\r\n\r\n async loadIcon(iconName: string) {\r\n // const iconPath = getAssetPath(getIconPath(iconName, 'duotone', 'rounded'));\r\n const iconPath = getAssetPath(`${iconName}`);\r\n const response = await fetch(iconPath);\r\n const svg = await response.text();\r\n\r\n const parser = new DOMParser();\r\n const svgDoc = parser.parseFromString(svg, 'image/svg+xml');\r\n const svgElement = svgDoc.documentElement;\r\n\r\n // Add `has-opacity` class to all elements that have an opacity attribute\r\n const elementsWithOpacity = svgElement.querySelectorAll('[opacity]');\r\n elementsWithOpacity.forEach(el => {\r\n el.classList.add('has_opacity');\r\n });\r\n\r\n const gWithOpacity = svgElement.querySelectorAll('g[opacity]');\r\n\r\n gWithOpacity.forEach(g => {\r\n g.classList.add('has_opacity');\r\n });\r\n\r\n // Serialize and store\r\n const modifiedSvg = svgElement.outerHTML;\r\n // console.log(modifiedSvg)\r\n this.leadingIconSvg = modifiedSvg;\r\n }\r\n\r\n componentDidLoad() {\r\n this.loadIcon(this.icon);\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`sidebar_child_item ${this.state} ${this.selected ? 'selected' : ''}`}>\r\n <div class=\"icon_and_label\">\r\n <div class={`icon ${this.state} ${this.selected ? 'selected' : ''}`} innerHTML={this.leadingIconSvg}></div>\r\n <p class={`label text-md-medium ${this.selected ? 'selected' : ''} ${this.state}`}>{this.label}</p>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n"],"version":3}
@@ -1 +0,0 @@
1
- {"file":"p-DNoYOHYU.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/gb-table-header/gb-table-header.css?tag=gb-table-header&encapsulation=shadow","src/components/gb-table-header/gb-table-header.tsx"],"sourcesContent":["@import '../../global/global.css';\r\n\r\n.table_header_div {\r\n width: 100%;\r\n box-sizing: border-box;\r\n display: flex;\r\n padding: var(--spacing-5) var(--spacing-6);\r\n justify-content: space-between;\r\n align-items: center;\r\n gap: var(--spacing-5);\r\n align-self: stretch;\r\n background: var(--color-background-card, #ffffff);\r\n border-bottom: 1px solid var(--color-border-subtle, #cdd5df);\r\n overflow: visible;\r\n}\r\n\r\n.table_heading {\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\n.date_filters {\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-4);\r\n min-width: 0;\r\n}\r\n\r\n.date_dropdown,\r\n.date_input {\r\n width: 100%;\r\n max-width: 13rem;\r\n min-width: 0;\r\n}\r\n\r\n.actions {\r\n display: flex;\r\n max-width: 50.25rem;\r\n justify-content: flex-end;\r\n align-items: center;\r\n gap: var(--spacing-4);\r\n flex: 1 0 0;\r\n}\r\n\r\n.actions.full_width {\r\n max-width: none;\r\n}\r\n\r\n.input_field {\r\n flex-grow: 1;\r\n width: 100%;\r\n max-width: 20rem;\r\n}\r\n\r\n.action {\r\n display: flex;\r\n padding: 0rem 0rem 0rem var(--spacing-none);\r\n justify-content: flex-end;\r\n align-items: center;\r\n gap: var(--spacing-4);\r\n}\r\n\r\n.export {\r\n position: relative;\r\n overflow: visible;\r\n}\r\n\r\n.dropdown {\r\n position: absolute;\r\n z-index: 10;\r\n top: calc(100% + 0.5rem);\r\n}\r\n\r\n.dropdown.left {\r\n left: 0;\r\n}\r\n\r\n.dropdown.right {\r\n right: 0;\r\n}\r\n\r\n.refresh_button {\r\n width: 2.5rem;\r\n}\r\n\r\n/* Breakpoints (Responsiveness) */\r\n/* Mobile */\r\n@media (max-width: 550px) {\r\n .table_header_content {\r\n flex-direction: column;\r\n align-items: flex-start;\r\n }\r\n\r\n .dropdown {\r\n position: absolute;\r\n top: 100%;\r\n left: 0;\r\n }\r\n\r\n .actions {\r\n flex-direction: column;\r\n width: 100%;\r\n align-items: flex-start;\r\n }\r\n\r\n .table_header_div {\r\n flex-direction: column;\r\n }\r\n\r\n .date_filters {\r\n width: 100%;\r\n }\r\n\r\n .date_dropdown,\r\n .date_input {\r\n width: 100%;\r\n max-width: none;\r\n }\r\n\r\n .input_field {\r\n max-width: none;\r\n }\r\n}\r\n\r\n@media (max-width: 390px) {\r\n .date_filters {\r\n display: flex;\r\n width: 100%;\r\n }\r\n}\r\n","import { Component, Element, Event, EventEmitter, Listen, Prop, State, h } from '@stencil/core';\r\nimport { CloseButtonPositions, StateEnum, StateType } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-table-header',\r\n styleUrl: 'gb-table-header.css',\r\n shadow: true,\r\n})\r\nexport class GbTableHeader {\r\n @Prop() showFilter: boolean = false;\r\n @Prop() showColumnOptions: boolean = false;\r\n @Prop() tableHeading: boolean = false;\r\n @Prop() tableHeadingLabel: string = '';\r\n @Prop() showSearch: boolean = false;\r\n @Prop() showExport: boolean = false;\r\n @Prop() showRefreshButton: boolean = false;\r\n @Prop() showLayoutToggle: boolean = false;\r\n @Prop() filterState: StateType;\r\n @Prop() filterCount: number = 0;\r\n @Prop() showEntireData: boolean = false;\r\n @Prop() exportButtonState: StateType = 'default';\r\n @Prop() pdfState: StateEnum = StateEnum.Default;\r\n @Prop() csvState: StateEnum = StateEnum.Default;\r\n @Prop() showDateFilter: boolean = false;\r\n @State() items = [\r\n { label: 'grid', current: false, icon: 'assets/grid-view.svg' },\r\n { label: 'list', current: true, icon: 'assets/left-to-right-list-dash.svg' },\r\n ];\r\n @Prop() mode: 'single' | 'range' = 'single';\r\n @Prop() format: string = 'M j, Y';\r\n @Prop() datePickerDisabled: boolean = false;\r\n @Prop() datePickerPlaceholder: string = 'Start date - end date';\r\n @Prop() datePickerIconPosition: CloseButtonPositions = 'left';\r\n @Prop() datePickerDropdownPosition: CloseButtonPositions = 'left';\r\n @Prop() exportDropdownPosition: CloseButtonPositions = 'right';\r\n @Prop() enableTime: boolean = false;\r\n @Prop() noCalendar: boolean = false;\r\n @Prop() twentyfourHr: boolean = false;\r\n @Prop() showMonths: number = 2;\r\n @Prop() inputPlaceholder: string = 'Search';\r\n @State() width: number = window.innerWidth;\r\n @State() buttonIcon: 'default' | 'only';\r\n @State() showExportDropdown: boolean = false;\r\n @State() isDatePickerShown: boolean = false;\r\n @State() isDatePickerFullWidth: boolean = false;\r\n @Event() inputValueChanged: EventEmitter<void>;\r\n @Event() filterButtonClicked: EventEmitter<void>;\r\n @Event() exportClicked: EventEmitter<{ dataType: string; exportType: string }>;\r\n @Event() refreshButtonClicked: EventEmitter<void>;\r\n @Event() layoutButtonClicked: EventEmitter<string>;\r\n @Event() columnOptionsButtonClicked: EventEmitter<string>;\r\n @Event({ bubbles: true, composed: true }) dateChange: EventEmitter<string | string[]>;\r\n @Element() el: HTMLElement;\r\n\r\n exportDropdown!: HTMLElement;\r\n\r\n isMobile = this.width < 768;\r\n\r\n componentDidLoad() {\r\n document.addEventListener('click', this.handleClickOutside.bind(this));\r\n }\r\n\r\n componentWillLoad() {\r\n this.updateParameters();\r\n window.addEventListener('resize', this.handleResize.bind(this));\r\n }\r\n\r\n // extractDropdownItemSelected(item) {\r\n // if (item.detail === 'Custom') {\r\n // this.isDatePickerShown = true;\r\n // } else {\r\n // this.isDatePickerShown = false;\r\n // }\r\n // }\r\n\r\n emitDateSelected(date) {\r\n this.dateChange.emit(date.detail);\r\n }\r\n\r\n toggleDropdown() {\r\n this.showExportDropdown = !this.showExportDropdown;\r\n }\r\n\r\n @Listen('resize', { target: 'window' })\r\n handleResize() {\r\n this.width = window.innerWidth;\r\n this.updateParameters();\r\n }\r\n\r\n private updateParameters() {\r\n this.buttonIcon = this.width < 1007 ? 'only' : 'default';\r\n this.isDatePickerFullWidth = this.width <= 700 ? true : false;\r\n }\r\n\r\n emitValue(inputValue) {\r\n this.inputValueChanged.emit(inputValue);\r\n }\r\n\r\n onFilterButtonClicked() {\r\n this.filterButtonClicked.emit();\r\n }\r\n\r\n emitSelection(selection) {\r\n this.exportClicked.emit(selection);\r\n }\r\n\r\n onRefreshButtonClicked() {\r\n this.refreshButtonClicked.emit();\r\n }\r\n\r\n onColumnOptionsButtonClicked() {\r\n this.columnOptionsButtonClicked.emit();\r\n }\r\n\r\n onLayoutButtonClicked(layout) {\r\n this.layoutButtonClicked.emit(layout.detail);\r\n }\r\n\r\n @Listen('click', { target: 'document' })\r\n handleClickOutside(event: MouseEvent) {\r\n if (this.showExportDropdown && !this.el.contains(event.target as Node)) {\r\n this.showExportDropdown = false;\r\n }\r\n }\r\n\r\n disconnectedCallback() {\r\n document.removeEventListener('click', this.handleClickOutside);\r\n window.removeEventListener('resize', this.handleResize);\r\n }\r\n\r\n render() {\r\n return (\r\n <div class=\"table_header_div\">\r\n {this.tableHeading && <p class=\"table_heading text-lg-semi-bold\">{this.tableHeadingLabel}</p>}\r\n {this.showDateFilter && (\r\n <div class=\"date_filters\">\r\n <div class=\"date_input\">\r\n <gb-date-picker\r\n mode={this.mode}\r\n disabled={this.datePickerDisabled}\r\n format={this.format}\r\n icon-position={this.datePickerIconPosition}\r\n placeholder={this.datePickerPlaceholder}\r\n dropdown-alignment={this.datePickerDropdownPosition}\r\n enable-time={this.enableTime}\r\n no-calendar={this.noCalendar}\r\n twentyfour-hr={this.twentyfourHr}\r\n show-months={this.showMonths}\r\n full-width={this.isDatePickerFullWidth}\r\n onDateChange={this.emitDateSelected.bind(this)}\r\n ></gb-date-picker>\r\n </div>\r\n </div>\r\n )}\r\n <div class={`actions ${!this.showDateFilter && !this.tableHeading ? 'full_width' : ''}`}>\r\n {this.showSearch && (\r\n <div class=\"input_field\">\r\n <gb-input-field\r\n size=\"sm\"\r\n type=\"icon_leading\"\r\n icon-swap=\"assets/search-01.svg\"\r\n placeholder={this.inputPlaceholder}\r\n enable-cancel-button-function={true}\r\n onInputValueChanged={this.emitValue.bind(this)}\r\n ></gb-input-field>\r\n </div>\r\n )}\r\n <div class=\"action\">\r\n {this.showLayoutToggle && <gb-button-group items={this.items} icon=\"only\" onOptionChange={this.onLayoutButtonClicked.bind(this)}></gb-button-group>}\r\n {this.showColumnOptions && this.width > 768 && (\r\n <gb-button\r\n size=\"md\"\r\n hierarchy=\"secondary_gray\"\r\n icon={this.width <= 1007 ? 'only' : 'default'}\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/column-insert.svg\"\r\n onClick={() => this.onColumnOptionsButtonClicked()}\r\n >\r\n <p>Columns</p>\r\n </gb-button>\r\n )}\r\n {this.showFilter && (\r\n <gb-filter-button state={this.filterState} icon-only={this.width <= 1007 ? true : false} onClick={() => this.onFilterButtonClicked()}>\r\n <p slot=\"filter_count\">{this.filterCount}</p>\r\n </gb-filter-button>\r\n )}\r\n {this.showExport && (\r\n <div class=\"export\">\r\n <gb-button\r\n size=\"md\"\r\n state={this.exportButtonState}\r\n hierarchy=\"secondary_gray\"\r\n icon={this.width <= 1007 ? 'only' : 'default'}\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/file-export.svg\"\r\n icon-trailing={this.width <= 1007 ? false : true}\r\n icon-trailing-swap=\"assets/arrow-down-01.svg\"\r\n onClick={e => {\r\n e.stopPropagation();\r\n this.toggleDropdown();\r\n }}\r\n >\r\n <p>Export</p>\r\n </gb-button>\r\n {this.showExportDropdown && (\r\n <gb-export-dropdown\r\n ref={el => (this.exportDropdown = el)}\r\n show-entire-data={this.showEntireData}\r\n pdf-state={this.pdfState}\r\n csv-state={this.csvState}\r\n onExportClicked={event => this.emitSelection(event.detail)}\r\n class={`dropdown ${this.exportDropdownPosition}`}\r\n ></gb-export-dropdown>\r\n )}\r\n </div>\r\n )}\r\n {this.showRefreshButton && (\r\n <div class=\"refresh_button\">\r\n <gb-button\r\n size=\"md\"\r\n hierarchy=\"secondary_gray\"\r\n icon={this.width <= 1007 ? 'only' : 'default'}\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/refresh.svg\"\r\n onClick={() => this.onRefreshButtonClicked()}\r\n ></gb-button>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n"],"version":3}