@webiny/app-admin 5.41.4 → 5.42.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/base/Admin.js +4 -13
- package/base/Admin.js.map +1 -1
- package/base/providers/TelemetryProvider.d.ts +1 -7
- package/base/providers/TelemetryProvider.js +3 -2
- package/base/providers/TelemetryProvider.js.map +1 -1
- package/base/providers/UiStateProvider.d.ts +1 -7
- package/base/providers/UiStateProvider.js +3 -2
- package/base/providers/UiStateProvider.js.map +1 -1
- package/base/providers/ViewCompositionProvider.js.map +1 -1
- package/base/ui/FileManager.js.map +1 -1
- package/base/ui/Menu.js +4 -4
- package/base/ui/Menu.js.map +1 -1
- package/base/ui/Navigation.d.ts +1 -5
- package/base/ui/Navigation.js +2 -2
- package/base/ui/Navigation.js.map +1 -1
- package/base/ui/Search.d.ts +1 -7
- package/base/ui/Search.js +2 -2
- package/base/ui/Search.js.map +1 -1
- package/base/ui/UserMenu.d.ts +1 -7
- package/base/ui/UserMenu.js +2 -2
- package/base/ui/UserMenu.js.map +1 -1
- package/components/AppInstaller/AppInstaller.js +1 -1
- package/components/AppInstaller/AppInstaller.js.map +1 -1
- package/components/AppInstaller/Sidebar.js +1 -1
- package/components/AppInstaller/Sidebar.js.map +1 -1
- package/components/BulkActions/Worker.js.map +1 -1
- package/components/BulkActions/useDialogWithReport/useDialogWithReport.js.map +1 -1
- package/components/Dialogs/DialogsContext.d.ts +4 -13
- package/components/Dialogs/DialogsContext.js +83 -61
- package/components/Dialogs/DialogsContext.js.map +1 -1
- package/components/IconPicker/IconPicker.d.ts +13 -0
- package/components/IconPicker/IconPicker.js +46 -0
- package/components/IconPicker/IconPicker.js.map +1 -0
- package/components/IconPicker/IconPicker.styles.d.ts +63 -0
- package/components/IconPicker/IconPicker.styles.js +187 -0
- package/components/IconPicker/IconPicker.styles.js.map +1 -0
- package/components/IconPicker/IconPickerComponent.d.ts +16 -0
- package/components/IconPicker/IconPickerComponent.js +101 -0
- package/components/IconPicker/IconPickerComponent.js.map +1 -0
- package/components/IconPicker/IconPickerPresenter.d.ts +52 -0
- package/components/IconPicker/IconPickerPresenter.js +118 -0
- package/components/IconPicker/IconPickerPresenter.js.map +1 -0
- package/components/IconPicker/IconPickerPresenter.test.d.ts +1 -0
- package/components/IconPicker/IconPickerPresenter.test.js +111 -0
- package/components/IconPicker/IconPickerPresenter.test.js.map +1 -0
- package/components/IconPicker/IconPickerPresenterProvider.d.ts +9 -0
- package/components/IconPicker/IconPickerPresenterProvider.js +26 -0
- package/components/IconPicker/IconPickerPresenterProvider.js.map +1 -0
- package/components/IconPicker/IconPickerTab.d.ts +32 -0
- package/components/IconPicker/IconPickerTab.js +169 -0
- package/components/IconPicker/IconPickerTab.js.map +1 -0
- package/components/IconPicker/IconRenderer.d.ts +34 -0
- package/components/IconPicker/IconRenderer.js +35 -0
- package/components/IconPicker/IconRenderer.js.map +1 -0
- package/components/IconPicker/IconRepository.d.ts +19 -0
- package/components/IconPicker/IconRepository.js +79 -0
- package/components/IconPicker/IconRepository.js.map +1 -0
- package/components/IconPicker/IconRepository.test.d.ts +1 -0
- package/components/IconPicker/IconRepository.test.js +68 -0
- package/components/IconPicker/IconRepository.test.js.map +1 -0
- package/components/IconPicker/IconRepositoryFactory.d.ts +9 -0
- package/components/IconPicker/IconRepositoryFactory.js +40 -0
- package/components/IconPicker/IconRepositoryFactory.js.map +1 -0
- package/components/IconPicker/Loading.d.ts +14 -0
- package/components/IconPicker/Loading.js +76 -0
- package/components/IconPicker/Loading.js.map +1 -0
- package/components/IconPicker/config/Emojis.d.ts +2 -0
- package/components/IconPicker/config/Emojis.js +31 -0
- package/components/IconPicker/config/Emojis.js.map +1 -0
- package/components/IconPicker/config/FontAwesomeIcons.d.ts +2 -0
- package/components/IconPicker/config/FontAwesomeIcons.js +74 -0
- package/components/IconPicker/config/FontAwesomeIcons.js.map +1 -0
- package/components/IconPicker/config/IconPackProvider.d.ts +7 -0
- package/components/IconPicker/config/IconPackProvider.js +29 -0
- package/components/IconPicker/config/IconPackProvider.js.map +1 -0
- package/components/IconPicker/config/IconType.d.ts +32 -0
- package/components/IconPicker/config/IconType.js +92 -0
- package/components/IconPicker/config/IconType.js.map +1 -0
- package/components/IconPicker/config/index.d.ts +31 -0
- package/components/IconPicker/config/index.js +63 -0
- package/components/IconPicker/config/index.js.map +1 -0
- package/components/IconPicker/defaultIcon.d.ts +6 -0
- package/components/IconPicker/defaultIcon.js +14 -0
- package/components/IconPicker/defaultIcon.js.map +1 -0
- package/components/IconPicker/index.d.ts +7 -0
- package/components/IconPicker/index.js +49 -0
- package/components/IconPicker/index.js.map +1 -0
- package/components/IconPicker/plugins/customPlugin.d.ts +2 -0
- package/components/IconPicker/plugins/customPlugin.js +157 -0
- package/components/IconPicker/plugins/customPlugin.js.map +1 -0
- package/components/IconPicker/plugins/emojisPlugin.d.ts +2 -0
- package/components/IconPicker/plugins/emojisPlugin.js +164 -0
- package/components/IconPicker/plugins/emojisPlugin.js.map +1 -0
- package/components/IconPicker/plugins/graphql.d.ts +20 -0
- package/components/IconPicker/plugins/graphql.js +18 -0
- package/components/IconPicker/plugins/graphql.js.map +1 -0
- package/components/IconPicker/plugins/iconsPlugin.d.ts +2 -0
- package/components/IconPicker/plugins/iconsPlugin.js +146 -0
- package/components/IconPicker/plugins/iconsPlugin.js.map +1 -0
- package/components/IconPicker/types.d.ts +22 -0
- package/components/IconPicker/types.js +15 -0
- package/components/IconPicker/types.js.map +1 -0
- package/components/MultiImageUpload.js.map +1 -1
- package/components/OverlayLayout/OverlayLayout.js.map +1 -1
- package/components/RichTextEditor/tools/header/index.js.map +1 -1
- package/components/RichTextEditor/tools/image/index.js.map +1 -1
- package/components/RichTextEditor/tools/image/tunes.js.map +1 -1
- package/components/RichTextEditor/tools/image/ui.js.map +1 -1
- package/components/RichTextEditor/tools/paragraph/index.js.map +1 -1
- package/components/RichTextEditor/tools/textColor/index.js.map +1 -1
- package/components/SimpleUI/InputField.js.map +1 -1
- package/components/SingleImageUpload.js.map +1 -1
- package/hooks/useConfirmationDialog.js.map +1 -1
- package/hooks/useDialog.js.map +1 -1
- package/hooks/useIsMounted.js.map +1 -1
- package/hooks/useKeyHandler.js.map +1 -1
- package/hooks/useSnackbar.js.map +1 -1
- package/index.d.ts +1 -0
- package/index.js +12 -0
- package/index.js.map +1 -1
- package/package.json +35 -34
- package/plugins/MenuPlugin.js.map +1 -1
- package/plugins/PermissionRendererPlugin.js.map +1 -1
- package/plugins/globalSearch/SearchBar.js.map +1 -1
- package/plugins/globalSearch/SearchBarDropdown.js.map +1 -1
- package/plugins/globalSearch/index.js.map +1 -1
- package/types.d.ts +1 -0
- package/types.js +7 -0
- package/types.js.map +1 -1
- package/ui/elements/AccordionElement.js +3 -4
- package/ui/elements/AccordionElement.js.map +1 -1
- package/ui/elements/ButtonElement.js.map +1 -1
- package/ui/elements/ButtonGroupElement.js +2 -3
- package/ui/elements/ButtonGroupElement.js.map +1 -1
- package/ui/elements/LabelElement.js.map +1 -1
- package/ui/elements/NavigationMenuElement.js +2 -3
- package/ui/elements/NavigationMenuElement.js.map +1 -1
- package/ui/elements/PlaceholderElement.js.map +1 -1
- package/ui/elements/SmallButtonElement.js.map +1 -1
- package/ui/elements/TypographyElement.js +2 -3
- package/ui/elements/TypographyElement.js.map +1 -1
- package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js +2 -3
- package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js.map +1 -1
- package/ui/elements/form/DynamicFieldsetElement.js.map +1 -1
- package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js.map +1 -1
- package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js.map +1 -1
- package/ui/elements/form/FileManagerElement.js.map +1 -1
- package/ui/elements/form/FormElement.js +3 -4
- package/ui/elements/form/FormElement.js.map +1 -1
- package/ui/elements/form/FormFieldElement.js +3 -3
- package/ui/elements/form/FormFieldElement.js.map +1 -1
- package/ui/elements/form/HiddenElement.js.map +1 -1
- package/ui/elements/form/InputElement.js.map +1 -1
- package/ui/elements/form/PasswordElement.js.map +1 -1
- package/ui/elements/form/SelectElement.js.map +1 -1
- package/ui/elements/form/TextareaElement.js.map +1 -1
- package/ui/views/AdminView/ContentElement.js.map +1 -1
- package/ui/views/AdminView/HeaderElement.js +1 -1
- package/ui/views/AdminView/HeaderElement.js.map +1 -1
- package/ui/views/AdminView/HeaderSectionCenterElement.js +2 -3
- package/ui/views/AdminView/HeaderSectionCenterElement.js.map +1 -1
- package/ui/views/AdminView/HeaderSectionLeftElement.js +2 -3
- package/ui/views/AdminView/HeaderSectionLeftElement.js.map +1 -1
- package/ui/views/AdminView/HeaderSectionRightElement.js +2 -3
- package/ui/views/AdminView/HeaderSectionRightElement.js.map +1 -1
- package/ui/views/FormView/FormContainerElement.js +2 -3
- package/ui/views/FormView/FormContainerElement.js.map +1 -1
- package/ui/views/FormView/FormFooterElement.js +2 -3
- package/ui/views/FormView/FormFooterElement.js.map +1 -1
- package/ui/views/FormView/FormHeaderElement.js +2 -3
- package/ui/views/FormView/FormHeaderElement.js.map +1 -1
- package/ui/views/FormView.js +2 -3
- package/ui/views/FormView.js.map +1 -1
- package/ui/views/OverlayView/ContentElement.js +2 -3
- package/ui/views/OverlayView/ContentElement.js.map +1 -1
- package/ui/views/OverlayView/HeaderElement.js.map +1 -1
- package/ui/views/OverlayView/HeaderTitleElement.js.map +1 -1
- package/ui/views/OverlayView.js +2 -3
- package/ui/views/OverlayView.js.map +1 -1
- package/ui/views/SplitView/SplitViewPanelElement.js +2 -3
- package/ui/views/SplitView/SplitViewPanelElement.js.map +1 -1
- package/ui/views/SplitView.js +2 -3
- package/ui/views/SplitView.js.map +1 -1
package/base/Admin.js
CHANGED
|
@@ -18,6 +18,7 @@ var _Search = require("./ui/Search");
|
|
|
18
18
|
var _UserMenu = require("./ui/UserMenu");
|
|
19
19
|
var _Navigation = require("./ui/Navigation");
|
|
20
20
|
var _DialogsContext = require("../components/Dialogs/DialogsContext");
|
|
21
|
+
var _config = require("../components/IconPicker/config");
|
|
21
22
|
var Admin = exports.Admin = function Admin(_ref) {
|
|
22
23
|
var children = _ref.children,
|
|
23
24
|
createApolloClient = _ref.createApolloClient;
|
|
@@ -29,19 +30,9 @@ var Admin = exports.Admin = function Admin(_ref) {
|
|
|
29
30
|
loader: /*#__PURE__*/_react.default.createElement(_Progress.CircularProgress, {
|
|
30
31
|
label: "Loading..."
|
|
31
32
|
})
|
|
32
|
-
}, /*#__PURE__*/_react.default.createElement(_app.App,
|
|
33
|
-
|
|
34
|
-
}), /*#__PURE__*/_react.default.createElement(
|
|
35
|
-
hoc: UiStateProvider
|
|
36
|
-
}), /*#__PURE__*/_react.default.createElement(_app.Provider, {
|
|
37
|
-
hoc: _Search.SearchProvider
|
|
38
|
-
}), /*#__PURE__*/_react.default.createElement(_app.Provider, {
|
|
39
|
-
hoc: _UserMenu.UserMenuProvider
|
|
40
|
-
}), /*#__PURE__*/_react.default.createElement(_app.Provider, {
|
|
41
|
-
hoc: _Navigation.NavigationProvider
|
|
42
|
-
}), /*#__PURE__*/_react.default.createElement(_app.Provider, {
|
|
43
|
-
hoc: DialogsProvider
|
|
44
|
-
}), /*#__PURE__*/_react.default.createElement(_Base.Base, null), children))));
|
|
33
|
+
}, /*#__PURE__*/_react.default.createElement(_app.App, {
|
|
34
|
+
providers: [TelemetryProvider, UiStateProvider, _Search.SearchProvider, _UserMenu.UserMenuProvider, _Navigation.NavigationProvider, DialogsProvider, _config.IconPickerConfigProvider]
|
|
35
|
+
}, /*#__PURE__*/_react.default.createElement(_Base.Base, null), /*#__PURE__*/_react.default.createElement(_config.DefaultIcons, null), children))));
|
|
45
36
|
};
|
|
46
37
|
|
|
47
38
|
//# sourceMappingURL=Admin.js.map
|
package/base/Admin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_app","_appTheme","_appWcp","_Progress","_ApolloProvider","_Base","_TelemetryProvider","_UiStateProvider","_Search","_UserMenu","_Navigation","_DialogsContext","Admin","exports","_ref","children","createApolloClient","ApolloProvider","createApolloProvider","TelemetryProvider","createTelemetryProvider","UiStateProvider","createUiStateProvider","DialogsProvider","createDialogsProvider","default","createElement","ThemeProvider","WcpProvider","loader","CircularProgress","label","App","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_app","_appTheme","_appWcp","_Progress","_ApolloProvider","_Base","_TelemetryProvider","_UiStateProvider","_Search","_UserMenu","_Navigation","_DialogsContext","_config","Admin","exports","_ref","children","createApolloClient","ApolloProvider","createApolloProvider","TelemetryProvider","createTelemetryProvider","UiStateProvider","createUiStateProvider","DialogsProvider","createDialogsProvider","default","createElement","ThemeProvider","WcpProvider","loader","CircularProgress","label","App","providers","SearchProvider","UserMenuProvider","NavigationProvider","IconPickerConfigProvider","Base","DefaultIcons"],"sources":["Admin.tsx"],"sourcesContent":["import React from \"react\";\nimport { App } from \"@webiny/app\";\nimport { ThemeProvider } from \"@webiny/app-theme\";\nimport { WcpProvider } from \"@webiny/app-wcp\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { ApolloClientFactory, createApolloProvider } from \"./providers/ApolloProvider\";\nimport { Base } from \"./Base\";\nimport { createTelemetryProvider } from \"./providers/TelemetryProvider\";\nimport { createUiStateProvider } from \"./providers/UiStateProvider\";\nimport { SearchProvider } from \"./ui/Search\";\nimport { UserMenuProvider } from \"./ui/UserMenu\";\nimport { NavigationProvider } from \"./ui/Navigation\";\nimport { createDialogsProvider } from \"~/components/Dialogs/DialogsContext\";\nimport { DefaultIcons, IconPickerConfigProvider } from \"~/components/IconPicker/config\";\n\nexport interface AdminProps {\n createApolloClient: ApolloClientFactory;\n children?: React.ReactNode;\n}\n\nexport const Admin = ({ children, createApolloClient }: AdminProps) => {\n const ApolloProvider = createApolloProvider(createApolloClient);\n const TelemetryProvider = createTelemetryProvider();\n const UiStateProvider = createUiStateProvider();\n const DialogsProvider = createDialogsProvider();\n\n return (\n <ApolloProvider>\n <ThemeProvider>\n <WcpProvider loader={<CircularProgress label={\"Loading...\"} />}>\n <App\n providers={[\n TelemetryProvider,\n UiStateProvider,\n SearchProvider,\n UserMenuProvider,\n NavigationProvider,\n DialogsProvider,\n IconPickerConfigProvider\n ]}\n >\n <Base />\n <DefaultIcons />\n {children}\n </App>\n </WcpProvider>\n </ThemeProvider>\n </ApolloProvider>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,eAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,kBAAA,GAAAP,OAAA;AACA,IAAAQ,gBAAA,GAAAR,OAAA;AACA,IAAAS,OAAA,GAAAT,OAAA;AACA,IAAAU,SAAA,GAAAV,OAAA;AACA,IAAAW,WAAA,GAAAX,OAAA;AACA,IAAAY,eAAA,GAAAZ,OAAA;AACA,IAAAa,OAAA,GAAAb,OAAA;AAOO,IAAMc,KAAK,GAAAC,OAAA,CAAAD,KAAA,GAAG,SAARA,KAAKA,CAAAE,IAAA,EAAqD;EAAA,IAA/CC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,kBAAkB,GAAAF,IAAA,CAAlBE,kBAAkB;EAChD,IAAMC,cAAc,GAAG,IAAAC,oCAAoB,EAACF,kBAAkB,CAAC;EAC/D,IAAMG,iBAAiB,GAAG,IAAAC,0CAAuB,EAAC,CAAC;EACnD,IAAMC,eAAe,GAAG,IAAAC,sCAAqB,EAAC,CAAC;EAC/C,IAAMC,eAAe,GAAG,IAAAC,qCAAqB,EAAC,CAAC;EAE/C,oBACI5B,MAAA,CAAA6B,OAAA,CAAAC,aAAA,CAACT,cAAc,qBACXrB,MAAA,CAAA6B,OAAA,CAAAC,aAAA,CAAC1B,SAAA,CAAA2B,aAAa,qBACV/B,MAAA,CAAA6B,OAAA,CAAAC,aAAA,CAACzB,OAAA,CAAA2B,WAAW;IAACC,MAAM,eAAEjC,MAAA,CAAA6B,OAAA,CAAAC,aAAA,CAACxB,SAAA,CAAA4B,gBAAgB;MAACC,KAAK,EAAE;IAAa,CAAE;EAAE,gBAC3DnC,MAAA,CAAA6B,OAAA,CAAAC,aAAA,CAAC3B,IAAA,CAAAiC,GAAG;IACAC,SAAS,EAAE,CACPd,iBAAiB,EACjBE,eAAe,EACfa,sBAAc,EACdC,0BAAgB,EAChBC,8BAAkB,EAClBb,eAAe,EACfc,gCAAwB;EAC1B,gBAEFzC,MAAA,CAAA6B,OAAA,CAAAC,aAAA,CAACtB,KAAA,CAAAkC,IAAI,MAAE,CAAC,eACR1C,MAAA,CAAA6B,OAAA,CAAAC,aAAA,CAACf,OAAA,CAAA4B,YAAY,MAAE,CAAC,EACfxB,QACA,CACI,CACF,CACH,CAAC;AAEzB,CAAC","ignoreList":[]}
|
|
@@ -1,7 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { ComponentWithChildren } from "../../types";
|
|
3
|
-
interface TelemetryProviderProps {
|
|
4
|
-
children: React.ReactNode;
|
|
5
|
-
}
|
|
6
|
-
export declare const createTelemetryProvider: () => (Component: ComponentWithChildren) => ({ children }: TelemetryProviderProps) => React.JSX.Element;
|
|
7
|
-
export {};
|
|
1
|
+
export declare const createTelemetryProvider: () => import("@webiny/app").Decorator<import("@webiny/app").GenericComponent<import("@webiny/app").ChildrenProps>>;
|
|
@@ -7,9 +7,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.createTelemetryProvider = void 0;
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _react2 = require("@webiny/telemetry/react");
|
|
10
|
+
var _app = require("@webiny/app");
|
|
10
11
|
var eventSent = false;
|
|
11
12
|
var createTelemetryProvider = exports.createTelemetryProvider = function createTelemetryProvider() {
|
|
12
|
-
return function (Component) {
|
|
13
|
+
return (0, _app.createProvider)(function (Component) {
|
|
13
14
|
return function TelemetryProvider(_ref) {
|
|
14
15
|
var children = _ref.children;
|
|
15
16
|
(0, _react.useEffect)(function () {
|
|
@@ -21,7 +22,7 @@ var createTelemetryProvider = exports.createTelemetryProvider = function createT
|
|
|
21
22
|
}, []);
|
|
22
23
|
return /*#__PURE__*/_react.default.createElement(Component, null, children);
|
|
23
24
|
};
|
|
24
|
-
};
|
|
25
|
+
});
|
|
25
26
|
};
|
|
26
27
|
|
|
27
28
|
//# sourceMappingURL=TelemetryProvider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_react2","eventSent","createTelemetryProvider","exports","Component","TelemetryProvider","_ref","children","useEffect","sendEvent","default","createElement"],"sources":["TelemetryProvider.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { sendEvent } from \"@webiny/telemetry/react\";\nimport {
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_react2","_app","eventSent","createTelemetryProvider","exports","createProvider","Component","TelemetryProvider","_ref","children","useEffect","sendEvent","default","createElement"],"sources":["TelemetryProvider.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { sendEvent } from \"@webiny/telemetry/react\";\nimport { createProvider } from \"@webiny/app\";\n\nlet eventSent = false;\n\ninterface TelemetryProviderProps {\n children: React.ReactNode;\n}\n\nexport const createTelemetryProvider = () => {\n return createProvider(Component => {\n return function TelemetryProvider({ children }: TelemetryProviderProps) {\n useEffect(() => {\n if (eventSent) {\n return;\n }\n\n eventSent = true;\n\n sendEvent(\"admin-app-start\");\n }, []);\n\n return <Component>{children}</Component>;\n };\n });\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,IAAA,GAAAF,OAAA;AAEA,IAAIG,SAAS,GAAG,KAAK;AAMd,IAAMC,uBAAuB,GAAAC,OAAA,CAAAD,uBAAA,GAAG,SAA1BA,uBAAuBA,CAAA,EAAS;EACzC,OAAO,IAAAE,mBAAc,EAAC,UAAAC,SAAS,EAAI;IAC/B,OAAO,SAASC,iBAAiBA,CAAAC,IAAA,EAAuC;MAAA,IAApCC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;MACxC,IAAAC,gBAAS,EAAC,YAAM;QACZ,IAAIR,SAAS,EAAE;UACX;QACJ;QAEAA,SAAS,GAAG,IAAI;QAEhB,IAAAS,iBAAS,EAAC,iBAAiB,CAAC;MAChC,CAAC,EAAE,EAAE,CAAC;MAEN,oBAAOd,MAAA,CAAAe,OAAA,CAAAC,aAAA,CAACP,SAAS,QAAEG,QAAoB,CAAC;IAC5C,CAAC;EACL,CAAC,CAAC;AACN,CAAC","ignoreList":[]}
|
|
@@ -1,7 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { ComponentWithChildren } from "../../types";
|
|
3
|
-
interface UiStateProviderProps {
|
|
4
|
-
children: React.ReactNode;
|
|
5
|
-
}
|
|
6
|
-
export declare const createUiStateProvider: () => (Component: ComponentWithChildren) => ({ children }: UiStateProviderProps) => React.JSX.Element;
|
|
7
|
-
export {};
|
|
1
|
+
export declare const createUiStateProvider: () => import("@webiny/app").Decorator<import("@webiny/app").GenericComponent<import("@webiny/app").ChildrenProps>>;
|
|
@@ -7,13 +7,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.createUiStateProvider = void 0;
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
var _Ui = require("@webiny/app/contexts/Ui");
|
|
10
|
+
var _app = require("@webiny/app");
|
|
10
11
|
var createUiStateProvider = exports.createUiStateProvider = function createUiStateProvider() {
|
|
11
|
-
return function (Component) {
|
|
12
|
+
return (0, _app.createProvider)(function (Component) {
|
|
12
13
|
return function UiStateProvider(_ref) {
|
|
13
14
|
var children = _ref.children;
|
|
14
15
|
return /*#__PURE__*/_react.default.createElement(_Ui.UiProvider, null, /*#__PURE__*/_react.default.createElement(Component, null, children));
|
|
15
16
|
};
|
|
16
|
-
};
|
|
17
|
+
});
|
|
17
18
|
};
|
|
18
19
|
|
|
19
20
|
//# sourceMappingURL=UiStateProvider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_Ui","createUiStateProvider","exports","Component","UiStateProvider","_ref","children","default","createElement","UiProvider"],"sources":["UiStateProvider.tsx"],"sourcesContent":["import React from \"react\";\nimport { UiProvider } from \"@webiny/app/contexts/Ui\";\nimport {
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_Ui","_app","createUiStateProvider","exports","createProvider","Component","UiStateProvider","_ref","children","default","createElement","UiProvider"],"sources":["UiStateProvider.tsx"],"sourcesContent":["import React from \"react\";\nimport { UiProvider } from \"@webiny/app/contexts/Ui\";\nimport { createProvider } from \"@webiny/app\";\n\ninterface UiStateProviderProps {\n children: React.ReactNode;\n}\n\nexport const createUiStateProvider = () => {\n return createProvider(Component => {\n return function UiStateProvider({ children }: UiStateProviderProps) {\n return (\n <UiProvider>\n <Component>{children}</Component>\n </UiProvider>\n );\n };\n });\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,GAAA,GAAAD,OAAA;AACA,IAAAE,IAAA,GAAAF,OAAA;AAMO,IAAMG,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,GAAG,SAAxBA,qBAAqBA,CAAA,EAAS;EACvC,OAAO,IAAAE,mBAAc,EAAC,UAAAC,SAAS,EAAI;IAC/B,OAAO,SAASC,eAAeA,CAAAC,IAAA,EAAqC;MAAA,IAAlCC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;MACtC,oBACIX,MAAA,CAAAY,OAAA,CAAAC,aAAA,CAACV,GAAA,CAAAW,UAAU,qBACPd,MAAA,CAAAY,OAAA,CAAAC,aAAA,CAACL,SAAS,QAAEG,QAAoB,CACxB,CAAC;IAErB,CAAC;EACL,CAAC,CAAC;AACN,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","ViewCompositionContext","createContext","getViewElement","setViewElement","displayName","ViewCompositionProvider","_ref","children","_useState","useState","_useState2","_slicedToArray2","default","state","setState","context","useMemo","view","name","setter","existing","_objectSpread4","_defineProperty2","createElement","Provider","value","useViewComposition","useContext","createViewCompositionProvider","exports","Component","ViewCompositionProviderHOC","_ref2"],"sources":["ViewCompositionProvider.tsx"],"sourcesContent":["import React, { createContext, useContext, useMemo, useState } from \"react\";\nimport { ComponentWithChildren } from \"~/types\";\n\nexport interface ViewElement {\n name: string;\n elements: JSX.Element[];\n label?: string;\n [key: string]: any;\n}\n\ninterface ElementSetter {\n (element: ViewElement): ViewElement;\n}\n\nexport interface ViewCompositionContext {\n getViewElement(view: string, name: string): ViewElement | null;\n setViewElement(view: string, name: string, setter: ElementSetter): void;\n}\n\nconst ViewCompositionContext = createContext<ViewCompositionContext>({\n getViewElement: () => {\n return null;\n },\n setViewElement: () => {\n return void 0;\n }\n});\nViewCompositionContext.displayName = \"ViewCompositionContext\";\n\ninterface ViewCompositionProviderState {\n [key: string]: Record<string, any>;\n}\ninterface ViewCompositionProviderProps {\n children: React.ReactNode;\n}\nconst ViewCompositionProvider = ({ children }: ViewCompositionProviderProps) => {\n const [state, setState] = useState<ViewCompositionProviderState>({});\n\n const context = useMemo(\n () => ({\n getViewElement(view: string, name: string): ViewElement {\n return state[view] && state[view][name];\n },\n setViewElement(view: string, name: string, setter: ElementSetter) {\n setState(state => {\n const existing = state[view] && state[view][name];\n return {\n ...state,\n [view]: {\n ...state[view],\n [name]: setter(existing)\n }\n };\n });\n }\n }),\n [state]\n );\n\n return (\n <ViewCompositionContext.Provider value={context}>\n {children}\n </ViewCompositionContext.Provider>\n );\n};\n\nexport function useViewComposition() {\n return useContext(ViewCompositionContext);\n}\n\ninterface ViewCompositionProviderHOCProps {\n children: React.ReactNode;\n}\n\nexport const createViewCompositionProvider = () => (Component: ComponentWithChildren) => {\n return function ViewCompositionProviderHOC({ children }: ViewCompositionProviderHOCProps) {\n return (\n <ViewCompositionProvider>\n <Component>{children}</Component>\n </ViewCompositionProvider>\n );\n };\n};\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAmBA,IAAMC,sBAAsB,gBAAG,IAAAC,oBAAa,EAAyB;EACjEC,cAAc,EAAE,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","ViewCompositionContext","createContext","getViewElement","setViewElement","displayName","ViewCompositionProvider","_ref","children","_useState","useState","_useState2","_slicedToArray2","default","state","setState","context","useMemo","view","name","setter","existing","_objectSpread4","_defineProperty2","createElement","Provider","value","useViewComposition","useContext","createViewCompositionProvider","exports","Component","ViewCompositionProviderHOC","_ref2"],"sources":["ViewCompositionProvider.tsx"],"sourcesContent":["import React, { createContext, useContext, useMemo, useState } from \"react\";\nimport { ComponentWithChildren } from \"~/types\";\n\nexport interface ViewElement {\n name: string;\n elements: JSX.Element[];\n label?: string;\n [key: string]: any;\n}\n\ninterface ElementSetter {\n (element: ViewElement): ViewElement;\n}\n\nexport interface ViewCompositionContext {\n getViewElement(view: string, name: string): ViewElement | null;\n setViewElement(view: string, name: string, setter: ElementSetter): void;\n}\n\nconst ViewCompositionContext = createContext<ViewCompositionContext>({\n getViewElement: () => {\n return null;\n },\n setViewElement: () => {\n return void 0;\n }\n});\nViewCompositionContext.displayName = \"ViewCompositionContext\";\n\ninterface ViewCompositionProviderState {\n [key: string]: Record<string, any>;\n}\ninterface ViewCompositionProviderProps {\n children: React.ReactNode;\n}\nconst ViewCompositionProvider = ({ children }: ViewCompositionProviderProps) => {\n const [state, setState] = useState<ViewCompositionProviderState>({});\n\n const context = useMemo(\n () => ({\n getViewElement(view: string, name: string): ViewElement {\n return state[view] && state[view][name];\n },\n setViewElement(view: string, name: string, setter: ElementSetter) {\n setState(state => {\n const existing = state[view] && state[view][name];\n return {\n ...state,\n [view]: {\n ...state[view],\n [name]: setter(existing)\n }\n };\n });\n }\n }),\n [state]\n );\n\n return (\n <ViewCompositionContext.Provider value={context}>\n {children}\n </ViewCompositionContext.Provider>\n );\n};\n\nexport function useViewComposition() {\n return useContext(ViewCompositionContext);\n}\n\ninterface ViewCompositionProviderHOCProps {\n children: React.ReactNode;\n}\n\nexport const createViewCompositionProvider = () => (Component: ComponentWithChildren) => {\n return function ViewCompositionProviderHOC({ children }: ViewCompositionProviderHOCProps) {\n return (\n <ViewCompositionProvider>\n <Component>{children}</Component>\n </ViewCompositionProvider>\n );\n };\n};\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAmBA,IAAMC,sBAAsB,gBAAG,IAAAC,oBAAa,EAAyB;EACjEC,cAAc,EAAE,SAAhBA,cAAcA,CAAA,EAAQ;IAClB,OAAO,IAAI;EACf,CAAC;EACDC,cAAc,EAAE,SAAhBA,cAAcA,CAAA,EAAQ;IAClB,OAAO,KAAK,CAAC;EACjB;AACJ,CAAC,CAAC;AACFH,sBAAsB,CAACI,WAAW,GAAG,wBAAwB;AAQ7D,IAAMC,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAAC,IAAA,EAAmD;EAAA,IAA7CC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;EACvC,IAAAC,SAAA,GAA0B,IAAAC,eAAQ,EAA+B,CAAC,CAAC,CAAC;IAAAC,UAAA,OAAAC,eAAA,CAAAC,OAAA,EAAAJ,SAAA;IAA7DK,KAAK,GAAAH,UAAA;IAAEI,QAAQ,GAAAJ,UAAA;EAEtB,IAAMK,OAAO,GAAG,IAAAC,cAAO,EACnB;IAAA,OAAO;MACHd,cAAc,WAAdA,cAAcA,CAACe,IAAY,EAAEC,IAAY,EAAe;QACpD,OAAOL,KAAK,CAACI,IAAI,CAAC,IAAIJ,KAAK,CAACI,IAAI,CAAC,CAACC,IAAI,CAAC;MAC3C,CAAC;MACDf,cAAc,WAAdA,cAAcA,CAACc,IAAY,EAAEC,IAAY,EAAEC,MAAqB,EAAE;QAC9DL,QAAQ,CAAC,UAAAD,KAAK,EAAI;UACd,IAAMO,QAAQ,GAAGP,KAAK,CAACI,IAAI,CAAC,IAAIJ,KAAK,CAACI,IAAI,CAAC,CAACC,IAAI,CAAC;UACjD,WAAAG,cAAA,CAAAT,OAAA,MAAAS,cAAA,CAAAT,OAAA,MACOC,KAAK,WAAAS,gBAAA,CAAAV,OAAA,MACPK,IAAI,MAAAI,cAAA,CAAAT,OAAA,MAAAS,cAAA,CAAAT,OAAA,MACEC,KAAK,CAACI,IAAI,CAAC,WAAAK,gBAAA,CAAAV,OAAA,MACbM,IAAI,EAAGC,MAAM,CAACC,QAAQ,CAAC;QAGpC,CAAC,CAAC;MACN;IACJ,CAAC;EAAA,CAAC,EACF,CAACP,KAAK,CACV,CAAC;EAED,oBACIhB,MAAA,CAAAe,OAAA,CAAAW,aAAA,CAACvB,sBAAsB,CAACwB,QAAQ;IAACC,KAAK,EAAEV;EAAQ,GAC3CR,QAC4B,CAAC;AAE1C,CAAC;AAEM,SAASmB,kBAAkBA,CAAA,EAAG;EACjC,OAAO,IAAAC,iBAAU,EAAC3B,sBAAsB,CAAC;AAC7C;AAMO,IAAM4B,6BAA6B,GAAAC,OAAA,CAAAD,6BAAA,GAAG,SAAhCA,6BAA6BA,CAAA;EAAA,OAAS,UAACE,SAAgC,EAAK;IACrF,OAAO,SAASC,0BAA0BA,CAAAC,KAAA,EAAgD;MAAA,IAA7CzB,QAAQ,GAAAyB,KAAA,CAARzB,QAAQ;MACjD,oBACIV,MAAA,CAAAe,OAAA,CAAAW,aAAA,CAAClB,uBAAuB,qBACpBR,MAAA,CAAAe,OAAA,CAAAW,aAAA,CAACO,SAAS,QAAEvB,QAAoB,CACX,CAAC;IAElC,CAAC;EACL,CAAC;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactDom","_interopRequireDefault","_reactComposition","_excluded","getPortalTarget","target","window","document","getElementById","createElement","setAttribute","body","appendChild","FileManagerRenderer","exports","makeDecoratable","createVoidComponent","FileManager","_ref","children","render","onChange","rest","_objectWithoutProperties2","default","containerRef","useRef","_useState","useState","show","_useState2","_slicedToArray2","setShow","onChangeRef","useEffect","current","showFileManager","useCallback","Fragment","ReactDOM","createPortal","Object","assign","onClose"],"sources":["FileManager.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { createVoidComponent, makeDecoratable } from \"@webiny/react-composition\";\n\nexport interface FileManagerOnChange<T> {\n (value: T): void;\n}\n\n/**\n * Represents a file object managed by the File Manager.\n */\nexport interface FileManagerFileItem {\n id: string;\n src: string;\n meta?: Array<FileManagerFileItemMetaItem>;\n}\n\n/**\n * With this we allow developers to add any value to file's meta via component composition, thus the `value: any`.\n */\nexport interface FileManagerFileItemMetaItem {\n key: string;\n value: any;\n}\n\nexport type DeprecatedFileManagerRenderPropParams = {\n showFileManager: (\n onChange?: FileManagerOnChange<FileManagerFileItem | FileManagerFileItem[]>\n ) => void;\n};\n\nexport type FileManagerRenderPropParams<TValue> = {\n showFileManager: (onChange?: FileManagerOnChange<TValue>) => void;\n};\n\ninterface SingleFileRenderProp {\n (params: FileManagerRenderPropParams<FileManagerFileItem>): React.ReactNode;\n}\n\ninterface MultiFileRenderProp {\n (params: FileManagerRenderPropParams<FileManagerFileItem[]>): React.ReactNode;\n}\n\nexport type MultipleProps =\n | {\n multiple?: never;\n multipleMaxCount?: never;\n multipleMaxSize?: never;\n onChange?: FileManagerOnChange<FileManagerFileItem>;\n render?: SingleFileRenderProp;\n }\n | {\n multiple: true;\n multipleMaxCount?: number;\n multipleMaxSize?: number | string;\n onChange?: FileManagerOnChange<FileManagerFileItem[]>;\n render?: MultiFileRenderProp;\n };\n\nexport type FileManagerProps = {\n accept?: string[];\n images?: boolean;\n maxSize?: number | string;\n /**\n * @deprecated This prop is no longer used. The file structure was reduced to a bare minimum so picking is no longer necessary.\n */\n onChangePick?: string[];\n onClose?: () => void;\n onUploadCompletion?: (files: FileManagerFileItem[]) => void;\n own?: boolean;\n scope?: string;\n tags?: string[];\n show?: boolean;\n /**\n * @deprecated This prop is no longer used. Use the `render` prop to get better TS autocomplete.\n */\n children?: (params: DeprecatedFileManagerRenderPropParams) => React.ReactNode;\n} & MultipleProps;\n\nfunction getPortalTarget() {\n let target = window.document.getElementById(\"file-manager-container\");\n if (!target) {\n target = document.createElement(\"div\");\n target.setAttribute(\"id\", \"file-manager-container\");\n document.body && document.body.appendChild(target);\n }\n return target;\n}\n\n// This jewel was taken from https://davidgomes.com/pick-omit-over-union-types-in-typescript/. Massive thanks, David!\ntype DistributiveOmit<T, K extends keyof T> = T extends unknown ? Omit<T, K> : never;\n\nexport type FileManagerRendererProps = DistributiveOmit<FileManagerProps, \"render\" | \"children\">;\n\nexport const FileManagerRenderer = makeDecoratable(\n \"FileManagerRenderer\",\n createVoidComponent<FileManagerRendererProps>()\n);\n\ntype ShowFileManagerProps =\n | FileManagerOnChange<FileManagerFileItem>\n | FileManagerOnChange<FileManagerFileItem[]>\n | undefined;\n\nexport const FileManager = ({ children, render, onChange, ...rest }: FileManagerProps) => {\n const containerRef = useRef<HTMLElement>(getPortalTarget());\n const [show, setShow] = useState(rest.show ?? false);\n const onChangeRef = useRef(onChange);\n\n useEffect(() => {\n onChangeRef.current = onChange;\n }, [onChange]);\n\n const showFileManager = useCallback((onChange: ShowFileManagerProps) => {\n if (typeof onChange === \"function\") {\n onChangeRef.current = onChange;\n }\n setShow(true);\n }, []);\n\n return (\n <>\n {show &&\n ReactDOM.createPortal(\n /**\n * TODO @pavel\n */\n // @ts-expect-error\n <FileManagerRenderer\n onClose={() => setShow(false)}\n onChange={onChangeRef.current}\n {...rest}\n />,\n containerRef.current\n )}\n {children ? children({ showFileManager }) : render ? render({ showFileManager }) : null}\n </>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AAAiF,IAAAI,SAAA;AAMjF;AACA;AACA;;AAOA;AACA;AACA;;AA4DA,SAASC,eAAeA,CAAA,EAAG;EACvB,IAAIC,MAAM,GAAGC,MAAM,CAACC,QAAQ,CAACC,cAAc,CAAC,wBAAwB,CAAC;EACrE,IAAI,CAACH,MAAM,EAAE;IACTA,MAAM,GAAGE,QAAQ,CAACE,aAAa,CAAC,KAAK,CAAC;IACtCJ,MAAM,CAACK,YAAY,CAAC,IAAI,EAAE,wBAAwB,CAAC;IACnDH,QAAQ,CAACI,IAAI,IAAIJ,QAAQ,CAACI,IAAI,CAACC,WAAW,CAACP,MAAM,CAAC;EACtD;EACA,OAAOA,MAAM;AACjB;;AAEA;;AAKO,IAAMQ,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,IAAAE,iCAAe,EAC9C,qBAAqB,EACrB,IAAAC,qCAAmB,EAA2B,CAClD,CAAC;AAOM,IAAMC,WAAW,GAAAH,OAAA,CAAAG,WAAA,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAAkE;EAAA,IAA5DC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAEC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IAAKC,IAAI,OAAAC,yBAAA,CAAAC,OAAA,EAAAN,IAAA,EAAAf,SAAA;EAC7D,IAAMsB,YAAY,GAAG,IAAAC,aAAM,EAActB,eAAe,CAAC,CAAC,CAAC;EAC3D,IAAAuB,SAAA,GAAwB,IAAAC,eAAQ,EAACN,IAAI,CAACO,IAAI,IAAI,KAAK,CAAC;IAAAC,UAAA,OAAAC,eAAA,CAAAP,OAAA,EAAAG,SAAA;IAA7CE,IAAI,GAAAC,UAAA;IAAEE,OAAO,GAAAF,UAAA;EACpB,IAAMG,WAAW,GAAG,IAAAP,aAAM,EAACL,QAAQ,CAAC;EAEpC,IAAAa,gBAAS,EAAC,YAAM;IACZD,WAAW,CAACE,OAAO,GAAGd,QAAQ;EAClC,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,IAAMe,eAAe,GAAG,IAAAC,kBAAW,EAAC,UAAChB,QAA8B,EAAK;IACpE,IAAI,OAAOA,QAAQ,KAAK,UAAU,EAAE;MAChCY,WAAW,CAACE,OAAO,GAAGd,QAAQ;IAClC;IACAW,OAAO,CAAC,IAAI,CAAC;EACjB,CAAC,EAAE,EAAE,CAAC;EAEN,oBACInC,MAAA,CAAA2B,OAAA,CAAAf,aAAA,CAAAZ,MAAA,CAAA2B,OAAA,CAAAc,QAAA,QACKT,IAAI,iBACDU,iBAAQ,CAACC,YAAY;EAAA;EACjB;AACpB;AACA;EACoB;EACA3C,MAAA,CAAA2B,OAAA,CAAAf,aAAA,CAACI,mBAAmB,EAAA4B,MAAA,CAAAC,MAAA;IAChBC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactDom","_interopRequireDefault","_reactComposition","_excluded","getPortalTarget","target","window","document","getElementById","createElement","setAttribute","body","appendChild","FileManagerRenderer","exports","makeDecoratable","createVoidComponent","FileManager","_ref","children","render","onChange","rest","_objectWithoutProperties2","default","containerRef","useRef","_useState","useState","show","_useState2","_slicedToArray2","setShow","onChangeRef","useEffect","current","showFileManager","useCallback","Fragment","ReactDOM","createPortal","Object","assign","onClose"],"sources":["FileManager.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { createVoidComponent, makeDecoratable } from \"@webiny/react-composition\";\n\nexport interface FileManagerOnChange<T> {\n (value: T): void;\n}\n\n/**\n * Represents a file object managed by the File Manager.\n */\nexport interface FileManagerFileItem {\n id: string;\n src: string;\n meta?: Array<FileManagerFileItemMetaItem>;\n}\n\n/**\n * With this we allow developers to add any value to file's meta via component composition, thus the `value: any`.\n */\nexport interface FileManagerFileItemMetaItem {\n key: string;\n value: any;\n}\n\nexport type DeprecatedFileManagerRenderPropParams = {\n showFileManager: (\n onChange?: FileManagerOnChange<FileManagerFileItem | FileManagerFileItem[]>\n ) => void;\n};\n\nexport type FileManagerRenderPropParams<TValue> = {\n showFileManager: (onChange?: FileManagerOnChange<TValue>) => void;\n};\n\ninterface SingleFileRenderProp {\n (params: FileManagerRenderPropParams<FileManagerFileItem>): React.ReactNode;\n}\n\ninterface MultiFileRenderProp {\n (params: FileManagerRenderPropParams<FileManagerFileItem[]>): React.ReactNode;\n}\n\nexport type MultipleProps =\n | {\n multiple?: never;\n multipleMaxCount?: never;\n multipleMaxSize?: never;\n onChange?: FileManagerOnChange<FileManagerFileItem>;\n render?: SingleFileRenderProp;\n }\n | {\n multiple: true;\n multipleMaxCount?: number;\n multipleMaxSize?: number | string;\n onChange?: FileManagerOnChange<FileManagerFileItem[]>;\n render?: MultiFileRenderProp;\n };\n\nexport type FileManagerProps = {\n accept?: string[];\n images?: boolean;\n maxSize?: number | string;\n /**\n * @deprecated This prop is no longer used. The file structure was reduced to a bare minimum so picking is no longer necessary.\n */\n onChangePick?: string[];\n onClose?: () => void;\n onUploadCompletion?: (files: FileManagerFileItem[]) => void;\n own?: boolean;\n scope?: string;\n tags?: string[];\n show?: boolean;\n /**\n * @deprecated This prop is no longer used. Use the `render` prop to get better TS autocomplete.\n */\n children?: (params: DeprecatedFileManagerRenderPropParams) => React.ReactNode;\n} & MultipleProps;\n\nfunction getPortalTarget() {\n let target = window.document.getElementById(\"file-manager-container\");\n if (!target) {\n target = document.createElement(\"div\");\n target.setAttribute(\"id\", \"file-manager-container\");\n document.body && document.body.appendChild(target);\n }\n return target;\n}\n\n// This jewel was taken from https://davidgomes.com/pick-omit-over-union-types-in-typescript/. Massive thanks, David!\ntype DistributiveOmit<T, K extends keyof T> = T extends unknown ? Omit<T, K> : never;\n\nexport type FileManagerRendererProps = DistributiveOmit<FileManagerProps, \"render\" | \"children\">;\n\nexport const FileManagerRenderer = makeDecoratable(\n \"FileManagerRenderer\",\n createVoidComponent<FileManagerRendererProps>()\n);\n\ntype ShowFileManagerProps =\n | FileManagerOnChange<FileManagerFileItem>\n | FileManagerOnChange<FileManagerFileItem[]>\n | undefined;\n\nexport const FileManager = ({ children, render, onChange, ...rest }: FileManagerProps) => {\n const containerRef = useRef<HTMLElement>(getPortalTarget());\n const [show, setShow] = useState(rest.show ?? false);\n const onChangeRef = useRef(onChange);\n\n useEffect(() => {\n onChangeRef.current = onChange;\n }, [onChange]);\n\n const showFileManager = useCallback((onChange: ShowFileManagerProps) => {\n if (typeof onChange === \"function\") {\n onChangeRef.current = onChange;\n }\n setShow(true);\n }, []);\n\n return (\n <>\n {show &&\n ReactDOM.createPortal(\n /**\n * TODO @pavel\n */\n // @ts-expect-error\n <FileManagerRenderer\n onClose={() => setShow(false)}\n onChange={onChangeRef.current}\n {...rest}\n />,\n containerRef.current\n )}\n {children ? children({ showFileManager }) : render ? render({ showFileManager }) : null}\n </>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AAAiF,IAAAI,SAAA;AAMjF;AACA;AACA;;AAOA;AACA;AACA;;AA4DA,SAASC,eAAeA,CAAA,EAAG;EACvB,IAAIC,MAAM,GAAGC,MAAM,CAACC,QAAQ,CAACC,cAAc,CAAC,wBAAwB,CAAC;EACrE,IAAI,CAACH,MAAM,EAAE;IACTA,MAAM,GAAGE,QAAQ,CAACE,aAAa,CAAC,KAAK,CAAC;IACtCJ,MAAM,CAACK,YAAY,CAAC,IAAI,EAAE,wBAAwB,CAAC;IACnDH,QAAQ,CAACI,IAAI,IAAIJ,QAAQ,CAACI,IAAI,CAACC,WAAW,CAACP,MAAM,CAAC;EACtD;EACA,OAAOA,MAAM;AACjB;;AAEA;;AAKO,IAAMQ,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,IAAAE,iCAAe,EAC9C,qBAAqB,EACrB,IAAAC,qCAAmB,EAA2B,CAClD,CAAC;AAOM,IAAMC,WAAW,GAAAH,OAAA,CAAAG,WAAA,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAAkE;EAAA,IAA5DC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAEC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IAAKC,IAAI,OAAAC,yBAAA,CAAAC,OAAA,EAAAN,IAAA,EAAAf,SAAA;EAC7D,IAAMsB,YAAY,GAAG,IAAAC,aAAM,EAActB,eAAe,CAAC,CAAC,CAAC;EAC3D,IAAAuB,SAAA,GAAwB,IAAAC,eAAQ,EAACN,IAAI,CAACO,IAAI,IAAI,KAAK,CAAC;IAAAC,UAAA,OAAAC,eAAA,CAAAP,OAAA,EAAAG,SAAA;IAA7CE,IAAI,GAAAC,UAAA;IAAEE,OAAO,GAAAF,UAAA;EACpB,IAAMG,WAAW,GAAG,IAAAP,aAAM,EAACL,QAAQ,CAAC;EAEpC,IAAAa,gBAAS,EAAC,YAAM;IACZD,WAAW,CAACE,OAAO,GAAGd,QAAQ;EAClC,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,IAAMe,eAAe,GAAG,IAAAC,kBAAW,EAAC,UAAChB,QAA8B,EAAK;IACpE,IAAI,OAAOA,QAAQ,KAAK,UAAU,EAAE;MAChCY,WAAW,CAACE,OAAO,GAAGd,QAAQ;IAClC;IACAW,OAAO,CAAC,IAAI,CAAC;EACjB,CAAC,EAAE,EAAE,CAAC;EAEN,oBACInC,MAAA,CAAA2B,OAAA,CAAAf,aAAA,CAAAZ,MAAA,CAAA2B,OAAA,CAAAc,QAAA,QACKT,IAAI,iBACDU,iBAAQ,CAACC,YAAY;EAAA;EACjB;AACpB;AACA;EACoB;EACA3C,MAAA,CAAA2B,OAAA,CAAAf,aAAA,CAACI,mBAAmB,EAAA4B,MAAA,CAAAC,MAAA;IAChBC,OAAO,EAAE,SAATA,OAAOA,CAAA;MAAA,OAAQX,OAAO,CAAC,KAAK,CAAC;IAAA,CAAC;IAC9BX,QAAQ,EAAEY,WAAW,CAACE;EAAQ,GAC1Bb,IAAI,CACX,CAAC,EACFG,YAAY,CAACU,OACjB,CAAC,EACJhB,QAAQ,GAAGA,QAAQ,CAAC;IAAEiB,eAAe,EAAfA;EAAgB,CAAC,CAAC,GAAGhB,MAAM,GAAGA,MAAM,CAAC;IAAEgB,eAAe,EAAfA;EAAgB,CAAC,CAAC,GAAG,IACrF,CAAC;AAEX,CAAC","ignoreList":[]}
|
package/base/ui/Menu.js
CHANGED
|
@@ -26,7 +26,7 @@ var createEmptyMenu = exports.createEmptyMenu = function createEmptyMenu(name) {
|
|
|
26
26
|
};
|
|
27
27
|
};
|
|
28
28
|
var keys = ["label", "path", "icon", "onClick", "testId", "tags", "target", "rel", "element", "pin"];
|
|
29
|
-
var
|
|
29
|
+
var _mergeMenuItems = function mergeMenuItems(item1, item2) {
|
|
30
30
|
return (0, _objectSpread3.default)((0, _objectSpread3.default)((0, _objectSpread3.default)({}, item1), keys.reduce(function (map, key) {
|
|
31
31
|
return (0, _objectSpread3.default)((0, _objectSpread3.default)({}, map), {}, (0, _defineProperty2.default)({}, key, item2[key] ?? item1[key]));
|
|
32
32
|
}, {})), {}, {
|
|
@@ -35,7 +35,7 @@ var mergeMenuItems = function mergeMenuItems(item1, item2) {
|
|
|
35
35
|
return i.name === menu.name;
|
|
36
36
|
});
|
|
37
37
|
if (index > -1) {
|
|
38
|
-
acc[index] =
|
|
38
|
+
acc[index] = _mergeMenuItems(acc[index], menu);
|
|
39
39
|
} else {
|
|
40
40
|
acc.push(menu);
|
|
41
41
|
}
|
|
@@ -60,7 +60,7 @@ var AddMenu = exports.AddMenu = (0, _.makeDecoratable)("AddMenu", function (_ref
|
|
|
60
60
|
children: []
|
|
61
61
|
});
|
|
62
62
|
}
|
|
63
|
-
return
|
|
63
|
+
return _mergeMenuItems(existing, props);
|
|
64
64
|
});
|
|
65
65
|
} else {
|
|
66
66
|
navigation.setMenu(props.name, function (existing) {
|
|
@@ -71,7 +71,7 @@ var AddMenu = exports.AddMenu = (0, _.makeDecoratable)("AddMenu", function (_ref
|
|
|
71
71
|
if (!existing) {
|
|
72
72
|
return props;
|
|
73
73
|
}
|
|
74
|
-
return
|
|
74
|
+
return _mergeMenuItems(existing, props);
|
|
75
75
|
});
|
|
76
76
|
}
|
|
77
77
|
return function () {
|
package/base/ui/Menu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_","_excluded","MenuContext","createContext","undefined","displayName","useMenu","useContext","createEmptyMenu","exports","name","tags","children","keys","mergeMenuItems","item1","item2","_objectSpread3","default","reduce","map","key","_defineProperty2","acc","menu","index","findIndex","i","push","_toConsumableArray2","AddMenu","makeDecoratable","_ref","props","_objectWithoutProperties2","navigation","useNavigation","useEffect","setMenu","existing","removeMenu","context","menuItem","childIndex","ch","concat","slice","updater","subItems","filter","Boolean","createElement","Provider","value"],"sources":["Menu.tsx"],"sourcesContent":["import React, { createContext, useContext, useEffect } from \"react\";\nimport { makeDecoratable, useNavigation } from \"~/index\";\n\nexport interface MenuUpdater {\n (menuItem: MenuData | undefined | null): MenuData | undefined;\n}\n\nexport interface MenuContext {\n menuItem: MenuData | null;\n setMenu(id: string, updater: MenuUpdater): void;\n removeMenu(id: string): void;\n}\n\nconst MenuContext = createContext<MenuContext | undefined>(undefined);\nMenuContext.displayName = \"MenuContext\";\n\nconst useMenu = () => {\n return useContext(MenuContext);\n};\n\nexport interface MenuProps {\n name: string;\n label?: string;\n path?: string;\n icon?: JSX.Element;\n onClick?: () => void;\n testId?: string;\n tags?: string[];\n target?: string;\n rel?: string;\n element?: JSX.Element;\n pin?: \"first\" | \"last\";\n}\n\nexport interface MenuData extends MenuProps {\n children: MenuData[];\n}\n\nexport interface AddMenuProps extends MenuProps {\n children?: React.ReactNode;\n}\n\nexport const createEmptyMenu = (name: string): MenuData => {\n return {\n name,\n tags: [],\n children: []\n };\n};\n\nconst keys: (keyof MenuData)[] = [\n \"label\",\n \"path\",\n \"icon\",\n \"onClick\",\n \"testId\",\n \"tags\",\n \"target\",\n \"rel\",\n \"element\",\n \"pin\"\n];\n\nconst mergeMenuItems = (item1: MenuData, item2: MenuData): MenuData => {\n return {\n ...item1,\n ...keys.reduce((map, key) => ({ ...map, [key]: item2[key] ?? item1[key] }), {}),\n children: (item2.children || []).reduce(\n (acc, menu) => {\n const index = acc.findIndex(i => i.name === menu.name);\n if (index > -1) {\n acc[index] = mergeMenuItems(acc[index], menu);\n } else {\n acc.push(menu);\n }\n return acc;\n },\n [...item1.children]\n )\n };\n};\n\n/**\n * Register a new menu item into the Admin app.\n */\nexport const AddMenu = makeDecoratable(\"AddMenu\", ({ children, ...props }: AddMenuProps) => {\n const menu = useMenu();\n const navigation = useNavigation();\n\n useEffect(() => {\n if (menu) {\n menu.setMenu(props.name, existing => {\n if (!existing) {\n return { ...props, children: [] } as MenuData;\n }\n\n return mergeMenuItems(existing, props as MenuData);\n });\n } else {\n navigation.setMenu(props.name, existing => {\n /**\n * We return props because this will break otherwise.\n * TODO @pavel check if this is correct\n */\n if (!existing) {\n return props as MenuData;\n }\n return mergeMenuItems(existing, props as MenuData);\n });\n }\n\n return () => {\n if (menu) {\n menu.removeMenu(props.name);\n } else {\n navigation.removeMenu(props.name);\n }\n };\n }, []);\n\n const context: MenuContext = {\n menuItem: { ...props, children: [] },\n removeMenu(name) {\n (menu || navigation).setMenu(props.name, existing => {\n if (!existing) {\n return undefined;\n }\n\n const childIndex = existing.children.findIndex(ch => ch.name === name);\n if (childIndex > -1) {\n return {\n ...existing,\n children: [\n ...existing.children.slice(0, childIndex),\n ...existing.children.slice(childIndex + 1)\n ]\n };\n }\n\n return existing;\n });\n },\n setMenu(name: string, updater: MenuUpdater) {\n (menu || navigation).setMenu(props.name, existing => {\n if (!existing) {\n existing = createEmptyMenu(props.name);\n }\n\n const subItems = existing.children;\n\n const childIndex = subItems.findIndex(ch => ch.name === name);\n if (childIndex === -1) {\n return {\n ...existing,\n children: [...subItems, updater(null)].filter(Boolean) as MenuData[]\n };\n }\n\n return {\n ...existing,\n children: [\n ...subItems.slice(0, childIndex),\n updater(subItems[childIndex]),\n ...subItems.slice(childIndex + 1)\n ].filter(Boolean) as MenuData[]\n };\n });\n }\n };\n\n if (!children) {\n return null;\n }\n\n return <MenuContext.Provider value={context}>{children}</MenuContext.Provider>;\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_","_excluded","MenuContext","createContext","undefined","displayName","useMenu","useContext","createEmptyMenu","exports","name","tags","children","keys","mergeMenuItems","item1","item2","_objectSpread3","default","reduce","map","key","_defineProperty2","acc","menu","index","findIndex","i","push","_toConsumableArray2","AddMenu","makeDecoratable","_ref","props","_objectWithoutProperties2","navigation","useNavigation","useEffect","setMenu","existing","removeMenu","context","menuItem","childIndex","ch","concat","slice","updater","subItems","filter","Boolean","createElement","Provider","value"],"sources":["Menu.tsx"],"sourcesContent":["import React, { createContext, useContext, useEffect } from \"react\";\nimport { makeDecoratable, useNavigation } from \"~/index\";\n\nexport interface MenuUpdater {\n (menuItem: MenuData | undefined | null): MenuData | undefined;\n}\n\nexport interface MenuContext {\n menuItem: MenuData | null;\n setMenu(id: string, updater: MenuUpdater): void;\n removeMenu(id: string): void;\n}\n\nconst MenuContext = createContext<MenuContext | undefined>(undefined);\nMenuContext.displayName = \"MenuContext\";\n\nconst useMenu = () => {\n return useContext(MenuContext);\n};\n\nexport interface MenuProps {\n name: string;\n label?: string;\n path?: string;\n icon?: JSX.Element;\n onClick?: () => void;\n testId?: string;\n tags?: string[];\n target?: string;\n rel?: string;\n element?: JSX.Element;\n pin?: \"first\" | \"last\";\n}\n\nexport interface MenuData extends MenuProps {\n children: MenuData[];\n}\n\nexport interface AddMenuProps extends MenuProps {\n children?: React.ReactNode;\n}\n\nexport const createEmptyMenu = (name: string): MenuData => {\n return {\n name,\n tags: [],\n children: []\n };\n};\n\nconst keys: (keyof MenuData)[] = [\n \"label\",\n \"path\",\n \"icon\",\n \"onClick\",\n \"testId\",\n \"tags\",\n \"target\",\n \"rel\",\n \"element\",\n \"pin\"\n];\n\nconst mergeMenuItems = (item1: MenuData, item2: MenuData): MenuData => {\n return {\n ...item1,\n ...keys.reduce((map, key) => ({ ...map, [key]: item2[key] ?? item1[key] }), {}),\n children: (item2.children || []).reduce(\n (acc, menu) => {\n const index = acc.findIndex(i => i.name === menu.name);\n if (index > -1) {\n acc[index] = mergeMenuItems(acc[index], menu);\n } else {\n acc.push(menu);\n }\n return acc;\n },\n [...item1.children]\n )\n };\n};\n\n/**\n * Register a new menu item into the Admin app.\n */\nexport const AddMenu = makeDecoratable(\"AddMenu\", ({ children, ...props }: AddMenuProps) => {\n const menu = useMenu();\n const navigation = useNavigation();\n\n useEffect(() => {\n if (menu) {\n menu.setMenu(props.name, existing => {\n if (!existing) {\n return { ...props, children: [] } as MenuData;\n }\n\n return mergeMenuItems(existing, props as MenuData);\n });\n } else {\n navigation.setMenu(props.name, existing => {\n /**\n * We return props because this will break otherwise.\n * TODO @pavel check if this is correct\n */\n if (!existing) {\n return props as MenuData;\n }\n return mergeMenuItems(existing, props as MenuData);\n });\n }\n\n return () => {\n if (menu) {\n menu.removeMenu(props.name);\n } else {\n navigation.removeMenu(props.name);\n }\n };\n }, []);\n\n const context: MenuContext = {\n menuItem: { ...props, children: [] },\n removeMenu(name) {\n (menu || navigation).setMenu(props.name, existing => {\n if (!existing) {\n return undefined;\n }\n\n const childIndex = existing.children.findIndex(ch => ch.name === name);\n if (childIndex > -1) {\n return {\n ...existing,\n children: [\n ...existing.children.slice(0, childIndex),\n ...existing.children.slice(childIndex + 1)\n ]\n };\n }\n\n return existing;\n });\n },\n setMenu(name: string, updater: MenuUpdater) {\n (menu || navigation).setMenu(props.name, existing => {\n if (!existing) {\n existing = createEmptyMenu(props.name);\n }\n\n const subItems = existing.children;\n\n const childIndex = subItems.findIndex(ch => ch.name === name);\n if (childIndex === -1) {\n return {\n ...existing,\n children: [...subItems, updater(null)].filter(Boolean) as MenuData[]\n };\n }\n\n return {\n ...existing,\n children: [\n ...subItems.slice(0, childIndex),\n updater(subItems[childIndex]),\n ...subItems.slice(childIndex + 1)\n ].filter(Boolean) as MenuData[]\n };\n });\n }\n };\n\n if (!children) {\n return null;\n }\n\n return <MenuContext.Provider value={context}>{children}</MenuContext.Provider>;\n});\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,CAAA,GAAAD,OAAA;AAAyD,IAAAE,SAAA;AAYzD,IAAMC,WAAW,gBAAG,IAAAC,oBAAa,EAA0BC,SAAS,CAAC;AACrEF,WAAW,CAACG,WAAW,GAAG,aAAa;AAEvC,IAAMC,OAAO,GAAG,SAAVA,OAAOA,CAAA,EAAS;EAClB,OAAO,IAAAC,iBAAU,EAACL,WAAW,CAAC;AAClC,CAAC;AAwBM,IAAMM,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG,SAAlBA,eAAeA,CAAIE,IAAY,EAAe;EACvD,OAAO;IACHA,IAAI,EAAJA,IAAI;IACJC,IAAI,EAAE,EAAE;IACRC,QAAQ,EAAE;EACd,CAAC;AACL,CAAC;AAED,IAAMC,IAAwB,GAAG,CAC7B,OAAO,EACP,MAAM,EACN,MAAM,EACN,SAAS,EACT,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,KAAK,EACL,SAAS,EACT,KAAK,CACR;AAED,IAAMC,eAAc,GAAG,SAAjBA,cAAcA,CAAIC,KAAe,EAAEC,KAAe,EAAe;EACnE,WAAAC,cAAA,CAAAC,OAAA,MAAAD,cAAA,CAAAC,OAAA,MAAAD,cAAA,CAAAC,OAAA,MACOH,KAAK,GACLF,IAAI,CAACM,MAAM,CAAC,UAACC,GAAG,EAAEC,GAAG;IAAA,WAAAJ,cAAA,CAAAC,OAAA,MAAAD,cAAA,CAAAC,OAAA,MAAWE,GAAG,WAAAE,gBAAA,CAAAJ,OAAA,MAAGG,GAAG,EAAGL,KAAK,CAACK,GAAG,CAAC,IAAIN,KAAK,CAACM,GAAG,CAAC;EAAA,CAAG,EAAE,CAAC,CAAC,CAAC;IAC/ET,QAAQ,EAAE,CAACI,KAAK,CAACJ,QAAQ,IAAI,EAAE,EAAEO,MAAM,CACnC,UAACI,GAAG,EAAEC,IAAI,EAAK;MACX,IAAMC,KAAK,GAAGF,GAAG,CAACG,SAAS,CAAC,UAAAC,CAAC;QAAA,OAAIA,CAAC,CAACjB,IAAI,KAAKc,IAAI,CAACd,IAAI;MAAA,EAAC;MACtD,IAAIe,KAAK,GAAG,CAAC,CAAC,EAAE;QACZF,GAAG,CAACE,KAAK,CAAC,GAAGX,eAAc,CAACS,GAAG,CAACE,KAAK,CAAC,EAAED,IAAI,CAAC;MACjD,CAAC,MAAM;QACHD,GAAG,CAACK,IAAI,CAACJ,IAAI,CAAC;MAClB;MACA,OAAOD,GAAG;IACd,CAAC,MAAAM,mBAAA,CAAAX,OAAA,EACGH,KAAK,CAACH,QAAQ,CACtB;EAAC;AAET,CAAC;;AAED;AACA;AACA;AACO,IAAMkB,OAAO,GAAArB,OAAA,CAAAqB,OAAA,GAAG,IAAAC,iBAAe,EAAC,SAAS,EAAE,UAAAC,IAAA,EAA0C;EAAA,IAAvCpB,QAAQ,GAAAoB,IAAA,CAARpB,QAAQ;IAAKqB,KAAK,OAAAC,yBAAA,CAAAhB,OAAA,EAAAc,IAAA,EAAA/B,SAAA;EACnE,IAAMuB,IAAI,GAAGlB,OAAO,CAAC,CAAC;EACtB,IAAM6B,UAAU,GAAG,IAAAC,eAAa,EAAC,CAAC;EAElC,IAAAC,gBAAS,EAAC,YAAM;IACZ,IAAIb,IAAI,EAAE;MACNA,IAAI,CAACc,OAAO,CAACL,KAAK,CAACvB,IAAI,EAAE,UAAA6B,QAAQ,EAAI;QACjC,IAAI,CAACA,QAAQ,EAAE;UACX,WAAAtB,cAAA,CAAAC,OAAA,MAAAD,cAAA,CAAAC,OAAA,MAAYe,KAAK;YAAErB,QAAQ,EAAE;UAAE;QACnC;QAEA,OAAOE,eAAc,CAACyB,QAAQ,EAAEN,KAAiB,CAAC;MACtD,CAAC,CAAC;IACN,CAAC,MAAM;MACHE,UAAU,CAACG,OAAO,CAACL,KAAK,CAACvB,IAAI,EAAE,UAAA6B,QAAQ,EAAI;QACvC;AAChB;AACA;AACA;QACgB,IAAI,CAACA,QAAQ,EAAE;UACX,OAAON,KAAK;QAChB;QACA,OAAOnB,eAAc,CAACyB,QAAQ,EAAEN,KAAiB,CAAC;MACtD,CAAC,CAAC;IACN;IAEA,OAAO,YAAM;MACT,IAAIT,IAAI,EAAE;QACNA,IAAI,CAACgB,UAAU,CAACP,KAAK,CAACvB,IAAI,CAAC;MAC/B,CAAC,MAAM;QACHyB,UAAU,CAACK,UAAU,CAACP,KAAK,CAACvB,IAAI,CAAC;MACrC;IACJ,CAAC;EACL,CAAC,EAAE,EAAE,CAAC;EAEN,IAAM+B,OAAoB,GAAG;IACzBC,QAAQ,MAAAzB,cAAA,CAAAC,OAAA,MAAAD,cAAA,CAAAC,OAAA,MAAOe,KAAK;MAAErB,QAAQ,EAAE;IAAE,EAAE;IACpC4B,UAAU,WAAVA,UAAUA,CAAC9B,IAAI,EAAE;MACb,CAACc,IAAI,IAAIW,UAAU,EAAEG,OAAO,CAACL,KAAK,CAACvB,IAAI,EAAE,UAAA6B,QAAQ,EAAI;QACjD,IAAI,CAACA,QAAQ,EAAE;UACX,OAAOnC,SAAS;QACpB;QAEA,IAAMuC,UAAU,GAAGJ,QAAQ,CAAC3B,QAAQ,CAACc,SAAS,CAAC,UAAAkB,EAAE;UAAA,OAAIA,EAAE,CAAClC,IAAI,KAAKA,IAAI;QAAA,EAAC;QACtE,IAAIiC,UAAU,GAAG,CAAC,CAAC,EAAE;UACjB,WAAA1B,cAAA,CAAAC,OAAA,MAAAD,cAAA,CAAAC,OAAA,MACOqB,QAAQ;YACX3B,QAAQ,KAAAiC,MAAA,KAAAhB,mBAAA,CAAAX,OAAA,EACDqB,QAAQ,CAAC3B,QAAQ,CAACkC,KAAK,CAAC,CAAC,EAAEH,UAAU,CAAC,OAAAd,mBAAA,CAAAX,OAAA,EACtCqB,QAAQ,CAAC3B,QAAQ,CAACkC,KAAK,CAACH,UAAU,GAAG,CAAC,CAAC;UAC7C;QAET;QAEA,OAAOJ,QAAQ;MACnB,CAAC,CAAC;IACN,CAAC;IACDD,OAAO,WAAPA,OAAOA,CAAC5B,IAAY,EAAEqC,OAAoB,EAAE;MACxC,CAACvB,IAAI,IAAIW,UAAU,EAAEG,OAAO,CAACL,KAAK,CAACvB,IAAI,EAAE,UAAA6B,QAAQ,EAAI;QACjD,IAAI,CAACA,QAAQ,EAAE;UACXA,QAAQ,GAAG/B,eAAe,CAACyB,KAAK,CAACvB,IAAI,CAAC;QAC1C;QAEA,IAAMsC,QAAQ,GAAGT,QAAQ,CAAC3B,QAAQ;QAElC,IAAM+B,UAAU,GAAGK,QAAQ,CAACtB,SAAS,CAAC,UAAAkB,EAAE;UAAA,OAAIA,EAAE,CAAClC,IAAI,KAAKA,IAAI;QAAA,EAAC;QAC7D,IAAIiC,UAAU,KAAK,CAAC,CAAC,EAAE;UACnB,WAAA1B,cAAA,CAAAC,OAAA,MAAAD,cAAA,CAAAC,OAAA,MACOqB,QAAQ;YACX3B,QAAQ,EAAE,GAAAiC,MAAA,KAAAhB,mBAAA,CAAAX,OAAA,EAAI8B,QAAQ,IAAED,OAAO,CAAC,IAAI,CAAC,GAAEE,MAAM,CAACC,OAAO;UAAe;QAE5E;QAEA,WAAAjC,cAAA,CAAAC,OAAA,MAAAD,cAAA,CAAAC,OAAA,MACOqB,QAAQ;UACX3B,QAAQ,EAAE,GAAAiC,MAAA,KAAAhB,mBAAA,CAAAX,OAAA,EACH8B,QAAQ,CAACF,KAAK,CAAC,CAAC,EAAEH,UAAU,CAAC,IAChCI,OAAO,CAACC,QAAQ,CAACL,UAAU,CAAC,CAAC,OAAAd,mBAAA,CAAAX,OAAA,EAC1B8B,QAAQ,CAACF,KAAK,CAACH,UAAU,GAAG,CAAC,CAAC,GACnCM,MAAM,CAACC,OAAO;QAAe;MAEvC,CAAC,CAAC;IACN;EACJ,CAAC;EAED,IAAI,CAACtC,QAAQ,EAAE;IACX,OAAO,IAAI;EACf;EAEA,oBAAOf,MAAA,CAAAqB,OAAA,CAAAiC,aAAA,CAACjD,WAAW,CAACkD,QAAQ;IAACC,KAAK,EAAEZ;EAAQ,GAAE7B,QAA+B,CAAC;AAClF,CAAC,CAAC","ignoreList":[]}
|
package/base/ui/Navigation.d.ts
CHANGED
|
@@ -1,16 +1,12 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { MenuData, MenuUpdater } from "../../index";
|
|
3
|
-
import { ComponentWithChildren } from "../../types";
|
|
4
3
|
export interface NavigationContext {
|
|
5
4
|
menuItems: MenuData[];
|
|
6
5
|
setMenu(id: string, update: MenuUpdater): void;
|
|
7
6
|
removeMenu(id: string): void;
|
|
8
7
|
}
|
|
9
8
|
export declare function useNavigation(): NavigationContext;
|
|
10
|
-
|
|
11
|
-
children: React.ReactNode;
|
|
12
|
-
}
|
|
13
|
-
export declare const NavigationProvider: (Component: ComponentWithChildren) => ({ children }: NavigationProviderProps) => React.JSX.Element;
|
|
9
|
+
export declare const NavigationProvider: import("@webiny/app").Decorator<import("@webiny/app").GenericComponent<import("@webiny/app").ChildrenProps>>;
|
|
14
10
|
export declare const Navigation: (() => React.JSX.Element) & {
|
|
15
11
|
original: () => React.JSX.Element;
|
|
16
12
|
originalName: string;
|
package/base/ui/Navigation.js
CHANGED
|
@@ -66,7 +66,7 @@ var LegacyMenuPlugins = function LegacyMenuPlugins() {
|
|
|
66
66
|
}, []);
|
|
67
67
|
return menus;
|
|
68
68
|
};
|
|
69
|
-
var NavigationProvider = exports.NavigationProvider = function
|
|
69
|
+
var NavigationProvider = exports.NavigationProvider = (0, _app.createProvider)(function (Component) {
|
|
70
70
|
return function NavigationProvider(_ref) {
|
|
71
71
|
var children = _ref.children;
|
|
72
72
|
var _useState3 = (0, _react.useState)([]),
|
|
@@ -110,7 +110,7 @@ var NavigationProvider = exports.NavigationProvider = function NavigationProvide
|
|
|
110
110
|
value: context
|
|
111
111
|
}, /*#__PURE__*/_react.default.createElement(LegacyMenuPlugins, null), /*#__PURE__*/_react.default.createElement(Component, null, children));
|
|
112
112
|
};
|
|
113
|
-
};
|
|
113
|
+
});
|
|
114
114
|
var Navigation = exports.Navigation = (0, _app.makeDecoratable)("Navigation", function () {
|
|
115
115
|
return /*#__PURE__*/_react.default.createElement(_.Tags, {
|
|
116
116
|
tags: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_utils","_app","_","_plugins","NavigationContext","createContext","menuItems","setMenu","removeMenu","displayName","useNavigation","useContext","LegacyMenu","props","default","createElement","AddMenu","Object","assign","name","generateId","label","children","LegacyMenuPlugins","_useState","useState","_useState2","_slicedToArray2","menus","setMenus","useEffect","menuPlugins","plugins","byType","menuElements","map","plugin","Plugins","key","render","Menu","Item","Section","NavigationProvider","exports","Component","_ref","_useState3","_useState4","setState","id","updater","state","index","findIndex","m","newMenu","createEmptyMenu","_toConsumableArray2","concat","slice","useCallback","context","useMemo","Provider","value","Navigation","makeDecoratable","Tags","tags","location","NavigationRenderer","createVoidComponent","MenuItemContext","React","menuItem","undefined","depth","useMenuItem","MenuItems","_ref2","Fragment","MenuItem","MenuItemRenderer"],"sources":["Navigation.tsx"],"sourcesContent":["import React, {\n createContext,\n Fragment,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useState\n} from \"react\";\nimport { generateId } from \"@webiny/utils\";\nimport { createVoidComponent, makeDecoratable, Plugins } from \"@webiny/app\";\nimport { AddMenu as Menu, createEmptyMenu, MenuData, MenuProps, MenuUpdater, Tags } from \"~/index\";\nimport { plugins } from \"@webiny/plugins\";\nimport { AdminMenuPlugin } from \"~/types\";\nimport { ItemProps, SectionProps } from \"~/plugins/MenuPlugin\";\nimport { ComponentWithChildren } from \"~/types\";\n\nexport interface NavigationContext {\n menuItems: MenuData[];\n setMenu(id: string, update: MenuUpdater): void;\n removeMenu(id: string): void;\n}\n\nconst NavigationContext = createContext<NavigationContext>({\n menuItems: [],\n setMenu: () => {\n return void 0;\n },\n removeMenu: () => {\n return void 0;\n }\n});\nNavigationContext.displayName = \"NavigationContext\";\n\nexport function useNavigation() {\n return useContext(NavigationContext);\n}\n\ntype LegacyMenuProps = MenuProps | SectionProps | ItemProps;\n\n// IMPORTANT! The following component is for BACKWARDS COMPATIBILITY purposes only!\n// It is not a public component, and is not even exported from this file. We need it to take care of\n// scaffolded plugins in users' projects, as well as our own applications (Page Builder and Form Builder).\nconst LegacyMenu = (props: LegacyMenuProps & { children: React.ReactNode }) => {\n return (\n <Menu\n {...props}\n name={(props as MenuProps).name || generateId()}\n label={props.label as string}\n >\n {props.children}\n </Menu>\n );\n};\n\nconst LegacyMenuPlugins = () => {\n // IMPORTANT! The following piece of code is for BACKWARDS COMPATIBILITY purposes only!\n const [menus, setMenus] = useState<JSX.Element | null>(null);\n\n useEffect(() => {\n const menuPlugins = plugins.byType<AdminMenuPlugin>(\"admin-menu\");\n if (!menuPlugins) {\n return;\n }\n\n const menuElements = menuPlugins.map(plugin => {\n // TODO @ts-refactor figure out correct types or write a comment to leave as React.FC\n return (\n <Plugins key={plugin.name}>\n {plugin.render({\n Menu: LegacyMenu as React.FC,\n Item: LegacyMenu as React.FC,\n Section: LegacyMenu as React.FC\n })}\n </Plugins>\n );\n });\n /**\n * TODO Figure out correct types for the menus.\n */\n // @ts-expect-error\n setMenus(menuElements);\n }, []);\n\n return menus;\n};\n\ninterface NavigationProviderProps {\n children: React.ReactNode;\n}\n\nexport const NavigationProvider = (Component: ComponentWithChildren) => {\n return function NavigationProvider({ children }: NavigationProviderProps) {\n const [menuItems, setState] = useState<MenuData[]>([]);\n\n const setMenu = (id: string, updater: MenuUpdater): void => {\n setState(state => {\n const index = state.findIndex(m => m.name === id);\n\n const newMenu = index > -1 ? updater(state[index]) : updater(createEmptyMenu(id));\n if (!newMenu) {\n return [...state];\n }\n if (!newMenu.children) {\n newMenu.children = [];\n }\n\n return index > -1\n ? [...state.slice(0, index), newMenu, ...state.slice(index + 1)]\n : [...state, newMenu];\n });\n };\n const removeMenu = useCallback(\n (id: string) => {\n setState(state => {\n const index = state.findIndex(m => m.name === id);\n\n if (index < 0) {\n return state;\n }\n\n return [...state.slice(0, index), ...state.slice(index + 1)];\n });\n },\n [setState]\n );\n\n const context = useMemo<NavigationContext>(\n () => ({\n menuItems,\n setMenu,\n removeMenu\n }),\n [menuItems, setMenu, removeMenu]\n );\n\n return (\n <NavigationContext.Provider value={context}>\n <LegacyMenuPlugins />\n <Component>{children}</Component>\n </NavigationContext.Provider>\n );\n };\n};\n\nexport const Navigation = makeDecoratable(\"Navigation\", () => {\n return (\n <Tags tags={{ location: \"navigation\" }}>\n <NavigationRenderer />\n </Tags>\n );\n});\n\nexport const NavigationRenderer = makeDecoratable(\"NavigationRenderer\", createVoidComponent());\n\ninterface MenuItemContext {\n menuItem?: MenuData;\n depth: number;\n}\n\nconst MenuItemContext = React.createContext<MenuItemContext>({\n menuItem: undefined,\n depth: -1\n});\nMenuItemContext.displayName = \"MenuItemContext\";\n\nexport function useMenuItem() {\n return React.useContext(MenuItemContext);\n}\n\nexport interface MenuItemsProps {\n menuItems: MenuData[];\n}\n\nexport const MenuItems = makeDecoratable(\"MenuItems\", ({ menuItems }: MenuItemsProps) => {\n const menuItem = useMenuItem();\n\n const depth = menuItem ? menuItem.depth : -1;\n\n return (\n <Fragment>\n {menuItems.map(menuItem => (\n <MenuItemContext.Provider\n key={menuItem.name}\n value={{ menuItem, depth: depth + 1 }}\n >\n <MenuItem />\n </MenuItemContext.Provider>\n ))}\n </Fragment>\n );\n});\n\nexport const MenuItem = () => {\n return <MenuItemRenderer />;\n};\n\nexport const MenuItemRenderer = makeDecoratable(\"MenuItemRenderer\", createVoidComponent());\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_utils","_app","_","_plugins","NavigationContext","createContext","menuItems","setMenu","removeMenu","displayName","useNavigation","useContext","LegacyMenu","props","default","createElement","AddMenu","Object","assign","name","generateId","label","children","LegacyMenuPlugins","_useState","useState","_useState2","_slicedToArray2","menus","setMenus","useEffect","menuPlugins","plugins","byType","menuElements","map","plugin","Plugins","key","render","Menu","Item","Section","NavigationProvider","exports","createProvider","Component","_ref","_useState3","_useState4","setState","id","updater","state","index","findIndex","m","newMenu","createEmptyMenu","_toConsumableArray2","concat","slice","useCallback","context","useMemo","Provider","value","Navigation","makeDecoratable","Tags","tags","location","NavigationRenderer","createVoidComponent","MenuItemContext","React","menuItem","undefined","depth","useMenuItem","MenuItems","_ref2","Fragment","MenuItem","MenuItemRenderer"],"sources":["Navigation.tsx"],"sourcesContent":["import React, {\n createContext,\n Fragment,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useState\n} from \"react\";\nimport { generateId } from \"@webiny/utils\";\nimport { createProvider, createVoidComponent, makeDecoratable, Plugins } from \"@webiny/app\";\nimport { AddMenu as Menu, createEmptyMenu, MenuData, MenuProps, MenuUpdater, Tags } from \"~/index\";\nimport { plugins } from \"@webiny/plugins\";\nimport { AdminMenuPlugin } from \"~/types\";\nimport { ItemProps, SectionProps } from \"~/plugins/MenuPlugin\";\n\nexport interface NavigationContext {\n menuItems: MenuData[];\n setMenu(id: string, update: MenuUpdater): void;\n removeMenu(id: string): void;\n}\n\nconst NavigationContext = createContext<NavigationContext>({\n menuItems: [],\n setMenu: () => {\n return void 0;\n },\n removeMenu: () => {\n return void 0;\n }\n});\nNavigationContext.displayName = \"NavigationContext\";\n\nexport function useNavigation() {\n return useContext(NavigationContext);\n}\n\ntype LegacyMenuProps = MenuProps | SectionProps | ItemProps;\n\n// IMPORTANT! The following component is for BACKWARDS COMPATIBILITY purposes only!\n// It is not a public component, and is not even exported from this file. We need it to take care of\n// scaffolded plugins in users' projects, as well as our own applications (Page Builder and Form Builder).\nconst LegacyMenu = (props: LegacyMenuProps & { children: React.ReactNode }) => {\n return (\n <Menu\n {...props}\n name={(props as MenuProps).name || generateId()}\n label={props.label as string}\n >\n {props.children}\n </Menu>\n );\n};\n\nconst LegacyMenuPlugins = () => {\n // IMPORTANT! The following piece of code is for BACKWARDS COMPATIBILITY purposes only!\n const [menus, setMenus] = useState<JSX.Element | null>(null);\n\n useEffect(() => {\n const menuPlugins = plugins.byType<AdminMenuPlugin>(\"admin-menu\");\n if (!menuPlugins) {\n return;\n }\n\n const menuElements = menuPlugins.map(plugin => {\n // TODO @ts-refactor figure out correct types or write a comment to leave as React.FC\n return (\n <Plugins key={plugin.name}>\n {plugin.render({\n Menu: LegacyMenu as React.FC,\n Item: LegacyMenu as React.FC,\n Section: LegacyMenu as React.FC\n })}\n </Plugins>\n );\n });\n /**\n * TODO Figure out correct types for the menus.\n */\n // @ts-expect-error\n setMenus(menuElements);\n }, []);\n\n return menus;\n};\n\ninterface NavigationProviderProps {\n children: React.ReactNode;\n}\n\nexport const NavigationProvider = createProvider(Component => {\n return function NavigationProvider({ children }: NavigationProviderProps) {\n const [menuItems, setState] = useState<MenuData[]>([]);\n\n const setMenu = (id: string, updater: MenuUpdater): void => {\n setState(state => {\n const index = state.findIndex(m => m.name === id);\n\n const newMenu = index > -1 ? updater(state[index]) : updater(createEmptyMenu(id));\n if (!newMenu) {\n return [...state];\n }\n if (!newMenu.children) {\n newMenu.children = [];\n }\n\n return index > -1\n ? [...state.slice(0, index), newMenu, ...state.slice(index + 1)]\n : [...state, newMenu];\n });\n };\n const removeMenu = useCallback(\n (id: string) => {\n setState(state => {\n const index = state.findIndex(m => m.name === id);\n\n if (index < 0) {\n return state;\n }\n\n return [...state.slice(0, index), ...state.slice(index + 1)];\n });\n },\n [setState]\n );\n\n const context = useMemo<NavigationContext>(\n () => ({\n menuItems,\n setMenu,\n removeMenu\n }),\n [menuItems, setMenu, removeMenu]\n );\n\n return (\n <NavigationContext.Provider value={context}>\n <LegacyMenuPlugins />\n <Component>{children}</Component>\n </NavigationContext.Provider>\n );\n };\n});\n\nexport const Navigation = makeDecoratable(\"Navigation\", () => {\n return (\n <Tags tags={{ location: \"navigation\" }}>\n <NavigationRenderer />\n </Tags>\n );\n});\n\nexport const NavigationRenderer = makeDecoratable(\"NavigationRenderer\", createVoidComponent());\n\ninterface MenuItemContext {\n menuItem?: MenuData;\n depth: number;\n}\n\nconst MenuItemContext = React.createContext<MenuItemContext>({\n menuItem: undefined,\n depth: -1\n});\nMenuItemContext.displayName = \"MenuItemContext\";\n\nexport function useMenuItem() {\n return React.useContext(MenuItemContext);\n}\n\nexport interface MenuItemsProps {\n menuItems: MenuData[];\n}\n\nexport const MenuItems = makeDecoratable(\"MenuItems\", ({ menuItems }: MenuItemsProps) => {\n const menuItem = useMenuItem();\n\n const depth = menuItem ? menuItem.depth : -1;\n\n return (\n <Fragment>\n {menuItems.map(menuItem => (\n <MenuItemContext.Provider\n key={menuItem.name}\n value={{ menuItem, depth: depth + 1 }}\n >\n <MenuItem />\n </MenuItemContext.Provider>\n ))}\n </Fragment>\n );\n});\n\nexport const MenuItem = () => {\n return <MenuItemRenderer />;\n};\n\nexport const MenuItemRenderer = makeDecoratable(\"MenuItemRenderer\", createVoidComponent());\n"],"mappings":"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","ignoreList":[]}
|
package/base/ui/Search.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { ComponentWithChildren } from "../../types";
|
|
3
2
|
export interface SearchOptionData {
|
|
4
3
|
route: string;
|
|
5
4
|
label: string;
|
|
@@ -13,11 +12,7 @@ export interface SearchContext {
|
|
|
13
12
|
addOption(option: SearchOptionData): void;
|
|
14
13
|
}
|
|
15
14
|
export declare function useSearch(): SearchContext;
|
|
16
|
-
|
|
17
|
-
children: React.ReactNode;
|
|
18
|
-
[key: string]: any;
|
|
19
|
-
}
|
|
20
|
-
export declare const SearchProvider: (Component: ComponentWithChildren) => ({ children, ...props }: SearchProviderProps) => React.JSX.Element;
|
|
15
|
+
export declare const SearchProvider: import("@webiny/app").Decorator<import("@webiny/app").GenericComponent<import("@webiny/app").ChildrenProps>>;
|
|
21
16
|
export declare const Search: (() => React.JSX.Element) & {
|
|
22
17
|
original: () => React.JSX.Element;
|
|
23
18
|
originalName: string;
|
|
@@ -58,4 +53,3 @@ export declare const SearchRenderer: ((props: unknown) => JSX.Element | null) &
|
|
|
58
53
|
};
|
|
59
54
|
export type SearchOptionProps = SearchOptionData;
|
|
60
55
|
export declare const SearchOption: (props: SearchOptionProps) => null;
|
|
61
|
-
export {};
|
package/base/ui/Search.js
CHANGED
|
@@ -23,7 +23,7 @@ SearchContext.displayName = "SearchContext";
|
|
|
23
23
|
function useSearch() {
|
|
24
24
|
return _react.default.useContext(SearchContext);
|
|
25
25
|
}
|
|
26
|
-
var SearchProvider = exports.SearchProvider = function
|
|
26
|
+
var SearchProvider = exports.SearchProvider = (0, _app.createProvider)(function (Component) {
|
|
27
27
|
return function SearchProvider(_ref) {
|
|
28
28
|
var children = _ref.children,
|
|
29
29
|
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
@@ -44,7 +44,7 @@ var SearchProvider = exports.SearchProvider = function SearchProvider(Component)
|
|
|
44
44
|
value: context
|
|
45
45
|
}, /*#__PURE__*/_react.default.createElement(Component, props, children));
|
|
46
46
|
};
|
|
47
|
-
};
|
|
47
|
+
});
|
|
48
48
|
var Search = exports.Search = (0, _app.makeDecoratable)("Search", function () {
|
|
49
49
|
return /*#__PURE__*/_react.default.createElement(SearchRenderer, null);
|
|
50
50
|
});
|
package/base/ui/Search.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_app","_excluded","SearchContext","React","createContext","options","addOption","displayName","useSearch","useContext","SearchProvider","exports","Component","_ref","children","props","_objectWithoutProperties2","default","_useState","useState","_useState2","_slicedToArray2","setOptions","useCallback","option","concat","_toConsumableArray2","context","createElement","Provider","value","Search","makeDecoratable","SearchRenderer","createVoidComponent","SearchOption","_useSearch","useEffect"],"sources":["Search.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from \"react\";\nimport { createVoidComponent, makeDecoratable } from \"@webiny/app\";\
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_app","_excluded","SearchContext","React","createContext","options","addOption","displayName","useSearch","useContext","SearchProvider","exports","createProvider","Component","_ref","children","props","_objectWithoutProperties2","default","_useState","useState","_useState2","_slicedToArray2","setOptions","useCallback","option","concat","_toConsumableArray2","context","createElement","Provider","value","Search","makeDecoratable","SearchRenderer","createVoidComponent","SearchOption","_useSearch","useEffect"],"sources":["Search.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from \"react\";\nimport { createProvider, createVoidComponent, makeDecoratable } from \"@webiny/app\";\n\nexport interface SearchOptionData {\n route: string;\n label: string;\n search?: {\n operator?: \"and\" | \"or\";\n fields?: Array<string>;\n };\n}\n\nexport interface SearchContext {\n options: SearchOptionData[];\n addOption(option: SearchOptionData): void;\n}\n\nconst SearchContext = React.createContext<SearchContext>({\n options: [],\n addOption: () => {\n return void 0;\n }\n});\nSearchContext.displayName = \"SearchContext\";\n\nexport function useSearch() {\n return React.useContext(SearchContext);\n}\n\ninterface SearchProviderProps {\n children: React.ReactNode;\n [key: string]: any;\n}\n\nexport const SearchProvider = createProvider(Component => {\n return function SearchProvider({ children, ...props }: SearchProviderProps) {\n const [options, setOptions] = useState<SearchOptionData[]>([]);\n\n const addOption = useCallback<SearchContext[\"addOption\"]>(\n option => setOptions(options => [...options, option]),\n [setOptions]\n );\n\n const context = {\n options,\n addOption\n };\n\n return (\n <SearchContext.Provider value={context}>\n <Component {...props}>{children}</Component>\n </SearchContext.Provider>\n );\n };\n});\n\nexport const Search = makeDecoratable(\"Search\", () => {\n return <SearchRenderer />;\n});\n\nexport const SearchRenderer = makeDecoratable(\"SearchRenderer\", createVoidComponent());\n\nexport type SearchOptionProps = SearchOptionData;\n\nexport const SearchOption = (props: SearchOptionProps) => {\n const { addOption } = useSearch();\n\n useEffect(() => {\n addOption(props);\n }, []);\n\n return null;\n};\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAAmF,IAAAE,SAAA;AAgBnF,IAAMC,aAAa,gBAAGC,cAAK,CAACC,aAAa,CAAgB;EACrDC,OAAO,EAAE,EAAE;EACXC,SAAS,EAAE,SAAXA,SAASA,CAAA,EAAQ;IACb,OAAO,KAAK,CAAC;EACjB;AACJ,CAAC,CAAC;AACFJ,aAAa,CAACK,WAAW,GAAG,eAAe;AAEpC,SAASC,SAASA,CAAA,EAAG;EACxB,OAAOL,cAAK,CAACM,UAAU,CAACP,aAAa,CAAC;AAC1C;AAOO,IAAMQ,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAAG,IAAAE,mBAAc,EAAC,UAAAC,SAAS,EAAI;EACtD,OAAO,SAASH,cAAcA,CAAAI,IAAA,EAA8C;IAAA,IAA3CC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;MAAKC,KAAK,OAAAC,yBAAA,CAAAC,OAAA,EAAAJ,IAAA,EAAAb,SAAA;IAC/C,IAAAkB,SAAA,GAA8B,IAAAC,eAAQ,EAAqB,EAAE,CAAC;MAAAC,UAAA,OAAAC,eAAA,CAAAJ,OAAA,EAAAC,SAAA;MAAvDd,OAAO,GAAAgB,UAAA;MAAEE,UAAU,GAAAF,UAAA;IAE1B,IAAMf,SAAS,GAAG,IAAAkB,kBAAW,EACzB,UAAAC,MAAM;MAAA,OAAIF,UAAU,CAAC,UAAAlB,OAAO;QAAA,UAAAqB,MAAA,KAAAC,mBAAA,CAAAT,OAAA,EAAQb,OAAO,IAAEoB,MAAM;MAAA,CAAC,CAAC;IAAA,GACrD,CAACF,UAAU,CACf,CAAC;IAED,IAAMK,OAAO,GAAG;MACZvB,OAAO,EAAPA,OAAO;MACPC,SAAS,EAATA;IACJ,CAAC;IAED,oBACIT,MAAA,CAAAqB,OAAA,CAAAW,aAAA,CAAC3B,aAAa,CAAC4B,QAAQ;MAACC,KAAK,EAAEH;IAAQ,gBACnC/B,MAAA,CAAAqB,OAAA,CAAAW,aAAA,CAAChB,SAAS,EAAKG,KAAK,EAAGD,QAAoB,CACvB,CAAC;EAEjC,CAAC;AACL,CAAC,CAAC;AAEK,IAAMiB,MAAM,GAAArB,OAAA,CAAAqB,MAAA,GAAG,IAAAC,oBAAe,EAAC,QAAQ,EAAE,YAAM;EAClD,oBAAOpC,MAAA,CAAAqB,OAAA,CAAAW,aAAA,CAACK,cAAc,MAAE,CAAC;AAC7B,CAAC,CAAC;AAEK,IAAMA,cAAc,GAAAvB,OAAA,CAAAuB,cAAA,GAAG,IAAAD,oBAAe,EAAC,gBAAgB,EAAE,IAAAE,wBAAmB,EAAC,CAAC,CAAC;AAI/E,IAAMC,YAAY,GAAAzB,OAAA,CAAAyB,YAAA,GAAG,SAAfA,YAAYA,CAAIpB,KAAwB,EAAK;EACtD,IAAAqB,UAAA,GAAsB7B,SAAS,CAAC,CAAC;IAAzBF,SAAS,GAAA+B,UAAA,CAAT/B,SAAS;EAEjB,IAAAgC,gBAAS,EAAC,YAAM;IACZhC,SAAS,CAACU,KAAK,CAAC;EACpB,CAAC,EAAE,EAAE,CAAC;EAEN,OAAO,IAAI;AACf,CAAC","ignoreList":[]}
|
package/base/ui/UserMenu.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { ComponentWithChildren } from "../../types";
|
|
3
2
|
export interface UserMenuItemData {
|
|
4
3
|
label?: string;
|
|
5
4
|
icon?: JSX.Element;
|
|
@@ -12,11 +11,7 @@ export interface UserMenuContext {
|
|
|
12
11
|
addMenuItem(item: UserMenuItemData): void;
|
|
13
12
|
}
|
|
14
13
|
export declare function useUserMenu(): UserMenuContext;
|
|
15
|
-
|
|
16
|
-
children: React.ReactNode;
|
|
17
|
-
[key: string]: any;
|
|
18
|
-
}
|
|
19
|
-
export declare const UserMenuProvider: (Component: ComponentWithChildren) => ({ children, ...props }: UserMenuProviderProps) => React.JSX.Element;
|
|
14
|
+
export declare const UserMenuProvider: import("@webiny/app").Decorator<import("@webiny/app").GenericComponent<import("@webiny/app").ChildrenProps>>;
|
|
20
15
|
export declare const UserMenu: (() => React.JSX.Element) & {
|
|
21
16
|
original: () => React.JSX.Element;
|
|
22
17
|
originalName: string;
|
|
@@ -159,4 +154,3 @@ export declare const UserMenuItems: (({ menuItems }: UserMenuItemsProps) => Reac
|
|
|
159
154
|
displayName: string;
|
|
160
155
|
}>) => (props: unknown) => React.JSX.Element;
|
|
161
156
|
};
|
|
162
|
-
export {};
|
package/base/ui/UserMenu.js
CHANGED
|
@@ -24,7 +24,7 @@ UserMenuContext.displayName = "UserMenuContext";
|
|
|
24
24
|
function useUserMenu() {
|
|
25
25
|
return _react.default.useContext(UserMenuContext);
|
|
26
26
|
}
|
|
27
|
-
var UserMenuProvider = exports.UserMenuProvider = function
|
|
27
|
+
var UserMenuProvider = exports.UserMenuProvider = (0, _app.createProvider)(function (Component) {
|
|
28
28
|
return function UserMenuProvider(_ref) {
|
|
29
29
|
var children = _ref.children,
|
|
30
30
|
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
@@ -56,7 +56,7 @@ var UserMenuProvider = exports.UserMenuProvider = function UserMenuProvider(Comp
|
|
|
56
56
|
value: context
|
|
57
57
|
}, /*#__PURE__*/_react.default.createElement(Component, props, children));
|
|
58
58
|
};
|
|
59
|
-
};
|
|
59
|
+
});
|
|
60
60
|
var UserMenu = exports.UserMenu = (0, _app.makeDecoratable)("UserMenu", function () {
|
|
61
61
|
return /*#__PURE__*/_react.default.createElement(UserMenuRenderer, null);
|
|
62
62
|
});
|
package/base/ui/UserMenu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_app","_excluded","UserMenuContext","React","createContext","addMenuItem","menuItems","displayName","useUserMenu","useContext","UserMenuProvider","exports","Component","_ref","children","props","_objectWithoutProperties2","default","_useState","useState","_useState2","_slicedToArray2","setItems","useCallback","item","items","concat","_toConsumableArray2","index","findIndex","i","slice","context","createElement","Provider","value","UserMenu","makeDecoratable","UserMenuRenderer","createVoidComponent","UserMenuHandle","UserMenuHandleRenderer","UserMenuItem","_ref2","menuItem","UserMenuItemContext","UserMenuItemRenderer","AddUserMenuItem","_useUserMenu","useEffect","element","undefined","icon","label","onClick","path","useUserMenuItem","UserMenuItems","_ref3","Fragment","map","key"],"sources":["UserMenu.tsx"],"sourcesContent":["import React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { createVoidComponent, makeDecoratable } from \"@webiny/app\";\
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_app","_excluded","UserMenuContext","React","createContext","addMenuItem","menuItems","displayName","useUserMenu","useContext","UserMenuProvider","exports","createProvider","Component","_ref","children","props","_objectWithoutProperties2","default","_useState","useState","_useState2","_slicedToArray2","setItems","useCallback","item","items","concat","_toConsumableArray2","index","findIndex","i","slice","context","createElement","Provider","value","UserMenu","makeDecoratable","UserMenuRenderer","createVoidComponent","UserMenuHandle","UserMenuHandleRenderer","UserMenuItem","_ref2","menuItem","UserMenuItemContext","UserMenuItemRenderer","AddUserMenuItem","_useUserMenu","useEffect","element","undefined","icon","label","onClick","path","useUserMenuItem","UserMenuItems","_ref3","Fragment","map","key"],"sources":["UserMenu.tsx"],"sourcesContent":["import React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { createProvider, createVoidComponent, makeDecoratable } from \"@webiny/app\";\n\nexport interface UserMenuItemData {\n label?: string;\n icon?: JSX.Element;\n path?: string;\n onClick?: () => void;\n element?: JSX.Element;\n}\n\nexport interface UserMenuContext {\n menuItems: UserMenuItemData[];\n addMenuItem(item: UserMenuItemData): void;\n}\n\nconst UserMenuContext = React.createContext<UserMenuContext>({\n addMenuItem: () => {\n return void 0;\n },\n menuItems: []\n});\nUserMenuContext.displayName = \"UserMenuContext\";\n\nexport function useUserMenu() {\n return React.useContext(UserMenuContext);\n}\n\ninterface UserMenuProviderProps {\n children: React.ReactNode;\n [key: string]: any;\n}\n\nexport const UserMenuProvider = createProvider(Component => {\n return function UserMenuProvider({ children, ...props }: UserMenuProviderProps) {\n const [menuItems, setItems] = useState<UserMenuItemData[]>([]);\n\n const addMenuItem = useCallback<UserMenuContext[\"addMenuItem\"]>(\n item => {\n setItems(items => [...items, item]);\n\n return () => {\n setItems(items => {\n const index = items.findIndex(i => i === item);\n if (index < 0) {\n return items;\n }\n\n return [...items.slice(0, index), ...items.slice(index + 1)];\n });\n };\n },\n [setItems]\n );\n\n const context = {\n menuItems,\n addMenuItem\n };\n\n return (\n <UserMenuContext.Provider value={context}>\n <Component {...props}>{children}</Component>\n </UserMenuContext.Provider>\n );\n };\n});\n\nexport const UserMenu = makeDecoratable(\"UserMenu\", () => {\n return <UserMenuRenderer />;\n});\n\nexport const UserMenuRenderer = makeDecoratable(\"UserMenuRenderer\", createVoidComponent());\n\nexport const UserMenuHandle = makeDecoratable(\"UserMenuHandle\", () => {\n return <UserMenuHandleRenderer />;\n});\n\nexport const UserMenuHandleRenderer = makeDecoratable(\n \"UserMenuHandleRenderer\",\n createVoidComponent()\n);\n\nexport interface UserMenuItemProps {\n menuItem: UserMenuItemData;\n}\n\nexport const UserMenuItem = makeDecoratable(\"UserMenuItem\", ({ menuItem }: UserMenuItemProps) => {\n return (\n <UserMenuItemContext.Provider value={menuItem}>\n <UserMenuItemRenderer />\n </UserMenuItemContext.Provider>\n );\n});\n\nexport const UserMenuItemRenderer = makeDecoratable(\"UserMenuItemRenderer\", createVoidComponent());\n\nexport const AddUserMenuItem = (props: UserMenuItemProps[\"menuItem\"]) => {\n const { addMenuItem } = useUserMenu();\n\n useEffect(() => {\n return addMenuItem(props);\n }, []);\n\n return null;\n};\n\nexport type UserMenuItemContext = UserMenuItemData;\n\nconst UserMenuItemContext = React.createContext<UserMenuItemContext>({\n element: undefined,\n icon: undefined,\n label: undefined,\n onClick: () => {\n return void 0;\n },\n path: undefined\n});\nUserMenuItemContext.displayName = \"UserMenuItemContext\";\n\nexport function useUserMenuItem() {\n return React.useContext(UserMenuItemContext);\n}\n\nexport interface UserMenuItemsProps {\n menuItems: UserMenuItemData[];\n}\n\nexport const UserMenuItems = makeDecoratable(\n \"UserMenuItems\",\n ({ menuItems }: UserMenuItemsProps) => {\n return (\n <Fragment>\n {menuItems.map((item, index) => (\n <UserMenuItem key={index} menuItem={item} />\n ))}\n </Fragment>\n );\n }\n);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -99,7 +99,7 @@ var AppInstaller = exports.AppInstaller = function AppInstaller(_ref) {
|
|
|
99
99
|
onInstalled: showNextInstaller
|
|
100
100
|
})), installer.secure);
|
|
101
101
|
}
|
|
102
|
-
return renderLayout(renderBody(
|
|
102
|
+
return renderLayout(renderBody(/*#__PURE__*/_react.default.createElement(_Elevation.Elevation, {
|
|
103
103
|
z: 1
|
|
104
104
|
}, /*#__PURE__*/_react.default.createElement(_styled.SuccessDialog, null, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
|
|
105
105
|
use: "headline4"
|