@sentecacommerce-theme/lib 0.12.52 → 0.12.53
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/cms/api/index.js +8 -0
- package/dist/cjs/cms/api/index.js.map +1 -1
- package/dist/cjs/cms/api/mutations/index.js +28 -0
- package/dist/cjs/cms/api/mutations/index.js.map +1 -0
- package/dist/cjs/cms/api/mutations/useCMSFoldersCreateMutation.js +59 -0
- package/dist/cjs/cms/api/mutations/useCMSFoldersCreateMutation.js.map +1 -0
- package/dist/cjs/cms/api/mutations/useCMSMediaDeleteAssetsMutation.js +51 -0
- package/dist/cjs/cms/api/mutations/useCMSMediaDeleteAssetsMutation.js.map +1 -0
- package/dist/cjs/cms/api/mutations/useCMSMediaUploadAssetsMutation.js +57 -0
- package/dist/cjs/cms/api/mutations/useCMSMediaUploadAssetsMutation.js.map +1 -0
- package/dist/cjs/cms/api/queries/index.js +16 -0
- package/dist/cjs/cms/api/queries/index.js.map +1 -1
- package/dist/cjs/cms/api/queries/useCMSFoldersQuery.js +40 -0
- package/dist/cjs/cms/api/queries/useCMSFoldersQuery.js.map +1 -0
- package/dist/cjs/cms/api/queries/useCMSMediaQuery.js +44 -0
- package/dist/cjs/cms/api/queries/useCMSMediaQuery.js.map +1 -0
- package/dist/cjs/cms/api/utils/cacheKeys.js +10 -0
- package/dist/cjs/cms/api/utils/cacheKeys.js.map +1 -0
- package/dist/cjs/cms/api/utils/index.js +12 -0
- package/dist/cjs/cms/api/utils/index.js.map +1 -0
- package/dist/cjs/cms/hooks/index.js +40 -0
- package/dist/cjs/cms/hooks/index.js.map +1 -1
- package/dist/cjs/cms/hooks/useCmsFolders.js +8 -0
- package/dist/cjs/cms/hooks/useCmsFolders.js.map +1 -0
- package/dist/cjs/cms/hooks/useCmsMedia.js +8 -0
- package/dist/cjs/cms/hooks/useCmsMedia.js.map +1 -0
- package/dist/cjs/cms/hooks/useCmsMediaDeleteAssets.js +8 -0
- package/dist/cjs/cms/hooks/useCmsMediaDeleteAssets.js.map +1 -0
- package/dist/cjs/cms/hooks/useCmsMediaUploadAssets.js +8 -0
- package/dist/cjs/cms/hooks/useCmsMediaUploadAssets.js.map +1 -0
- package/dist/cjs/cms/hooks/useCreateCmsFolders.js +8 -0
- package/dist/cjs/cms/hooks/useCreateCmsFolders.js.map +1 -0
- package/dist/cjs/listing/hooks/useListingBreadcrumbs.js +1 -1
- package/dist/cjs/listing/hooks/useListingBreadcrumbs.js.map +1 -1
- package/dist/esm/cms/api/index.js +1 -0
- package/dist/esm/cms/api/index.js.map +1 -1
- package/dist/esm/cms/api/mutations/index.js +4 -0
- package/dist/esm/cms/api/mutations/index.js.map +1 -0
- package/dist/esm/cms/api/mutations/useCMSFoldersCreateMutation.js +31 -0
- package/dist/esm/cms/api/mutations/useCMSFoldersCreateMutation.js.map +1 -0
- package/dist/esm/cms/api/mutations/useCMSMediaDeleteAssetsMutation.js +21 -0
- package/dist/esm/cms/api/mutations/useCMSMediaDeleteAssetsMutation.js.map +1 -0
- package/dist/esm/cms/api/mutations/useCMSMediaUploadAssetsMutation.js +26 -0
- package/dist/esm/cms/api/mutations/useCMSMediaUploadAssetsMutation.js.map +1 -0
- package/dist/esm/cms/api/queries/index.js +2 -0
- package/dist/esm/cms/api/queries/index.js.map +1 -1
- package/dist/esm/cms/api/queries/useCMSFoldersQuery.js +10 -0
- package/dist/esm/cms/api/queries/useCMSFoldersQuery.js.map +1 -0
- package/dist/esm/cms/api/queries/useCMSMediaQuery.js +13 -0
- package/dist/esm/cms/api/queries/useCMSMediaQuery.js.map +1 -0
- package/dist/esm/cms/api/utils/cacheKeys.js +5 -0
- package/dist/esm/cms/api/utils/cacheKeys.js.map +1 -0
- package/dist/esm/cms/api/utils/index.js +2 -0
- package/dist/esm/cms/api/utils/index.js.map +1 -0
- package/dist/esm/cms/hooks/index.js +5 -0
- package/dist/esm/cms/hooks/index.js.map +1 -1
- package/dist/esm/cms/hooks/useCmsFolders.js +3 -0
- package/dist/esm/cms/hooks/useCmsFolders.js.map +1 -0
- package/dist/esm/cms/hooks/useCmsMedia.js +3 -0
- package/dist/esm/cms/hooks/useCmsMedia.js.map +1 -0
- package/dist/esm/cms/hooks/useCmsMediaDeleteAssets.js +3 -0
- package/dist/esm/cms/hooks/useCmsMediaDeleteAssets.js.map +1 -0
- package/dist/esm/cms/hooks/useCmsMediaUploadAssets.js +3 -0
- package/dist/esm/cms/hooks/useCmsMediaUploadAssets.js.map +1 -0
- package/dist/esm/cms/hooks/useCreateCmsFolders.js +3 -0
- package/dist/esm/cms/hooks/useCreateCmsFolders.js.map +1 -0
- package/dist/esm/listing/hooks/useListingBreadcrumbs.js +1 -1
- package/dist/esm/listing/hooks/useListingBreadcrumbs.js.map +1 -1
- package/dist/types/cms/api/index.d.ts +1 -0
- package/dist/types/cms/api/mutations/index.d.ts +3 -0
- package/dist/types/cms/api/mutations/useCMSFoldersCreateMutation.d.ts +5 -0
- package/dist/types/cms/api/mutations/useCMSMediaDeleteAssetsMutation.d.ts +2 -0
- package/dist/types/cms/api/mutations/useCMSMediaUploadAssetsMutation.d.ts +6 -0
- package/dist/types/cms/api/queries/index.d.ts +2 -0
- package/dist/types/cms/api/queries/useCMSFoldersQuery.d.ts +16 -0
- package/dist/types/cms/api/queries/useCMSMediaQuery.d.ts +19 -0
- package/dist/types/cms/api/utils/cacheKeys.d.ts +4 -0
- package/dist/types/cms/api/utils/index.d.ts +1 -0
- package/dist/types/cms/hooks/index.d.ts +5 -0
- package/dist/types/cms/hooks/useCmsFolders.d.ts +2 -0
- package/dist/types/cms/hooks/useCmsMedia.d.ts +2 -0
- package/dist/types/cms/hooks/useCmsMediaDeleteAssets.d.ts +2 -0
- package/dist/types/cms/hooks/useCmsMediaUploadAssets.d.ts +2 -0
- package/dist/types/cms/hooks/useCreateCmsFolders.d.ts +2 -0
- package/package.json +3 -3
@@ -9,4 +9,12 @@ Object.keys(_queries).forEach(function (key) {
|
|
9
9
|
if (key in exports && exports[key] === _queries[key]) return;
|
10
10
|
exports[key] = _queries[key];
|
11
11
|
});
|
12
|
+
|
13
|
+
var _mutations = require("./mutations");
|
14
|
+
|
15
|
+
Object.keys(_mutations).forEach(function (key) {
|
16
|
+
if (key === "default" || key === "__esModule") return;
|
17
|
+
if (key in exports && exports[key] === _mutations[key]) return;
|
18
|
+
exports[key] = _mutations[key];
|
19
|
+
});
|
12
20
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/cms/api/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './queries'"],"file":"index.js"}
|
1
|
+
{"version":3,"sources":["../../../../src/cms/api/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './queries'\nexport * from './mutations'\n"],"file":"index.js"}
|
@@ -0,0 +1,28 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
exports.__esModule = true;
|
4
|
+
|
5
|
+
var _useCMSFoldersCreateMutation = require("./useCMSFoldersCreateMutation");
|
6
|
+
|
7
|
+
Object.keys(_useCMSFoldersCreateMutation).forEach(function (key) {
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
9
|
+
if (key in exports && exports[key] === _useCMSFoldersCreateMutation[key]) return;
|
10
|
+
exports[key] = _useCMSFoldersCreateMutation[key];
|
11
|
+
});
|
12
|
+
|
13
|
+
var _useCMSMediaUploadAssetsMutation = require("./useCMSMediaUploadAssetsMutation");
|
14
|
+
|
15
|
+
Object.keys(_useCMSMediaUploadAssetsMutation).forEach(function (key) {
|
16
|
+
if (key === "default" || key === "__esModule") return;
|
17
|
+
if (key in exports && exports[key] === _useCMSMediaUploadAssetsMutation[key]) return;
|
18
|
+
exports[key] = _useCMSMediaUploadAssetsMutation[key];
|
19
|
+
});
|
20
|
+
|
21
|
+
var _useCMSMediaDeleteAssetsMutation = require("./useCMSMediaDeleteAssetsMutation");
|
22
|
+
|
23
|
+
Object.keys(_useCMSMediaDeleteAssetsMutation).forEach(function (key) {
|
24
|
+
if (key === "default" || key === "__esModule") return;
|
25
|
+
if (key in exports && exports[key] === _useCMSMediaDeleteAssetsMutation[key]) return;
|
26
|
+
exports[key] = _useCMSMediaDeleteAssetsMutation[key];
|
27
|
+
});
|
28
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/mutations/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './useCMSFoldersCreateMutation'\nexport * from './useCMSMediaUploadAssetsMutation'\nexport * from './useCMSMediaDeleteAssetsMutation'\n"],"file":"index.js"}
|
@@ -0,0 +1,59 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
|
5
|
+
exports.__esModule = true;
|
6
|
+
exports.useCMSFoldersCreateMutation = void 0;
|
7
|
+
|
8
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
9
|
+
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
11
|
+
|
12
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
13
|
+
|
14
|
+
var _reactQuery = require("react-query");
|
15
|
+
|
16
|
+
var _sdk = require("@sentecacommerce/sdk");
|
17
|
+
|
18
|
+
var useCMSFoldersCreateMutation = function useCMSFoldersCreateMutation() {
|
19
|
+
return (0, _reactQuery.useMutation)( /*#__PURE__*/function () {
|
20
|
+
var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(_ref) {
|
21
|
+
var parent, folder;
|
22
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
23
|
+
while (1) {
|
24
|
+
switch (_context.prev = _context.next) {
|
25
|
+
case 0:
|
26
|
+
parent = _ref.parent, folder = _ref.folder;
|
27
|
+
|
28
|
+
if (!parent) {
|
29
|
+
_context.next = 3;
|
30
|
+
break;
|
31
|
+
}
|
32
|
+
|
33
|
+
return _context.abrupt("return", (0, _sdk.FoldersCreate)((0, _extends2["default"])({}, folder, {
|
34
|
+
parent: (0, _extends2["default"])({}, parent, {
|
35
|
+
resourceId: parent._id,
|
36
|
+
resource: parent._id,
|
37
|
+
resourceType: _sdk.IdReferenceDTOResourceTypeEnum.CmsFolder
|
38
|
+
})
|
39
|
+
})));
|
40
|
+
|
41
|
+
case 3:
|
42
|
+
return _context.abrupt("return", (0, _sdk.FoldersCreate)(folder));
|
43
|
+
|
44
|
+
case 4:
|
45
|
+
case "end":
|
46
|
+
return _context.stop();
|
47
|
+
}
|
48
|
+
}
|
49
|
+
}, _callee);
|
50
|
+
}));
|
51
|
+
|
52
|
+
return function (_x) {
|
53
|
+
return _ref2.apply(this, arguments);
|
54
|
+
};
|
55
|
+
}());
|
56
|
+
};
|
57
|
+
|
58
|
+
exports.useCMSFoldersCreateMutation = useCMSFoldersCreateMutation;
|
59
|
+
//# sourceMappingURL=useCMSFoldersCreateMutation.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/mutations/useCMSFoldersCreateMutation.ts"],"names":["useCMSFoldersCreateMutation","parent","folder","resourceId","_id","resource","resourceType","IdReferenceDTOResourceTypeEnum","CmsFolder"],"mappings":";;;;;;;;;;;;;AACA;;AACA;;AAOO,IAAMA,2BAA2B,GAAG,SAA9BA,2BAA8B,GAAM;AAC/C,SAAO;AAAA,8FACL;AAAA;AAAA;AAAA;AAAA;AAAA;AACEC,cAAAA,MADF,QACEA,MADF,EAEEC,MAFF,QAEEA,MAFF;;AAAA,mBAOMD,MAPN;AAAA;AAAA;AAAA;;AAAA,+CAQW,sDACFC,MADE;AAELD,gBAAAA,MAAM,gCACDA,MADC;AAEJE,kBAAAA,UAAU,EAAGF,MAAD,CAAsBG,GAF9B;AAGJC,kBAAAA,QAAQ,EAAGJ,MAAD,CAAsBG,GAH5B;AAIJE,kBAAAA,YAAY,EAAEC,oCAA+BC;AAJzC;AAFD,iBARX;;AAAA;AAAA,+CAmBS,wBAAcN,MAAd,CAnBT;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KADK;;AAAA;AAAA;AAAA;AAAA,MAAP;AAuBD,CAxBM","sourcesContent":["import React from 'react'\nimport { useMutation } from 'react-query'\nimport {\n FolderDTO,\n FolderDraftDTO,\n FoldersCreate,\n IdReferenceDTOResourceTypeEnum,\n} from '@sentecacommerce/sdk'\n\nexport const useCMSFoldersCreateMutation = () => {\n return useMutation(\n async ({\n parent,\n folder,\n }: {\n parent?: FolderDraftDTO\n folder: FolderDraftDTO\n }) => {\n if (parent) {\n return FoldersCreate({\n ...folder,\n parent: {\n ...parent,\n resourceId: (parent as FolderDTO)._id,\n resource: (parent as FolderDTO)._id,\n resourceType: IdReferenceDTOResourceTypeEnum.CmsFolder,\n },\n })\n }\n\n return FoldersCreate(folder)\n }\n )\n}\n"],"file":"useCMSFoldersCreateMutation.js"}
|
@@ -0,0 +1,51 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
|
5
|
+
exports.__esModule = true;
|
6
|
+
exports.useCMSMediaDeleteAssetsMutation = void 0;
|
7
|
+
|
8
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
9
|
+
|
10
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
11
|
+
|
12
|
+
var _reactQuery = require("react-query");
|
13
|
+
|
14
|
+
var _sdk = require("@sentecacommerce/sdk");
|
15
|
+
|
16
|
+
var _utils = require("../utils");
|
17
|
+
|
18
|
+
var useCMSMediaDeleteAssetsMutation = function useCMSMediaDeleteAssetsMutation() {
|
19
|
+
var queryCache = (0, _reactQuery.useQueryCache)();
|
20
|
+
return (0, _reactQuery.useMutation)( /*#__PURE__*/function () {
|
21
|
+
var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(dto) {
|
22
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
23
|
+
while (1) {
|
24
|
+
switch (_context.prev = _context.next) {
|
25
|
+
case 0:
|
26
|
+
_context.next = 2;
|
27
|
+
return (0, _sdk.MediaDelete)(dto);
|
28
|
+
|
29
|
+
case 2:
|
30
|
+
return _context.abrupt("return", _context.sent);
|
31
|
+
|
32
|
+
case 3:
|
33
|
+
case "end":
|
34
|
+
return _context.stop();
|
35
|
+
}
|
36
|
+
}
|
37
|
+
}, _callee);
|
38
|
+
}));
|
39
|
+
|
40
|
+
return function (_x) {
|
41
|
+
return _ref.apply(this, arguments);
|
42
|
+
};
|
43
|
+
}(), {
|
44
|
+
onSuccess: function onSuccess(data) {
|
45
|
+
queryCache.setQueryData(_utils.cacheKeys.cmsMedia, data);
|
46
|
+
}
|
47
|
+
});
|
48
|
+
};
|
49
|
+
|
50
|
+
exports.useCMSMediaDeleteAssetsMutation = useCMSMediaDeleteAssetsMutation;
|
51
|
+
//# sourceMappingURL=useCMSMediaDeleteAssetsMutation.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/mutations/useCMSMediaDeleteAssetsMutation.ts"],"names":["useCMSMediaDeleteAssetsMutation","queryCache","dto","onSuccess","data","setQueryData","cacheKeys","cmsMedia"],"mappings":";;;;;;;;;;;AACA;;AACA;;AACA;;AAEO,IAAMA,+BAA+B,GAAG,SAAlCA,+BAAkC,GAAM;AACnD,MAAMC,UAAU,GAAG,gCAAnB;AAEA,SAAO;AAAA,6FAAY,iBAAOC,GAAP;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAqC,sBAAYA,GAAZ,CAArC;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAZ;;AAAA;AAAA;AAAA;AAAA,OAAmE;AACxEC,IAAAA,SAAS,EAAE,mBAACC,IAAD,EAAU;AACnBH,MAAAA,UAAU,CAACI,YAAX,CAAwBC,iBAAUC,QAAlC,EAA4CH,IAA5C;AACD;AAHuE,GAAnE,CAAP;AAKD,CARM","sourcesContent":["import React from 'react'\nimport { useMutation, useQueryCache } from 'react-query'\nimport { MediaDelete, MediaDeleteDTO } from '@sentecacommerce/sdk'\nimport { cacheKeys } from '../utils'\n\nexport const useCMSMediaDeleteAssetsMutation = () => {\n const queryCache = useQueryCache()\n\n return useMutation(async (dto: MediaDeleteDTO) => await MediaDelete(dto), {\n onSuccess: (data) => {\n queryCache.setQueryData(cacheKeys.cmsMedia, data)\n },\n })\n}\n"],"file":"useCMSMediaDeleteAssetsMutation.js"}
|
@@ -0,0 +1,57 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
|
5
|
+
exports.__esModule = true;
|
6
|
+
exports.useCMSMediaUploadAssetsMutation = void 0;
|
7
|
+
|
8
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
9
|
+
|
10
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
11
|
+
|
12
|
+
var _reactQuery = require("react-query");
|
13
|
+
|
14
|
+
var _sdk = require("@sentecacommerce/sdk");
|
15
|
+
|
16
|
+
exports.FolderDTO = _sdk.FolderDTO;
|
17
|
+
exports.MediaDTO = _sdk.MediaDTO;
|
18
|
+
exports.MediaFilterResultDTO = _sdk.MediaFilterResultDTO;
|
19
|
+
|
20
|
+
var _utils = require("../utils");
|
21
|
+
|
22
|
+
var useCMSMediaUploadAssetsMutation = function useCMSMediaUploadAssetsMutation() {
|
23
|
+
var queryCache = (0, _reactQuery.useQueryCache)();
|
24
|
+
return (0, _reactQuery.useMutation)( /*#__PURE__*/function () {
|
25
|
+
var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(_ref) {
|
26
|
+
var folderId, assets;
|
27
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
28
|
+
while (1) {
|
29
|
+
switch (_context.prev = _context.next) {
|
30
|
+
case 0:
|
31
|
+
folderId = _ref.folderId, assets = _ref.assets;
|
32
|
+
_context.next = 3;
|
33
|
+
return (0, _sdk.MediaUploadAssets)(folderId, assets);
|
34
|
+
|
35
|
+
case 3:
|
36
|
+
return _context.abrupt("return", _context.sent);
|
37
|
+
|
38
|
+
case 4:
|
39
|
+
case "end":
|
40
|
+
return _context.stop();
|
41
|
+
}
|
42
|
+
}
|
43
|
+
}, _callee);
|
44
|
+
}));
|
45
|
+
|
46
|
+
return function (_x) {
|
47
|
+
return _ref2.apply(this, arguments);
|
48
|
+
};
|
49
|
+
}(), {
|
50
|
+
onSuccess: function onSuccess() {
|
51
|
+
queryCache.invalidateQueries(_utils.cacheKeys.cmsMedia);
|
52
|
+
}
|
53
|
+
});
|
54
|
+
};
|
55
|
+
|
56
|
+
exports.useCMSMediaUploadAssetsMutation = useCMSMediaUploadAssetsMutation;
|
57
|
+
//# sourceMappingURL=useCMSMediaUploadAssetsMutation.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/mutations/useCMSMediaUploadAssetsMutation.ts"],"names":["useCMSMediaUploadAssetsMutation","queryCache","folderId","assets","onSuccess","invalidateQueries","cacheKeys","cmsMedia"],"mappings":";;;;;;;;;;;AACA;;AACA;;;;;;AAMA;;AAIO,IAAMA,+BAA+B,GAAG,SAAlCA,+BAAkC,GAAM;AACnD,MAAMC,UAAU,GAAG,gCAAnB;AAEA,SAAO;AAAA,8FACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAASC,cAAAA,QAAT,QAASA,QAAT,EAAmBC,MAAnB,QAAmBA,MAAnB;AAAA;AAAA,qBACQ,4BAAkBD,QAAlB,EAA4BC,MAA5B,CADR;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KADK;;AAAA;AAAA;AAAA;AAAA,OAGL;AACEC,IAAAA,SAAS,EAAE,qBAAM;AACfH,MAAAA,UAAU,CAACI,iBAAX,CAA6BC,iBAAUC,QAAvC;AACD;AAHH,GAHK,CAAP;AASD,CAZM","sourcesContent":["import React from 'react'\nimport { useMutation, useQueryCache } from 'react-query'\nimport {\n FolderDTO,\n MediaDTO,\n MediaUploadAssets,\n MediaFilterResultDTO,\n} from '@sentecacommerce/sdk'\nimport { cacheKeys } from '../utils'\n\nexport { FolderDTO, MediaDTO, MediaFilterResultDTO }\n\nexport const useCMSMediaUploadAssetsMutation = () => {\n const queryCache = useQueryCache()\n\n return useMutation(\n async ({ folderId, assets }: { folderId: string; assets: any }) =>\n await MediaUploadAssets(folderId, assets),\n {\n onSuccess: () => {\n queryCache.invalidateQueries(cacheKeys.cmsMedia)\n },\n }\n )\n}\n"],"file":"useCMSMediaUploadAssetsMutation.js"}
|
@@ -33,4 +33,20 @@ Object.keys(_useCMSContentQuery).forEach(function (key) {
|
|
33
33
|
if (key in exports && exports[key] === _useCMSContentQuery[key]) return;
|
34
34
|
exports[key] = _useCMSContentQuery[key];
|
35
35
|
});
|
36
|
+
|
37
|
+
var _useCMSFoldersQuery = require("./useCMSFoldersQuery");
|
38
|
+
|
39
|
+
Object.keys(_useCMSFoldersQuery).forEach(function (key) {
|
40
|
+
if (key === "default" || key === "__esModule") return;
|
41
|
+
if (key in exports && exports[key] === _useCMSFoldersQuery[key]) return;
|
42
|
+
exports[key] = _useCMSFoldersQuery[key];
|
43
|
+
});
|
44
|
+
|
45
|
+
var _useCMSMediaQuery = require("./useCMSMediaQuery");
|
46
|
+
|
47
|
+
Object.keys(_useCMSMediaQuery).forEach(function (key) {
|
48
|
+
if (key === "default" || key === "__esModule") return;
|
49
|
+
if (key in exports && exports[key] === _useCMSMediaQuery[key]) return;
|
50
|
+
exports[key] = _useCMSMediaQuery[key];
|
51
|
+
});
|
36
52
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../../src/cms/api/queries/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './useInjectedContentQuery'\nexport * from './keys'\nexport * from './useCMSContentListQuery'\nexport * from './useCMSContentQuery'"],"file":"index.js"}
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/queries/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './useInjectedContentQuery'\nexport * from './keys'\nexport * from './useCMSContentListQuery'\nexport * from './useCMSContentQuery'\nexport * from './useCMSFoldersQuery'\nexport * from './useCMSMediaQuery'\n"],"file":"index.js"}
|
@@ -0,0 +1,40 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
|
5
|
+
exports.__esModule = true;
|
6
|
+
exports.useCMSFoldersQuery = void 0;
|
7
|
+
|
8
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
9
|
+
|
10
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
11
|
+
|
12
|
+
var _reactQuery = require("react-query");
|
13
|
+
|
14
|
+
var _sdk = require("@sentecacommerce/sdk");
|
15
|
+
|
16
|
+
var _utils = require("../utils");
|
17
|
+
|
18
|
+
var useCMSFoldersQuery = function useCMSFoldersQuery(query) {
|
19
|
+
return (0, _reactQuery.useQuery)(_utils.cacheKeys.cmsFolders, /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
20
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
21
|
+
while (1) {
|
22
|
+
switch (_context.prev = _context.next) {
|
23
|
+
case 0:
|
24
|
+
_context.next = 2;
|
25
|
+
return (0, _sdk.FoldersFilter)(query);
|
26
|
+
|
27
|
+
case 2:
|
28
|
+
return _context.abrupt("return", _context.sent);
|
29
|
+
|
30
|
+
case 3:
|
31
|
+
case "end":
|
32
|
+
return _context.stop();
|
33
|
+
}
|
34
|
+
}
|
35
|
+
}, _callee);
|
36
|
+
})));
|
37
|
+
};
|
38
|
+
|
39
|
+
exports.useCMSFoldersQuery = useCMSFoldersQuery;
|
40
|
+
//# sourceMappingURL=useCMSFoldersQuery.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/queries/useCMSFoldersQuery.ts"],"names":["useCMSFoldersQuery","query","cacheKeys","cmsFolders"],"mappings":";;;;;;;;;;;AACA;;AACA;;AACA;;AAkBO,IAAMA,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,KAAD,EAAmC;AACnE,SAAO,0BAASC,iBAAUC,UAAnB,6FAA+B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB,wBAAcF,KAAd,CAAlB;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAA/B,GAAP;AACD,CAFM","sourcesContent":["import React from 'react'\nimport { useQuery } from 'react-query'\nimport { FoldersFilter } from '@sentecacommerce/sdk'\nimport { cacheKeys } from '../utils'\n\nexport interface FoldersFilterQueryDTO {\n storeKey?: string\n interfaceKey?: string\n currencyCode?: string\n languageCode?: string\n priceListKey?: string\n time?: number\n merchantKey?: string\n expand?: string\n project?: string\n filter?: string\n sort?: string\n limit?: number\n offset?: number\n}\n\nexport const useCMSFoldersQuery = (query?: FoldersFilterQueryDTO) => {\n return useQuery(cacheKeys.cmsFolders, async () => await FoldersFilter(query))\n}\n"],"file":"useCMSFoldersQuery.js"}
|
@@ -0,0 +1,44 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
|
5
|
+
exports.__esModule = true;
|
6
|
+
exports.useCMSMediaQuery = void 0;
|
7
|
+
|
8
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
9
|
+
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
11
|
+
|
12
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
13
|
+
|
14
|
+
var _reactQuery = require("react-query");
|
15
|
+
|
16
|
+
var _sdk = require("@sentecacommerce/sdk");
|
17
|
+
|
18
|
+
var _utils = require("../utils");
|
19
|
+
|
20
|
+
var useCMSMediaQuery = function useCMSMediaQuery(query, props) {
|
21
|
+
return (0, _reactQuery.useInfiniteQuery)(_utils.cacheKeys.cmsMedia, /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
22
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
23
|
+
while (1) {
|
24
|
+
switch (_context.prev = _context.next) {
|
25
|
+
case 0:
|
26
|
+
_context.next = 2;
|
27
|
+
return (0, _sdk.MediaFilter)(query);
|
28
|
+
|
29
|
+
case 2:
|
30
|
+
return _context.abrupt("return", _context.sent);
|
31
|
+
|
32
|
+
case 3:
|
33
|
+
case "end":
|
34
|
+
return _context.stop();
|
35
|
+
}
|
36
|
+
}
|
37
|
+
}, _callee);
|
38
|
+
})), (0, _extends2["default"])({
|
39
|
+
keepPreviousData: true
|
40
|
+
}, props));
|
41
|
+
};
|
42
|
+
|
43
|
+
exports.useCMSMediaQuery = useCMSMediaQuery;
|
44
|
+
//# sourceMappingURL=useCMSMediaQuery.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/queries/useCMSMediaQuery.ts"],"names":["useCMSMediaQuery","query","props","cacheKeys","cmsMedia","keepPreviousData"],"mappings":";;;;;;;;;;;;;AACA;;AACA;;AACA;;AAkBO,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAC9BC,KAD8B,EAE9BC,KAF8B,EAM3B;AACH,SAAO,kCACLC,iBAAUC,QADL,6FAEL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB,sBAAYH,KAAZ,CAAlB;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAFK;AAIHI,IAAAA,gBAAgB,EAAE;AAJf,KAKAH,KALA,EAAP;AAQD,CAfM","sourcesContent":["import React from 'react'\nimport { useInfiniteQuery } from 'react-query'\nimport { MediaFilter } from '@sentecacommerce/sdk'\nimport { cacheKeys } from '../utils'\n\nexport interface MediaFilterQueryDTO {\n storeKey?: string\n interfaceKey?: string\n currencyCode?: string\n languageCode?: string\n priceListKey?: string\n time?: number\n merchantKey?: string\n expand?: string\n project?: string\n filter?: string\n sort?: string\n limit?: number\n offset?: number\n}\n\nexport const useCMSMediaQuery = (\n query?: MediaFilterQueryDTO,\n props?: {\n enabled?: boolean\n getFetchMore?: (lastPage: any, allPages: any[]) => void\n }\n) => {\n return useInfiniteQuery(\n cacheKeys.cmsMedia,\n async () => await MediaFilter(query),\n {\n keepPreviousData: true,\n ...props,\n }\n )\n}\n"],"file":"useCMSMediaQuery.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/utils/cacheKeys.ts"],"names":["cacheKeys","cmsFolders","cmsMedia"],"mappings":";;;;AAAO,IAAMA,SAAS,GAAG;AACvBC,EAAAA,UAAU,EAAE,aADW;AAEvBC,EAAAA,QAAQ,EAAE;AAFa,CAAlB","sourcesContent":["export const cacheKeys = {\n cmsFolders: 'cms-folders',\n cmsMedia: 'cms-media',\n}\n"],"file":"cacheKeys.js"}
|
@@ -0,0 +1,12 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
exports.__esModule = true;
|
4
|
+
|
5
|
+
var _cacheKeys = require("./cacheKeys");
|
6
|
+
|
7
|
+
Object.keys(_cacheKeys).forEach(function (key) {
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
9
|
+
if (key in exports && exports[key] === _cacheKeys[key]) return;
|
10
|
+
exports[key] = _cacheKeys[key];
|
11
|
+
});
|
12
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/utils/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './cacheKeys'\n"],"file":"index.js"}
|
@@ -49,4 +49,44 @@ Object.keys(_useContentCategoriesMap).forEach(function (key) {
|
|
49
49
|
if (key in exports && exports[key] === _useContentCategoriesMap[key]) return;
|
50
50
|
exports[key] = _useContentCategoriesMap[key];
|
51
51
|
});
|
52
|
+
|
53
|
+
var _useCmsFolders = require("./useCmsFolders");
|
54
|
+
|
55
|
+
Object.keys(_useCmsFolders).forEach(function (key) {
|
56
|
+
if (key === "default" || key === "__esModule") return;
|
57
|
+
if (key in exports && exports[key] === _useCmsFolders[key]) return;
|
58
|
+
exports[key] = _useCmsFolders[key];
|
59
|
+
});
|
60
|
+
|
61
|
+
var _useCreateCmsFolders = require("./useCreateCmsFolders");
|
62
|
+
|
63
|
+
Object.keys(_useCreateCmsFolders).forEach(function (key) {
|
64
|
+
if (key === "default" || key === "__esModule") return;
|
65
|
+
if (key in exports && exports[key] === _useCreateCmsFolders[key]) return;
|
66
|
+
exports[key] = _useCreateCmsFolders[key];
|
67
|
+
});
|
68
|
+
|
69
|
+
var _useCmsMedia = require("./useCmsMedia");
|
70
|
+
|
71
|
+
Object.keys(_useCmsMedia).forEach(function (key) {
|
72
|
+
if (key === "default" || key === "__esModule") return;
|
73
|
+
if (key in exports && exports[key] === _useCmsMedia[key]) return;
|
74
|
+
exports[key] = _useCmsMedia[key];
|
75
|
+
});
|
76
|
+
|
77
|
+
var _useCmsMediaUploadAssets = require("./useCmsMediaUploadAssets");
|
78
|
+
|
79
|
+
Object.keys(_useCmsMediaUploadAssets).forEach(function (key) {
|
80
|
+
if (key === "default" || key === "__esModule") return;
|
81
|
+
if (key in exports && exports[key] === _useCmsMediaUploadAssets[key]) return;
|
82
|
+
exports[key] = _useCmsMediaUploadAssets[key];
|
83
|
+
});
|
84
|
+
|
85
|
+
var _useCmsMediaDeleteAssets = require("./useCmsMediaDeleteAssets");
|
86
|
+
|
87
|
+
Object.keys(_useCmsMediaDeleteAssets).forEach(function (key) {
|
88
|
+
if (key === "default" || key === "__esModule") return;
|
89
|
+
if (key in exports && exports[key] === _useCmsMediaDeleteAssets[key]) return;
|
90
|
+
exports[key] = _useCmsMediaDeleteAssets[key];
|
91
|
+
});
|
52
92
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/cms/hooks/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './useProductInjectedContent'\nexport * from './useListingInjectedContent'\nexport * from './useInjectedContentContext'\nexport * from './useCmsContent'\nexport * from './useCmsContentList'\nexport * from './useContentCategoriesMap'\n"],"file":"index.js"}
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './useProductInjectedContent'\nexport * from './useListingInjectedContent'\nexport * from './useInjectedContentContext'\nexport * from './useCmsContent'\nexport * from './useCmsContentList'\nexport * from './useContentCategoriesMap'\nexport * from './useCmsFolders'\nexport * from './useCreateCmsFolders'\nexport * from './useCmsMedia'\nexport * from './useCmsMediaUploadAssets'\nexport * from './useCmsMediaDeleteAssets'\n"],"file":"index.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/useCmsFolders.ts"],"names":[],"mappings":";;;;AACA","sourcesContent":["import React from 'react'\nimport { useCMSFoldersQuery } from '../api'\n\nexport { useCMSFoldersQuery as useCmsFolders }\n"],"file":"useCmsFolders.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/useCmsMedia.ts"],"names":[],"mappings":";;;;AACA","sourcesContent":["import React from 'react'\nimport { useCMSMediaQuery } from '../api'\n\nexport { useCMSMediaQuery as useCmsMedia }\n"],"file":"useCmsMedia.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/useCmsMediaDeleteAssets.ts"],"names":[],"mappings":";;;;AACA","sourcesContent":["import React from 'react'\nimport { useCMSMediaDeleteAssetsMutation } from '../api'\n\nexport { useCMSMediaDeleteAssetsMutation as useCmsMediaDeleteAssets }\n"],"file":"useCmsMediaDeleteAssets.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/useCmsMediaUploadAssets.ts"],"names":[],"mappings":";;;;AACA","sourcesContent":["import React from 'react'\nimport { useCMSMediaUploadAssetsMutation } from '../api'\n\nexport { useCMSMediaUploadAssetsMutation as useCmsMediaUploadAssets }\n"],"file":"useCmsMediaUploadAssets.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/useCreateCmsFolders.ts"],"names":[],"mappings":";;;;AACA","sourcesContent":["import React from 'react'\nimport { useCMSFoldersCreateMutation } from '../api'\n\nexport { useCMSFoldersCreateMutation as useCreateCmsFolders }\n"],"file":"useCreateCmsFolders.js"}
|
@@ -51,7 +51,7 @@ var useListingBreadcrumbs = function useListingBreadcrumbs() {
|
|
51
51
|
}
|
52
52
|
|
53
53
|
return createCatalogBreadcrumb(data, config.type, router);
|
54
|
-
}, [data,
|
54
|
+
}, [data, config.type, router.query]);
|
55
55
|
|
56
56
|
var lastBreadcrumb = _react["default"].useMemo(function () {
|
57
57
|
return result == null ? void 0 : result[(result == null ? void 0 : result.length) - 2];
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/listing/hooks/useListingBreadcrumbs.tsx"],"names":["useListingBreadcrumbs","data","isLoading","config","router","mainConfig","slug","result","React","useMemo","type","ListingTypesEnum","AttrPage","name","listing","titleAliases","id","link","query","q","createCatalogBreadcrumb","filter","lastBreadcrumb","length","last","predicate","sortedAncestors","sortAncestors","ancestors","attrLink","cat","undefined","breadcrumb","push","label","_id","applyFilters","forEach","ancestor","processLink","filters","Array","isArray","join","attr","typeToSuffix","newAncestors","a","resource","tree","mapListToTree","treeToArray","list","map","node","roots","i","resourceId","children","parent","hasOwnProperty","concat","child","arr"],"mappings":"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","sourcesContent":["import React from 'react'\nimport { NextRouter, useRouter } from 'next/router'\nimport { PredicateType, usePredicate } from '../api'\nimport { useListingConfig } from './'\nimport { useConfigState, useListingAlias } from '../../index'\nimport { typeToSuffix } from '../../utils/typeToSuffix'\nimport { getTranslatableField } from '../../utils/getTranslatableField'\nimport { IdReferenceDTO, LangValue } from '@sentecacommerce/sdk'\nimport { ListingTypesEnum } from '..'\n\nexport type Breadcrumb = { name: string; id: string; link: string }[]\n\nexport type UseListingBreadcrumbsResult = {\n data: {\n name: string\n id: string\n link: string\n }[]\n last: {\n name: string\n id: string\n link: string\n }\n isLoading: boolean\n}\n\nexport const useListingBreadcrumbs = (): UseListingBreadcrumbsResult => {\n const { data, isLoading } = usePredicate()\n const config = useListingConfig()\n const router = useRouter()\n\n const mainConfig = useConfigState() as any\n const { slug } = useListingAlias()\n\n const result = React.useMemo(() => {\n if (config.type === ListingTypesEnum.AttrPage) {\n return [\n {\n name: mainConfig.listing.titleAliases[slug],\n id: '',\n link: `/${router.query.slug}/c`,\n },\n ]\n }\n if (router.query.q) {\n return [\n {\n name: `${router.query.q}`,\n id: '',\n link: `/search?q=${router.query.q}`,\n },\n ]\n }\n\n return createCatalogBreadcrumb(data as PredicateType, config.type, router)\n }, [data, router.query.q, config.type, router.query.filter])\n\n const lastBreadcrumb = React.useMemo(() => {\n return result?.[result?.length - 2]\n }, [result])\n\n return { data: result, last: lastBreadcrumb, isLoading }\n}\n\nconst createCatalogBreadcrumb = (\n predicate: PredicateType,\n type: string,\n router: NextRouter\n): Breadcrumb => {\n const result: {\n name: string\n id: string\n link: string\n }[] = []\n\n const sortedAncestors = sortAncestors(predicate?.ancestors)\n const attrLink = router.query.cat ? (router.query.slug as string) : undefined\n\n if (predicate?.breadcrumb) {\n result.push({\n name: getTranslatableField(predicate.breadcrumb.label),\n id: predicate._id,\n\n link: `/${router.query.slug}/${getTranslatableField(\n sortedAncestors?.[0]?.slug || predicate?.slug\n )}/c${applyFilters(router)}`,\n })\n }\n\n sortedAncestors.forEach((ancestor) => {\n result.push({\n name: getTranslatableField(ancestor.name),\n id: ancestor._id,\n link: processLink(ancestor.slug, type, attrLink) + applyFilters(router),\n })\n })\n\n if (predicate?.slug[0]) {\n result.push({\n name: getTranslatableField(predicate?.name),\n id: predicate._id,\n link: processLink(predicate?.slug, type, attrLink) + applyFilters(router),\n })\n }\n\n return result\n}\nfunction applyFilters(router?: NextRouter) {\n const filters = router?.query.filter\n if (filters) {\n if (Array.isArray(filters)) {\n return `?filter=` + filters.join('&filter=')\n } else {\n return `?filter=` + filters\n }\n }\n\n return ''\n}\nfunction processLink(slug: LangValue[], type: string, attr?: string) {\n if (attr) {\n return `/${attr}/${getTranslatableField(slug)}/${typeToSuffix[type]}`\n }\n return `/${getTranslatableField(slug)}/${typeToSuffix[type]}`\n}\n\nfunction sortAncestors(ancestors?: IdReferenceDTO[]) {\n let result = []\n\n if (Array.isArray(ancestors)) {\n const newAncestors = ancestors.filter(\n (a) => a.resource && typeof a.resource === 'object'\n )\n\n if (newAncestors.length) {\n const tree = mapListToTree(newAncestors)\n\n result = treeToArray(tree)[0]\n }\n }\n\n return result\n}\n\nconst mapListToTree = (list: any[]) => {\n const map = {}\n let node\n const roots = []\n let i\n for (i = 0; i < list.length; i += 1) {\n map[list[i].resourceId] = i\n list[i].children = []\n }\n for (i = 0; i < list.length; i += 1) {\n node = list[i]\n if (\n node.resource.parent &&\n map.hasOwnProperty(node.resource.parent.resourceId)\n ) {\n list[map[node.resource.parent.resourceId]].children.push(node)\n } else {\n roots.push(node)\n }\n }\n return roots[0]\n}\n\nconst treeToArray = (node: any) =>\n (node.children.length ? [] : [[node.resource]]).concat(\n ...node.children.map((child: any) =>\n treeToArray(child).map((arr) => [node.resource].concat(arr))\n )\n )\n"],"file":"useListingBreadcrumbs.js"}
|
1
|
+
{"version":3,"sources":["../../../../src/listing/hooks/useListingBreadcrumbs.tsx"],"names":["useListingBreadcrumbs","data","isLoading","config","router","mainConfig","slug","result","React","useMemo","type","ListingTypesEnum","AttrPage","name","listing","titleAliases","id","link","query","q","createCatalogBreadcrumb","lastBreadcrumb","length","last","predicate","sortedAncestors","sortAncestors","ancestors","attrLink","cat","undefined","breadcrumb","push","label","_id","applyFilters","forEach","ancestor","processLink","filters","filter","Array","isArray","join","attr","typeToSuffix","newAncestors","a","resource","tree","mapListToTree","treeToArray","list","map","node","roots","i","resourceId","children","parent","hasOwnProperty","concat","child","arr"],"mappings":"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","sourcesContent":["import React from 'react'\nimport { NextRouter, useRouter } from 'next/router'\nimport { PredicateType, usePredicate } from '../api'\nimport { useListingConfig } from './'\nimport { useConfigState, useListingAlias } from '../../index'\nimport { typeToSuffix } from '../../utils/typeToSuffix'\nimport { getTranslatableField } from '../../utils/getTranslatableField'\nimport { IdReferenceDTO, LangValue } from '@sentecacommerce/sdk'\nimport { ListingTypesEnum } from '..'\n\nexport type Breadcrumb = { name: string; id: string; link: string }[]\n\nexport type UseListingBreadcrumbsResult = {\n data: {\n name: string\n id: string\n link: string\n }[]\n last: {\n name: string\n id: string\n link: string\n }\n isLoading: boolean\n}\n\nexport const useListingBreadcrumbs = (): UseListingBreadcrumbsResult => {\n const { data, isLoading } = usePredicate()\n const config = useListingConfig()\n const router = useRouter()\n\n const mainConfig = useConfigState() as any\n const { slug } = useListingAlias()\n\n const result = React.useMemo(() => {\n if (config.type === ListingTypesEnum.AttrPage) {\n return [\n {\n name: mainConfig.listing.titleAliases[slug],\n id: '',\n link: `/${router.query.slug}/c`,\n },\n ]\n }\n if (router.query.q) {\n return [\n {\n name: `${router.query.q}`,\n id: '',\n link: `/search?q=${router.query.q}`,\n },\n ]\n }\n\n return createCatalogBreadcrumb(data as PredicateType, config.type, router)\n }, [data, config.type, router.query])\n\n const lastBreadcrumb = React.useMemo(() => {\n return result?.[result?.length - 2]\n }, [result])\n\n return { data: result, last: lastBreadcrumb, isLoading }\n}\n\nconst createCatalogBreadcrumb = (\n predicate: PredicateType,\n type: string,\n router: NextRouter\n): Breadcrumb => {\n const result: {\n name: string\n id: string\n link: string\n }[] = []\n\n const sortedAncestors = sortAncestors(predicate?.ancestors)\n const attrLink = router.query.cat ? (router.query.slug as string) : undefined\n\n if (predicate?.breadcrumb) {\n result.push({\n name: getTranslatableField(predicate.breadcrumb.label),\n id: predicate._id,\n\n link: `/${router.query.slug}/${getTranslatableField(\n sortedAncestors?.[0]?.slug || predicate?.slug\n )}/c${applyFilters(router)}`,\n })\n }\n\n sortedAncestors.forEach((ancestor) => {\n result.push({\n name: getTranslatableField(ancestor.name),\n id: ancestor._id,\n link: processLink(ancestor.slug, type, attrLink) + applyFilters(router),\n })\n })\n\n if (predicate?.slug[0]) {\n result.push({\n name: getTranslatableField(predicate?.name),\n id: predicate._id,\n link: processLink(predicate?.slug, type, attrLink) + applyFilters(router),\n })\n }\n\n return result\n}\nfunction applyFilters(router?: NextRouter) {\n const filters = router?.query.filter\n if (filters) {\n if (Array.isArray(filters)) {\n return `?filter=` + filters.join('&filter=')\n } else {\n return `?filter=` + filters\n }\n }\n\n return ''\n}\nfunction processLink(slug: LangValue[], type: string, attr?: string) {\n if (attr) {\n return `/${attr}/${getTranslatableField(slug)}/${typeToSuffix[type]}`\n }\n return `/${getTranslatableField(slug)}/${typeToSuffix[type]}`\n}\n\nfunction sortAncestors(ancestors?: IdReferenceDTO[]) {\n let result = []\n\n if (Array.isArray(ancestors)) {\n const newAncestors = ancestors.filter(\n (a) => a.resource && typeof a.resource === 'object'\n )\n\n if (newAncestors.length) {\n const tree = mapListToTree(newAncestors)\n\n result = treeToArray(tree)[0]\n }\n }\n\n return result\n}\n\nconst mapListToTree = (list: any[]) => {\n const map = {}\n let node\n const roots = []\n let i\n for (i = 0; i < list.length; i += 1) {\n map[list[i].resourceId] = i\n list[i].children = []\n }\n for (i = 0; i < list.length; i += 1) {\n node = list[i]\n if (\n node.resource.parent &&\n map.hasOwnProperty(node.resource.parent.resourceId)\n ) {\n list[map[node.resource.parent.resourceId]].children.push(node)\n } else {\n roots.push(node)\n }\n }\n return roots[0]\n}\n\nconst treeToArray = (node: any) =>\n (node.children.length ? [] : [[node.resource]]).concat(\n ...node.children.map((child: any) =>\n treeToArray(child).map((arr) => [node.resource].concat(arr))\n )\n )\n"],"file":"useListingBreadcrumbs.js"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/cms/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAd","sourcesContent":["export * from './queries'"],"file":"index.js"}
|
1
|
+
{"version":3,"sources":["../../../../src/cms/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAd;AACA,cAAc,aAAd","sourcesContent":["export * from './queries'\nexport * from './mutations'\n"],"file":"index.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/mutations/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAAd;AACA,cAAc,mCAAd;AACA,cAAc,mCAAd","sourcesContent":["export * from './useCMSFoldersCreateMutation'\nexport * from './useCMSMediaUploadAssetsMutation'\nexport * from './useCMSMediaDeleteAssetsMutation'\n"],"file":"index.js"}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
2
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
3
|
+
import { useMutation } from 'react-query';
|
4
|
+
import { FoldersCreate, IdReferenceDTOResourceTypeEnum } from '@sentecacommerce/sdk';
|
5
|
+
export var useCMSFoldersCreateMutation = () => {
|
6
|
+
return useMutation( /*#__PURE__*/function () {
|
7
|
+
var _ref2 = _asyncToGenerator(function* (_ref) {
|
8
|
+
var {
|
9
|
+
parent,
|
10
|
+
folder
|
11
|
+
} = _ref;
|
12
|
+
|
13
|
+
if (parent) {
|
14
|
+
return FoldersCreate(_extends({}, folder, {
|
15
|
+
parent: _extends({}, parent, {
|
16
|
+
resourceId: parent._id,
|
17
|
+
resource: parent._id,
|
18
|
+
resourceType: IdReferenceDTOResourceTypeEnum.CmsFolder
|
19
|
+
})
|
20
|
+
}));
|
21
|
+
}
|
22
|
+
|
23
|
+
return FoldersCreate(folder);
|
24
|
+
});
|
25
|
+
|
26
|
+
return function (_x) {
|
27
|
+
return _ref2.apply(this, arguments);
|
28
|
+
};
|
29
|
+
}());
|
30
|
+
};
|
31
|
+
//# sourceMappingURL=useCMSFoldersCreateMutation.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/mutations/useCMSFoldersCreateMutation.ts"],"names":["useMutation","FoldersCreate","IdReferenceDTOResourceTypeEnum","useCMSFoldersCreateMutation","parent","folder","resourceId","_id","resource","resourceType","CmsFolder"],"mappings":";;AACA,SAASA,WAAT,QAA4B,aAA5B;AACA,SAGEC,aAHF,EAIEC,8BAJF,QAKO,sBALP;AAOA,OAAO,IAAMC,2BAA2B,GAAG,MAAM;AAC/C,SAAOH,WAAW;AAAA,kCAChB,iBAMM;AAAA,UANC;AACLI,QAAAA,MADK;AAELC,QAAAA;AAFK,OAMD;;AACJ,UAAID,MAAJ,EAAY;AACV,eAAOH,aAAa,cACfI,MADe;AAElBD,UAAAA,MAAM,eACDA,MADC;AAEJE,YAAAA,UAAU,EAAGF,MAAD,CAAsBG,GAF9B;AAGJC,YAAAA,QAAQ,EAAGJ,MAAD,CAAsBG,GAH5B;AAIJE,YAAAA,YAAY,EAAEP,8BAA8B,CAACQ;AAJzC;AAFY,WAApB;AASD;;AAED,aAAOT,aAAa,CAACI,MAAD,CAApB;AACD,KArBe;;AAAA;AAAA;AAAA;AAAA,MAAlB;AAuBD,CAxBM","sourcesContent":["import React from 'react'\nimport { useMutation } from 'react-query'\nimport {\n FolderDTO,\n FolderDraftDTO,\n FoldersCreate,\n IdReferenceDTOResourceTypeEnum,\n} from '@sentecacommerce/sdk'\n\nexport const useCMSFoldersCreateMutation = () => {\n return useMutation(\n async ({\n parent,\n folder,\n }: {\n parent?: FolderDraftDTO\n folder: FolderDraftDTO\n }) => {\n if (parent) {\n return FoldersCreate({\n ...folder,\n parent: {\n ...parent,\n resourceId: (parent as FolderDTO)._id,\n resource: (parent as FolderDTO)._id,\n resourceType: IdReferenceDTOResourceTypeEnum.CmsFolder,\n },\n })\n }\n\n return FoldersCreate(folder)\n }\n )\n}\n"],"file":"useCMSFoldersCreateMutation.js"}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
2
|
+
import { useMutation, useQueryCache } from 'react-query';
|
3
|
+
import { MediaDelete } from '@sentecacommerce/sdk';
|
4
|
+
import { cacheKeys } from '../utils';
|
5
|
+
export var useCMSMediaDeleteAssetsMutation = () => {
|
6
|
+
var queryCache = useQueryCache();
|
7
|
+
return useMutation( /*#__PURE__*/function () {
|
8
|
+
var _ref = _asyncToGenerator(function* (dto) {
|
9
|
+
return yield MediaDelete(dto);
|
10
|
+
});
|
11
|
+
|
12
|
+
return function (_x) {
|
13
|
+
return _ref.apply(this, arguments);
|
14
|
+
};
|
15
|
+
}(), {
|
16
|
+
onSuccess: data => {
|
17
|
+
queryCache.setQueryData(cacheKeys.cmsMedia, data);
|
18
|
+
}
|
19
|
+
});
|
20
|
+
};
|
21
|
+
//# sourceMappingURL=useCMSMediaDeleteAssetsMutation.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/mutations/useCMSMediaDeleteAssetsMutation.ts"],"names":["useMutation","useQueryCache","MediaDelete","cacheKeys","useCMSMediaDeleteAssetsMutation","queryCache","dto","onSuccess","data","setQueryData","cmsMedia"],"mappings":";AACA,SAASA,WAAT,EAAsBC,aAAtB,QAA2C,aAA3C;AACA,SAASC,WAAT,QAA4C,sBAA5C;AACA,SAASC,SAAT,QAA0B,UAA1B;AAEA,OAAO,IAAMC,+BAA+B,GAAG,MAAM;AACnD,MAAMC,UAAU,GAAGJ,aAAa,EAAhC;AAEA,SAAOD,WAAW;AAAA,iCAAC,WAAOM,GAAP;AAAA,mBAAqCJ,WAAW,CAACI,GAAD,CAAhD;AAAA,KAAD;;AAAA;AAAA;AAAA;AAAA,OAAwD;AACxEC,IAAAA,SAAS,EAAGC,IAAD,IAAU;AACnBH,MAAAA,UAAU,CAACI,YAAX,CAAwBN,SAAS,CAACO,QAAlC,EAA4CF,IAA5C;AACD;AAHuE,GAAxD,CAAlB;AAKD,CARM","sourcesContent":["import React from 'react'\nimport { useMutation, useQueryCache } from 'react-query'\nimport { MediaDelete, MediaDeleteDTO } from '@sentecacommerce/sdk'\nimport { cacheKeys } from '../utils'\n\nexport const useCMSMediaDeleteAssetsMutation = () => {\n const queryCache = useQueryCache()\n\n return useMutation(async (dto: MediaDeleteDTO) => await MediaDelete(dto), {\n onSuccess: (data) => {\n queryCache.setQueryData(cacheKeys.cmsMedia, data)\n },\n })\n}\n"],"file":"useCMSMediaDeleteAssetsMutation.js"}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
2
|
+
import { useMutation, useQueryCache } from 'react-query';
|
3
|
+
import { FolderDTO, MediaDTO, MediaUploadAssets, MediaFilterResultDTO } from '@sentecacommerce/sdk';
|
4
|
+
import { cacheKeys } from '../utils';
|
5
|
+
export { FolderDTO, MediaDTO, MediaFilterResultDTO };
|
6
|
+
export var useCMSMediaUploadAssetsMutation = () => {
|
7
|
+
var queryCache = useQueryCache();
|
8
|
+
return useMutation( /*#__PURE__*/function () {
|
9
|
+
var _ref2 = _asyncToGenerator(function* (_ref) {
|
10
|
+
var {
|
11
|
+
folderId,
|
12
|
+
assets
|
13
|
+
} = _ref;
|
14
|
+
return yield MediaUploadAssets(folderId, assets);
|
15
|
+
});
|
16
|
+
|
17
|
+
return function (_x) {
|
18
|
+
return _ref2.apply(this, arguments);
|
19
|
+
};
|
20
|
+
}(), {
|
21
|
+
onSuccess: () => {
|
22
|
+
queryCache.invalidateQueries(cacheKeys.cmsMedia);
|
23
|
+
}
|
24
|
+
});
|
25
|
+
};
|
26
|
+
//# sourceMappingURL=useCMSMediaUploadAssetsMutation.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/mutations/useCMSMediaUploadAssetsMutation.ts"],"names":["useMutation","useQueryCache","FolderDTO","MediaDTO","MediaUploadAssets","MediaFilterResultDTO","cacheKeys","useCMSMediaUploadAssetsMutation","queryCache","folderId","assets","onSuccess","invalidateQueries","cmsMedia"],"mappings":";AACA,SAASA,WAAT,EAAsBC,aAAtB,QAA2C,aAA3C;AACA,SACEC,SADF,EAEEC,QAFF,EAGEC,iBAHF,EAIEC,oBAJF,QAKO,sBALP;AAMA,SAASC,SAAT,QAA0B,UAA1B;AAEA,SAASJ,SAAT,EAAoBC,QAApB,EAA8BE,oBAA9B;AAEA,OAAO,IAAME,+BAA+B,GAAG,MAAM;AACnD,MAAMC,UAAU,GAAGP,aAAa,EAAhC;AAEA,SAAOD,WAAW;AAAA,kCAChB;AAAA,UAAO;AAAES,QAAAA,QAAF;AAAYC,QAAAA;AAAZ,OAAP;AAAA,mBACQN,iBAAiB,CAACK,QAAD,EAAWC,MAAX,CADzB;AAAA,KADgB;;AAAA;AAAA;AAAA;AAAA,OAGhB;AACEC,IAAAA,SAAS,EAAE,MAAM;AACfH,MAAAA,UAAU,CAACI,iBAAX,CAA6BN,SAAS,CAACO,QAAvC;AACD;AAHH,GAHgB,CAAlB;AASD,CAZM","sourcesContent":["import React from 'react'\nimport { useMutation, useQueryCache } from 'react-query'\nimport {\n FolderDTO,\n MediaDTO,\n MediaUploadAssets,\n MediaFilterResultDTO,\n} from '@sentecacommerce/sdk'\nimport { cacheKeys } from '../utils'\n\nexport { FolderDTO, MediaDTO, MediaFilterResultDTO }\n\nexport const useCMSMediaUploadAssetsMutation = () => {\n const queryCache = useQueryCache()\n\n return useMutation(\n async ({ folderId, assets }: { folderId: string; assets: any }) =>\n await MediaUploadAssets(folderId, assets),\n {\n onSuccess: () => {\n queryCache.invalidateQueries(cacheKeys.cmsMedia)\n },\n }\n )\n}\n"],"file":"useCMSMediaUploadAssetsMutation.js"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../../src/cms/api/queries/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAAd;AACA,cAAc,QAAd;AACA,cAAc,0BAAd;AACA,cAAc,sBAAd","sourcesContent":["export * from './useInjectedContentQuery'\nexport * from './keys'\nexport * from './useCMSContentListQuery'\nexport * from './useCMSContentQuery'"],"file":"index.js"}
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/queries/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAAd;AACA,cAAc,QAAd;AACA,cAAc,0BAAd;AACA,cAAc,sBAAd;AACA,cAAc,sBAAd;AACA,cAAc,oBAAd","sourcesContent":["export * from './useInjectedContentQuery'\nexport * from './keys'\nexport * from './useCMSContentListQuery'\nexport * from './useCMSContentQuery'\nexport * from './useCMSFoldersQuery'\nexport * from './useCMSMediaQuery'\n"],"file":"index.js"}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
2
|
+
import { useQuery } from 'react-query';
|
3
|
+
import { FoldersFilter } from '@sentecacommerce/sdk';
|
4
|
+
import { cacheKeys } from '../utils';
|
5
|
+
export var useCMSFoldersQuery = query => {
|
6
|
+
return useQuery(cacheKeys.cmsFolders, /*#__PURE__*/_asyncToGenerator(function* () {
|
7
|
+
return yield FoldersFilter(query);
|
8
|
+
}));
|
9
|
+
};
|
10
|
+
//# sourceMappingURL=useCMSFoldersQuery.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/queries/useCMSFoldersQuery.ts"],"names":["useQuery","FoldersFilter","cacheKeys","useCMSFoldersQuery","query","cmsFolders"],"mappings":";AACA,SAASA,QAAT,QAAyB,aAAzB;AACA,SAASC,aAAT,QAA8B,sBAA9B;AACA,SAASC,SAAT,QAA0B,UAA1B;AAkBA,OAAO,IAAMC,kBAAkB,GAAIC,KAAD,IAAmC;AACnE,SAAOJ,QAAQ,CAACE,SAAS,CAACG,UAAX,iCAAuB;AAAA,iBAAkBJ,aAAa,CAACG,KAAD,CAA/B;AAAA,GAAvB,EAAf;AACD,CAFM","sourcesContent":["import React from 'react'\nimport { useQuery } from 'react-query'\nimport { FoldersFilter } from '@sentecacommerce/sdk'\nimport { cacheKeys } from '../utils'\n\nexport interface FoldersFilterQueryDTO {\n storeKey?: string\n interfaceKey?: string\n currencyCode?: string\n languageCode?: string\n priceListKey?: string\n time?: number\n merchantKey?: string\n expand?: string\n project?: string\n filter?: string\n sort?: string\n limit?: number\n offset?: number\n}\n\nexport const useCMSFoldersQuery = (query?: FoldersFilterQueryDTO) => {\n return useQuery(cacheKeys.cmsFolders, async () => await FoldersFilter(query))\n}\n"],"file":"useCMSFoldersQuery.js"}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
2
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
3
|
+
import { useInfiniteQuery } from 'react-query';
|
4
|
+
import { MediaFilter } from '@sentecacommerce/sdk';
|
5
|
+
import { cacheKeys } from '../utils';
|
6
|
+
export var useCMSMediaQuery = (query, props) => {
|
7
|
+
return useInfiniteQuery(cacheKeys.cmsMedia, /*#__PURE__*/_asyncToGenerator(function* () {
|
8
|
+
return yield MediaFilter(query);
|
9
|
+
}), _extends({
|
10
|
+
keepPreviousData: true
|
11
|
+
}, props));
|
12
|
+
};
|
13
|
+
//# sourceMappingURL=useCMSMediaQuery.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/queries/useCMSMediaQuery.ts"],"names":["useInfiniteQuery","MediaFilter","cacheKeys","useCMSMediaQuery","query","props","cmsMedia","keepPreviousData"],"mappings":";;AACA,SAASA,gBAAT,QAAiC,aAAjC;AACA,SAASC,WAAT,QAA4B,sBAA5B;AACA,SAASC,SAAT,QAA0B,UAA1B;AAkBA,OAAO,IAAMC,gBAAgB,GAAG,CAC9BC,KAD8B,EAE9BC,KAF8B,KAM3B;AACH,SAAOL,gBAAgB,CACrBE,SAAS,CAACI,QADW,iCAErB;AAAA,iBAAkBL,WAAW,CAACG,KAAD,CAA7B;AAAA,GAFqB;AAInBG,IAAAA,gBAAgB,EAAE;AAJC,KAKhBF,KALgB,EAAvB;AAQD,CAfM","sourcesContent":["import React from 'react'\nimport { useInfiniteQuery } from 'react-query'\nimport { MediaFilter } from '@sentecacommerce/sdk'\nimport { cacheKeys } from '../utils'\n\nexport interface MediaFilterQueryDTO {\n storeKey?: string\n interfaceKey?: string\n currencyCode?: string\n languageCode?: string\n priceListKey?: string\n time?: number\n merchantKey?: string\n expand?: string\n project?: string\n filter?: string\n sort?: string\n limit?: number\n offset?: number\n}\n\nexport const useCMSMediaQuery = (\n query?: MediaFilterQueryDTO,\n props?: {\n enabled?: boolean\n getFetchMore?: (lastPage: any, allPages: any[]) => void\n }\n) => {\n return useInfiniteQuery(\n cacheKeys.cmsMedia,\n async () => await MediaFilter(query),\n {\n keepPreviousData: true,\n ...props,\n }\n )\n}\n"],"file":"useCMSMediaQuery.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/utils/cacheKeys.ts"],"names":["cacheKeys","cmsFolders","cmsMedia"],"mappings":"AAAA,OAAO,IAAMA,SAAS,GAAG;AACvBC,EAAAA,UAAU,EAAE,aADW;AAEvBC,EAAAA,QAAQ,EAAE;AAFa,CAAlB","sourcesContent":["export const cacheKeys = {\n cmsFolders: 'cms-folders',\n cmsMedia: 'cms-media',\n}\n"],"file":"cacheKeys.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAd","sourcesContent":["export * from './cacheKeys'\n"],"file":"index.js"}
|
@@ -4,4 +4,9 @@ export * from './useInjectedContentContext';
|
|
4
4
|
export * from './useCmsContent';
|
5
5
|
export * from './useCmsContentList';
|
6
6
|
export * from './useContentCategoriesMap';
|
7
|
+
export * from './useCmsFolders';
|
8
|
+
export * from './useCreateCmsFolders';
|
9
|
+
export * from './useCmsMedia';
|
10
|
+
export * from './useCmsMediaUploadAssets';
|
11
|
+
export * from './useCmsMediaDeleteAssets';
|
7
12
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/cms/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAAd;AACA,cAAc,6BAAd;AACA,cAAc,6BAAd;AACA,cAAc,iBAAd;AACA,cAAc,qBAAd;AACA,cAAc,2BAAd","sourcesContent":["export * from './useProductInjectedContent'\nexport * from './useListingInjectedContent'\nexport * from './useInjectedContentContext'\nexport * from './useCmsContent'\nexport * from './useCmsContentList'\nexport * from './useContentCategoriesMap'\n"],"file":"index.js"}
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAAd;AACA,cAAc,6BAAd;AACA,cAAc,6BAAd;AACA,cAAc,iBAAd;AACA,cAAc,qBAAd;AACA,cAAc,2BAAd;AACA,cAAc,iBAAd;AACA,cAAc,uBAAd;AACA,cAAc,eAAd;AACA,cAAc,2BAAd;AACA,cAAc,2BAAd","sourcesContent":["export * from './useProductInjectedContent'\nexport * from './useListingInjectedContent'\nexport * from './useInjectedContentContext'\nexport * from './useCmsContent'\nexport * from './useCmsContentList'\nexport * from './useContentCategoriesMap'\nexport * from './useCmsFolders'\nexport * from './useCreateCmsFolders'\nexport * from './useCmsMedia'\nexport * from './useCmsMediaUploadAssets'\nexport * from './useCmsMediaDeleteAssets'\n"],"file":"index.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/useCmsFolders.ts"],"names":["useCMSFoldersQuery","useCmsFolders"],"mappings":"AACA,SAASA,kBAAT,QAAmC,QAAnC;AAEA,SAASA,kBAAkB,IAAIC,aAA/B","sourcesContent":["import React from 'react'\nimport { useCMSFoldersQuery } from '../api'\n\nexport { useCMSFoldersQuery as useCmsFolders }\n"],"file":"useCmsFolders.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/useCmsMedia.ts"],"names":["useCMSMediaQuery","useCmsMedia"],"mappings":"AACA,SAASA,gBAAT,QAAiC,QAAjC;AAEA,SAASA,gBAAgB,IAAIC,WAA7B","sourcesContent":["import React from 'react'\nimport { useCMSMediaQuery } from '../api'\n\nexport { useCMSMediaQuery as useCmsMedia }\n"],"file":"useCmsMedia.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/useCmsMediaDeleteAssets.ts"],"names":["useCMSMediaDeleteAssetsMutation","useCmsMediaDeleteAssets"],"mappings":"AACA,SAASA,+BAAT,QAAgD,QAAhD;AAEA,SAASA,+BAA+B,IAAIC,uBAA5C","sourcesContent":["import React from 'react'\nimport { useCMSMediaDeleteAssetsMutation } from '../api'\n\nexport { useCMSMediaDeleteAssetsMutation as useCmsMediaDeleteAssets }\n"],"file":"useCmsMediaDeleteAssets.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/useCmsMediaUploadAssets.ts"],"names":["useCMSMediaUploadAssetsMutation","useCmsMediaUploadAssets"],"mappings":"AACA,SAASA,+BAAT,QAAgD,QAAhD;AAEA,SAASA,+BAA+B,IAAIC,uBAA5C","sourcesContent":["import React from 'react'\nimport { useCMSMediaUploadAssetsMutation } from '../api'\n\nexport { useCMSMediaUploadAssetsMutation as useCmsMediaUploadAssets }\n"],"file":"useCmsMediaUploadAssets.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/useCreateCmsFolders.ts"],"names":["useCMSFoldersCreateMutation","useCreateCmsFolders"],"mappings":"AACA,SAASA,2BAAT,QAA4C,QAA5C;AAEA,SAASA,2BAA2B,IAAIC,mBAAxC","sourcesContent":["import React from 'react'\nimport { useCMSFoldersCreateMutation } from '../api'\n\nexport { useCMSFoldersCreateMutation as useCreateCmsFolders }\n"],"file":"useCreateCmsFolders.js"}
|
@@ -35,7 +35,7 @@ export var useListingBreadcrumbs = () => {
|
|
35
35
|
}
|
36
36
|
|
37
37
|
return createCatalogBreadcrumb(data, config.type, router);
|
38
|
-
}, [data,
|
38
|
+
}, [data, config.type, router.query]);
|
39
39
|
var lastBreadcrumb = React.useMemo(() => {
|
40
40
|
return result == null ? void 0 : result[(result == null ? void 0 : result.length) - 2];
|
41
41
|
}, [result]);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/listing/hooks/useListingBreadcrumbs.tsx"],"names":["React","useRouter","usePredicate","useListingConfig","useConfigState","useListingAlias","typeToSuffix","getTranslatableField","ListingTypesEnum","useListingBreadcrumbs","data","isLoading","config","router","mainConfig","slug","result","useMemo","type","AttrPage","name","listing","titleAliases","id","link","query","q","createCatalogBreadcrumb","filter","lastBreadcrumb","length","last","predicate","sortedAncestors","sortAncestors","ancestors","attrLink","cat","undefined","breadcrumb","push","label","_id","applyFilters","forEach","ancestor","processLink","filters","Array","isArray","join","attr","newAncestors","a","resource","tree","mapListToTree","treeToArray","list","map","node","roots","i","resourceId","children","parent","hasOwnProperty","concat","child","arr"],"mappings":"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","sourcesContent":["import React from 'react'\nimport { NextRouter, useRouter } from 'next/router'\nimport { PredicateType, usePredicate } from '../api'\nimport { useListingConfig } from './'\nimport { useConfigState, useListingAlias } from '../../index'\nimport { typeToSuffix } from '../../utils/typeToSuffix'\nimport { getTranslatableField } from '../../utils/getTranslatableField'\nimport { IdReferenceDTO, LangValue } from '@sentecacommerce/sdk'\nimport { ListingTypesEnum } from '..'\n\nexport type Breadcrumb = { name: string; id: string; link: string }[]\n\nexport type UseListingBreadcrumbsResult = {\n data: {\n name: string\n id: string\n link: string\n }[]\n last: {\n name: string\n id: string\n link: string\n }\n isLoading: boolean\n}\n\nexport const useListingBreadcrumbs = (): UseListingBreadcrumbsResult => {\n const { data, isLoading } = usePredicate()\n const config = useListingConfig()\n const router = useRouter()\n\n const mainConfig = useConfigState() as any\n const { slug } = useListingAlias()\n\n const result = React.useMemo(() => {\n if (config.type === ListingTypesEnum.AttrPage) {\n return [\n {\n name: mainConfig.listing.titleAliases[slug],\n id: '',\n link: `/${router.query.slug}/c`,\n },\n ]\n }\n if (router.query.q) {\n return [\n {\n name: `${router.query.q}`,\n id: '',\n link: `/search?q=${router.query.q}`,\n },\n ]\n }\n\n return createCatalogBreadcrumb(data as PredicateType, config.type, router)\n }, [data, router.query.q, config.type, router.query.filter])\n\n const lastBreadcrumb = React.useMemo(() => {\n return result?.[result?.length - 2]\n }, [result])\n\n return { data: result, last: lastBreadcrumb, isLoading }\n}\n\nconst createCatalogBreadcrumb = (\n predicate: PredicateType,\n type: string,\n router: NextRouter\n): Breadcrumb => {\n const result: {\n name: string\n id: string\n link: string\n }[] = []\n\n const sortedAncestors = sortAncestors(predicate?.ancestors)\n const attrLink = router.query.cat ? (router.query.slug as string) : undefined\n\n if (predicate?.breadcrumb) {\n result.push({\n name: getTranslatableField(predicate.breadcrumb.label),\n id: predicate._id,\n\n link: `/${router.query.slug}/${getTranslatableField(\n sortedAncestors?.[0]?.slug || predicate?.slug\n )}/c${applyFilters(router)}`,\n })\n }\n\n sortedAncestors.forEach((ancestor) => {\n result.push({\n name: getTranslatableField(ancestor.name),\n id: ancestor._id,\n link: processLink(ancestor.slug, type, attrLink) + applyFilters(router),\n })\n })\n\n if (predicate?.slug[0]) {\n result.push({\n name: getTranslatableField(predicate?.name),\n id: predicate._id,\n link: processLink(predicate?.slug, type, attrLink) + applyFilters(router),\n })\n }\n\n return result\n}\nfunction applyFilters(router?: NextRouter) {\n const filters = router?.query.filter\n if (filters) {\n if (Array.isArray(filters)) {\n return `?filter=` + filters.join('&filter=')\n } else {\n return `?filter=` + filters\n }\n }\n\n return ''\n}\nfunction processLink(slug: LangValue[], type: string, attr?: string) {\n if (attr) {\n return `/${attr}/${getTranslatableField(slug)}/${typeToSuffix[type]}`\n }\n return `/${getTranslatableField(slug)}/${typeToSuffix[type]}`\n}\n\nfunction sortAncestors(ancestors?: IdReferenceDTO[]) {\n let result = []\n\n if (Array.isArray(ancestors)) {\n const newAncestors = ancestors.filter(\n (a) => a.resource && typeof a.resource === 'object'\n )\n\n if (newAncestors.length) {\n const tree = mapListToTree(newAncestors)\n\n result = treeToArray(tree)[0]\n }\n }\n\n return result\n}\n\nconst mapListToTree = (list: any[]) => {\n const map = {}\n let node\n const roots = []\n let i\n for (i = 0; i < list.length; i += 1) {\n map[list[i].resourceId] = i\n list[i].children = []\n }\n for (i = 0; i < list.length; i += 1) {\n node = list[i]\n if (\n node.resource.parent &&\n map.hasOwnProperty(node.resource.parent.resourceId)\n ) {\n list[map[node.resource.parent.resourceId]].children.push(node)\n } else {\n roots.push(node)\n }\n }\n return roots[0]\n}\n\nconst treeToArray = (node: any) =>\n (node.children.length ? [] : [[node.resource]]).concat(\n ...node.children.map((child: any) =>\n treeToArray(child).map((arr) => [node.resource].concat(arr))\n )\n )\n"],"file":"useListingBreadcrumbs.js"}
|
1
|
+
{"version":3,"sources":["../../../../src/listing/hooks/useListingBreadcrumbs.tsx"],"names":["React","useRouter","usePredicate","useListingConfig","useConfigState","useListingAlias","typeToSuffix","getTranslatableField","ListingTypesEnum","useListingBreadcrumbs","data","isLoading","config","router","mainConfig","slug","result","useMemo","type","AttrPage","name","listing","titleAliases","id","link","query","q","createCatalogBreadcrumb","lastBreadcrumb","length","last","predicate","sortedAncestors","sortAncestors","ancestors","attrLink","cat","undefined","breadcrumb","push","label","_id","applyFilters","forEach","ancestor","processLink","filters","filter","Array","isArray","join","attr","newAncestors","a","resource","tree","mapListToTree","treeToArray","list","map","node","roots","i","resourceId","children","parent","hasOwnProperty","concat","child","arr"],"mappings":"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","sourcesContent":["import React from 'react'\nimport { NextRouter, useRouter } from 'next/router'\nimport { PredicateType, usePredicate } from '../api'\nimport { useListingConfig } from './'\nimport { useConfigState, useListingAlias } from '../../index'\nimport { typeToSuffix } from '../../utils/typeToSuffix'\nimport { getTranslatableField } from '../../utils/getTranslatableField'\nimport { IdReferenceDTO, LangValue } from '@sentecacommerce/sdk'\nimport { ListingTypesEnum } from '..'\n\nexport type Breadcrumb = { name: string; id: string; link: string }[]\n\nexport type UseListingBreadcrumbsResult = {\n data: {\n name: string\n id: string\n link: string\n }[]\n last: {\n name: string\n id: string\n link: string\n }\n isLoading: boolean\n}\n\nexport const useListingBreadcrumbs = (): UseListingBreadcrumbsResult => {\n const { data, isLoading } = usePredicate()\n const config = useListingConfig()\n const router = useRouter()\n\n const mainConfig = useConfigState() as any\n const { slug } = useListingAlias()\n\n const result = React.useMemo(() => {\n if (config.type === ListingTypesEnum.AttrPage) {\n return [\n {\n name: mainConfig.listing.titleAliases[slug],\n id: '',\n link: `/${router.query.slug}/c`,\n },\n ]\n }\n if (router.query.q) {\n return [\n {\n name: `${router.query.q}`,\n id: '',\n link: `/search?q=${router.query.q}`,\n },\n ]\n }\n\n return createCatalogBreadcrumb(data as PredicateType, config.type, router)\n }, [data, config.type, router.query])\n\n const lastBreadcrumb = React.useMemo(() => {\n return result?.[result?.length - 2]\n }, [result])\n\n return { data: result, last: lastBreadcrumb, isLoading }\n}\n\nconst createCatalogBreadcrumb = (\n predicate: PredicateType,\n type: string,\n router: NextRouter\n): Breadcrumb => {\n const result: {\n name: string\n id: string\n link: string\n }[] = []\n\n const sortedAncestors = sortAncestors(predicate?.ancestors)\n const attrLink = router.query.cat ? (router.query.slug as string) : undefined\n\n if (predicate?.breadcrumb) {\n result.push({\n name: getTranslatableField(predicate.breadcrumb.label),\n id: predicate._id,\n\n link: `/${router.query.slug}/${getTranslatableField(\n sortedAncestors?.[0]?.slug || predicate?.slug\n )}/c${applyFilters(router)}`,\n })\n }\n\n sortedAncestors.forEach((ancestor) => {\n result.push({\n name: getTranslatableField(ancestor.name),\n id: ancestor._id,\n link: processLink(ancestor.slug, type, attrLink) + applyFilters(router),\n })\n })\n\n if (predicate?.slug[0]) {\n result.push({\n name: getTranslatableField(predicate?.name),\n id: predicate._id,\n link: processLink(predicate?.slug, type, attrLink) + applyFilters(router),\n })\n }\n\n return result\n}\nfunction applyFilters(router?: NextRouter) {\n const filters = router?.query.filter\n if (filters) {\n if (Array.isArray(filters)) {\n return `?filter=` + filters.join('&filter=')\n } else {\n return `?filter=` + filters\n }\n }\n\n return ''\n}\nfunction processLink(slug: LangValue[], type: string, attr?: string) {\n if (attr) {\n return `/${attr}/${getTranslatableField(slug)}/${typeToSuffix[type]}`\n }\n return `/${getTranslatableField(slug)}/${typeToSuffix[type]}`\n}\n\nfunction sortAncestors(ancestors?: IdReferenceDTO[]) {\n let result = []\n\n if (Array.isArray(ancestors)) {\n const newAncestors = ancestors.filter(\n (a) => a.resource && typeof a.resource === 'object'\n )\n\n if (newAncestors.length) {\n const tree = mapListToTree(newAncestors)\n\n result = treeToArray(tree)[0]\n }\n }\n\n return result\n}\n\nconst mapListToTree = (list: any[]) => {\n const map = {}\n let node\n const roots = []\n let i\n for (i = 0; i < list.length; i += 1) {\n map[list[i].resourceId] = i\n list[i].children = []\n }\n for (i = 0; i < list.length; i += 1) {\n node = list[i]\n if (\n node.resource.parent &&\n map.hasOwnProperty(node.resource.parent.resourceId)\n ) {\n list[map[node.resource.parent.resourceId]].children.push(node)\n } else {\n roots.push(node)\n }\n }\n return roots[0]\n}\n\nconst treeToArray = (node: any) =>\n (node.children.length ? [] : [[node.resource]]).concat(\n ...node.children.map((child: any) =>\n treeToArray(child).map((arr) => [node.resource].concat(arr))\n )\n )\n"],"file":"useListingBreadcrumbs.js"}
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import { FolderDTO, MediaDTO, MediaFilterResultDTO } from '@sentecacommerce/sdk';
|
2
|
+
export { FolderDTO, MediaDTO, MediaFilterResultDTO };
|
3
|
+
export declare const useCMSMediaUploadAssetsMutation: () => import("react-query").MutationResultPair<MediaDTO[], unknown, {
|
4
|
+
folderId: string;
|
5
|
+
assets: any;
|
6
|
+
}, unknown>;
|
@@ -0,0 +1,16 @@
|
|
1
|
+
export interface FoldersFilterQueryDTO {
|
2
|
+
storeKey?: string;
|
3
|
+
interfaceKey?: string;
|
4
|
+
currencyCode?: string;
|
5
|
+
languageCode?: string;
|
6
|
+
priceListKey?: string;
|
7
|
+
time?: number;
|
8
|
+
merchantKey?: string;
|
9
|
+
expand?: string;
|
10
|
+
project?: string;
|
11
|
+
filter?: string;
|
12
|
+
sort?: string;
|
13
|
+
limit?: number;
|
14
|
+
offset?: number;
|
15
|
+
}
|
16
|
+
export declare const useCMSFoldersQuery: (query?: FoldersFilterQueryDTO | undefined) => import("react-query").QueryResult<import("@sentecacommerce/sdk").FolderFilterResultDTO, unknown>;
|
@@ -0,0 +1,19 @@
|
|
1
|
+
export interface MediaFilterQueryDTO {
|
2
|
+
storeKey?: string;
|
3
|
+
interfaceKey?: string;
|
4
|
+
currencyCode?: string;
|
5
|
+
languageCode?: string;
|
6
|
+
priceListKey?: string;
|
7
|
+
time?: number;
|
8
|
+
merchantKey?: string;
|
9
|
+
expand?: string;
|
10
|
+
project?: string;
|
11
|
+
filter?: string;
|
12
|
+
sort?: string;
|
13
|
+
limit?: number;
|
14
|
+
offset?: number;
|
15
|
+
}
|
16
|
+
export declare const useCMSMediaQuery: (query?: MediaFilterQueryDTO | undefined, props?: {
|
17
|
+
enabled?: boolean | undefined;
|
18
|
+
getFetchMore?: ((lastPage: any, allPages: any[]) => void) | undefined;
|
19
|
+
} | undefined) => import("react-query").InfiniteQueryResult<import("@sentecacommerce/sdk").MediaFilterResultDTO, unknown>;
|
@@ -0,0 +1 @@
|
|
1
|
+
export * from './cacheKeys';
|
@@ -4,3 +4,8 @@ export * from './useInjectedContentContext';
|
|
4
4
|
export * from './useCmsContent';
|
5
5
|
export * from './useCmsContentList';
|
6
6
|
export * from './useContentCategoriesMap';
|
7
|
+
export * from './useCmsFolders';
|
8
|
+
export * from './useCreateCmsFolders';
|
9
|
+
export * from './useCmsMedia';
|
10
|
+
export * from './useCmsMediaUploadAssets';
|
11
|
+
export * from './useCmsMediaDeleteAssets';
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "@sentecacommerce-theme/lib",
|
3
3
|
"sideEffects": false,
|
4
|
-
"version": "0.12.
|
4
|
+
"version": "0.12.53",
|
5
5
|
"main": "dist/cjs/index.js",
|
6
6
|
"module": "dist/esm/index.js",
|
7
7
|
"types": "dist/types/index.d.ts",
|
@@ -28,9 +28,9 @@
|
|
28
28
|
"build:types": "tsc --emitDeclarationOnly --declaration --declarationDir dist/types",
|
29
29
|
"dev": "yarn build:esm --watch"
|
30
30
|
},
|
31
|
-
"gitHead": "
|
31
|
+
"gitHead": "2c679cfe2f1c5c7fb093ca470df6e058fb1de741",
|
32
32
|
"dependencies": {
|
33
|
-
"@sentecacommerce-theme/base": "^0.12.
|
33
|
+
"@sentecacommerce-theme/base": "^0.12.53",
|
34
34
|
"@sentecacommerce/sdk": "2.0.118",
|
35
35
|
"body-scroll-lock": "^3.1.5",
|
36
36
|
"copy-to-clipboard": "^3.3.1",
|