@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.
- package/CHANGELOG.md +105 -0
- package/LICENSE +56 -0
- package/README.md +479 -0
- package/dist/cjs/_virtual/_rollupPluginBabelHelpers.js +341 -0
- package/dist/cjs/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
- package/dist/cjs/components/ConfirmationDialog/index.js +68 -0
- package/dist/cjs/components/ConfirmationDialog/index.js.map +1 -0
- package/dist/cjs/components/DataForm/FieldBuilder/index.js +168 -0
- package/dist/cjs/components/DataForm/FieldBuilder/index.js.map +1 -0
- package/dist/cjs/components/DataForm/FormBuilder/index.js +154 -0
- package/dist/cjs/components/DataForm/FormBuilder/index.js.map +1 -0
- package/dist/cjs/components/DataForm/FormBuilder/types.js +15 -0
- package/dist/cjs/components/DataForm/FormBuilder/types.js.map +1 -0
- package/dist/cjs/components/DataForm/index.js +93 -0
- package/dist/cjs/components/DataForm/index.js.map +1 -0
- package/dist/cjs/components/DataTable/ActionsBuilder/index.js +47 -0
- package/dist/cjs/components/DataTable/ActionsBuilder/index.js.map +1 -0
- package/dist/cjs/components/DataTable/GridBuilder/ActionMenuRenderer/index.js +117 -0
- package/dist/cjs/components/DataTable/GridBuilder/ActionMenuRenderer/index.js.map +1 -0
- package/dist/cjs/components/DataTable/GridBuilder/ButtonsRenderer/index.js +114 -0
- package/dist/cjs/components/DataTable/GridBuilder/ButtonsRenderer/index.js.map +1 -0
- package/dist/cjs/components/DataTable/GridBuilder/LinksRenderer/index.js +120 -0
- package/dist/cjs/components/DataTable/GridBuilder/LinksRenderer/index.js.map +1 -0
- package/dist/cjs/components/DataTable/GridBuilder/index.js +114 -0
- package/dist/cjs/components/DataTable/GridBuilder/index.js.map +1 -0
- package/dist/cjs/components/DataTable/index.js +158 -0
- package/dist/cjs/components/DataTable/index.js.map +1 -0
- package/dist/cjs/components/DataTable/types.js +12 -0
- package/dist/cjs/components/DataTable/types.js.map +1 -0
- package/dist/cjs/components/MainContainer/ContentBuilder/index.js +32 -0
- package/dist/cjs/components/MainContainer/ContentBuilder/index.js.map +1 -0
- package/dist/cjs/components/MainContainer/NavigationBuilder/Buttons/index.js +40 -0
- package/dist/cjs/components/MainContainer/NavigationBuilder/Buttons/index.js.map +1 -0
- package/dist/cjs/components/MainContainer/NavigationBuilder/Links/index.js +41 -0
- package/dist/cjs/components/MainContainer/NavigationBuilder/Links/index.js.map +1 -0
- package/dist/cjs/components/MainContainer/NavigationBuilder/index.js +37 -0
- package/dist/cjs/components/MainContainer/NavigationBuilder/index.js.map +1 -0
- package/dist/cjs/components/MainContainer/NavigationBuilder/types.js +11 -0
- package/dist/cjs/components/MainContainer/NavigationBuilder/types.js.map +1 -0
- package/dist/cjs/components/MainContainer/OneColumn/index.js +44 -0
- package/dist/cjs/components/MainContainer/OneColumn/index.js.map +1 -0
- package/dist/cjs/components/MainContainer/TitleBuilder/index.js +22 -0
- package/dist/cjs/components/MainContainer/TitleBuilder/index.js.map +1 -0
- package/dist/cjs/components/MainContainer/TwoColumnLeft/index.js +56 -0
- package/dist/cjs/components/MainContainer/TwoColumnLeft/index.js.map +1 -0
- package/dist/cjs/components/MainContainer/index.js +70 -0
- package/dist/cjs/components/MainContainer/index.js.map +1 -0
- package/dist/cjs/components/MainContainer/types.js +8 -0
- package/dist/cjs/components/MainContainer/types.js.map +1 -0
- package/dist/cjs/index.js +38 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/utils/AdminUiSdk/index.js +159 -0
- package/dist/cjs/utils/AdminUiSdk/index.js.map +1 -0
- package/dist/cjs/utils/RouteParams/index.js +29 -0
- package/dist/cjs/utils/RouteParams/index.js.map +1 -0
- package/dist/esm/_virtual/_rollupPluginBabelHelpers.js +318 -0
- package/dist/esm/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
- package/dist/esm/components/ConfirmationDialog/index.js +64 -0
- package/dist/esm/components/ConfirmationDialog/index.js.map +1 -0
- package/dist/esm/components/DataForm/FieldBuilder/index.js +164 -0
- package/dist/esm/components/DataForm/FieldBuilder/index.js.map +1 -0
- package/dist/esm/components/DataForm/FormBuilder/index.js +150 -0
- package/dist/esm/components/DataForm/FormBuilder/index.js.map +1 -0
- package/dist/esm/components/DataForm/FormBuilder/types.js +15 -0
- package/dist/esm/components/DataForm/FormBuilder/types.js.map +1 -0
- package/dist/esm/components/DataForm/index.js +89 -0
- package/dist/esm/components/DataForm/index.js.map +1 -0
- package/dist/esm/components/DataTable/ActionsBuilder/index.js +43 -0
- package/dist/esm/components/DataTable/ActionsBuilder/index.js.map +1 -0
- package/dist/esm/components/DataTable/GridBuilder/ActionMenuRenderer/index.js +113 -0
- package/dist/esm/components/DataTable/GridBuilder/ActionMenuRenderer/index.js.map +1 -0
- package/dist/esm/components/DataTable/GridBuilder/ButtonsRenderer/index.js +110 -0
- package/dist/esm/components/DataTable/GridBuilder/ButtonsRenderer/index.js.map +1 -0
- package/dist/esm/components/DataTable/GridBuilder/LinksRenderer/index.js +116 -0
- package/dist/esm/components/DataTable/GridBuilder/LinksRenderer/index.js.map +1 -0
- package/dist/esm/components/DataTable/GridBuilder/index.js +110 -0
- package/dist/esm/components/DataTable/GridBuilder/index.js.map +1 -0
- package/dist/esm/components/DataTable/index.js +154 -0
- package/dist/esm/components/DataTable/index.js.map +1 -0
- package/dist/esm/components/DataTable/types.js +12 -0
- package/dist/esm/components/DataTable/types.js.map +1 -0
- package/dist/esm/components/MainContainer/ContentBuilder/index.js +28 -0
- package/dist/esm/components/MainContainer/ContentBuilder/index.js.map +1 -0
- package/dist/esm/components/MainContainer/NavigationBuilder/Buttons/index.js +36 -0
- package/dist/esm/components/MainContainer/NavigationBuilder/Buttons/index.js.map +1 -0
- package/dist/esm/components/MainContainer/NavigationBuilder/Links/index.js +37 -0
- package/dist/esm/components/MainContainer/NavigationBuilder/Links/index.js.map +1 -0
- package/dist/esm/components/MainContainer/NavigationBuilder/index.js +33 -0
- package/dist/esm/components/MainContainer/NavigationBuilder/index.js.map +1 -0
- package/dist/esm/components/MainContainer/NavigationBuilder/types.js +11 -0
- package/dist/esm/components/MainContainer/NavigationBuilder/types.js.map +1 -0
- package/dist/esm/components/MainContainer/OneColumn/index.js +40 -0
- package/dist/esm/components/MainContainer/OneColumn/index.js.map +1 -0
- package/dist/esm/components/MainContainer/TitleBuilder/index.js +18 -0
- package/dist/esm/components/MainContainer/TitleBuilder/index.js.map +1 -0
- package/dist/esm/components/MainContainer/TwoColumnLeft/index.js +52 -0
- package/dist/esm/components/MainContainer/TwoColumnLeft/index.js.map +1 -0
- package/dist/esm/components/MainContainer/index.js +58 -0
- package/dist/esm/components/MainContainer/index.js.map +1 -0
- package/dist/esm/components/MainContainer/types.js +8 -0
- package/dist/esm/components/MainContainer/types.js.map +1 -0
- package/dist/esm/index.js +11 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/types/components/ConfirmationDialog/index.d.ts +12 -0
- package/dist/esm/types/components/ConfirmationDialog/index.d.ts.map +1 -0
- package/dist/esm/types/components/ConfirmationDialog/types.d.ts +47 -0
- package/dist/esm/types/components/ConfirmationDialog/types.d.ts.map +1 -0
- package/dist/esm/types/components/DataForm/FieldBuilder/index.d.ts +8 -0
- package/dist/esm/types/components/DataForm/FieldBuilder/index.d.ts.map +1 -0
- package/dist/esm/types/components/DataForm/FieldBuilder/types.d.ts +11 -0
- package/dist/esm/types/components/DataForm/FieldBuilder/types.d.ts.map +1 -0
- package/dist/esm/types/components/DataForm/FormBuilder/index.d.ts +8 -0
- package/dist/esm/types/components/DataForm/FormBuilder/index.d.ts.map +1 -0
- package/dist/esm/types/components/DataForm/FormBuilder/types.d.ts +51 -0
- package/dist/esm/types/components/DataForm/FormBuilder/types.d.ts.map +1 -0
- package/dist/esm/types/components/DataForm/index.d.ts +8 -0
- package/dist/esm/types/components/DataForm/index.d.ts.map +1 -0
- package/dist/esm/types/components/DataForm/types.d.ts +16 -0
- package/dist/esm/types/components/DataForm/types.d.ts.map +1 -0
- package/dist/esm/types/components/DataTable/ActionsBuilder/index.d.ts +8 -0
- package/dist/esm/types/components/DataTable/ActionsBuilder/index.d.ts.map +1 -0
- package/dist/esm/types/components/DataTable/ActionsBuilder/types.d.ts +12 -0
- package/dist/esm/types/components/DataTable/ActionsBuilder/types.d.ts.map +1 -0
- package/dist/esm/types/components/DataTable/GridBuilder/ActionMenuRenderer/index.d.ts +12 -0
- package/dist/esm/types/components/DataTable/GridBuilder/ActionMenuRenderer/index.d.ts.map +1 -0
- package/dist/esm/types/components/DataTable/GridBuilder/ButtonsRenderer/index.d.ts +12 -0
- package/dist/esm/types/components/DataTable/GridBuilder/ButtonsRenderer/index.d.ts.map +1 -0
- package/dist/esm/types/components/DataTable/GridBuilder/LinksRenderer/index.d.ts +12 -0
- package/dist/esm/types/components/DataTable/GridBuilder/LinksRenderer/index.d.ts.map +1 -0
- package/dist/esm/types/components/DataTable/GridBuilder/index.d.ts +8 -0
- package/dist/esm/types/components/DataTable/GridBuilder/index.d.ts.map +1 -0
- package/dist/esm/types/components/DataTable/GridBuilder/types.d.ts +15 -0
- package/dist/esm/types/components/DataTable/GridBuilder/types.d.ts.map +1 -0
- package/dist/esm/types/components/DataTable/index.d.ts +7 -0
- package/dist/esm/types/components/DataTable/index.d.ts.map +1 -0
- package/dist/esm/types/components/DataTable/types.d.ts +41 -0
- package/dist/esm/types/components/DataTable/types.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/ContentBuilder/index.d.ts +8 -0
- package/dist/esm/types/components/MainContainer/ContentBuilder/index.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/ContentBuilder/types.d.ts +11 -0
- package/dist/esm/types/components/MainContainer/ContentBuilder/types.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/NavigationBuilder/Buttons/index.d.ts +7 -0
- package/dist/esm/types/components/MainContainer/NavigationBuilder/Buttons/index.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/NavigationBuilder/Buttons/types.d.ts +12 -0
- package/dist/esm/types/components/MainContainer/NavigationBuilder/Buttons/types.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/NavigationBuilder/Links/index.d.ts +7 -0
- package/dist/esm/types/components/MainContainer/NavigationBuilder/Links/index.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/NavigationBuilder/Links/types.d.ts +12 -0
- package/dist/esm/types/components/MainContainer/NavigationBuilder/Links/types.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/NavigationBuilder/index.d.ts +7 -0
- package/dist/esm/types/components/MainContainer/NavigationBuilder/index.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/NavigationBuilder/types.d.ts +21 -0
- package/dist/esm/types/components/MainContainer/NavigationBuilder/types.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/OneColumn/index.d.ts +7 -0
- package/dist/esm/types/components/MainContainer/OneColumn/index.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/OneColumn/types.d.ts +18 -0
- package/dist/esm/types/components/MainContainer/OneColumn/types.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/TitleBuilder/index.d.ts +9 -0
- package/dist/esm/types/components/MainContainer/TitleBuilder/index.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/TitleBuilder/types.d.ts +8 -0
- package/dist/esm/types/components/MainContainer/TitleBuilder/types.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/TwoColumnLeft/index.d.ts +7 -0
- package/dist/esm/types/components/MainContainer/TwoColumnLeft/index.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/TwoColumnLeft/types.d.ts +18 -0
- package/dist/esm/types/components/MainContainer/TwoColumnLeft/types.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/index.d.ts +10 -0
- package/dist/esm/types/components/MainContainer/index.d.ts.map +1 -0
- package/dist/esm/types/components/MainContainer/types.d.ts +23 -0
- package/dist/esm/types/components/MainContainer/types.d.ts.map +1 -0
- package/dist/esm/types/components/index.d.ts +19 -0
- package/dist/esm/types/components/index.d.ts.map +1 -0
- package/dist/esm/types/index.d.ts +6 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/esm/types/utils/AdminUiSdk/index.d.ts +60 -0
- package/dist/esm/types/utils/AdminUiSdk/index.d.ts.map +1 -0
- package/dist/esm/types/utils/AdminUiSdk/types.d.ts +63 -0
- package/dist/esm/types/utils/AdminUiSdk/types.d.ts.map +1 -0
- package/dist/esm/types/utils/RouteParams/index.d.ts +14 -0
- package/dist/esm/types/utils/RouteParams/index.d.ts.map +1 -0
- package/dist/esm/types/utils/index.d.ts +7 -0
- package/dist/esm/types/utils/index.d.ts.map +1 -0
- package/dist/esm/utils/AdminUiSdk/index.js +155 -0
- package/dist/esm/utils/AdminUiSdk/index.js.map +1 -0
- package/dist/esm/utils/RouteParams/index.js +24 -0
- package/dist/esm/utils/RouteParams/index.js.map +1 -0
- package/package.json +124 -0
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { slicedToArray as _slicedToArray, asyncToGenerator as _asyncToGenerator, regenerator as _regenerator, createForOfIteratorHelper as _createForOfIteratorHelper } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { Flex, View, Link, Divider } from '@adobe/react-spectrum';
|
|
5
|
+
|
|
6
|
+
var LinksRenderer = function LinksRenderer(_ref) {
|
|
7
|
+
var item = _ref.item,
|
|
8
|
+
gridActions = _ref.gridActions,
|
|
9
|
+
onGridActionPress = _ref.onGridActionPress;
|
|
10
|
+
var _React$useState = React.useState([]),
|
|
11
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
12
|
+
visibleActions = _React$useState2[0],
|
|
13
|
+
setVisibleActions = _React$useState2[1];
|
|
14
|
+
React.useEffect(function () {
|
|
15
|
+
var checkVisibility = /*#__PURE__*/function () {
|
|
16
|
+
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
|
|
17
|
+
var visible, _iterator, _step, action, isVisible, _t, _t2;
|
|
18
|
+
return _regenerator().w(function (_context) {
|
|
19
|
+
while (1) switch (_context.p = _context.n) {
|
|
20
|
+
case 0:
|
|
21
|
+
visible = [];
|
|
22
|
+
_iterator = _createForOfIteratorHelper(gridActions);
|
|
23
|
+
_context.p = 1;
|
|
24
|
+
_iterator.s();
|
|
25
|
+
case 2:
|
|
26
|
+
if ((_step = _iterator.n()).done) {
|
|
27
|
+
_context.n = 9;
|
|
28
|
+
break;
|
|
29
|
+
}
|
|
30
|
+
action = _step.value;
|
|
31
|
+
if (!action.isVisible) {
|
|
32
|
+
_context.n = 7;
|
|
33
|
+
break;
|
|
34
|
+
}
|
|
35
|
+
_context.p = 3;
|
|
36
|
+
_context.n = 4;
|
|
37
|
+
return action.isVisible(item);
|
|
38
|
+
case 4:
|
|
39
|
+
isVisible = _context.v;
|
|
40
|
+
if (isVisible) {
|
|
41
|
+
visible.push(action);
|
|
42
|
+
}
|
|
43
|
+
_context.n = 6;
|
|
44
|
+
break;
|
|
45
|
+
case 5:
|
|
46
|
+
_context.p = 5;
|
|
47
|
+
_t = _context.v;
|
|
48
|
+
// If visibility check fails, skip this action but continue with others
|
|
49
|
+
console.warn("Visibility check failed for action ".concat(action.key, ":"), _t);
|
|
50
|
+
case 6:
|
|
51
|
+
_context.n = 8;
|
|
52
|
+
break;
|
|
53
|
+
case 7:
|
|
54
|
+
visible.push(action);
|
|
55
|
+
case 8:
|
|
56
|
+
_context.n = 2;
|
|
57
|
+
break;
|
|
58
|
+
case 9:
|
|
59
|
+
_context.n = 11;
|
|
60
|
+
break;
|
|
61
|
+
case 10:
|
|
62
|
+
_context.p = 10;
|
|
63
|
+
_t2 = _context.v;
|
|
64
|
+
_iterator.e(_t2);
|
|
65
|
+
case 11:
|
|
66
|
+
_context.p = 11;
|
|
67
|
+
_iterator.f();
|
|
68
|
+
return _context.f(11);
|
|
69
|
+
case 12:
|
|
70
|
+
setVisibleActions(visible);
|
|
71
|
+
case 13:
|
|
72
|
+
return _context.a(2);
|
|
73
|
+
}
|
|
74
|
+
}, _callee, null, [[3, 5], [1, 10, 11, 12]]);
|
|
75
|
+
}));
|
|
76
|
+
return function checkVisibility() {
|
|
77
|
+
return _ref2.apply(this, arguments);
|
|
78
|
+
};
|
|
79
|
+
}();
|
|
80
|
+
checkVisibility();
|
|
81
|
+
}, [gridActions, item]);
|
|
82
|
+
return jsx(Flex, {
|
|
83
|
+
direction: "row-reverse",
|
|
84
|
+
gap: "size-125",
|
|
85
|
+
children: visibleActions.map(function (action, index) {
|
|
86
|
+
return jsxs(View, {
|
|
87
|
+
children: [jsx(Link, {
|
|
88
|
+
onPress: function () {
|
|
89
|
+
var _onPress = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
|
|
90
|
+
return _regenerator().w(function (_context2) {
|
|
91
|
+
while (1) switch (_context2.n) {
|
|
92
|
+
case 0:
|
|
93
|
+
_context2.n = 1;
|
|
94
|
+
return onGridActionPress(action.key, item);
|
|
95
|
+
case 1:
|
|
96
|
+
return _context2.a(2);
|
|
97
|
+
}
|
|
98
|
+
}, _callee2);
|
|
99
|
+
}));
|
|
100
|
+
function onPress() {
|
|
101
|
+
return _onPress.apply(this, arguments);
|
|
102
|
+
}
|
|
103
|
+
return onPress;
|
|
104
|
+
}(),
|
|
105
|
+
children: action.text
|
|
106
|
+
}), index < visibleActions.length - 1 ? jsx(Divider, {
|
|
107
|
+
size: 'M',
|
|
108
|
+
orientation: "vertical"
|
|
109
|
+
}) : '']
|
|
110
|
+
}, action.key);
|
|
111
|
+
})
|
|
112
|
+
});
|
|
113
|
+
};
|
|
114
|
+
|
|
115
|
+
export { LinksRenderer as default };
|
|
116
|
+
//# 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":"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"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { asyncToGenerator as _asyncToGenerator, regenerator as _regenerator } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
3
|
+
import { View, IllustratedMessage, Heading, Content, TableView, TableHeader, Column, TableBody, Row, Cell } from '@adobe/react-spectrum';
|
|
4
|
+
import { GridAction } from '../types.js';
|
|
5
|
+
import LinksRenderer from './LinksRenderer/index.js';
|
|
6
|
+
import ButtonsRenderer from './ButtonsRenderer/index.js';
|
|
7
|
+
import ActionMenuRenderer from './ActionMenuRenderer/index.js';
|
|
8
|
+
|
|
9
|
+
var GridBuilder = function GridBuilder(_ref) {
|
|
10
|
+
var _ref$columns = _ref.columns,
|
|
11
|
+
columns = _ref$columns === void 0 ? [] : _ref$columns,
|
|
12
|
+
_ref$data = _ref.data,
|
|
13
|
+
data = _ref$data === void 0 ? [] : _ref$data,
|
|
14
|
+
_ref$isMassActionsEna = _ref.isMassActionsEnabled,
|
|
15
|
+
isMassActionsEnabled = _ref$isMassActionsEna === void 0 ? false : _ref$isMassActionsEna,
|
|
16
|
+
_ref$gridAction = _ref.gridAction,
|
|
17
|
+
gridAction = _ref$gridAction === void 0 ? GridAction.ACTION_MENU : _ref$gridAction,
|
|
18
|
+
_ref$gridActions = _ref.gridActions,
|
|
19
|
+
gridActions = _ref$gridActions === void 0 ? [] : _ref$gridActions,
|
|
20
|
+
_ref$onGridActionPres = _ref.onGridActionPress,
|
|
21
|
+
onGridActionPress = _ref$onGridActionPres === void 0 ? /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
|
|
22
|
+
return _regenerator().w(function (_context) {
|
|
23
|
+
while (1) switch (_context.n) {
|
|
24
|
+
case 0:
|
|
25
|
+
return _context.a(2);
|
|
26
|
+
}
|
|
27
|
+
}, _callee);
|
|
28
|
+
})) : _ref$onGridActionPres,
|
|
29
|
+
_ref$onSelectionChang = _ref.onSelectionChange,
|
|
30
|
+
onSelectionChange = _ref$onSelectionChang === void 0 ? function () {} : _ref$onSelectionChang;
|
|
31
|
+
var selectionMode = isMassActionsEnabled ? 'multiple' : 'none';
|
|
32
|
+
// Handle empty columns gracefully
|
|
33
|
+
if (columns.length === 0) {
|
|
34
|
+
return jsx(View, {
|
|
35
|
+
width: '100%',
|
|
36
|
+
marginTop: 'size-200',
|
|
37
|
+
children: jsxs(IllustratedMessage, {
|
|
38
|
+
children: [jsx(Heading, {
|
|
39
|
+
children: "No columns configured"
|
|
40
|
+
}), jsx(Content, {
|
|
41
|
+
children: "Please configure columns to display data"
|
|
42
|
+
})]
|
|
43
|
+
})
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
return jsx(View, {
|
|
47
|
+
width: '100%',
|
|
48
|
+
marginTop: 'size-200',
|
|
49
|
+
children: jsxs(TableView, {
|
|
50
|
+
selectionMode: selectionMode,
|
|
51
|
+
onSelectionChange: onSelectionChange,
|
|
52
|
+
minHeight: 'size-6000',
|
|
53
|
+
renderEmptyState: function renderEmptyState() {
|
|
54
|
+
return jsxs(IllustratedMessage, {
|
|
55
|
+
children: [jsx(Heading, {
|
|
56
|
+
children: "No results"
|
|
57
|
+
}), jsx(Content, {
|
|
58
|
+
children: "No results found"
|
|
59
|
+
})]
|
|
60
|
+
});
|
|
61
|
+
},
|
|
62
|
+
children: [jsx(TableHeader, {
|
|
63
|
+
columns: columns,
|
|
64
|
+
children: function children(column) {
|
|
65
|
+
return jsx(Column, {
|
|
66
|
+
align: column.uid === 'actions' ? 'end' : 'start',
|
|
67
|
+
children: column.name
|
|
68
|
+
}, column.uid);
|
|
69
|
+
}
|
|
70
|
+
}), jsx(TableBody, {
|
|
71
|
+
items: data,
|
|
72
|
+
children: function children(item) {
|
|
73
|
+
return jsx(Row, {
|
|
74
|
+
children: function children(columnKey) {
|
|
75
|
+
return columnKey === 'actions' ? jsx(Cell, {
|
|
76
|
+
children: function () {
|
|
77
|
+
switch (gridAction) {
|
|
78
|
+
case GridAction.LINKS:
|
|
79
|
+
return jsx(LinksRenderer, {
|
|
80
|
+
item: item,
|
|
81
|
+
gridActions: gridActions,
|
|
82
|
+
onGridActionPress: onGridActionPress
|
|
83
|
+
});
|
|
84
|
+
case GridAction.BUTTONS:
|
|
85
|
+
return jsx(ButtonsRenderer, {
|
|
86
|
+
item: item,
|
|
87
|
+
gridActions: gridActions,
|
|
88
|
+
onGridActionPress: onGridActionPress
|
|
89
|
+
});
|
|
90
|
+
default:
|
|
91
|
+
return jsx(ActionMenuRenderer, {
|
|
92
|
+
item: item,
|
|
93
|
+
gridActions: gridActions,
|
|
94
|
+
onGridActionPress: onGridActionPress
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
}()
|
|
98
|
+
}) : jsx(Cell, {
|
|
99
|
+
children: item[columnKey]
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
})]
|
|
105
|
+
})
|
|
106
|
+
});
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
export { GridBuilder as default };
|
|
110
|
+
//# 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,154 @@
|
|
|
1
|
+
import { slicedToArray as _slicedToArray, asyncToGenerator as _asyncToGenerator, toConsumableArray as _toConsumableArray, regenerator as _regenerator } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
3
|
+
import { useState, useRef, useCallback, useEffect } from 'react';
|
|
4
|
+
import { Flex, ProgressCircle, View } from '@adobe/react-spectrum';
|
|
5
|
+
import ActionsBuilder from './ActionsBuilder/index.js';
|
|
6
|
+
import GridBuilder from './GridBuilder/index.js';
|
|
7
|
+
import { GridAction } from './types.js';
|
|
8
|
+
|
|
9
|
+
var DataTable = function DataTable(_ref) {
|
|
10
|
+
var _ref$columns = _ref.columns,
|
|
11
|
+
columns = _ref$columns === void 0 ? [] : _ref$columns,
|
|
12
|
+
_ref$data = _ref.data,
|
|
13
|
+
data = _ref$data === void 0 ? [] : _ref$data,
|
|
14
|
+
_ref$buttons = _ref.buttons,
|
|
15
|
+
buttons = _ref$buttons === void 0 ? [] : _ref$buttons,
|
|
16
|
+
_ref$massActions = _ref.massActions,
|
|
17
|
+
massActions = _ref$massActions === void 0 ? [] : _ref$massActions,
|
|
18
|
+
_ref$onMassActionPres = _ref.onMassActionPress,
|
|
19
|
+
_onMassActionPress = _ref$onMassActionPres === void 0 ? function () {
|
|
20
|
+
return Promise.resolve();
|
|
21
|
+
} : _ref$onMassActionPres,
|
|
22
|
+
_ref$gridAction = _ref.gridAction,
|
|
23
|
+
gridAction = _ref$gridAction === void 0 ? GridAction.ACTION_MENU : _ref$gridAction,
|
|
24
|
+
_ref$gridActions = _ref.gridActions,
|
|
25
|
+
gridActions = _ref$gridActions === void 0 ? [] : _ref$gridActions,
|
|
26
|
+
_ref$onGridActionPres = _ref.onGridActionPress,
|
|
27
|
+
_onGridActionPress = _ref$onGridActionPres === void 0 ? function () {
|
|
28
|
+
return Promise.resolve();
|
|
29
|
+
} : _ref$onGridActionPres,
|
|
30
|
+
_ref$onGridLoad = _ref.onGridLoad,
|
|
31
|
+
onGridLoad = _ref$onGridLoad === void 0 ? function () {
|
|
32
|
+
return Promise.resolve();
|
|
33
|
+
} : _ref$onGridLoad,
|
|
34
|
+
_ref$isProcessing = _ref.isProcessing,
|
|
35
|
+
isProcessing = _ref$isProcessing === void 0 ? false : _ref$isProcessing;
|
|
36
|
+
var _useState = useState(true),
|
|
37
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
38
|
+
isLoading = _useState2[0],
|
|
39
|
+
setLoading = _useState2[1];
|
|
40
|
+
var _useState3 = useState([]),
|
|
41
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
42
|
+
ids = _useState4[0],
|
|
43
|
+
setIds = _useState4[1];
|
|
44
|
+
// Stable reference to onGridLoad to prevent infinite loops
|
|
45
|
+
var onGridLoadRef = useRef(onGridLoad);
|
|
46
|
+
onGridLoadRef.current = onGridLoad;
|
|
47
|
+
// Stable callback that won't change on every render
|
|
48
|
+
var stableOnGridLoad = useCallback(function () {
|
|
49
|
+
return onGridLoadRef.current();
|
|
50
|
+
}, []);
|
|
51
|
+
// Initial load effect - runs once on mount
|
|
52
|
+
useEffect(function () {
|
|
53
|
+
_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
|
|
54
|
+
return _regenerator().w(function (_context) {
|
|
55
|
+
while (1) switch (_context.n) {
|
|
56
|
+
case 0:
|
|
57
|
+
_context.n = 1;
|
|
58
|
+
return stableOnGridLoad();
|
|
59
|
+
case 1:
|
|
60
|
+
setLoading(false);
|
|
61
|
+
case 2:
|
|
62
|
+
return _context.a(2);
|
|
63
|
+
}
|
|
64
|
+
}, _callee);
|
|
65
|
+
}))();
|
|
66
|
+
}, [stableOnGridLoad]);
|
|
67
|
+
return jsx(Flex, {
|
|
68
|
+
width: "100%",
|
|
69
|
+
alignItems: "center",
|
|
70
|
+
children: isLoading ? jsx(ProgressCircle, {
|
|
71
|
+
size: "L",
|
|
72
|
+
"aria-label": "Loading...",
|
|
73
|
+
isIndeterminate: true
|
|
74
|
+
}) : jsxs(View, {
|
|
75
|
+
width: "100%",
|
|
76
|
+
children: [jsx(View, {
|
|
77
|
+
gridArea: "header",
|
|
78
|
+
children: jsxs(Flex, {
|
|
79
|
+
direction: "row",
|
|
80
|
+
width: "100%",
|
|
81
|
+
children: [jsx(ActionsBuilder, {
|
|
82
|
+
buttons: buttons,
|
|
83
|
+
massActions: massActions,
|
|
84
|
+
isMassActionDisabled: ids.length === 0 || isProcessing,
|
|
85
|
+
onMassActionPress: function () {
|
|
86
|
+
var _onMassActionPress2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(key) {
|
|
87
|
+
return _regenerator().w(function (_context2) {
|
|
88
|
+
while (1) switch (_context2.n) {
|
|
89
|
+
case 0:
|
|
90
|
+
_context2.n = 1;
|
|
91
|
+
return _onMassActionPress(key, ids);
|
|
92
|
+
case 1:
|
|
93
|
+
setIds([]);
|
|
94
|
+
case 2:
|
|
95
|
+
return _context2.a(2);
|
|
96
|
+
}
|
|
97
|
+
}, _callee2);
|
|
98
|
+
}));
|
|
99
|
+
function onMassActionPress(_x) {
|
|
100
|
+
return _onMassActionPress2.apply(this, arguments);
|
|
101
|
+
}
|
|
102
|
+
return onMassActionPress;
|
|
103
|
+
}()
|
|
104
|
+
}), isProcessing && jsx(ProgressCircle, {
|
|
105
|
+
size: "M",
|
|
106
|
+
"aria-label": "Syncing..",
|
|
107
|
+
isIndeterminate: true,
|
|
108
|
+
marginEnd: "size-100"
|
|
109
|
+
})]
|
|
110
|
+
})
|
|
111
|
+
}), jsx(View, {
|
|
112
|
+
gridArea: "content",
|
|
113
|
+
children: jsx(GridBuilder, {
|
|
114
|
+
columns: columns,
|
|
115
|
+
data: data,
|
|
116
|
+
isMassActionsEnabled: massActions.length > 0,
|
|
117
|
+
gridAction: gridAction,
|
|
118
|
+
gridActions: gridActions,
|
|
119
|
+
onGridActionPress: function () {
|
|
120
|
+
var _onGridActionPress2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(key, item) {
|
|
121
|
+
return _regenerator().w(function (_context3) {
|
|
122
|
+
while (1) switch (_context3.n) {
|
|
123
|
+
case 0:
|
|
124
|
+
_context3.n = 1;
|
|
125
|
+
return _onGridActionPress(key, item);
|
|
126
|
+
case 1:
|
|
127
|
+
return _context3.a(2);
|
|
128
|
+
}
|
|
129
|
+
}, _callee3);
|
|
130
|
+
}));
|
|
131
|
+
function onGridActionPress(_x2, _x3) {
|
|
132
|
+
return _onGridActionPress2.apply(this, arguments);
|
|
133
|
+
}
|
|
134
|
+
return onGridActionPress;
|
|
135
|
+
}(),
|
|
136
|
+
onSelectionChange: function onSelectionChange(keys) {
|
|
137
|
+
var selectedIds = [];
|
|
138
|
+
if (typeof keys === 'string' && keys === 'all') {
|
|
139
|
+
data.forEach(function (item) {
|
|
140
|
+
selectedIds.push(item.id);
|
|
141
|
+
});
|
|
142
|
+
} else {
|
|
143
|
+
selectedIds.push.apply(selectedIds, _toConsumableArray(keys));
|
|
144
|
+
}
|
|
145
|
+
setIds(selectedIds);
|
|
146
|
+
}
|
|
147
|
+
})
|
|
148
|
+
})]
|
|
149
|
+
})
|
|
150
|
+
});
|
|
151
|
+
};
|
|
152
|
+
|
|
153
|
+
export { DataTable as default };
|
|
154
|
+
//# 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
|
+
/**
|
|
2
|
+
* <license header>
|
|
3
|
+
*/
|
|
4
|
+
var GridAction;
|
|
5
|
+
(function (GridAction) {
|
|
6
|
+
GridAction["ACTION_MENU"] = "action-menu";
|
|
7
|
+
GridAction["BUTTONS"] = "buttons";
|
|
8
|
+
GridAction["LINKS"] = "links";
|
|
9
|
+
})(GridAction || (GridAction = {}));
|
|
10
|
+
|
|
11
|
+
export { 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;IAwCSA;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,UAAU,KAAVA,UAAU,GAAA,EAAA,CAAA,CAAA;;;;"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { Content } from '@adobe/react-spectrum';
|
|
3
|
+
import { Routes, Route } from 'react-router-dom';
|
|
4
|
+
|
|
5
|
+
var ContentBuilder = function ContentBuilder(_ref) {
|
|
6
|
+
var routes = _ref.routes;
|
|
7
|
+
return jsx(Content, {
|
|
8
|
+
children: jsx(Routes, {
|
|
9
|
+
children: routes.reduce(function (acc, route, routeIndex) {
|
|
10
|
+
var routeElements = route.paths.map(function (routePath, pathIndex) {
|
|
11
|
+
// Create a unique key that includes route index, path index, and path hash
|
|
12
|
+
var pathHash = routePath.split('').reduce(function (a, b) {
|
|
13
|
+
a = (a << 5) - a + b.charCodeAt(0);
|
|
14
|
+
return a & a;
|
|
15
|
+
}, 0);
|
|
16
|
+
return jsx(Route, {
|
|
17
|
+
path: routePath,
|
|
18
|
+
element: route.component
|
|
19
|
+
}, "route-".concat(routeIndex, "-path-").concat(pathIndex, "-").concat(pathHash));
|
|
20
|
+
});
|
|
21
|
+
return acc.concat(routeElements);
|
|
22
|
+
}, [])
|
|
23
|
+
})
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export { ContentBuilder as default };
|
|
28
|
+
//# 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,GAAA,CAACC,OAAO;cACND,GAAA,CAACE,MAAM;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,IAACiB,KAAK,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,36 @@
|
|
|
1
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
+
import { View, ActionButton, Text } from '@adobe/react-spectrum';
|
|
3
|
+
import { useRouteParams } from '../../../../utils/RouteParams/index.js';
|
|
4
|
+
|
|
5
|
+
var Buttons = function Buttons(_ref) {
|
|
6
|
+
var buttons = _ref.buttons,
|
|
7
|
+
_ref$navigationMargin = _ref.navigationMarginTop,
|
|
8
|
+
navigationMarginTop = _ref$navigationMargin === void 0 ? 'size-0' : _ref$navigationMargin,
|
|
9
|
+
_ref$navigationMargin2 = _ref.navigationMarginBottom,
|
|
10
|
+
navigationMarginBottom = _ref$navigationMargin2 === void 0 ? 'size-0' : _ref$navigationMargin2;
|
|
11
|
+
var _useRouteParams = useRouteParams(),
|
|
12
|
+
getNavigate = _useRouteParams.getNavigate;
|
|
13
|
+
var navigate = getNavigate();
|
|
14
|
+
return jsx(View, {
|
|
15
|
+
children: buttons.length !== 0 ? jsx(View, {
|
|
16
|
+
marginTop: navigationMarginTop,
|
|
17
|
+
marginBottom: navigationMarginBottom,
|
|
18
|
+
children: buttons.map(function (button, index) {
|
|
19
|
+
var _button$icon;
|
|
20
|
+
return jsxs(ActionButton, {
|
|
21
|
+
type: "button",
|
|
22
|
+
marginEnd: 'size-150',
|
|
23
|
+
onPress: function onPress() {
|
|
24
|
+
navigate(button.path);
|
|
25
|
+
},
|
|
26
|
+
children: [(_button$icon = button.icon) !== null && _button$icon !== void 0 ? _button$icon : null, jsx(Text, {
|
|
27
|
+
children: button.label
|
|
28
|
+
})]
|
|
29
|
+
}, "".concat(button.path, "-").concat(index));
|
|
30
|
+
})
|
|
31
|
+
}) : null
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
export { Buttons as default };
|
|
36
|
+
//# 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,cAAc,EAAE;IAAhCC,WAAW,GAAAF,eAAA,CAAXE,WAAW;AACnB,EAAA,IAAMC,QAAQ,GAAGD,WAAW,EAAE;EAC9B,OACEE,IAACC,IAAI,EAAA;IAAAC,QAAA,EACFX,OAAO,CAACY,MAAM,KAAK,CAAC,GACnBH,GAAA,CAACC,IAAI,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,IAAA,CAACC,YAAY;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,GAAA,CAACiB,IAAI,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,37 @@
|
|
|
1
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
+
import { View, Text } from '@adobe/react-spectrum';
|
|
3
|
+
import { NavLink } from 'react-router-dom';
|
|
4
|
+
|
|
5
|
+
var Links = function Links(_ref) {
|
|
6
|
+
var buttons = _ref.buttons,
|
|
7
|
+
_ref$navigationMargin = _ref.navigationMarginTop,
|
|
8
|
+
navigationMarginTop = _ref$navigationMargin === void 0 ? 'size-0' : _ref$navigationMargin,
|
|
9
|
+
_ref$navigationMargin2 = _ref.navigationMarginBottom,
|
|
10
|
+
navigationMarginBottom = _ref$navigationMargin2 === void 0 ? 'size-0' : _ref$navigationMargin2;
|
|
11
|
+
return jsx(View, {
|
|
12
|
+
children: buttons.length !== 0 ? jsx(View, {
|
|
13
|
+
marginTop: navigationMarginTop,
|
|
14
|
+
marginBottom: navigationMarginBottom,
|
|
15
|
+
children: jsx("ul", {
|
|
16
|
+
className: "SideNav",
|
|
17
|
+
children: buttons.map(function (button, index) {
|
|
18
|
+
var _button$icon;
|
|
19
|
+
return jsx("li", {
|
|
20
|
+
className: "SideNav-item",
|
|
21
|
+
children: jsxs(NavLink, {
|
|
22
|
+
className: "SideNav-itemLink",
|
|
23
|
+
"aria-current": "page",
|
|
24
|
+
to: button.path,
|
|
25
|
+
children: [(_button$icon = button.icon) !== null && _button$icon !== void 0 ? _button$icon : null, jsx(Text, {
|
|
26
|
+
children: button.label
|
|
27
|
+
})]
|
|
28
|
+
})
|
|
29
|
+
}, "".concat(button.path, "-").concat(index));
|
|
30
|
+
})
|
|
31
|
+
})
|
|
32
|
+
}) : null
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
export { Links as default };
|
|
37
|
+
//# 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,IAACC,IAAI,EAAA;IAAAC,QAAA,EACFP,OAAO,CAACQ,MAAM,KAAK,CAAC,GACnBH,IAACC,IAAI,EAAA;AAACG,MAAAA,SAAS,EAAEP,mBAAmB;AAAEQ,MAAAA,YAAY,EAAEN,sBAAsB;AAAAG,MAAAA,QAAA,EACxEF,GAAA,CAAA,IAAA,EAAA;AAAIM,QAAAA,SAAS,EAAC,SAAS;kBACpBX,OAAO,CAACY,GAAG,CAAC,UAACC,MAAM,EAAEC,KAAK,EAAA;AAAA,UAAA,IAAAC,YAAA;UAAA,OACzBV,GAAA,CAAA,IAAA,EAAA;AAAoCM,YAAAA,SAAS,EAAC,cAAc;AAAAJ,YAAAA,QAAA,EAC1DS,IAAA,CAACC,OAAO,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,GAAA,CAACgB,IAAI,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;;;;"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { View } from '@adobe/react-spectrum';
|
|
3
|
+
import { NavigationOptions } from './types.js';
|
|
4
|
+
import Links from './Links/index.js';
|
|
5
|
+
import Buttons from './Buttons/index.js';
|
|
6
|
+
|
|
7
|
+
var NavigationBuilder = function NavigationBuilder(_ref) {
|
|
8
|
+
var _ref$type = _ref.type,
|
|
9
|
+
type = _ref$type === void 0 ? NavigationOptions.NavigationLinks : _ref$type,
|
|
10
|
+
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 component = jsx(Links, {
|
|
16
|
+
buttons: buttons,
|
|
17
|
+
navigationMarginTop: navigationMarginTop,
|
|
18
|
+
navigationMarginBottom: navigationMarginBottom
|
|
19
|
+
});
|
|
20
|
+
if (type === NavigationOptions.NavigationButtons) {
|
|
21
|
+
component = jsx(Buttons, {
|
|
22
|
+
buttons: buttons,
|
|
23
|
+
navigationMarginTop: navigationMarginTop,
|
|
24
|
+
navigationMarginBottom: navigationMarginBottom
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
return jsx(View, {
|
|
28
|
+
children: component
|
|
29
|
+
});
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
export { NavigationBuilder as default };
|
|
33
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/components/MainContainer/NavigationBuilder/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\nimport { View } from '@adobe/react-spectrum';\nimport { type NavigationBuilderProps, NavigationOptions } from './types';\nimport Links from './Links';\nimport Buttons from './Buttons';\n\nconst NavigationBuilder: React.FC<NavigationBuilderProps> = ({\n type = NavigationOptions.NavigationLinks,\n buttons,\n navigationMarginTop = 'size-0',\n navigationMarginBottom = 'size-0',\n}) => {\n let component = (\n <Links\n buttons={buttons}\n navigationMarginTop={navigationMarginTop}\n navigationMarginBottom={navigationMarginBottom}\n />\n );\n if (type === NavigationOptions.NavigationButtons) {\n component = (\n <Buttons\n buttons={buttons}\n navigationMarginTop={navigationMarginTop}\n navigationMarginBottom={navigationMarginBottom}\n />\n );\n }\n return <View>{component}</View>;\n};\n\nexport default NavigationBuilder;\n"],"names":["NavigationBuilder","_ref","_ref$type","type","NavigationOptions","NavigationLinks","buttons","_ref$navigationMargin","navigationMarginTop","_ref$navigationMargin2","navigationMarginBottom","component","_jsx","Links","NavigationButtons","Buttons","View","children"],"mappings":";;;;;;AASA,IAAMA,iBAAiB,GAAqC,SAAtDA,iBAAiBA,CAAAC,IAAA,EAKlB;AAAA,EAAA,IAAAC,SAAA,GAAAD,IAAA,CAJHE,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAA,MAAA,GAAGE,iBAAiB,CAACC,eAAe,GAAAH,SAAA;IACxCI,OAAO,GAAAL,IAAA,CAAPK,OAAO;IAAAC,qBAAA,GAAAN,IAAA,CACPO,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAD,qBAAA,KAAA,MAAA,GAAG,QAAQ,GAAAA,qBAAA;IAAAE,sBAAA,GAAAR,IAAA,CAC9BS,sBAAsB;AAAtBA,IAAAA,sBAAsB,GAAAD,sBAAA,KAAA,MAAA,GAAG,QAAQ,GAAAA,sBAAA;AAEjC,EAAA,IAAIE,SAAS,GACXC,IAACC,KAAK,EAAA;AACJP,IAAAA,OAAO,EAAEA,OAAO;AAChBE,IAAAA,mBAAmB,EAAEA,mBAAmB;AACxCE,IAAAA,sBAAsB,EAAEA;AAAsB,GAAA,CAEjD;AACD,EAAA,IAAIP,IAAI,KAAKC,iBAAiB,CAACU,iBAAiB,EAAE;AAChDH,IAAAA,SAAS,GACPC,GAAA,CAACG,OAAO,EAAA;AACNT,MAAAA,OAAO,EAAEA,OAAO;AAChBE,MAAAA,mBAAmB,EAAEA,mBAAmB;AACxCE,MAAAA,sBAAsB,EAAEA;AAAsB,KAAA,CAEjD;AACH,EAAA;EACA,OAAOE,GAAA,CAACI,IAAI,EAAA;AAAAC,IAAAA,QAAA,EAAEN;IAAiB;AACjC;;;;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* <license header>
|
|
3
|
+
*/
|
|
4
|
+
var NavigationOptions;
|
|
5
|
+
(function (NavigationOptions) {
|
|
6
|
+
NavigationOptions["NavigationButtons"] = "Buttons";
|
|
7
|
+
NavigationOptions["NavigationLinks"] = "Links";
|
|
8
|
+
})(NavigationOptions || (NavigationOptions = {}));
|
|
9
|
+
|
|
10
|
+
export { NavigationOptions };
|
|
11
|
+
//# sourceMappingURL=types.js.map
|