@webiny/app-admin 5.20.0 → 5.22.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.
Files changed (134) hide show
  1. package/assets/icons/slack-logo.svg +1 -1
  2. package/base/Admin.d.ts +14 -0
  3. package/base/Admin.js +29 -0
  4. package/base/Base.d.ts +2 -0
  5. package/base/Base.js +65 -0
  6. package/base/plugins/AddGraphQLQuerySelection.d.ts +9 -0
  7. package/base/plugins/AddGraphQLQuerySelection.js +15 -0
  8. package/base/providers/ApolloProvider.d.ts +4 -0
  9. package/base/providers/ApolloProvider.js +14 -0
  10. package/base/providers/TelemetryProvider.d.ts +4 -0
  11. package/base/providers/TelemetryProvider.js +19 -0
  12. package/base/providers/UiStateProvider.d.ts +4 -0
  13. package/base/providers/UiStateProvider.js +10 -0
  14. package/base/providers/ViewCompositionProvider.d.ts +18 -0
  15. package/base/providers/ViewCompositionProvider.js +44 -0
  16. package/base/ui/Brand.d.ts +9 -0
  17. package/base/ui/Brand.js +6 -0
  18. package/base/ui/CenteredView.d.ts +8 -0
  19. package/base/ui/CenteredView.js +27 -0
  20. package/base/ui/Dashboard.d.ts +9 -0
  21. package/base/ui/Dashboard.js +6 -0
  22. package/base/ui/Layout.d.ts +13 -0
  23. package/base/ui/Layout.js +11 -0
  24. package/base/ui/LocaleSelector.d.ts +9 -0
  25. package/base/ui/LocaleSelector.js +6 -0
  26. package/base/ui/LoginScreen.d.ts +9 -0
  27. package/base/ui/LoginScreen.js +12 -0
  28. package/base/ui/Logo.d.ts +14 -0
  29. package/base/ui/Logo.js +20 -0
  30. package/base/ui/Menu.d.ts +35 -0
  31. package/base/ui/Menu.js +80 -0
  32. package/base/ui/Navigation.d.ts +35 -0
  33. package/base/ui/Navigation.js +147 -0
  34. package/base/ui/NotFound.d.ts +9 -0
  35. package/base/ui/NotFound.js +6 -0
  36. package/base/ui/Search.d.ts +28 -0
  37. package/base/ui/Search.js +48 -0
  38. package/base/ui/Tags.d.ts +8 -0
  39. package/base/ui/Tags.js +13 -0
  40. package/base/ui/UserMenu.d.ts +54 -0
  41. package/base/ui/UserMenu.js +86 -0
  42. package/components/AdminLayout.js +5 -31
  43. package/components/AppInstaller/AppInstaller.d.ts +4 -0
  44. package/components/AppInstaller/AppInstaller.js +136 -0
  45. package/components/AppInstaller/index.d.ts +1 -4
  46. package/components/AppInstaller/index.js +13 -133
  47. package/components/AppInstaller/styled.d.ts +4 -4
  48. package/components/EmptyView.js +1 -1
  49. package/components/FileManager/BottomInfoBar/SupportedFileTypes.js +2 -2
  50. package/components/FileManager/DropFilesHere.js +1 -1
  51. package/components/FileManager/File.js +2 -2
  52. package/components/FileManager/FileDetails/Tags.js +2 -2
  53. package/components/FileManager/FileDetails.js +6 -6
  54. package/components/FileManager/FileManagerView.js +2 -2
  55. package/components/FileManager/LeftSidebar.js +1 -1
  56. package/components/FileManager/NoPermissionView.js +1 -1
  57. package/components/FloatingActionButton.js +1 -1
  58. package/components/OverlayLayout/OverlayLayout.js +1 -1
  59. package/components/Routes.d.ts +6 -0
  60. package/components/Routes.js +34 -0
  61. package/components/SearchUI.js +1 -1
  62. package/index.d.ts +28 -0
  63. package/index.js +26 -0
  64. package/package.json +28 -32
  65. package/plugins/MenuPlugin.d.ts +18 -1
  66. package/plugins/fileManager/fileDefault.js +1 -1
  67. package/plugins/fileManager/fileImage/DeleteAction.js +1 -1
  68. package/plugins/fileManager/fileImage/EditAction.js +1 -1
  69. package/plugins/globalSearch/SearchBar.d.ts +6 -3
  70. package/plugins/globalSearch/SearchBar.js +3 -2
  71. package/plugins/globalSearch/SearchBarDropdown.js +1 -1
  72. package/plugins/globalSearch/index.d.ts +0 -3
  73. package/plugins/globalSearch/index.js +0 -18
  74. package/plugins/globalSearch/styled.d.ts +3 -3
  75. package/plugins/index.d.ts +1 -1
  76. package/plugins/index.js +2 -4
  77. package/styles/material-theme-assignments.scss +1 -0
  78. package/types.d.ts +1 -10
  79. package/ui/elements/PanelElement.js +2 -1
  80. package/ui/elements/form/FileManagerElement/EmptyStateElement.js +2 -1
  81. package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js +2 -2
  82. package/ui/elements/form/FileManagerElement/styled.d.ts +9 -9
  83. package/ui/elements/form/FileManagerElement.d.ts +3 -2
  84. package/ui/views/AdminView/ContentElement.js +1 -1
  85. package/ui/views/AdminView/components/Hamburger.js +1 -1
  86. package/ui/views/FormView/FormContentElement.js +2 -1
  87. package/ui/views/OverlayView/HeaderElement.js +1 -1
  88. package/ui/views/OverlayView/HeaderTitleElement.js +1 -1
  89. package/plugins/logo/Logo.d.ts +0 -22
  90. package/plugins/logo/Logo.js +0 -108
  91. package/plugins/logo/index.d.ts +0 -5
  92. package/plugins/logo/index.js +0 -32
  93. package/plugins/menu/documentation.d.ts +0 -4
  94. package/plugins/menu/documentation.js +0 -16
  95. package/plugins/menu/fileManager.d.ts +0 -4
  96. package/plugins/menu/fileManager.js +0 -64
  97. package/plugins/menu/index.d.ts +0 -6
  98. package/plugins/menu/index.js +0 -24
  99. package/plugins/menu/renderers/MenuGroupRenderer.d.ts +0 -7
  100. package/plugins/menu/renderers/MenuGroupRenderer.js +0 -126
  101. package/plugins/menu/renderers/MenuLinkRenderer.d.ts +0 -7
  102. package/plugins/menu/renderers/MenuLinkRenderer.js +0 -52
  103. package/plugins/menu/renderers/MenuSectionItemRenderer.d.ts +0 -7
  104. package/plugins/menu/renderers/MenuSectionItemRenderer.js +0 -77
  105. package/plugins/menu/renderers/MenuSectionRenderer.d.ts +0 -7
  106. package/plugins/menu/renderers/MenuSectionRenderer.js +0 -51
  107. package/plugins/menu/slack.d.ts +0 -4
  108. package/plugins/menu/slack.js +0 -16
  109. package/plugins/menu/source.d.ts +0 -4
  110. package/plugins/menu/source.js +0 -16
  111. package/plugins/userMenu/UserMenuElement.d.ts +0 -7
  112. package/plugins/userMenu/UserMenuElement.js +0 -43
  113. package/plugins/userMenu/UserMenuRenderer.d.ts +0 -6
  114. package/plugins/userMenu/UserMenuRenderer.js +0 -47
  115. package/plugins/userMenu/index.d.ts +0 -4
  116. package/plugins/userMenu/index.js +0 -16
  117. package/ui/views/AdminView.d.ts +0 -12
  118. package/ui/views/AdminView.js +0 -90
  119. package/ui/views/NavigationView/ContentElement.d.ts +0 -10
  120. package/ui/views/NavigationView/ContentElement.js +0 -86
  121. package/ui/views/NavigationView/FooterElement.d.ts +0 -13
  122. package/ui/views/NavigationView/FooterElement.js +0 -59
  123. package/ui/views/NavigationView/HeaderElement.d.ts +0 -16
  124. package/ui/views/NavigationView/HeaderElement.js +0 -66
  125. package/ui/views/NavigationView/NavigationViewRenderer.d.ts +0 -6
  126. package/ui/views/NavigationView/NavigationViewRenderer.js +0 -38
  127. package/ui/views/NavigationView/Styled.d.ts +0 -7
  128. package/ui/views/NavigationView/Styled.js +0 -47
  129. package/ui/views/NavigationView/legacyMenu.d.ts +0 -22
  130. package/ui/views/NavigationView/legacyMenu.js +0 -1
  131. package/ui/views/NavigationView/useNavigation.d.ts +0 -6
  132. package/ui/views/NavigationView/useNavigation.js +0 -22
  133. package/ui/views/NavigationView.d.ts +0 -26
  134. package/ui/views/NavigationView.js +0 -204
@@ -1 +1 @@
1
- <svg id="Bold" enable-background="new 0 0 24 24" height="512" viewBox="0 0 24 24" width="512" xmlns="http://www.w3.org/2000/svg"><path d="m8.843 12.651c-1.392 0-2.521 1.129-2.521 2.521v6.306c0 1.392 1.129 2.521 2.521 2.521s2.521-1.129 2.521-2.521v-6.306c-.001-1.392-1.13-2.521-2.521-2.521z"/><path d="m.019 15.172c0 1.393 1.13 2.523 2.523 2.523s2.523-1.13 2.523-2.523v-2.523h-2.521c-.001 0-.001 0-.002 0-1.393 0-2.523 1.13-2.523 2.523z"/><path d="m8.846-.001c-.001 0-.002 0-.003 0-1.393 0-2.523 1.13-2.523 2.523s1.13 2.523 2.523 2.523h2.521c0-1.431 0-1.083 0-2.528-.001-1.391-1.128-2.518-2.518-2.518z"/><path d="m2.525 11.37h6.318c1.393 0 2.523-1.13 2.523-2.523s-1.13-2.523-2.523-2.523h-6.318c-1.393 0-2.523 1.13-2.523 2.523s1.13 2.523 2.523 2.523z"/><path d="m21.457 6.323c-1.391 0-2.518 1.127-2.518 2.518v.005 2.523h2.521c1.393 0 2.523-1.13 2.523-2.523s-1.13-2.523-2.523-2.523c-.001 0-.002 0-.003 0z"/><path d="m12.641 2.522v6.325c0 1.392 1.129 2.521 2.521 2.521s2.521-1.129 2.521-2.521v-6.325c0-1.392-1.129-2.521-2.521-2.521-1.392 0-2.521 1.129-2.521 2.521z"/><path d="m17.682 21.476c0-1.392-1.129-2.521-2.521-2.521h-2.521v2.523c.001 1.391 1.129 2.519 2.521 2.519s2.521-1.129 2.521-2.521z"/><path d="m21.479 12.649h-6.318c-1.393 0-2.523 1.13-2.523 2.523s1.13 2.523 2.523 2.523h6.318c1.393 0 2.523-1.13 2.523-2.523s-1.13-2.523-2.523-2.523z"/></svg>
1
+ <svg id="Bold" enable-background="new 0 0 24 24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="m8.843 12.651c-1.392 0-2.521 1.129-2.521 2.521v6.306c0 1.392 1.129 2.521 2.521 2.521s2.521-1.129 2.521-2.521v-6.306c-.001-1.392-1.13-2.521-2.521-2.521z"/><path d="m.019 15.172c0 1.393 1.13 2.523 2.523 2.523s2.523-1.13 2.523-2.523v-2.523h-2.521c-.001 0-.001 0-.002 0-1.393 0-2.523 1.13-2.523 2.523z"/><path d="m8.846-.001c-.001 0-.002 0-.003 0-1.393 0-2.523 1.13-2.523 2.523s1.13 2.523 2.523 2.523h2.521c0-1.431 0-1.083 0-2.528-.001-1.391-1.128-2.518-2.518-2.518z"/><path d="m2.525 11.37h6.318c1.393 0 2.523-1.13 2.523-2.523s-1.13-2.523-2.523-2.523h-6.318c-1.393 0-2.523 1.13-2.523 2.523s1.13 2.523 2.523 2.523z"/><path d="m21.457 6.323c-1.391 0-2.518 1.127-2.518 2.518v.005 2.523h2.521c1.393 0 2.523-1.13 2.523-2.523s-1.13-2.523-2.523-2.523c-.001 0-.002 0-.003 0z"/><path d="m12.641 2.522v6.325c0 1.392 1.129 2.521 2.521 2.521s2.521-1.129 2.521-2.521v-6.325c0-1.392-1.129-2.521-2.521-2.521-1.392 0-2.521 1.129-2.521 2.521z"/><path d="m17.682 21.476c0-1.392-1.129-2.521-2.521-2.521h-2.521v2.523c.001 1.391 1.129 2.519 2.521 2.519s2.521-1.129 2.521-2.521z"/><path d="m21.479 12.649h-6.318c-1.393 0-2.523 1.13-2.523 2.523s1.13 2.523 2.523 2.523h6.318c1.393 0 2.523-1.13 2.523-2.523s-1.13-2.523-2.523-2.523z"/></svg>
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ import ApolloClient from "apollo-client";
3
+ interface Options {
4
+ uri: string;
5
+ }
6
+ interface ApolloClientFactory {
7
+ (options: Options): ApolloClient<any>;
8
+ }
9
+ export interface AdminProps {
10
+ createApolloClient?: ApolloClientFactory;
11
+ children?: React.ReactNode;
12
+ }
13
+ export declare const Admin: ({ children, createApolloClient }: AdminProps) => JSX.Element;
14
+ export {};
package/base/Admin.js ADDED
@@ -0,0 +1,29 @@
1
+ import React from "react";
2
+ import { Admin as BaseAdmin, Provider } from "@webiny/app-admin-core";
3
+ import { createApolloProvider } from "./providers/ApolloProvider";
4
+ import { Base } from "./Base";
5
+ import { createTelemetryProvider } from "./providers/TelemetryProvider";
6
+ import { createUiStateProvider } from "./providers/UiStateProvider";
7
+ import { SearchProvider } from "./ui/Search";
8
+ import { UserMenuProvider } from "./ui/UserMenu";
9
+ import { NavigationProvider } from "./ui/Navigation";
10
+ export var Admin = function Admin(_ref) {
11
+ var children = _ref.children,
12
+ createApolloClient = _ref.createApolloClient;
13
+ var ApolloProvider = createApolloProvider(createApolloClient);
14
+ var TelemetryProvider = createTelemetryProvider();
15
+ var UiStateProvider = createUiStateProvider();
16
+ return /*#__PURE__*/React.createElement(BaseAdmin, null, /*#__PURE__*/React.createElement(Provider, {
17
+ hoc: ApolloProvider
18
+ }), /*#__PURE__*/React.createElement(Provider, {
19
+ hoc: TelemetryProvider
20
+ }), /*#__PURE__*/React.createElement(Provider, {
21
+ hoc: UiStateProvider
22
+ }), /*#__PURE__*/React.createElement(Provider, {
23
+ hoc: SearchProvider
24
+ }), /*#__PURE__*/React.createElement(Provider, {
25
+ hoc: UserMenuProvider
26
+ }), /*#__PURE__*/React.createElement(Provider, {
27
+ hoc: NavigationProvider
28
+ }), /*#__PURE__*/React.createElement(Base, null), children);
29
+ };
package/base/Base.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const Base: React.MemoExoticComponent<() => JSX.Element>;
package/base/Base.js ADDED
@@ -0,0 +1,65 @@
1
+ import React, { memo } from "react";
2
+ import { Plugins } from "@webiny/app-admin-core";
3
+ import { AddMenu, AddRoute, Dashboard, Layout, NotFound } from "./..";
4
+ import { plugins } from "@webiny/plugins";
5
+ import { ReactComponent as DocsIcon } from "../assets/icons/icon-documentation.svg";
6
+ import { ReactComponent as SlackIcon } from "../assets/icons/slack-logo.svg";
7
+ import { ReactComponent as GithubIcon } from "../assets/icons/github-brands.svg";
8
+ import { ReactComponent as FileIcon } from "../assets/icons/insert_drive_file-24px.svg";
9
+ import { ReactComponent as SettingsIcon } from "../assets/icons/round-settings-24px.svg";
10
+ import { FileManager } from "../components";
11
+ import adminPlugins from "../plugins";
12
+
13
+ var BaseExtension = function BaseExtension() {
14
+ plugins.register(adminPlugins());
15
+ return /*#__PURE__*/React.createElement(Plugins, null, /*#__PURE__*/React.createElement(AddMenu, {
16
+ name: "settings",
17
+ label: "Settings",
18
+ icon: /*#__PURE__*/React.createElement(SettingsIcon, null),
19
+ pin: "last"
20
+ }), /*#__PURE__*/React.createElement(FileManager, null, function (_ref) {
21
+ var showFileManager = _ref.showFileManager;
22
+ return /*#__PURE__*/React.createElement(AddMenu, {
23
+ name: "fileManager",
24
+ label: "File Manager",
25
+ icon: /*#__PURE__*/React.createElement(FileIcon, null),
26
+ tags: ["footer"],
27
+ onClick: showFileManager,
28
+ testId: "admin-drawer-footer-menu-file-manager"
29
+ });
30
+ }), /*#__PURE__*/React.createElement(AddMenu, {
31
+ name: "documentation",
32
+ label: "Documentation",
33
+ icon: /*#__PURE__*/React.createElement(DocsIcon, null),
34
+ path: "https://docs.webiny.com/",
35
+ rel: "noopener noreferrer",
36
+ target: "_blank",
37
+ tags: ["footer"]
38
+ }), /*#__PURE__*/React.createElement(AddMenu, {
39
+ name: "slack",
40
+ label: "Slack",
41
+ icon: /*#__PURE__*/React.createElement(SlackIcon, null),
42
+ path: "https://www.webiny.com/slack/",
43
+ rel: "noopener noreferrer",
44
+ target: "_blank",
45
+ tags: ["footer"]
46
+ }), /*#__PURE__*/React.createElement(AddMenu, {
47
+ name: "github",
48
+ label: "Github",
49
+ icon: /*#__PURE__*/React.createElement(GithubIcon, null),
50
+ path: "https://github.com/webiny/webiny-js",
51
+ rel: "noopener noreferrer",
52
+ target: "_blank",
53
+ tags: ["footer"]
54
+ }), /*#__PURE__*/React.createElement(AddRoute, {
55
+ path: "/"
56
+ }, /*#__PURE__*/React.createElement(Layout, {
57
+ title: "Welcome!"
58
+ }, /*#__PURE__*/React.createElement(Dashboard, null))), /*#__PURE__*/React.createElement(AddRoute, {
59
+ path: "*"
60
+ }, /*#__PURE__*/React.createElement(Layout, {
61
+ title: "Not Accessible"
62
+ }, /*#__PURE__*/React.createElement(NotFound, null))));
63
+ };
64
+
65
+ export var Base = /*#__PURE__*/memo(BaseExtension);
@@ -0,0 +1,9 @@
1
+ import { FC } from "react";
2
+ import { DocumentNode } from "graphql";
3
+ interface Props {
4
+ operationName: string;
5
+ selectionPath: string;
6
+ addSelection: DocumentNode;
7
+ }
8
+ export declare const AddGraphQLQuerySelection: FC<Props>;
9
+ export {};
@@ -0,0 +1,15 @@
1
+ import { useEffect } from "react";
2
+ import { plugins } from "@webiny/plugins";
3
+ import { nanoid } from "nanoid";
4
+ import { AddQuerySelectionPlugin } from "@webiny/app/plugins/AddQuerySelectionPlugin";
5
+ export var AddGraphQLQuerySelection = function AddGraphQLQuerySelection(props) {
6
+ useEffect(function () {
7
+ var plugin = new AddQuerySelectionPlugin(props);
8
+ plugin.name = nanoid();
9
+ plugins.register(plugin);
10
+ return function () {
11
+ plugins.unregister(plugin.name);
12
+ };
13
+ }, []);
14
+ return null;
15
+ };
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ export declare const createApolloProvider: (clientFactory: any) => (Component: React.ComponentType<unknown>) => ({ children }: {
3
+ children: any;
4
+ }) => JSX.Element;
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ import { ApolloProvider as Apollo } from "@apollo/react-components";
3
+ export var createApolloProvider = function createApolloProvider(clientFactory) {
4
+ return function (Component) {
5
+ return function ApolloProvider(_ref) {
6
+ var children = _ref.children;
7
+ return /*#__PURE__*/React.createElement(Apollo, {
8
+ client: clientFactory({
9
+ uri: process.env.REACT_APP_GRAPHQL_API_URL
10
+ })
11
+ }, /*#__PURE__*/React.createElement(Component, null, children));
12
+ };
13
+ };
14
+ };
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ export declare const createTelemetryProvider: () => (Component: any) => ({ children }: {
3
+ children: any;
4
+ }) => JSX.Element;
@@ -0,0 +1,19 @@
1
+ import React, { useEffect } from "react";
2
+ import { sendEvent } from "@webiny/telemetry/react";
3
+ var eventSent = false;
4
+ export var createTelemetryProvider = function createTelemetryProvider() {
5
+ return function (Component) {
6
+ return function TelemetryProvider(_ref) {
7
+ var children = _ref.children;
8
+ useEffect(function () {
9
+ if (eventSent) {
10
+ return;
11
+ }
12
+
13
+ eventSent = true;
14
+ sendEvent("app-start");
15
+ }, []);
16
+ return /*#__PURE__*/React.createElement(Component, null, children);
17
+ };
18
+ };
19
+ };
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ export declare const createUiStateProvider: () => (Component: React.ComponentType<unknown>) => ({ children }: {
3
+ children: any;
4
+ }) => JSX.Element;
@@ -0,0 +1,10 @@
1
+ import React from "react";
2
+ import { UiProvider } from "@webiny/app/contexts/Ui";
3
+ export var createUiStateProvider = function createUiStateProvider() {
4
+ return function (Component) {
5
+ return function UiStateProvider(_ref) {
6
+ var children = _ref.children;
7
+ return /*#__PURE__*/React.createElement(UiProvider, null, /*#__PURE__*/React.createElement(Component, null, children));
8
+ };
9
+ };
10
+ };
@@ -0,0 +1,18 @@
1
+ import React from "react";
2
+ export interface ViewElement {
3
+ name: string;
4
+ elements: JSX.Element[];
5
+ [key: string]: any;
6
+ }
7
+ interface ElementSetter {
8
+ (element: ViewElement): ViewElement;
9
+ }
10
+ export interface ViewCompositionContext {
11
+ getViewElement(view: string, name: string): ViewElement;
12
+ setViewElement(view: string, name: string, setter: ElementSetter): any;
13
+ }
14
+ export declare function useViewComposition(): ViewCompositionContext;
15
+ export declare const createViewCompositionProvider: () => (Component: React.ComponentType<unknown>) => ({ children }: {
16
+ children: any;
17
+ }) => JSX.Element;
18
+ export {};
@@ -0,0 +1,44 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
3
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
+ import React, { createContext, useContext, useMemo, useState } from "react";
5
+ var ViewCompositionContext = /*#__PURE__*/createContext(null);
6
+ ViewCompositionContext.displayName = "ViewCompositionContext";
7
+
8
+ var ViewCompositionProvider = function ViewCompositionProvider(_ref) {
9
+ var children = _ref.children;
10
+
11
+ var _useState = useState({}),
12
+ _useState2 = _slicedToArray(_useState, 2),
13
+ state = _useState2[0],
14
+ setState = _useState2[1];
15
+
16
+ var context = useMemo(function () {
17
+ return {
18
+ getViewElement: function getViewElement(view, name) {
19
+ return state[view] && state[view][name];
20
+ },
21
+ setViewElement: function setViewElement(view, name, setter) {
22
+ setState(function (state) {
23
+ var existing = state[view] && state[view][name];
24
+ return _objectSpread(_objectSpread({}, state), {}, _defineProperty({}, view, _objectSpread(_objectSpread({}, state[view]), {}, _defineProperty({}, name, setter(existing)))));
25
+ });
26
+ }
27
+ };
28
+ }, [state]);
29
+ return /*#__PURE__*/React.createElement(ViewCompositionContext.Provider, {
30
+ value: context
31
+ }, children);
32
+ };
33
+
34
+ export function useViewComposition() {
35
+ return useContext(ViewCompositionContext);
36
+ }
37
+ export var createViewCompositionProvider = function createViewCompositionProvider() {
38
+ return function (Component) {
39
+ return function ViewCompositionProviderHOC(_ref2) {
40
+ var children = _ref2.children;
41
+ return /*#__PURE__*/React.createElement(ViewCompositionProvider, null, /*#__PURE__*/React.createElement(Component, null, children));
42
+ };
43
+ };
44
+ };
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ export declare const Brand: React.FC<unknown> & {
3
+ original: React.ComponentType<unknown>;
4
+ originalName: string;
5
+ };
6
+ export declare const BrandRenderer: React.FC<unknown> & {
7
+ original: React.ComponentType<unknown>;
8
+ originalName: string;
9
+ };
@@ -0,0 +1,6 @@
1
+ import React from "react";
2
+ import { makeComposable } from "@webiny/app-admin-core";
3
+ export var Brand = makeComposable("Brand", function () {
4
+ return /*#__PURE__*/React.createElement(BrandRenderer, null);
5
+ });
6
+ export var BrandRenderer = makeComposable("BrandRenderer");
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ export interface CenteredViewProps {
3
+ maxWidth?: number | string;
4
+ }
5
+ export declare const CenteredView: React.FC<CenteredViewProps> & {
6
+ original: React.ComponentType<CenteredViewProps>;
7
+ originalName: string;
8
+ };
@@ -0,0 +1,27 @@
1
+ import React from "react";
2
+ import styled from "@emotion/styled";
3
+ import { makeComposable } from "../..";
4
+ var Container = /*#__PURE__*/styled("div", {
5
+ target: "e1bmfqk40",
6
+ label: "Container"
7
+ })({
8
+ display: "flex",
9
+ justifyContent: "center"
10
+ });
11
+ var Width = /*#__PURE__*/styled("div", {
12
+ target: "e1bmfqk41",
13
+ label: "Width"
14
+ })(function (props) {
15
+ return {
16
+ maxWidth: props.maxWidth,
17
+ width: "100%"
18
+ };
19
+ });
20
+ export var CenteredView = makeComposable("CenteredView", function (_ref) {
21
+ var _ref$maxWidth = _ref.maxWidth,
22
+ maxWidth = _ref$maxWidth === void 0 ? 700 : _ref$maxWidth,
23
+ children = _ref.children;
24
+ return /*#__PURE__*/React.createElement(Container, null, /*#__PURE__*/React.createElement(Width, {
25
+ maxWidth: maxWidth
26
+ }, children));
27
+ });
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ export declare const Dashboard: React.FC<unknown> & {
3
+ original: React.ComponentType<unknown>;
4
+ originalName: string;
5
+ };
6
+ export declare const DashboardRenderer: React.FC<unknown> & {
7
+ original: React.ComponentType<unknown>;
8
+ originalName: string;
9
+ };
@@ -0,0 +1,6 @@
1
+ import React from "react";
2
+ import { makeComposable } from "@webiny/app-admin-core";
3
+ export var Dashboard = makeComposable("Dashboard", function () {
4
+ return /*#__PURE__*/React.createElement(DashboardRenderer, null);
5
+ });
6
+ export var DashboardRenderer = makeComposable("DashboardRenderer");
@@ -0,0 +1,13 @@
1
+ import React from "react";
2
+ export interface LayoutProps {
3
+ title?: string;
4
+ children: React.ReactNode;
5
+ }
6
+ export declare const Layout: React.FC<LayoutProps> & {
7
+ original: React.ComponentType<LayoutProps>;
8
+ originalName: string;
9
+ };
10
+ export declare const LayoutRenderer: React.FC<LayoutProps> & {
11
+ original: React.ComponentType<LayoutProps>;
12
+ originalName: string;
13
+ };
@@ -0,0 +1,11 @@
1
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
+ var _excluded = ["children"];
3
+ import React from "react";
4
+ import { makeComposable } from "@webiny/app-admin-core";
5
+ export var Layout = makeComposable("Layout", function (_ref) {
6
+ var children = _ref.children,
7
+ props = _objectWithoutProperties(_ref, _excluded);
8
+
9
+ return /*#__PURE__*/React.createElement(LayoutRenderer, props, children);
10
+ });
11
+ export var LayoutRenderer = makeComposable("LayoutRenderer");
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ export declare const LocaleSelector: React.FC<unknown> & {
3
+ original: React.ComponentType<unknown>;
4
+ originalName: string;
5
+ };
6
+ export declare const LocaleSelectorRenderer: React.FC<unknown> & {
7
+ original: React.ComponentType<unknown>;
8
+ originalName: string;
9
+ };
@@ -0,0 +1,6 @@
1
+ import React from "react";
2
+ import { makeComposable } from "@webiny/app-admin-core";
3
+ export var LocaleSelector = makeComposable("LocaleSelector", function () {
4
+ return /*#__PURE__*/React.createElement(LocaleSelectorRenderer, null);
5
+ });
6
+ export var LocaleSelectorRenderer = makeComposable("LocaleSelectorRenderer");
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ export interface LoginScreenProps {
3
+ children: React.ReactNode;
4
+ }
5
+ export declare const LoginScreen: ({ children }: LoginScreenProps) => JSX.Element;
6
+ export declare const LoginScreenRenderer: React.FC<LoginScreenProps> & {
7
+ original: React.ComponentType<LoginScreenProps>;
8
+ originalName: string;
9
+ };
@@ -0,0 +1,12 @@
1
+ import React from "react";
2
+ import { makeComposable } from "@webiny/app-admin-core";
3
+ import { Tags } from "./Tags";
4
+ export var LoginScreen = function LoginScreen(_ref) {
5
+ var children = _ref.children;
6
+ return /*#__PURE__*/React.createElement(Tags, {
7
+ tags: {
8
+ location: "loginScreen"
9
+ }
10
+ }, /*#__PURE__*/React.createElement(LoginScreenRenderer, null, children));
11
+ };
12
+ export var LoginScreenRenderer = makeComposable("LoginScreenRenderer");
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ export declare const Logo: React.FC<unknown> & {
3
+ original: React.ComponentType<unknown>;
4
+ originalName: string;
5
+ };
6
+ export declare const LogoRenderer: React.FC<unknown> & {
7
+ original: React.ComponentType<unknown>;
8
+ originalName: string;
9
+ };
10
+ interface AddLogoProps {
11
+ logo: JSX.Element;
12
+ }
13
+ export declare const AddLogo: ({ logo }: AddLogoProps) => JSX.Element;
14
+ export {};
@@ -0,0 +1,20 @@
1
+ import React, { useMemo } from "react";
2
+ import { Compose, makeComposable } from "@webiny/app-admin-core";
3
+ export var Logo = makeComposable("Logo", function () {
4
+ return /*#__PURE__*/React.createElement(LogoRenderer, null);
5
+ });
6
+ export var LogoRenderer = makeComposable("LogoRenderer");
7
+ export var AddLogo = function AddLogo(_ref) {
8
+ var logo = _ref.logo;
9
+ var LogoHOC = useMemo(function () {
10
+ return function () {
11
+ return function Logo() {
12
+ return logo;
13
+ };
14
+ };
15
+ }, []);
16
+ return /*#__PURE__*/React.createElement(Compose, {
17
+ component: LogoRenderer,
18
+ with: LogoHOC
19
+ });
20
+ };
@@ -0,0 +1,35 @@
1
+ import React from "react";
2
+ export interface MenuContext {
3
+ menuItem: MenuData;
4
+ setMenu(id: string, props: MenuData): void;
5
+ }
6
+ export interface MenuProps {
7
+ name: string;
8
+ label?: string;
9
+ path?: string;
10
+ icon?: JSX.Element;
11
+ onClick?: () => void;
12
+ testId?: string;
13
+ tags?: string[];
14
+ target?: string;
15
+ rel?: string;
16
+ element?: JSX.Element;
17
+ children?: React.ReactNode | React.ReactNode[];
18
+ pin?: "first" | "last";
19
+ }
20
+ export interface MenuData extends MenuProps {
21
+ children: MenuData[];
22
+ }
23
+ /**
24
+ * Register a new menu item into the Admin app.
25
+ *
26
+ * @param children
27
+ * @param props
28
+ * @constructor
29
+ */
30
+ export declare const AddMenu: {
31
+ ({ children, ...props }: MenuProps): JSX.Element;
32
+ defaultProps: {
33
+ tags: any[];
34
+ };
35
+ };
@@ -0,0 +1,80 @@
1
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
3
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
5
+ var _excluded = ["children"];
6
+ import React, { createContext, useState, useContext, useEffect } from "react";
7
+ import { set } from "dot-prop-immutable";
8
+ import { useNavigation } from "../..";
9
+ var MenuContext = /*#__PURE__*/createContext(null);
10
+ MenuContext.displayName = "MenuContext";
11
+
12
+ var useMenu = function useMenu() {
13
+ return useContext(MenuContext);
14
+ };
15
+
16
+ /**
17
+ * Register a new menu item into the Admin app.
18
+ *
19
+ * @param children
20
+ * @param props
21
+ * @constructor
22
+ */
23
+ export var AddMenu = function AddMenu(_ref) {
24
+ var children = _ref.children,
25
+ props = _objectWithoutProperties(_ref, _excluded);
26
+
27
+ var _useState = useState(_objectSpread(_objectSpread({}, props), {}, {
28
+ children: []
29
+ })),
30
+ _useState2 = _slicedToArray(_useState, 2),
31
+ state = _useState2[0],
32
+ setState = _useState2[1];
33
+
34
+ var menu = useMenu();
35
+ var navigation = useNavigation();
36
+ useEffect(function () {
37
+ if (menu) {
38
+ menu.setMenu(state.name, state);
39
+ } else {
40
+ navigation.setMenu(state.name, state);
41
+ }
42
+ }, [state]);
43
+ useEffect(function () {
44
+ return function () {
45
+ return navigation.removeMenu(state.name);
46
+ };
47
+ }, []);
48
+ var context = {
49
+ setMenu: function setMenu(name, props) {
50
+ setState(function (menu) {
51
+ var childIndex = menu.children.findIndex(function (ch) {
52
+ return ch.name === name;
53
+ });
54
+
55
+ if (childIndex === -1) {
56
+ return _objectSpread(_objectSpread({}, menu), {}, {
57
+ children: [].concat(_toConsumableArray(menu.children), [_objectSpread({}, props)])
58
+ });
59
+ }
60
+
61
+ return _objectSpread(_objectSpread({}, menu), {}, {
62
+ children: set(menu.children, childIndex, function (curr) {
63
+ return _objectSpread(_objectSpread({}, curr), props);
64
+ })
65
+ });
66
+ });
67
+ }
68
+ };
69
+
70
+ if (!children) {
71
+ return null;
72
+ }
73
+
74
+ return /*#__PURE__*/React.createElement(MenuContext.Provider, {
75
+ value: context
76
+ }, children);
77
+ };
78
+ AddMenu.defaultProps = {
79
+ tags: []
80
+ };
@@ -0,0 +1,35 @@
1
+ import React from "react";
2
+ import { MenuData, MenuProps } from "../../index";
3
+ export interface NavigationContext {
4
+ menuItems: MenuData[];
5
+ setMenu(id: string, props: MenuProps): void;
6
+ removeMenu(id: string): void;
7
+ }
8
+ export declare function useNavigation(): NavigationContext;
9
+ export declare const NavigationProvider: (Component: React.ComponentType<unknown>) => ({ children }: {
10
+ children: any;
11
+ }) => JSX.Element;
12
+ export declare const Navigation: () => JSX.Element;
13
+ export declare const NavigationRenderer: React.FC<unknown> & {
14
+ original: React.ComponentType<unknown>;
15
+ originalName: string;
16
+ };
17
+ interface MenuItemContext {
18
+ menuItem: MenuData;
19
+ depth: number;
20
+ }
21
+ declare const MenuItemContext: React.Context<MenuItemContext>;
22
+ export declare function useMenuItem(): MenuItemContext;
23
+ export interface MenuItemsProps {
24
+ menuItems: MenuData[];
25
+ }
26
+ export declare const MenuItems: React.FC<MenuItemsProps> & {
27
+ original: React.ComponentType<MenuItemsProps>;
28
+ originalName: string;
29
+ };
30
+ export declare const MenuItem: () => JSX.Element;
31
+ export declare const MenuItemRenderer: React.FC<unknown> & {
32
+ original: React.ComponentType<unknown>;
33
+ originalName: string;
34
+ };
35
+ export {};