@webiny/app-website-builder-workflows 0.0.0-unstable.6f45466a1d → 0.0.0-unstable.7c2def32a7

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 (86) hide show
  1. package/Components/OptionItem/OpenInNewWindow.js +26 -33
  2. package/Components/OptionItem/OpenInNewWindow.js.map +1 -1
  3. package/Components/OptionItem/index.js +0 -2
  4. package/Components/PageEditor/PageEditorAutoSave.js +16 -27
  5. package/Components/PageEditor/PageEditorAutoSave.js.map +1 -1
  6. package/Components/PageEditor/PageEditorConfig.js +6 -10
  7. package/Components/PageEditor/PageEditorConfig.js.map +1 -1
  8. package/Components/PageEditor/PageEditorTopBar.d.ts +2 -0
  9. package/Components/PageEditor/PageEditorTopBar.js +28 -0
  10. package/Components/PageEditor/PageEditorTopBar.js.map +1 -0
  11. package/Components/PageEditor/PageFormWorkflowState.d.ts +3 -1
  12. package/Components/PageEditor/PageFormWorkflowState.js +16 -34
  13. package/Components/PageEditor/PageFormWorkflowState.js.map +1 -1
  14. package/Components/PageEditor/PageFormWorkflowStatePublishButton.js +17 -28
  15. package/Components/PageEditor/PageFormWorkflowStatePublishButton.js.map +1 -1
  16. package/Components/PageEditor/PageFormWorkflowStateTooltip.js +10 -19
  17. package/Components/PageEditor/PageFormWorkflowStateTooltip.js.map +1 -1
  18. package/Components/PageEditor/ToggleEditorMode.d.ts +3 -0
  19. package/Components/PageEditor/ToggleEditorMode.js +21 -0
  20. package/Components/PageEditor/ToggleEditorMode.js.map +1 -0
  21. package/Components/PageWorkflows/PageWorkflowsEditorView.js +44 -50
  22. package/Components/PageWorkflows/PageWorkflowsEditorView.js.map +1 -1
  23. package/Components/PageWorkflows/index.js +0 -2
  24. package/Components/PagesList/PageListChangeStatus.js +17 -25
  25. package/Components/PagesList/PageListChangeStatus.js.map +1 -1
  26. package/Components/PagesList/PagesList.js +3 -4
  27. package/Components/PagesList/PagesList.js.map +1 -1
  28. package/Components/PagesList/PagesListContentReviews.js +19 -35
  29. package/Components/PagesList/PagesListContentReviews.js.map +1 -1
  30. package/Components/PagesList/index.js +0 -2
  31. package/Components/index.d.ts +0 -1
  32. package/Components/index.js +0 -3
  33. package/Routes/WebsiteBuilderWorkflowsMenu.js +23 -26
  34. package/Routes/WebsiteBuilderWorkflowsMenu.js.map +1 -1
  35. package/Routes/index.js +0 -2
  36. package/constants.js +2 -1
  37. package/constants.js.map +1 -1
  38. package/hooks/usePage.js +12 -17
  39. package/hooks/usePage.js.map +1 -1
  40. package/index.d.ts +1 -1
  41. package/index.js +14 -8
  42. package/index.js.map +1 -1
  43. package/package.json +25 -21
  44. package/presentation/page/PageGet/WorkflowStatesGetPageGraphQLFieldSelection.js +11 -8
  45. package/presentation/page/PageGet/WorkflowStatesGetPageGraphQLFieldSelection.js.map +1 -1
  46. package/presentation/page/PageGet/feature.js +6 -5
  47. package/presentation/page/PageGet/feature.js.map +1 -1
  48. package/presentation/page/PageList/TableRowMapperDecorator.d.ts +12 -0
  49. package/presentation/page/PageList/TableRowMapperDecorator.js +24 -0
  50. package/presentation/page/PageList/TableRowMapperDecorator.js.map +1 -0
  51. package/presentation/page/PageList/WorkflowStateListPagesFieldSelection.d.ts +2 -2
  52. package/presentation/page/PageList/WorkflowStateListPagesFieldSelection.js +12 -9
  53. package/presentation/page/PageList/WorkflowStateListPagesFieldSelection.js.map +1 -1
  54. package/presentation/page/PageList/feature.js +8 -7
  55. package/presentation/page/PageList/feature.js.map +1 -1
  56. package/presentation/page/RevisionList/RevisionListPresenterDecorator.d.ts +21 -0
  57. package/presentation/page/RevisionList/RevisionListPresenterDecorator.js +28 -0
  58. package/presentation/page/RevisionList/RevisionListPresenterDecorator.js.map +1 -0
  59. package/presentation/page/RevisionList/feature.d.ts +1 -0
  60. package/presentation/page/RevisionList/feature.js +11 -0
  61. package/presentation/page/RevisionList/feature.js.map +1 -0
  62. package/routes.js +15 -16
  63. package/routes.js.map +1 -1
  64. package/types.d.ts +8 -12
  65. package/types.js +0 -3
  66. package/Components/OptionItem/index.js.map +0 -1
  67. package/Components/PageEditor/PageEditorLayout.d.ts +0 -2
  68. package/Components/PageEditor/PageEditorLayout.js +0 -39
  69. package/Components/PageEditor/PageEditorLayout.js.map +0 -1
  70. package/Components/PageEditor/PageEditorSettings.d.ts +0 -2
  71. package/Components/PageEditor/PageEditorSettings.js +0 -30
  72. package/Components/PageEditor/PageEditorSettings.js.map +0 -1
  73. package/Components/PageEditor/PageEditorSidebar.d.ts +0 -2
  74. package/Components/PageEditor/PageEditorSidebar.js +0 -17
  75. package/Components/PageEditor/PageEditorSidebar.js.map +0 -1
  76. package/Components/PageEditor/PageEditorToolbar.d.ts +0 -2
  77. package/Components/PageEditor/PageEditorToolbar.js +0 -17
  78. package/Components/PageEditor/PageEditorToolbar.js.map +0 -1
  79. package/Components/PageWorkflows/index.js.map +0 -1
  80. package/Components/PagesList/index.js.map +0 -1
  81. package/Components/index.js.map +0 -1
  82. package/Routes/index.js.map +0 -1
  83. package/presentation/page/PageList/PageListPresenterDecorator.d.ts +0 -13
  84. package/presentation/page/PageList/PageListPresenterDecorator.js +0 -42
  85. package/presentation/page/PageList/PageListPresenterDecorator.js.map +0 -1
  86. package/types.js.map +0 -1
@@ -1,41 +1,34 @@
1
- import React, { useCallback } from "react";
1
+ import react, { useCallback } from "react";
2
2
  import { DropdownMenu, Icon } from "@webiny/admin-ui";
3
3
  import { Components } from "@webiny/app-workflows";
4
- import { ReactComponent as OpenInNewIcon } from "@webiny/icons/open_in_new.svg";
4
+ import { ReactComponent } from "@webiny/icons/open_in_new.svg";
5
5
  import { useRouter } from "@webiny/app";
6
6
  import { Routes } from "@webiny/app-website-builder/routes.js";
7
7
  import { WB_PAGE_APP } from "../../constants.js";
8
- const {
9
- OpenInNewWindow
10
- } = Components.List.Options;
11
- export const ListOpenInNewWindow = OpenInNewWindow.createDecorator(Original => {
12
- return function ListOpenInNewWindow(props) {
13
- const {
14
- state
15
- } = props;
16
- const {
17
- getLink
18
- } = useRouter();
19
- const onClick = useCallback(() => {
20
- const url = getLink(Routes.Pages.Editor, {
21
- id: state.targetRevisionId,
22
- folderId: "root"
23
- });
24
- const goTo = `${window.location.origin}${url}`;
25
- window.open(goTo, "_blank");
26
- }, [state.id]);
27
- if (state.app !== WB_PAGE_APP) {
28
- return /*#__PURE__*/React.createElement(Original, props);
29
- }
30
- return /*#__PURE__*/React.createElement(DropdownMenu.Item, {
31
- icon: /*#__PURE__*/React.createElement(Icon, {
32
- icon: /*#__PURE__*/React.createElement(OpenInNewIcon, null),
33
- label: "Open In New Window"
34
- }),
35
- text: "Open in New Window",
36
- onClick: onClick
8
+ const { OpenInNewWindow: OpenInNewWindow } = Components.List.Options;
9
+ const OpenInNewWindow_ListOpenInNewWindow = OpenInNewWindow.createDecorator((Original)=>function(props) {
10
+ const { state } = props;
11
+ const { getLink } = useRouter();
12
+ const onClick = useCallback(()=>{
13
+ const url = getLink(Routes.Pages.Editor, {
14
+ id: state.targetRevisionId,
15
+ folderId: "root"
16
+ });
17
+ const goTo = `${window.location.origin}${url}`;
18
+ window.open(goTo, "_blank");
19
+ }, [
20
+ state.id
21
+ ]);
22
+ if (state.app !== WB_PAGE_APP) return /*#__PURE__*/ react.createElement(Original, props);
23
+ return /*#__PURE__*/ react.createElement(DropdownMenu.Item, {
24
+ icon: /*#__PURE__*/ react.createElement(Icon, {
25
+ icon: /*#__PURE__*/ react.createElement(ReactComponent, null),
26
+ label: "Open In New Window"
27
+ }),
28
+ text: "Open in New Window",
29
+ onClick: onClick
30
+ });
37
31
  });
38
- };
39
- });
32
+ export { OpenInNewWindow_ListOpenInNewWindow as ListOpenInNewWindow };
40
33
 
41
34
  //# sourceMappingURL=OpenInNewWindow.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","DropdownMenu","Icon","Components","ReactComponent","OpenInNewIcon","useRouter","Routes","WB_PAGE_APP","OpenInNewWindow","List","Options","ListOpenInNewWindow","createDecorator","Original","props","state","getLink","onClick","url","Pages","Editor","id","targetRevisionId","folderId","goTo","window","location","origin","open","app","createElement","Item","icon","label","text"],"sources":["OpenInNewWindow.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { DropdownMenu, Icon } from \"@webiny/admin-ui\";\nimport { Components } from \"@webiny/app-workflows\";\nimport { ReactComponent as OpenInNewIcon } from \"@webiny/icons/open_in_new.svg\";\nimport { useRouter } from \"@webiny/app\";\nimport { Routes } from \"@webiny/app-website-builder/routes.js\";\nimport { WB_PAGE_APP } from \"~/constants.js\";\n\nconst { OpenInNewWindow } = Components.List.Options;\n\nexport const ListOpenInNewWindow = OpenInNewWindow.createDecorator(Original => {\n return function ListOpenInNewWindow(props) {\n const { state } = props;\n\n const { getLink } = useRouter();\n const onClick = useCallback(() => {\n const url = getLink(Routes.Pages.Editor, {\n id: state.targetRevisionId,\n folderId: \"root\"\n });\n\n const goTo = `${window.location.origin}${url}`;\n\n window.open(goTo, \"_blank\");\n }, [state.id]);\n\n if (state.app !== WB_PAGE_APP) {\n return <Original {...props} />;\n }\n\n return (\n <DropdownMenu.Item\n icon={<Icon icon={<OpenInNewIcon />} label={\"Open In New Window\"} />}\n text={\"Open in New Window\"}\n onClick={onClick}\n />\n );\n };\n});\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,WAAW,QAAQ,OAAO;AAC1C,SAASC,YAAY,EAAEC,IAAI,QAAQ,kBAAkB;AACrD,SAASC,UAAU,QAAQ,uBAAuB;AAClD,SAASC,cAAc,IAAIC,aAAa,QAAQ,+BAA+B;AAC/E,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,MAAM,QAAQ,uCAAuC;AAC9D,SAASC,WAAW;AAEpB,MAAM;EAAEC;AAAgB,CAAC,GAAGN,UAAU,CAACO,IAAI,CAACC,OAAO;AAEnD,OAAO,MAAMC,mBAAmB,GAAGH,eAAe,CAACI,eAAe,CAACC,QAAQ,IAAI;EAC3E,OAAO,SAASF,mBAAmBA,CAACG,KAAK,EAAE;IACvC,MAAM;MAAEC;IAAM,CAAC,GAAGD,KAAK;IAEvB,MAAM;MAAEE;IAAQ,CAAC,GAAGX,SAAS,CAAC,CAAC;IAC/B,MAAMY,OAAO,GAAGlB,WAAW,CAAC,MAAM;MAC9B,MAAMmB,GAAG,GAAGF,OAAO,CAACV,MAAM,CAACa,KAAK,CAACC,MAAM,EAAE;QACrCC,EAAE,EAAEN,KAAK,CAACO,gBAAgB;QAC1BC,QAAQ,EAAE;MACd,CAAC,CAAC;MAEF,MAAMC,IAAI,GAAG,GAAGC,MAAM,CAACC,QAAQ,CAACC,MAAM,GAAGT,GAAG,EAAE;MAE9CO,MAAM,CAACG,IAAI,CAACJ,IAAI,EAAE,QAAQ,CAAC;IAC/B,CAAC,EAAE,CAACT,KAAK,CAACM,EAAE,CAAC,CAAC;IAEd,IAAIN,KAAK,CAACc,GAAG,KAAKtB,WAAW,EAAE;MAC3B,oBAAOT,KAAA,CAAAgC,aAAA,CAACjB,QAAQ,EAAKC,KAAQ,CAAC;IAClC;IAEA,oBACIhB,KAAA,CAAAgC,aAAA,CAAC9B,YAAY,CAAC+B,IAAI;MACdC,IAAI,eAAElC,KAAA,CAAAgC,aAAA,CAAC7B,IAAI;QAAC+B,IAAI,eAAElC,KAAA,CAAAgC,aAAA,CAAC1B,aAAa,MAAE,CAAE;QAAC6B,KAAK,EAAE;MAAqB,CAAE,CAAE;MACrEC,IAAI,EAAE,oBAAqB;MAC3BjB,OAAO,EAAEA;IAAQ,CACpB,CAAC;EAEV,CAAC;AACL,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Components/OptionItem/OpenInNewWindow.js","sources":["../../../src/Components/OptionItem/OpenInNewWindow.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { DropdownMenu, Icon } from \"@webiny/admin-ui\";\nimport { Components } from \"@webiny/app-workflows\";\nimport { ReactComponent as OpenInNewIcon } from \"@webiny/icons/open_in_new.svg\";\nimport { useRouter } from \"@webiny/app\";\nimport { Routes } from \"@webiny/app-website-builder/routes.js\";\nimport { WB_PAGE_APP } from \"~/constants.js\";\n\nconst { OpenInNewWindow } = Components.List.Options;\n\nexport const ListOpenInNewWindow = OpenInNewWindow.createDecorator(Original => {\n return function ListOpenInNewWindow(props) {\n const { state } = props;\n\n const { getLink } = useRouter();\n const onClick = useCallback(() => {\n const url = getLink(Routes.Pages.Editor, {\n id: state.targetRevisionId,\n folderId: \"root\"\n });\n\n const goTo = `${window.location.origin}${url}`;\n\n window.open(goTo, \"_blank\");\n }, [state.id]);\n\n if (state.app !== WB_PAGE_APP) {\n return <Original {...props} />;\n }\n\n return (\n <DropdownMenu.Item\n icon={<Icon icon={<OpenInNewIcon />} label={\"Open In New Window\"} />}\n text={\"Open in New Window\"}\n onClick={onClick}\n />\n );\n };\n});\n"],"names":["OpenInNewWindow","Components","ListOpenInNewWindow","Original","props","state","getLink","useRouter","onClick","useCallback","url","Routes","goTo","window","WB_PAGE_APP","DropdownMenu","Icon","OpenInNewIcon"],"mappings":";;;;;;;AAQA,MAAM,EAAEA,iBAAAA,eAAe,EAAE,GAAGC,WAAW,IAAI,CAAC,OAAO;AAE5C,MAAMC,sCAAsBF,gBAAgB,eAAe,CAACG,CAAAA,WACxD,SAA6BC,KAAK;QACrC,MAAM,EAAEC,KAAK,EAAE,GAAGD;QAElB,MAAM,EAAEE,OAAO,EAAE,GAAGC;QACpB,MAAMC,UAAUC,YAAY;YACxB,MAAMC,MAAMJ,QAAQK,OAAO,KAAK,CAAC,MAAM,EAAE;gBACrC,IAAIN,MAAM,gBAAgB;gBAC1B,UAAU;YACd;YAEA,MAAMO,OAAO,GAAGC,OAAO,QAAQ,CAAC,MAAM,GAAGH,KAAK;YAE9CG,OAAO,IAAI,CAACD,MAAM;QACtB,GAAG;YAACP,MAAM,EAAE;SAAC;QAEb,IAAIA,MAAM,GAAG,KAAKS,aACd,OAAO,WAAP,GAAO,oBAACX,UAAaC;QAGzB,OAAO,WAAP,GACI,oBAACW,aAAa,IAAI;YACd,oBAAM,oBAACC,MAAIA;gBAAC,oBAAM,oBAACC,gBAAaA;gBAAK,OAAO;;YAC5C,MAAM;YACN,SAAST;;IAGrB"}
@@ -1,3 +1 @@
1
1
  export { ListOpenInNewWindow } from "./OpenInNewWindow.js";
2
-
3
- //# sourceMappingURL=index.js.map
@@ -1,33 +1,22 @@
1
- import React from "react";
1
+ import react from "react";
2
2
  import { PageEditorConfig } from "@webiny/app-website-builder";
3
3
  import { useWorkflowState } from "@webiny/app-workflows";
4
4
  import { observer } from "mobx-react-lite";
5
- const {
6
- Ui
7
- } = PageEditorConfig;
8
- const WrappedAutoSave = observer(props => {
9
- const {
10
- presenter
11
- } = useWorkflowState();
12
- /**
13
- * Autosave should work only when the page does not have a workflow state assigned.
14
- */
15
- if (!presenter.vm.state?.state) {
16
- return props.element;
17
- }
18
- return null;
19
- });
20
- export const PageEditorAutoSave = Ui.TopBar.Element.createDecorator(Original => {
21
- return function PageEditorAutoSaveDecorated(props) {
22
- if (props.name === "autoSave") {
23
- return /*#__PURE__*/React.createElement(Original, Object.assign({}, props, {
24
- element: /*#__PURE__*/React.createElement(WrappedAutoSave, {
25
- element: props.element
26
- })
27
- }));
28
- }
29
- return /*#__PURE__*/React.createElement(Original, props);
30
- };
5
+ const { Ui: Ui } = PageEditorConfig;
6
+ const WrappedAutoSave = observer((props)=>{
7
+ const { presenter } = useWorkflowState();
8
+ if (!presenter.vm.hasState) return props.element;
9
+ return null;
31
10
  });
11
+ const PageEditorAutoSave = Ui.TopBar.Element.createDecorator((Original)=>function(props) {
12
+ if ("autoSave" === props.name) return /*#__PURE__*/ react.createElement(Original, {
13
+ ...props,
14
+ element: /*#__PURE__*/ react.createElement(WrappedAutoSave, {
15
+ element: props.element
16
+ })
17
+ });
18
+ return /*#__PURE__*/ react.createElement(Original, props);
19
+ });
20
+ export { PageEditorAutoSave };
32
21
 
33
22
  //# sourceMappingURL=PageEditorAutoSave.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","PageEditorConfig","useWorkflowState","observer","Ui","WrappedAutoSave","props","presenter","vm","state","element","PageEditorAutoSave","TopBar","Element","createDecorator","Original","PageEditorAutoSaveDecorated","name","createElement","Object","assign"],"sources":["PageEditorAutoSave.tsx"],"sourcesContent":["import React from \"react\";\nimport { PageEditorConfig } from \"@webiny/app-website-builder\";\nimport { useWorkflowState } from \"@webiny/app-workflows\";\nimport { observer } from \"mobx-react-lite\";\n\nconst { Ui } = PageEditorConfig;\n\ninterface IWrappedAutoSave {\n element?: React.ReactElement | null;\n}\nconst WrappedAutoSave = observer((props: IWrappedAutoSave) => {\n const { presenter } = useWorkflowState();\n /**\n * Autosave should work only when the page does not have a workflow state assigned.\n */\n if (!presenter.vm.state?.state) {\n return props.element;\n }\n\n return null;\n});\n\nexport const PageEditorAutoSave = Ui.TopBar.Element.createDecorator(Original => {\n return function PageEditorAutoSaveDecorated(props) {\n if (props.name === \"autoSave\") {\n return <Original {...props} element={<WrappedAutoSave element={props.element} />} />;\n }\n return <Original {...props} />;\n };\n});\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,gBAAgB,QAAQ,6BAA6B;AAC9D,SAASC,gBAAgB,QAAQ,uBAAuB;AACxD,SAASC,QAAQ,QAAQ,iBAAiB;AAE1C,MAAM;EAAEC;AAAG,CAAC,GAAGH,gBAAgB;AAK/B,MAAMI,eAAe,GAAGF,QAAQ,CAAEG,KAAuB,IAAK;EAC1D,MAAM;IAAEC;EAAU,CAAC,GAAGL,gBAAgB,CAAC,CAAC;EACxC;AACJ;AACA;EACI,IAAI,CAACK,SAAS,CAACC,EAAE,CAACC,KAAK,EAAEA,KAAK,EAAE;IAC5B,OAAOH,KAAK,CAACI,OAAO;EACxB;EAEA,OAAO,IAAI;AACf,CAAC,CAAC;AAEF,OAAO,MAAMC,kBAAkB,GAAGP,EAAE,CAACQ,MAAM,CAACC,OAAO,CAACC,eAAe,CAACC,QAAQ,IAAI;EAC5E,OAAO,SAASC,2BAA2BA,CAACV,KAAK,EAAE;IAC/C,IAAIA,KAAK,CAACW,IAAI,KAAK,UAAU,EAAE;MAC3B,oBAAOjB,KAAA,CAAAkB,aAAA,CAACH,QAAQ,EAAAI,MAAA,CAAAC,MAAA,KAAKd,KAAK;QAAEI,OAAO,eAAEV,KAAA,CAAAkB,aAAA,CAACb,eAAe;UAACK,OAAO,EAAEJ,KAAK,CAACI;QAAQ,CAAE;MAAE,EAAE,CAAC;IACxF;IACA,oBAAOV,KAAA,CAAAkB,aAAA,CAACH,QAAQ,EAAKT,KAAQ,CAAC;EAClC,CAAC;AACL,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Components/PageEditor/PageEditorAutoSave.js","sources":["../../../src/Components/PageEditor/PageEditorAutoSave.tsx"],"sourcesContent":["import React from \"react\";\nimport { PageEditorConfig } from \"@webiny/app-website-builder\";\nimport { useWorkflowState } from \"@webiny/app-workflows\";\nimport { observer } from \"mobx-react-lite\";\n\nconst { Ui } = PageEditorConfig;\n\ninterface IWrappedAutoSave {\n element?: React.ReactElement | null;\n}\nconst WrappedAutoSave = observer((props: IWrappedAutoSave) => {\n const { presenter } = useWorkflowState();\n /**\n * Autosave should work only when the page does not have a workflow state assigned.\n */\n if (!presenter.vm.hasState) {\n return props.element;\n }\n\n return null;\n});\n\nexport const PageEditorAutoSave = Ui.TopBar.Element.createDecorator(Original => {\n return function PageEditorAutoSaveDecorated(props) {\n if (props.name === \"autoSave\") {\n return <Original {...props} element={<WrappedAutoSave element={props.element} />} />;\n }\n return <Original {...props} />;\n };\n});\n"],"names":["Ui","PageEditorConfig","WrappedAutoSave","observer","props","presenter","useWorkflowState","PageEditorAutoSave","Original"],"mappings":";;;;AAKA,MAAM,EAAEA,IAAAA,EAAE,EAAE,GAAGC;AAKf,MAAMC,kBAAkBC,SAAS,CAACC;IAC9B,MAAM,EAAEC,SAAS,EAAE,GAAGC;IAItB,IAAI,CAACD,UAAU,EAAE,CAAC,QAAQ,EACtB,OAAOD,MAAM,OAAO;IAGxB,OAAO;AACX;AAEO,MAAMG,qBAAqBP,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,CAACQ,CAAAA,WACzD,SAAqCJ,KAAK;QAC7C,IAAIA,AAAe,eAAfA,MAAM,IAAI,EACV,OAAO,WAAP,GAAO,oBAACI,UAAAA;YAAU,GAAGJ,KAAK;YAAE,uBAAS,oBAACF,iBAAeA;gBAAC,SAASE,MAAM,OAAO;;;QAEhF,OAAO,WAAP,GAAO,oBAACI,UAAaJ;IACzB"}
@@ -1,14 +1,10 @@
1
- import React from "react";
2
- import { PageEditorConfig as BaseConfig } from "@webiny/app-website-builder";
3
- import { PageEditorAutoSave } from "./PageEditorAutoSave.js";
4
- import { PageEditorSettings } from "./PageEditorSettings.js";
1
+ import react from "react";
2
+ import { PageEditorConfig } from "@webiny/app-website-builder";
5
3
  import { PageFormWorkflowStateTooltip } from "./PageFormWorkflowStateTooltip.js";
6
4
  import { PageFormWorkflowStatePublishButton } from "./PageFormWorkflowStatePublishButton.js";
7
- import { PageEditorLayout } from "./PageEditorLayout.js";
8
- import { PageEditorToolbar } from "./PageEditorToolbar.js";
9
- import { PageEditorSidebar } from "./PageEditorSidebar.js";
10
- export const PageEditorConfig = () => {
11
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(PageEditorLayout, null), /*#__PURE__*/React.createElement(BaseConfig, null, /*#__PURE__*/React.createElement(PageEditorAutoSave, null), /*#__PURE__*/React.createElement(PageEditorSettings, null), /*#__PURE__*/React.createElement(PageEditorToolbar, null), /*#__PURE__*/React.createElement(PageEditorSidebar, null), /*#__PURE__*/React.createElement(PageFormWorkflowStateTooltip, null), /*#__PURE__*/React.createElement(PageFormWorkflowStatePublishButton, null)));
12
- };
5
+ import { PageEditorTopBar } from "./PageEditorTopBar.js";
6
+ import { PageEditorAutoSave } from "./PageEditorAutoSave.js";
7
+ const PageEditorConfig_PageEditorConfig = ()=>/*#__PURE__*/ react.createElement(react.Fragment, null, /*#__PURE__*/ react.createElement(PageEditorTopBar, null), /*#__PURE__*/ react.createElement(PageEditorAutoSave, null), /*#__PURE__*/ react.createElement(PageEditorConfig, null, /*#__PURE__*/ react.createElement(PageFormWorkflowStateTooltip, null), /*#__PURE__*/ react.createElement(PageFormWorkflowStatePublishButton, null)));
8
+ export { PageEditorConfig_PageEditorConfig as PageEditorConfig };
13
9
 
14
10
  //# sourceMappingURL=PageEditorConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","PageEditorConfig","BaseConfig","PageEditorAutoSave","PageEditorSettings","PageFormWorkflowStateTooltip","PageFormWorkflowStatePublishButton","PageEditorLayout","PageEditorToolbar","PageEditorSidebar","createElement","Fragment"],"sources":["PageEditorConfig.tsx"],"sourcesContent":["import React from \"react\";\nimport { PageEditorConfig as BaseConfig } from \"@webiny/app-website-builder\";\nimport { PageEditorAutoSave } from \"./PageEditorAutoSave.js\";\nimport { PageEditorSettings } from \"./PageEditorSettings.js\";\nimport { PageFormWorkflowStateTooltip } from \"./PageFormWorkflowStateTooltip.js\";\nimport { PageFormWorkflowStatePublishButton } from \"./PageFormWorkflowStatePublishButton.js\";\nimport { PageEditorLayout } from \"./PageEditorLayout.js\";\nimport { PageEditorToolbar } from \"./PageEditorToolbar.js\";\nimport { PageEditorSidebar } from \"./PageEditorSidebar.js\";\n\nexport const PageEditorConfig = () => {\n return (\n <>\n <PageEditorLayout />\n <BaseConfig>\n {/* Should remove autosave feature */}\n <PageEditorAutoSave />\n {/* Should remove settings button */}\n <PageEditorSettings />\n {/* Should remove left bar in the editor */}\n <PageEditorToolbar />\n {/* Should remove right bar in the editor */}\n <PageEditorSidebar />\n {/* Should add a button with list of steps and their states + comment button in each row */}\n <PageFormWorkflowStateTooltip />\n {/* should remove publish button from the form */}\n <PageFormWorkflowStatePublishButton />\n </BaseConfig>\n </>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,gBAAgB,IAAIC,UAAU,QAAQ,6BAA6B;AAC5E,SAASC,kBAAkB;AAC3B,SAASC,kBAAkB;AAC3B,SAASC,4BAA4B;AACrC,SAASC,kCAAkC;AAC3C,SAASC,gBAAgB;AACzB,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAE1B,OAAO,MAAMR,gBAAgB,GAAGA,CAAA,KAAM;EAClC,oBACID,KAAA,CAAAU,aAAA,CAAAV,KAAA,CAAAW,QAAA,qBACIX,KAAA,CAAAU,aAAA,CAACH,gBAAgB,MAAE,CAAC,eACpBP,KAAA,CAAAU,aAAA,CAACR,UAAU,qBAEPF,KAAA,CAAAU,aAAA,CAACP,kBAAkB,MAAE,CAAC,eAEtBH,KAAA,CAAAU,aAAA,CAACN,kBAAkB,MAAE,CAAC,eAEtBJ,KAAA,CAAAU,aAAA,CAACF,iBAAiB,MAAE,CAAC,eAErBR,KAAA,CAAAU,aAAA,CAACD,iBAAiB,MAAE,CAAC,eAErBT,KAAA,CAAAU,aAAA,CAACL,4BAA4B,MAAE,CAAC,eAEhCL,KAAA,CAAAU,aAAA,CAACJ,kCAAkC,MAAE,CAC7B,CACd,CAAC;AAEX,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Components/PageEditor/PageEditorConfig.js","sources":["../../../src/Components/PageEditor/PageEditorConfig.tsx"],"sourcesContent":["import React from \"react\";\nimport { PageEditorConfig as BaseConfig } from \"@webiny/app-website-builder\";\nimport { PageFormWorkflowStateTooltip } from \"./PageFormWorkflowStateTooltip.js\";\nimport { PageFormWorkflowStatePublishButton } from \"./PageFormWorkflowStatePublishButton.js\";\nimport { PageEditorTopBar } from \"./PageEditorTopBar.js\";\nimport { PageEditorAutoSave } from \"./PageEditorAutoSave.js\";\n\nexport const PageEditorConfig = () => {\n return (\n <>\n {/* Toggle editor \"readonly\" mode, and add workflow alerts */}\n <PageEditorTopBar />\n <PageEditorAutoSave />\n <BaseConfig>\n {/* Should add a button with list of steps and their states + comment button in each row */}\n <PageFormWorkflowStateTooltip />\n {/* should remove publish button from the form */}\n <PageFormWorkflowStatePublishButton />\n </BaseConfig>\n </>\n );\n};\n"],"names":["PageEditorConfig","PageEditorTopBar","PageEditorAutoSave","BaseConfig","PageFormWorkflowStateTooltip","PageFormWorkflowStatePublishButton"],"mappings":";;;;;;AAOO,MAAMA,oCAAmB,IACrB,WAAP,GACI,wDAEI,oBAACC,kBAAgBA,OAAAA,WAAAA,GACjB,oBAACC,oBAAkBA,OAAAA,WAAAA,GACnB,oBAACC,kBAAUA,MAAAA,WAAAA,GAEP,oBAACC,8BAA4BA,OAAAA,WAAAA,GAE7B,oBAACC,oCAAkCA"}
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const PageEditorTopBar: (props: unknown) => React.JSX.Element;
@@ -0,0 +1,28 @@
1
+ import react, { useEffect } from "react";
2
+ import { PageEditorConfig } from "@webiny/app-website-builder";
3
+ import { useSelectFromDocument } from "@webiny/app-website-builder/BaseEditor/hooks/useSelectFromDocument.js";
4
+ import { useWorkflowState } from "@webiny/app-workflows";
5
+ import { WB_PAGE_APP } from "../../constants.js";
6
+ import { PageFormWorkflowState } from "./PageFormWorkflowState.js";
7
+ import { ToggleEditorMode } from "./ToggleEditorMode.js";
8
+ import { WbPageStatus } from "@webiny/app-website-builder/constants.js";
9
+ const { Ui: Ui } = PageEditorConfig;
10
+ const PageEditorTopBar = Ui.TopBar.Layout.createDecorator((Original)=>function() {
11
+ const page = useSelectFromDocument((doc)=>({
12
+ id: doc.id,
13
+ title: doc.properties.title || "unknown page",
14
+ status: doc.status || "draft"
15
+ }));
16
+ const { presenter } = useWorkflowState();
17
+ useEffect(()=>{
18
+ if (page.status === WbPageStatus.Draft) presenter.init(WB_PAGE_APP, page.id, `Website Builder: ${page.title}`);
19
+ return ()=>presenter.dispose();
20
+ }, [
21
+ page.id,
22
+ page.status
23
+ ]);
24
+ return /*#__PURE__*/ react.createElement(react.Fragment, null, /*#__PURE__*/ react.createElement(Original, null), /*#__PURE__*/ react.createElement(ToggleEditorMode, null), /*#__PURE__*/ react.createElement(PageFormWorkflowState, null));
25
+ });
26
+ export { PageEditorTopBar };
27
+
28
+ //# sourceMappingURL=PageEditorTopBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Components/PageEditor/PageEditorTopBar.js","sources":["../../../src/Components/PageEditor/PageEditorTopBar.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { PageEditorConfig } from \"@webiny/app-website-builder\";\nimport {\n type EditorDocument,\n useSelectFromDocument\n} from \"@webiny/app-website-builder/BaseEditor/hooks/useSelectFromDocument.js\";\nimport { useWorkflowState } from \"@webiny/app-workflows\";\nimport { WB_PAGE_APP } from \"~/constants.js\";\nimport { PageFormWorkflowState } from \"~/Components/PageEditor/PageFormWorkflowState.js\";\nimport { ToggleEditorMode } from \"~/Components/PageEditor/ToggleEditorMode.js\";\nimport { WbPageStatus, type WbStatus } from \"@webiny/app-website-builder/constants.js\";\n\nconst { Ui } = PageEditorConfig;\n\ninterface PageEditorTopBarEditorDocument extends EditorDocument {\n status: WbStatus;\n}\n\ninterface ISelectedPage {\n id: string;\n title: string;\n status: WbStatus;\n}\n\nexport const PageEditorTopBar = Ui.TopBar.Layout.createDecorator(Original => {\n return function PageEditorTopBarWorkflowsState() {\n const page = useSelectFromDocument<ISelectedPage, PageEditorTopBarEditorDocument>(doc => {\n return {\n id: doc.id,\n title: doc.properties.title || \"unknown page\",\n status: doc.status || \"draft\"\n };\n });\n\n const { presenter } = useWorkflowState();\n\n useEffect(() => {\n if (page.status === WbPageStatus.Draft) {\n presenter.init(WB_PAGE_APP, page.id, `Website Builder: ${page.title}`);\n }\n return () => presenter.dispose();\n }, [page.id, page.status]);\n\n return (\n <>\n <Original />\n <ToggleEditorMode />\n <PageFormWorkflowState />\n </>\n );\n };\n});\n"],"names":["Ui","PageEditorConfig","PageEditorTopBar","Original","page","useSelectFromDocument","doc","presenter","useWorkflowState","useEffect","WbPageStatus","WB_PAGE_APP","ToggleEditorMode","PageFormWorkflowState"],"mappings":";;;;;;;;AAYA,MAAM,EAAEA,IAAAA,EAAE,EAAE,GAAGC;AAYR,MAAMC,mBAAmBF,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAACG,CAAAA,WACtD;QACH,MAAMC,OAAOC,sBAAqEC,CAAAA,MACvE;gBACH,IAAIA,IAAI,EAAE;gBACV,OAAOA,IAAI,UAAU,CAAC,KAAK,IAAI;gBAC/B,QAAQA,IAAI,MAAM,IAAI;YAC1B;QAGJ,MAAM,EAAEC,SAAS,EAAE,GAAGC;QAEtBC,UAAU;YACN,IAAIL,KAAK,MAAM,KAAKM,aAAa,KAAK,EAClCH,UAAU,IAAI,CAACI,aAAaP,KAAK,EAAE,EAAE,CAAC,iBAAiB,EAAEA,KAAK,KAAK,EAAE;YAEzE,OAAO,IAAMG,UAAU,OAAO;QAClC,GAAG;YAACH,KAAK,EAAE;YAAEA,KAAK,MAAM;SAAC;QAEzB,OAAO,WAAP,GACI,wDACI,oBAACD,UAAAA,OAAAA,WAAAA,GACD,oBAACS,kBAAgBA,OAAAA,WAAAA,GACjB,oBAACC,uBAAqBA;IAGlC"}
@@ -1,2 +1,4 @@
1
1
  import React from "react";
2
- export declare const PageFormWorkflowState: () => React.JSX.Element;
2
+ export declare const PageFormWorkflowState: (() => React.JSX.Element) & React.NamedExoticComponent<unknown> & {
3
+ readonly type: () => React.JSX.Element;
4
+ };
@@ -1,36 +1,18 @@
1
- import React from "react";
2
- import { Components } from "@webiny/app-workflows";
3
- import { Alert, Grid } from "@webiny/admin-ui";
4
- const {
5
- ContentReview: {
6
- WorkflowStateBar
7
- }
8
- } = Components;
9
- const StoreAlert = ({
10
- state
11
- }) => {
12
- if (!state) {
13
- return null;
14
- }
15
- return /*#__PURE__*/React.createElement("div", {
16
- className: "max-w-screen bg-white p-sm"
17
- }, /*#__PURE__*/React.createElement(Grid, {
18
- className: "w-full"
19
- }, /*#__PURE__*/React.createElement(Grid.Column, {
20
- span: 12
21
- }, /*#__PURE__*/React.createElement(Alert, {
22
- className: "mb-md mt-md",
23
- type: "danger"
24
- }, "Any changes you do on the page will not be stored!"))));
25
- };
26
- export const PageFormWorkflowState = () => {
27
- return /*#__PURE__*/React.createElement(WorkflowStateBar, null, ({
28
- state
29
- }) => {
30
- return /*#__PURE__*/React.createElement(StoreAlert, {
31
- state: state
32
- });
33
- });
34
- };
1
+ import react from "react";
2
+ import { observer } from "mobx-react-lite";
3
+ import { Alert } from "@webiny/admin-ui";
4
+ import { Components, useWorkflowState } from "@webiny/app-workflows";
5
+ const { ContentReview: { WorkflowStateBar: WorkflowStateBar } } = Components;
6
+ const PageFormWorkflowState = observer(()=>{
7
+ const { presenter } = useWorkflowState();
8
+ return /*#__PURE__*/ react.createElement("div", {
9
+ className: "max-w-screen bg-white p-sm border-solid border-b-sm border-neutral-dimmed",
10
+ "data-affects-preview": "height"
11
+ }, /*#__PURE__*/ react.createElement(WorkflowStateBar, null), presenter.vm.hasState ? /*#__PURE__*/ react.createElement(Alert, {
12
+ type: "danger",
13
+ className: "mt-sm"
14
+ }, "Any changes you do on the page will not be stored!") : null);
15
+ });
16
+ export { PageFormWorkflowState };
35
17
 
36
18
  //# sourceMappingURL=PageFormWorkflowState.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","Components","Alert","Grid","ContentReview","WorkflowStateBar","StoreAlert","state","createElement","className","Column","span","type","PageFormWorkflowState"],"sources":["PageFormWorkflowState.tsx"],"sourcesContent":["import React from \"react\";\nimport { Components } from \"@webiny/app-workflows\";\nimport { Alert, Grid } from \"@webiny/admin-ui\";\nimport type { IWorkflowState } from \"@webiny/app-workflows/types.js\";\n\nconst {\n ContentReview: { WorkflowStateBar }\n} = Components;\n\ninterface IStoreAlertProps {\n state: IWorkflowState | undefined | null;\n}\n\nconst StoreAlert = ({ state }: IStoreAlertProps) => {\n if (!state) {\n return null;\n }\n return (\n <div className={\"max-w-screen bg-white p-sm\"}>\n <Grid className={\"w-full\"}>\n <Grid.Column span={12}>\n <Alert className={\"mb-md mt-md\"} type=\"danger\">\n Any changes you do on the page will not be stored!\n </Alert>\n </Grid.Column>\n </Grid>\n </div>\n );\n};\n\nexport const PageFormWorkflowState = () => {\n return (\n <WorkflowStateBar>\n {({ state }) => {\n return <StoreAlert state={state} />;\n }}\n </WorkflowStateBar>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,QAAQ,uBAAuB;AAClD,SAASC,KAAK,EAAEC,IAAI,QAAQ,kBAAkB;AAG9C,MAAM;EACFC,aAAa,EAAE;IAAEC;EAAiB;AACtC,CAAC,GAAGJ,UAAU;AAMd,MAAMK,UAAU,GAAGA,CAAC;EAAEC;AAAwB,CAAC,KAAK;EAChD,IAAI,CAACA,KAAK,EAAE;IACR,OAAO,IAAI;EACf;EACA,oBACIP,KAAA,CAAAQ,aAAA;IAAKC,SAAS,EAAE;EAA6B,gBACzCT,KAAA,CAAAQ,aAAA,CAACL,IAAI;IAACM,SAAS,EAAE;EAAS,gBACtBT,KAAA,CAAAQ,aAAA,CAACL,IAAI,CAACO,MAAM;IAACC,IAAI,EAAE;EAAG,gBAClBX,KAAA,CAAAQ,aAAA,CAACN,KAAK;IAACO,SAAS,EAAE,aAAc;IAACG,IAAI,EAAC;EAAQ,GAAC,oDAExC,CACE,CACX,CACL,CAAC;AAEd,CAAC;AAED,OAAO,MAAMC,qBAAqB,GAAGA,CAAA,KAAM;EACvC,oBACIb,KAAA,CAAAQ,aAAA,CAACH,gBAAgB,QACZ,CAAC;IAAEE;EAAM,CAAC,KAAK;IACZ,oBAAOP,KAAA,CAAAQ,aAAA,CAACF,UAAU;MAACC,KAAK,EAAEA;IAAM,CAAE,CAAC;EACvC,CACc,CAAC;AAE3B,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Components/PageEditor/PageFormWorkflowState.js","sources":["../../../src/Components/PageEditor/PageFormWorkflowState.tsx"],"sourcesContent":["import React from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { Alert } from \"@webiny/admin-ui\";\nimport { Components, useWorkflowState } from \"@webiny/app-workflows\";\n\nconst {\n ContentReview: { WorkflowStateBar }\n} = Components;\n\nexport const PageFormWorkflowState = observer(() => {\n const { presenter } = useWorkflowState();\n\n return (\n <div\n className={\"max-w-screen bg-white p-sm border-solid border-b-sm border-neutral-dimmed\"}\n data-affects-preview={\"height\"}\n >\n <WorkflowStateBar />\n {presenter.vm.hasState ? (\n <Alert type=\"danger\" className={\"mt-sm\"}>\n Any changes you do on the page will not be stored!\n </Alert>\n ) : null}\n </div>\n );\n});\n"],"names":["WorkflowStateBar","Components","PageFormWorkflowState","observer","presenter","useWorkflowState","Alert"],"mappings":";;;;AAKA,MAAM,EACF,eAAe,EAAEA,kBAAAA,gBAAgB,EAAE,EACtC,GAAGC;AAEG,MAAMC,wBAAwBC,SAAS;IAC1C,MAAM,EAAEC,SAAS,EAAE,GAAGC;IAEtB,OAAO,WAAP,GACI,oBAAC;QACG,WAAW;QACX,wBAAsB;qBAEtB,oBAACL,kBAAgBA,OAChBI,UAAU,EAAE,CAAC,QAAQ,GAAG,WAAH,GAClB,oBAACE,OAAKA;QAAC,MAAK;QAAS,WAAW;OAAS,wDAGzC;AAGhB"}
@@ -1,33 +1,22 @@
1
- import React from "react";
1
+ import react from "react";
2
2
  import { PageEditorConfig } from "@webiny/app-website-builder";
3
- import { useWorkflowState, WorkflowStateValue } from "@webiny/app-workflows";
3
+ import { useWorkflowState } from "@webiny/app-workflows";
4
4
  import { observer } from "mobx-react-lite";
5
- const {
6
- Ui
7
- } = PageEditorConfig;
8
- const WrappedPublishButton = observer(props => {
9
- const {
10
- presenter
11
- } = useWorkflowState();
12
- /**
13
- * Publish button should be visible only when there is no workflow available and when workflow state is approved.
14
- */
15
- if (!presenter.vm.workflow || presenter.vm.state?.state === WorkflowStateValue.approved) {
16
- return props.element;
17
- }
18
- return null;
19
- });
20
- export const PageFormWorkflowStatePublishButton = Ui.TopBar.Action.createDecorator(Original => {
21
- return function AutoSaveDecorator(props) {
22
- if (props.name === "buttonPublish") {
23
- return /*#__PURE__*/React.createElement(Original, Object.assign({}, props, {
24
- element: /*#__PURE__*/React.createElement(WrappedPublishButton, {
25
- element: props.element
26
- })
27
- }));
28
- }
29
- return /*#__PURE__*/React.createElement(Original, props);
30
- };
5
+ const { Ui: Ui } = PageEditorConfig;
6
+ const WrappedPublishButton = observer((props)=>{
7
+ const { presenter } = useWorkflowState();
8
+ if (!presenter.vm.hasWorkflow || presenter.vm.isApproved) return props.element;
9
+ return null;
31
10
  });
11
+ const PageFormWorkflowStatePublishButton = Ui.TopBar.Action.createDecorator((Original)=>function(props) {
12
+ if ("buttonPublish" === props.name) return /*#__PURE__*/ react.createElement(Original, {
13
+ ...props,
14
+ element: /*#__PURE__*/ react.createElement(WrappedPublishButton, {
15
+ element: props.element
16
+ })
17
+ });
18
+ return /*#__PURE__*/ react.createElement(Original, props);
19
+ });
20
+ export { PageFormWorkflowStatePublishButton };
32
21
 
33
22
  //# sourceMappingURL=PageFormWorkflowStatePublishButton.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","PageEditorConfig","useWorkflowState","WorkflowStateValue","observer","Ui","WrappedPublishButton","props","presenter","vm","workflow","state","approved","element","PageFormWorkflowStatePublishButton","TopBar","Action","createDecorator","Original","AutoSaveDecorator","name","createElement","Object","assign"],"sources":["PageFormWorkflowStatePublishButton.tsx"],"sourcesContent":["import React from \"react\";\nimport { PageEditorConfig } from \"@webiny/app-website-builder\";\nimport { useWorkflowState, WorkflowStateValue } from \"@webiny/app-workflows\";\nimport { observer } from \"mobx-react-lite\";\n\nconst { Ui } = PageEditorConfig;\n\ninterface IWrappedPublishButtonProps {\n element?: React.ReactElement | null;\n}\n\nconst WrappedPublishButton = observer((props: IWrappedPublishButtonProps) => {\n const { presenter } = useWorkflowState();\n /**\n * Publish button should be visible only when there is no workflow available and when workflow state is approved.\n */\n if (!presenter.vm.workflow || presenter.vm.state?.state === WorkflowStateValue.approved) {\n return props.element;\n }\n\n return null;\n});\n\nexport const PageFormWorkflowStatePublishButton = Ui.TopBar.Action.createDecorator(Original => {\n return function AutoSaveDecorator(props) {\n if (props.name === \"buttonPublish\") {\n return (\n <Original {...props} element={<WrappedPublishButton element={props.element} />} />\n );\n }\n return <Original {...props} />;\n };\n});\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,gBAAgB,QAAQ,6BAA6B;AAC9D,SAASC,gBAAgB,EAAEC,kBAAkB,QAAQ,uBAAuB;AAC5E,SAASC,QAAQ,QAAQ,iBAAiB;AAE1C,MAAM;EAAEC;AAAG,CAAC,GAAGJ,gBAAgB;AAM/B,MAAMK,oBAAoB,GAAGF,QAAQ,CAAEG,KAAiC,IAAK;EACzE,MAAM;IAAEC;EAAU,CAAC,GAAGN,gBAAgB,CAAC,CAAC;EACxC;AACJ;AACA;EACI,IAAI,CAACM,SAAS,CAACC,EAAE,CAACC,QAAQ,IAAIF,SAAS,CAACC,EAAE,CAACE,KAAK,EAAEA,KAAK,KAAKR,kBAAkB,CAACS,QAAQ,EAAE;IACrF,OAAOL,KAAK,CAACM,OAAO;EACxB;EAEA,OAAO,IAAI;AACf,CAAC,CAAC;AAEF,OAAO,MAAMC,kCAAkC,GAAGT,EAAE,CAACU,MAAM,CAACC,MAAM,CAACC,eAAe,CAACC,QAAQ,IAAI;EAC3F,OAAO,SAASC,iBAAiBA,CAACZ,KAAK,EAAE;IACrC,IAAIA,KAAK,CAACa,IAAI,KAAK,eAAe,EAAE;MAChC,oBACIpB,KAAA,CAAAqB,aAAA,CAACH,QAAQ,EAAAI,MAAA,CAAAC,MAAA,KAAKhB,KAAK;QAAEM,OAAO,eAAEb,KAAA,CAAAqB,aAAA,CAACf,oBAAoB;UAACO,OAAO,EAAEN,KAAK,CAACM;QAAQ,CAAE;MAAE,EAAE,CAAC;IAE1F;IACA,oBAAOb,KAAA,CAAAqB,aAAA,CAACH,QAAQ,EAAKX,KAAQ,CAAC;EAClC,CAAC;AACL,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Components/PageEditor/PageFormWorkflowStatePublishButton.js","sources":["../../../src/Components/PageEditor/PageFormWorkflowStatePublishButton.tsx"],"sourcesContent":["import React from \"react\";\nimport { PageEditorConfig } from \"@webiny/app-website-builder\";\nimport { useWorkflowState } from \"@webiny/app-workflows\";\nimport { observer } from \"mobx-react-lite\";\n\nconst { Ui } = PageEditorConfig;\n\ninterface IWrappedPublishButtonProps {\n element?: React.ReactElement | null;\n}\n\nconst WrappedPublishButton = observer((props: IWrappedPublishButtonProps) => {\n const { presenter } = useWorkflowState();\n /**\n * Publish button should be visible only when there is no workflow available and when workflow state is approved.\n */\n if (!presenter.vm.hasWorkflow || presenter.vm.isApproved) {\n return props.element;\n }\n\n return null;\n});\n\nexport const PageFormWorkflowStatePublishButton = Ui.TopBar.Action.createDecorator(Original => {\n return function AutoSaveDecorator(props) {\n if (props.name === \"buttonPublish\") {\n return (\n <Original {...props} element={<WrappedPublishButton element={props.element} />} />\n );\n }\n return <Original {...props} />;\n };\n});\n"],"names":["Ui","PageEditorConfig","WrappedPublishButton","observer","props","presenter","useWorkflowState","PageFormWorkflowStatePublishButton","Original"],"mappings":";;;;AAKA,MAAM,EAAEA,IAAAA,EAAE,EAAE,GAAGC;AAMf,MAAMC,uBAAuBC,SAAS,CAACC;IACnC,MAAM,EAAEC,SAAS,EAAE,GAAGC;IAItB,IAAI,CAACD,UAAU,EAAE,CAAC,WAAW,IAAIA,UAAU,EAAE,CAAC,UAAU,EACpD,OAAOD,MAAM,OAAO;IAGxB,OAAO;AACX;AAEO,MAAMG,qCAAqCP,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAACQ,CAAAA,WACxE,SAA2BJ,KAAK;QACnC,IAAIA,AAAe,oBAAfA,MAAM,IAAI,EACV,OAAO,WAAP,GACI,oBAACI,UAAAA;YAAU,GAAGJ,KAAK;YAAE,uBAAS,oBAACF,sBAAoBA;gBAAC,SAASE,MAAM,OAAO;;;QAGlF,OAAO,WAAP,GAAO,oBAACI,UAAaJ;IACzB"}
@@ -1,23 +1,14 @@
1
- import React from "react";
1
+ import react from "react";
2
2
  import { Components } from "@webiny/app-workflows";
3
3
  import { PageEditorConfig } from "@webiny/app-website-builder";
4
- const {
5
- ContentReview: {
6
- WorkflowStateTooltip
7
- }
8
- } = Components;
9
- const {
10
- Ui
11
- } = PageEditorConfig;
12
- const TooltipButton = () => {
13
- return /*#__PURE__*/React.createElement(WorkflowStateTooltip, null);
14
- };
15
- export const PageFormWorkflowStateTooltip = () => {
16
- return /*#__PURE__*/React.createElement(Ui.TopBar.Action, {
17
- before: "buttonPublish",
18
- name: "buttonWorkflowStateTooltip",
19
- element: /*#__PURE__*/React.createElement(TooltipButton, null)
20
- });
21
- };
4
+ const { ContentReview: { WorkflowStateTooltip: WorkflowStateTooltip } } = Components;
5
+ const { Ui: Ui } = PageEditorConfig;
6
+ const TooltipButton = ()=>/*#__PURE__*/ react.createElement(WorkflowStateTooltip, null);
7
+ const PageFormWorkflowStateTooltip = ()=>/*#__PURE__*/ react.createElement(Ui.TopBar.Action, {
8
+ before: "buttonPublish",
9
+ name: "buttonWorkflowStateTooltip",
10
+ element: /*#__PURE__*/ react.createElement(TooltipButton, null)
11
+ });
12
+ export { PageFormWorkflowStateTooltip };
22
13
 
23
14
  //# sourceMappingURL=PageFormWorkflowStateTooltip.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","Components","PageEditorConfig","ContentReview","WorkflowStateTooltip","Ui","TooltipButton","createElement","PageFormWorkflowStateTooltip","TopBar","Action","before","name","element"],"sources":["PageFormWorkflowStateTooltip.tsx"],"sourcesContent":["import React from \"react\";\nimport { Components } from \"@webiny/app-workflows\";\nimport { PageEditorConfig } from \"@webiny/app-website-builder\";\n\nconst {\n ContentReview: { WorkflowStateTooltip }\n} = Components;\n\nconst { Ui } = PageEditorConfig;\n\nconst TooltipButton = () => {\n return <WorkflowStateTooltip />;\n};\n\nexport const PageFormWorkflowStateTooltip = () => {\n return (\n <Ui.TopBar.Action\n before={\"buttonPublish\"}\n name={\"buttonWorkflowStateTooltip\"}\n element={<TooltipButton />}\n />\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,QAAQ,uBAAuB;AAClD,SAASC,gBAAgB,QAAQ,6BAA6B;AAE9D,MAAM;EACFC,aAAa,EAAE;IAAEC;EAAqB;AAC1C,CAAC,GAAGH,UAAU;AAEd,MAAM;EAAEI;AAAG,CAAC,GAAGH,gBAAgB;AAE/B,MAAMI,aAAa,GAAGA,CAAA,KAAM;EACxB,oBAAON,KAAA,CAAAO,aAAA,CAACH,oBAAoB,MAAE,CAAC;AACnC,CAAC;AAED,OAAO,MAAMI,4BAA4B,GAAGA,CAAA,KAAM;EAC9C,oBACIR,KAAA,CAAAO,aAAA,CAACF,EAAE,CAACI,MAAM,CAACC,MAAM;IACbC,MAAM,EAAE,eAAgB;IACxBC,IAAI,EAAE,4BAA6B;IACnCC,OAAO,eAAEb,KAAA,CAAAO,aAAA,CAACD,aAAa,MAAE;EAAE,CAC9B,CAAC;AAEV,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Components/PageEditor/PageFormWorkflowStateTooltip.js","sources":["../../../src/Components/PageEditor/PageFormWorkflowStateTooltip.tsx"],"sourcesContent":["import React from \"react\";\nimport { Components } from \"@webiny/app-workflows\";\nimport { PageEditorConfig } from \"@webiny/app-website-builder\";\n\nconst {\n ContentReview: { WorkflowStateTooltip }\n} = Components;\n\nconst { Ui } = PageEditorConfig;\n\nconst TooltipButton = () => {\n return <WorkflowStateTooltip />;\n};\n\nexport const PageFormWorkflowStateTooltip = () => {\n return (\n <Ui.TopBar.Action\n before={\"buttonPublish\"}\n name={\"buttonWorkflowStateTooltip\"}\n element={<TooltipButton />}\n />\n );\n};\n"],"names":["WorkflowStateTooltip","Components","Ui","PageEditorConfig","TooltipButton","PageFormWorkflowStateTooltip"],"mappings":";;;AAIA,MAAM,EACF,eAAe,EAAEA,sBAAAA,oBAAoB,EAAE,EAC1C,GAAGC;AAEJ,MAAM,EAAEC,IAAAA,EAAE,EAAE,GAAGC;AAEf,MAAMC,gBAAgB,IACX,WAAP,GAAO,oBAACJ,sBAAoBA;AAGzB,MAAMK,+BAA+B,IACjC,WAAP,GACI,oBAACH,GAAG,MAAM,CAAC,MAAM;QACb,QAAQ;QACR,MAAM;QACN,uBAAS,oBAACE,eAAaA"}
@@ -0,0 +1,3 @@
1
+ export declare const ToggleEditorMode: (() => null) & import("react").NamedExoticComponent<unknown> & {
2
+ readonly type: () => null;
3
+ };
@@ -0,0 +1,21 @@
1
+ import { useEffect } from "react";
2
+ import { observer } from "mobx-react-lite";
3
+ import { useWorkflowState } from "@webiny/app-workflows";
4
+ import { useDocumentEditor } from "@webiny/app-website-builder/DocumentEditor/index.js";
5
+ const ToggleEditorMode = observer(()=>{
6
+ const { presenter } = useWorkflowState();
7
+ const editor = useDocumentEditor();
8
+ const isUnderReview = presenter.vm.hasState && !presenter.vm.isApproved;
9
+ useEffect(()=>{
10
+ const options = editor.getEditorOptions();
11
+ editor.updateEditor((state)=>{
12
+ state.isReadOnly = options.isReadOnly || isUnderReview;
13
+ });
14
+ }, [
15
+ isUnderReview
16
+ ]);
17
+ return null;
18
+ });
19
+ export { ToggleEditorMode };
20
+
21
+ //# sourceMappingURL=ToggleEditorMode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Components/PageEditor/ToggleEditorMode.js","sources":["../../../src/Components/PageEditor/ToggleEditorMode.tsx"],"sourcesContent":["import { useEffect } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { useWorkflowState } from \"@webiny/app-workflows\";\nimport { useDocumentEditor } from \"@webiny/app-website-builder/DocumentEditor/index.js\";\n\nexport const ToggleEditorMode = observer(() => {\n const { presenter } = useWorkflowState();\n const editor = useDocumentEditor();\n\n /**\n * A page is locked for the duration of the review. Once the review is approved the page can\n * be published, so the editor has to become writable again. Otherwise the top bar keeps\n * offering \"New Revision\" instead of \"Publish\".\n */\n const isUnderReview = presenter.vm.hasState && !presenter.vm.isApproved;\n\n useEffect(() => {\n const options = editor.getEditorOptions();\n editor.updateEditor(state => {\n state.isReadOnly = options.isReadOnly || isUnderReview;\n });\n }, [isUnderReview]);\n\n return null;\n});\n"],"names":["ToggleEditorMode","observer","presenter","useWorkflowState","editor","useDocumentEditor","isUnderReview","useEffect","options","state"],"mappings":";;;;AAKO,MAAMA,mBAAmBC,SAAS;IACrC,MAAM,EAAEC,SAAS,EAAE,GAAGC;IACtB,MAAMC,SAASC;IAOf,MAAMC,gBAAgBJ,UAAU,EAAE,CAAC,QAAQ,IAAI,CAACA,UAAU,EAAE,CAAC,UAAU;IAEvEK,UAAU;QACN,MAAMC,UAAUJ,OAAO,gBAAgB;QACvCA,OAAO,YAAY,CAACK,CAAAA;YAChBA,MAAM,UAAU,GAAGD,QAAQ,UAAU,IAAIF;QAC7C;IACJ,GAAG;QAACA;KAAc;IAElB,OAAO;AACX"}
@@ -1,60 +1,54 @@
1
- import React, { useCallback, useMemo } from "react";
1
+ import react, { useCallback, useMemo } from "react";
2
2
  import { AdminConfig, useRoute, useRouter } from "@webiny/app-admin";
3
3
  import { Routes } from "../../routes.js";
4
4
  import { Components } from "@webiny/app-workflows";
5
5
  import { Icon } from "@webiny/admin-ui";
6
- import { ReactComponent as WorkflowsIcon } from "@webiny/icons/workspaces.svg";
6
+ import { ReactComponent } from "@webiny/icons/workspaces.svg";
7
7
  import { WB_PAGE_APP } from "../../constants.js";
8
- const {
9
- Admin: {
10
- WorkflowsEditor
11
- }
12
- } = Components;
13
- const {
14
- Menu
15
- } = AdminConfig;
16
- export const PageWorkflowsEditorMenu = () => {
17
- const router = useRouter();
18
- return /*#__PURE__*/React.createElement(Menu, {
19
- name: "websiteBuilder.pages.workflows",
20
- pinnable: true,
21
- parent: "wb",
22
- element: /*#__PURE__*/React.createElement(Menu.Link, {
23
- text: "Workflows",
24
- to: router.getLink(Routes.Pages.Workflows)
25
- })
26
- });
8
+ const { Admin: { WorkflowsEditor: WorkflowsEditor } } = Components;
9
+ const { Menu: Menu } = AdminConfig;
10
+ const PageWorkflowsEditorMenu = ()=>{
11
+ const router = useRouter();
12
+ return /*#__PURE__*/ react.createElement(Menu, {
13
+ name: "websiteBuilder.pages.workflows",
14
+ pinnable: true,
15
+ parent: "wb",
16
+ element: /*#__PURE__*/ react.createElement(Menu.Link, {
17
+ text: "Workflows",
18
+ to: router.getLink(Routes.Pages.Workflows)
19
+ })
20
+ });
27
21
  };
28
- export const PageWorkflowsEditorView = () => {
29
- const {
30
- route
31
- } = useRoute(Routes.Pages.Workflows);
32
- const {
33
- goToRoute
34
- } = useRouter();
35
- const apps = useMemo(() => {
36
- return [{
37
- id: WB_PAGE_APP,
38
- name: "Pages",
39
- icon: /*#__PURE__*/React.createElement(Icon, {
40
- icon: /*#__PURE__*/React.createElement(WorkflowsIcon, null),
41
- label: "Pages Workflows"
42
- })
43
- }];
44
- }, []);
45
- const onAppClick = useCallback(id => {
46
- goToRoute(Routes.Pages.Workflows, {
47
- app: id
22
+ const PageWorkflowsEditorView = ()=>{
23
+ const { route } = useRoute(Routes.Pages.Workflows);
24
+ const { goToRoute } = useRouter();
25
+ const apps = useMemo(()=>[
26
+ {
27
+ id: WB_PAGE_APP,
28
+ name: "Pages",
29
+ icon: /*#__PURE__*/ react.createElement(Icon, {
30
+ icon: /*#__PURE__*/ react.createElement(ReactComponent, null),
31
+ label: "Pages Workflows"
32
+ })
33
+ }
34
+ ], []);
35
+ const onAppClick = useCallback((id)=>{
36
+ goToRoute(Routes.Pages.Workflows, {
37
+ app: id
38
+ });
39
+ }, [
40
+ apps
41
+ ]);
42
+ const app = useMemo(()=>apps.find((a)=>a.id === route.params.app) || apps[0], [
43
+ route.params.app,
44
+ apps
45
+ ]);
46
+ return /*#__PURE__*/ react.createElement(WorkflowsEditor, {
47
+ apps: apps,
48
+ onAppClick: onAppClick,
49
+ app: app.id
48
50
  });
49
- }, [apps]);
50
- const app = useMemo(() => {
51
- return apps.find(a => a.id === route.params.app) || apps[0];
52
- }, [route.params.app, apps]);
53
- return /*#__PURE__*/React.createElement(WorkflowsEditor, {
54
- apps: apps,
55
- onAppClick: onAppClick,
56
- app: app.id
57
- });
58
51
  };
52
+ export { PageWorkflowsEditorMenu, PageWorkflowsEditorView };
59
53
 
60
54
  //# sourceMappingURL=PageWorkflowsEditorView.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useMemo","AdminConfig","useRoute","useRouter","Routes","Components","Icon","ReactComponent","WorkflowsIcon","WB_PAGE_APP","Admin","WorkflowsEditor","Menu","PageWorkflowsEditorMenu","router","createElement","name","pinnable","parent","element","Link","text","to","getLink","Pages","Workflows","PageWorkflowsEditorView","route","goToRoute","apps","id","icon","label","onAppClick","app","find","a","params"],"sources":["PageWorkflowsEditorView.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from \"react\";\nimport { AdminConfig, useRoute, useRouter } from \"@webiny/app-admin\";\nimport { Routes } from \"~/routes.js\";\nimport type { IWorkflowApplication } from \"@webiny/app-workflows\";\nimport { Components } from \"@webiny/app-workflows\";\nimport { Icon } from \"@webiny/admin-ui\";\nimport { ReactComponent as WorkflowsIcon } from \"@webiny/icons/workspaces.svg\";\nimport { WB_PAGE_APP } from \"~/constants.js\";\n\nconst {\n Admin: { WorkflowsEditor }\n} = Components;\n\nconst { Menu } = AdminConfig;\n\nexport const PageWorkflowsEditorMenu = () => {\n const router = useRouter();\n\n return (\n <Menu\n name={\"websiteBuilder.pages.workflows\"}\n pinnable={true}\n parent={\"wb\"}\n element={<Menu.Link text={\"Workflows\"} to={router.getLink(Routes.Pages.Workflows)} />}\n />\n );\n};\n\nexport const PageWorkflowsEditorView = () => {\n const { route } = useRoute(Routes.Pages.Workflows);\n const { goToRoute } = useRouter();\n\n const apps = useMemo<IWorkflowApplication[]>(() => {\n return [\n {\n id: WB_PAGE_APP,\n name: \"Pages\",\n icon: <Icon icon={<WorkflowsIcon />} label={\"Pages Workflows\"} />\n }\n ];\n }, []);\n\n const onAppClick = useCallback(\n (id: string) => {\n goToRoute(Routes.Pages.Workflows, {\n app: id\n });\n },\n [apps]\n );\n\n const app = useMemo(() => {\n return apps.find(a => a.id === route.params.app) || apps[0];\n }, [route.params.app, apps]);\n\n return <WorkflowsEditor apps={apps} onAppClick={onAppClick} app={app.id} />;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,OAAO,QAAQ,OAAO;AACnD,SAASC,WAAW,EAAEC,QAAQ,EAAEC,SAAS,QAAQ,mBAAmB;AACpE,SAASC,MAAM;AAEf,SAASC,UAAU,QAAQ,uBAAuB;AAClD,SAASC,IAAI,QAAQ,kBAAkB;AACvC,SAASC,cAAc,IAAIC,aAAa,QAAQ,8BAA8B;AAC9E,SAASC,WAAW;AAEpB,MAAM;EACFC,KAAK,EAAE;IAAEC;EAAgB;AAC7B,CAAC,GAAGN,UAAU;AAEd,MAAM;EAAEO;AAAK,CAAC,GAAGX,WAAW;AAE5B,OAAO,MAAMY,uBAAuB,GAAGA,CAAA,KAAM;EACzC,MAAMC,MAAM,GAAGX,SAAS,CAAC,CAAC;EAE1B,oBACIL,KAAA,CAAAiB,aAAA,CAACH,IAAI;IACDI,IAAI,EAAE,gCAAiC;IACvCC,QAAQ,EAAE,IAAK;IACfC,MAAM,EAAE,IAAK;IACbC,OAAO,eAAErB,KAAA,CAAAiB,aAAA,CAACH,IAAI,CAACQ,IAAI;MAACC,IAAI,EAAE,WAAY;MAACC,EAAE,EAAER,MAAM,CAACS,OAAO,CAACnB,MAAM,CAACoB,KAAK,CAACC,SAAS;IAAE,CAAE;EAAE,CACzF,CAAC;AAEV,CAAC;AAED,OAAO,MAAMC,uBAAuB,GAAGA,CAAA,KAAM;EACzC,MAAM;IAAEC;EAAM,CAAC,GAAGzB,QAAQ,CAACE,MAAM,CAACoB,KAAK,CAACC,SAAS,CAAC;EAClD,MAAM;IAAEG;EAAU,CAAC,GAAGzB,SAAS,CAAC,CAAC;EAEjC,MAAM0B,IAAI,GAAG7B,OAAO,CAAyB,MAAM;IAC/C,OAAO,CACH;MACI8B,EAAE,EAAErB,WAAW;MACfO,IAAI,EAAE,OAAO;MACbe,IAAI,eAAEjC,KAAA,CAAAiB,aAAA,CAACT,IAAI;QAACyB,IAAI,eAAEjC,KAAA,CAAAiB,aAAA,CAACP,aAAa,MAAE,CAAE;QAACwB,KAAK,EAAE;MAAkB,CAAE;IACpE,CAAC,CACJ;EACL,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,UAAU,GAAGlC,WAAW,CACzB+B,EAAU,IAAK;IACZF,SAAS,CAACxB,MAAM,CAACoB,KAAK,CAACC,SAAS,EAAE;MAC9BS,GAAG,EAAEJ;IACT,CAAC,CAAC;EACN,CAAC,EACD,CAACD,IAAI,CACT,CAAC;EAED,MAAMK,GAAG,GAAGlC,OAAO,CAAC,MAAM;IACtB,OAAO6B,IAAI,CAACM,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACN,EAAE,KAAKH,KAAK,CAACU,MAAM,CAACH,GAAG,CAAC,IAAIL,IAAI,CAAC,CAAC,CAAC;EAC/D,CAAC,EAAE,CAACF,KAAK,CAACU,MAAM,CAACH,GAAG,EAAEL,IAAI,CAAC,CAAC;EAE5B,oBAAO/B,KAAA,CAAAiB,aAAA,CAACJ,eAAe;IAACkB,IAAI,EAAEA,IAAK;IAACI,UAAU,EAAEA,UAAW;IAACC,GAAG,EAAEA,GAAG,CAACJ;EAAG,CAAE,CAAC;AAC/E,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Components/PageWorkflows/PageWorkflowsEditorView.js","sources":["../../../src/Components/PageWorkflows/PageWorkflowsEditorView.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from \"react\";\nimport { AdminConfig, useRoute, useRouter } from \"@webiny/app-admin\";\nimport { Routes } from \"~/routes.js\";\nimport type { IWorkflowApplication } from \"@webiny/app-workflows\";\nimport { Components } from \"@webiny/app-workflows\";\nimport { Icon } from \"@webiny/admin-ui\";\nimport { ReactComponent as WorkflowsIcon } from \"@webiny/icons/workspaces.svg\";\nimport { WB_PAGE_APP } from \"~/constants.js\";\n\nconst {\n Admin: { WorkflowsEditor }\n} = Components;\n\nconst { Menu } = AdminConfig;\n\nexport const PageWorkflowsEditorMenu = () => {\n const router = useRouter();\n\n return (\n <Menu\n name={\"websiteBuilder.pages.workflows\"}\n pinnable={true}\n parent={\"wb\"}\n element={<Menu.Link text={\"Workflows\"} to={router.getLink(Routes.Pages.Workflows)} />}\n />\n );\n};\n\nexport const PageWorkflowsEditorView = () => {\n const { route } = useRoute(Routes.Pages.Workflows);\n const { goToRoute } = useRouter();\n\n const apps = useMemo<IWorkflowApplication[]>(() => {\n return [\n {\n id: WB_PAGE_APP,\n name: \"Pages\",\n icon: <Icon icon={<WorkflowsIcon />} label={\"Pages Workflows\"} />\n }\n ];\n }, []);\n\n const onAppClick = useCallback(\n (id: string) => {\n goToRoute(Routes.Pages.Workflows, {\n app: id\n });\n },\n [apps]\n );\n\n const app = useMemo(() => {\n return apps.find(a => a.id === route.params.app) || apps[0];\n }, [route.params.app, apps]);\n\n return <WorkflowsEditor apps={apps} onAppClick={onAppClick} app={app.id} />;\n};\n"],"names":["WorkflowsEditor","Components","Menu","AdminConfig","PageWorkflowsEditorMenu","router","useRouter","Routes","PageWorkflowsEditorView","route","useRoute","goToRoute","apps","useMemo","WB_PAGE_APP","Icon","WorkflowsIcon","onAppClick","useCallback","id","app","a"],"mappings":";;;;;;;AASA,MAAM,EACF,OAAO,EAAEA,iBAAAA,eAAe,EAAE,EAC7B,GAAGC;AAEJ,MAAM,EAAEC,MAAAA,IAAI,EAAE,GAAGC;AAEV,MAAMC,0BAA0B;IACnC,MAAMC,SAASC;IAEf,OAAO,WAAP,GACI,oBAACJ,MAAIA;QACD,MAAM;QACN,UAAU;QACV,QAAQ;QACR,uBAAS,oBAACA,KAAK,IAAI;YAAC,MAAM;YAAa,IAAIG,OAAO,OAAO,CAACE,OAAO,KAAK,CAAC,SAAS;;;AAG5F;AAEO,MAAMC,0BAA0B;IACnC,MAAM,EAAEC,KAAK,EAAE,GAAGC,SAASH,OAAO,KAAK,CAAC,SAAS;IACjD,MAAM,EAAEI,SAAS,EAAE,GAAGL;IAEtB,MAAMM,OAAOC,QAAgC,IAClC;YACH;gBACI,IAAIC;gBACJ,MAAM;gBACN,MAAM,WAAN,GAAM,oBAACC,MAAIA;oBAAC,oBAAM,oBAACC,gBAAaA;oBAAK,OAAO;;YAChD;SACH,EACF,EAAE;IAEL,MAAMC,aAAaC,YACf,CAACC;QACGR,UAAUJ,OAAO,KAAK,CAAC,SAAS,EAAE;YAC9B,KAAKY;QACT;IACJ,GACA;QAACP;KAAK;IAGV,MAAMQ,MAAMP,QAAQ,IACTD,KAAK,IAAI,CAACS,CAAAA,IAAKA,EAAE,EAAE,KAAKZ,MAAM,MAAM,CAAC,GAAG,KAAKG,IAAI,CAAC,EAAE,EAC5D;QAACH,MAAM,MAAM,CAAC,GAAG;QAAEG;KAAK;IAE3B,OAAO,WAAP,GAAO,oBAACZ,iBAAeA;QAAC,MAAMY;QAAM,YAAYK;QAAY,KAAKG,IAAI,EAAE;;AAC3E"}