@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.
- package/Components/OptionItem/OpenInNewWindow.js +26 -33
- package/Components/OptionItem/OpenInNewWindow.js.map +1 -1
- package/Components/OptionItem/index.js +0 -2
- package/Components/PageEditor/PageEditorAutoSave.js +16 -27
- package/Components/PageEditor/PageEditorAutoSave.js.map +1 -1
- package/Components/PageEditor/PageEditorConfig.js +4 -5
- package/Components/PageEditor/PageEditorConfig.js.map +1 -1
- package/Components/PageEditor/PageEditorLayout.js +31 -41
- package/Components/PageEditor/PageEditorLayout.js.map +1 -1
- package/Components/PageEditor/PageEditorTopBar.js +20 -24
- package/Components/PageEditor/PageEditorTopBar.js.map +1 -1
- package/Components/PageEditor/PageFormWorkflowState.js +7 -16
- package/Components/PageEditor/PageFormWorkflowState.js.map +1 -1
- package/Components/PageEditor/PageFormWorkflowStatePublishButton.js +17 -28
- package/Components/PageEditor/PageFormWorkflowStatePublishButton.js.map +1 -1
- package/Components/PageEditor/PageFormWorkflowStateTooltip.js +10 -19
- package/Components/PageEditor/PageFormWorkflowStateTooltip.js.map +1 -1
- package/Components/PageEditor/ToggleEditorMode.js +14 -12
- package/Components/PageEditor/ToggleEditorMode.js.map +1 -1
- package/Components/PageWorkflows/PageWorkflowsEditorView.js +44 -50
- package/Components/PageWorkflows/PageWorkflowsEditorView.js.map +1 -1
- package/Components/PageWorkflows/index.js +0 -2
- package/Components/PagesList/PageListChangeStatus.js +17 -25
- package/Components/PagesList/PageListChangeStatus.js.map +1 -1
- package/Components/PagesList/PagesList.js +3 -4
- package/Components/PagesList/PagesList.js.map +1 -1
- package/Components/PagesList/PagesListContentReviews.js +23 -34
- package/Components/PagesList/PagesListContentReviews.js.map +1 -1
- package/Components/PagesList/index.js +0 -2
- package/Components/index.js +0 -2
- package/Routes/WebsiteBuilderWorkflowsMenu.js +17 -26
- package/Routes/WebsiteBuilderWorkflowsMenu.js.map +1 -1
- package/Routes/index.js +0 -2
- package/constants.js +2 -1
- package/constants.js.map +1 -1
- package/hooks/usePage.js +15 -17
- package/hooks/usePage.js.map +1 -1
- package/index.js +7 -8
- package/index.js.map +1 -1
- package/package.json +11 -11
- package/presentation/page/PageGet/WorkflowStatesGetPageGraphQLFieldSelection.js +10 -7
- package/presentation/page/PageGet/WorkflowStatesGetPageGraphQLFieldSelection.js.map +1 -1
- package/presentation/page/PageGet/feature.js +6 -5
- package/presentation/page/PageGet/feature.js.map +1 -1
- package/presentation/page/PageList/PageListPresenterDecorator.js +31 -32
- package/presentation/page/PageList/PageListPresenterDecorator.js.map +1 -1
- package/presentation/page/PageList/WorkflowStateListPagesFieldSelection.js +10 -7
- package/presentation/page/PageList/WorkflowStateListPagesFieldSelection.js.map +1 -1
- package/presentation/page/PageList/feature.js +7 -6
- package/presentation/page/PageList/feature.js.map +1 -1
- package/routes.js +15 -16
- package/routes.js.map +1 -1
- package/types.js +0 -3
- package/Components/OptionItem/index.js.map +0 -1
- package/Components/PageWorkflows/index.js.map +0 -1
- package/Components/PagesList/index.js.map +0 -1
- package/Components/index.js.map +0 -1
- package/Routes/index.js.map +0 -1
- package/types.js.map +0 -1
|
@@ -1,60 +1,54 @@
|
|
|
1
|
-
import
|
|
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
|
|
6
|
+
import { ReactComponent } from "@webiny/icons/workspaces.svg";
|
|
7
7
|
import { WB_PAGE_APP } from "../../constants.js";
|
|
8
|
-
const {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
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
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
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,"
|
|
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"}
|
|
@@ -1,31 +1,23 @@
|
|
|
1
|
-
import
|
|
1
|
+
import react from "react";
|
|
2
2
|
import { PageListConfig } from "@webiny/app-website-builder";
|
|
3
3
|
import { WorkflowStateValue } from "@webiny/app-workflows/types.js";
|
|
4
4
|
import { usePage } from "../../hooks/usePage.js";
|
|
5
|
-
const {
|
|
6
|
-
|
|
7
|
-
} =
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
} = usePage();
|
|
12
|
-
const state = page.workflows?.state;
|
|
13
|
-
if (!state?.state || state.state === WorkflowStateValue.approved) {
|
|
14
|
-
return props.element;
|
|
15
|
-
}
|
|
16
|
-
return null;
|
|
5
|
+
const { Browser: Browser } = PageListConfig;
|
|
6
|
+
const WrappedElement = (props)=>{
|
|
7
|
+
const { page } = usePage();
|
|
8
|
+
const state = page.workflows?.state;
|
|
9
|
+
if (!state?.state || state.state === WorkflowStateValue.approved) return props.element;
|
|
10
|
+
return null;
|
|
17
11
|
};
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
})
|
|
25
|
-
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
};
|
|
29
|
-
});
|
|
12
|
+
const PageListChangeStatus = Browser.Page.Action.createDecorator((Original)=>function(props) {
|
|
13
|
+
if ("changeStatus" === props.name) return /*#__PURE__*/ react.createElement(Original, {
|
|
14
|
+
...props,
|
|
15
|
+
element: /*#__PURE__*/ react.createElement(WrappedElement, {
|
|
16
|
+
element: props.element
|
|
17
|
+
})
|
|
18
|
+
});
|
|
19
|
+
return /*#__PURE__*/ react.createElement(Original, props);
|
|
20
|
+
});
|
|
21
|
+
export { PageListChangeStatus };
|
|
30
22
|
|
|
31
23
|
//# sourceMappingURL=PageListChangeStatus.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"Components/PagesList/PageListChangeStatus.js","sources":["../../../src/Components/PagesList/PageListChangeStatus.tsx"],"sourcesContent":["import React from \"react\";\nimport { PageListConfig } from \"@webiny/app-website-builder\";\nimport { WorkflowStateValue } from \"@webiny/app-workflows/types.js\";\nimport { usePage } from \"~/hooks/usePage.js\";\n\nconst { Browser } = PageListConfig;\n\ninterface IWrappedElementProps {\n element: React.ReactElement | undefined;\n}\n\nconst WrappedElement = (props: IWrappedElementProps) => {\n const { page } = usePage();\n const state = page.workflows?.state;\n\n if (!state?.state || state.state === WorkflowStateValue.approved) {\n return props.element;\n }\n return null;\n};\n\nexport const PageListChangeStatus = Browser.Page.Action.createDecorator(Original => {\n return function PageListChangeStatusAction(props) {\n if (props.name === \"changeStatus\") {\n return <Original {...props} element={<WrappedElement element={props.element} />} />;\n }\n return <Original {...props} />;\n };\n});\n"],"names":["Browser","PageListConfig","WrappedElement","props","page","usePage","state","WorkflowStateValue","PageListChangeStatus","Original"],"mappings":";;;;AAKA,MAAM,EAAEA,SAAAA,OAAO,EAAE,GAAGC;AAMpB,MAAMC,iBAAiB,CAACC;IACpB,MAAM,EAAEC,IAAI,EAAE,GAAGC;IACjB,MAAMC,QAAQF,KAAK,SAAS,EAAE;IAE9B,IAAI,CAACE,OAAO,SAASA,MAAM,KAAK,KAAKC,mBAAmB,QAAQ,EAC5D,OAAOJ,MAAM,OAAO;IAExB,OAAO;AACX;AAEO,MAAMK,uBAAuBR,QAAQ,IAAI,CAAC,MAAM,CAAC,eAAe,CAACS,CAAAA,WAC7D,SAAoCN,KAAK;QAC5C,IAAIA,AAAe,mBAAfA,MAAM,IAAI,EACV,OAAO,WAAP,GAAO,oBAACM,UAAAA;YAAU,GAAGN,KAAK;YAAE,uBAAS,oBAACD,gBAAcA;gBAAC,SAASC,MAAM,OAAO;;;QAE/E,OAAO,WAAP,GAAO,oBAACM,UAAaN;IACzB"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import react from "react";
|
|
2
2
|
import { PageListConfig } from "@webiny/app-website-builder";
|
|
3
3
|
import { PagesListContentReviews } from "./PagesListContentReviews.js";
|
|
4
4
|
import { PageListChangeStatus } from "./PageListChangeStatus.js";
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
};
|
|
5
|
+
const PagesList = ()=>/*#__PURE__*/ react.createElement(PageListConfig, null, /*#__PURE__*/ react.createElement(PagesListContentReviews, null), /*#__PURE__*/ react.createElement(PageListChangeStatus, null));
|
|
6
|
+
export { PagesList };
|
|
8
7
|
|
|
9
8
|
//# sourceMappingURL=PagesList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"Components/PagesList/PagesList.js","sources":["../../../src/Components/PagesList/PagesList.tsx"],"sourcesContent":["import React from \"react\";\nimport { PageListConfig } from \"@webiny/app-website-builder\";\nimport { PagesListContentReviews } from \"./PagesListContentReviews.js\";\nimport { PageListChangeStatus } from \"./PageListChangeStatus.js\";\n\nexport const PagesList = () => {\n return (\n <PageListConfig>\n {/* Add a Content Reviews button to footer in sidebar */}\n <PagesListContentReviews />\n {/* Decorate the Change Status action in row options to hide it for pages in certain workflow states */}\n <PageListChangeStatus />\n </PageListConfig>\n );\n};\n"],"names":["PagesList","PageListConfig","PagesListContentReviews","PageListChangeStatus"],"mappings":";;;;AAKO,MAAMA,YAAY,IACd,WAAP,GACI,oBAACC,gBAAcA,MAAAA,WAAAA,GAEX,oBAACC,yBAAuBA,OAAAA,WAAAA,GAExB,oBAACC,sBAAoBA"}
|
|
@@ -1,42 +1,31 @@
|
|
|
1
|
-
import
|
|
1
|
+
import react from "react";
|
|
2
2
|
import { Sidebar } from "@webiny/admin-ui";
|
|
3
3
|
import { PageListConfig } from "@webiny/app-website-builder";
|
|
4
4
|
import { Components } from "@webiny/app-workflows";
|
|
5
5
|
import { useApolloClient } from "@apollo/react-hooks";
|
|
6
6
|
import { WB_PAGE_APP } from "../../constants.js";
|
|
7
|
-
import { ReactComponent
|
|
8
|
-
const {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
return /*#__PURE__*/React.createElement(Sidebar.Item, {
|
|
25
|
-
className: "w-full",
|
|
26
|
-
onClick: showOverlay,
|
|
27
|
-
text: "Content Reviews",
|
|
28
|
-
icon: /*#__PURE__*/React.createElement(Sidebar.Item.Icon, {
|
|
29
|
-
element: /*#__PURE__*/React.createElement(WorkflowStateListIcon, null),
|
|
30
|
-
label: "Content Reviews"
|
|
31
|
-
})
|
|
32
|
-
});
|
|
33
|
-
});
|
|
34
|
-
};
|
|
35
|
-
export const PagesListContentReviews = () => {
|
|
36
|
-
return /*#__PURE__*/React.createElement(Browser.Sidebar.Footer, {
|
|
37
|
-
name: "contentReviews",
|
|
38
|
-
element: /*#__PURE__*/React.createElement(PageListContentReviewsButton, null)
|
|
39
|
-
});
|
|
7
|
+
import { ReactComponent } from "@webiny/icons/work_outline.svg";
|
|
8
|
+
const { Overlay: { WorkflowStateListAppOverlay: WorkflowStateListAppOverlay } } = Components;
|
|
9
|
+
const { Browser: Browser } = PageListConfig;
|
|
10
|
+
const PageListContentReviewsButton = ()=>{
|
|
11
|
+
const client = useApolloClient();
|
|
12
|
+
return /*#__PURE__*/ react.createElement(WorkflowStateListAppOverlay, {
|
|
13
|
+
client: client,
|
|
14
|
+
app: WB_PAGE_APP
|
|
15
|
+
}, ({ showOverlay })=>/*#__PURE__*/ react.createElement(Sidebar.Item, {
|
|
16
|
+
className: "w-full",
|
|
17
|
+
onClick: showOverlay,
|
|
18
|
+
text: "Content Reviews",
|
|
19
|
+
icon: /*#__PURE__*/ react.createElement(Sidebar.Item.Icon, {
|
|
20
|
+
element: /*#__PURE__*/ react.createElement(ReactComponent, null),
|
|
21
|
+
label: "Content Reviews"
|
|
22
|
+
})
|
|
23
|
+
}));
|
|
40
24
|
};
|
|
25
|
+
const PagesListContentReviews = ()=>/*#__PURE__*/ react.createElement(Browser.Sidebar.Footer, {
|
|
26
|
+
name: "contentReviews",
|
|
27
|
+
element: /*#__PURE__*/ react.createElement(PageListContentReviewsButton, null)
|
|
28
|
+
});
|
|
29
|
+
export { PagesListContentReviews };
|
|
41
30
|
|
|
42
31
|
//# sourceMappingURL=PagesListContentReviews.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"Components/PagesList/PagesListContentReviews.js","sources":["../../../src/Components/PagesList/PagesListContentReviews.tsx"],"sourcesContent":["import React from \"react\";\nimport { Sidebar } from \"@webiny/admin-ui\";\nimport { PageListConfig } from \"@webiny/app-website-builder\";\nimport { Components } from \"@webiny/app-workflows\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { WB_PAGE_APP } from \"~/constants.js\";\nimport { ReactComponent as WorkflowStateListIcon } from \"@webiny/icons/work_outline.svg\";\n\nconst {\n Overlay: { WorkflowStateListAppOverlay }\n} = Components;\n\nconst { Browser } = PageListConfig;\n\nconst PageListContentReviewsButton = () => {\n const client = useApolloClient();\n\n return (\n <WorkflowStateListAppOverlay client={client} app={WB_PAGE_APP}>\n {({ showOverlay }) => {\n return (\n <Sidebar.Item\n className={\"w-full\"}\n onClick={showOverlay}\n text={\"Content Reviews\"}\n icon={\n <Sidebar.Item.Icon\n element={<WorkflowStateListIcon />}\n label={\"Content Reviews\"}\n />\n }\n />\n );\n }}\n </WorkflowStateListAppOverlay>\n );\n};\n\nexport const PagesListContentReviews = () => {\n return (\n <Browser.Sidebar.Footer\n name={\"contentReviews\"}\n element={<PageListContentReviewsButton />}\n />\n );\n};\n"],"names":["WorkflowStateListAppOverlay","Components","Browser","PageListConfig","PageListContentReviewsButton","client","useApolloClient","WB_PAGE_APP","showOverlay","Sidebar","WorkflowStateListIcon","PagesListContentReviews"],"mappings":";;;;;;;AAQA,MAAM,EACF,SAAS,EAAEA,6BAAAA,2BAA2B,EAAE,EAC3C,GAAGC;AAEJ,MAAM,EAAEC,SAAAA,OAAO,EAAE,GAAGC;AAEpB,MAAMC,+BAA+B;IACjC,MAAMC,SAASC;IAEf,OAAO,WAAP,GACI,oBAACN,6BAA2BA;QAAC,QAAQK;QAAQ,KAAKE;OAC7C,CAAC,EAAEC,WAAW,EAAE,GACN,WAAP,GACI,oBAACC,QAAQ,IAAI;YACT,WAAW;YACX,SAASD;YACT,MAAM;YACN,oBACI,oBAACC,QAAQ,IAAI,CAAC,IAAI;gBACd,uBAAS,oBAACC,gBAAqBA;gBAC/B,OAAO;;;AAQvC;AAEO,MAAMC,0BAA0B,IAC5B,WAAP,GACI,oBAACT,QAAQ,OAAO,CAAC,MAAM;QACnB,MAAM;QACN,uBAAS,oBAACE,8BAA4BA"}
|
package/Components/index.js
CHANGED
|
@@ -1,35 +1,26 @@
|
|
|
1
|
-
import
|
|
1
|
+
import react, { Suspense } from "react";
|
|
2
2
|
import { Routes } from "../routes.js";
|
|
3
|
-
import
|
|
3
|
+
import react_helmet from "react-helmet";
|
|
4
4
|
import { PageWorkflowsEditorMenu, PageWorkflowsEditorView } from "../Components/PageWorkflows/PageWorkflowsEditorView.js";
|
|
5
5
|
import { i18n } from "@webiny/app/i18n/index.js";
|
|
6
|
-
import { SecureRoute } from "@webiny/app-admin";
|
|
6
|
+
import { AdminConfig, AdminLayout, SecureRoute } from "@webiny/app-admin";
|
|
7
7
|
import { OverlayLoader } from "@webiny/admin-ui";
|
|
8
|
-
import { AdminConfig, AdminLayout } from "@webiny/app-admin";
|
|
9
8
|
import { useCanUseWorkflows } from "@webiny/app-workflows";
|
|
10
9
|
const t = i18n.namespace("WebsiteBuilder.Page.Workflows.Editor");
|
|
11
|
-
const Loader = ({
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
if (!canUseWorkflows) {
|
|
25
|
-
return null;
|
|
26
|
-
}
|
|
27
|
-
return /*#__PURE__*/React.createElement(AdminConfig, null, /*#__PURE__*/React.createElement(Route, {
|
|
28
|
-
route: Routes.Pages.Workflows,
|
|
29
|
-
element: /*#__PURE__*/React.createElement(SecureRoute, {
|
|
30
|
-
permission: "wb.page"
|
|
31
|
-
}, /*#__PURE__*/React.createElement(AdminLayout, null, /*#__PURE__*/React.createElement(Helmet, null, /*#__PURE__*/React.createElement("title", null, t`Workflows`)), /*#__PURE__*/React.createElement(Loader, null, /*#__PURE__*/React.createElement(PageWorkflowsEditorView, null))))
|
|
32
|
-
}), /*#__PURE__*/React.createElement(PageWorkflowsEditorMenu, null));
|
|
10
|
+
const Loader = ({ children, ...props })=>/*#__PURE__*/ react.createElement(Suspense, {
|
|
11
|
+
fallback: /*#__PURE__*/ react.createElement(OverlayLoader, null)
|
|
12
|
+
}, /*#__PURE__*/ react.cloneElement(children, props));
|
|
13
|
+
const { Route: Route } = AdminConfig;
|
|
14
|
+
const WebsiteBuilderWorkflowsMenu = ()=>{
|
|
15
|
+
const { canUseWorkflows } = useCanUseWorkflows();
|
|
16
|
+
if (!canUseWorkflows) return null;
|
|
17
|
+
return /*#__PURE__*/ react.createElement(AdminConfig, null, /*#__PURE__*/ react.createElement(Route, {
|
|
18
|
+
route: Routes.Pages.Workflows,
|
|
19
|
+
element: /*#__PURE__*/ react.createElement(SecureRoute, {
|
|
20
|
+
permission: "wb.page"
|
|
21
|
+
}, /*#__PURE__*/ react.createElement(AdminLayout, null, /*#__PURE__*/ react.createElement(react_helmet, null, /*#__PURE__*/ react.createElement("title", null, t`Workflows`)), /*#__PURE__*/ react.createElement(Loader, null, /*#__PURE__*/ react.createElement(PageWorkflowsEditorView, null))))
|
|
22
|
+
}), /*#__PURE__*/ react.createElement(PageWorkflowsEditorMenu, null));
|
|
33
23
|
};
|
|
24
|
+
export { WebsiteBuilderWorkflowsMenu };
|
|
34
25
|
|
|
35
26
|
//# sourceMappingURL=WebsiteBuilderWorkflowsMenu.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"Routes/WebsiteBuilderWorkflowsMenu.js","sources":["../../src/Routes/WebsiteBuilderWorkflowsMenu.tsx"],"sourcesContent":["import React, { Suspense } from \"react\";\nimport { Routes } from \"~/routes.js\";\nimport Helmet from \"react-helmet\";\nimport {\n PageWorkflowsEditorMenu,\n PageWorkflowsEditorView\n} from \"~/Components/PageWorkflows/PageWorkflowsEditorView.js\";\nimport { i18n } from \"@webiny/app/i18n/index.js\";\nimport { SecureRoute } from \"@webiny/app-admin\";\nimport { OverlayLoader } from \"@webiny/admin-ui\";\nimport { AdminConfig, AdminLayout } from \"@webiny/app-admin\";\nimport { useCanUseWorkflows } from \"@webiny/app-workflows\";\n\nconst t = i18n.namespace(\"WebsiteBuilder.Page.Workflows.Editor\");\n\ninterface LoaderProps {\n children: React.ReactNode;\n}\n\nconst Loader = ({ children, ...props }: LoaderProps) => (\n <Suspense fallback={<OverlayLoader />}>\n {React.cloneElement(children as unknown as React.ReactElement, props)}\n </Suspense>\n);\n\nconst { Route } = AdminConfig;\n\nexport const WebsiteBuilderWorkflowsMenu = () => {\n const { canUseWorkflows } = useCanUseWorkflows();\n if (!canUseWorkflows) {\n return null;\n }\n return (\n <AdminConfig>\n <Route\n route={Routes.Pages.Workflows}\n element={\n <SecureRoute permission={\"wb.page\"}>\n <AdminLayout>\n <Helmet>\n <title>{t`Workflows`}</title>\n </Helmet>\n <Loader>\n <PageWorkflowsEditorView />\n </Loader>\n </AdminLayout>\n </SecureRoute>\n }\n />\n <PageWorkflowsEditorMenu />\n </AdminConfig>\n );\n};\n"],"names":["t","i18n","Loader","children","props","Suspense","OverlayLoader","React","Route","AdminConfig","WebsiteBuilderWorkflowsMenu","canUseWorkflows","useCanUseWorkflows","Routes","SecureRoute","AdminLayout","Helmet","PageWorkflowsEditorView","PageWorkflowsEditorMenu"],"mappings":";;;;;;;;AAaA,MAAMA,IAAIC,KAAK,SAAS,CAAC;AAMzB,MAAMC,SAAS,CAAC,EAAEC,QAAQ,EAAE,GAAGC,OAAoB,iBAC/C,oBAACC,UAAQA;QAAC,wBAAU,oBAACC,eAAaA;qBAC7BC,MAAAA,YAAkB,CAACJ,UAA2CC;AAIvE,MAAM,EAAEI,OAAAA,KAAK,EAAE,GAAGC;AAEX,MAAMC,8BAA8B;IACvC,MAAM,EAAEC,eAAe,EAAE,GAAGC;IAC5B,IAAI,CAACD,iBACD,OAAO;IAEX,OAAO,WAAP,GACI,oBAACF,aAAWA,MAAAA,WAAAA,GACR,oBAACD,OAAKA;QACF,OAAOK,OAAO,KAAK,CAAC,SAAS;QAC7B,uBACI,oBAACC,aAAWA;YAAC,YAAY;yBACrB,oBAACC,aAAWA,MAAAA,WAAAA,GACR,oBAACC,cAAMA,MAAAA,WAAAA,GACH,oBAAC,eAAOhB,CAAC,CAAC,SAAS,CAAC,kBAExB,oBAACE,QAAMA,MAAAA,WAAAA,GACH,oBAACe,yBAAuBA;sBAM5C,oBAACC,yBAAuBA;AAGpC"}
|
package/Routes/index.js
CHANGED
package/constants.js
CHANGED
package/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../src/constants.ts"],"sourcesContent":["export const WB_PAGE_APP = \"wb.page\";\n"],"names":["WB_PAGE_APP"],"mappings":"AAAO,MAAMA,cAAc"}
|
package/hooks/usePage.js
CHANGED
|
@@ -1,20 +1,18 @@
|
|
|
1
|
-
import { usePage
|
|
2
|
-
const decoratePage = page
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
...usage,
|
|
16
|
-
page: decoratePage(usage.page)
|
|
17
|
-
};
|
|
1
|
+
import { usePage } from "@webiny/app-website-builder/modules/pages/PagesList/hooks/usePage.js";
|
|
2
|
+
const decoratePage = (page)=>({
|
|
3
|
+
...page,
|
|
4
|
+
workflows: {
|
|
5
|
+
...page.workflows
|
|
6
|
+
},
|
|
7
|
+
$selectable: false
|
|
8
|
+
});
|
|
9
|
+
const usePage_usePage = ()=>{
|
|
10
|
+
const usage = usePage();
|
|
11
|
+
return {
|
|
12
|
+
...usage,
|
|
13
|
+
page: decoratePage(usage.page)
|
|
14
|
+
};
|
|
18
15
|
};
|
|
16
|
+
export { usePage_usePage as usePage };
|
|
19
17
|
|
|
20
18
|
//# sourceMappingURL=usePage.js.map
|
package/hooks/usePage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"hooks/usePage.js","sources":["../../src/hooks/usePage.ts"],"sourcesContent":["import { usePage as baseUsePage } from \"@webiny/app-website-builder/modules/pages/PagesList/hooks/usePage.js\";\nimport type { PageDto } from \"@webiny/app-website-builder/domain/Page/index.js\";\nimport type { WithWorkflows } from \"~/types.js\";\n\nconst decoratePage = (page: PageDto): WithWorkflows<PageDto> => {\n return {\n ...page,\n workflows: {\n // @ts-expect-error\n ...page.workflows\n },\n $selectable: false\n };\n};\n\nexport const usePage = () => {\n const usage = baseUsePage();\n\n return {\n ...usage,\n page: decoratePage(usage.page)\n };\n};\n"],"names":["decoratePage","page","usePage","usage","baseUsePage"],"mappings":";AAIA,MAAMA,eAAe,CAACC,OACX;QACH,GAAGA,IAAI;QACP,WAAW;YAEP,GAAGA,KAAK,SAAS;QACrB;QACA,aAAa;IACjB;AAGG,MAAMC,kBAAU;IACnB,MAAMC,QAAQC;IAEd,OAAO;QACH,GAAGD,KAAK;QACR,MAAMH,aAAaG,MAAM,IAAI;IACjC;AACJ"}
|
package/index.js
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
|
-
import
|
|
1
|
+
import react from "react";
|
|
2
2
|
import { RegisterFeature, Wcp } from "@webiny/app-admin";
|
|
3
3
|
import { WebsiteBuilderWorkflowsMenu } from "./Routes/index.js";
|
|
4
4
|
import { ListOpenInNewWindow, PageEditorConfig, PagesList } from "./Components/index.js";
|
|
5
5
|
import { PageListWorkflowsFeature } from "./presentation/page/PageList/feature.js";
|
|
6
6
|
import { PageGetWorkflowsFeature } from "./presentation/page/PageGet/feature.js";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
};
|
|
7
|
+
const WebsiteBuilderWorkflows = ()=>/*#__PURE__*/ react.createElement(Wcp.CanUseWorkflows, null, /*#__PURE__*/ react.createElement(RegisterFeature, {
|
|
8
|
+
feature: PageListWorkflowsFeature
|
|
9
|
+
}), /*#__PURE__*/ react.createElement(RegisterFeature, {
|
|
10
|
+
feature: PageGetWorkflowsFeature
|
|
11
|
+
}), /*#__PURE__*/ react.createElement(WebsiteBuilderWorkflowsMenu, null), /*#__PURE__*/ react.createElement(PageEditorConfig, null), /*#__PURE__*/ react.createElement(PagesList, null), /*#__PURE__*/ react.createElement(ListOpenInNewWindow, null));
|
|
12
|
+
export { WebsiteBuilderWorkflows };
|
|
14
13
|
|
|
15
14
|
//# sourceMappingURL=index.js.map
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/index.tsx"],"sourcesContent":["import React from \"react\";\nimport { RegisterFeature, Wcp } from \"@webiny/app-admin\";\nimport { WebsiteBuilderWorkflowsMenu } from \"~/Routes/index.js\";\nimport { ListOpenInNewWindow, PageEditorConfig, PagesList } from \"~/Components/index.js\";\nimport { PageListWorkflowsFeature } from \"~/presentation/page/PageList/feature.js\";\nimport { PageGetWorkflowsFeature } from \"~/presentation/page/PageGet/feature.js\";\n\nexport const WebsiteBuilderWorkflows = () => {\n return (\n <Wcp.CanUseWorkflows>\n <RegisterFeature feature={PageListWorkflowsFeature} />\n <RegisterFeature feature={PageGetWorkflowsFeature} />\n <WebsiteBuilderWorkflowsMenu />\n <PageEditorConfig />\n <PagesList />\n <ListOpenInNewWindow />\n </Wcp.CanUseWorkflows>\n );\n};\n"],"names":["WebsiteBuilderWorkflows","Wcp","RegisterFeature","PageListWorkflowsFeature","PageGetWorkflowsFeature","WebsiteBuilderWorkflowsMenu","PageEditorConfig","PagesList","ListOpenInNewWindow"],"mappings":";;;;;;AAOO,MAAMA,0BAA0B,IAC5B,WAAP,GACI,oBAACC,IAAI,eAAe,sBAChB,oBAACC,iBAAeA;QAAC,SAASC;sBAC1B,oBAACD,iBAAeA;QAAC,SAASE;sBAC1B,oBAACC,6BAA2BA,OAAAA,WAAAA,GAC5B,oBAACC,kBAAgBA,OAAAA,WAAAA,GACjB,oBAACC,WAASA,OAAAA,WAAAA,GACV,oBAACC,qBAAmBA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/app-website-builder-workflows",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.4.0-beta.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./index.js",
|
|
@@ -14,14 +14,14 @@
|
|
|
14
14
|
"license": "MIT",
|
|
15
15
|
"dependencies": {
|
|
16
16
|
"@apollo/react-hooks": "3.1.5",
|
|
17
|
-
"@webiny/admin-ui": "6.
|
|
18
|
-
"@webiny/app": "6.
|
|
19
|
-
"@webiny/app-admin": "6.
|
|
20
|
-
"@webiny/app-website-builder": "6.
|
|
21
|
-
"@webiny/app-workflows": "6.
|
|
22
|
-
"@webiny/feature": "6.
|
|
23
|
-
"@webiny/icons": "6.
|
|
24
|
-
"mobx": "6.15.
|
|
17
|
+
"@webiny/admin-ui": "6.4.0-beta.0",
|
|
18
|
+
"@webiny/app": "6.4.0-beta.0",
|
|
19
|
+
"@webiny/app-admin": "6.4.0-beta.0",
|
|
20
|
+
"@webiny/app-website-builder": "6.4.0-beta.0",
|
|
21
|
+
"@webiny/app-workflows": "6.4.0-beta.0",
|
|
22
|
+
"@webiny/feature": "6.4.0-beta.0",
|
|
23
|
+
"@webiny/icons": "6.4.0-beta.0",
|
|
24
|
+
"mobx": "6.15.3",
|
|
25
25
|
"mobx-react-lite": "4.1.1",
|
|
26
26
|
"react": "18.3.1",
|
|
27
27
|
"react-dom": "18.3.1",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@types/react": "18.3.28",
|
|
32
|
-
"@webiny/build-tools": "6.
|
|
32
|
+
"@webiny/build-tools": "6.4.0-beta.0",
|
|
33
33
|
"rimraf": "6.1.3",
|
|
34
34
|
"typescript": "6.0.3"
|
|
35
35
|
},
|
|
@@ -42,5 +42,5 @@
|
|
|
42
42
|
"removeViewBox": false
|
|
43
43
|
}
|
|
44
44
|
},
|
|
45
|
-
"gitHead": "
|
|
45
|
+
"gitHead": "a545d7529828af07d08d49c3da1bcb967483b9ce"
|
|
46
46
|
}
|
|
@@ -1,19 +1,22 @@
|
|
|
1
1
|
import { GetPageGraphQLFieldSelection } from "@webiny/app-website-builder/features/pages/getPage/abstractions.js";
|
|
2
2
|
class WorkflowStatesGetPageGraphQLFieldSelection {
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
getSelection() {
|
|
4
|
+
return [
|
|
5
|
+
`system {
|
|
5
6
|
workflow {
|
|
6
7
|
workflowId
|
|
7
8
|
stepId
|
|
8
9
|
stepName
|
|
9
10
|
state
|
|
10
11
|
}
|
|
11
|
-
}`
|
|
12
|
-
|
|
12
|
+
}`
|
|
13
|
+
];
|
|
14
|
+
}
|
|
13
15
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
16
|
+
const WorkflowStateGetPageFieldSelection = GetPageGraphQLFieldSelection.createImplementation({
|
|
17
|
+
dependencies: [],
|
|
18
|
+
implementation: WorkflowStatesGetPageGraphQLFieldSelection
|
|
17
19
|
});
|
|
20
|
+
export { WorkflowStateGetPageFieldSelection };
|
|
18
21
|
|
|
19
22
|
//# sourceMappingURL=WorkflowStatesGetPageGraphQLFieldSelection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"presentation/page/PageGet/WorkflowStatesGetPageGraphQLFieldSelection.js","sources":["../../../../src/presentation/page/PageGet/WorkflowStatesGetPageGraphQLFieldSelection.ts"],"sourcesContent":["import { GetPageGraphQLFieldSelection } from \"@webiny/app-website-builder/features/pages/getPage/abstractions.js\";\n\nclass WorkflowStatesGetPageGraphQLFieldSelection implements GetPageGraphQLFieldSelection.Interface {\n getSelection(): string[] {\n return [\n `system {\n workflow {\n workflowId\n stepId\n stepName\n state\n }\n }`\n ];\n }\n}\n\nexport const WorkflowStateGetPageFieldSelection = GetPageGraphQLFieldSelection.createImplementation(\n {\n dependencies: [],\n implementation: WorkflowStatesGetPageGraphQLFieldSelection\n }\n);\n"],"names":["WorkflowStatesGetPageGraphQLFieldSelection","WorkflowStateGetPageFieldSelection","GetPageGraphQLFieldSelection"],"mappings":";AAEA,MAAMA;IACF,eAAyB;QACrB,OAAO;YACH,CAAC;;;;;;;aAOA,CAAC;SACL;IACL;AACJ;AAEO,MAAMC,qCAAqCC,6BAA6B,oBAAoB,CAC/F;IACI,cAAc,EAAE;IAChB,gBAAgBF;AACpB"}
|