@webiny/app-headless-cms 5.39.1 → 5.39.2-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 (30) hide show
  1. package/admin/components/ContentEntries/BulkActions/ActionDelete.js +8 -1
  2. package/admin/components/ContentEntries/BulkActions/ActionDelete.js.map +1 -1
  3. package/admin/components/ContentModelEditor/ContentModelEditorProvider.d.ts +1 -3
  4. package/admin/components/ContentModelEditor/ContentModelEditorProvider.js +0 -2
  5. package/admin/components/ContentModelEditor/ContentModelEditorProvider.js.map +1 -1
  6. package/admin/components/ContentModelEditor/Editor.js +2 -6
  7. package/admin/components/ContentModelEditor/Editor.js.map +1 -1
  8. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.d.ts +34 -3
  9. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js +60 -20
  10. package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js.map +1 -1
  11. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.d.ts +13 -1
  12. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js +30 -13
  13. package/admin/plugins/fieldRenderers/dynamicZone/dynamicZoneRenderer.js.map +1 -1
  14. package/admin/plugins/fieldRenderers/dynamicZone/index.d.ts +2 -0
  15. package/admin/plugins/fieldRenderers/dynamicZone/index.js +39 -0
  16. package/admin/plugins/fieldRenderers/dynamicZone/index.js.map +1 -0
  17. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.d.ts +3 -3
  18. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js +10 -6
  19. package/admin/views/contentEntries/ContentEntry/ContentEntryContext.js.map +1 -1
  20. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js +2 -5
  21. package/admin/views/contentEntries/ContentEntry/RevisionListItem.js.map +1 -1
  22. package/admin/views/contentEntries/ContentEntry.js +4 -2
  23. package/admin/views/contentEntries/ContentEntry.js.map +1 -1
  24. package/components.d.ts +13 -0
  25. package/components.js +27 -0
  26. package/components.js.map +1 -0
  27. package/index.d.ts +2 -1
  28. package/index.js +16 -4
  29. package/index.js.map +1 -1
  30. package/package.json +26 -26
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_emotion","_Accordion","_SingleValueDynamicZone","_MultiValueDynamicZone","_FormElementMessage","noBottomPadding","css","DynamicZoneContent","_ref","field","getBind","contentModel","templates","settings","length","console","info","concat","fieldId","isMultipleValues","multipleValues","Bind","Component","MultiValueDynamicZone","SingleValueDynamicZone","default","createElement","bind","_bind$validation","validation","isValid","message","Fragment","Accordion","AccordionItem","title","label","description","helpText","className","undefined","FormElementMessage","error","dynamicZoneFieldRenderer","type","name","renderer","rendererName","canUse","_ref2","render","props","exports"],"sources":["dynamicZoneRenderer.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport { Accordion, AccordionItem } from \"@webiny/ui/Accordion\";\nimport { CmsModelFieldRendererPlugin, CmsModelFieldRendererProps } from \"~/types\";\nimport { SingleValueDynamicZone } from \"./SingleValueDynamicZone\";\nimport { MultiValueDynamicZone } from \"./MultiValueDynamicZone\";\nimport { FormElementMessage } from \"@webiny/ui/FormElementMessage\";\n\nconst noBottomPadding = css`\n > .webiny-ui-accordion-item__content {\n padding-bottom: 0 !important;\n }\n`;\n\nconst DynamicZoneContent = ({ field, getBind, contentModel }: CmsModelFieldRendererProps) => {\n const templates = field.settings?.templates || [];\n if (!templates.length) {\n console.info(\n `Skipping \"${field.fieldId}\" field. There are no templates defined for this dynamic zone.`\n );\n return null;\n }\n\n const isMultipleValues = field.multipleValues === true;\n const Bind = getBind();\n\n const Component = isMultipleValues ? MultiValueDynamicZone : SingleValueDynamicZone;\n\n return (\n <Bind>\n {bind => {\n const { isValid, message } = bind.validation;\n return (\n <>\n <Accordion>\n <AccordionItem\n title={field.label}\n description={field.helpText}\n className={isMultipleValues ? noBottomPadding : undefined}\n >\n <Component\n bind={bind}\n field={field}\n getBind={getBind}\n contentModel={contentModel}\n />\n </AccordionItem>\n </Accordion>\n {isValid === false && (\n <FormElementMessage error={true}>{message}</FormElementMessage>\n )}\n </>\n );\n }}\n </Bind>\n );\n};\n\nexport const dynamicZoneFieldRenderer: CmsModelFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-dynamic-zone\",\n renderer: {\n rendererName: \"dynamicZone\",\n name: \"Dynamic Zone\",\n description: \"Renders a dynamic zone.\",\n canUse({ field }) {\n return field.type === \"dynamicZone\";\n },\n render(props) {\n return <DynamicZoneContent {...props} />;\n }\n }\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAEA,IAAAG,uBAAA,GAAAH,OAAA;AACA,IAAAI,sBAAA,GAAAJ,OAAA;AACA,IAAAK,mBAAA,GAAAL,OAAA;AAEA,IAAMM,eAAe,oBAAGC,YAAG,6FAI1B;AAED,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,IAAA,EAAqE;EAAA,IAA/DC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,OAAO,GAAAF,IAAA,CAAPE,OAAO;IAAEC,YAAY,GAAAH,IAAA,CAAZG,YAAY;EACtD,IAAMC,SAAS,GAAGH,KAAK,CAACI,QAAQ,EAAED,SAAS,IAAI,EAAE;EACjD,IAAI,CAACA,SAAS,CAACE,MAAM,EAAE;IACnBC,OAAO,CAACC,IAAI,eAAAC,MAAA,CACKR,KAAK,CAACS,OAAO,oEAC9B,CAAC;IACD,OAAO,IAAI;EACf;EAEA,IAAMC,gBAAgB,GAAGV,KAAK,CAACW,cAAc,KAAK,IAAI;EACtD,IAAMC,IAAI,GAAGX,OAAO,CAAC,CAAC;EAEtB,IAAMY,SAAS,GAAGH,gBAAgB,GAAGI,4CAAqB,GAAGC,8CAAsB;EAEnF,oBACI3B,MAAA,CAAA4B,OAAA,CAAAC,aAAA,CAACL,IAAI,QACA,UAAAM,IAAI,EAAI;IACL,IAAAC,gBAAA,GAA6BD,IAAI,CAACE,UAAU;MAApCC,OAAO,GAAAF,gBAAA,CAAPE,OAAO;MAAEC,OAAO,GAAAH,gBAAA,CAAPG,OAAO;IACxB,oBACIlC,MAAA,CAAA4B,OAAA,CAAAC,aAAA,CAAA7B,MAAA,CAAA4B,OAAA,CAAAO,QAAA,qBACInC,MAAA,CAAA4B,OAAA,CAAAC,aAAA,CAACzB,UAAA,CAAAgC,SAAS,qBACNpC,MAAA,CAAA4B,OAAA,CAAAC,aAAA,CAACzB,UAAA,CAAAiC,aAAa;MACVC,KAAK,EAAE1B,KAAK,CAAC2B,KAAM;MACnBC,WAAW,EAAE5B,KAAK,CAAC6B,QAAS;MAC5BC,SAAS,EAAEpB,gBAAgB,GAAGd,eAAe,GAAGmC;IAAU,gBAE1D3C,MAAA,CAAA4B,OAAA,CAAAC,aAAA,CAACJ,SAAS;MACNK,IAAI,EAAEA,IAAK;MACXlB,KAAK,EAAEA,KAAM;MACbC,OAAO,EAAEA,OAAQ;MACjBC,YAAY,EAAEA;IAAa,CAC9B,CACU,CACR,CAAC,EACXmB,OAAO,KAAK,KAAK,iBACdjC,MAAA,CAAA4B,OAAA,CAAAC,aAAA,CAACtB,mBAAA,CAAAqC,kBAAkB;MAACC,KAAK,EAAE;IAAK,GAAEX,OAA4B,CAEpE,CAAC;EAEX,CACE,CAAC;AAEf,CAAC;AAEM,IAAMY,wBAAqD,GAAG;EACjEC,IAAI,EAAE,2BAA2B;EACjCC,IAAI,EAAE,wCAAwC;EAC9CC,QAAQ,EAAE;IACNC,YAAY,EAAE,aAAa;IAC3BF,IAAI,EAAE,cAAc;IACpBR,WAAW,EAAE,yBAAyB;IACtCW,MAAM,WAAAA,OAAAC,KAAA,EAAY;MAAA,IAATxC,KAAK,GAAAwC,KAAA,CAALxC,KAAK;MACV,OAAOA,KAAK,CAACmC,IAAI,KAAK,aAAa;IACvC,CAAC;IACDM,MAAM,WAAAA,OAACC,KAAK,EAAE;MACV,oBAAOtD,MAAA,CAAA4B,OAAA,CAAAC,aAAA,CAACnB,kBAAkB,EAAK4C,KAAQ,CAAC;IAC5C;EACJ;AACJ,CAAC;AAACC,OAAA,CAAAT,wBAAA,GAAAA,wBAAA"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_emotion","_Accordion","_SingleValueDynamicZone","_MultiValueDynamicZone","_FormElementMessage","_reactComposition","noBottomPadding","css","DynamicZoneContainer","makeDecoratable","props","field","_props$bind$validatio","bind","validation","isValid","message","_props$title","title","label","_props$description","description","helpText","className","children","defaultClassName","multipleValues","undefined","default","createElement","Fragment","Accordion","AccordionItem","FormElementMessage","error","exports","DynamicZoneContent","_ref","getBind","contentModel","templates","settings","length","console","info","concat","fieldId","Bind","Component","MultiValueDynamicZone","SingleValueDynamicZone","dynamicZoneFieldRenderer","type","name","renderer","rendererName","canUse","_ref2","render"],"sources":["dynamicZoneRenderer.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport { Accordion, AccordionItem } from \"@webiny/ui/Accordion\";\nimport {\n BindComponent,\n BindComponentRenderProp,\n CmsModel,\n CmsModelField,\n CmsModelFieldRendererPlugin,\n CmsModelFieldRendererProps\n} from \"~/types\";\nimport { SingleValueDynamicZone } from \"./SingleValueDynamicZone\";\nimport { MultiValueDynamicZone } from \"./MultiValueDynamicZone\";\nimport { FormElementMessage } from \"@webiny/ui/FormElementMessage\";\nimport { makeDecoratable } from \"@webiny/react-composition\";\n\nconst noBottomPadding = css`\n > .webiny-ui-accordion-item__content {\n padding-bottom: 0 !important;\n }\n`;\n\nexport type DynamicZoneContainerProps = {\n field: CmsModelField;\n getBind: (index?: number, key?: string) => BindComponent;\n contentModel: CmsModel;\n bind: BindComponentRenderProp;\n children: React.ReactNode;\n title?: string;\n description?: string;\n className?: string;\n};\n\nexport const DynamicZoneContainer = makeDecoratable<\n React.FunctionComponent<DynamicZoneContainerProps>\n>(\"DynamicZoneContainer\", props => {\n const {\n field,\n bind: {\n validation: { isValid, message }\n },\n title = field.label,\n description = field.helpText,\n className,\n children\n } = props;\n\n const defaultClassName = field.multipleValues ? noBottomPadding : undefined;\n\n return (\n <>\n <Accordion>\n <AccordionItem\n title={title}\n description={description}\n className={className || defaultClassName}\n >\n {children}\n </AccordionItem>\n </Accordion>\n {isValid === false && <FormElementMessage error={true}>{message}</FormElementMessage>}\n </>\n );\n});\n\nconst DynamicZoneContent = ({ field, getBind, contentModel }: CmsModelFieldRendererProps) => {\n const templates = field.settings?.templates || [];\n if (!templates.length) {\n console.info(\n `Skipping \"${field.fieldId}\" field. There are no templates defined for this dynamic zone.`\n );\n return null;\n }\n\n const Bind = getBind();\n\n const Component = field.multipleValues ? MultiValueDynamicZone : SingleValueDynamicZone;\n\n return (\n <Bind>\n {bind => {\n return (\n <DynamicZoneContainer\n field={field}\n bind={bind}\n getBind={getBind}\n contentModel={contentModel}\n >\n <Component\n bind={bind}\n field={field}\n getBind={getBind}\n contentModel={contentModel}\n />\n </DynamicZoneContainer>\n );\n }}\n </Bind>\n );\n};\n\nexport const dynamicZoneFieldRenderer: CmsModelFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-dynamic-zone\",\n renderer: {\n rendererName: \"dynamicZone\",\n name: \"Dynamic Zone\",\n description: \"Renders a dynamic zone.\",\n canUse({ field }) {\n return field.type === \"dynamicZone\";\n },\n render(props) {\n return <DynamicZoneContent {...props} />;\n }\n }\n};\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { DynamicZoneContainerProps, DynamicZoneContainer } from "./dynamicZoneRenderer";
2
+ export { MultiValueItemContainer, MultiValueContainer, MultiValueItem } from "./MultiValueDynamicZone";
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "DynamicZoneContainer", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _dynamicZoneRenderer.DynamicZoneContainer;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "DynamicZoneContainerProps", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _dynamicZoneRenderer.DynamicZoneContainerProps;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "MultiValueContainer", {
19
+ enumerable: true,
20
+ get: function get() {
21
+ return _MultiValueDynamicZone.MultiValueContainer;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "MultiValueItem", {
25
+ enumerable: true,
26
+ get: function get() {
27
+ return _MultiValueDynamicZone.MultiValueItem;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "MultiValueItemContainer", {
31
+ enumerable: true,
32
+ get: function get() {
33
+ return _MultiValueDynamicZone.MultiValueItemContainer;
34
+ }
35
+ });
36
+ var _dynamicZoneRenderer = require("./dynamicZoneRenderer");
37
+ var _MultiValueDynamicZone = require("./MultiValueDynamicZone");
38
+
39
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_dynamicZoneRenderer","require","_MultiValueDynamicZone"],"sources":["index.tsx"],"sourcesContent":["export { DynamicZoneContainerProps, DynamicZoneContainer } from \"./dynamicZoneRenderer\";\nexport {\n MultiValueItemContainer,\n MultiValueContainer,\n MultiValueItem\n} from \"./MultiValueDynamicZone\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,oBAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA"}
@@ -1,7 +1,6 @@
1
- import React, { Dispatch, MutableRefObject, RefObject, SetStateAction } from "react";
1
+ import React, { Dispatch, MutableRefObject, SetStateAction } from "react";
2
2
  import { ContentEntriesContext } from "../ContentEntriesContext";
3
3
  import { CmsContentEntry, CmsContentEntryRevision } from "../../../../types";
4
- import { TabsImperativeApi } from "@webiny/ui/Tabs";
5
4
  import { FormAPI, FormSubmitOptions } from "@webiny/form";
6
5
  interface ContentEntryContextForm {
7
6
  submit: (ev: React.SyntheticEvent, options?: FormSubmitOptions) => Promise<CmsContentEntry | null>;
@@ -16,7 +15,8 @@ export interface ContentEntryContext extends ContentEntriesContext {
16
15
  setLoading: Dispatch<SetStateAction<boolean>>;
17
16
  revisions: CmsContentEntryRevision[];
18
17
  refetchContent: () => void;
19
- tabsRef: RefObject<TabsImperativeApi | undefined>;
18
+ setActiveTab(index: number): void;
19
+ activeTab: number;
20
20
  showEmptyView: boolean;
21
21
  }
22
22
  export declare const Context: React.Context<ContentEntryContext | undefined>;
@@ -39,6 +39,10 @@ var ContentEntryProvider = function ContentEntryProvider(_ref) {
39
39
  var children = _ref.children,
40
40
  isNewEntry = _ref.isNewEntry,
41
41
  getContentId = _ref.getContentId;
42
+ var _useState = (0, _react.useState)(0),
43
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
44
+ activeTab = _useState2[0],
45
+ setActiveTab = _useState2[1];
42
46
  var _useContentEntries = (0, _useContentEntries2.useContentEntries)(),
43
47
  contentModel = _useContentEntries.contentModel,
44
48
  canCreate = _useContentEntries.canCreate;
@@ -55,10 +59,10 @@ var ContentEntryProvider = function ContentEntryProvider(_ref) {
55
59
  history = _useRouter3.history;
56
60
  var _useSnackbar = (0, _useSnackbar2.useSnackbar)(),
57
61
  showSnackbar = _useSnackbar.showSnackbar;
58
- var _useState = (0, _react.useState)(false),
59
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
60
- isLoading = _useState2[0],
61
- setLoading = _useState2[1];
62
+ var _useState3 = (0, _react.useState)(false),
63
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
64
+ isLoading = _useState4[0],
65
+ setLoading = _useState4[1];
62
66
  var contentEntryProviderProps = useContentEntryProviderProps();
63
67
  var newEntry = typeof isNewEntry === "function" ? isNewEntry() : contentEntryProviderProps.isNewEntry();
64
68
  var contentId = typeof getContentId === "function" ? getContentId() : contentEntryProviderProps.getContentId();
@@ -70,7 +74,6 @@ var ContentEntryProvider = function ContentEntryProvider(_ref) {
70
74
  entryId = result.id;
71
75
  version = result.version;
72
76
  }
73
- var tabsRef = (0, _react.useRef)();
74
77
  var _useMemo = (0, _react.useMemo)(function () {
75
78
  return {
76
79
  READ_CONTENT: (0, _appHeadlessCmsCommon.createReadQuery)(contentModel)
@@ -149,7 +152,8 @@ var ContentEntryProvider = function ContentEntryProvider(_ref) {
149
152
  refetchContent: getEntry.refetch,
150
153
  setFormRef: setFormRef,
151
154
  setLoading: setLoading,
152
- tabsRef: tabsRef,
155
+ setActiveTab: setActiveTab,
156
+ activeTab: activeTab,
153
157
  showEmptyView: !newEntry && !loading && (0, _isEmpty.default)(entry)
154
158
  };
155
159
  return /*#__PURE__*/_react.default.createElement(Context.Provider, {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_isEmpty","_interopRequireDefault","_get","_reactRouter","_useSnackbar2","_hooks","_useContentEntries2","_utils","_appHeadlessCmsCommon","_getFetchPolicy","Context","React","createContext","undefined","exports","useContentEntryProviderProps","_useRouter","useRouter","location","query","URLSearchParams","search","isNewEntry","get","getContentId","ContentEntryProvider","_ref","children","_useContentEntries","useContentEntries","contentModel","canCreate","_useRouter2","_search","_slicedToArray2","default","formRef","useRef","submit","_useRouter3","history","_useSnackbar","useSnackbar","showSnackbar","_useState","useState","_useState2","isLoading","setLoading","contentEntryProviderProps","newEntry","contentId","revisionId","decodeURIComponent","entryId","version","result","parseIdentifier","id","tabsRef","_useMemo","useMemo","READ_CONTENT","createReadQuery","modelId","_useMemo2","GET_REVISIONS","createRevisionsQuery","setFormRef","useCallback","form","current","folderIdPath","folderId","concat","encodeURIComponent","createEntry","push","variables","revision","getEntry","useQuery","skip","fetchPolicy","getFetchPolicy","onCompleted","data","error","content","message","getRevisions","useEffect","loading","refetch","entry","value","revisions","refetchContent","showEmptyView","isEmpty","createElement","Provider","displayName"],"sources":["ContentEntryContext.tsx"],"sourcesContent":["import React, {\n Dispatch,\n MutableRefObject,\n RefObject,\n SetStateAction,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState\n} from \"react\";\nimport isEmpty from \"lodash/isEmpty\";\nimport get from \"lodash/get\";\nimport { useRouter } from \"@webiny/react-router\";\nimport { useSnackbar } from \"@webiny/app-admin/hooks/useSnackbar\";\nimport { useQuery } from \"~/admin/hooks\";\nimport { ContentEntriesContext } from \"~/admin/views/contentEntries/ContentEntriesContext\";\nimport { useContentEntries } from \"~/admin/views/contentEntries/hooks/useContentEntries\";\nimport { CmsContentEntry, CmsContentEntryRevision } from \"~/types\";\nimport { TabsImperativeApi } from \"@webiny/ui/Tabs\";\nimport { parseIdentifier } from \"@webiny/utils\";\nimport {\n CmsEntriesListRevisionsQueryResponse,\n CmsEntriesListRevisionsQueryVariables,\n CmsEntryGetQueryResponse,\n CmsEntryGetQueryVariables,\n createReadQuery,\n createRevisionsQuery\n} from \"@webiny/app-headless-cms-common\";\nimport { getFetchPolicy } from \"~/utils/getFetchPolicy\";\nimport { FormAPI, FormSubmitOptions } from \"@webiny/form\";\n\ninterface ContentEntryContextForm {\n submit: (\n ev: React.SyntheticEvent,\n options?: FormSubmitOptions\n ) => Promise<CmsContentEntry | null>;\n}\ntype ContentEntryContextFormRef = MutableRefObject<ContentEntryContextForm>;\nexport interface ContentEntryContext extends ContentEntriesContext {\n createEntry: () => void;\n entry: CmsContentEntry;\n form: ContentEntryContextFormRef;\n setFormRef: (form: Pick<FormAPI, \"submit\">) => void;\n loading: boolean;\n setLoading: Dispatch<SetStateAction<boolean>>;\n revisions: CmsContentEntryRevision[];\n refetchContent: () => void;\n tabsRef: RefObject<TabsImperativeApi | undefined>;\n showEmptyView: boolean;\n}\n\nexport const Context = React.createContext<ContentEntryContext | undefined>(undefined);\n\nexport interface ContentEntryContextProviderProps extends Partial<UseContentEntryProviderProps> {\n children: React.ReactNode;\n}\n\ninterface UseContentEntryProviderProps {\n getContentId: () => string | null;\n isNewEntry: () => boolean;\n}\n\nexport const useContentEntryProviderProps = (): UseContentEntryProviderProps => {\n const { location } = useRouter();\n const query = new URLSearchParams(location.search);\n\n const isNewEntry = (): boolean => {\n return query.get(\"new\") === \"true\";\n };\n\n const getContentId = (): string | null => {\n return query.get(\"id\") || null;\n };\n\n return {\n getContentId,\n isNewEntry\n };\n};\n\nexport const ContentEntryProvider = ({\n children,\n isNewEntry,\n getContentId\n}: ContentEntryContextProviderProps) => {\n const { contentModel, canCreate } = useContentEntries();\n\n const { search } = useRouter();\n const [query] = search;\n\n const formRef = useRef<ContentEntryContextForm>({\n submit: async () => {\n return null;\n }\n });\n const { history } = useRouter();\n const { showSnackbar } = useSnackbar();\n const [isLoading, setLoading] = useState<boolean>(false);\n\n const contentEntryProviderProps = useContentEntryProviderProps();\n\n const newEntry =\n typeof isNewEntry === \"function\" ? isNewEntry() : contentEntryProviderProps.isNewEntry();\n const contentId =\n typeof getContentId === \"function\"\n ? getContentId()\n : contentEntryProviderProps.getContentId();\n\n const revisionId = contentId ? decodeURIComponent(contentId) : null;\n let entryId: string | null = null;\n let version: number | null = null;\n if (revisionId) {\n const result = parseIdentifier(revisionId);\n entryId = result.id;\n version = result.version;\n }\n\n const tabsRef = useRef<TabsImperativeApi>();\n\n const { READ_CONTENT } = useMemo(() => {\n return {\n READ_CONTENT: createReadQuery(contentModel)\n };\n }, [contentModel.modelId]);\n\n const { GET_REVISIONS } = useMemo(() => {\n return {\n GET_REVISIONS: createRevisionsQuery(contentModel)\n };\n }, [contentModel.modelId]);\n\n const setFormRef = useCallback(\n form => {\n formRef.current = form;\n },\n [formRef]\n );\n\n const folderIdPath = useMemo(() => {\n const folderId = query.get(\"folderId\");\n if (!folderId) {\n return \"\";\n }\n return `&folderId=${encodeURIComponent(folderId)}`;\n }, [query]);\n\n const createEntry = useCallback((): void => {\n history.push(`/cms/content-entries/${contentModel.modelId}?new=true${folderIdPath}`);\n }, [contentModel.modelId, folderIdPath]);\n\n let variables: CmsEntryGetQueryVariables | undefined;\n if (version === null && entryId) {\n variables = {\n entryId\n };\n } else {\n variables = {\n revision: revisionId as string\n };\n }\n\n const getEntry = useQuery<CmsEntryGetQueryResponse, CmsEntryGetQueryVariables>(READ_CONTENT, {\n variables,\n skip: !revisionId,\n fetchPolicy: getFetchPolicy(contentModel),\n onCompleted: data => {\n if (!data) {\n return;\n }\n\n const { error } = data.content;\n if (!error) {\n return;\n }\n history.push(`/cms/content-entries/${contentModel.modelId}`);\n showSnackbar(error.message);\n }\n });\n\n const getRevisions = useQuery<\n CmsEntriesListRevisionsQueryResponse,\n CmsEntriesListRevisionsQueryVariables\n >(GET_REVISIONS, {\n variables: {\n id: entryId as string\n },\n skip: !entryId\n });\n\n useEffect(() => {\n if (getRevisions.loading || !entryId) {\n return;\n }\n getRevisions.refetch({\n id: entryId\n });\n }, [revisionId, getRevisions]);\n\n const loading = isLoading || getEntry.loading || getRevisions.loading;\n const entry = (get(getEntry, \"data.content.data\") as unknown as CmsContentEntry) || {};\n\n const value: ContentEntryContext = {\n canCreate,\n contentModel,\n createEntry,\n entry,\n form: formRef,\n loading,\n revisions: get(getRevisions, \"data.revisions.data\") || [],\n refetchContent: getEntry.refetch,\n setFormRef,\n setLoading,\n tabsRef,\n showEmptyView: !newEntry && !loading && isEmpty(entry)\n };\n\n return <Context.Provider value={value}>{children}</Context.Provider>;\n};\n\nContentEntryProvider.displayName = \"ContentEntryProvider\";\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_isEmpty","_interopRequireDefault","_get","_reactRouter","_useSnackbar2","_hooks","_useContentEntries2","_utils","_appHeadlessCmsCommon","_getFetchPolicy","Context","React","createContext","undefined","exports","useContentEntryProviderProps","_useRouter","useRouter","location","query","URLSearchParams","search","isNewEntry","get","getContentId","ContentEntryProvider","_ref","children","_useState","useState","_useState2","_slicedToArray2","default","activeTab","setActiveTab","_useContentEntries","useContentEntries","contentModel","canCreate","_useRouter2","_search","formRef","useRef","submit","_useRouter3","history","_useSnackbar","useSnackbar","showSnackbar","_useState3","_useState4","isLoading","setLoading","contentEntryProviderProps","newEntry","contentId","revisionId","decodeURIComponent","entryId","version","result","parseIdentifier","id","_useMemo","useMemo","READ_CONTENT","createReadQuery","modelId","_useMemo2","GET_REVISIONS","createRevisionsQuery","setFormRef","useCallback","form","current","folderIdPath","folderId","concat","encodeURIComponent","createEntry","push","variables","revision","getEntry","useQuery","skip","fetchPolicy","getFetchPolicy","onCompleted","data","error","content","message","getRevisions","useEffect","loading","refetch","entry","value","revisions","refetchContent","showEmptyView","isEmpty","createElement","Provider","displayName"],"sources":["ContentEntryContext.tsx"],"sourcesContent":["import React, {\n Dispatch,\n MutableRefObject,\n SetStateAction,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState\n} from \"react\";\nimport isEmpty from \"lodash/isEmpty\";\nimport get from \"lodash/get\";\nimport { useRouter } from \"@webiny/react-router\";\nimport { useSnackbar } from \"@webiny/app-admin/hooks/useSnackbar\";\nimport { useQuery } from \"~/admin/hooks\";\nimport { ContentEntriesContext } from \"~/admin/views/contentEntries/ContentEntriesContext\";\nimport { useContentEntries } from \"~/admin/views/contentEntries/hooks/useContentEntries\";\nimport { CmsContentEntry, CmsContentEntryRevision } from \"~/types\";\nimport { parseIdentifier } from \"@webiny/utils\";\nimport {\n CmsEntriesListRevisionsQueryResponse,\n CmsEntriesListRevisionsQueryVariables,\n CmsEntryGetQueryResponse,\n CmsEntryGetQueryVariables,\n createReadQuery,\n createRevisionsQuery\n} from \"@webiny/app-headless-cms-common\";\nimport { getFetchPolicy } from \"~/utils/getFetchPolicy\";\nimport { FormAPI, FormSubmitOptions } from \"@webiny/form\";\n\ninterface ContentEntryContextForm {\n submit: (\n ev: React.SyntheticEvent,\n options?: FormSubmitOptions\n ) => Promise<CmsContentEntry | null>;\n}\ntype ContentEntryContextFormRef = MutableRefObject<ContentEntryContextForm>;\nexport interface ContentEntryContext extends ContentEntriesContext {\n createEntry: () => void;\n entry: CmsContentEntry;\n form: ContentEntryContextFormRef;\n setFormRef: (form: Pick<FormAPI, \"submit\">) => void;\n loading: boolean;\n setLoading: Dispatch<SetStateAction<boolean>>;\n revisions: CmsContentEntryRevision[];\n refetchContent: () => void;\n setActiveTab(index: number): void;\n activeTab: number;\n showEmptyView: boolean;\n}\n\nexport const Context = React.createContext<ContentEntryContext | undefined>(undefined);\n\nexport interface ContentEntryContextProviderProps extends Partial<UseContentEntryProviderProps> {\n children: React.ReactNode;\n}\n\ninterface UseContentEntryProviderProps {\n getContentId: () => string | null;\n isNewEntry: () => boolean;\n}\n\nexport const useContentEntryProviderProps = (): UseContentEntryProviderProps => {\n const { location } = useRouter();\n const query = new URLSearchParams(location.search);\n\n const isNewEntry = (): boolean => {\n return query.get(\"new\") === \"true\";\n };\n\n const getContentId = (): string | null => {\n return query.get(\"id\") || null;\n };\n\n return {\n getContentId,\n isNewEntry\n };\n};\n\nexport const ContentEntryProvider = ({\n children,\n isNewEntry,\n getContentId\n}: ContentEntryContextProviderProps) => {\n const [activeTab, setActiveTab] = useState(0);\n const { contentModel, canCreate } = useContentEntries();\n\n const { search } = useRouter();\n const [query] = search;\n\n const formRef = useRef<ContentEntryContextForm>({\n submit: async () => {\n return null;\n }\n });\n const { history } = useRouter();\n const { showSnackbar } = useSnackbar();\n const [isLoading, setLoading] = useState<boolean>(false);\n\n const contentEntryProviderProps = useContentEntryProviderProps();\n\n const newEntry =\n typeof isNewEntry === \"function\" ? isNewEntry() : contentEntryProviderProps.isNewEntry();\n const contentId =\n typeof getContentId === \"function\"\n ? getContentId()\n : contentEntryProviderProps.getContentId();\n\n const revisionId = contentId ? decodeURIComponent(contentId) : null;\n let entryId: string | null = null;\n let version: number | null = null;\n if (revisionId) {\n const result = parseIdentifier(revisionId);\n entryId = result.id;\n version = result.version;\n }\n\n const { READ_CONTENT } = useMemo(() => {\n return {\n READ_CONTENT: createReadQuery(contentModel)\n };\n }, [contentModel.modelId]);\n\n const { GET_REVISIONS } = useMemo(() => {\n return {\n GET_REVISIONS: createRevisionsQuery(contentModel)\n };\n }, [contentModel.modelId]);\n\n const setFormRef = useCallback(\n form => {\n formRef.current = form;\n },\n [formRef]\n );\n\n const folderIdPath = useMemo(() => {\n const folderId = query.get(\"folderId\");\n if (!folderId) {\n return \"\";\n }\n return `&folderId=${encodeURIComponent(folderId)}`;\n }, [query]);\n\n const createEntry = useCallback((): void => {\n history.push(`/cms/content-entries/${contentModel.modelId}?new=true${folderIdPath}`);\n }, [contentModel.modelId, folderIdPath]);\n\n let variables: CmsEntryGetQueryVariables | undefined;\n if (version === null && entryId) {\n variables = {\n entryId\n };\n } else {\n variables = {\n revision: revisionId as string\n };\n }\n\n const getEntry = useQuery<CmsEntryGetQueryResponse, CmsEntryGetQueryVariables>(READ_CONTENT, {\n variables,\n skip: !revisionId,\n fetchPolicy: getFetchPolicy(contentModel),\n onCompleted: data => {\n if (!data) {\n return;\n }\n\n const { error } = data.content;\n if (!error) {\n return;\n }\n history.push(`/cms/content-entries/${contentModel.modelId}`);\n showSnackbar(error.message);\n }\n });\n\n const getRevisions = useQuery<\n CmsEntriesListRevisionsQueryResponse,\n CmsEntriesListRevisionsQueryVariables\n >(GET_REVISIONS, {\n variables: {\n id: entryId as string\n },\n skip: !entryId\n });\n\n useEffect(() => {\n if (getRevisions.loading || !entryId) {\n return;\n }\n getRevisions.refetch({\n id: entryId\n });\n }, [revisionId, getRevisions]);\n\n const loading = isLoading || getEntry.loading || getRevisions.loading;\n const entry = (get(getEntry, \"data.content.data\") as unknown as CmsContentEntry) || {};\n\n const value: ContentEntryContext = {\n canCreate,\n contentModel,\n createEntry,\n entry,\n form: formRef,\n loading,\n revisions: get(getRevisions, \"data.revisions.data\") || [],\n refetchContent: getEntry.refetch,\n setFormRef,\n setLoading,\n setActiveTab,\n activeTab,\n showEmptyView: !newEntry && !loading && isEmpty(entry)\n };\n\n return <Context.Provider value={value}>{children}</Context.Provider>;\n};\n\nContentEntryProvider.displayName = \"ContentEntryProvider\";\n"],"mappings":"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"}
@@ -86,7 +86,7 @@ var RevisionListItem = function RevisionListItem(_ref) {
86
86
  showConfirmation = _useConfirmationDialo.showConfirmation;
87
87
  var _useContentEntry = (0, _useContentEntry2.useContentEntry)(),
88
88
  entry = _useContentEntry.entry,
89
- tabsRef = _useContentEntry.tabsRef;
89
+ setActiveTab = _useContentEntry.setActiveTab;
90
90
  var _usePermission = (0, _usePermission2.default)(),
91
91
  canEdit = _usePermission.canEdit,
92
92
  canDelete = _usePermission.canDelete,
@@ -120,10 +120,7 @@ var RevisionListItem = function RevisionListItem(_ref) {
120
120
  })), t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["New from current"])))), !revision.meta.locked && canEdit(entry, "cms.contentEntry") && /*#__PURE__*/_react.default.createElement(_Menu.MenuItem, {
121
121
  onClick: function onClick() {
122
122
  editRevision();
123
- if (!tabsRef.current) {
124
- return;
125
- }
126
- tabsRef.current.switchTab(0);
123
+ setActiveTab(0);
127
124
  }
128
125
  }, /*#__PURE__*/_react.default.createElement(_List.ListItemGraphic, null, /*#__PURE__*/_react.default.createElement(_Icon.Icon, {
129
126
  icon: /*#__PURE__*/_react.default.createElement(_edit.ReactComponent, null)
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_emotion","_DateTime","_List","_Button","_Icon","_Menu","_Tooltip","_more_vert","_lock","_beenhere","_gesture","_add","_edit","_unpublish","_delete","_i18n","_useRevision2","_usePermission2","_useContentEntry2","_PublishEntryRevisionListItem","_appAdmin","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","t","i18n","ns","primaryColor","css","color","revisionsMenu","width","right","left","getIcon","rev","meta","locked","status","icon","default","createElement","Icon","ReactComponent","text","className","RevisionListItem","_ref","revision","_useRevision","useRevision","createRevision","deleteRevision","publishRevision","unpublishRevision","editRevision","_useConfirmationDialo","useConfirmationDialog","title","_taggedTemplateLiteral2","message","version","showConfirmation","_useContentEntry","useContentEntry","entry","tabsRef","_usePermission","usePermission","canEdit","canDelete","canPublish","canUnpublish","_getIcon","tooltipText","ListItem","ListItemGraphic","Tooltip","content","placement","ListItemText","ListItemTextPrimary","ListItemTextSecondary","author","revisionCreatedBy","displayName","time","Date","date","revisionCreatedOn","ListItemMeta","Menu","handle","IconButton","MenuItem","onClick","id","current","switchTab","PublishEntryRevisionListItem","MenuDivider","_default","exports"],"sources":["RevisionListItem.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport { Date } from \"@webiny/ui/DateTime\";\nimport {\n ListItem,\n ListItemText,\n ListItemTextPrimary,\n ListItemTextSecondary,\n ListItemGraphic,\n ListItemMeta\n} from \"@webiny/ui/List\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { MenuItem, Menu, MenuDivider } from \"@webiny/ui/Menu\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { ReactComponent as MoreVerticalIcon } from \"~/admin/icons/more_vert.svg\";\nimport { ReactComponent as LockIcon } from \"~/admin/icons/lock.svg\";\nimport { ReactComponent as BeenHereIcon } from \"~/admin/icons/beenhere.svg\";\nimport { ReactComponent as GestureIcon } from \"~/admin/icons/gesture.svg\";\nimport { ReactComponent as AddIcon } from \"~/admin/icons/add.svg\";\nimport { ReactComponent as EditIcon } from \"~/admin/icons/edit.svg\";\nimport { ReactComponent as UnpublishIcon } from \"~/admin/icons/unpublish.svg\";\nimport { ReactComponent as DeleteIcon } from \"~/admin/icons/delete.svg\";\nimport { CmsContentEntryRevision } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { useRevision } from \"./useRevision\";\nimport usePermission from \"~/admin/hooks/usePermission\";\nimport { useContentEntry } from \"~/admin/views/contentEntries/hooks/useContentEntry\";\nimport { PublishEntryRevisionListItem } from \"./PublishEntryRevisionListItem\";\nimport { useConfirmationDialog } from \"@webiny/app-admin\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/plugins/content-details/content-revisions\");\n\nconst primaryColor = css({ color: \"var(--mdc-theme-primary)\" });\n\nconst revisionsMenu = css({\n width: 250,\n right: -105,\n left: \"auto !important\"\n});\n\nconst getIcon = (rev: CmsContentEntryRevision) => {\n switch (true) {\n case rev.meta.locked && rev.meta.status !== \"published\":\n return {\n icon: <Icon icon={<LockIcon />} data-testid={\"cms.revision.status.locked\"} />,\n text: \"This revision is locked (it has already been published)\"\n };\n case rev.meta.status === \"published\":\n return {\n icon: (\n <Icon\n icon={<BeenHereIcon />}\n className={primaryColor}\n data-testid={\"cms.revision.status.published\"}\n />\n ),\n text: \"This revision is currently published!\"\n };\n default:\n return {\n icon: <Icon icon={<GestureIcon />} data-testid={\"cms.revision.status.draft\"} />,\n text: \"This is a draft\"\n };\n }\n};\n\ninterface RevisionListItemProps {\n revision: CmsContentEntryRevision;\n}\n\nconst RevisionListItem = ({ revision }: RevisionListItemProps) => {\n const { createRevision, deleteRevision, publishRevision, unpublishRevision, editRevision } =\n useRevision({\n revision\n });\n\n const { showConfirmation } = useConfirmationDialog({\n title: t`Delete content entry revision`,\n message: (\n <span>\n {t`You are about to delete revision {revision}. Are you sure you want to continue?`(\n {\n revision: <strong>#{revision.meta.version}</strong>\n }\n )}\n </span>\n )\n });\n const { entry, tabsRef } = useContentEntry();\n const { canEdit, canDelete, canPublish, canUnpublish } = usePermission();\n const { icon, text: tooltipText } = getIcon(revision);\n\n return (\n <ListItem>\n <ListItemGraphic>\n <Tooltip content={tooltipText} placement={\"bottom\"}>\n {icon}\n </Tooltip>\n </ListItemGraphic>\n <ListItemText>\n <ListItemTextPrimary>{revision.meta.title || t`N/A`}</ListItemTextPrimary>\n <ListItemTextSecondary>\n {t`Last modified by {author} on {time} (#{version})`({\n author: revision.revisionCreatedBy.displayName,\n time: <Date date={revision.revisionCreatedOn} />,\n version: revision.meta.version\n })}\n </ListItemTextSecondary>\n </ListItemText>\n <ListItemMeta>\n <Menu\n handle={<IconButton icon={<MoreVerticalIcon />} />}\n className={revisionsMenu}\n data-testid={\"cms.content-form.revisions.more-options\"}\n >\n {canEdit(entry, \"cms.contentEntry\") && (\n <MenuItem\n onClick={() => createRevision(revision.id)}\n data-testid={\"cms.revision.create-revision\"}\n >\n <ListItemGraphic>\n <Icon icon={<AddIcon />} />\n </ListItemGraphic>\n {t`New from current`}\n </MenuItem>\n )}\n\n {!revision.meta.locked && canEdit(entry, \"cms.contentEntry\") && (\n <MenuItem\n onClick={() => {\n editRevision();\n if (!tabsRef.current) {\n return;\n }\n tabsRef.current.switchTab(0);\n }}\n >\n <ListItemGraphic>\n <Icon icon={<EditIcon />} />\n </ListItemGraphic>\n {t`Edit`}\n </MenuItem>\n )}\n\n {revision.meta.status !== \"published\" && canPublish(\"cms.contentEntry\") && (\n <MenuItem onClick={() => publishRevision(revision.id)}>\n <PublishEntryRevisionListItem />\n </MenuItem>\n )}\n\n {revision.meta.status === \"published\" && canUnpublish(\"cms.contentEntry\") && (\n <MenuItem\n onClick={() => unpublishRevision(revision.id)}\n data-testid={\"cms.revision.unpublish\"}\n >\n <ListItemGraphic>\n <Icon icon={<UnpublishIcon />} />\n </ListItemGraphic>\n {t`Unpublish`}\n </MenuItem>\n )}\n\n {!revision.meta.locked && canDelete(entry, \"cms.contentEntry\") && (\n <div>\n <MenuDivider />\n <MenuItem onClick={() => showConfirmation(deleteRevision)}>\n <ListItemGraphic>\n <Icon icon={<DeleteIcon />} />\n </ListItemGraphic>\n {t` Delete`}\n </MenuItem>\n </div>\n )}\n </Menu>\n </ListItemMeta>\n </ListItem>\n );\n};\n\nexport default RevisionListItem;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_emotion","_DateTime","_List","_Button","_Icon","_Menu","_Tooltip","_more_vert","_lock","_beenhere","_gesture","_add","_edit","_unpublish","_delete","_i18n","_useRevision2","_usePermission2","_useContentEntry2","_PublishEntryRevisionListItem","_appAdmin","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","t","i18n","ns","primaryColor","css","color","revisionsMenu","width","right","left","getIcon","rev","meta","locked","status","icon","default","createElement","Icon","ReactComponent","text","className","RevisionListItem","_ref","revision","_useRevision","useRevision","createRevision","deleteRevision","publishRevision","unpublishRevision","editRevision","_useConfirmationDialo","useConfirmationDialog","title","_taggedTemplateLiteral2","message","version","showConfirmation","_useContentEntry","useContentEntry","entry","setActiveTab","_usePermission","usePermission","canEdit","canDelete","canPublish","canUnpublish","_getIcon","tooltipText","ListItem","ListItemGraphic","Tooltip","content","placement","ListItemText","ListItemTextPrimary","ListItemTextSecondary","author","revisionCreatedBy","displayName","time","Date","date","revisionCreatedOn","ListItemMeta","Menu","handle","IconButton","MenuItem","onClick","id","PublishEntryRevisionListItem","MenuDivider","_default","exports"],"sources":["RevisionListItem.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport { Date } from \"@webiny/ui/DateTime\";\nimport {\n ListItem,\n ListItemText,\n ListItemTextPrimary,\n ListItemTextSecondary,\n ListItemGraphic,\n ListItemMeta\n} from \"@webiny/ui/List\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { MenuItem, Menu, MenuDivider } from \"@webiny/ui/Menu\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { ReactComponent as MoreVerticalIcon } from \"~/admin/icons/more_vert.svg\";\nimport { ReactComponent as LockIcon } from \"~/admin/icons/lock.svg\";\nimport { ReactComponent as BeenHereIcon } from \"~/admin/icons/beenhere.svg\";\nimport { ReactComponent as GestureIcon } from \"~/admin/icons/gesture.svg\";\nimport { ReactComponent as AddIcon } from \"~/admin/icons/add.svg\";\nimport { ReactComponent as EditIcon } from \"~/admin/icons/edit.svg\";\nimport { ReactComponent as UnpublishIcon } from \"~/admin/icons/unpublish.svg\";\nimport { ReactComponent as DeleteIcon } from \"~/admin/icons/delete.svg\";\nimport { CmsContentEntryRevision } from \"~/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { useRevision } from \"./useRevision\";\nimport usePermission from \"~/admin/hooks/usePermission\";\nimport { useContentEntry } from \"~/admin/views/contentEntries/hooks/useContentEntry\";\nimport { PublishEntryRevisionListItem } from \"./PublishEntryRevisionListItem\";\nimport { useConfirmationDialog } from \"@webiny/app-admin\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/plugins/content-details/content-revisions\");\n\nconst primaryColor = css({ color: \"var(--mdc-theme-primary)\" });\n\nconst revisionsMenu = css({\n width: 250,\n right: -105,\n left: \"auto !important\"\n});\n\nconst getIcon = (rev: CmsContentEntryRevision) => {\n switch (true) {\n case rev.meta.locked && rev.meta.status !== \"published\":\n return {\n icon: <Icon icon={<LockIcon />} data-testid={\"cms.revision.status.locked\"} />,\n text: \"This revision is locked (it has already been published)\"\n };\n case rev.meta.status === \"published\":\n return {\n icon: (\n <Icon\n icon={<BeenHereIcon />}\n className={primaryColor}\n data-testid={\"cms.revision.status.published\"}\n />\n ),\n text: \"This revision is currently published!\"\n };\n default:\n return {\n icon: <Icon icon={<GestureIcon />} data-testid={\"cms.revision.status.draft\"} />,\n text: \"This is a draft\"\n };\n }\n};\n\ninterface RevisionListItemProps {\n revision: CmsContentEntryRevision;\n}\n\nconst RevisionListItem = ({ revision }: RevisionListItemProps) => {\n const { createRevision, deleteRevision, publishRevision, unpublishRevision, editRevision } =\n useRevision({\n revision\n });\n\n const { showConfirmation } = useConfirmationDialog({\n title: t`Delete content entry revision`,\n message: (\n <span>\n {t`You are about to delete revision {revision}. Are you sure you want to continue?`(\n {\n revision: <strong>#{revision.meta.version}</strong>\n }\n )}\n </span>\n )\n });\n const { entry, setActiveTab } = useContentEntry();\n const { canEdit, canDelete, canPublish, canUnpublish } = usePermission();\n const { icon, text: tooltipText } = getIcon(revision);\n\n return (\n <ListItem>\n <ListItemGraphic>\n <Tooltip content={tooltipText} placement={\"bottom\"}>\n {icon}\n </Tooltip>\n </ListItemGraphic>\n <ListItemText>\n <ListItemTextPrimary>{revision.meta.title || t`N/A`}</ListItemTextPrimary>\n <ListItemTextSecondary>\n {t`Last modified by {author} on {time} (#{version})`({\n author: revision.revisionCreatedBy.displayName,\n time: <Date date={revision.revisionCreatedOn} />,\n version: revision.meta.version\n })}\n </ListItemTextSecondary>\n </ListItemText>\n <ListItemMeta>\n <Menu\n handle={<IconButton icon={<MoreVerticalIcon />} />}\n className={revisionsMenu}\n data-testid={\"cms.content-form.revisions.more-options\"}\n >\n {canEdit(entry, \"cms.contentEntry\") && (\n <MenuItem\n onClick={() => createRevision(revision.id)}\n data-testid={\"cms.revision.create-revision\"}\n >\n <ListItemGraphic>\n <Icon icon={<AddIcon />} />\n </ListItemGraphic>\n {t`New from current`}\n </MenuItem>\n )}\n\n {!revision.meta.locked && canEdit(entry, \"cms.contentEntry\") && (\n <MenuItem\n onClick={() => {\n editRevision();\n setActiveTab(0);\n }}\n >\n <ListItemGraphic>\n <Icon icon={<EditIcon />} />\n </ListItemGraphic>\n {t`Edit`}\n </MenuItem>\n )}\n\n {revision.meta.status !== \"published\" && canPublish(\"cms.contentEntry\") && (\n <MenuItem onClick={() => publishRevision(revision.id)}>\n <PublishEntryRevisionListItem />\n </MenuItem>\n )}\n\n {revision.meta.status === \"published\" && canUnpublish(\"cms.contentEntry\") && (\n <MenuItem\n onClick={() => unpublishRevision(revision.id)}\n data-testid={\"cms.revision.unpublish\"}\n >\n <ListItemGraphic>\n <Icon icon={<UnpublishIcon />} />\n </ListItemGraphic>\n {t`Unpublish`}\n </MenuItem>\n )}\n\n {!revision.meta.locked && canDelete(entry, \"cms.contentEntry\") && (\n <div>\n <MenuDivider />\n <MenuItem onClick={() => showConfirmation(deleteRevision)}>\n <ListItemGraphic>\n <Icon icon={<DeleteIcon />} />\n </ListItemGraphic>\n {t` Delete`}\n </MenuItem>\n </div>\n )}\n </Menu>\n </ListItemMeta>\n </ListItem>\n );\n};\n\nexport default RevisionListItem;\n"],"mappings":"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"}
@@ -54,7 +54,8 @@ var ContentEntry = function ContentEntry() {
54
54
  showEmptyView = _useContentEntry.showEmptyView,
55
55
  canCreate = _useContentEntry.canCreate,
56
56
  createEntry = _useContentEntry.createEntry,
57
- tabsRef = _useContentEntry.tabsRef,
57
+ activeTab = _useContentEntry.activeTab,
58
+ setActiveTab = _useContentEntry.setActiveTab,
58
59
  setFormRef = _useContentEntry.setFormRef;
59
60
 
60
61
  // Render "No content selected" view.
@@ -74,7 +75,8 @@ var ContentEntry = function ContentEntry() {
74
75
  return /*#__PURE__*/_react.default.createElement(DetailsContainer, null, /*#__PURE__*/_react.default.createElement("test-id", {
75
76
  "data-testid": "cms-content-details"
76
77
  }, /*#__PURE__*/_react.default.createElement(_Tabs.Tabs, {
77
- ref: tabsRef
78
+ value: activeTab,
79
+ onActivate: setActiveTab
78
80
  }, /*#__PURE__*/_react.default.createElement(_Tabs.Tab, {
79
81
  label: "Content",
80
82
  disabled: loading,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_emotion","_styled","_EmptyView","_Button","_add18px","_i18n","_Tabs","_Elevation","_Progress","_RevisionsList","_useContentEntry2","_Header","_ContentEntryForm","_templateObject","_templateObject2","t","i18n","namespace","DetailsContainer","styled","target","label","height","overflow","position","nav","backgroundColor","RenderBlock","zIndex","padding","elevationStyles","css","ContentEntry","_useContentEntry","useContentEntry","loading","entry","showEmptyView","canCreate","createEntry","tabsRef","setFormRef","default","createElement","title","_taggedTemplateLiteral2","message","action","ButtonDefault","onClick","ButtonIcon","icon","ReactComponent","Tabs","ref","Tab","disabled","Elevation","z","className","CircularProgress","Header","ContentEntryForm","onForm","form","addEntryToListCache","exports"],"sources":["ContentEntry.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport styled from \"@emotion/styled\";\nimport EmptyView from \"@webiny/app-admin/components/EmptyView\";\nimport { ButtonDefault, ButtonIcon } from \"@webiny/ui/Button\";\nimport { ReactComponent as AddIcon } from \"@webiny/app-admin/assets/icons/add-18px.svg\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Tab, Tabs } from \"@webiny/ui/Tabs\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport RevisionsList from \"./ContentEntry/RevisionsList\";\nimport { useContentEntry } from \"./hooks/useContentEntry\";\nimport { Header } from \"~/admin/components/ContentEntryForm/Header\";\nimport { ContentEntryForm } from \"~/admin/components/ContentEntryForm/ContentEntryForm\";\n\nconst t = i18n.namespace(\"app-headless-cms/admin/content-model-entries/details\");\n\nconst DetailsContainer = styled(\"div\")({\n height: \"calc(100% - 10px)\",\n overflow: \"hidden\",\n position: \"relative\",\n nav: {\n backgroundColor: \"var(--mdc-theme-surface)\"\n }\n});\n\nconst RenderBlock = styled(\"div\")({\n position: \"relative\",\n zIndex: 0,\n backgroundColor: \"var(--mdc-theme-background)\",\n height: \"100%\",\n /*overflow: \"scroll\",*/\n padding: 25\n});\n\nconst elevationStyles = css({\n position: \"relative\"\n});\n\ndeclare global {\n // eslint-disable-next-line\n namespace JSX {\n interface IntrinsicElements {\n \"test-id\": {\n children?: React.ReactNode;\n };\n }\n }\n}\n\nexport const ContentEntry = () => {\n const { loading, entry, showEmptyView, canCreate, createEntry, tabsRef, setFormRef } =\n useContentEntry();\n\n // Render \"No content selected\" view.\n if (showEmptyView) {\n return (\n <EmptyView\n title={t`Click on the left side list to display entry details {message}`({\n message: canCreate ? \"or create a...\" : \"\"\n })}\n action={\n canCreate ? (\n <ButtonDefault data-testid=\"new-record-button\" onClick={createEntry}>\n <ButtonIcon icon={<AddIcon />} /> {t`New Entry`}\n </ButtonDefault>\n ) : null\n }\n />\n );\n }\n\n return (\n <DetailsContainer>\n <test-id data-testid=\"cms-content-details\">\n <Tabs ref={tabsRef}>\n <Tab\n label={\"Content\"}\n disabled={loading}\n data-testid={\"cms.content-form.tabs.content\"}\n >\n <RenderBlock>\n <Elevation z={2} className={elevationStyles}>\n {loading && <CircularProgress />}\n <Header />\n <ContentEntryForm\n entry={entry}\n onForm={form => setFormRef(form)}\n addEntryToListCache={true}\n />\n </Elevation>\n </RenderBlock>\n </Tab>\n <Tab\n label={\"Revisions\"}\n disabled={loading}\n data-testid={\"cms.content-form.tabs.revisions\"}\n >\n <RevisionsList />\n </Tab>\n </Tabs>\n </test-id>\n </DetailsContainer>\n );\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,UAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAP,OAAA;AACA,IAAAQ,UAAA,GAAAR,OAAA;AACA,IAAAS,SAAA,GAAAT,OAAA;AACA,IAAAU,cAAA,GAAAX,sBAAA,CAAAC,OAAA;AACA,IAAAW,iBAAA,GAAAX,OAAA;AACA,IAAAY,OAAA,GAAAZ,OAAA;AACA,IAAAa,iBAAA,GAAAb,OAAA;AAAwF,IAAAc,eAAA,EAAAC,gBAAA;AAExF,IAAMC,CAAC,GAAGC,UAAI,CAACC,SAAS,CAAC,sDAAsD,CAAC;AAEhF,IAAMC,gBAAgB,oBAAGC,eAAM,EAAC,KAAK;EAAAC,MAAA;EAAAC,KAAA;AAAA,GAAE;EACnCC,MAAM,EAAE,mBAAmB;EAC3BC,QAAQ,EAAE,QAAQ;EAClBC,QAAQ,EAAE,UAAU;EACpBC,GAAG,EAAE;IACDC,eAAe,EAAE;EACrB;AACJ,CAAC,CAAC;AAEF,IAAMC,WAAW,oBAAGR,eAAM,EAAC,KAAK;EAAAC,MAAA;EAAAC,KAAA;AAAA,GAAE;EAC9BG,QAAQ,EAAE,UAAU;EACpBI,MAAM,EAAE,CAAC;EACTF,eAAe,EAAE,6BAA6B;EAC9CJ,MAAM,EAAE,MAAM;EACd;EACAO,OAAO,EAAE;AACb,CAAC,CAAC;AAEF,IAAMC,eAAe,gBAAG,IAAAC,YAAG,EAAC;EACxBP,QAAQ,EAAE;AACd,CAAC,2BAAC;AAaK,IAAMQ,YAAY,GAAG,SAAfA,YAAYA,CAAA,EAAS;EAC9B,IAAAC,gBAAA,GACI,IAAAC,iCAAe,EAAC,CAAC;IADbC,OAAO,GAAAF,gBAAA,CAAPE,OAAO;IAAEC,KAAK,GAAAH,gBAAA,CAALG,KAAK;IAAEC,aAAa,GAAAJ,gBAAA,CAAbI,aAAa;IAAEC,SAAS,GAAAL,gBAAA,CAATK,SAAS;IAAEC,WAAW,GAAAN,gBAAA,CAAXM,WAAW;IAAEC,OAAO,GAAAP,gBAAA,CAAPO,OAAO;IAAEC,UAAU,GAAAR,gBAAA,CAAVQ,UAAU;;EAGlF;EACA,IAAIJ,aAAa,EAAE;IACf,oBACIxC,MAAA,CAAA6C,OAAA,CAAAC,aAAA,CAACzC,UAAA,CAAAwC,OAAS;MACNE,KAAK,EAAE7B,CAAC,CAAAF,eAAA,KAAAA,eAAA,OAAAgC,uBAAA,CAAAH,OAAA,wEAAiE;QACrEI,OAAO,EAAER,SAAS,GAAG,gBAAgB,GAAG;MAC5C,CAAC,CAAE;MACHS,MAAM,EACFT,SAAS,gBACLzC,MAAA,CAAA6C,OAAA,CAAAC,aAAA,CAACxC,OAAA,CAAA6C,aAAa;QAAC,eAAY,mBAAmB;QAACC,OAAO,EAAEV;MAAY,gBAChE1C,MAAA,CAAA6C,OAAA,CAAAC,aAAA,CAACxC,OAAA,CAAA+C,UAAU;QAACC,IAAI,eAAEtD,MAAA,CAAA6C,OAAA,CAAAC,aAAA,CAACvC,QAAA,CAAAgD,cAAO,MAAE;MAAE,CAAE,CAAC,KAAC,EAACrC,CAAC,CAAAD,gBAAA,KAAAA,gBAAA,OAAA+B,uBAAA,CAAAH,OAAA,kBACzB,CAAC,GAChB;IACP,CACJ,CAAC;EAEV;EAEA,oBACI7C,MAAA,CAAA6C,OAAA,CAAAC,aAAA,CAACzB,gBAAgB,qBACbrB,MAAA,CAAA6C,OAAA,CAAAC,aAAA;IAAS,eAAY;EAAqB,gBACtC9C,MAAA,CAAA6C,OAAA,CAAAC,aAAA,CAACrC,KAAA,CAAA+C,IAAI;IAACC,GAAG,EAAEd;EAAQ,gBACf3C,MAAA,CAAA6C,OAAA,CAAAC,aAAA,CAACrC,KAAA,CAAAiD,GAAG;IACAlC,KAAK,EAAE,SAAU;IACjBmC,QAAQ,EAAErB,OAAQ;IAClB,eAAa;EAAgC,gBAE7CtC,MAAA,CAAA6C,OAAA,CAAAC,aAAA,CAAChB,WAAW,qBACR9B,MAAA,CAAA6C,OAAA,CAAAC,aAAA,CAACpC,UAAA,CAAAkD,SAAS;IAACC,CAAC,EAAE,CAAE;IAACC,SAAS,EAAE7B;EAAgB,GACvCK,OAAO,iBAAItC,MAAA,CAAA6C,OAAA,CAAAC,aAAA,CAACnC,SAAA,CAAAoD,gBAAgB,MAAE,CAAC,eAChC/D,MAAA,CAAA6C,OAAA,CAAAC,aAAA,CAAChC,OAAA,CAAAkD,MAAM,MAAE,CAAC,eACVhE,MAAA,CAAA6C,OAAA,CAAAC,aAAA,CAAC/B,iBAAA,CAAAkD,gBAAgB;IACb1B,KAAK,EAAEA,KAAM;IACb2B,MAAM,EAAE,SAAAA,OAAAC,IAAI;MAAA,OAAIvB,UAAU,CAACuB,IAAI,CAAC;IAAA,CAAC;IACjCC,mBAAmB,EAAE;EAAK,CAC7B,CACM,CACF,CACZ,CAAC,eACNpE,MAAA,CAAA6C,OAAA,CAAAC,aAAA,CAACrC,KAAA,CAAAiD,GAAG;IACAlC,KAAK,EAAE,WAAY;IACnBmC,QAAQ,EAAErB,OAAQ;IAClB,eAAa;EAAkC,gBAE/CtC,MAAA,CAAA6C,OAAA,CAAAC,aAAA,CAAClC,cAAA,CAAAiC,OAAa,MAAE,CACf,CACH,CACD,CACK,CAAC;AAE3B,CAAC;AAACwB,OAAA,CAAAlC,YAAA,GAAAA,YAAA"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_emotion","_styled","_EmptyView","_Button","_add18px","_i18n","_Tabs","_Elevation","_Progress","_RevisionsList","_useContentEntry2","_Header","_ContentEntryForm","_templateObject","_templateObject2","t","i18n","namespace","DetailsContainer","styled","target","label","height","overflow","position","nav","backgroundColor","RenderBlock","zIndex","padding","elevationStyles","css","ContentEntry","_useContentEntry","useContentEntry","loading","entry","showEmptyView","canCreate","createEntry","activeTab","setActiveTab","setFormRef","default","createElement","title","_taggedTemplateLiteral2","message","action","ButtonDefault","onClick","ButtonIcon","icon","ReactComponent","Tabs","value","onActivate","Tab","disabled","Elevation","z","className","CircularProgress","Header","ContentEntryForm","onForm","form","addEntryToListCache","exports"],"sources":["ContentEntry.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport styled from \"@emotion/styled\";\nimport EmptyView from \"@webiny/app-admin/components/EmptyView\";\nimport { ButtonDefault, ButtonIcon } from \"@webiny/ui/Button\";\nimport { ReactComponent as AddIcon } from \"@webiny/app-admin/assets/icons/add-18px.svg\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Tab, Tabs } from \"@webiny/ui/Tabs\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport RevisionsList from \"./ContentEntry/RevisionsList\";\nimport { useContentEntry } from \"./hooks/useContentEntry\";\nimport { Header } from \"~/admin/components/ContentEntryForm/Header\";\nimport { ContentEntryForm } from \"~/admin/components/ContentEntryForm/ContentEntryForm\";\n\nconst t = i18n.namespace(\"app-headless-cms/admin/content-model-entries/details\");\n\nconst DetailsContainer = styled(\"div\")({\n height: \"calc(100% - 10px)\",\n overflow: \"hidden\",\n position: \"relative\",\n nav: {\n backgroundColor: \"var(--mdc-theme-surface)\"\n }\n});\n\nconst RenderBlock = styled(\"div\")({\n position: \"relative\",\n zIndex: 0,\n backgroundColor: \"var(--mdc-theme-background)\",\n height: \"100%\",\n /*overflow: \"scroll\",*/\n padding: 25\n});\n\nconst elevationStyles = css({\n position: \"relative\"\n});\n\ndeclare global {\n // eslint-disable-next-line\n namespace JSX {\n interface IntrinsicElements {\n \"test-id\": {\n children?: React.ReactNode;\n };\n }\n }\n}\n\nexport const ContentEntry = () => {\n const {\n loading,\n entry,\n showEmptyView,\n canCreate,\n createEntry,\n activeTab,\n setActiveTab,\n setFormRef\n } = useContentEntry();\n\n // Render \"No content selected\" view.\n if (showEmptyView) {\n return (\n <EmptyView\n title={t`Click on the left side list to display entry details {message}`({\n message: canCreate ? \"or create a...\" : \"\"\n })}\n action={\n canCreate ? (\n <ButtonDefault data-testid=\"new-record-button\" onClick={createEntry}>\n <ButtonIcon icon={<AddIcon />} /> {t`New Entry`}\n </ButtonDefault>\n ) : null\n }\n />\n );\n }\n\n return (\n <DetailsContainer>\n <test-id data-testid=\"cms-content-details\">\n <Tabs value={activeTab} onActivate={setActiveTab}>\n <Tab\n label={\"Content\"}\n disabled={loading}\n data-testid={\"cms.content-form.tabs.content\"}\n >\n <RenderBlock>\n <Elevation z={2} className={elevationStyles}>\n {loading && <CircularProgress />}\n <Header />\n <ContentEntryForm\n entry={entry}\n onForm={form => setFormRef(form)}\n addEntryToListCache={true}\n />\n </Elevation>\n </RenderBlock>\n </Tab>\n <Tab\n label={\"Revisions\"}\n disabled={loading}\n data-testid={\"cms.content-form.tabs.revisions\"}\n >\n <RevisionsList />\n </Tab>\n </Tabs>\n </test-id>\n </DetailsContainer>\n );\n};\n"],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /// <reference types="react" />
2
+ export declare const Components: {
3
+ FieldRenderers: {
4
+ DynamicZone: {
5
+ Container: import("@webiny/react-composition").DecoratableComponent<(props: import("react").PropsWithChildren<import("./admin/plugins/fieldRenderers/dynamicZone").DynamicZoneContainerProps>, context?: any) => import("react").ReactElement<any, any> | null>;
6
+ MultiValue: {
7
+ Container: import("@webiny/react-composition").DecoratableComponent<(props: import("react").PropsWithChildren<import("./admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone").MultiValueContainerProps>, context?: any) => import("react").ReactElement<any, any> | null>;
8
+ ItemContainer: import("@webiny/react-composition").DecoratableComponent<(args_0: import("./admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone").MultiValueItemContainerProps) => JSX.Element | null>;
9
+ Item: import("@webiny/react-composition").DecoratableComponent<(props: import("./admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone").MultiValueItemItemProps) => JSX.Element | null>;
10
+ };
11
+ };
12
+ };
13
+ };
package/components.js ADDED
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Components = void 0;
7
+ var _dynamicZone = require("./admin/plugins/fieldRenderers/dynamicZone");
8
+ var Components = {
9
+ FieldRenderers: {
10
+ DynamicZone: {
11
+ Container: _dynamicZone.DynamicZoneContainer,
12
+ // SingleValue: {
13
+ // Container: null,
14
+ // ItemContainer: null,
15
+ // Item: null
16
+ // },
17
+ MultiValue: {
18
+ Container: _dynamicZone.MultiValueContainer,
19
+ ItemContainer: _dynamicZone.MultiValueItemContainer,
20
+ Item: _dynamicZone.MultiValueItem
21
+ }
22
+ }
23
+ }
24
+ };
25
+ exports.Components = Components;
26
+
27
+ //# sourceMappingURL=components.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_dynamicZone","require","Components","FieldRenderers","DynamicZone","Container","DynamicZoneContainer","MultiValue","MultiValueContainer","ItemContainer","MultiValueItemContainer","Item","MultiValueItem","exports"],"sources":["components.ts"],"sourcesContent":["import {\n DynamicZoneContainer,\n MultiValueContainer,\n MultiValueItemContainer,\n MultiValueItem\n} from \"~/admin/plugins/fieldRenderers/dynamicZone\";\n\nexport const Components = {\n FieldRenderers: {\n DynamicZone: {\n Container: DynamicZoneContainer,\n // SingleValue: {\n // Container: null,\n // ItemContainer: null,\n // Item: null\n // },\n MultiValue: {\n Container: MultiValueContainer,\n ItemContainer: MultiValueItemContainer,\n Item: MultiValueItem\n }\n }\n }\n};\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAOO,IAAMC,UAAU,GAAG;EACtBC,cAAc,EAAE;IACZC,WAAW,EAAE;MACTC,SAAS,EAAEC,iCAAoB;MAC/B;MACA;MACA;MACA;MACA;MACAC,UAAU,EAAE;QACRF,SAAS,EAAEG,gCAAmB;QAC9BC,aAAa,EAAEC,oCAAuB;QACtCC,IAAI,EAAEC;MACV;IACJ;EACJ;AACJ,CAAC;AAACC,OAAA,CAAAX,UAAA,GAAAA,UAAA"}
package/index.d.ts CHANGED
@@ -1,10 +1,10 @@
1
1
  import React from "react";
2
+ import { ContentEntryEditorConfig, ContentEntryListConfig } from "./admin/config/contentEntries";
2
3
  export * from "./HeadlessCMS";
3
4
  export * from "./admin/hooks";
4
5
  export { LexicalEditorConfig } from "./admin/lexicalConfig/LexicalEditorConfig";
5
6
  export { RenderFieldElement } from "./admin/components/ContentEntryForm/RenderFieldElement";
6
7
  export { ModelProvider } from "./admin/components/ModelProvider";
7
- import { ContentEntryEditorConfig, ContentEntryListConfig } from "./admin/config/contentEntries";
8
8
  export { ContentEntryEditorConfig, ContentEntryListConfig };
9
9
  interface LegacyContentEntriesViewConfigProps {
10
10
  children: React.ReactNode;
@@ -21,3 +21,4 @@ export declare const ContentEntriesViewConfig: (({ children }: LegacyContentEntr
21
21
  };
22
22
  Sorter: (props: any) => null;
23
23
  };
24
+ export * from "./components";
package/index.js CHANGED
@@ -6,11 +6,11 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  var _exportNames = {
8
8
  ContentEntriesViewConfig: true,
9
+ ContentEntryEditorConfig: true,
10
+ ContentEntryListConfig: true,
9
11
  LexicalEditorConfig: true,
10
12
  RenderFieldElement: true,
11
- ModelProvider: true,
12
- ContentEntryEditorConfig: true,
13
- ContentEntryListConfig: true
13
+ ModelProvider: true
14
14
  };
15
15
  exports.ContentEntriesViewConfig = void 0;
16
16
  Object.defineProperty(exports, "ContentEntryEditorConfig", {
@@ -44,6 +44,7 @@ Object.defineProperty(exports, "RenderFieldElement", {
44
44
  }
45
45
  });
46
46
  var _react = _interopRequireDefault(require("react"));
47
+ var _contentEntries = require("./admin/config/contentEntries");
47
48
  var _HeadlessCMS = require("./HeadlessCMS");
48
49
  Object.keys(_HeadlessCMS).forEach(function (key) {
49
50
  if (key === "default" || key === "__esModule") return;
@@ -71,7 +72,18 @@ Object.keys(_hooks).forEach(function (key) {
71
72
  var _LexicalEditorConfig = require("./admin/lexicalConfig/LexicalEditorConfig");
72
73
  var _RenderFieldElement = require("./admin/components/ContentEntryForm/RenderFieldElement");
73
74
  var _ModelProvider = require("./admin/components/ModelProvider");
74
- var _contentEntries = require("./admin/config/contentEntries");
75
+ var _components = require("./components");
76
+ Object.keys(_components).forEach(function (key) {
77
+ if (key === "default" || key === "__esModule") return;
78
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
79
+ if (key in exports && exports[key] === _components[key]) return;
80
+ Object.defineProperty(exports, key, {
81
+ enumerable: true,
82
+ get: function get() {
83
+ return _components[key];
84
+ }
85
+ });
86
+ });
75
87
  /**
76
88
  * DANGER!
77
89
  * The following components are created to support the old experimental API:
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_HeadlessCMS","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_hooks","_LexicalEditorConfig","_RenderFieldElement","_ModelProvider","_contentEntries","LegacyContentEntriesViewConfig","_ref","children","default","createElement","ContentEntryListConfig","LegacySorter","props","ContentEntriesViewConfig","assign","Filter","Browser","Sorter"],"sources":["index.tsx"],"sourcesContent":["import React from \"react\";\n\nexport * from \"./HeadlessCMS\";\nexport * from \"./admin/hooks\";\nexport { LexicalEditorConfig } from \"~/admin/lexicalConfig/LexicalEditorConfig\";\nexport { RenderFieldElement } from \"~/admin/components/ContentEntryForm/RenderFieldElement\";\nexport { ModelProvider } from \"~/admin/components/ModelProvider\";\nimport { ContentEntryEditorConfig, ContentEntryListConfig } from \"./admin/config/contentEntries\";\nexport { ContentEntryEditorConfig, ContentEntryListConfig };\n\ninterface LegacyContentEntriesViewConfigProps {\n children: React.ReactNode;\n}\n\n/**\n * DANGER!\n * The following components are created to support the old experimental API:\n * - `Filter` has been mapped to the new `ContentEntryListConfig.Browser`namespace;\n * - `Sorter` has been deprecated.\n *\n * Check out 5.37.0 changelog and discover the new `ContentEntryListConfig` API.\n */\nconst LegacyContentEntriesViewConfig = ({ children }: LegacyContentEntriesViewConfigProps) => {\n return <ContentEntryListConfig>{children}</ContentEntryListConfig>;\n};\n\n// eslint-disable-next-line\nconst LegacySorter = (props: any) => null;\n\n/**\n * @deprecated Use ContentEntryListConfig instead\n */\nexport const ContentEntriesViewConfig = Object.assign(LegacyContentEntriesViewConfig, {\n Filter: ContentEntryListConfig.Browser.Filter,\n Sorter: LegacySorter\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AAAAE,MAAA,CAAAC,IAAA,CAAAF,YAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,YAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAZ,YAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,MAAA,GAAAd,OAAA;AAAAE,MAAA,CAAAC,IAAA,CAAAW,MAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAS,MAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAC,MAAA,CAAAT,GAAA;IAAA;EAAA;AAAA;AACA,IAAAU,oBAAA,GAAAf,OAAA;AACA,IAAAgB,mBAAA,GAAAhB,OAAA;AACA,IAAAiB,cAAA,GAAAjB,OAAA;AACA,IAAAkB,eAAA,GAAAlB,OAAA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMmB,8BAA8B,GAAG,SAAjCA,8BAA8BA,CAAAC,IAAA,EAA0D;EAAA,IAApDC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;EAC9C,oBAAOvB,MAAA,CAAAwB,OAAA,CAAAC,aAAA,CAACL,eAAA,CAAAM,sBAAsB,QAAEH,QAAiC,CAAC;AACtE,CAAC;;AAED;AACA,IAAMI,YAAY,GAAG,SAAfA,YAAYA,CAAIC,KAAU;EAAA,OAAK,IAAI;AAAA;;AAEzC;AACA;AACA;AACO,IAAMC,wBAAwB,GAAGzB,MAAM,CAAC0B,MAAM,CAACT,8BAA8B,EAAE;EAClFU,MAAM,EAAEL,sCAAsB,CAACM,OAAO,CAACD,MAAM;EAC7CE,MAAM,EAAEN;AACZ,CAAC,CAAC;AAACf,OAAA,CAAAiB,wBAAA,GAAAA,wBAAA"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_contentEntries","_HeadlessCMS","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_hooks","_LexicalEditorConfig","_RenderFieldElement","_ModelProvider","_components","LegacyContentEntriesViewConfig","_ref","children","default","createElement","ContentEntryListConfig","LegacySorter","props","ContentEntriesViewConfig","assign","Filter","Browser","Sorter"],"sources":["index.tsx"],"sourcesContent":["import React from \"react\";\nimport { ContentEntryEditorConfig, ContentEntryListConfig } from \"./admin/config/contentEntries\";\n\nexport * from \"./HeadlessCMS\";\nexport * from \"./admin/hooks\";\nexport { LexicalEditorConfig } from \"~/admin/lexicalConfig/LexicalEditorConfig\";\nexport { RenderFieldElement } from \"~/admin/components/ContentEntryForm/RenderFieldElement\";\nexport { ModelProvider } from \"~/admin/components/ModelProvider\";\nexport { ContentEntryEditorConfig, ContentEntryListConfig };\n\ninterface LegacyContentEntriesViewConfigProps {\n children: React.ReactNode;\n}\n\n/**\n * DANGER!\n * The following components are created to support the old experimental API:\n * - `Filter` has been mapped to the new `ContentEntryListConfig.Browser`namespace;\n * - `Sorter` has been deprecated.\n *\n * Check out 5.37.0 changelog and discover the new `ContentEntryListConfig` API.\n */\nconst LegacyContentEntriesViewConfig = ({ children }: LegacyContentEntriesViewConfigProps) => {\n return <ContentEntryListConfig>{children}</ContentEntryListConfig>;\n};\n\n// eslint-disable-next-line\nconst LegacySorter = (props: any) => null;\n\n/**\n * @deprecated Use ContentEntryListConfig instead\n */\nexport const ContentEntriesViewConfig = Object.assign(LegacyContentEntriesViewConfig, {\n Filter: ContentEntryListConfig.Browser.Filter,\n Sorter: LegacySorter\n});\n\nexport * from \"./components\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAEA,IAAAE,YAAA,GAAAF,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAF,YAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,YAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAZ,YAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,MAAA,GAAAf,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAW,MAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAS,MAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAC,MAAA,CAAAT,GAAA;IAAA;EAAA;AAAA;AACA,IAAAU,oBAAA,GAAAhB,OAAA;AACA,IAAAiB,mBAAA,GAAAjB,OAAA;AACA,IAAAkB,cAAA,GAAAlB,OAAA;AA8BA,IAAAmB,WAAA,GAAAnB,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAe,WAAA,EAAAd,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAa,WAAA,CAAAb,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAK,WAAA,CAAAb,GAAA;IAAA;EAAA;AAAA;AAvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMc,8BAA8B,GAAG,SAAjCA,8BAA8BA,CAAAC,IAAA,EAA0D;EAAA,IAApDC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;EAC9C,oBAAOxB,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAACvB,eAAA,CAAAwB,sBAAsB,QAAEH,QAAiC,CAAC;AACtE,CAAC;;AAED;AACA,IAAMI,YAAY,GAAG,SAAfA,YAAYA,CAAIC,KAAU;EAAA,OAAK,IAAI;AAAA;;AAEzC;AACA;AACA;AACO,IAAMC,wBAAwB,GAAGzB,MAAM,CAAC0B,MAAM,CAACT,8BAA8B,EAAE;EAClFU,MAAM,EAAEL,sCAAsB,CAACM,OAAO,CAACD,MAAM;EAC7CE,MAAM,EAAEN;AACZ,CAAC,CAAC;AAACf,OAAA,CAAAiB,wBAAA,GAAAA,wBAAA"}