@webiny/app-website-builder-workflows 6.3.0 → 6.4.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) 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 +4 -5
  7. package/Components/PageEditor/PageEditorConfig.js.map +1 -1
  8. package/Components/PageEditor/PageEditorLayout.js +31 -41
  9. package/Components/PageEditor/PageEditorLayout.js.map +1 -1
  10. package/Components/PageEditor/PageEditorTopBar.js +20 -24
  11. package/Components/PageEditor/PageEditorTopBar.js.map +1 -1
  12. package/Components/PageEditor/PageFormWorkflowState.js +7 -16
  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.js +14 -12
  19. package/Components/PageEditor/ToggleEditorMode.js.map +1 -1
  20. package/Components/PageWorkflows/PageWorkflowsEditorView.js +44 -50
  21. package/Components/PageWorkflows/PageWorkflowsEditorView.js.map +1 -1
  22. package/Components/PageWorkflows/index.js +0 -2
  23. package/Components/PagesList/PageListChangeStatus.js +17 -25
  24. package/Components/PagesList/PageListChangeStatus.js.map +1 -1
  25. package/Components/PagesList/PagesList.js +3 -4
  26. package/Components/PagesList/PagesList.js.map +1 -1
  27. package/Components/PagesList/PagesListContentReviews.js +23 -34
  28. package/Components/PagesList/PagesListContentReviews.js.map +1 -1
  29. package/Components/PagesList/index.js +0 -2
  30. package/Components/index.js +0 -2
  31. package/Routes/WebsiteBuilderWorkflowsMenu.js +17 -26
  32. package/Routes/WebsiteBuilderWorkflowsMenu.js.map +1 -1
  33. package/Routes/index.js +0 -2
  34. package/constants.js +2 -1
  35. package/constants.js.map +1 -1
  36. package/hooks/usePage.js +15 -17
  37. package/hooks/usePage.js.map +1 -1
  38. package/index.js +7 -8
  39. package/index.js.map +1 -1
  40. package/package.json +11 -11
  41. package/presentation/page/PageGet/WorkflowStatesGetPageGraphQLFieldSelection.js +10 -7
  42. package/presentation/page/PageGet/WorkflowStatesGetPageGraphQLFieldSelection.js.map +1 -1
  43. package/presentation/page/PageGet/feature.js +6 -5
  44. package/presentation/page/PageGet/feature.js.map +1 -1
  45. package/presentation/page/PageList/PageListPresenterDecorator.js +31 -32
  46. package/presentation/page/PageList/PageListPresenterDecorator.js.map +1 -1
  47. package/presentation/page/PageList/WorkflowStateListPagesFieldSelection.js +10 -7
  48. package/presentation/page/PageList/WorkflowStateListPagesFieldSelection.js.map +1 -1
  49. package/presentation/page/PageList/feature.js +7 -6
  50. package/presentation/page/PageList/feature.js.map +1 -1
  51. package/routes.js +15 -16
  52. package/routes.js.map +1 -1
  53. package/types.js +0 -3
  54. package/Components/OptionItem/index.js.map +0 -1
  55. package/Components/PageWorkflows/index.js.map +0 -1
  56. package/Components/PagesList/index.js.map +0 -1
  57. package/Components/index.js.map +0 -1
  58. package/Routes/index.js.map +0 -1
  59. 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.state?.state) 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.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"],"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,KAAK,EAAE,OACrB,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,10 +1,9 @@
1
- import React from "react";
2
- import { PageEditorConfig as BaseConfig } from "@webiny/app-website-builder";
1
+ import react from "react";
2
+ import { PageEditorConfig } from "@webiny/app-website-builder";
3
3
  import { PageFormWorkflowStateTooltip } from "./PageFormWorkflowStateTooltip.js";
4
4
  import { PageFormWorkflowStatePublishButton } from "./PageFormWorkflowStatePublishButton.js";
5
5
  import { PageEditorTopBar } from "./PageEditorTopBar.js";
6
- export const PageEditorConfig = () => {
7
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(PageEditorTopBar, null), /*#__PURE__*/React.createElement(BaseConfig, null, /*#__PURE__*/React.createElement(PageFormWorkflowStateTooltip, null), /*#__PURE__*/React.createElement(PageFormWorkflowStatePublishButton, null)));
8
- };
6
+ const PageEditorConfig_PageEditorConfig = ()=>/*#__PURE__*/ react.createElement(react.Fragment, null, /*#__PURE__*/ react.createElement(PageEditorTopBar, null), /*#__PURE__*/ react.createElement(PageEditorConfig, null, /*#__PURE__*/ react.createElement(PageFormWorkflowStateTooltip, null), /*#__PURE__*/ react.createElement(PageFormWorkflowStatePublishButton, null)));
7
+ export { PageEditorConfig_PageEditorConfig as PageEditorConfig };
9
8
 
10
9
  //# sourceMappingURL=PageEditorConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","PageEditorConfig","BaseConfig","PageFormWorkflowStateTooltip","PageFormWorkflowStatePublishButton","PageEditorTopBar","createElement","Fragment"],"sources":["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\";\n\nexport const PageEditorConfig = () => {\n return (\n <>\n {/* Toggle editor \"readonly\" mode, and add workflow alerts */}\n <PageEditorTopBar />\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"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,gBAAgB,IAAIC,UAAU,QAAQ,6BAA6B;AAC5E,SAASC,4BAA4B;AACrC,SAASC,kCAAkC;AAC3C,SAASC,gBAAgB;AAEzB,OAAO,MAAMJ,gBAAgB,GAAGA,CAAA,KAAM;EAClC,oBACID,KAAA,CAAAM,aAAA,CAAAN,KAAA,CAAAO,QAAA,qBAEIP,KAAA,CAAAM,aAAA,CAACD,gBAAgB,MAAE,CAAC,eACpBL,KAAA,CAAAM,aAAA,CAACJ,UAAU,qBAEPF,KAAA,CAAAM,aAAA,CAACH,4BAA4B,MAAE,CAAC,eAEhCH,KAAA,CAAAM,aAAA,CAACF,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\";\n\nexport const PageEditorConfig = () => {\n return (\n <>\n {/* Toggle editor \"readonly\" mode, and add workflow alerts */}\n <PageEditorTopBar />\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","BaseConfig","PageFormWorkflowStateTooltip","PageFormWorkflowStatePublishButton"],"mappings":";;;;;AAMO,MAAMA,oCAAmB,IACrB,WAAP,GACI,wDAEI,oBAACC,kBAAgBA,OAAAA,WAAAA,GACjB,oBAACC,kBAAUA,MAAAA,WAAAA,GAEP,oBAACC,8BAA4BA,OAAAA,WAAAA,GAE7B,oBAACC,oCAAkCA"}
@@ -1,4 +1,4 @@
1
- import React, { useEffect } from "react";
1
+ import react, { useEffect } from "react";
2
2
  import { useSelectFromDocument } from "@webiny/app-website-builder/BaseEditor/hooks/useSelectFromDocument.js";
3
3
  import { useApolloClient } from "@apollo/react-hooks";
4
4
  import { useAuthentication } from "@webiny/app-admin";
@@ -7,47 +7,37 @@ import { WB_PAGE_APP } from "../../constants.js";
7
7
  import { PageEditorConfig } from "@webiny/app-website-builder";
8
8
  import { observer } from "mobx-react-lite";
9
9
  import { useDocumentEditor } from "@webiny/app-website-builder/DocumentEditor/index.js";
10
- const {
11
- Ui
12
- } = PageEditorConfig;
13
- const {
14
- ContentReview: {
15
- WorkflowStateProvider
16
- }
17
- } = Components;
18
- const ToggleReadonly = observer(() => {
19
- const {
20
- presenter
21
- } = useWorkflowState();
22
- const editor = useDocumentEditor();
23
- const hasState = !!presenter.vm.state?.state;
24
- useEffect(() => {
25
- editor.updateEditor(state => {
26
- state.isReadOnly = hasState;
27
- });
28
- }, [hasState]);
29
- return null;
10
+ const { Ui: Ui } = PageEditorConfig;
11
+ const { ContentReview: { WorkflowStateProvider: WorkflowStateProvider } } = Components;
12
+ const ToggleReadonly = observer(()=>{
13
+ const { presenter } = useWorkflowState();
14
+ const editor = useDocumentEditor();
15
+ const hasState = !!presenter.vm.state?.state;
16
+ useEffect(()=>{
17
+ const options = editor.getEditorOptions();
18
+ editor.updateEditor((state)=>{
19
+ state.isReadOnly = options.isReadOnly || hasState;
20
+ });
21
+ }, [
22
+ hasState
23
+ ]);
24
+ return null;
30
25
  });
31
- export const PageEditorLayout = Ui.Layout.createDecorator(Original => {
32
- return function PageEditorTopBarWorkflowsState() {
33
- const page = useSelectFromDocument(doc => {
34
- return {
35
- id: doc.id,
36
- title: doc.properties.title || "unknown page"
37
- };
26
+ const PageEditorLayout = Ui.Layout.createDecorator((Original)=>function() {
27
+ const page = useSelectFromDocument((doc)=>({
28
+ id: doc.id,
29
+ title: doc.properties.title || "unknown page"
30
+ }));
31
+ const client = useApolloClient();
32
+ const { identity } = useAuthentication();
33
+ return /*#__PURE__*/ react.createElement(WorkflowStateProvider, {
34
+ app: WB_PAGE_APP,
35
+ id: page.id,
36
+ identity: identity,
37
+ client: client,
38
+ title: `Website Builder: ${page.title}`
39
+ }, /*#__PURE__*/ react.createElement(Original, null), /*#__PURE__*/ react.createElement(ToggleReadonly, null));
38
40
  });
39
- const client = useApolloClient();
40
- const {
41
- identity
42
- } = useAuthentication();
43
- return /*#__PURE__*/React.createElement(WorkflowStateProvider, {
44
- app: WB_PAGE_APP,
45
- id: page.id,
46
- identity: identity,
47
- client: client,
48
- title: `Website Builder: ${page.title}`
49
- }, /*#__PURE__*/React.createElement(Original, null), /*#__PURE__*/React.createElement(ToggleReadonly, null));
50
- };
51
- });
41
+ export { PageEditorLayout };
52
42
 
53
43
  //# sourceMappingURL=PageEditorLayout.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useSelectFromDocument","useApolloClient","useAuthentication","Components","useWorkflowState","WB_PAGE_APP","PageEditorConfig","observer","useDocumentEditor","Ui","ContentReview","WorkflowStateProvider","ToggleReadonly","presenter","editor","hasState","vm","state","updateEditor","isReadOnly","PageEditorLayout","Layout","createDecorator","Original","PageEditorTopBarWorkflowsState","page","doc","id","title","properties","client","identity","createElement","app"],"sources":["PageEditorLayout.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { useSelectFromDocument } from \"@webiny/app-website-builder/BaseEditor/hooks/useSelectFromDocument.js\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { useAuthentication } from \"@webiny/app-admin\";\nimport { Components, useWorkflowState } from \"@webiny/app-workflows\";\nimport { WB_PAGE_APP } from \"~/constants.js\";\nimport { PageEditorConfig } from \"@webiny/app-website-builder\";\nimport { observer } from \"mobx-react-lite\";\nimport { useDocumentEditor } from \"@webiny/app-website-builder/DocumentEditor/index.js\";\n\nconst { Ui } = PageEditorConfig;\n\nconst {\n ContentReview: { WorkflowStateProvider }\n} = Components;\n\nconst ToggleReadonly = observer(() => {\n const { presenter } = useWorkflowState();\n const editor = useDocumentEditor();\n\n const hasState = !!presenter.vm.state?.state;\n\n useEffect(() => {\n editor.updateEditor(state => {\n state.isReadOnly = hasState;\n });\n }, [hasState]);\n\n return null;\n});\n\nexport const PageEditorLayout = Ui.Layout.createDecorator(Original => {\n return function PageEditorTopBarWorkflowsState() {\n const page = useSelectFromDocument(doc => {\n return {\n id: doc.id,\n title: doc.properties.title || \"unknown page\"\n };\n });\n\n const client = useApolloClient();\n const { identity } = useAuthentication();\n\n return (\n <WorkflowStateProvider\n app={WB_PAGE_APP}\n id={page.id}\n identity={identity}\n client={client}\n title={`Website Builder: ${page.title}`}\n >\n <Original />\n <ToggleReadonly />\n </WorkflowStateProvider>\n );\n };\n});\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,SAASC,qBAAqB,QAAQ,uEAAuE;AAC7G,SAASC,eAAe,QAAQ,qBAAqB;AACrD,SAASC,iBAAiB,QAAQ,mBAAmB;AACrD,SAASC,UAAU,EAAEC,gBAAgB,QAAQ,uBAAuB;AACpE,SAASC,WAAW;AACpB,SAASC,gBAAgB,QAAQ,6BAA6B;AAC9D,SAASC,QAAQ,QAAQ,iBAAiB;AAC1C,SAASC,iBAAiB,QAAQ,qDAAqD;AAEvF,MAAM;EAAEC;AAAG,CAAC,GAAGH,gBAAgB;AAE/B,MAAM;EACFI,aAAa,EAAE;IAAEC;EAAsB;AAC3C,CAAC,GAAGR,UAAU;AAEd,MAAMS,cAAc,GAAGL,QAAQ,CAAC,MAAM;EAClC,MAAM;IAAEM;EAAU,CAAC,GAAGT,gBAAgB,CAAC,CAAC;EACxC,MAAMU,MAAM,GAAGN,iBAAiB,CAAC,CAAC;EAElC,MAAMO,QAAQ,GAAG,CAAC,CAACF,SAAS,CAACG,EAAE,CAACC,KAAK,EAAEA,KAAK;EAE5ClB,SAAS,CAAC,MAAM;IACZe,MAAM,CAACI,YAAY,CAACD,KAAK,IAAI;MACzBA,KAAK,CAACE,UAAU,GAAGJ,QAAQ;IAC/B,CAAC,CAAC;EACN,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,OAAO,IAAI;AACf,CAAC,CAAC;AAEF,OAAO,MAAMK,gBAAgB,GAAGX,EAAE,CAACY,MAAM,CAACC,eAAe,CAACC,QAAQ,IAAI;EAClE,OAAO,SAASC,8BAA8BA,CAAA,EAAG;IAC7C,MAAMC,IAAI,GAAGzB,qBAAqB,CAAC0B,GAAG,IAAI;MACtC,OAAO;QACHC,EAAE,EAAED,GAAG,CAACC,EAAE;QACVC,KAAK,EAAEF,GAAG,CAACG,UAAU,CAACD,KAAK,IAAI;MACnC,CAAC;IACL,CAAC,CAAC;IAEF,MAAME,MAAM,GAAG7B,eAAe,CAAC,CAAC;IAChC,MAAM;MAAE8B;IAAS,CAAC,GAAG7B,iBAAiB,CAAC,CAAC;IAExC,oBACIJ,KAAA,CAAAkC,aAAA,CAACrB,qBAAqB;MAClBsB,GAAG,EAAE5B,WAAY;MACjBsB,EAAE,EAAEF,IAAI,CAACE,EAAG;MACZI,QAAQ,EAAEA,QAAS;MACnBD,MAAM,EAAEA,MAAO;MACfF,KAAK,EAAE,oBAAoBH,IAAI,CAACG,KAAK;IAAG,gBAExC9B,KAAA,CAAAkC,aAAA,CAACT,QAAQ,MAAE,CAAC,eACZzB,KAAA,CAAAkC,aAAA,CAACpB,cAAc,MAAE,CACE,CAAC;EAEhC,CAAC;AACL,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Components/PageEditor/PageEditorLayout.js","sources":["../../../src/Components/PageEditor/PageEditorLayout.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { useSelectFromDocument } from \"@webiny/app-website-builder/BaseEditor/hooks/useSelectFromDocument.js\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { useAuthentication } from \"@webiny/app-admin\";\nimport { Components, useWorkflowState } from \"@webiny/app-workflows\";\nimport { WB_PAGE_APP } from \"~/constants.js\";\nimport { PageEditorConfig } from \"@webiny/app-website-builder\";\nimport { observer } from \"mobx-react-lite\";\nimport { useDocumentEditor } from \"@webiny/app-website-builder/DocumentEditor/index.js\";\n\nconst { Ui } = PageEditorConfig;\n\nconst {\n ContentReview: { WorkflowStateProvider }\n} = Components;\n\nconst ToggleReadonly = observer(() => {\n const { presenter } = useWorkflowState();\n const editor = useDocumentEditor();\n\n const hasState = !!presenter.vm.state?.state;\n\n useEffect(() => {\n const options = editor.getEditorOptions();\n editor.updateEditor(state => {\n state.isReadOnly = options.isReadOnly || hasState;\n });\n }, [hasState]);\n\n return null;\n});\n\nexport const PageEditorLayout = Ui.Layout.createDecorator(Original => {\n return function PageEditorTopBarWorkflowsState() {\n const page = useSelectFromDocument(doc => {\n return {\n id: doc.id,\n title: doc.properties.title || \"unknown page\"\n };\n });\n\n const client = useApolloClient();\n const { identity } = useAuthentication();\n\n return (\n <WorkflowStateProvider\n app={WB_PAGE_APP}\n id={page.id}\n identity={identity}\n client={client}\n title={`Website Builder: ${page.title}`}\n >\n <Original />\n <ToggleReadonly />\n </WorkflowStateProvider>\n );\n };\n});\n"],"names":["Ui","PageEditorConfig","WorkflowStateProvider","Components","ToggleReadonly","observer","presenter","useWorkflowState","editor","useDocumentEditor","hasState","useEffect","options","state","PageEditorLayout","Original","page","useSelectFromDocument","doc","client","useApolloClient","identity","useAuthentication","WB_PAGE_APP"],"mappings":";;;;;;;;;AAUA,MAAM,EAAEA,IAAAA,EAAE,EAAE,GAAGC;AAEf,MAAM,EACF,eAAe,EAAEC,uBAAAA,qBAAqB,EAAE,EAC3C,GAAGC;AAEJ,MAAMC,iBAAiBC,SAAS;IAC5B,MAAM,EAAEC,SAAS,EAAE,GAAGC;IACtB,MAAMC,SAASC;IAEf,MAAMC,WAAW,CAAC,CAACJ,UAAU,EAAE,CAAC,KAAK,EAAE;IAEvCK,UAAU;QACN,MAAMC,UAAUJ,OAAO,gBAAgB;QACvCA,OAAO,YAAY,CAACK,CAAAA;YAChBA,MAAM,UAAU,GAAGD,QAAQ,UAAU,IAAIF;QAC7C;IACJ,GAAG;QAACA;KAAS;IAEb,OAAO;AACX;AAEO,MAAMI,mBAAmBd,GAAG,MAAM,CAAC,eAAe,CAACe,CAAAA,WAC/C;QACH,MAAMC,OAAOC,sBAAsBC,CAAAA,MACxB;gBACH,IAAIA,IAAI,EAAE;gBACV,OAAOA,IAAI,UAAU,CAAC,KAAK,IAAI;YACnC;QAGJ,MAAMC,SAASC;QACf,MAAM,EAAEC,QAAQ,EAAE,GAAGC;QAErB,OAAO,WAAP,GACI,oBAACpB,uBAAqBA;YAClB,KAAKqB;YACL,IAAIP,KAAK,EAAE;YACX,UAAUK;YACV,QAAQF;YACR,OAAO,CAAC,iBAAiB,EAAEH,KAAK,KAAK,EAAE;yBAEvC,oBAACD,UAAAA,OAAAA,WAAAA,GACD,oBAACX,gBAAcA;IAG3B"}
@@ -1,4 +1,4 @@
1
- import React from "react";
1
+ import react from "react";
2
2
  import { useApolloClient } from "@apollo/react-hooks";
3
3
  import { PageEditorConfig } from "@webiny/app-website-builder";
4
4
  import { useSelectFromDocument } from "@webiny/app-website-builder/BaseEditor/hooks/useSelectFromDocument.js";
@@ -7,29 +7,25 @@ import { WorkflowStateProvider } from "@webiny/app-workflows/Components/Workflow
7
7
  import { WB_PAGE_APP } from "../../constants.js";
8
8
  import { PageFormWorkflowState } from "./PageFormWorkflowState.js";
9
9
  import { ToggleEditorMode } from "./ToggleEditorMode.js";
10
- const {
11
- Ui
12
- } = PageEditorConfig;
13
- export const PageEditorTopBar = Ui.TopBar.Layout.createDecorator(Original => {
14
- return function PageEditorTopBarWorkflowsState() {
15
- const page = useSelectFromDocument(doc => {
16
- return {
17
- id: doc.id,
18
- title: doc.properties.title || "unknown page"
19
- };
10
+ import { WbPageStatus } from "@webiny/app-website-builder/constants.js";
11
+ const { Ui: Ui } = PageEditorConfig;
12
+ const PageEditorTopBar = Ui.TopBar.Layout.createDecorator((Original)=>function() {
13
+ const page = useSelectFromDocument((doc)=>({
14
+ id: doc.id,
15
+ title: doc.properties.title || "unknown page",
16
+ status: doc.status || "draft"
17
+ }));
18
+ const client = useApolloClient();
19
+ const { identity } = useAuthentication();
20
+ return /*#__PURE__*/ react.createElement(WorkflowStateProvider, {
21
+ app: WB_PAGE_APP,
22
+ id: page.id,
23
+ disabled: page.status !== WbPageStatus.Draft,
24
+ identity: identity,
25
+ client: client,
26
+ title: `Website Builder: ${page.title}`
27
+ }, /*#__PURE__*/ react.createElement(Original, null), /*#__PURE__*/ react.createElement(ToggleEditorMode, null), /*#__PURE__*/ react.createElement(PageFormWorkflowState, null));
20
28
  });
21
- const client = useApolloClient();
22
- const {
23
- identity
24
- } = useAuthentication();
25
- return /*#__PURE__*/React.createElement(WorkflowStateProvider, {
26
- app: WB_PAGE_APP,
27
- id: page.id,
28
- identity: identity,
29
- client: client,
30
- title: `Website Builder: ${page.title}`
31
- }, /*#__PURE__*/React.createElement(Original, null), /*#__PURE__*/React.createElement(ToggleEditorMode, null), /*#__PURE__*/React.createElement(PageFormWorkflowState, null));
32
- };
33
- });
29
+ export { PageEditorTopBar };
34
30
 
35
31
  //# sourceMappingURL=PageEditorTopBar.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useApolloClient","PageEditorConfig","useSelectFromDocument","useAuthentication","WorkflowStateProvider","WB_PAGE_APP","PageFormWorkflowState","ToggleEditorMode","Ui","PageEditorTopBar","TopBar","Layout","createDecorator","Original","PageEditorTopBarWorkflowsState","page","doc","id","title","properties","client","identity","createElement","app"],"sources":["PageEditorTopBar.tsx"],"sourcesContent":["import React from \"react\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { PageEditorConfig } from \"@webiny/app-website-builder\";\nimport { useSelectFromDocument } from \"@webiny/app-website-builder/BaseEditor/hooks/useSelectFromDocument.js\";\nimport { useAuthentication } from \"@webiny/app-admin\";\nimport { WorkflowStateProvider } from \"@webiny/app-workflows/Components/WorkflowState/index.js\";\nimport { WB_PAGE_APP } from \"~/constants.js\";\nimport { PageFormWorkflowState } from \"~/Components/PageEditor/PageFormWorkflowState.js\";\nimport { ToggleEditorMode } from \"~/Components/PageEditor/ToggleEditorMode.js\";\n\nconst { Ui } = PageEditorConfig;\n\nexport const PageEditorTopBar = Ui.TopBar.Layout.createDecorator(Original => {\n return function PageEditorTopBarWorkflowsState() {\n const page = useSelectFromDocument(doc => {\n return {\n id: doc.id,\n title: doc.properties.title || \"unknown page\"\n };\n });\n\n const client = useApolloClient();\n const { identity } = useAuthentication();\n\n return (\n <WorkflowStateProvider\n app={WB_PAGE_APP}\n id={page.id}\n identity={identity}\n client={client}\n title={`Website Builder: ${page.title}`}\n >\n <Original />\n <ToggleEditorMode />\n <PageFormWorkflowState />\n </WorkflowStateProvider>\n );\n };\n});\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,eAAe,QAAQ,qBAAqB;AACrD,SAASC,gBAAgB,QAAQ,6BAA6B;AAC9D,SAASC,qBAAqB,QAAQ,uEAAuE;AAC7G,SAASC,iBAAiB,QAAQ,mBAAmB;AACrD,SAASC,qBAAqB,QAAQ,yDAAyD;AAC/F,SAASC,WAAW;AACpB,SAASC,qBAAqB;AAC9B,SAASC,gBAAgB;AAEzB,MAAM;EAAEC;AAAG,CAAC,GAAGP,gBAAgB;AAE/B,OAAO,MAAMQ,gBAAgB,GAAGD,EAAE,CAACE,MAAM,CAACC,MAAM,CAACC,eAAe,CAACC,QAAQ,IAAI;EACzE,OAAO,SAASC,8BAA8BA,CAAA,EAAG;IAC7C,MAAMC,IAAI,GAAGb,qBAAqB,CAACc,GAAG,IAAI;MACtC,OAAO;QACHC,EAAE,EAAED,GAAG,CAACC,EAAE;QACVC,KAAK,EAAEF,GAAG,CAACG,UAAU,CAACD,KAAK,IAAI;MACnC,CAAC;IACL,CAAC,CAAC;IAEF,MAAME,MAAM,GAAGpB,eAAe,CAAC,CAAC;IAChC,MAAM;MAAEqB;IAAS,CAAC,GAAGlB,iBAAiB,CAAC,CAAC;IAExC,oBACIJ,KAAA,CAAAuB,aAAA,CAAClB,qBAAqB;MAClBmB,GAAG,EAAElB,WAAY;MACjBY,EAAE,EAAEF,IAAI,CAACE,EAAG;MACZI,QAAQ,EAAEA,QAAS;MACnBD,MAAM,EAAEA,MAAO;MACfF,KAAK,EAAE,oBAAoBH,IAAI,CAACG,KAAK;IAAG,gBAExCnB,KAAA,CAAAuB,aAAA,CAACT,QAAQ,MAAE,CAAC,eACZd,KAAA,CAAAuB,aAAA,CAACf,gBAAgB,MAAE,CAAC,eACpBR,KAAA,CAAAuB,aAAA,CAAChB,qBAAqB,MAAE,CACL,CAAC;EAEhC,CAAC;AACL,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Components/PageEditor/PageEditorTopBar.js","sources":["../../../src/Components/PageEditor/PageEditorTopBar.tsx"],"sourcesContent":["import React from \"react\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { PageEditorConfig } from \"@webiny/app-website-builder\";\nimport {\n type EditorDocument,\n useSelectFromDocument\n} from \"@webiny/app-website-builder/BaseEditor/hooks/useSelectFromDocument.js\";\nimport { useAuthentication } from \"@webiny/app-admin\";\nimport { WorkflowStateProvider } from \"@webiny/app-workflows/Components/WorkflowState/index.js\";\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 client = useApolloClient();\n const { identity } = useAuthentication();\n\n return (\n <WorkflowStateProvider\n app={WB_PAGE_APP}\n id={page.id}\n disabled={page.status !== WbPageStatus.Draft}\n identity={identity}\n client={client}\n title={`Website Builder: ${page.title}`}\n >\n <Original />\n <ToggleEditorMode />\n <PageFormWorkflowState />\n </WorkflowStateProvider>\n );\n };\n});\n"],"names":["Ui","PageEditorConfig","PageEditorTopBar","Original","page","useSelectFromDocument","doc","client","useApolloClient","identity","useAuthentication","WorkflowStateProvider","WB_PAGE_APP","WbPageStatus","ToggleEditorMode","PageFormWorkflowState"],"mappings":";;;;;;;;;;AAcA,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,MAAMC,SAASC;QACf,MAAM,EAAEC,QAAQ,EAAE,GAAGC;QAErB,OAAO,WAAP,GACI,oBAACC,uBAAqBA;YAClB,KAAKC;YACL,IAAIR,KAAK,EAAE;YACX,UAAUA,KAAK,MAAM,KAAKS,aAAa,KAAK;YAC5C,UAAUJ;YACV,QAAQF;YACR,OAAO,CAAC,iBAAiB,EAAEH,KAAK,KAAK,EAAE;yBAEvC,oBAACD,UAAAA,OAAAA,WAAAA,GACD,oBAACW,kBAAgBA,OAAAA,WAAAA,GACjB,oBAACC,uBAAqBA;IAGlC"}
@@ -1,19 +1,10 @@
1
- import React from "react";
1
+ import react from "react";
2
2
  import { Components } from "@webiny/app-workflows";
3
- const {
4
- ContentReview: {
5
- WorkflowStateBar
6
- }
7
- } = Components;
8
- export const PageFormWorkflowState = () => {
9
- return /*#__PURE__*/React.createElement(WorkflowStateBar, null, ({
10
- stateBar
11
- }) => {
12
- return /*#__PURE__*/React.createElement("div", {
13
- className: "max-w-screen bg-white p-sm",
14
- "data-affects-preview": "height"
15
- }, stateBar);
16
- });
17
- };
3
+ const { ContentReview: { WorkflowStateBar: WorkflowStateBar } } = Components;
4
+ const PageFormWorkflowState = ()=>/*#__PURE__*/ react.createElement(WorkflowStateBar, null, ({ stateBar })=>/*#__PURE__*/ react.createElement("div", {
5
+ className: "max-w-screen bg-white p-sm",
6
+ "data-affects-preview": "height"
7
+ }, stateBar));
8
+ export { PageFormWorkflowState };
18
9
 
19
10
  //# sourceMappingURL=PageFormWorkflowState.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","Components","ContentReview","WorkflowStateBar","PageFormWorkflowState","createElement","stateBar","className"],"sources":["PageFormWorkflowState.tsx"],"sourcesContent":["import React from \"react\";\nimport { Components } from \"@webiny/app-workflows\";\n\nconst {\n ContentReview: { WorkflowStateBar }\n} = Components;\n\nexport const PageFormWorkflowState = () => {\n return (\n <WorkflowStateBar>\n {({ stateBar }) => {\n return (\n <div className={\"max-w-screen bg-white p-sm\"} data-affects-preview={\"height\"}>\n {stateBar}\n {/*{state ? (\n <Alert className={\"mb-md mt-md\"} type=\"danger\">\n Any changes you do on the page will not be stored!\n </Alert>\n ) : null}*/}\n </div>\n );\n }}\n </WorkflowStateBar>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,QAAQ,uBAAuB;AAElD,MAAM;EACFC,aAAa,EAAE;IAAEC;EAAiB;AACtC,CAAC,GAAGF,UAAU;AAEd,OAAO,MAAMG,qBAAqB,GAAGA,CAAA,KAAM;EACvC,oBACIJ,KAAA,CAAAK,aAAA,CAACF,gBAAgB,QACZ,CAAC;IAAEG;EAAS,CAAC,KAAK;IACf,oBACIN,KAAA,CAAAK,aAAA;MAAKE,SAAS,EAAE,4BAA6B;MAAC,wBAAsB;IAAS,GACxED,QAMA,CAAC;EAEd,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 { Components } from \"@webiny/app-workflows\";\n\nconst {\n ContentReview: { WorkflowStateBar }\n} = Components;\n\nexport const PageFormWorkflowState = () => {\n return (\n <WorkflowStateBar>\n {({ stateBar }) => {\n return (\n <div className={\"max-w-screen bg-white p-sm\"} data-affects-preview={\"height\"}>\n {stateBar}\n </div>\n );\n }}\n </WorkflowStateBar>\n );\n};\n"],"names":["WorkflowStateBar","Components","PageFormWorkflowState","stateBar"],"mappings":";;AAGA,MAAM,EACF,eAAe,EAAEA,kBAAAA,gBAAgB,EAAE,EACtC,GAAGC;AAEG,MAAMC,wBAAwB,IAC1B,WAAP,GACI,oBAACF,kBAAgBA,MACZ,CAAC,EAAEG,QAAQ,EAAE,GACH,WAAP,GACI,oBAAC;YAAI,WAAW;YAA8B,wBAAsB;WAC/DA"}
@@ -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 { WorkflowStateValue, 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.workflow || presenter.vm.state?.state === WorkflowStateValue.approved) 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, 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"],"names":["Ui","PageEditorConfig","WrappedPublishButton","observer","props","presenter","useWorkflowState","WorkflowStateValue","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,QAAQ,IAAIA,UAAU,EAAE,CAAC,KAAK,EAAE,UAAUE,mBAAmB,QAAQ,EACnF,OAAOH,MAAM,OAAO;IAGxB,OAAO;AACX;AAEO,MAAMI,qCAAqCR,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAACS,CAAAA,WACxE,SAA2BL,KAAK;QACnC,IAAIA,AAAe,oBAAfA,MAAM,IAAI,EACV,OAAO,WAAP,GACI,oBAACK,UAAAA;YAAU,GAAGL,KAAK;YAAE,uBAAS,oBAACF,sBAAoBA;gBAAC,SAASE,MAAM,OAAO;;;QAGlF,OAAO,WAAP,GAAO,oBAACK,UAAaL;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"}
@@ -2,18 +2,20 @@ import { useEffect } from "react";
2
2
  import { observer } from "mobx-react-lite";
3
3
  import { useWorkflowState } from "@webiny/app-workflows";
4
4
  import { useDocumentEditor } from "@webiny/app-website-builder/DocumentEditor/index.js";
5
- export const ToggleEditorMode = observer(() => {
6
- const {
7
- presenter
8
- } = useWorkflowState();
9
- const editor = useDocumentEditor();
10
- const hasState = !!presenter.vm.state?.state;
11
- useEffect(() => {
12
- editor.updateEditor(state => {
13
- state.isReadOnly = hasState;
14
- });
15
- }, [hasState]);
16
- return null;
5
+ const ToggleEditorMode = observer(()=>{
6
+ const { presenter } = useWorkflowState();
7
+ const editor = useDocumentEditor();
8
+ const hasState = !!presenter.vm.state?.state;
9
+ useEffect(()=>{
10
+ const options = editor.getEditorOptions();
11
+ editor.updateEditor((state)=>{
12
+ state.isReadOnly = options.isReadOnly || hasState;
13
+ });
14
+ }, [
15
+ hasState
16
+ ]);
17
+ return null;
17
18
  });
19
+ export { ToggleEditorMode };
18
20
 
19
21
  //# sourceMappingURL=ToggleEditorMode.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","observer","useWorkflowState","useDocumentEditor","ToggleEditorMode","presenter","editor","hasState","vm","state","updateEditor","isReadOnly"],"sources":["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 const hasState = !!presenter.vm.state?.state;\n\n useEffect(() => {\n editor.updateEditor(state => {\n state.isReadOnly = hasState;\n });\n }, [hasState]);\n\n return null;\n});\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,OAAO;AACjC,SAASC,QAAQ,QAAQ,iBAAiB;AAC1C,SAASC,gBAAgB,QAAQ,uBAAuB;AACxD,SAASC,iBAAiB,QAAQ,qDAAqD;AAEvF,OAAO,MAAMC,gBAAgB,GAAGH,QAAQ,CAAC,MAAM;EAC3C,MAAM;IAAEI;EAAU,CAAC,GAAGH,gBAAgB,CAAC,CAAC;EACxC,MAAMI,MAAM,GAAGH,iBAAiB,CAAC,CAAC;EAElC,MAAMI,QAAQ,GAAG,CAAC,CAACF,SAAS,CAACG,EAAE,CAACC,KAAK,EAAEA,KAAK;EAE5CT,SAAS,CAAC,MAAM;IACZM,MAAM,CAACI,YAAY,CAACD,KAAK,IAAI;MACzBA,KAAK,CAACE,UAAU,GAAGJ,QAAQ;IAC/B,CAAC,CAAC;EACN,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,OAAO,IAAI;AACf,CAAC,CAAC","ignoreList":[]}
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 const hasState = !!presenter.vm.state?.state;\n\n useEffect(() => {\n const options = editor.getEditorOptions();\n editor.updateEditor(state => {\n state.isReadOnly = options.isReadOnly || hasState;\n });\n }, [hasState]);\n\n return null;\n});\n"],"names":["ToggleEditorMode","observer","presenter","useWorkflowState","editor","useDocumentEditor","hasState","useEffect","options","state"],"mappings":";;;;AAKO,MAAMA,mBAAmBC,SAAS;IACrC,MAAM,EAAEC,SAAS,EAAE,GAAGC;IACtB,MAAMC,SAASC;IAEf,MAAMC,WAAW,CAAC,CAACJ,UAAU,EAAE,CAAC,KAAK,EAAE;IAEvCK,UAAU;QACN,MAAMC,UAAUJ,OAAO,gBAAgB;QACvCA,OAAO,YAAY,CAACK,CAAAA;YAChBA,MAAM,UAAU,GAAGD,QAAQ,UAAU,IAAIF;QAC7C;IACJ,GAAG;QAACA;KAAS;IAEb,OAAO;AACX"}