@adobe-commerce/aio-experience-kit 1.0.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 (186) hide show
  1. package/CHANGELOG.md +105 -0
  2. package/LICENSE +56 -0
  3. package/README.md +479 -0
  4. package/dist/cjs/_virtual/_rollupPluginBabelHelpers.js +341 -0
  5. package/dist/cjs/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  6. package/dist/cjs/components/ConfirmationDialog/index.js +68 -0
  7. package/dist/cjs/components/ConfirmationDialog/index.js.map +1 -0
  8. package/dist/cjs/components/DataForm/FieldBuilder/index.js +168 -0
  9. package/dist/cjs/components/DataForm/FieldBuilder/index.js.map +1 -0
  10. package/dist/cjs/components/DataForm/FormBuilder/index.js +154 -0
  11. package/dist/cjs/components/DataForm/FormBuilder/index.js.map +1 -0
  12. package/dist/cjs/components/DataForm/FormBuilder/types.js +15 -0
  13. package/dist/cjs/components/DataForm/FormBuilder/types.js.map +1 -0
  14. package/dist/cjs/components/DataForm/index.js +93 -0
  15. package/dist/cjs/components/DataForm/index.js.map +1 -0
  16. package/dist/cjs/components/DataTable/ActionsBuilder/index.js +47 -0
  17. package/dist/cjs/components/DataTable/ActionsBuilder/index.js.map +1 -0
  18. package/dist/cjs/components/DataTable/GridBuilder/ActionMenuRenderer/index.js +117 -0
  19. package/dist/cjs/components/DataTable/GridBuilder/ActionMenuRenderer/index.js.map +1 -0
  20. package/dist/cjs/components/DataTable/GridBuilder/ButtonsRenderer/index.js +114 -0
  21. package/dist/cjs/components/DataTable/GridBuilder/ButtonsRenderer/index.js.map +1 -0
  22. package/dist/cjs/components/DataTable/GridBuilder/LinksRenderer/index.js +120 -0
  23. package/dist/cjs/components/DataTable/GridBuilder/LinksRenderer/index.js.map +1 -0
  24. package/dist/cjs/components/DataTable/GridBuilder/index.js +114 -0
  25. package/dist/cjs/components/DataTable/GridBuilder/index.js.map +1 -0
  26. package/dist/cjs/components/DataTable/index.js +158 -0
  27. package/dist/cjs/components/DataTable/index.js.map +1 -0
  28. package/dist/cjs/components/DataTable/types.js +12 -0
  29. package/dist/cjs/components/DataTable/types.js.map +1 -0
  30. package/dist/cjs/components/MainContainer/ContentBuilder/index.js +32 -0
  31. package/dist/cjs/components/MainContainer/ContentBuilder/index.js.map +1 -0
  32. package/dist/cjs/components/MainContainer/NavigationBuilder/Buttons/index.js +40 -0
  33. package/dist/cjs/components/MainContainer/NavigationBuilder/Buttons/index.js.map +1 -0
  34. package/dist/cjs/components/MainContainer/NavigationBuilder/Links/index.js +41 -0
  35. package/dist/cjs/components/MainContainer/NavigationBuilder/Links/index.js.map +1 -0
  36. package/dist/cjs/components/MainContainer/NavigationBuilder/index.js +37 -0
  37. package/dist/cjs/components/MainContainer/NavigationBuilder/index.js.map +1 -0
  38. package/dist/cjs/components/MainContainer/NavigationBuilder/types.js +11 -0
  39. package/dist/cjs/components/MainContainer/NavigationBuilder/types.js.map +1 -0
  40. package/dist/cjs/components/MainContainer/OneColumn/index.js +44 -0
  41. package/dist/cjs/components/MainContainer/OneColumn/index.js.map +1 -0
  42. package/dist/cjs/components/MainContainer/TitleBuilder/index.js +22 -0
  43. package/dist/cjs/components/MainContainer/TitleBuilder/index.js.map +1 -0
  44. package/dist/cjs/components/MainContainer/TwoColumnLeft/index.js +56 -0
  45. package/dist/cjs/components/MainContainer/TwoColumnLeft/index.js.map +1 -0
  46. package/dist/cjs/components/MainContainer/index.js +70 -0
  47. package/dist/cjs/components/MainContainer/index.js.map +1 -0
  48. package/dist/cjs/components/MainContainer/types.js +8 -0
  49. package/dist/cjs/components/MainContainer/types.js.map +1 -0
  50. package/dist/cjs/index.js +38 -0
  51. package/dist/cjs/index.js.map +1 -0
  52. package/dist/cjs/utils/AdminUiSdk/index.js +159 -0
  53. package/dist/cjs/utils/AdminUiSdk/index.js.map +1 -0
  54. package/dist/cjs/utils/RouteParams/index.js +29 -0
  55. package/dist/cjs/utils/RouteParams/index.js.map +1 -0
  56. package/dist/esm/_virtual/_rollupPluginBabelHelpers.js +318 -0
  57. package/dist/esm/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  58. package/dist/esm/components/ConfirmationDialog/index.js +64 -0
  59. package/dist/esm/components/ConfirmationDialog/index.js.map +1 -0
  60. package/dist/esm/components/DataForm/FieldBuilder/index.js +164 -0
  61. package/dist/esm/components/DataForm/FieldBuilder/index.js.map +1 -0
  62. package/dist/esm/components/DataForm/FormBuilder/index.js +150 -0
  63. package/dist/esm/components/DataForm/FormBuilder/index.js.map +1 -0
  64. package/dist/esm/components/DataForm/FormBuilder/types.js +15 -0
  65. package/dist/esm/components/DataForm/FormBuilder/types.js.map +1 -0
  66. package/dist/esm/components/DataForm/index.js +89 -0
  67. package/dist/esm/components/DataForm/index.js.map +1 -0
  68. package/dist/esm/components/DataTable/ActionsBuilder/index.js +43 -0
  69. package/dist/esm/components/DataTable/ActionsBuilder/index.js.map +1 -0
  70. package/dist/esm/components/DataTable/GridBuilder/ActionMenuRenderer/index.js +113 -0
  71. package/dist/esm/components/DataTable/GridBuilder/ActionMenuRenderer/index.js.map +1 -0
  72. package/dist/esm/components/DataTable/GridBuilder/ButtonsRenderer/index.js +110 -0
  73. package/dist/esm/components/DataTable/GridBuilder/ButtonsRenderer/index.js.map +1 -0
  74. package/dist/esm/components/DataTable/GridBuilder/LinksRenderer/index.js +116 -0
  75. package/dist/esm/components/DataTable/GridBuilder/LinksRenderer/index.js.map +1 -0
  76. package/dist/esm/components/DataTable/GridBuilder/index.js +110 -0
  77. package/dist/esm/components/DataTable/GridBuilder/index.js.map +1 -0
  78. package/dist/esm/components/DataTable/index.js +154 -0
  79. package/dist/esm/components/DataTable/index.js.map +1 -0
  80. package/dist/esm/components/DataTable/types.js +12 -0
  81. package/dist/esm/components/DataTable/types.js.map +1 -0
  82. package/dist/esm/components/MainContainer/ContentBuilder/index.js +28 -0
  83. package/dist/esm/components/MainContainer/ContentBuilder/index.js.map +1 -0
  84. package/dist/esm/components/MainContainer/NavigationBuilder/Buttons/index.js +36 -0
  85. package/dist/esm/components/MainContainer/NavigationBuilder/Buttons/index.js.map +1 -0
  86. package/dist/esm/components/MainContainer/NavigationBuilder/Links/index.js +37 -0
  87. package/dist/esm/components/MainContainer/NavigationBuilder/Links/index.js.map +1 -0
  88. package/dist/esm/components/MainContainer/NavigationBuilder/index.js +33 -0
  89. package/dist/esm/components/MainContainer/NavigationBuilder/index.js.map +1 -0
  90. package/dist/esm/components/MainContainer/NavigationBuilder/types.js +11 -0
  91. package/dist/esm/components/MainContainer/NavigationBuilder/types.js.map +1 -0
  92. package/dist/esm/components/MainContainer/OneColumn/index.js +40 -0
  93. package/dist/esm/components/MainContainer/OneColumn/index.js.map +1 -0
  94. package/dist/esm/components/MainContainer/TitleBuilder/index.js +18 -0
  95. package/dist/esm/components/MainContainer/TitleBuilder/index.js.map +1 -0
  96. package/dist/esm/components/MainContainer/TwoColumnLeft/index.js +52 -0
  97. package/dist/esm/components/MainContainer/TwoColumnLeft/index.js.map +1 -0
  98. package/dist/esm/components/MainContainer/index.js +58 -0
  99. package/dist/esm/components/MainContainer/index.js.map +1 -0
  100. package/dist/esm/components/MainContainer/types.js +8 -0
  101. package/dist/esm/components/MainContainer/types.js.map +1 -0
  102. package/dist/esm/index.js +11 -0
  103. package/dist/esm/index.js.map +1 -0
  104. package/dist/esm/types/components/ConfirmationDialog/index.d.ts +12 -0
  105. package/dist/esm/types/components/ConfirmationDialog/index.d.ts.map +1 -0
  106. package/dist/esm/types/components/ConfirmationDialog/types.d.ts +47 -0
  107. package/dist/esm/types/components/ConfirmationDialog/types.d.ts.map +1 -0
  108. package/dist/esm/types/components/DataForm/FieldBuilder/index.d.ts +8 -0
  109. package/dist/esm/types/components/DataForm/FieldBuilder/index.d.ts.map +1 -0
  110. package/dist/esm/types/components/DataForm/FieldBuilder/types.d.ts +11 -0
  111. package/dist/esm/types/components/DataForm/FieldBuilder/types.d.ts.map +1 -0
  112. package/dist/esm/types/components/DataForm/FormBuilder/index.d.ts +8 -0
  113. package/dist/esm/types/components/DataForm/FormBuilder/index.d.ts.map +1 -0
  114. package/dist/esm/types/components/DataForm/FormBuilder/types.d.ts +51 -0
  115. package/dist/esm/types/components/DataForm/FormBuilder/types.d.ts.map +1 -0
  116. package/dist/esm/types/components/DataForm/index.d.ts +8 -0
  117. package/dist/esm/types/components/DataForm/index.d.ts.map +1 -0
  118. package/dist/esm/types/components/DataForm/types.d.ts +16 -0
  119. package/dist/esm/types/components/DataForm/types.d.ts.map +1 -0
  120. package/dist/esm/types/components/DataTable/ActionsBuilder/index.d.ts +8 -0
  121. package/dist/esm/types/components/DataTable/ActionsBuilder/index.d.ts.map +1 -0
  122. package/dist/esm/types/components/DataTable/ActionsBuilder/types.d.ts +12 -0
  123. package/dist/esm/types/components/DataTable/ActionsBuilder/types.d.ts.map +1 -0
  124. package/dist/esm/types/components/DataTable/GridBuilder/ActionMenuRenderer/index.d.ts +12 -0
  125. package/dist/esm/types/components/DataTable/GridBuilder/ActionMenuRenderer/index.d.ts.map +1 -0
  126. package/dist/esm/types/components/DataTable/GridBuilder/ButtonsRenderer/index.d.ts +12 -0
  127. package/dist/esm/types/components/DataTable/GridBuilder/ButtonsRenderer/index.d.ts.map +1 -0
  128. package/dist/esm/types/components/DataTable/GridBuilder/LinksRenderer/index.d.ts +12 -0
  129. package/dist/esm/types/components/DataTable/GridBuilder/LinksRenderer/index.d.ts.map +1 -0
  130. package/dist/esm/types/components/DataTable/GridBuilder/index.d.ts +8 -0
  131. package/dist/esm/types/components/DataTable/GridBuilder/index.d.ts.map +1 -0
  132. package/dist/esm/types/components/DataTable/GridBuilder/types.d.ts +15 -0
  133. package/dist/esm/types/components/DataTable/GridBuilder/types.d.ts.map +1 -0
  134. package/dist/esm/types/components/DataTable/index.d.ts +7 -0
  135. package/dist/esm/types/components/DataTable/index.d.ts.map +1 -0
  136. package/dist/esm/types/components/DataTable/types.d.ts +41 -0
  137. package/dist/esm/types/components/DataTable/types.d.ts.map +1 -0
  138. package/dist/esm/types/components/MainContainer/ContentBuilder/index.d.ts +8 -0
  139. package/dist/esm/types/components/MainContainer/ContentBuilder/index.d.ts.map +1 -0
  140. package/dist/esm/types/components/MainContainer/ContentBuilder/types.d.ts +11 -0
  141. package/dist/esm/types/components/MainContainer/ContentBuilder/types.d.ts.map +1 -0
  142. package/dist/esm/types/components/MainContainer/NavigationBuilder/Buttons/index.d.ts +7 -0
  143. package/dist/esm/types/components/MainContainer/NavigationBuilder/Buttons/index.d.ts.map +1 -0
  144. package/dist/esm/types/components/MainContainer/NavigationBuilder/Buttons/types.d.ts +12 -0
  145. package/dist/esm/types/components/MainContainer/NavigationBuilder/Buttons/types.d.ts.map +1 -0
  146. package/dist/esm/types/components/MainContainer/NavigationBuilder/Links/index.d.ts +7 -0
  147. package/dist/esm/types/components/MainContainer/NavigationBuilder/Links/index.d.ts.map +1 -0
  148. package/dist/esm/types/components/MainContainer/NavigationBuilder/Links/types.d.ts +12 -0
  149. package/dist/esm/types/components/MainContainer/NavigationBuilder/Links/types.d.ts.map +1 -0
  150. package/dist/esm/types/components/MainContainer/NavigationBuilder/index.d.ts +7 -0
  151. package/dist/esm/types/components/MainContainer/NavigationBuilder/index.d.ts.map +1 -0
  152. package/dist/esm/types/components/MainContainer/NavigationBuilder/types.d.ts +21 -0
  153. package/dist/esm/types/components/MainContainer/NavigationBuilder/types.d.ts.map +1 -0
  154. package/dist/esm/types/components/MainContainer/OneColumn/index.d.ts +7 -0
  155. package/dist/esm/types/components/MainContainer/OneColumn/index.d.ts.map +1 -0
  156. package/dist/esm/types/components/MainContainer/OneColumn/types.d.ts +18 -0
  157. package/dist/esm/types/components/MainContainer/OneColumn/types.d.ts.map +1 -0
  158. package/dist/esm/types/components/MainContainer/TitleBuilder/index.d.ts +9 -0
  159. package/dist/esm/types/components/MainContainer/TitleBuilder/index.d.ts.map +1 -0
  160. package/dist/esm/types/components/MainContainer/TitleBuilder/types.d.ts +8 -0
  161. package/dist/esm/types/components/MainContainer/TitleBuilder/types.d.ts.map +1 -0
  162. package/dist/esm/types/components/MainContainer/TwoColumnLeft/index.d.ts +7 -0
  163. package/dist/esm/types/components/MainContainer/TwoColumnLeft/index.d.ts.map +1 -0
  164. package/dist/esm/types/components/MainContainer/TwoColumnLeft/types.d.ts +18 -0
  165. package/dist/esm/types/components/MainContainer/TwoColumnLeft/types.d.ts.map +1 -0
  166. package/dist/esm/types/components/MainContainer/index.d.ts +10 -0
  167. package/dist/esm/types/components/MainContainer/index.d.ts.map +1 -0
  168. package/dist/esm/types/components/MainContainer/types.d.ts +23 -0
  169. package/dist/esm/types/components/MainContainer/types.d.ts.map +1 -0
  170. package/dist/esm/types/components/index.d.ts +19 -0
  171. package/dist/esm/types/components/index.d.ts.map +1 -0
  172. package/dist/esm/types/index.d.ts +6 -0
  173. package/dist/esm/types/index.d.ts.map +1 -0
  174. package/dist/esm/types/utils/AdminUiSdk/index.d.ts +60 -0
  175. package/dist/esm/types/utils/AdminUiSdk/index.d.ts.map +1 -0
  176. package/dist/esm/types/utils/AdminUiSdk/types.d.ts +63 -0
  177. package/dist/esm/types/utils/AdminUiSdk/types.d.ts.map +1 -0
  178. package/dist/esm/types/utils/RouteParams/index.d.ts +14 -0
  179. package/dist/esm/types/utils/RouteParams/index.d.ts.map +1 -0
  180. package/dist/esm/types/utils/index.d.ts +7 -0
  181. package/dist/esm/types/utils/index.d.ts.map +1 -0
  182. package/dist/esm/utils/AdminUiSdk/index.js +155 -0
  183. package/dist/esm/utils/AdminUiSdk/index.js.map +1 -0
  184. package/dist/esm/utils/RouteParams/index.js +24 -0
  185. package/dist/esm/utils/RouteParams/index.js.map +1 -0
  186. package/package.json +124 -0
@@ -0,0 +1,120 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _rollupPluginBabelHelpers = require('../../../../_virtual/_rollupPluginBabelHelpers.js');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+ var React = require('react');
8
+ var reactSpectrum = require('@adobe/react-spectrum');
9
+
10
+ var LinksRenderer = function LinksRenderer(_ref) {
11
+ var item = _ref.item,
12
+ gridActions = _ref.gridActions,
13
+ onGridActionPress = _ref.onGridActionPress;
14
+ var _React$useState = React.useState([]),
15
+ _React$useState2 = _rollupPluginBabelHelpers.slicedToArray(_React$useState, 2),
16
+ visibleActions = _React$useState2[0],
17
+ setVisibleActions = _React$useState2[1];
18
+ React.useEffect(function () {
19
+ var checkVisibility = /*#__PURE__*/function () {
20
+ var _ref2 = _rollupPluginBabelHelpers.asyncToGenerator(/*#__PURE__*/_rollupPluginBabelHelpers.regenerator().m(function _callee() {
21
+ var visible, _iterator, _step, action, isVisible, _t, _t2;
22
+ return _rollupPluginBabelHelpers.regenerator().w(function (_context) {
23
+ while (1) switch (_context.p = _context.n) {
24
+ case 0:
25
+ visible = [];
26
+ _iterator = _rollupPluginBabelHelpers.createForOfIteratorHelper(gridActions);
27
+ _context.p = 1;
28
+ _iterator.s();
29
+ case 2:
30
+ if ((_step = _iterator.n()).done) {
31
+ _context.n = 9;
32
+ break;
33
+ }
34
+ action = _step.value;
35
+ if (!action.isVisible) {
36
+ _context.n = 7;
37
+ break;
38
+ }
39
+ _context.p = 3;
40
+ _context.n = 4;
41
+ return action.isVisible(item);
42
+ case 4:
43
+ isVisible = _context.v;
44
+ if (isVisible) {
45
+ visible.push(action);
46
+ }
47
+ _context.n = 6;
48
+ break;
49
+ case 5:
50
+ _context.p = 5;
51
+ _t = _context.v;
52
+ // If visibility check fails, skip this action but continue with others
53
+ console.warn("Visibility check failed for action ".concat(action.key, ":"), _t);
54
+ case 6:
55
+ _context.n = 8;
56
+ break;
57
+ case 7:
58
+ visible.push(action);
59
+ case 8:
60
+ _context.n = 2;
61
+ break;
62
+ case 9:
63
+ _context.n = 11;
64
+ break;
65
+ case 10:
66
+ _context.p = 10;
67
+ _t2 = _context.v;
68
+ _iterator.e(_t2);
69
+ case 11:
70
+ _context.p = 11;
71
+ _iterator.f();
72
+ return _context.f(11);
73
+ case 12:
74
+ setVisibleActions(visible);
75
+ case 13:
76
+ return _context.a(2);
77
+ }
78
+ }, _callee, null, [[3, 5], [1, 10, 11, 12]]);
79
+ }));
80
+ return function checkVisibility() {
81
+ return _ref2.apply(this, arguments);
82
+ };
83
+ }();
84
+ checkVisibility();
85
+ }, [gridActions, item]);
86
+ return jsxRuntime.jsx(reactSpectrum.Flex, {
87
+ direction: "row-reverse",
88
+ gap: "size-125",
89
+ children: visibleActions.map(function (action, index) {
90
+ return jsxRuntime.jsxs(reactSpectrum.View, {
91
+ children: [jsxRuntime.jsx(reactSpectrum.Link, {
92
+ onPress: function () {
93
+ var _onPress = _rollupPluginBabelHelpers.asyncToGenerator(/*#__PURE__*/_rollupPluginBabelHelpers.regenerator().m(function _callee2() {
94
+ return _rollupPluginBabelHelpers.regenerator().w(function (_context2) {
95
+ while (1) switch (_context2.n) {
96
+ case 0:
97
+ _context2.n = 1;
98
+ return onGridActionPress(action.key, item);
99
+ case 1:
100
+ return _context2.a(2);
101
+ }
102
+ }, _callee2);
103
+ }));
104
+ function onPress() {
105
+ return _onPress.apply(this, arguments);
106
+ }
107
+ return onPress;
108
+ }(),
109
+ children: action.text
110
+ }), index < visibleActions.length - 1 ? jsxRuntime.jsx(reactSpectrum.Divider, {
111
+ size: 'M',
112
+ orientation: "vertical"
113
+ }) : '']
114
+ }, action.key);
115
+ })
116
+ });
117
+ };
118
+
119
+ exports.default = LinksRenderer;
120
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../src/components/DataTable/GridBuilder/LinksRenderer/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\nimport React from 'react';\nimport { View, Flex, Link, Divider } from '@adobe/react-spectrum';\nimport { GridActionProps, DataTableRow } from '../../types';\n\ninterface LinksRendererProps<T extends DataTableRow = DataTableRow> {\n item: T;\n gridActions: GridActionProps<T>[];\n onGridActionPress: (key: string, item: T) => Promise<void>;\n}\n\nconst LinksRenderer = <T extends DataTableRow = DataTableRow>({\n item,\n gridActions,\n onGridActionPress,\n}: LinksRendererProps<T>): JSX.Element => {\n const [visibleActions, setVisibleActions] = React.useState<GridActionProps<T>[]>([]);\n\n React.useEffect((): void => {\n const checkVisibility = async (): Promise<void> => {\n const visible = [];\n for (const action of gridActions) {\n if (action.isVisible) {\n try {\n const isVisible = await action.isVisible(item);\n if (isVisible) {\n visible.push(action);\n }\n } catch (error) {\n // If visibility check fails, skip this action but continue with others\n console.warn(`Visibility check failed for action ${action.key}:`, error);\n }\n } else {\n visible.push(action);\n }\n }\n setVisibleActions(visible);\n };\n checkVisibility();\n }, [gridActions, item]);\n\n return (\n <Flex direction=\"row-reverse\" gap=\"size-125\">\n {visibleActions.map((action, index) => (\n <View key={action.key}>\n <Link\n onPress={async (): Promise<void> => {\n await onGridActionPress(action.key, item);\n }}\n >\n {action.text}\n </Link>\n {index < visibleActions.length - 1 ? <Divider size={'M'} orientation=\"vertical\" /> : ''}\n </View>\n ))}\n </Flex>\n );\n};\n\nexport default LinksRenderer;\n"],"names":["LinksRenderer","_ref","item","gridActions","onGridActionPress","_React$useState","React","useState","_React$useState2","_slicedToArray","visibleActions","setVisibleActions","useEffect","checkVisibility","_ref2","_asyncToGenerator","_regenerator","m","_callee","visible","_iterator","_step","action","isVisible","_t","_t2","w","_context","p","n","_createForOfIteratorHelper","s","done","value","v","push","console","warn","concat","key","e","f","a","apply","arguments","_jsx","Flex","direction","gap","children","map","index","_jsxs","View","Link","onPress","_onPress","_callee2","_context2","text","length","Divider","size","orientation"],"mappings":";;;;;;;;;AAcA,IAAMA,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,IAAA,EAIsB;AAAA,EAAA,IAHvCC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJC,WAAW,GAAAF,IAAA,CAAXE,WAAW;IACXC,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;AAEjB,EAAA,IAAAC,eAAA,GAA4CC,KAAK,CAACC,QAAQ,CAAuB,EAAE,CAAC;IAAAC,gBAAA,GAAAC,uCAAA,CAAAJ,eAAA,EAAA,CAAA,CAAA;AAA7EK,IAAAA,cAAc,GAAAF,gBAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,iBAAiB,GAAAH,gBAAA,CAAA,CAAA,CAAA;EAExCF,KAAK,CAACM,SAAS,CAAC,YAAW;AACzB,IAAA,IAAMC,eAAe,gBAAA,YAAA;MAAA,IAAAC,KAAA,GAAAC,0CAAA,cAAAC,qCAAA,EAAA,CAAAC,CAAA,CAAG,SAAAC,OAAAA,GAAA;AAAA,QAAA,IAAAC,OAAA,EAAAC,SAAA,EAAAC,KAAA,EAAAC,MAAA,EAAAC,SAAA,EAAAC,EAAA,EAAAC,GAAA;AAAA,QAAA,OAAAT,qCAAA,EAAA,CAAAU,CAAA,CAAA,UAAAC,QAAA,EAAA;AAAA,UAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,CAAA,GAAAD,QAAA,CAAAE,CAAA;AAAA,YAAA,KAAA,CAAA;AAChBV,cAAAA,OAAO,GAAG,EAAE;cAAAC,SAAA,GAAAU,mDAAA,CACG3B,WAAW,CAAA;AAAAwB,cAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;AAAAR,cAAAA,SAAA,CAAAW,CAAA,EAAA;AAAA,YAAA,KAAA,CAAA;AAAA,cAAA,IAAA,CAAAV,KAAA,GAAAD,SAAA,CAAAS,CAAA,IAAAG,IAAA,EAAA;AAAAL,gBAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,gBAAA;AAAA,cAAA;cAArBP,MAAM,GAAAD,KAAA,CAAAY,KAAA;cAAA,IAAA,CACXX,MAAM,CAACC,SAAS,EAAA;AAAAI,gBAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,gBAAA;AAAA,cAAA;AAAAF,cAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;AAAAD,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA,OAEQP,MAAM,CAACC,SAAS,CAACrB,IAAI,CAAC;AAAA,YAAA,KAAA,CAAA;cAAxCqB,SAAS,GAAAI,QAAA,CAAAO,CAAA;AACf,cAAA,IAAIX,SAAS,EAAE;AACbJ,gBAAAA,OAAO,CAACgB,IAAI,CAACb,MAAM,CAAC;AACtB,cAAA;AAACK,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA,KAAA,CAAA;AAAAF,cAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;cAAAJ,EAAA,GAAAG,QAAA,CAAAO,CAAA;AAED;cACAE,OAAO,CAACC,IAAI,CAAA,qCAAA,CAAAC,MAAA,CAAuChB,MAAM,CAACiB,GAAG,EAAA,GAAA,CAAA,EAAAf,EAAU,CAAC;AAAC,YAAA,KAAA,CAAA;AAAAG,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA,KAAA,CAAA;AAG3EV,cAAAA,OAAO,CAACgB,IAAI,CAACb,MAAM,CAAC;AAAC,YAAA,KAAA,CAAA;AAAAK,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA,KAAA,CAAA;AAAAF,cAAAA,QAAA,CAAAE,CAAA,GAAA,EAAA;AAAA,cAAA;AAAA,YAAA,KAAA,EAAA;AAAAF,cAAAA,QAAA,CAAAC,CAAA,GAAA,EAAA;cAAAH,GAAA,GAAAE,QAAA,CAAAO,CAAA;cAAAd,SAAA,CAAAoB,CAAA,CAAAf,GAAA,CAAA;AAAA,YAAA,KAAA,EAAA;AAAAE,cAAAA,QAAA,CAAAC,CAAA,GAAA,EAAA;AAAAR,cAAAA,SAAA,CAAAqB,CAAA,EAAA;cAAA,OAAAd,QAAA,CAAAc,CAAA,CAAA,EAAA,CAAA;AAAA,YAAA,KAAA,EAAA;cAGzB9B,iBAAiB,CAACQ,OAAO,CAAC;AAAC,YAAA,KAAA,EAAA;cAAA,OAAAQ,QAAA,CAAAe,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,QAAA,CAAA,EAAAxB,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA,CAAA,CAAA;MAAA,CAC5B,CAAA,CAAA;AAAA,MAAA,OAAA,SAlBKL,eAAeA,GAAA;AAAA,QAAA,OAAAC,KAAA,CAAA6B,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,MAAA,CAAA;IAAA,CAAA,EAkBpB;AACD/B,IAAAA,eAAe,EAAE;AACnB,EAAA,CAAC,EAAE,CAACV,WAAW,EAAED,IAAI,CAAC,CAAC;EAEvB,OACE2C,cAAA,CAACC,kBAAI,EAAA;AAACC,IAAAA,SAAS,EAAC,aAAa;AAACC,IAAAA,GAAG,EAAC,UAAU;IAAAC,QAAA,EACzCvC,cAAc,CAACwC,GAAG,CAAC,UAAC5B,MAAM,EAAE6B,KAAK,EAAA;MAAA,OAChCC,eAAA,CAACC,kBAAI,EAAA;AAAAJ,QAAAA,QAAA,EAAA,CACHJ,cAAA,CAACS,kBAAI,EAAA;UACHC,OAAO,EAAA,YAAA;YAAA,IAAAC,QAAA,GAAAzC,0CAAA,cAAAC,qCAAA,EAAA,CAAAC,CAAA,CAAE,SAAAwC,QAAAA,GAAA;AAAA,cAAA,OAAAzC,qCAAA,EAAA,CAAAU,CAAA,CAAA,UAAAgC,SAAA,EAAA;gBAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAA7B,CAAA;AAAA,kBAAA,KAAA,CAAA;AAAA6B,oBAAAA,SAAA,CAAA7B,CAAA,GAAA,CAAA;AAAA,oBAAA,OACDzB,iBAAiB,CAACkB,MAAM,CAACiB,GAAG,EAAErC,IAAI,CAAC;AAAA,kBAAA,KAAA,CAAA;oBAAA,OAAAwD,SAAA,CAAAhB,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,cAAA,CAAA,EAAAe,QAAA,CAAA;YAAA,CAC1C,CAAA,CAAA;AAAA,YAAA,SAFDF,OAAOA,GAAA;AAAA,cAAA,OAAAC,QAAA,CAAAb,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,YAAA;AAAA,YAAA,OAAPW,OAAO;UAAA,CAAA,EAEN;oBAEAjC,MAAM,CAACqC;AAAI,SAAA,CACP,EACNR,KAAK,GAAGzC,cAAc,CAACkD,MAAM,GAAG,CAAC,GAAGf,cAAA,CAACgB,qBAAO,EAAA;AAACC,UAAAA,IAAI,EAAE,GAAG;AAAEC,UAAAA,WAAW,EAAC;SAAU,CAAG,GAAG,EAAE;AAAA,OAAA,EAR9EzC,MAAM,CAACiB,GAAG,CASd;IAAA,CACR;AAAC,GAAA,CACG;AAEX;;;;"}
@@ -0,0 +1,114 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHelpers.js');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+ var reactSpectrum = require('@adobe/react-spectrum');
8
+ var types = require('../types.js');
9
+ var index$2 = require('./LinksRenderer/index.js');
10
+ var index$1 = require('./ButtonsRenderer/index.js');
11
+ var index = require('./ActionMenuRenderer/index.js');
12
+
13
+ var GridBuilder = function GridBuilder(_ref) {
14
+ var _ref$columns = _ref.columns,
15
+ columns = _ref$columns === void 0 ? [] : _ref$columns,
16
+ _ref$data = _ref.data,
17
+ data = _ref$data === void 0 ? [] : _ref$data,
18
+ _ref$isMassActionsEna = _ref.isMassActionsEnabled,
19
+ isMassActionsEnabled = _ref$isMassActionsEna === void 0 ? false : _ref$isMassActionsEna,
20
+ _ref$gridAction = _ref.gridAction,
21
+ gridAction = _ref$gridAction === void 0 ? types.GridAction.ACTION_MENU : _ref$gridAction,
22
+ _ref$gridActions = _ref.gridActions,
23
+ gridActions = _ref$gridActions === void 0 ? [] : _ref$gridActions,
24
+ _ref$onGridActionPres = _ref.onGridActionPress,
25
+ onGridActionPress = _ref$onGridActionPres === void 0 ? /*#__PURE__*/_rollupPluginBabelHelpers.asyncToGenerator(/*#__PURE__*/_rollupPluginBabelHelpers.regenerator().m(function _callee() {
26
+ return _rollupPluginBabelHelpers.regenerator().w(function (_context) {
27
+ while (1) switch (_context.n) {
28
+ case 0:
29
+ return _context.a(2);
30
+ }
31
+ }, _callee);
32
+ })) : _ref$onGridActionPres,
33
+ _ref$onSelectionChang = _ref.onSelectionChange,
34
+ onSelectionChange = _ref$onSelectionChang === void 0 ? function () {} : _ref$onSelectionChang;
35
+ var selectionMode = isMassActionsEnabled ? 'multiple' : 'none';
36
+ // Handle empty columns gracefully
37
+ if (columns.length === 0) {
38
+ return jsxRuntime.jsx(reactSpectrum.View, {
39
+ width: '100%',
40
+ marginTop: 'size-200',
41
+ children: jsxRuntime.jsxs(reactSpectrum.IllustratedMessage, {
42
+ children: [jsxRuntime.jsx(reactSpectrum.Heading, {
43
+ children: "No columns configured"
44
+ }), jsxRuntime.jsx(reactSpectrum.Content, {
45
+ children: "Please configure columns to display data"
46
+ })]
47
+ })
48
+ });
49
+ }
50
+ return jsxRuntime.jsx(reactSpectrum.View, {
51
+ width: '100%',
52
+ marginTop: 'size-200',
53
+ children: jsxRuntime.jsxs(reactSpectrum.TableView, {
54
+ selectionMode: selectionMode,
55
+ onSelectionChange: onSelectionChange,
56
+ minHeight: 'size-6000',
57
+ renderEmptyState: function renderEmptyState() {
58
+ return jsxRuntime.jsxs(reactSpectrum.IllustratedMessage, {
59
+ children: [jsxRuntime.jsx(reactSpectrum.Heading, {
60
+ children: "No results"
61
+ }), jsxRuntime.jsx(reactSpectrum.Content, {
62
+ children: "No results found"
63
+ })]
64
+ });
65
+ },
66
+ children: [jsxRuntime.jsx(reactSpectrum.TableHeader, {
67
+ columns: columns,
68
+ children: function children(column) {
69
+ return jsxRuntime.jsx(reactSpectrum.Column, {
70
+ align: column.uid === 'actions' ? 'end' : 'start',
71
+ children: column.name
72
+ }, column.uid);
73
+ }
74
+ }), jsxRuntime.jsx(reactSpectrum.TableBody, {
75
+ items: data,
76
+ children: function children(item) {
77
+ return jsxRuntime.jsx(reactSpectrum.Row, {
78
+ children: function children(columnKey) {
79
+ return columnKey === 'actions' ? jsxRuntime.jsx(reactSpectrum.Cell, {
80
+ children: function () {
81
+ switch (gridAction) {
82
+ case types.GridAction.LINKS:
83
+ return jsxRuntime.jsx(index$2.default, {
84
+ item: item,
85
+ gridActions: gridActions,
86
+ onGridActionPress: onGridActionPress
87
+ });
88
+ case types.GridAction.BUTTONS:
89
+ return jsxRuntime.jsx(index$1.default, {
90
+ item: item,
91
+ gridActions: gridActions,
92
+ onGridActionPress: onGridActionPress
93
+ });
94
+ default:
95
+ return jsxRuntime.jsx(index.default, {
96
+ item: item,
97
+ gridActions: gridActions,
98
+ onGridActionPress: onGridActionPress
99
+ });
100
+ }
101
+ }()
102
+ }) : jsxRuntime.jsx(reactSpectrum.Cell, {
103
+ children: item[columnKey]
104
+ });
105
+ }
106
+ });
107
+ }
108
+ })]
109
+ })
110
+ });
111
+ };
112
+
113
+ exports.default = GridBuilder;
114
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../src/components/DataTable/GridBuilder/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\n// import React from 'react'\nimport {\n Cell,\n Column,\n Content,\n Heading,\n IllustratedMessage,\n Row,\n TableBody,\n TableHeader,\n TableView,\n View,\n} from '@adobe/react-spectrum';\n// import NotFound from '@spectrum-icons/illustrations/NotFound';\nimport { GridBuilderProps } from './types';\nimport { GridAction, DataTableRow } from '../types';\nimport LinksRenderer from './LinksRenderer';\nimport ButtonsRenderer from './ButtonsRenderer';\nimport ActionMenuRenderer from './ActionMenuRenderer';\n\nconst GridBuilder = <T extends DataTableRow = DataTableRow>({\n columns = [],\n data = [],\n isMassActionsEnabled = false,\n gridAction = GridAction.ACTION_MENU,\n gridActions = [],\n onGridActionPress = async (): Promise<void> => {},\n onSelectionChange = (): void => {},\n}: GridBuilderProps<T>): JSX.Element => {\n const selectionMode = isMassActionsEnabled ? 'multiple' : 'none';\n\n // Handle empty columns gracefully\n if (columns.length === 0) {\n return (\n <View width={'100%'} marginTop={'size-200'}>\n <IllustratedMessage>\n <Heading>No columns configured</Heading>\n <Content>Please configure columns to display data</Content>\n </IllustratedMessage>\n </View>\n );\n }\n\n return (\n <View width={'100%'} marginTop={'size-200'}>\n <TableView\n selectionMode={selectionMode}\n onSelectionChange={onSelectionChange}\n minHeight={'size-6000'}\n renderEmptyState={(): JSX.Element => {\n return (\n <IllustratedMessage>\n <Heading>No results</Heading>\n <Content>No results found</Content>\n </IllustratedMessage>\n );\n }}\n >\n <TableHeader columns={columns}>\n {(column): JSX.Element => (\n <Column key={column.uid} align={column.uid === 'actions' ? 'end' : 'start'}>\n {column.name}\n </Column>\n )}\n </TableHeader>\n <TableBody items={data}>\n {(item): JSX.Element => (\n <Row>\n {(columnKey): JSX.Element =>\n columnKey === 'actions' ? (\n <Cell>\n {((): JSX.Element => {\n switch (gridAction) {\n case GridAction.LINKS:\n return (\n <LinksRenderer\n item={item}\n gridActions={gridActions}\n onGridActionPress={onGridActionPress}\n />\n );\n case GridAction.BUTTONS:\n return (\n <ButtonsRenderer\n item={item}\n gridActions={gridActions}\n onGridActionPress={onGridActionPress}\n />\n );\n default:\n return (\n <ActionMenuRenderer\n item={item}\n gridActions={gridActions}\n onGridActionPress={onGridActionPress}\n />\n );\n }\n })()}\n </Cell>\n ) : (\n <Cell>{item[columnKey] as any}</Cell>\n )\n }\n </Row>\n )}\n </TableBody>\n </TableView>\n </View>\n );\n};\n\nexport default GridBuilder;\n"],"names":["GridBuilder","_ref","_ref$columns","columns","_ref$data","data","_ref$isMassActionsEna","isMassActionsEnabled","_ref$gridAction","gridAction","GridAction","ACTION_MENU","_ref$gridActions","gridActions","_ref$onGridActionPres","onGridActionPress","_asyncToGenerator","_regenerator","m","_callee","w","_context","n","a","_ref$onSelectionChang","onSelectionChange","selectionMode","length","_jsx","View","width","marginTop","children","_jsxs","IllustratedMessage","Heading","Content","TableView","minHeight","renderEmptyState","TableHeader","column","Column","align","uid","name","TableBody","items","item","Row","columnKey","Cell","LINKS","LinksRenderer","BUTTONS","ButtonsRenderer","ActionMenuRenderer"],"mappings":"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"}
@@ -0,0 +1,158 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _rollupPluginBabelHelpers = require('../../_virtual/_rollupPluginBabelHelpers.js');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+ var React = require('react');
8
+ var reactSpectrum = require('@adobe/react-spectrum');
9
+ var index = require('./ActionsBuilder/index.js');
10
+ var index$1 = require('./GridBuilder/index.js');
11
+ var types = require('./types.js');
12
+
13
+ var DataTable = function DataTable(_ref) {
14
+ var _ref$columns = _ref.columns,
15
+ columns = _ref$columns === void 0 ? [] : _ref$columns,
16
+ _ref$data = _ref.data,
17
+ data = _ref$data === void 0 ? [] : _ref$data,
18
+ _ref$buttons = _ref.buttons,
19
+ buttons = _ref$buttons === void 0 ? [] : _ref$buttons,
20
+ _ref$massActions = _ref.massActions,
21
+ massActions = _ref$massActions === void 0 ? [] : _ref$massActions,
22
+ _ref$onMassActionPres = _ref.onMassActionPress,
23
+ _onMassActionPress = _ref$onMassActionPres === void 0 ? function () {
24
+ return Promise.resolve();
25
+ } : _ref$onMassActionPres,
26
+ _ref$gridAction = _ref.gridAction,
27
+ gridAction = _ref$gridAction === void 0 ? types.GridAction.ACTION_MENU : _ref$gridAction,
28
+ _ref$gridActions = _ref.gridActions,
29
+ gridActions = _ref$gridActions === void 0 ? [] : _ref$gridActions,
30
+ _ref$onGridActionPres = _ref.onGridActionPress,
31
+ _onGridActionPress = _ref$onGridActionPres === void 0 ? function () {
32
+ return Promise.resolve();
33
+ } : _ref$onGridActionPres,
34
+ _ref$onGridLoad = _ref.onGridLoad,
35
+ onGridLoad = _ref$onGridLoad === void 0 ? function () {
36
+ return Promise.resolve();
37
+ } : _ref$onGridLoad,
38
+ _ref$isProcessing = _ref.isProcessing,
39
+ isProcessing = _ref$isProcessing === void 0 ? false : _ref$isProcessing;
40
+ var _useState = React.useState(true),
41
+ _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
42
+ isLoading = _useState2[0],
43
+ setLoading = _useState2[1];
44
+ var _useState3 = React.useState([]),
45
+ _useState4 = _rollupPluginBabelHelpers.slicedToArray(_useState3, 2),
46
+ ids = _useState4[0],
47
+ setIds = _useState4[1];
48
+ // Stable reference to onGridLoad to prevent infinite loops
49
+ var onGridLoadRef = React.useRef(onGridLoad);
50
+ onGridLoadRef.current = onGridLoad;
51
+ // Stable callback that won't change on every render
52
+ var stableOnGridLoad = React.useCallback(function () {
53
+ return onGridLoadRef.current();
54
+ }, []);
55
+ // Initial load effect - runs once on mount
56
+ React.useEffect(function () {
57
+ _rollupPluginBabelHelpers.asyncToGenerator(/*#__PURE__*/_rollupPluginBabelHelpers.regenerator().m(function _callee() {
58
+ return _rollupPluginBabelHelpers.regenerator().w(function (_context) {
59
+ while (1) switch (_context.n) {
60
+ case 0:
61
+ _context.n = 1;
62
+ return stableOnGridLoad();
63
+ case 1:
64
+ setLoading(false);
65
+ case 2:
66
+ return _context.a(2);
67
+ }
68
+ }, _callee);
69
+ }))();
70
+ }, [stableOnGridLoad]);
71
+ return jsxRuntime.jsx(reactSpectrum.Flex, {
72
+ width: "100%",
73
+ alignItems: "center",
74
+ children: isLoading ? jsxRuntime.jsx(reactSpectrum.ProgressCircle, {
75
+ size: "L",
76
+ "aria-label": "Loading...",
77
+ isIndeterminate: true
78
+ }) : jsxRuntime.jsxs(reactSpectrum.View, {
79
+ width: "100%",
80
+ children: [jsxRuntime.jsx(reactSpectrum.View, {
81
+ gridArea: "header",
82
+ children: jsxRuntime.jsxs(reactSpectrum.Flex, {
83
+ direction: "row",
84
+ width: "100%",
85
+ children: [jsxRuntime.jsx(index.default, {
86
+ buttons: buttons,
87
+ massActions: massActions,
88
+ isMassActionDisabled: ids.length === 0 || isProcessing,
89
+ onMassActionPress: function () {
90
+ var _onMassActionPress2 = _rollupPluginBabelHelpers.asyncToGenerator(/*#__PURE__*/_rollupPluginBabelHelpers.regenerator().m(function _callee2(key) {
91
+ return _rollupPluginBabelHelpers.regenerator().w(function (_context2) {
92
+ while (1) switch (_context2.n) {
93
+ case 0:
94
+ _context2.n = 1;
95
+ return _onMassActionPress(key, ids);
96
+ case 1:
97
+ setIds([]);
98
+ case 2:
99
+ return _context2.a(2);
100
+ }
101
+ }, _callee2);
102
+ }));
103
+ function onMassActionPress(_x) {
104
+ return _onMassActionPress2.apply(this, arguments);
105
+ }
106
+ return onMassActionPress;
107
+ }()
108
+ }), isProcessing && jsxRuntime.jsx(reactSpectrum.ProgressCircle, {
109
+ size: "M",
110
+ "aria-label": "Syncing..",
111
+ isIndeterminate: true,
112
+ marginEnd: "size-100"
113
+ })]
114
+ })
115
+ }), jsxRuntime.jsx(reactSpectrum.View, {
116
+ gridArea: "content",
117
+ children: jsxRuntime.jsx(index$1.default, {
118
+ columns: columns,
119
+ data: data,
120
+ isMassActionsEnabled: massActions.length > 0,
121
+ gridAction: gridAction,
122
+ gridActions: gridActions,
123
+ onGridActionPress: function () {
124
+ var _onGridActionPress2 = _rollupPluginBabelHelpers.asyncToGenerator(/*#__PURE__*/_rollupPluginBabelHelpers.regenerator().m(function _callee3(key, item) {
125
+ return _rollupPluginBabelHelpers.regenerator().w(function (_context3) {
126
+ while (1) switch (_context3.n) {
127
+ case 0:
128
+ _context3.n = 1;
129
+ return _onGridActionPress(key, item);
130
+ case 1:
131
+ return _context3.a(2);
132
+ }
133
+ }, _callee3);
134
+ }));
135
+ function onGridActionPress(_x2, _x3) {
136
+ return _onGridActionPress2.apply(this, arguments);
137
+ }
138
+ return onGridActionPress;
139
+ }(),
140
+ onSelectionChange: function onSelectionChange(keys) {
141
+ var selectedIds = [];
142
+ if (typeof keys === 'string' && keys === 'all') {
143
+ data.forEach(function (item) {
144
+ selectedIds.push(item.id);
145
+ });
146
+ } else {
147
+ selectedIds.push.apply(selectedIds, _rollupPluginBabelHelpers.toConsumableArray(keys));
148
+ }
149
+ setIds(selectedIds);
150
+ }
151
+ })
152
+ })]
153
+ })
154
+ });
155
+ };
156
+
157
+ exports.default = DataTable;
158
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/DataTable/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\nimport { useEffect, useState, useCallback, useRef } from 'react';\nimport { Flex, View, ProgressCircle } from '@adobe/react-spectrum';\nimport ActionsBuilder from './ActionsBuilder';\nimport GridBuilder from './GridBuilder';\nimport { DataTableProps, GridAction, DataTableRow } from './types';\nimport { Selection } from '@react-types/shared';\n\nconst DataTable = <T extends DataTableRow = DataTableRow>({\n columns = [],\n data = [],\n buttons = [],\n massActions = [],\n onMassActionPress = (): Promise<void> => Promise.resolve(),\n gridAction = GridAction.ACTION_MENU,\n gridActions = [],\n onGridActionPress = (): Promise<void> => Promise.resolve(),\n onGridLoad = (): Promise<void> => Promise.resolve(),\n isProcessing = false,\n}: DataTableProps<T>): JSX.Element => {\n const [isLoading, setLoading] = useState(true);\n const [ids, setIds] = useState<(number | string)[]>([]);\n\n // Stable reference to onGridLoad to prevent infinite loops\n const onGridLoadRef = useRef(onGridLoad);\n onGridLoadRef.current = onGridLoad;\n\n // Stable callback that won't change on every render\n const stableOnGridLoad = useCallback(() => {\n return onGridLoadRef.current();\n }, []);\n\n // Initial load effect - runs once on mount\n useEffect((): void => {\n (async (): Promise<void> => {\n await stableOnGridLoad();\n setLoading(false);\n })();\n }, [stableOnGridLoad]);\n\n return (\n <Flex width=\"100%\" alignItems=\"center\">\n {isLoading ? (\n <ProgressCircle size=\"L\" aria-label=\"Loading...\" isIndeterminate />\n ) : (\n <View width=\"100%\">\n <View gridArea=\"header\">\n <Flex direction=\"row\" width=\"100%\">\n <ActionsBuilder\n buttons={buttons}\n massActions={massActions}\n isMassActionDisabled={ids.length === 0 || isProcessing}\n onMassActionPress={async (key: string) => {\n await onMassActionPress(key, ids);\n setIds([]);\n }}\n />\n {isProcessing && (\n <ProgressCircle\n size=\"M\"\n aria-label=\"Syncing..\"\n isIndeterminate\n marginEnd=\"size-100\"\n />\n )}\n </Flex>\n </View>\n <View gridArea=\"content\">\n <GridBuilder<T>\n columns={columns}\n data={data}\n isMassActionsEnabled={massActions.length > 0}\n gridAction={gridAction}\n gridActions={gridActions}\n onGridActionPress={async (key: string, item: T) => {\n await onGridActionPress(key, item);\n }}\n onSelectionChange={(keys: Selection) => {\n const selectedIds: (string | number)[] = [];\n if (typeof keys === 'string' && keys === 'all') {\n data.forEach(item => {\n selectedIds.push(item.id);\n });\n } else {\n selectedIds.push(...keys);\n }\n setIds(selectedIds);\n }}\n />\n </View>\n </View>\n )}\n </Flex>\n );\n};\n\nexport default DataTable;\n"],"names":["DataTable","_ref","_ref$columns","columns","_ref$data","data","_ref$buttons","buttons","_ref$massActions","massActions","_ref$onMassActionPres","onMassActionPress","Promise","resolve","_ref$gridAction","gridAction","GridAction","ACTION_MENU","_ref$gridActions","gridActions","_ref$onGridActionPres","onGridActionPress","_ref$onGridLoad","onGridLoad","_ref$isProcessing","isProcessing","_useState","useState","_useState2","_slicedToArray","isLoading","setLoading","_useState3","_useState4","ids","setIds","onGridLoadRef","useRef","current","stableOnGridLoad","useCallback","useEffect","_asyncToGenerator","_regenerator","m","_callee","w","_context","n","a","_jsx","Flex","width","alignItems","ProgressCircle","size","isIndeterminate","_jsxs","View","gridArea","children","direction","ActionsBuilder","isMassActionDisabled","length","_onMassActionPress2","_callee2","key","_context2","_x","apply","arguments","marginEnd","GridBuilder","isMassActionsEnabled","_onGridActionPress2","_callee3","item","_context3","_x2","_x3","onSelectionChange","keys","selectedIds","forEach","push","id","_toConsumableArray"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * <license header>
5
+ */
6
+ exports.GridAction = void 0;
7
+ (function (GridAction) {
8
+ GridAction["ACTION_MENU"] = "action-menu";
9
+ GridAction["BUTTONS"] = "buttons";
10
+ GridAction["LINKS"] = "links";
11
+ })(exports.GridAction || (exports.GridAction = {}));
12
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sources":["../../../../../src/components/DataTable/types.ts"],"sourcesContent":["/**\n * <license header>\n */\n\nimport { ReactElement } from 'react';\n\nexport interface DataTableColumn {\n uid: string;\n name: string;\n sortable?: boolean;\n width?: string | number;\n}\n\nexport interface DataTableRow {\n id: string | number;\n [key: string]: any;\n}\n\nexport interface DataTableProps<T extends DataTableRow = DataTableRow> {\n columns?: DataTableColumn[];\n data?: T[];\n buttons?: ReactElement[];\n massActions?: MassActionProps[];\n onMassActionPress?: (key: string, selections: (string | number)[]) => Promise<void>;\n gridAction?: GridAction;\n gridActions?: GridActionProps<T>[];\n onGridActionPress?: (key: string, item: T) => Promise<void>;\n onGridLoad?: () => Promise<void>;\n isProcessing?: boolean;\n}\n\nexport interface MassActionProps {\n key: string;\n text: string;\n}\n\nexport interface GridActionProps<T extends DataTableRow = DataTableRow> {\n key: string;\n text: string;\n isVisible?: (item: T) => Promise<boolean>;\n}\n\nexport enum GridAction {\n ACTION_MENU = 'action-menu',\n BUTTONS = 'buttons',\n LINKS = 'links',\n}\n"],"names":["GridAction"],"mappings":";;AAAA;;AAEG;AAwCSA;AAAZ,CAAA,UAAYA,UAAU,EAAA;AACpBA,EAAAA,UAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC3BA,EAAAA,UAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnBA,EAAAA,UAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACjB,CAAC,EAJWA,kBAAU,KAAVA,kBAAU,GAAA,EAAA,CAAA,CAAA;;"}
@@ -0,0 +1,32 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var reactSpectrum = require('@adobe/react-spectrum');
7
+ var reactRouterDom = require('react-router-dom');
8
+
9
+ var ContentBuilder = function ContentBuilder(_ref) {
10
+ var routes = _ref.routes;
11
+ return jsxRuntime.jsx(reactSpectrum.Content, {
12
+ children: jsxRuntime.jsx(reactRouterDom.Routes, {
13
+ children: routes.reduce(function (acc, route, routeIndex) {
14
+ var routeElements = route.paths.map(function (routePath, pathIndex) {
15
+ // Create a unique key that includes route index, path index, and path hash
16
+ var pathHash = routePath.split('').reduce(function (a, b) {
17
+ a = (a << 5) - a + b.charCodeAt(0);
18
+ return a & a;
19
+ }, 0);
20
+ return jsxRuntime.jsx(reactRouterDom.Route, {
21
+ path: routePath,
22
+ element: route.component
23
+ }, "route-".concat(routeIndex, "-path-").concat(pathIndex, "-").concat(pathHash));
24
+ });
25
+ return acc.concat(routeElements);
26
+ }, [])
27
+ })
28
+ });
29
+ };
30
+
31
+ exports.default = ContentBuilder;
32
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../src/components/MainContainer/ContentBuilder/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\nimport React from 'react';\nimport { Content } from '@adobe/react-spectrum';\nimport { Route, Routes } from 'react-router-dom';\nimport { type ContentBuilderProps } from './types';\n\nconst ContentBuilder: React.FC<ContentBuilderProps> = ({ routes }) => {\n return (\n <Content>\n <Routes>\n {routes.reduce((acc: React.ReactElement[], route, routeIndex: number) => {\n const routeElements = route.paths.map((routePath: string, pathIndex: number) => {\n // Create a unique key that includes route index, path index, and path hash\n const pathHash = routePath.split('').reduce((a: number, b: string) => {\n a = (a << 5) - a + b.charCodeAt(0);\n return a & a;\n }, 0);\n return (\n <Route\n key={`route-${routeIndex}-path-${pathIndex}-${pathHash}`}\n path={routePath}\n element={route.component}\n />\n );\n });\n return acc.concat(routeElements);\n }, [])}\n </Routes>\n </Content>\n );\n};\n\nexport default ContentBuilder;\n"],"names":["ContentBuilder","_ref","routes","_jsx","Content","Routes","reduce","acc","route","routeIndex","routeElements","paths","map","routePath","pathIndex","pathHash","split","a","b","charCodeAt","Route","path","element","component","concat"],"mappings":";;;;;;;;AASA,IAAMA,cAAc,GAAkC,SAAhDA,cAAcA,CAAAC,IAAA,EAAiD;AAAA,EAAA,IAAZC,MAAM,GAAAD,IAAA,CAANC,MAAM;EAC7D,OACEC,cAAA,CAACC,qBAAO;cACND,cAAA,CAACE,qBAAM;gBACJH,MAAM,CAACI,MAAM,CAAC,UAACC,GAAyB,EAAEC,KAAK,EAAEC,UAAkB,EAAI;AACtE,QAAA,IAAMC,aAAa,GAAGF,KAAK,CAACG,KAAK,CAACC,GAAG,CAAC,UAACC,SAAiB,EAAEC,SAAiB,EAAI;AAC7E;AACA,UAAA,IAAMC,QAAQ,GAAGF,SAAS,CAACG,KAAK,CAAC,EAAE,CAAC,CAACV,MAAM,CAAC,UAACW,CAAS,EAAEC,CAAS,EAAI;AACnED,YAAAA,CAAC,GAAG,CAACA,CAAC,IAAI,CAAC,IAAIA,CAAC,GAAGC,CAAC,CAACC,UAAU,CAAC,CAAC,CAAC;YAClC,OAAOF,CAAC,GAAGA,CAAC;UACd,CAAC,EAAE,CAAC,CAAC;UACL,OACEd,eAACiB,oBAAK,EAAA;AAEJC,YAAAA,IAAI,EAAER,SAAS;YACfS,OAAO,EAAEd,KAAK,CAACe;AAAS,WAAA,EAAA,QAAA,CAAAC,MAAA,CAFVf,UAAU,EAAA,QAAA,CAAA,CAAAe,MAAA,CAASV,SAAS,EAAA,GAAA,CAAA,CAAAU,MAAA,CAAIT,QAAQ,CAAE,CAGxD;AAEN,QAAA,CAAC,CAAC;AACF,QAAA,OAAOR,GAAG,CAACiB,MAAM,CAACd,aAAa,CAAC;AAClC,MAAA,CAAC,EAAE,EAAE;KAAC;AACC,GAAA,CACD;AAEd;;;;"}
@@ -0,0 +1,40 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var reactSpectrum = require('@adobe/react-spectrum');
7
+ var index = require('../../../../utils/RouteParams/index.js');
8
+
9
+ var Buttons = function Buttons(_ref) {
10
+ var buttons = _ref.buttons,
11
+ _ref$navigationMargin = _ref.navigationMarginTop,
12
+ navigationMarginTop = _ref$navigationMargin === void 0 ? 'size-0' : _ref$navigationMargin,
13
+ _ref$navigationMargin2 = _ref.navigationMarginBottom,
14
+ navigationMarginBottom = _ref$navigationMargin2 === void 0 ? 'size-0' : _ref$navigationMargin2;
15
+ var _useRouteParams = index.useRouteParams(),
16
+ getNavigate = _useRouteParams.getNavigate;
17
+ var navigate = getNavigate();
18
+ return jsxRuntime.jsx(reactSpectrum.View, {
19
+ children: buttons.length !== 0 ? jsxRuntime.jsx(reactSpectrum.View, {
20
+ marginTop: navigationMarginTop,
21
+ marginBottom: navigationMarginBottom,
22
+ children: buttons.map(function (button, index) {
23
+ var _button$icon;
24
+ return jsxRuntime.jsxs(reactSpectrum.ActionButton, {
25
+ type: "button",
26
+ marginEnd: 'size-150',
27
+ onPress: function onPress() {
28
+ navigate(button.path);
29
+ },
30
+ children: [(_button$icon = button.icon) !== null && _button$icon !== void 0 ? _button$icon : null, jsxRuntime.jsx(reactSpectrum.Text, {
31
+ children: button.label
32
+ })]
33
+ }, "".concat(button.path, "-").concat(index));
34
+ })
35
+ }) : null
36
+ });
37
+ };
38
+
39
+ exports.default = Buttons;
40
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../src/components/MainContainer/NavigationBuilder/Buttons/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\nimport { View, ActionButton, Text } from '@adobe/react-spectrum';\nimport { type ButtonsProps } from './types';\nimport { useRouteParams } from '../../../../utils/RouteParams';\n\nconst Buttons: React.FC<ButtonsProps> = ({\n buttons,\n navigationMarginTop = 'size-0',\n navigationMarginBottom = 'size-0',\n}) => {\n const { getNavigate } = useRouteParams();\n const navigate = getNavigate();\n return (\n <View>\n {buttons.length !== 0 ? (\n <View marginTop={navigationMarginTop} marginBottom={navigationMarginBottom}>\n {buttons.map((button, index) => (\n <ActionButton\n key={`${button.path}-${index}`}\n type=\"button\"\n marginEnd={'size-150'}\n onPress={() => {\n navigate(button.path);\n }}\n >\n {button.icon ?? null}\n <Text>{button.label}</Text>\n </ActionButton>\n ))}\n </View>\n ) : null}\n </View>\n );\n};\n\nexport default Buttons;\n"],"names":["Buttons","_ref","buttons","_ref$navigationMargin","navigationMarginTop","_ref$navigationMargin2","navigationMarginBottom","_useRouteParams","useRouteParams","getNavigate","navigate","_jsx","View","children","length","marginTop","marginBottom","map","button","index","_button$icon","_jsxs","ActionButton","type","marginEnd","onPress","path","icon","Text","label","concat"],"mappings":";;;;;;;;AAQA,IAAMA,OAAO,GAA2B,SAAlCA,OAAOA,CAAAC,IAAA,EAIR;AAAA,EAAA,IAHHC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IAAAC,qBAAA,GAAAF,IAAA,CACPG,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAD,qBAAA,KAAA,MAAA,GAAG,QAAQ,GAAAA,qBAAA;IAAAE,sBAAA,GAAAJ,IAAA,CAC9BK,sBAAsB;AAAtBA,IAAAA,sBAAsB,GAAAD,sBAAA,KAAA,MAAA,GAAG,QAAQ,GAAAA,sBAAA;AAEjC,EAAA,IAAAE,eAAA,GAAwBC,oBAAc,EAAE;IAAhCC,WAAW,GAAAF,eAAA,CAAXE,WAAW;AACnB,EAAA,IAAMC,QAAQ,GAAGD,WAAW,EAAE;EAC9B,OACEE,eAACC,kBAAI,EAAA;IAAAC,QAAA,EACFX,OAAO,CAACY,MAAM,KAAK,CAAC,GACnBH,cAAA,CAACC,kBAAI,EAAA;AAACG,MAAAA,SAAS,EAAEX,mBAAmB;AAAEY,MAAAA,YAAY,EAAEV,sBAAsB;MAAAO,QAAA,EACvEX,OAAO,CAACe,GAAG,CAAC,UAACC,MAAM,EAAEC,KAAK,EAAA;AAAA,QAAA,IAAAC,YAAA;QAAA,OACzBC,eAAA,CAACC,0BAAY;AAEXC,UAAAA,IAAI,EAAC,QAAQ;AACbC,UAAAA,SAAS,EAAE,UAAU;AACrBC,UAAAA,OAAO,EAAE,SAATA,OAAOA,GAAO;AACZf,YAAAA,QAAQ,CAACQ,MAAM,CAACQ,IAAI,CAAC;UACvB,CAAC;AAAAb,UAAAA,QAAA,EAAA,CAAA,CAAAO,YAAA,GAEAF,MAAM,CAACS,IAAI,MAAA,IAAA,IAAAP,YAAA,KAAA,MAAA,GAAAA,YAAA,GAAI,IAAI,EACpBT,cAAA,CAACiB,kBAAI,EAAA;YAAAf,QAAA,EAAEK,MAAM,CAACW;YAAa;SAAA,EAAA,EAAA,CAAAC,MAAA,CARnBZ,MAAM,CAACQ,IAAI,EAAA,GAAA,CAAA,CAAAI,MAAA,CAAIX,KAAK,CAAE,CASjB;MAAA,CAChB;AAAC,KAAA,CACG,GACL;AAAI,GAAA,CACH;AAEX;;;;"}
@@ -0,0 +1,41 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var reactSpectrum = require('@adobe/react-spectrum');
7
+ var reactRouterDom = require('react-router-dom');
8
+
9
+ var Links = function Links(_ref) {
10
+ var buttons = _ref.buttons,
11
+ _ref$navigationMargin = _ref.navigationMarginTop,
12
+ navigationMarginTop = _ref$navigationMargin === void 0 ? 'size-0' : _ref$navigationMargin,
13
+ _ref$navigationMargin2 = _ref.navigationMarginBottom,
14
+ navigationMarginBottom = _ref$navigationMargin2 === void 0 ? 'size-0' : _ref$navigationMargin2;
15
+ return jsxRuntime.jsx(reactSpectrum.View, {
16
+ children: buttons.length !== 0 ? jsxRuntime.jsx(reactSpectrum.View, {
17
+ marginTop: navigationMarginTop,
18
+ marginBottom: navigationMarginBottom,
19
+ children: jsxRuntime.jsx("ul", {
20
+ className: "SideNav",
21
+ children: buttons.map(function (button, index) {
22
+ var _button$icon;
23
+ return jsxRuntime.jsx("li", {
24
+ className: "SideNav-item",
25
+ children: jsxRuntime.jsxs(reactRouterDom.NavLink, {
26
+ className: "SideNav-itemLink",
27
+ "aria-current": "page",
28
+ to: button.path,
29
+ children: [(_button$icon = button.icon) !== null && _button$icon !== void 0 ? _button$icon : null, jsxRuntime.jsx(reactSpectrum.Text, {
30
+ children: button.label
31
+ })]
32
+ })
33
+ }, "".concat(button.path, "-").concat(index));
34
+ })
35
+ })
36
+ }) : null
37
+ });
38
+ };
39
+
40
+ exports.default = Links;
41
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../src/components/MainContainer/NavigationBuilder/Links/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\nimport { View, Text } from '@adobe/react-spectrum';\nimport { NavLink } from 'react-router-dom';\nimport { type LinksProps } from './types';\n\nconst Links: React.FC<LinksProps> = ({\n buttons,\n navigationMarginTop = 'size-0',\n navigationMarginBottom = 'size-0',\n}) => {\n return (\n <View>\n {buttons.length !== 0 ? (\n <View marginTop={navigationMarginTop} marginBottom={navigationMarginBottom}>\n <ul className=\"SideNav\">\n {buttons.map((button, index) => (\n <li key={`${button.path}-${index}`} className=\"SideNav-item\">\n <NavLink className=\"SideNav-itemLink\" aria-current=\"page\" to={button.path}>\n {button.icon ?? null}\n <Text>{button.label}</Text>\n </NavLink>\n </li>\n ))}\n </ul>\n </View>\n ) : null}\n </View>\n );\n};\n\nexport default Links;\n"],"names":["Links","_ref","buttons","_ref$navigationMargin","navigationMarginTop","_ref$navigationMargin2","navigationMarginBottom","_jsx","View","children","length","marginTop","marginBottom","className","map","button","index","_button$icon","_jsxs","NavLink","to","path","icon","Text","label","concat"],"mappings":";;;;;;;;AAQA,IAAMA,KAAK,GAAyB,SAA9BA,KAAKA,CAAAC,IAAA,EAIN;AAAA,EAAA,IAHHC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IAAAC,qBAAA,GAAAF,IAAA,CACPG,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAD,qBAAA,KAAA,MAAA,GAAG,QAAQ,GAAAA,qBAAA;IAAAE,sBAAA,GAAAJ,IAAA,CAC9BK,sBAAsB;AAAtBA,IAAAA,sBAAsB,GAAAD,sBAAA,KAAA,MAAA,GAAG,QAAQ,GAAAA,sBAAA;EAEjC,OACEE,eAACC,kBAAI,EAAA;IAAAC,QAAA,EACFP,OAAO,CAACQ,MAAM,KAAK,CAAC,GACnBH,eAACC,kBAAI,EAAA;AAACG,MAAAA,SAAS,EAAEP,mBAAmB;AAAEQ,MAAAA,YAAY,EAAEN,sBAAsB;AAAAG,MAAAA,QAAA,EACxEF,cAAA,CAAA,IAAA,EAAA;AAAIM,QAAAA,SAAS,EAAC,SAAS;kBACpBX,OAAO,CAACY,GAAG,CAAC,UAACC,MAAM,EAAEC,KAAK,EAAA;AAAA,UAAA,IAAAC,YAAA;UAAA,OACzBV,cAAA,CAAA,IAAA,EAAA;AAAoCM,YAAAA,SAAS,EAAC,cAAc;AAAAJ,YAAAA,QAAA,EAC1DS,eAAA,CAACC,sBAAO,EAAA;AAACN,cAAAA,SAAS,EAAC,kBAAkB;AAAA,cAAA,cAAA,EAAc,MAAM;cAACO,EAAE,EAAEL,MAAM,CAACM,IAAI;AAAAZ,cAAAA,QAAA,EAAA,CAAA,CAAAQ,YAAA,GACtEF,MAAM,CAACO,IAAI,MAAA,IAAA,IAAAL,YAAA,KAAA,MAAA,GAAAA,YAAA,GAAI,IAAI,EACpBV,cAAA,CAACgB,kBAAI,EAAA;gBAAAd,QAAA,EAAEM,MAAM,CAACS;AAAK,eAAA,CAAQ;aAAA;uBAHnBT,MAAM,CAACM,IAAI,EAAA,GAAA,CAAA,CAAAI,MAAA,CAAIT,KAAK,CAAE,CAK7B;QAAA,CACN;OAAC;MAEC,GACL;AAAI,GAAA,CACH;AAEX;;;;"}