@webiny/app-aco 5.39.2-beta.3 → 5.39.3-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.
@@ -239,8 +239,14 @@ var AcoListProvider = function AcoListProvider(_ref) {
239
239
  });
240
240
  },
241
241
  setFilters: function setFilters(data) {
242
+ // Create filters object excluding entries with `undefined` values
243
+ var filters = Object.fromEntries(Object.entries(data).filter(function (_ref2) {
244
+ var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
245
+ value = _ref3[1];
246
+ return value !== undefined;
247
+ }));
242
248
  setState({
243
- filters: data,
249
+ filters: Object.keys(filters).length ? filters : undefined,
244
250
  after: undefined
245
251
  });
246
252
  },
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_hooks","_folders","_records","_sorting","_dotPropImmutable","_interopRequireDefault","_pick","_constants","_appSecurity","_excluded","AcoListContext","React","createContext","undefined","exports","initializeAcoListState","after","filters","folderId","isSearch","limit","listSort","searchQuery","selected","showingFilters","getCurrentFolderList","folders","currentFolderId","toLowerCase","ROOT_FOLDER","filter","folder","parentId","getCurrentRecordList","records","folderIdPath","record","dotPropImmutable","get","AcoListProvider","_ref","children","props","_objectWithoutProperties2","default","_useSecurity","useSecurity","identity","_useNavigateFolder","useNavigateFolder","_useAcoApp","useAcoApp","folderIdInPath","folderContext","useContext","FoldersContext","searchContext","SearchRecordsContext","Error","_useState","useState","_useState2","_slicedToArray2","setFolders","_useState3","_useState4","setRecords","_useState5","_useState6","listTitle","setListTitle","_useReducer","useReducer","state","newState","_objectSpread2","_useReducer2","setState","originalFolders","foldersLoading","loading","listFolders","getDescendantFolders","originalRecords","recordsLoading","listRecords","meta","useEffect","currentFolder","find","id","title","subFolders","sortTableItems","subRecords","prev","titleField","titleFieldId","_defineProperty2","listMoreRecords","useCallback","hasMoreItems","cursor","listItems","Boolean","Object","values","length","locationWhere","set","descendantFolderIds","map","params","sort","validateOrGetDefaultDbSort","search","where","createdBy","own","context","pick","isListLoading","INIT","LIST","isListLoadingMore","LIST_MORE","setSearchQuery","query","setFilters","data","setListSort","setSelected","hideFilters","showFilters","createElement","Provider","value"],"sources":["acoList.tsx"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useReducer, useState } from \"react\";\nimport {\n FolderItem,\n GenericSearchData,\n ListMeta,\n ListSearchRecordsQueryVariables,\n ListSearchRecordsSort,\n SearchRecordItem\n} from \"~/types\";\nimport { useAcoApp, useNavigateFolder } from \"~/hooks\";\nimport { FoldersContext } from \"~/contexts/folders\";\nimport { SearchRecordsContext } from \"~/contexts/records\";\nimport { sortTableItems, validateOrGetDefaultDbSort } from \"~/sorting\";\nimport dotPropImmutable from \"dot-prop-immutable\";\nimport pick from \"lodash/pick\";\nimport { ROOT_FOLDER } from \"~/constants\";\nimport { useSecurity } from \"@webiny/app-security\";\n\nexport interface AcoListContextData<T> {\n folders: FolderItem[];\n hideFilters: () => void;\n isListLoading: boolean;\n isListLoadingMore: boolean;\n isSearch: boolean;\n listMoreRecords: () => void;\n listTitle?: string;\n meta: ListMeta;\n records: T[];\n selected: T[];\n setFilters: (data: Record<string, any>) => void;\n setListSort: (state: ListSearchRecordsSort) => void;\n setSearchQuery: (query: string) => void;\n setSelected: (selected: T[]) => void;\n showFilters: () => void;\n showingFilters: boolean;\n}\n\nexport const AcoListContext = React.createContext<\n AcoListContextData<GenericSearchData> | undefined\n>(undefined);\n\nexport interface State<T> {\n after?: string;\n filters?: Record<string, any>;\n folderId?: string;\n isSearch: boolean;\n limit: number;\n listSort: ListSearchRecordsSort;\n searchQuery: string;\n selected: T[];\n showingFilters: boolean;\n}\n\nconst initializeAcoListState = (): State<GenericSearchData> => {\n return {\n after: undefined,\n filters: undefined,\n folderId: undefined,\n isSearch: false,\n limit: 50,\n listSort: [],\n searchQuery: \"\",\n selected: [],\n showingFilters: false\n };\n};\n\nconst getCurrentFolderList = (\n folders?: FolderItem[] | null,\n currentFolderId?: string\n): FolderItem[] | [] => {\n if (!folders) {\n return [];\n }\n if (!currentFolderId || currentFolderId.toLowerCase() === ROOT_FOLDER) {\n return folders.filter(\n folder => !folder.parentId || folder.parentId.toLowerCase() === ROOT_FOLDER\n );\n }\n return folders.filter(folder => folder.parentId === currentFolderId);\n};\n\nconst getCurrentRecordList = <T = GenericSearchData,>(\n records: SearchRecordItem<T>[],\n folderIdPath: string,\n currentFolderId?: string\n): SearchRecordItem<T>[] => {\n if (!records) {\n return [];\n }\n\n if (!currentFolderId) {\n return records;\n }\n\n return records.filter(\n (record): record is SearchRecordItem<T> =>\n dotPropImmutable.get(record, folderIdPath) === currentFolderId\n );\n};\n\nexport interface AcoListProviderProps {\n children: React.ReactNode;\n own?: boolean;\n titleFieldId: string | null;\n}\n\nexport const AcoListProvider = ({ children, ...props }: AcoListProviderProps) => {\n const { identity } = useSecurity();\n const { currentFolderId } = useNavigateFolder();\n const { folderIdPath, folderIdInPath } = useAcoApp();\n const folderContext = useContext(FoldersContext);\n const searchContext = useContext(SearchRecordsContext);\n\n if (!folderContext || !searchContext) {\n throw new Error(\"useAcoList must be used within a ACOProvider\");\n }\n\n const [folders, setFolders] = useState<FolderItem[]>([]);\n const [records, setRecords] = useState<SearchRecordItem[]>([]);\n const [listTitle, setListTitle] = useState<string | undefined>();\n const [state, setState] = useReducer(\n (state: State<GenericSearchData>, newState: Partial<State<GenericSearchData>>) => ({\n ...state,\n ...newState\n }),\n initializeAcoListState()\n );\n\n const {\n folders: originalFolders,\n loading: foldersLoading,\n listFolders,\n getDescendantFolders\n } = folderContext;\n const { records: originalRecords, loading: recordsLoading, listRecords, meta } = searchContext;\n\n /**\n * On first mount, call `listFolders` and `setState`, which will either issue a network request, or load folders and records from cache.\n * We don't need to store the result of it to any local state; that is managed by the context provider.\n *\n * IMPORTANT: we check if the folders[type] array exists: the hook can be used from multiple components and\n * fetch the outdated list from Apollo Cache. Since the state is managed locally, we fetch the folders only\n * at the first mount.\n *\n * We don't call `listRecords` directly, instead we call `setState` making it the only driver to fetch records from the apis.\n */\n useEffect(() => {\n if (!currentFolderId) {\n return;\n }\n\n if (!originalFolders) {\n listFolders();\n }\n\n setState({\n after: undefined,\n filters: undefined,\n folderId: currentFolderId,\n isSearch: false,\n searchQuery: \"\",\n selected: [],\n showingFilters: false\n });\n }, [currentFolderId]);\n\n /**\n * Any time we receive a `folders` list update:\n * - we set an empty array in case of search;\n * - we set the list filtered by the current `type` and parent `folderId`, sorted according to the current `sort` value;\n * - we set the current folder name.\n */\n useEffect(() => {\n const currentFolder = originalFolders?.find(\n folder => folder.id === (state.folderId || ROOT_FOLDER)\n );\n\n setListTitle(currentFolder?.title);\n\n if (state.isSearch) {\n setFolders([]);\n return;\n }\n\n const subFolders = getCurrentFolderList(originalFolders, state.folderId);\n setFolders(() => {\n return sortTableItems(subFolders, state.listSort);\n });\n }, [originalFolders, state.folderId, state.isSearch]);\n\n /**\n * Any time we receive a `records` list or `folderId` update:\n * - we set all `records` in case of search query;\n * - we set the `records` list filtered by the current `folderId`.\n */\n useEffect(() => {\n if (state.isSearch) {\n setRecords(originalRecords as SearchRecordItem[]);\n return;\n }\n\n const subRecords = getCurrentRecordList(\n originalRecords as SearchRecordItem[],\n folderIdPath,\n state.folderId\n );\n setRecords(subRecords);\n }, [originalRecords, state.folderId, state.isSearch]);\n\n /**\n * Any time we receive a new `sort` value:\n * - we sort the current `folders` list according to `sorting` value;\n */\n useEffect(() => {\n setFolders(prev => {\n const titleField = props?.titleFieldId || \"id\";\n return sortTableItems(prev, state.listSort, {\n [titleField]: \"title\"\n });\n });\n }, [state.listSort]);\n\n /**\n * Utility function to list/load more records, the `meta` state is tracked internally.\n */\n const listMoreRecords = useCallback(() => {\n const { hasMoreItems, cursor } = meta;\n if (hasMoreItems && cursor) {\n setState({ after: cursor });\n }\n }, [meta]);\n\n /**\n * Any time we receive new useful `state` params:\n * - we fetch records according to the new params\n */\n useEffect(() => {\n const listItems = async () => {\n if (!state.folderId) {\n return;\n }\n\n const isSearch = Boolean(\n state.searchQuery ||\n (state.filters && Object.values(state.filters).filter(Boolean).length)\n );\n\n let locationWhere = dotPropImmutable.set({}, folderIdPath, state.folderId);\n\n if (isSearch) {\n if (state.folderId === ROOT_FOLDER) {\n locationWhere = undefined;\n } else {\n const descendantFolderIds = getDescendantFolders(state.folderId).map(\n folder => folder.id\n );\n locationWhere = dotPropImmutable.set({}, folderIdInPath, descendantFolderIds);\n }\n }\n\n const params: ListSearchRecordsQueryVariables = {\n limit: state.limit,\n sort: validateOrGetDefaultDbSort(state.listSort),\n search: state.searchQuery,\n after: state.after,\n where: {\n createdBy: props.own ? identity!.id : undefined,\n ...locationWhere,\n ...state.filters\n }\n };\n\n await listRecords(params);\n\n setState({ isSearch });\n };\n\n listItems();\n }, [state.folderId, state.filters, state.searchQuery, state.after, state.listSort]);\n\n const context: AcoListContextData<GenericSearchData> = {\n ...pick(state, [\"isSearch\", \"selected\", \"showingFilters\"]),\n folders,\n records,\n listTitle,\n isListLoading: Boolean(\n recordsLoading.INIT || foldersLoading.INIT || recordsLoading.LIST || foldersLoading.LIST\n ),\n isListLoadingMore: Boolean(recordsLoading.LIST_MORE),\n meta,\n setSearchQuery(query) {\n setState({ searchQuery: query, after: undefined });\n },\n setFilters(data) {\n setState({ filters: data, after: undefined });\n },\n setListSort(sort: ListSearchRecordsSort) {\n setState({ listSort: sort, after: undefined });\n },\n setSelected(selected) {\n setState({ selected });\n },\n hideFilters() {\n setState({ filters: undefined, showingFilters: false, after: undefined });\n },\n showFilters() {\n setState({ showingFilters: true });\n },\n listMoreRecords\n };\n\n return <AcoListContext.Provider value={context}>{children}</AcoListContext.Provider>;\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_hooks","_folders","_records","_sorting","_dotPropImmutable","_interopRequireDefault","_pick","_constants","_appSecurity","_excluded","AcoListContext","React","createContext","undefined","exports","initializeAcoListState","after","filters","folderId","isSearch","limit","listSort","searchQuery","selected","showingFilters","getCurrentFolderList","folders","currentFolderId","toLowerCase","ROOT_FOLDER","filter","folder","parentId","getCurrentRecordList","records","folderIdPath","record","dotPropImmutable","get","AcoListProvider","_ref","children","props","_objectWithoutProperties2","default","_useSecurity","useSecurity","identity","_useNavigateFolder","useNavigateFolder","_useAcoApp","useAcoApp","folderIdInPath","folderContext","useContext","FoldersContext","searchContext","SearchRecordsContext","Error","_useState","useState","_useState2","_slicedToArray2","setFolders","_useState3","_useState4","setRecords","_useState5","_useState6","listTitle","setListTitle","_useReducer","useReducer","state","newState","_objectSpread2","_useReducer2","setState","originalFolders","foldersLoading","loading","listFolders","getDescendantFolders","originalRecords","recordsLoading","listRecords","meta","useEffect","currentFolder","find","id","title","subFolders","sortTableItems","subRecords","prev","titleField","titleFieldId","_defineProperty2","listMoreRecords","useCallback","hasMoreItems","cursor","listItems","Boolean","Object","values","length","locationWhere","set","descendantFolderIds","map","params","sort","validateOrGetDefaultDbSort","search","where","createdBy","own","context","pick","isListLoading","INIT","LIST","isListLoadingMore","LIST_MORE","setSearchQuery","query","setFilters","data","fromEntries","entries","_ref2","_ref3","value","keys","setListSort","setSelected","hideFilters","showFilters","createElement","Provider"],"sources":["acoList.tsx"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useReducer, useState } from \"react\";\nimport {\n FolderItem,\n GenericSearchData,\n ListMeta,\n ListSearchRecordsQueryVariables,\n ListSearchRecordsSort,\n SearchRecordItem\n} from \"~/types\";\nimport { useAcoApp, useNavigateFolder } from \"~/hooks\";\nimport { FoldersContext } from \"~/contexts/folders\";\nimport { SearchRecordsContext } from \"~/contexts/records\";\nimport { sortTableItems, validateOrGetDefaultDbSort } from \"~/sorting\";\nimport dotPropImmutable from \"dot-prop-immutable\";\nimport pick from \"lodash/pick\";\nimport { ROOT_FOLDER } from \"~/constants\";\nimport { useSecurity } from \"@webiny/app-security\";\n\nexport interface AcoListContextData<T> {\n folders: FolderItem[];\n hideFilters: () => void;\n isListLoading: boolean;\n isListLoadingMore: boolean;\n isSearch: boolean;\n listMoreRecords: () => void;\n listTitle?: string;\n meta: ListMeta;\n records: T[];\n selected: T[];\n setFilters: (data: Record<string, any>) => void;\n setListSort: (state: ListSearchRecordsSort) => void;\n setSearchQuery: (query: string) => void;\n setSelected: (selected: T[]) => void;\n showFilters: () => void;\n showingFilters: boolean;\n}\n\nexport const AcoListContext = React.createContext<\n AcoListContextData<GenericSearchData> | undefined\n>(undefined);\n\nexport interface State<T> {\n after?: string;\n filters?: Record<string, any>;\n folderId?: string;\n isSearch: boolean;\n limit: number;\n listSort: ListSearchRecordsSort;\n searchQuery: string;\n selected: T[];\n showingFilters: boolean;\n}\n\nconst initializeAcoListState = (): State<GenericSearchData> => {\n return {\n after: undefined,\n filters: undefined,\n folderId: undefined,\n isSearch: false,\n limit: 50,\n listSort: [],\n searchQuery: \"\",\n selected: [],\n showingFilters: false\n };\n};\n\nconst getCurrentFolderList = (\n folders?: FolderItem[] | null,\n currentFolderId?: string\n): FolderItem[] | [] => {\n if (!folders) {\n return [];\n }\n if (!currentFolderId || currentFolderId.toLowerCase() === ROOT_FOLDER) {\n return folders.filter(\n folder => !folder.parentId || folder.parentId.toLowerCase() === ROOT_FOLDER\n );\n }\n return folders.filter(folder => folder.parentId === currentFolderId);\n};\n\nconst getCurrentRecordList = <T = GenericSearchData,>(\n records: SearchRecordItem<T>[],\n folderIdPath: string,\n currentFolderId?: string\n): SearchRecordItem<T>[] => {\n if (!records) {\n return [];\n }\n\n if (!currentFolderId) {\n return records;\n }\n\n return records.filter(\n (record): record is SearchRecordItem<T> =>\n dotPropImmutable.get(record, folderIdPath) === currentFolderId\n );\n};\n\nexport interface AcoListProviderProps {\n children: React.ReactNode;\n own?: boolean;\n titleFieldId: string | null;\n}\n\nexport const AcoListProvider = ({ children, ...props }: AcoListProviderProps) => {\n const { identity } = useSecurity();\n const { currentFolderId } = useNavigateFolder();\n const { folderIdPath, folderIdInPath } = useAcoApp();\n const folderContext = useContext(FoldersContext);\n const searchContext = useContext(SearchRecordsContext);\n\n if (!folderContext || !searchContext) {\n throw new Error(\"useAcoList must be used within a ACOProvider\");\n }\n\n const [folders, setFolders] = useState<FolderItem[]>([]);\n const [records, setRecords] = useState<SearchRecordItem[]>([]);\n const [listTitle, setListTitle] = useState<string | undefined>();\n const [state, setState] = useReducer(\n (state: State<GenericSearchData>, newState: Partial<State<GenericSearchData>>) => ({\n ...state,\n ...newState\n }),\n initializeAcoListState()\n );\n\n const {\n folders: originalFolders,\n loading: foldersLoading,\n listFolders,\n getDescendantFolders\n } = folderContext;\n const { records: originalRecords, loading: recordsLoading, listRecords, meta } = searchContext;\n\n /**\n * On first mount, call `listFolders` and `setState`, which will either issue a network request, or load folders and records from cache.\n * We don't need to store the result of it to any local state; that is managed by the context provider.\n *\n * IMPORTANT: we check if the folders[type] array exists: the hook can be used from multiple components and\n * fetch the outdated list from Apollo Cache. Since the state is managed locally, we fetch the folders only\n * at the first mount.\n *\n * We don't call `listRecords` directly, instead we call `setState` making it the only driver to fetch records from the apis.\n */\n useEffect(() => {\n if (!currentFolderId) {\n return;\n }\n\n if (!originalFolders) {\n listFolders();\n }\n\n setState({\n after: undefined,\n filters: undefined,\n folderId: currentFolderId,\n isSearch: false,\n searchQuery: \"\",\n selected: [],\n showingFilters: false\n });\n }, [currentFolderId]);\n\n /**\n * Any time we receive a `folders` list update:\n * - we set an empty array in case of search;\n * - we set the list filtered by the current `type` and parent `folderId`, sorted according to the current `sort` value;\n * - we set the current folder name.\n */\n useEffect(() => {\n const currentFolder = originalFolders?.find(\n folder => folder.id === (state.folderId || ROOT_FOLDER)\n );\n\n setListTitle(currentFolder?.title);\n\n if (state.isSearch) {\n setFolders([]);\n return;\n }\n\n const subFolders = getCurrentFolderList(originalFolders, state.folderId);\n setFolders(() => {\n return sortTableItems(subFolders, state.listSort);\n });\n }, [originalFolders, state.folderId, state.isSearch]);\n\n /**\n * Any time we receive a `records` list or `folderId` update:\n * - we set all `records` in case of search query;\n * - we set the `records` list filtered by the current `folderId`.\n */\n useEffect(() => {\n if (state.isSearch) {\n setRecords(originalRecords as SearchRecordItem[]);\n return;\n }\n\n const subRecords = getCurrentRecordList(\n originalRecords as SearchRecordItem[],\n folderIdPath,\n state.folderId\n );\n setRecords(subRecords);\n }, [originalRecords, state.folderId, state.isSearch]);\n\n /**\n * Any time we receive a new `sort` value:\n * - we sort the current `folders` list according to `sorting` value;\n */\n useEffect(() => {\n setFolders(prev => {\n const titleField = props?.titleFieldId || \"id\";\n return sortTableItems(prev, state.listSort, {\n [titleField]: \"title\"\n });\n });\n }, [state.listSort]);\n\n /**\n * Utility function to list/load more records, the `meta` state is tracked internally.\n */\n const listMoreRecords = useCallback(() => {\n const { hasMoreItems, cursor } = meta;\n if (hasMoreItems && cursor) {\n setState({ after: cursor });\n }\n }, [meta]);\n\n /**\n * Any time we receive new useful `state` params:\n * - we fetch records according to the new params\n */\n useEffect(() => {\n const listItems = async () => {\n if (!state.folderId) {\n return;\n }\n\n const isSearch = Boolean(\n state.searchQuery ||\n (state.filters && Object.values(state.filters).filter(Boolean).length)\n );\n\n let locationWhere = dotPropImmutable.set({}, folderIdPath, state.folderId);\n\n if (isSearch) {\n if (state.folderId === ROOT_FOLDER) {\n locationWhere = undefined;\n } else {\n const descendantFolderIds = getDescendantFolders(state.folderId).map(\n folder => folder.id\n );\n locationWhere = dotPropImmutable.set({}, folderIdInPath, descendantFolderIds);\n }\n }\n\n const params: ListSearchRecordsQueryVariables = {\n limit: state.limit,\n sort: validateOrGetDefaultDbSort(state.listSort),\n search: state.searchQuery,\n after: state.after,\n where: {\n createdBy: props.own ? identity!.id : undefined,\n ...locationWhere,\n ...state.filters\n }\n };\n\n await listRecords(params);\n\n setState({ isSearch });\n };\n\n listItems();\n }, [state.folderId, state.filters, state.searchQuery, state.after, state.listSort]);\n\n const context: AcoListContextData<GenericSearchData> = {\n ...pick(state, [\"isSearch\", \"selected\", \"showingFilters\"]),\n folders,\n records,\n listTitle,\n isListLoading: Boolean(\n recordsLoading.INIT || foldersLoading.INIT || recordsLoading.LIST || foldersLoading.LIST\n ),\n isListLoadingMore: Boolean(recordsLoading.LIST_MORE),\n meta,\n setSearchQuery(query) {\n setState({ searchQuery: query, after: undefined });\n },\n setFilters(data) {\n // Create filters object excluding entries with `undefined` values\n const filters = Object.fromEntries(\n Object.entries(data).filter(([, value]) => value !== undefined)\n );\n\n setState({\n filters: Object.keys(filters).length ? filters : undefined,\n after: undefined\n });\n },\n setListSort(sort: ListSearchRecordsSort) {\n setState({ listSort: sort, after: undefined });\n },\n setSelected(selected) {\n setState({ selected });\n },\n hideFilters() {\n setState({ filters: undefined, showingFilters: false, after: undefined });\n },\n showFilters() {\n setState({ showingFilters: true });\n },\n listMoreRecords\n };\n\n return <AcoListContext.Provider value={context}>{children}</AcoListContext.Provider>;\n};\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/app-aco",
3
- "version": "5.39.2-beta.3",
3
+ "version": "5.39.3-beta.0",
4
4
  "main": "index.js",
5
5
  "repository": {
6
6
  "type": "git",
@@ -17,18 +17,18 @@
17
17
  "@material-design-icons/svg": "0.12.1",
18
18
  "@material-symbols/svg-400": "0.4.3",
19
19
  "@minoru/react-dnd-treeview": "3.2.1",
20
- "@webiny/app": "5.39.2-beta.3",
21
- "@webiny/app-admin": "5.39.2-beta.3",
22
- "@webiny/app-headless-cms-common": "5.39.2-beta.3",
23
- "@webiny/app-security": "5.39.2-beta.3",
24
- "@webiny/app-wcp": "5.39.2-beta.3",
25
- "@webiny/form": "5.39.2-beta.3",
26
- "@webiny/plugins": "5.39.2-beta.3",
27
- "@webiny/react-properties": "5.39.2-beta.3",
28
- "@webiny/react-router": "5.39.2-beta.3",
29
- "@webiny/ui": "5.39.2-beta.3",
30
- "@webiny/utils": "5.39.2-beta.3",
31
- "@webiny/validation": "5.39.2-beta.3",
20
+ "@webiny/app": "5.39.3-beta.0",
21
+ "@webiny/app-admin": "5.39.3-beta.0",
22
+ "@webiny/app-headless-cms-common": "5.39.3-beta.0",
23
+ "@webiny/app-security": "5.39.3-beta.0",
24
+ "@webiny/app-wcp": "5.39.3-beta.0",
25
+ "@webiny/form": "5.39.3-beta.0",
26
+ "@webiny/plugins": "5.39.3-beta.0",
27
+ "@webiny/react-properties": "5.39.3-beta.0",
28
+ "@webiny/react-router": "5.39.3-beta.0",
29
+ "@webiny/ui": "5.39.3-beta.0",
30
+ "@webiny/utils": "5.39.3-beta.0",
31
+ "@webiny/validation": "5.39.3-beta.0",
32
32
  "dot-prop-immutable": "2.1.1",
33
33
  "graphql": "15.8.0",
34
34
  "graphql-tag": "2.12.6",
@@ -51,8 +51,8 @@
51
51
  "@babel/preset-typescript": "7.22.5",
52
52
  "@babel/runtime": "7.22.6",
53
53
  "@types/react": "17.0.39",
54
- "@webiny/cli": "5.39.2-beta.3",
55
- "@webiny/project-utils": "5.39.2-beta.3",
54
+ "@webiny/cli": "5.39.3-beta.0",
55
+ "@webiny/project-utils": "5.39.3-beta.0",
56
56
  "apollo-client": "2.6.10",
57
57
  "apollo-link": "1.2.14",
58
58
  "rimraf": "3.0.2",
@@ -67,5 +67,5 @@
67
67
  "build": "yarn webiny run build",
68
68
  "watch": "yarn webiny run watch"
69
69
  },
70
- "gitHead": "d25ece60370f08c6138d0af0340d8900acb95bac"
70
+ "gitHead": "bb0a2c8b43b2caa88f7a2d745a88039a520d124c"
71
71
  }