@webiny/app-admin 0.0.0-unstable.990c3ab1b6 → 0.0.0-unstable.aa00eecd97

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/assets/icons/add-18px.svg +1 -1
  2. package/assets/icons/arrow_drop_down-24px.svg +1 -1
  3. package/assets/icons/filter-24px.svg +1 -1
  4. package/assets/icons/highlight-24px.svg +1 -1
  5. package/assets/icons/info.svg +1 -1
  6. package/assets/icons/insert_drive_file-24px.svg +1 -1
  7. package/assets/icons/insert_photo-24px.svg +1 -1
  8. package/assets/icons/label-24px.svg +1 -1
  9. package/assets/icons/round-account_circle-24px.svg +1 -1
  10. package/assets/icons/round-arrow_drop_down-24px.svg +1 -1
  11. package/assets/icons/round-help-24px.svg +1 -1
  12. package/assets/icons/round-settings-24px.svg +1 -1
  13. package/assets/icons/today-24px.svg +1 -1
  14. package/assets/icons/touch_app.svg +1 -1
  15. package/base/Admin.js +6 -6
  16. package/base/Admin.js.map +1 -1
  17. package/base/Base.js +8 -27
  18. package/base/Base.js.map +1 -1
  19. package/base/plugins/AddGraphQLQuerySelection.js +5 -1
  20. package/base/plugins/AddGraphQLQuerySelection.js.map +1 -1
  21. package/base/ui/Brand.d.ts +2 -2
  22. package/base/ui/Brand.js +3 -3
  23. package/base/ui/Brand.js.map +1 -1
  24. package/base/ui/Dashboard.d.ts +2 -2
  25. package/base/ui/Dashboard.js +3 -3
  26. package/base/ui/Dashboard.js.map +1 -1
  27. package/{components → base/ui}/FileManager.d.ts +6 -6
  28. package/base/ui/FileManager.js +61 -0
  29. package/base/ui/FileManager.js.map +1 -0
  30. package/base/ui/Layout.d.ts +2 -2
  31. package/base/ui/Layout.js +3 -3
  32. package/base/ui/Layout.js.map +1 -1
  33. package/base/ui/LocaleSelector.d.ts +2 -2
  34. package/base/ui/LocaleSelector.js +3 -3
  35. package/base/ui/LocaleSelector.js.map +1 -1
  36. package/base/ui/LoginScreen.d.ts +1 -1
  37. package/base/ui/LoginScreen.js +2 -2
  38. package/base/ui/LoginScreen.js.map +1 -1
  39. package/base/ui/Logo.d.ts +2 -2
  40. package/base/ui/Logo.js +4 -4
  41. package/base/ui/Logo.js.map +1 -1
  42. package/base/ui/Navigation.d.ts +3 -3
  43. package/base/ui/Navigation.js +5 -5
  44. package/base/ui/Navigation.js.map +1 -1
  45. package/base/ui/NotFound.d.ts +2 -2
  46. package/base/ui/NotFound.js +3 -3
  47. package/base/ui/NotFound.js.map +1 -1
  48. package/base/ui/Search.d.ts +2 -2
  49. package/base/ui/Search.js +3 -3
  50. package/base/ui/Search.js.map +1 -1
  51. package/base/ui/UserMenu.d.ts +7 -7
  52. package/base/ui/UserMenu.js +8 -8
  53. package/base/ui/UserMenu.js.map +1 -1
  54. package/components/AppInstaller/AppInstaller.js +2 -34
  55. package/components/AppInstaller/AppInstaller.js.map +1 -1
  56. package/components/AppInstaller/Sidebar.js +2 -12
  57. package/components/AppInstaller/Sidebar.js.map +1 -1
  58. package/components/AppInstaller/styled.d.ts +17 -5
  59. package/components/AppInstaller/useInstaller.d.ts +1 -7
  60. package/components/AppInstaller/useInstaller.js +60 -119
  61. package/components/AppInstaller/useInstaller.js.map +1 -1
  62. package/components/EmptyView.js +1 -1
  63. package/components/EmptyView.js.map +1 -1
  64. package/components/FloatingActionButton.js +2 -2
  65. package/components/FloatingActionButton.js.map +1 -1
  66. package/components/OverlayLayout/OverlayLayout.js +2 -2
  67. package/components/OverlayLayout/OverlayLayout.js.map +1 -1
  68. package/components/Permissions/Permissions.d.ts +2 -0
  69. package/components/Permissions/Permissions.js +11 -2
  70. package/components/Permissions/Permissions.js.map +1 -1
  71. package/components/SearchUI.d.ts +1 -0
  72. package/components/SearchUI.js +11 -3
  73. package/components/SearchUI.js.map +1 -1
  74. package/components/SimpleForm/SimpleForm.js +3 -12
  75. package/components/SimpleForm/SimpleForm.js.map +1 -1
  76. package/components/SimpleUI/InputField.d.ts +2 -0
  77. package/components/SimpleUI/InputField.js +3 -1
  78. package/components/SimpleUI/InputField.js.map +1 -1
  79. package/components/SingleImageUpload.d.ts +1 -1
  80. package/components/SingleImageUpload.js +2 -2
  81. package/components/SingleImageUpload.js.map +1 -1
  82. package/components/SplitView/SplitView.js +1 -0
  83. package/components/SplitView/SplitView.js.map +1 -1
  84. package/components/index.d.ts +1 -1
  85. package/components/index.js +1 -1
  86. package/components/index.js.map +1 -1
  87. package/hooks/useConfirmationDialog.d.ts +3 -1
  88. package/hooks/useConfirmationDialog.js +10 -6
  89. package/hooks/useConfirmationDialog.js.map +1 -1
  90. package/index.d.ts +4 -5
  91. package/index.js +5 -17
  92. package/index.js.map +1 -1
  93. package/package.json +34 -45
  94. package/plugins/globalSearch/SearchBar.js +2 -2
  95. package/plugins/globalSearch/SearchBar.js.map +1 -1
  96. package/plugins/globalSearch/SearchBarDropdown.js +2 -2
  97. package/plugins/globalSearch/SearchBarDropdown.js.map +1 -1
  98. package/plugins/globalSearch/styled.d.ts +13 -4
  99. package/styles/material-theme-assignments.scss +4 -0
  100. package/styles/theme.scss +31 -1
  101. package/types.d.ts +25 -27
  102. package/types.js.map +1 -1
  103. package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js +5 -5
  104. package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js.map +1 -1
  105. package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js +15 -5
  106. package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js.map +1 -1
  107. package/ui/elements/form/FileManagerElement/styled.d.ts +23 -16
  108. package/ui/views/AdminView/components/Hamburger.js +2 -2
  109. package/ui/views/AdminView/components/Hamburger.js.map +1 -1
  110. package/ui/views/OverlayView/HeaderElement.js +1 -1
  111. package/ui/views/OverlayView/HeaderElement.js.map +1 -1
  112. package/ui/views/OverlayView.js +1 -1
  113. package/ui/views/OverlayView.js.map +1 -1
  114. package/assets/images/icons.png +0 -0
  115. package/assets/images/icons_retina.png +0 -0
  116. package/assets/images/swich.png +0 -0
  117. package/components/FileManager/BottomInfoBar/SupportedFileTypes.d.ts +0 -6
  118. package/components/FileManager/BottomInfoBar/SupportedFileTypes.js +0 -41
  119. package/components/FileManager/BottomInfoBar/SupportedFileTypes.js.map +0 -1
  120. package/components/FileManager/BottomInfoBar/UploadStatus.d.ts +0 -6
  121. package/components/FileManager/BottomInfoBar/UploadStatus.js +0 -51
  122. package/components/FileManager/BottomInfoBar/UploadStatus.js.map +0 -1
  123. package/components/FileManager/BottomInfoBar.d.ts +0 -5
  124. package/components/FileManager/BottomInfoBar.js +0 -48
  125. package/components/FileManager/BottomInfoBar.js.map +0 -1
  126. package/components/FileManager/DropFilesHere.d.ts +0 -10
  127. package/components/FileManager/DropFilesHere.js +0 -67
  128. package/components/FileManager/DropFilesHere.js.map +0 -1
  129. package/components/FileManager/File.d.ts +0 -17
  130. package/components/FileManager/File.js +0 -142
  131. package/components/FileManager/File.js.map +0 -1
  132. package/components/FileManager/FileDetails/Name.d.ts +0 -8
  133. package/components/FileManager/FileDetails/Name.js +0 -110
  134. package/components/FileManager/FileDetails/Name.js.map +0 -1
  135. package/components/FileManager/FileDetails/Tags.d.ts +0 -10
  136. package/components/FileManager/FileDetails/Tags.js +0 -288
  137. package/components/FileManager/FileDetails/Tags.js.map +0 -1
  138. package/components/FileManager/FileDetails.d.ts +0 -24
  139. package/components/FileManager/FileDetails.js +0 -409
  140. package/components/FileManager/FileDetails.js.map +0 -1
  141. package/components/FileManager/FileManagerContext.d.ts +0 -42
  142. package/components/FileManager/FileManagerContext.js +0 -191
  143. package/components/FileManager/FileManagerContext.js.map +0 -1
  144. package/components/FileManager/FileManagerView.d.ts +0 -18
  145. package/components/FileManager/FileManagerView.js +0 -621
  146. package/components/FileManager/FileManagerView.js.map +0 -1
  147. package/components/FileManager/LeftSidebar.d.ts +0 -10
  148. package/components/FileManager/LeftSidebar.js +0 -108
  149. package/components/FileManager/LeftSidebar.js.map +0 -1
  150. package/components/FileManager/NoPermissionView.d.ts +0 -3
  151. package/components/FileManager/NoPermissionView.js +0 -74
  152. package/components/FileManager/NoPermissionView.js.map +0 -1
  153. package/components/FileManager/NoResults.d.ts +0 -3
  154. package/components/FileManager/NoResults.js +0 -22
  155. package/components/FileManager/NoResults.js.map +0 -1
  156. package/components/FileManager/getFileTypePlugin.d.ts +0 -4
  157. package/components/FileManager/getFileTypePlugin.js +0 -51
  158. package/components/FileManager/getFileTypePlugin.js.map +0 -1
  159. package/components/FileManager/getFileUploader.d.ts +0 -3
  160. package/components/FileManager/getFileUploader.js +0 -15
  161. package/components/FileManager/getFileUploader.js.map +0 -1
  162. package/components/FileManager/graphql.d.ts +0 -96
  163. package/components/FileManager/graphql.js +0 -47
  164. package/components/FileManager/graphql.js.map +0 -1
  165. package/components/FileManager/icons/content_copy-black-24px.svg +0 -1
  166. package/components/FileManager/icons/delete.svg +0 -12
  167. package/components/FileManager/icons/privacy_tip-24px.svg +0 -10
  168. package/components/FileManager/icons/round-check_box-24px.svg +0 -4
  169. package/components/FileManager/icons/round-check_box_outline_blank-24px.svg +0 -4
  170. package/components/FileManager/icons/round-cloud_download-24px.svg +0 -4
  171. package/components/FileManager/icons/round-cloud_upload-24px.svg +0 -4
  172. package/components/FileManager/icons/round-description-24px.svg +0 -4
  173. package/components/FileManager/icons/round-edit-24px.svg +0 -4
  174. package/components/FileManager/icons/round-info-24px.svg +0 -4
  175. package/components/FileManager/icons/round-label-24px.svg +0 -4
  176. package/components/FileManager/icons/round-more_vert-24px.svg +0 -4
  177. package/components/FileManager/icons/round-search-24px.svg +0 -20
  178. package/components/FileManager/outputFileSelectionError.d.ts +0 -7
  179. package/components/FileManager/outputFileSelectionError.js +0 -40
  180. package/components/FileManager/outputFileSelectionError.js.map +0 -1
  181. package/components/FileManager/types.d.ts +0 -21
  182. package/components/FileManager/types.js +0 -5
  183. package/components/FileManager/types.js.map +0 -1
  184. package/components/FileManager.js +0 -118
  185. package/components/FileManager.js.map +0 -1
  186. package/plugins/FileManagerFileTypePlugin.d.ts +0 -33
  187. package/plugins/FileManagerFileTypePlugin.js +0 -48
  188. package/plugins/FileManagerFileTypePlugin.js.map +0 -1
  189. package/plugins/fileManager/fileDefault.d.ts +0 -2
  190. package/plugins/fileManager/fileDefault.js +0 -28
  191. package/plugins/fileManager/fileDefault.js.map +0 -1
  192. package/plugins/fileManager/fileImage/DeleteAction.d.ts +0 -7
  193. package/plugins/fileManager/fileImage/DeleteAction.js +0 -61
  194. package/plugins/fileManager/fileImage/DeleteAction.js.map +0 -1
  195. package/plugins/fileManager/fileImage/EditAction.d.ts +0 -10
  196. package/plugins/fileManager/fileImage/EditAction.js +0 -145
  197. package/plugins/fileManager/fileImage/EditAction.js.map +0 -1
  198. package/plugins/fileManager/fileImage/index.d.ts +0 -2
  199. package/plugins/fileManager/fileImage/index.js +0 -38
  200. package/plugins/fileManager/fileImage/index.js.map +0 -1
  201. package/plugins/fileManager/icons/edit.svg +0 -17
  202. package/plugins/fileManager/icons/round-description-24px.svg +0 -1
  203. package/plugins/fileManager/index.d.ts +0 -2
  204. package/plugins/fileManager/index.js +0 -19
  205. package/plugins/fileManager/index.js.map +0 -1
@@ -8,7 +8,7 @@ export interface NavigationContext {
8
8
  export declare function useNavigation(): NavigationContext;
9
9
  export declare const NavigationProvider: (Component: React.ComponentType<unknown>) => React.FC;
10
10
  export declare const Navigation: React.FC;
11
- export declare const NavigationRenderer: import("@webiny/app-admin-core").ComposableFC<unknown>;
11
+ export declare const NavigationRenderer: import("@webiny/app").ComposableFC<unknown>;
12
12
  interface MenuItemContext {
13
13
  menuItem?: MenuData;
14
14
  depth: number;
@@ -18,7 +18,7 @@ export declare function useMenuItem(): MenuItemContext;
18
18
  export interface MenuItemsProps {
19
19
  menuItems: MenuData[];
20
20
  }
21
- export declare const MenuItems: import("@webiny/app-admin-core").ComposableFC<MenuItemsProps>;
21
+ export declare const MenuItems: import("@webiny/app").ComposableFC<MenuItemsProps>;
22
22
  export declare const MenuItem: React.FC;
23
- export declare const MenuItemRenderer: import("@webiny/app-admin-core").ComposableFC<unknown>;
23
+ export declare const MenuItemRenderer: import("@webiny/app").ComposableFC<unknown>;
24
24
  export {};
@@ -12,7 +12,7 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
12
12
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
13
  var _react = _interopRequireWildcard(require("react"));
14
14
  var _nanoid = require("nanoid");
15
- var _appAdminCore = require("@webiny/app-admin-core");
15
+ var _app = require("@webiny/app");
16
16
  var _ = require("../..");
17
17
  var _plugins = require("@webiny/plugins");
18
18
  var NavigationContext = /*#__PURE__*/(0, _react.createContext)({
@@ -51,7 +51,7 @@ var LegacyMenuPlugins = function LegacyMenuPlugins() {
51
51
  }
52
52
  var menuElements = menuPlugins.map(function (plugin) {
53
53
  // TODO @ts-refactor figure out correct types or write a comment to leave as React.FC
54
- return /*#__PURE__*/_react.default.createElement(_appAdminCore.Plugins, {
54
+ return /*#__PURE__*/_react.default.createElement(_app.Plugins, {
55
55
  key: plugin.name
56
56
  }, plugin.render({
57
57
  Menu: LegacyMenu,
@@ -118,7 +118,7 @@ var Navigation = function Navigation() {
118
118
  }, /*#__PURE__*/_react.default.createElement(NavigationRenderer, null));
119
119
  };
120
120
  exports.Navigation = Navigation;
121
- var NavigationRenderer = (0, _appAdminCore.makeComposable)("NavigationRenderer");
121
+ var NavigationRenderer = (0, _app.makeComposable)("NavigationRenderer");
122
122
  exports.NavigationRenderer = NavigationRenderer;
123
123
  var MenuItemContext = /*#__PURE__*/_react.default.createContext({
124
124
  menuItem: undefined,
@@ -128,7 +128,7 @@ MenuItemContext.displayName = "MenuItemContext";
128
128
  function useMenuItem() {
129
129
  return _react.default.useContext(MenuItemContext);
130
130
  }
131
- var MenuItems = (0, _appAdminCore.makeComposable)("MenuItems", function (_ref2) {
131
+ var MenuItems = (0, _app.makeComposable)("MenuItems", function (_ref2) {
132
132
  var menuItems = _ref2.menuItems;
133
133
  var menuItem = useMenuItem();
134
134
  var depth = menuItem ? menuItem.depth : -1;
@@ -147,5 +147,5 @@ var MenuItem = function MenuItem() {
147
147
  return /*#__PURE__*/_react.default.createElement(MenuItemRenderer, null);
148
148
  };
149
149
  exports.MenuItem = MenuItem;
150
- var MenuItemRenderer = (0, _appAdminCore.makeComposable)("MenuItemRenderer");
150
+ var MenuItemRenderer = (0, _app.makeComposable)("MenuItemRenderer");
151
151
  exports.MenuItemRenderer = MenuItemRenderer;
@@ -1 +1 @@
1
- {"version":3,"names":["NavigationContext","createContext","menuItems","setMenu","removeMenu","displayName","useNavigation","useContext","LegacyMenu","props","name","nanoid","label","children","LegacyMenuPlugins","useState","menus","setMenus","useEffect","menuPlugins","plugins","byType","menuElements","map","plugin","render","Menu","Item","Section","NavigationProvider","Component","setState","id","updater","state","index","findIndex","m","newMenu","createEmptyMenu","slice","useCallback","context","useMemo","Navigation","location","NavigationRenderer","makeComposable","MenuItemContext","React","menuItem","undefined","depth","useMenuItem","MenuItems","MenuItem","MenuItemRenderer"],"sources":["Navigation.tsx"],"sourcesContent":["import React, {\n Fragment,\n useEffect,\n createContext,\n useCallback,\n useMemo,\n useState,\n useContext\n} from \"react\";\nimport { nanoid } from \"nanoid\";\nimport { makeComposable, Plugins } from \"@webiny/app-admin-core\";\nimport { MenuData, MenuProps, AddMenu as Menu, Tags, MenuUpdater, createEmptyMenu } 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\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: React.FC<MenuProps | SectionProps | ItemProps> = props => {\n return (\n <Menu {...props} name={(props as MenuProps).name || nanoid()} label={props.label as string}>\n {props.children}\n </Menu>\n );\n};\n\nconst LegacyMenuPlugins: React.FC = () => {\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 // TODO @ts-refactor\n setMenus(menuElements as any);\n }, []);\n\n return menus;\n};\n\nexport const NavigationProvider = (Component: React.ComponentType<unknown>): React.FC => {\n return function NavigationProvider({ children }) {\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 => {\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: React.FC = () => {\n return (\n <Tags tags={{ location: \"navigation\" }}>\n <NavigationRenderer />\n </Tags>\n );\n};\n\nexport const NavigationRenderer = makeComposable(\"NavigationRenderer\");\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 = makeComposable<MenuItemsProps>(\"MenuItems\", ({ menuItems }) => {\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: React.FC = () => {\n return <MenuItemRenderer />;\n};\n\nexport const MenuItemRenderer = makeComposable(\"MenuItemRenderer\");\n"],"mappings":"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"}
1
+ {"version":3,"names":["NavigationContext","createContext","menuItems","setMenu","removeMenu","displayName","useNavigation","useContext","LegacyMenu","props","name","nanoid","label","children","LegacyMenuPlugins","useState","menus","setMenus","useEffect","menuPlugins","plugins","byType","menuElements","map","plugin","render","Menu","Item","Section","NavigationProvider","Component","setState","id","updater","state","index","findIndex","m","newMenu","createEmptyMenu","slice","useCallback","context","useMemo","Navigation","location","NavigationRenderer","makeComposable","MenuItemContext","React","menuItem","undefined","depth","useMenuItem","MenuItems","MenuItem","MenuItemRenderer"],"sources":["Navigation.tsx"],"sourcesContent":["import React, {\n Fragment,\n useEffect,\n createContext,\n useCallback,\n useMemo,\n useState,\n useContext\n} from \"react\";\nimport { nanoid } from \"nanoid\";\nimport { makeComposable, Plugins } from \"@webiny/app\";\nimport { MenuData, MenuProps, AddMenu as Menu, Tags, MenuUpdater, createEmptyMenu } 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\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: React.FC<MenuProps | SectionProps | ItemProps> = props => {\n return (\n <Menu {...props} name={(props as MenuProps).name || nanoid()} label={props.label as string}>\n {props.children}\n </Menu>\n );\n};\n\nconst LegacyMenuPlugins: React.FC = () => {\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 // TODO @ts-refactor\n setMenus(menuElements as any);\n }, []);\n\n return menus;\n};\n\nexport const NavigationProvider = (Component: React.ComponentType<unknown>): React.FC => {\n return function NavigationProvider({ children }) {\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 => {\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: React.FC = () => {\n return (\n <Tags tags={{ location: \"navigation\" }}>\n <NavigationRenderer />\n </Tags>\n );\n};\n\nexport const NavigationRenderer = makeComposable(\"NavigationRenderer\");\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 = makeComposable<MenuItemsProps>(\"MenuItems\", ({ menuItems }) => {\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: React.FC = () => {\n return <MenuItemRenderer />;\n};\n\nexport const MenuItemRenderer = makeComposable(\"MenuItemRenderer\");\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export declare const NotFound: import("@webiny/app-admin-core").ComposableFC<unknown>;
2
- export declare const NotFoundRenderer: import("@webiny/app-admin-core").ComposableFC<unknown>;
1
+ export declare const NotFound: import("@webiny/app").ComposableFC<unknown>;
2
+ export declare const NotFoundRenderer: import("@webiny/app").ComposableFC<unknown>;
@@ -6,10 +6,10 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.NotFoundRenderer = exports.NotFound = void 0;
8
8
  var _react = _interopRequireDefault(require("react"));
9
- var _appAdminCore = require("@webiny/app-admin-core");
10
- var NotFound = (0, _appAdminCore.makeComposable)("NotFound", function () {
9
+ var _app = require("@webiny/app");
10
+ var NotFound = (0, _app.makeComposable)("NotFound", function () {
11
11
  return /*#__PURE__*/_react.default.createElement(NotFoundRenderer, null);
12
12
  });
13
13
  exports.NotFound = NotFound;
14
- var NotFoundRenderer = (0, _appAdminCore.makeComposable)("NotFoundRenderer");
14
+ var NotFoundRenderer = (0, _app.makeComposable)("NotFoundRenderer");
15
15
  exports.NotFoundRenderer = NotFoundRenderer;
@@ -1 +1 @@
1
- {"version":3,"names":["NotFound","makeComposable","NotFoundRenderer"],"sources":["NotFound.tsx"],"sourcesContent":["import React from \"react\";\nimport { makeComposable } from \"@webiny/app-admin-core\";\n\nexport const NotFound = makeComposable(\"NotFound\", () => {\n return <NotFoundRenderer />;\n});\n\nexport const NotFoundRenderer = makeComposable(\"NotFoundRenderer\");\n"],"mappings":";;;;;;;AAAA;AACA;AAEO,IAAMA,QAAQ,GAAG,IAAAC,4BAAc,EAAC,UAAU,EAAE,YAAM;EACrD,oBAAO,6BAAC,gBAAgB,OAAG;AAC/B,CAAC,CAAC;AAAC;AAEI,IAAMC,gBAAgB,GAAG,IAAAD,4BAAc,EAAC,kBAAkB,CAAC;AAAC"}
1
+ {"version":3,"names":["NotFound","makeComposable","NotFoundRenderer"],"sources":["NotFound.tsx"],"sourcesContent":["import React from \"react\";\nimport { makeComposable } from \"@webiny/app\";\n\nexport const NotFound = makeComposable(\"NotFound\", () => {\n return <NotFoundRenderer />;\n});\n\nexport const NotFoundRenderer = makeComposable(\"NotFoundRenderer\");\n"],"mappings":";;;;;;;AAAA;AACA;AAEO,IAAMA,QAAQ,GAAG,IAAAC,mBAAc,EAAC,UAAU,EAAE,YAAM;EACrD,oBAAO,6BAAC,gBAAgB,OAAG;AAC/B,CAAC,CAAC;AAAC;AAEI,IAAMC,gBAAgB,GAAG,IAAAD,mBAAc,EAAC,kBAAkB,CAAC;AAAC"}
@@ -13,7 +13,7 @@ export interface SearchContext {
13
13
  }
14
14
  export declare function useSearch(): SearchContext;
15
15
  export declare const SearchProvider: (Component: React.FC) => React.FC;
16
- export declare const Search: import("@webiny/app-admin-core").ComposableFC<unknown>;
17
- export declare const SearchRenderer: import("@webiny/app-admin-core").ComposableFC<unknown>;
16
+ export declare const Search: import("@webiny/app").ComposableFC<unknown>;
17
+ export declare const SearchRenderer: import("@webiny/app").ComposableFC<unknown>;
18
18
  export declare type SearchOptionProps = SearchOptionData;
19
19
  export declare const SearchOption: React.FC<SearchOptionProps>;
package/base/ui/Search.js CHANGED
@@ -11,7 +11,7 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
11
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
12
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
13
  var _react = _interopRequireWildcard(require("react"));
14
- var _appAdminCore = require("@webiny/app-admin-core");
14
+ var _app = require("@webiny/app");
15
15
  var _excluded = ["children"];
16
16
  var SearchContext = /*#__PURE__*/_react.default.createContext({
17
17
  options: [],
@@ -46,11 +46,11 @@ var SearchProvider = function SearchProvider(Component) {
46
46
  };
47
47
  };
48
48
  exports.SearchProvider = SearchProvider;
49
- var Search = (0, _appAdminCore.makeComposable)("Search", function () {
49
+ var Search = (0, _app.makeComposable)("Search", function () {
50
50
  return /*#__PURE__*/_react.default.createElement(SearchRenderer, null);
51
51
  });
52
52
  exports.Search = Search;
53
- var SearchRenderer = (0, _appAdminCore.makeComposable)("SearchRenderer");
53
+ var SearchRenderer = (0, _app.makeComposable)("SearchRenderer");
54
54
  exports.SearchRenderer = SearchRenderer;
55
55
  var SearchOption = function SearchOption(props) {
56
56
  var _useSearch = useSearch(),
@@ -1 +1 @@
1
- {"version":3,"names":["SearchContext","React","createContext","options","addOption","displayName","useSearch","useContext","SearchProvider","Component","children","props","useState","setOptions","useCallback","option","context","Search","makeComposable","SearchRenderer","SearchOption","useEffect"],"sources":["Search.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from \"react\";\nimport { makeComposable } from \"@webiny/app-admin-core\";\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\nexport const SearchProvider = (Component: React.FC): React.FC => {\n return function SearchProvider({ children, ...props }) {\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 = makeComposable(\"Search\", () => {\n return <SearchRenderer />;\n});\n\nexport const SearchRenderer = makeComposable(\"SearchRenderer\");\n\nexport type SearchOptionProps = SearchOptionData;\n\nexport const SearchOption: React.FC<SearchOptionProps> = props => {\n const { addOption } = useSearch();\n\n useEffect(() => {\n addOption(props);\n }, []);\n\n return null;\n};\n"],"mappings":";;;;;;;;;;;;AAAA;AACA;AAAwD;AAgBxD,IAAMA,aAAa,gBAAGC,cAAK,CAACC,aAAa,CAAgB;EACrDC,OAAO,EAAE,EAAE;EACXC,SAAS,EAAE,qBAAM;IACb,OAAO,KAAK,CAAC;EACjB;AACJ,CAAC,CAAC;AACFJ,aAAa,CAACK,WAAW,GAAG,eAAe;AAEpC,SAASC,SAAS,GAAG;EACxB,OAAOL,cAAK,CAACM,UAAU,CAACP,aAAa,CAAC;AAC1C;AAEO,IAAMQ,cAAc,GAAG,SAAjBA,cAAc,CAAIC,SAAmB,EAAe;EAC7D,OAAO,SAASD,cAAc,OAAyB;IAAA,IAAtBE,QAAQ,QAARA,QAAQ;MAAKC,KAAK;IAC/C,gBAA8B,IAAAC,eAAQ,EAAqB,EAAE,CAAC;MAAA;MAAvDT,OAAO;MAAEU,UAAU;IAE1B,IAAMT,SAAS,GAAG,IAAAU,kBAAW,EACzB,UAAAC,MAAM;MAAA,OAAIF,UAAU,CAAC,UAAAV,OAAO;QAAA,kDAAQA,OAAO,IAAEY,MAAM;MAAA,CAAC,CAAC;IAAA,GACrD,CAACF,UAAU,CAAC,CACf;IAED,IAAMG,OAAO,GAAG;MACZb,OAAO,EAAPA,OAAO;MACPC,SAAS,EAATA;IACJ,CAAC;IAED,oBACI,6BAAC,aAAa,CAAC,QAAQ;MAAC,KAAK,EAAEY;IAAQ,gBACnC,6BAAC,SAAS,EAAKL,KAAK,EAAGD,QAAQ,CAAa,CACvB;EAEjC,CAAC;AACL,CAAC;AAAC;AAEK,IAAMO,MAAM,GAAG,IAAAC,4BAAc,EAAC,QAAQ,EAAE,YAAM;EACjD,oBAAO,6BAAC,cAAc,OAAG;AAC7B,CAAC,CAAC;AAAC;AAEI,IAAMC,cAAc,GAAG,IAAAD,4BAAc,EAAC,gBAAgB,CAAC;AAAC;AAIxD,IAAME,YAAyC,GAAG,SAA5CA,YAAyC,CAAGT,KAAK,EAAI;EAC9D,iBAAsBL,SAAS,EAAE;IAAzBF,SAAS,cAATA,SAAS;EAEjB,IAAAiB,gBAAS,EAAC,YAAM;IACZjB,SAAS,CAACO,KAAK,CAAC;EACpB,CAAC,EAAE,EAAE,CAAC;EAEN,OAAO,IAAI;AACf,CAAC;AAAC"}
1
+ {"version":3,"names":["SearchContext","React","createContext","options","addOption","displayName","useSearch","useContext","SearchProvider","Component","children","props","useState","setOptions","useCallback","option","context","Search","makeComposable","SearchRenderer","SearchOption","useEffect"],"sources":["Search.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from \"react\";\nimport { makeComposable } 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\nexport const SearchProvider = (Component: React.FC): React.FC => {\n return function SearchProvider({ children, ...props }) {\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 = makeComposable(\"Search\", () => {\n return <SearchRenderer />;\n});\n\nexport const SearchRenderer = makeComposable(\"SearchRenderer\");\n\nexport type SearchOptionProps = SearchOptionData;\n\nexport const SearchOption: React.FC<SearchOptionProps> = props => {\n const { addOption } = useSearch();\n\n useEffect(() => {\n addOption(props);\n }, []);\n\n return null;\n};\n"],"mappings":";;;;;;;;;;;;AAAA;AACA;AAA6C;AAgB7C,IAAMA,aAAa,gBAAGC,cAAK,CAACC,aAAa,CAAgB;EACrDC,OAAO,EAAE,EAAE;EACXC,SAAS,EAAE,qBAAM;IACb,OAAO,KAAK,CAAC;EACjB;AACJ,CAAC,CAAC;AACFJ,aAAa,CAACK,WAAW,GAAG,eAAe;AAEpC,SAASC,SAAS,GAAG;EACxB,OAAOL,cAAK,CAACM,UAAU,CAACP,aAAa,CAAC;AAC1C;AAEO,IAAMQ,cAAc,GAAG,SAAjBA,cAAc,CAAIC,SAAmB,EAAe;EAC7D,OAAO,SAASD,cAAc,OAAyB;IAAA,IAAtBE,QAAQ,QAARA,QAAQ;MAAKC,KAAK;IAC/C,gBAA8B,IAAAC,eAAQ,EAAqB,EAAE,CAAC;MAAA;MAAvDT,OAAO;MAAEU,UAAU;IAE1B,IAAMT,SAAS,GAAG,IAAAU,kBAAW,EACzB,UAAAC,MAAM;MAAA,OAAIF,UAAU,CAAC,UAAAV,OAAO;QAAA,kDAAQA,OAAO,IAAEY,MAAM;MAAA,CAAC,CAAC;IAAA,GACrD,CAACF,UAAU,CAAC,CACf;IAED,IAAMG,OAAO,GAAG;MACZb,OAAO,EAAPA,OAAO;MACPC,SAAS,EAATA;IACJ,CAAC;IAED,oBACI,6BAAC,aAAa,CAAC,QAAQ;MAAC,KAAK,EAAEY;IAAQ,gBACnC,6BAAC,SAAS,EAAKL,KAAK,EAAGD,QAAQ,CAAa,CACvB;EAEjC,CAAC;AACL,CAAC;AAAC;AAEK,IAAMO,MAAM,GAAG,IAAAC,mBAAc,EAAC,QAAQ,EAAE,YAAM;EACjD,oBAAO,6BAAC,cAAc,OAAG;AAC7B,CAAC,CAAC;AAAC;AAEI,IAAMC,cAAc,GAAG,IAAAD,mBAAc,EAAC,gBAAgB,CAAC;AAAC;AAIxD,IAAME,YAAyC,GAAG,SAA5CA,YAAyC,CAAGT,KAAK,EAAI;EAC9D,iBAAsBL,SAAS,EAAE;IAAzBF,SAAS,cAATA,SAAS;EAEjB,IAAAiB,gBAAS,EAAC,YAAM;IACZjB,SAAS,CAACO,KAAK,CAAC;EACpB,CAAC,EAAE,EAAE,CAAC;EAEN,OAAO,IAAI;AACf,CAAC;AAAC"}
@@ -12,19 +12,19 @@ export interface UserMenuContext {
12
12
  }
13
13
  export declare function useUserMenu(): UserMenuContext;
14
14
  export declare const UserMenuProvider: (Component: React.FC) => React.FC;
15
- export declare const UserMenu: import("@webiny/app-admin-core").ComposableFC<unknown>;
16
- export declare const UserMenuRenderer: import("@webiny/app-admin-core").ComposableFC<unknown>;
17
- export declare const UserMenuHandle: import("@webiny/app-admin-core").ComposableFC<unknown>;
18
- export declare const UserMenuHandleRenderer: import("@webiny/app-admin-core").ComposableFC<unknown>;
15
+ export declare const UserMenu: import("@webiny/app").ComposableFC<unknown>;
16
+ export declare const UserMenuRenderer: import("@webiny/app").ComposableFC<unknown>;
17
+ export declare const UserMenuHandle: import("@webiny/app").ComposableFC<unknown>;
18
+ export declare const UserMenuHandleRenderer: import("@webiny/app").ComposableFC<unknown>;
19
19
  export interface UserMenuItemProps {
20
20
  menuItem: UserMenuItemData;
21
21
  }
22
- export declare const UserMenuItem: import("@webiny/app-admin-core").ComposableFC<UserMenuItemProps>;
23
- export declare const UserMenuItemRenderer: import("@webiny/app-admin-core").ComposableFC<unknown>;
22
+ export declare const UserMenuItem: import("@webiny/app").ComposableFC<UserMenuItemProps>;
23
+ export declare const UserMenuItemRenderer: import("@webiny/app").ComposableFC<unknown>;
24
24
  export declare const AddUserMenuItem: React.FC<UserMenuItemProps["menuItem"]>;
25
25
  export declare type UserMenuItemContext = UserMenuItemData;
26
26
  export declare function useUserMenuItem(): UserMenuItemData;
27
27
  export interface UserMenuItemsProps {
28
28
  menuItems: UserMenuItemData[];
29
29
  }
30
- export declare const UserMenuItems: import("@webiny/app-admin-core").ComposableFC<UserMenuItemsProps>;
30
+ export declare const UserMenuItems: import("@webiny/app").ComposableFC<UserMenuItemsProps>;
@@ -12,7 +12,7 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
12
12
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
13
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
14
14
  var _react = _interopRequireWildcard(require("react"));
15
- var _appAdminCore = require("@webiny/app-admin-core");
15
+ var _app = require("@webiny/app");
16
16
  var _excluded = ["children"];
17
17
  var UserMenuContext = /*#__PURE__*/_react.default.createContext({
18
18
  addMenuItem: function addMenuItem() {
@@ -58,26 +58,26 @@ var UserMenuProvider = function UserMenuProvider(Component) {
58
58
  };
59
59
  };
60
60
  exports.UserMenuProvider = UserMenuProvider;
61
- var UserMenu = (0, _appAdminCore.makeComposable)("UserMenu", function () {
61
+ var UserMenu = (0, _app.makeComposable)("UserMenu", function () {
62
62
  return /*#__PURE__*/_react.default.createElement(UserMenuRenderer, null);
63
63
  });
64
64
  exports.UserMenu = UserMenu;
65
- var UserMenuRenderer = (0, _appAdminCore.makeComposable)("UserMenuRenderer");
65
+ var UserMenuRenderer = (0, _app.makeComposable)("UserMenuRenderer");
66
66
  exports.UserMenuRenderer = UserMenuRenderer;
67
- var UserMenuHandle = (0, _appAdminCore.makeComposable)("UserMenuHandle", function () {
67
+ var UserMenuHandle = (0, _app.makeComposable)("UserMenuHandle", function () {
68
68
  return /*#__PURE__*/_react.default.createElement(UserMenuHandleRenderer, null);
69
69
  });
70
70
  exports.UserMenuHandle = UserMenuHandle;
71
- var UserMenuHandleRenderer = (0, _appAdminCore.makeComposable)("UserMenuHandleRenderer");
71
+ var UserMenuHandleRenderer = (0, _app.makeComposable)("UserMenuHandleRenderer");
72
72
  exports.UserMenuHandleRenderer = UserMenuHandleRenderer;
73
- var UserMenuItem = (0, _appAdminCore.makeComposable)("UserMenuItem", function (_ref2) {
73
+ var UserMenuItem = (0, _app.makeComposable)("UserMenuItem", function (_ref2) {
74
74
  var menuItem = _ref2.menuItem;
75
75
  return /*#__PURE__*/_react.default.createElement(UserMenuItemContext.Provider, {
76
76
  value: menuItem
77
77
  }, /*#__PURE__*/_react.default.createElement(UserMenuItemRenderer, null));
78
78
  });
79
79
  exports.UserMenuItem = UserMenuItem;
80
- var UserMenuItemRenderer = (0, _appAdminCore.makeComposable)("UserMenuItemRenderer");
80
+ var UserMenuItemRenderer = (0, _app.makeComposable)("UserMenuItemRenderer");
81
81
  exports.UserMenuItemRenderer = UserMenuItemRenderer;
82
82
  var AddUserMenuItem = function AddUserMenuItem(props) {
83
83
  var _useUserMenu = useUserMenu(),
@@ -101,7 +101,7 @@ UserMenuItemContext.displayName = "UserMenuItemContext";
101
101
  function useUserMenuItem() {
102
102
  return _react.default.useContext(UserMenuItemContext);
103
103
  }
104
- var UserMenuItems = (0, _appAdminCore.makeComposable)("UserMenuItems", function (_ref3) {
104
+ var UserMenuItems = (0, _app.makeComposable)("UserMenuItems", function (_ref3) {
105
105
  var menuItems = _ref3.menuItems;
106
106
  return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, menuItems.map(function (item, index) {
107
107
  return /*#__PURE__*/_react.default.createElement(UserMenuItem, {
@@ -1 +1 @@
1
- {"version":3,"names":["UserMenuContext","React","createContext","addMenuItem","menuItems","displayName","useUserMenu","useContext","UserMenuProvider","Component","children","props","useState","setItems","useCallback","item","items","index","findIndex","i","slice","context","UserMenu","makeComposable","UserMenuRenderer","UserMenuHandle","UserMenuHandleRenderer","UserMenuItem","menuItem","UserMenuItemRenderer","AddUserMenuItem","useEffect","UserMenuItemContext","element","undefined","icon","label","onClick","path","useUserMenuItem","UserMenuItems","map"],"sources":["UserMenu.tsx"],"sourcesContent":["import React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { makeComposable } from \"@webiny/app-admin-core\";\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\nexport const UserMenuProvider = (Component: React.FC): React.FC => {\n return function UserMenuProvider({ children, ...props }) {\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 = makeComposable(\"UserMenu\", () => {\n return <UserMenuRenderer />;\n});\n\nexport const UserMenuRenderer = makeComposable(\"UserMenuRenderer\");\n\nexport const UserMenuHandle = makeComposable(\"UserMenuHandle\", () => {\n return <UserMenuHandleRenderer />;\n});\n\nexport const UserMenuHandleRenderer = makeComposable(\"UserMenuHandleRenderer\");\n\nexport interface UserMenuItemProps {\n menuItem: UserMenuItemData;\n}\n\nexport const UserMenuItem = makeComposable<UserMenuItemProps>(\"UserMenuItem\", ({ menuItem }) => {\n return (\n <UserMenuItemContext.Provider value={menuItem}>\n <UserMenuItemRenderer />\n </UserMenuItemContext.Provider>\n );\n});\n\nexport const UserMenuItemRenderer = makeComposable(\"UserMenuItemRenderer\");\n\nexport const AddUserMenuItem: React.FC<UserMenuItemProps[\"menuItem\"]> = props => {\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 = makeComposable<UserMenuItemsProps>(\n \"UserMenuItems\",\n ({ menuItems }) => {\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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"}
1
+ {"version":3,"names":["UserMenuContext","React","createContext","addMenuItem","menuItems","displayName","useUserMenu","useContext","UserMenuProvider","Component","children","props","useState","setItems","useCallback","item","items","index","findIndex","i","slice","context","UserMenu","makeComposable","UserMenuRenderer","UserMenuHandle","UserMenuHandleRenderer","UserMenuItem","menuItem","UserMenuItemRenderer","AddUserMenuItem","useEffect","UserMenuItemContext","element","undefined","icon","label","onClick","path","useUserMenuItem","UserMenuItems","map"],"sources":["UserMenu.tsx"],"sourcesContent":["import React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { makeComposable } 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\nexport const UserMenuProvider = (Component: React.FC): React.FC => {\n return function UserMenuProvider({ children, ...props }) {\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 = makeComposable(\"UserMenu\", () => {\n return <UserMenuRenderer />;\n});\n\nexport const UserMenuRenderer = makeComposable(\"UserMenuRenderer\");\n\nexport const UserMenuHandle = makeComposable(\"UserMenuHandle\", () => {\n return <UserMenuHandleRenderer />;\n});\n\nexport const UserMenuHandleRenderer = makeComposable(\"UserMenuHandleRenderer\");\n\nexport interface UserMenuItemProps {\n menuItem: UserMenuItemData;\n}\n\nexport const UserMenuItem = makeComposable<UserMenuItemProps>(\"UserMenuItem\", ({ menuItem }) => {\n return (\n <UserMenuItemContext.Provider value={menuItem}>\n <UserMenuItemRenderer />\n </UserMenuItemContext.Provider>\n );\n});\n\nexport const UserMenuItemRenderer = makeComposable(\"UserMenuItemRenderer\");\n\nexport const AddUserMenuItem: React.FC<UserMenuItemProps[\"menuItem\"]> = props => {\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 = makeComposable<UserMenuItemsProps>(\n \"UserMenuItems\",\n ({ menuItems }) => {\n return (\n <Fragment>\n {menuItems.map((item, index) => (\n <UserMenuItem key={index} menuItem={item} />\n ))}\n </Fragment>\n );\n }\n);\n"],"mappings":";;;;;;;;;;;;;AAAA;AACA;AAA6C;AAe7C,IAAMA,eAAe,gBAAGC,cAAK,CAACC,aAAa,CAAkB;EACzDC,WAAW,EAAE,uBAAM;IACf,OAAO,KAAK,CAAC;EACjB,CAAC;EACDC,SAAS,EAAE;AACf,CAAC,CAAC;AACFJ,eAAe,CAACK,WAAW,GAAG,iBAAiB;AAExC,SAASC,WAAW,GAAG;EAC1B,OAAOL,cAAK,CAACM,UAAU,CAACP,eAAe,CAAC;AAC5C;AAEO,IAAMQ,gBAAgB,GAAG,SAAnBA,gBAAgB,CAAIC,SAAmB,EAAe;EAC/D,OAAO,SAASD,gBAAgB,OAAyB;IAAA,IAAtBE,QAAQ,QAARA,QAAQ;MAAKC,KAAK;IACjD,gBAA8B,IAAAC,eAAQ,EAAqB,EAAE,CAAC;MAAA;MAAvDR,SAAS;MAAES,QAAQ;IAE1B,IAAMV,WAAW,GAAG,IAAAW,kBAAW,EAC3B,UAAAC,IAAI,EAAI;MACJF,QAAQ,CAAC,UAAAG,KAAK;QAAA,kDAAQA,KAAK,IAAED,IAAI;MAAA,CAAC,CAAC;MAEnC,OAAO,YAAM;QACTF,QAAQ,CAAC,UAAAG,KAAK,EAAI;UACd,IAAMC,KAAK,GAAGD,KAAK,CAACE,SAAS,CAAC,UAAAC,CAAC;YAAA,OAAIA,CAAC,KAAKJ,IAAI;UAAA,EAAC;UAC9C,IAAIE,KAAK,GAAG,CAAC,EAAE;YACX,OAAOD,KAAK;UAChB;UAEA,kDAAWA,KAAK,CAACI,KAAK,CAAC,CAAC,EAAEH,KAAK,CAAC,oCAAKD,KAAK,CAACI,KAAK,CAACH,KAAK,GAAG,CAAC,CAAC;QAC/D,CAAC,CAAC;MACN,CAAC;IACL,CAAC,EACD,CAACJ,QAAQ,CAAC,CACb;IAED,IAAMQ,OAAO,GAAG;MACZjB,SAAS,EAATA,SAAS;MACTD,WAAW,EAAXA;IACJ,CAAC;IAED,oBACI,6BAAC,eAAe,CAAC,QAAQ;MAAC,KAAK,EAAEkB;IAAQ,gBACrC,6BAAC,SAAS,EAAKV,KAAK,EAAGD,QAAQ,CAAa,CACrB;EAEnC,CAAC;AACL,CAAC;AAAC;AAEK,IAAMY,QAAQ,GAAG,IAAAC,mBAAc,EAAC,UAAU,EAAE,YAAM;EACrD,oBAAO,6BAAC,gBAAgB,OAAG;AAC/B,CAAC,CAAC;AAAC;AAEI,IAAMC,gBAAgB,GAAG,IAAAD,mBAAc,EAAC,kBAAkB,CAAC;AAAC;AAE5D,IAAME,cAAc,GAAG,IAAAF,mBAAc,EAAC,gBAAgB,EAAE,YAAM;EACjE,oBAAO,6BAAC,sBAAsB,OAAG;AACrC,CAAC,CAAC;AAAC;AAEI,IAAMG,sBAAsB,GAAG,IAAAH,mBAAc,EAAC,wBAAwB,CAAC;AAAC;AAMxE,IAAMI,YAAY,GAAG,IAAAJ,mBAAc,EAAoB,cAAc,EAAE,iBAAkB;EAAA,IAAfK,QAAQ,SAARA,QAAQ;EACrF,oBACI,6BAAC,mBAAmB,CAAC,QAAQ;IAAC,KAAK,EAAEA;EAAS,gBAC1C,6BAAC,oBAAoB,OAAG,CACG;AAEvC,CAAC,CAAC;AAAC;AAEI,IAAMC,oBAAoB,GAAG,IAAAN,mBAAc,EAAC,sBAAsB,CAAC;AAAC;AAEpE,IAAMO,eAAwD,GAAG,SAA3DA,eAAwD,CAAGnB,KAAK,EAAI;EAC7E,mBAAwBL,WAAW,EAAE;IAA7BH,WAAW,gBAAXA,WAAW;EAEnB,IAAA4B,gBAAS,EAAC,YAAM;IACZ,OAAO5B,WAAW,CAACQ,KAAK,CAAC;EAC7B,CAAC,EAAE,EAAE,CAAC;EAEN,OAAO,IAAI;AACf,CAAC;AAAC;AAIF,IAAMqB,mBAAmB,gBAAG/B,cAAK,CAACC,aAAa,CAAsB;EACjE+B,OAAO,EAAEC,SAAS;EAClBC,IAAI,EAAED,SAAS;EACfE,KAAK,EAAEF,SAAS;EAChBG,OAAO,EAAE,mBAAM;IACX,OAAO,KAAK,CAAC;EACjB,CAAC;EACDC,IAAI,EAAEJ;AACV,CAAC,CAAC;AACFF,mBAAmB,CAAC3B,WAAW,GAAG,qBAAqB;AAEhD,SAASkC,eAAe,GAAG;EAC9B,OAAOtC,cAAK,CAACM,UAAU,CAACyB,mBAAmB,CAAC;AAChD;AAMO,IAAMQ,aAAa,GAAG,IAAAjB,mBAAc,EACvC,eAAe,EACf,iBAAmB;EAAA,IAAhBnB,SAAS,SAATA,SAAS;EACR,oBACI,6BAAC,eAAQ,QACJA,SAAS,CAACqC,GAAG,CAAC,UAAC1B,IAAI,EAAEE,KAAK;IAAA,oBACvB,6BAAC,YAAY;MAAC,GAAG,EAAEA,KAAM;MAAC,QAAQ,EAAEF;IAAK,EAAG;EAAA,CAC/C,CAAC,CACK;AAEnB,CAAC,CACJ;AAAC"}
@@ -14,8 +14,6 @@ var _appSecurity = require("@webiny/app-security");
14
14
  var _Progress = require("@webiny/ui/Progress");
15
15
  var _Button = require("@webiny/ui/Button");
16
16
  var _SplitView = require("../SplitView");
17
- var _Grid = require("@webiny/ui/Grid");
18
- var _Typography = require("@webiny/ui/Typography");
19
17
  var _Elevation = require("@webiny/ui/Elevation");
20
18
  var _useInstaller2 = require("./useInstaller");
21
19
  var _Sidebar = _interopRequireDefault(require("./Sidebar"));
@@ -54,8 +52,7 @@ var AppInstaller = function AppInstaller(_ref) {
54
52
  isFirstInstall = _useInstaller.isFirstInstall,
55
53
  showNextInstaller = _useInstaller.showNextInstaller,
56
54
  showLogin = _useInstaller.showLogin,
57
- onUser = _useInstaller.onUser,
58
- skippingVersions = _useInstaller.skippingVersions;
55
+ onUser = _useInstaller.onUser;
59
56
  (0, _react.useEffect)(function () {
60
57
  if (identity) {
61
58
  onUser();
@@ -99,35 +96,6 @@ var AppInstaller = function AppInstaller(_ref) {
99
96
  onInstalled: showNextInstaller
100
97
  })), installer.secure);
101
98
  }
102
- if (skippingVersions) {
103
- return renderBody( /*#__PURE__*/_react.default.createElement(_Elevation.Elevation, {
104
- z: 1,
105
- className: _styled.alertClass
106
- }, /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
107
- span: 12
108
- }, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
109
- use: "headline4"
110
- }, "Important!")), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
111
- span: 12
112
- }, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
113
- use: "body1",
114
- tag: "div"
115
- }, "We've detected that your current application is running Webiny", " ", /*#__PURE__*/_react.default.createElement("strong", null, "v", skippingVersions.latest), ". However, your API is running ", /*#__PURE__*/_react.default.createElement("strong", null, "v", skippingVersions.current), ". Unfortunately, we can't upgrade your system by skipping versions in between.", /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("br", null), "Here's a list of versions you skipped, that contain upgrades you need to install:", /*#__PURE__*/_react.default.createElement("ul", null, skippingVersions.availableUpgrades.filter(function (v) {
116
- return v !== skippingVersions.latest;
117
- }).map(function (v) {
118
- return /*#__PURE__*/_react.default.createElement("li", {
119
- key: v
120
- }, "v", v);
121
- })), "For instructions on how to upgrade Webiny, please consult our", " ", /*#__PURE__*/_react.default.createElement("a", {
122
- href: "https://docs.webiny.com/docs/how-to-guides/upgrade-webiny",
123
- target: "_blank",
124
- rel: "noreferrer noopener"
125
- }, "Upgrade Webiny"), " ", "guide. Note that some versions may have a dedicated article with upgrade instructions, so look out for those in the upgrade guide.", /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("br", null), "If you run into problems, find us on our", " ", /*#__PURE__*/_react.default.createElement("a", {
126
- href: "https://www.webiny.com/slack",
127
- target: "_blank",
128
- rel: "noreferrer noopener"
129
- }, "Slack community."))))));
130
- }
131
99
  return renderLayout(renderBody( /*#__PURE__*/_react.default.createElement(_Elevation.Elevation, {
132
100
  z: 1
133
101
  }, /*#__PURE__*/_react.default.createElement(_styled.SuccessDialog, null, /*#__PURE__*/_react.default.createElement("p", null, "You have successfully installed all new applications!"), !isCypressTest && isRootTenant && isFirstInstall ? /*#__PURE__*/_react.default.createElement("iframe", {
@@ -144,6 +112,6 @@ var AppInstaller = function AppInstaller(_ref) {
144
112
  markInstallerAsCompleted();
145
113
  setFinished(true);
146
114
  }
147
- }, isFirstInstall ? "Finish install" : "Finish upgrade")))), true);
115
+ }, "Finish install")))), true);
148
116
  };
149
117
  exports.AppInstaller = AppInstaller;
@@ -1 +1 @@
1
- {"version":3,"names":["AppInstaller","children","tenantId","localStorage","get","lsKey","wbyVersion","appConfig","getKey","process","env","REACT_APP_WEBINY_VERSION","isRootTenant","isCypressTest","window","Cypress","markInstallerAsCompleted","set","isInstallerCompleted","useState","finished","setFinished","useSecurity","identity","useInstaller","isInstalled","loading","installers","installer","isFirstInstall","showNextInstaller","showLogin","onUser","skippingVersions","useEffect","renderLayout","content","secure","installerSplitView","renderBody","length","render","onInstalled","alertClass","latest","current","availableUpgrades","filter","v","map","opacity"],"sources":["AppInstaller.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport { default as localStorage } from \"store\";\nimport { LoginScreen } from \"~/index\";\nimport { useSecurity } from \"@webiny/app-security\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { ButtonPrimary } from \"@webiny/ui/Button\";\nimport { SplitView, LeftPanel, RightPanel } from \"../SplitView\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { useInstaller } from \"./useInstaller\";\nimport Sidebar from \"./Sidebar\";\n\ndeclare global {\n interface Window {\n Cypress: any;\n }\n}\n\nimport {\n Wrapper,\n alertClass,\n InnerContent,\n InstallContent,\n installerSplitView,\n SuccessDialog\n} from \"./styled\";\nimport { config as appConfig } from \"@webiny/app/config\";\n\nexport const AppInstaller: React.FC = ({ children }) => {\n const tenantId = localStorage.get(\"webiny_tenant\") || \"root\";\n const lsKey = `webiny_installation_${tenantId}`;\n const wbyVersion = appConfig.getKey(\"WEBINY_VERSION\", process.env.REACT_APP_WEBINY_VERSION);\n const isRootTenant = tenantId === \"root\";\n /*\n * This flag allows us to avoid rendering the <iframe> when the app is tested with Cypress\n * (Cypress doesn't work with cross domains because of security-related implications).\n * @see https://docs.cypress.io/guides/guides/web-security#Insecure-Content\n */\n const isCypressTest = window && window.Cypress;\n\n const markInstallerAsCompleted = () => {\n localStorage.set(lsKey, wbyVersion);\n };\n\n const isInstallerCompleted = () => {\n return localStorage.get(lsKey) === wbyVersion;\n };\n\n const [finished, setFinished] = useState(false);\n const { identity } = useSecurity();\n const {\n loading,\n installers,\n installer,\n isFirstInstall,\n showNextInstaller,\n showLogin,\n onUser,\n skippingVersions\n } = useInstaller({ isInstalled: isInstallerCompleted() });\n\n useEffect(() => {\n if (identity) {\n onUser();\n }\n }, [identity]);\n\n if (isInstallerCompleted()) {\n return <LoginScreen>{children}</LoginScreen>;\n }\n\n const renderLayout = (content: React.ReactNode, secure = false): React.ReactElement => {\n return (\n <SplitView className={installerSplitView}>\n <LeftPanel span={2}>\n <Sidebar\n allInstallers={installers}\n installer={installer}\n showLogin={showLogin}\n />\n </LeftPanel>\n <RightPanel span={10}>\n {!showLogin && !secure && content}\n {(showLogin || secure) && <LoginScreen>{content}</LoginScreen>}\n </RightPanel>\n </SplitView>\n );\n };\n\n const renderBody = (content: React.ReactNode): React.ReactElement => {\n return (\n <Wrapper>\n <InstallContent>\n <InnerContent>{content}</InnerContent>\n </InstallContent>\n </Wrapper>\n );\n };\n\n // Loading installers data\n if (loading) {\n return <CircularProgress label={\"Checking apps...\"} />;\n }\n\n // This means there are no installers to run or installation was finished\n if (!loading && (installers.length === 0 || finished)) {\n markInstallerAsCompleted();\n return <LoginScreen>{children}</LoginScreen>;\n }\n\n if (installer) {\n return renderLayout(\n renderBody(installer.render({ onInstalled: showNextInstaller })),\n installer.secure\n );\n }\n\n if (skippingVersions) {\n return renderBody(\n <Elevation z={1} className={alertClass}>\n <Grid>\n <Cell span={12}>\n <Typography use={\"headline4\"}>Important!</Typography>\n </Cell>\n <Cell span={12}>\n <Typography use={\"body1\"} tag={\"div\"}>\n We&apos;ve detected that your current application is running Webiny{\" \"}\n <strong>v{skippingVersions.latest}</strong>. However, your API is\n running <strong>v{skippingVersions.current}</strong>. Unfortunately, we\n can&apos;t upgrade your system by skipping versions in between.\n <br />\n <br />\n Here&apos;s a list of versions you skipped, that contain upgrades you\n need to install:\n <ul>\n {skippingVersions.availableUpgrades\n .filter(v => v !== skippingVersions.latest)\n .map(v => (\n <li key={v}>v{v}</li>\n ))}\n </ul>\n For instructions on how to upgrade Webiny, please consult our{\" \"}\n <a\n href={\"https://docs.webiny.com/docs/how-to-guides/upgrade-webiny\"}\n target={\"_blank\"}\n rel={\"noreferrer noopener\"}\n >\n Upgrade Webiny\n </a>{\" \"}\n guide. Note that some versions may have a dedicated article with upgrade\n instructions, so look out for those in the upgrade guide.\n <br />\n <br />\n If you run into problems, find us on our{\" \"}\n <a\n href={\"https://www.webiny.com/slack\"}\n target={\"_blank\"}\n rel={\"noreferrer noopener\"}\n >\n Slack community.\n </a>\n </Typography>\n </Cell>\n </Grid>\n </Elevation>\n );\n }\n\n return renderLayout(\n renderBody(\n <Elevation z={1}>\n <SuccessDialog>\n <p>You have successfully installed all new applications!</p>\n {!isCypressTest && isRootTenant && isFirstInstall ? (\n <iframe\n height=\"0\"\n width=\"0\"\n frameBorder=\"0\"\n style={{ opacity: \"0\" }}\n src=\"https://www.webiny.com/thank-you/new-install\"\n ></iframe>\n ) : null}\n <ButtonPrimary\n data-testid={\"open-webiny-cms-admin-button\"}\n onClick={() => {\n markInstallerAsCompleted();\n setFinished(true);\n }}\n >\n {isFirstInstall ? \"Finish install\" : \"Finish upgrade\"}\n </ButtonPrimary>\n </SuccessDialog>\n </Elevation>\n ),\n true\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["AppInstaller","children","tenantId","localStorage","get","lsKey","wbyVersion","appConfig","getKey","process","env","REACT_APP_WEBINY_VERSION","isRootTenant","isCypressTest","window","Cypress","markInstallerAsCompleted","set","isInstallerCompleted","useState","finished","setFinished","useSecurity","identity","useInstaller","isInstalled","loading","installers","installer","isFirstInstall","showNextInstaller","showLogin","onUser","useEffect","renderLayout","content","secure","installerSplitView","renderBody","length","render","onInstalled","opacity"],"sources":["AppInstaller.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport { default as localStorage } from \"store\";\nimport { LoginScreen } from \"~/index\";\nimport { useSecurity } from \"@webiny/app-security\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { ButtonPrimary } from \"@webiny/ui/Button\";\nimport { SplitView, LeftPanel, RightPanel } from \"../SplitView\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { useInstaller } from \"./useInstaller\";\nimport Sidebar from \"./Sidebar\";\n\ndeclare global {\n interface Window {\n Cypress: any;\n }\n}\n\nimport { Wrapper, InnerContent, InstallContent, installerSplitView, SuccessDialog } from \"./styled\";\nimport { config as appConfig } from \"@webiny/app/config\";\n\nexport const AppInstaller: React.FC = ({ children }) => {\n const tenantId = localStorage.get(\"webiny_tenant\") || \"root\";\n const lsKey = `webiny_installation_${tenantId}`;\n const wbyVersion = appConfig.getKey(\"WEBINY_VERSION\", process.env.REACT_APP_WEBINY_VERSION);\n const isRootTenant = tenantId === \"root\";\n /*\n * This flag allows us to avoid rendering the <iframe> when the app is tested with Cypress\n * (Cypress doesn't work with cross domains because of security-related implications).\n * @see https://docs.cypress.io/guides/guides/web-security#Insecure-Content\n */\n const isCypressTest = window && window.Cypress;\n\n const markInstallerAsCompleted = () => {\n localStorage.set(lsKey, wbyVersion);\n };\n\n const isInstallerCompleted = () => {\n return localStorage.get(lsKey) === wbyVersion;\n };\n\n const [finished, setFinished] = useState(false);\n const { identity } = useSecurity();\n const { loading, installers, installer, isFirstInstall, showNextInstaller, showLogin, onUser } =\n useInstaller({ isInstalled: isInstallerCompleted() });\n\n useEffect(() => {\n if (identity) {\n onUser();\n }\n }, [identity]);\n\n if (isInstallerCompleted()) {\n return <LoginScreen>{children}</LoginScreen>;\n }\n\n const renderLayout = (content: React.ReactNode, secure = false): React.ReactElement => {\n return (\n <SplitView className={installerSplitView}>\n <LeftPanel span={2}>\n <Sidebar\n allInstallers={installers}\n installer={installer}\n showLogin={showLogin}\n />\n </LeftPanel>\n <RightPanel span={10}>\n {!showLogin && !secure && content}\n {(showLogin || secure) && <LoginScreen>{content}</LoginScreen>}\n </RightPanel>\n </SplitView>\n );\n };\n\n const renderBody = (content: React.ReactNode): React.ReactElement => {\n return (\n <Wrapper>\n <InstallContent>\n <InnerContent>{content}</InnerContent>\n </InstallContent>\n </Wrapper>\n );\n };\n\n // Loading installers data\n if (loading) {\n return <CircularProgress label={\"Checking apps...\"} />;\n }\n\n // This means there are no installers to run or installation was finished\n if (!loading && (installers.length === 0 || finished)) {\n markInstallerAsCompleted();\n return <LoginScreen>{children}</LoginScreen>;\n }\n\n if (installer) {\n return renderLayout(\n renderBody(installer.render({ onInstalled: showNextInstaller })),\n installer.secure\n );\n }\n\n return renderLayout(\n renderBody(\n <Elevation z={1}>\n <SuccessDialog>\n <p>You have successfully installed all new applications!</p>\n {!isCypressTest && isRootTenant && isFirstInstall ? (\n <iframe\n height=\"0\"\n width=\"0\"\n frameBorder=\"0\"\n style={{ opacity: \"0\" }}\n src=\"https://www.webiny.com/thank-you/new-install\"\n ></iframe>\n ) : null}\n <ButtonPrimary\n data-testid={\"open-webiny-cms-admin-button\"}\n onClick={() => {\n markInstallerAsCompleted();\n setFinished(true);\n }}\n >\n Finish install\n </ButtonPrimary>\n </SuccessDialog>\n </Elevation>\n ),\n true\n );\n};\n"],"mappings":"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"}
@@ -10,7 +10,6 @@ var _react = _interopRequireWildcard(require("react"));
10
10
  var _classnames = _interopRequireDefault(require("classnames"));
11
11
  var _styled = _interopRequireDefault(require("@emotion/styled"));
12
12
  var _Typography = require("@webiny/ui/Typography");
13
- var _config = require("@webiny/app/config");
14
13
  var _signInDivider = _interopRequireDefault(require("./assets/sign-in-divider.svg"));
15
14
  var _Brand = require("../../base/ui/Brand");
16
15
  var _Tags = require("../../base/ui/Tags");
@@ -128,27 +127,18 @@ var Sidebar = function Sidebar(_ref) {
128
127
  var allInstallers = _ref.allInstallers,
129
128
  installer = _ref.installer,
130
129
  showLogin = _ref.showLogin;
131
- var upgrades = allInstallers.filter(function (installer) {
132
- return installer.type === "upgrade";
133
- });
134
130
  var installations = allInstallers.filter(function (installer) {
135
131
  return installer.type === "install";
136
132
  });
137
- var wbyVersion = _config.config.getKey("WEBINY_VERSION", process.env.REACT_APP_WEBINY_VERSION);
138
133
  return /*#__PURE__*/_react.default.createElement(_Tags.Tags, {
139
134
  tags: {
140
135
  location: "installer"
141
136
  }
142
- }, /*#__PURE__*/_react.default.createElement(Logo, null, /*#__PURE__*/_react.default.createElement(_Brand.Brand, null)), upgrades.length > 0 ? /*#__PURE__*/_react.default.createElement(Installations, {
143
- title: /*#__PURE__*/_react.default.createElement("span", null, "The following apps will be upgraded to ", /*#__PURE__*/_react.default.createElement("strong", null, wbyVersion), ":"),
144
- allInstallers: upgrades,
145
- installer: installer,
146
- showLogin: showLogin
147
- }) : null, installations.length > 0 && /*#__PURE__*/_react.default.createElement(Installations, {
137
+ }, /*#__PURE__*/_react.default.createElement(Logo, null, /*#__PURE__*/_react.default.createElement(_Brand.Brand, null)), installations.length > 0 && /*#__PURE__*/_react.default.createElement(Installations, {
148
138
  title: "The following apps will be installed and configured:",
149
139
  allInstallers: installations,
150
140
  installer: installer,
151
- showLogin: upgrades.length > 0 ? false : showLogin
141
+ showLogin: showLogin
152
142
  }));
153
143
  };
154
144
  var _default = Sidebar;
@@ -1 +1 @@
1
- {"version":3,"names":["Logo","styled","padding","borderBottom","List","li","display","alignItems","borderRadius","height","width","marginRight","textAlign","lineHeight","fontSize","paddingTop","color","img","backgroundColor","fontWeight","Note","Installations","props","title","allInstallers","installer","showLogin","renderList","loginItem","signInDivider","items","i","length","name","secure","installed","prev","push","active","classSet","pending","Sidebar","upgrades","filter","type","installations","wbyVersion","appConfig","getKey","process","env","REACT_APP_WEBINY_VERSION","location"],"sources":["Sidebar.tsx"],"sourcesContent":["import React, { Fragment } from \"react\";\nimport classSet from \"classnames\";\nimport styled from \"@emotion/styled\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { config as appConfig } from \"@webiny/app/config\";\nimport signInDivider from \"./assets/sign-in-divider.svg\";\nimport { Installer } from \"./useInstaller\";\nimport { Brand } from \"~/base/ui/Brand\";\nimport { Tags } from \"~/base/ui/Tags\";\n\nconst Logo = styled(\"div\")({\n padding: 15,\n borderBottom: \"1px solid var(--mdc-theme-background)\"\n});\n\nconst List = styled(\"ul\")({\n li: {\n display: \"flex\",\n alignItems: \"center\",\n padding: \"15px 15px\",\n \".status\": {\n borderRadius: \"50%\",\n display: \"inline-block\",\n height: 20,\n width: 20,\n marginRight: 15\n },\n \"&.sign-in\": {\n display: \"block\",\n textAlign: \"center\",\n \".note\": {\n display: \"inline-block\",\n lineHeight: \"150%\",\n fontSize: 10,\n paddingTop: 10,\n color: \"var(--mdc-theme-text-icon-on-background)\"\n },\n img: {\n width: \"100%\"\n }\n },\n \"&.active\": {\n backgroundColor: \"var(--mdc-theme-background)\",\n fontWeight: 600,\n \".status\": {\n backgroundColor: \"var(--mdc-theme-primary)\"\n }\n },\n \"&.pending\": {\n \".status\": {\n backgroundColor: \"var(--mdc-theme-on-surface)\"\n }\n },\n \"&.installed\": {\n \".status\": {\n backgroundColor: \"var(--mdc-theme-secondary)\"\n }\n }\n }\n});\n\nconst Note = styled(\"div\")({\n padding: 15\n});\ninterface InstallationsProps {\n title: React.ReactNode;\n allInstallers: Installer[];\n installer: Installer;\n showLogin: boolean;\n}\nconst Installations: React.FC<InstallationsProps> = props => {\n const { title, allInstallers, installer, showLogin } = props;\n const renderList = () => {\n const loginItem = (\n <li key={\"login\"} className={\"sign-in\"}>\n <img src={signInDivider} alt={\"\"} />\n <Typography use={\"overline\"} className={\"note\"}>\n TO CONTINUE THE INSTALLATION AFTER THIS POINT YOU’LL NEED TO SIGN IN\n </Typography>\n </li>\n );\n\n const items = [];\n for (let i = 0; i < allInstallers.length; i++) {\n const { name, title, secure, installed } = allInstallers[i];\n const prev = i === 0 ? null : allInstallers[i - 1];\n if ((!prev || !prev.secure) && secure && showLogin) {\n items.push(loginItem);\n }\n\n const active = installer && !showLogin && name === installer.name;\n\n items.push(\n <li\n key={name}\n className={classSet(\n { installed: installed },\n { active: active },\n { pending: !installed && !active }\n )}\n >\n <span className={\"status\"} />\n <span className={\"title\"}>{title}</span>\n </li>\n );\n }\n return items;\n };\n\n return (\n <Fragment>\n <Note>\n <Typography use={\"body1\"}>{title}</Typography>\n </Note>\n <List>{renderList()}</List>\n </Fragment>\n );\n};\n\ninterface SidebarProps {\n allInstallers: Installer[];\n installer: Installer;\n showLogin: boolean;\n}\n\nconst Sidebar: React.FC<SidebarProps> = ({ allInstallers, installer, showLogin }) => {\n const upgrades = allInstallers.filter(installer => installer.type === \"upgrade\");\n const installations = allInstallers.filter(installer => installer.type === \"install\");\n const wbyVersion = appConfig.getKey(\"WEBINY_VERSION\", process.env.REACT_APP_WEBINY_VERSION);\n\n return (\n <Tags tags={{ location: \"installer\" }}>\n <Logo>\n <Brand />\n </Logo>\n {upgrades.length > 0 ? (\n <Installations\n title={\n <span>\n The following apps will be upgraded to <strong>{wbyVersion}</strong>:\n </span>\n }\n allInstallers={upgrades}\n installer={installer}\n showLogin={showLogin}\n />\n ) : null}\n {installations.length > 0 && (\n <Installations\n title={\"The following apps will be installed and configured:\"}\n allInstallers={installations}\n installer={installer}\n showLogin={upgrades.length > 0 ? false : showLogin}\n />\n )}\n </Tags>\n );\n};\nexport default Sidebar;\n"],"mappings":"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"}
1
+ {"version":3,"names":["Logo","styled","padding","borderBottom","List","li","display","alignItems","borderRadius","height","width","marginRight","textAlign","lineHeight","fontSize","paddingTop","color","img","backgroundColor","fontWeight","Note","Installations","props","title","allInstallers","installer","showLogin","renderList","loginItem","signInDivider","items","i","length","name","secure","installed","prev","push","active","classSet","pending","Sidebar","installations","filter","type","location"],"sources":["Sidebar.tsx"],"sourcesContent":["import React, { Fragment } from \"react\";\nimport classSet from \"classnames\";\nimport styled from \"@emotion/styled\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport signInDivider from \"./assets/sign-in-divider.svg\";\nimport { Installer } from \"./useInstaller\";\nimport { Brand } from \"~/base/ui/Brand\";\nimport { Tags } from \"~/base/ui/Tags\";\n\nconst Logo = styled(\"div\")({\n padding: 15,\n borderBottom: \"1px solid var(--mdc-theme-background)\"\n});\n\nconst List = styled(\"ul\")({\n li: {\n display: \"flex\",\n alignItems: \"center\",\n padding: \"15px 15px\",\n \".status\": {\n borderRadius: \"50%\",\n display: \"inline-block\",\n height: 20,\n width: 20,\n marginRight: 15\n },\n \"&.sign-in\": {\n display: \"block\",\n textAlign: \"center\",\n \".note\": {\n display: \"inline-block\",\n lineHeight: \"150%\",\n fontSize: 10,\n paddingTop: 10,\n color: \"var(--mdc-theme-text-icon-on-background)\"\n },\n img: {\n width: \"100%\"\n }\n },\n \"&.active\": {\n backgroundColor: \"var(--mdc-theme-background)\",\n fontWeight: 600,\n \".status\": {\n backgroundColor: \"var(--mdc-theme-primary)\"\n }\n },\n \"&.pending\": {\n \".status\": {\n backgroundColor: \"var(--mdc-theme-on-surface)\"\n }\n },\n \"&.installed\": {\n \".status\": {\n backgroundColor: \"var(--mdc-theme-secondary)\"\n }\n }\n }\n});\n\nconst Note = styled(\"div\")({\n padding: 15\n});\ninterface InstallationsProps {\n title: React.ReactNode;\n allInstallers: Installer[];\n installer: Installer;\n showLogin: boolean;\n}\nconst Installations: React.FC<InstallationsProps> = props => {\n const { title, allInstallers, installer, showLogin } = props;\n const renderList = () => {\n const loginItem = (\n <li key={\"login\"} className={\"sign-in\"}>\n <img src={signInDivider} alt={\"\"} />\n <Typography use={\"overline\"} className={\"note\"}>\n TO CONTINUE THE INSTALLATION AFTER THIS POINT YOU’LL NEED TO SIGN IN\n </Typography>\n </li>\n );\n\n const items = [];\n for (let i = 0; i < allInstallers.length; i++) {\n const { name, title, secure, installed } = allInstallers[i];\n const prev = i === 0 ? null : allInstallers[i - 1];\n if ((!prev || !prev.secure) && secure && showLogin) {\n items.push(loginItem);\n }\n\n const active = installer && !showLogin && name === installer.name;\n\n items.push(\n <li\n key={name}\n className={classSet(\n { installed: installed },\n { active: active },\n { pending: !installed && !active }\n )}\n >\n <span className={\"status\"} />\n <span className={\"title\"}>{title}</span>\n </li>\n );\n }\n return items;\n };\n\n return (\n <Fragment>\n <Note>\n <Typography use={\"body1\"}>{title}</Typography>\n </Note>\n <List>{renderList()}</List>\n </Fragment>\n );\n};\n\ninterface SidebarProps {\n allInstallers: Installer[];\n installer: Installer;\n showLogin: boolean;\n}\n\nconst Sidebar: React.FC<SidebarProps> = ({ allInstallers, installer, showLogin }) => {\n const installations = allInstallers.filter(installer => installer.type === \"install\");\n\n return (\n <Tags tags={{ location: \"installer\" }}>\n <Logo>\n <Brand />\n </Logo>\n {installations.length > 0 && (\n <Installations\n title={\"The following apps will be installed and configured:\"}\n allInstallers={installations}\n installer={installer}\n showLogin={showLogin}\n />\n )}\n </Tags>\n );\n};\nexport default Sidebar;\n"],"mappings":"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"}
@@ -1,9 +1,21 @@
1
1
  /// <reference types="react" />
2
- /// <reference types="web" />
3
2
  /// <reference types="react" />
4
- export declare const Wrapper: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, Pick<import("react").ClassAttributes<HTMLElement> & import("react").HTMLAttributes<HTMLElement>, keyof import("react").HTMLAttributes<HTMLElement>>, object>;
5
- export declare const InstallContent: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>, keyof import("react").HTMLAttributes<HTMLDivElement>>, object>;
3
+ /// <reference types="web" />
4
+ export declare const Wrapper: import("@emotion/styled").StyledComponent<{
5
+ theme?: import("@emotion/react").Theme | undefined;
6
+ as?: import("react").ElementType<any> | undefined;
7
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, {}>;
8
+ export declare const InstallContent: import("@emotion/styled").StyledComponent<{
9
+ theme?: import("@emotion/react").Theme | undefined;
10
+ as?: import("react").ElementType<any> | undefined;
11
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
6
12
  export declare const installerSplitView: string;
7
- export declare const SuccessDialog: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>, keyof import("react").HTMLAttributes<HTMLDivElement>>, object>;
8
- export declare const InnerContent: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>, keyof import("react").HTMLAttributes<HTMLDivElement>>, object>;
13
+ export declare const SuccessDialog: import("@emotion/styled").StyledComponent<{
14
+ theme?: import("@emotion/react").Theme | undefined;
15
+ as?: import("react").ElementType<any> | undefined;
16
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
17
+ export declare const InnerContent: import("@emotion/styled").StyledComponent<{
18
+ theme?: import("@emotion/react").Theme | undefined;
19
+ as?: import("react").ElementType<any> | undefined;
20
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
9
21
  export declare const alertClass: string;
@@ -2,17 +2,12 @@ import { AdminInstallationPlugin } from "../../types";
2
2
  interface UseInstallerParams {
3
3
  isInstalled: boolean;
4
4
  }
5
- interface SkippingVersionState {
6
- current: string;
7
- latest: string;
8
- availableUpgrades: string[];
9
- }
10
5
  interface BaseInstaller {
11
6
  installed: string | null;
12
7
  plugin: AdminInstallationPlugin;
13
8
  }
14
9
  export interface Installer extends BaseInstaller {
15
- type: "install" | "upgrade";
10
+ type: "install";
16
11
  name: string;
17
12
  title: string;
18
13
  render: AdminInstallationPlugin["render"];
@@ -26,6 +21,5 @@ export declare const useInstaller: (params: UseInstallerParams) => {
26
21
  showNextInstaller: () => any;
27
22
  showLogin: boolean;
28
23
  onUser: () => void;
29
- skippingVersions: SkippingVersionState | null;
30
24
  };
31
25
  export {};