@webiny/api-aco 0.0.0-ee-vpcs.549378cf03 → 0.0.0-unstable.085ff6572f

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/README.md +15 -0
  2. package/apps/AcoApp.d.ts +16 -0
  3. package/apps/AcoApp.js +108 -0
  4. package/apps/AcoApp.js.map +1 -0
  5. package/apps/AcoApps.d.ts +10 -0
  6. package/apps/AcoApps.js +76 -0
  7. package/apps/AcoApps.js.map +1 -0
  8. package/apps/app.gql.d.ts +3 -0
  9. package/apps/app.gql.js +58 -0
  10. package/apps/app.gql.js.map +1 -0
  11. package/apps/index.d.ts +2 -0
  12. package/apps/index.js +27 -0
  13. package/apps/index.js.map +1 -0
  14. package/createAcoContext.d.ts +3 -0
  15. package/createAcoContext.js +100 -0
  16. package/createAcoContext.js.map +1 -0
  17. package/createAcoGraphQL.d.ts +3 -0
  18. package/createAcoGraphQL.js +121 -0
  19. package/createAcoGraphQL.js.map +1 -0
  20. package/createAcoHooks.d.ts +2 -0
  21. package/createAcoHooks.js +11 -0
  22. package/createAcoHooks.js.map +1 -0
  23. package/createAcoModels.d.ts +2 -0
  24. package/createAcoModels.js +42 -0
  25. package/createAcoModels.js.map +1 -0
  26. package/createAcoStorageOperations.d.ts +10 -0
  27. package/createAcoStorageOperations.js +19 -0
  28. package/createAcoStorageOperations.js.map +1 -0
  29. package/fields/index.d.ts +2 -0
  30. package/fields/index.js +12 -0
  31. package/fields/index.js.map +1 -0
  32. package/fields/location.d.ts +2 -0
  33. package/fields/location.js +44 -0
  34. package/fields/location.js.map +1 -0
  35. package/folder/folder.crud.d.ts +3 -0
  36. package/folder/folder.crud.js +110 -0
  37. package/folder/folder.crud.js.map +1 -0
  38. package/folder/folder.gql.d.ts +3 -0
  39. package/folder/folder.gql.js +118 -0
  40. package/folder/folder.gql.js.map +1 -0
  41. package/folder/folder.model.d.ts +4 -0
  42. package/folder/folder.model.js +75 -0
  43. package/folder/folder.model.js.map +1 -0
  44. package/folder/folder.so.d.ts +3 -0
  45. package/folder/folder.so.js +151 -0
  46. package/folder/folder.so.js.map +1 -0
  47. package/folder/folder.types.d.ts +89 -0
  48. package/folder/folder.types.js +5 -0
  49. package/folder/folder.types.js.map +1 -0
  50. package/folder/onFolderBeforeDelete.hook.d.ts +2 -0
  51. package/folder/onFolderBeforeDelete.hook.js +66 -0
  52. package/folder/onFolderBeforeDelete.hook.js.map +1 -0
  53. package/index.d.ts +5 -9
  54. package/index.js +48 -63
  55. package/index.js.map +1 -1
  56. package/package.json +35 -30
  57. package/plugins/AcoAppModifierPlugin.d.ts +43 -0
  58. package/plugins/AcoAppModifierPlugin.js +59 -0
  59. package/plugins/AcoAppModifierPlugin.js.map +1 -0
  60. package/plugins/AcoAppRegisterPlugin.d.ts +8 -0
  61. package/plugins/AcoAppRegisterPlugin.js +22 -0
  62. package/plugins/AcoAppRegisterPlugin.js.map +1 -0
  63. package/plugins/index.d.ts +2 -0
  64. package/plugins/index.js +27 -0
  65. package/plugins/index.js.map +1 -0
  66. package/record/graphql/createAppResolvers.d.ts +14 -0
  67. package/record/graphql/createAppResolvers.js +108 -0
  68. package/record/graphql/createAppResolvers.js.map +1 -0
  69. package/record/graphql/createAppSchema.d.ts +9 -0
  70. package/record/graphql/createAppSchema.js +142 -0
  71. package/record/graphql/createAppSchema.js.map +1 -0
  72. package/record/record.crud.d.ts +3 -0
  73. package/record/record.crud.js +126 -0
  74. package/record/record.crud.js.map +1 -0
  75. package/record/record.gql.d.ts +8 -0
  76. package/record/record.gql.js +41 -0
  77. package/record/record.gql.js.map +1 -0
  78. package/record/record.model.d.ts +10 -0
  79. package/record/record.model.js +86 -0
  80. package/record/record.model.js.map +1 -0
  81. package/record/record.so.d.ts +3 -0
  82. package/record/record.so.js +150 -0
  83. package/record/record.so.js.map +1 -0
  84. package/record/record.types.d.ts +143 -0
  85. package/record/record.types.js +5 -0
  86. package/record/record.types.js.map +1 -0
  87. package/types.d.ts +73 -201
  88. package/types.js +35 -1
  89. package/types.js.map +1 -1
  90. package/utils/acoRecordId.d.ts +6 -0
  91. package/utils/acoRecordId.js +33 -0
  92. package/utils/acoRecordId.js.map +1 -0
  93. package/utils/checkPermissions.d.ts +2 -0
  94. package/utils/checkPermissions.js +14 -0
  95. package/utils/checkPermissions.js.map +1 -0
  96. package/utils/createListSort.d.ts +2 -0
  97. package/utils/createListSort.js +13 -0
  98. package/utils/createListSort.js.map +1 -0
  99. package/utils/createModelField.d.ts +5 -0
  100. package/utils/createModelField.js +37 -0
  101. package/utils/createModelField.js.map +1 -0
  102. package/utils/createOperationsWrapper.d.ts +9 -0
  103. package/utils/createOperationsWrapper.js +29 -0
  104. package/utils/createOperationsWrapper.js.map +1 -0
  105. package/utils/fieldResolver.d.ts +16 -0
  106. package/utils/fieldResolver.js +44 -0
  107. package/utils/fieldResolver.js.map +1 -0
  108. package/utils/getFieldValues.d.ts +5 -0
  109. package/utils/getFieldValues.js +16 -0
  110. package/utils/getFieldValues.js.map +1 -0
  111. package/utils/getFolderAndItsAncestors.d.ts +7 -0
  112. package/utils/getFolderAndItsAncestors.js +48 -0
  113. package/utils/getFolderAndItsAncestors.js.map +1 -0
  114. package/utils/isInstallationPending.d.ts +4 -0
  115. package/utils/isInstallationPending.js +21 -0
  116. package/utils/isInstallationPending.js.map +1 -0
  117. package/utils/modelFactory.d.ts +15 -0
  118. package/utils/modelFactory.js +25 -0
  119. package/utils/modelFactory.js.map +1 -0
  120. package/utils/resolve.d.ts +3 -0
  121. package/utils/resolve.js +24 -0
  122. package/utils/resolve.js.map +1 -0
  123. package/context/folders.d.ts +0 -2
  124. package/context/folders.js +0 -261
  125. package/context/folders.js.map +0 -1
  126. package/context/index.d.ts +0 -2
  127. package/context/index.js +0 -22
  128. package/context/index.js.map +0 -1
  129. package/context/links.d.ts +0 -2
  130. package/context/links.js +0 -270
  131. package/context/links.js.map +0 -1
  132. package/graphql/base.gql.d.ts +0 -3
  133. package/graphql/base.gql.js +0 -63
  134. package/graphql/base.gql.js.map +0 -1
  135. package/graphql/folders.gql.d.ts +0 -3
  136. package/graphql/folders.gql.js +0 -126
  137. package/graphql/folders.gql.js.map +0 -1
  138. package/graphql/index.d.ts +0 -1
  139. package/graphql/index.js +0 -15
  140. package/graphql/index.js.map +0 -1
  141. package/graphql/links.gql.d.ts +0 -3
  142. package/graphql/links.gql.js +0 -123
  143. package/graphql/links.gql.js.map +0 -1
  144. package/subscriptions/afterFolderDelete.d.ts +0 -3
  145. package/subscriptions/afterFolderDelete.js +0 -62
  146. package/subscriptions/afterFolderDelete.js.map +0 -1
  147. package/subscriptions/index.d.ts +0 -3
  148. package/subscriptions/index.js +0 -14
  149. package/subscriptions/index.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getRecordFieldValues","entry","fields","pick","values","getFolderFieldValues"],"sources":["getFieldValues.ts"],"sourcesContent":["import pick from \"lodash/pick\";\nimport { CmsEntry } from \"@webiny/api-headless-cms/types\";\nimport { Folder } from \"~/folder/folder.types\";\nimport { SearchRecord } from \"~/record/record.types\";\n\nexport function getRecordFieldValues(entry: CmsEntry<any>, fields?: string[]) {\n return {\n ...(fields ? pick(entry, fields) : entry),\n ...entry.values\n } as SearchRecord<any>;\n}\n\nexport function getFolderFieldValues(entry: CmsEntry, fields: string[]) {\n return { ...pick(entry, fields), ...entry.values } as Folder;\n}\n"],"mappings":";;;;;;;;;AAAA;AAKO,SAASA,oBAAoB,CAACC,KAAoB,EAAEC,MAAiB,EAAE;EAC1E,mEACQA,MAAM,GAAG,IAAAC,aAAI,EAACF,KAAK,EAAEC,MAAM,CAAC,GAAGD,KAAK,GACrCA,KAAK,CAACG,MAAM;AAEvB;AAEO,SAASC,oBAAoB,CAACJ,KAAe,EAAEC,MAAgB,EAAE;EACpE,mEAAY,IAAAC,aAAI,EAACF,KAAK,EAAEC,MAAM,CAAC,GAAKD,KAAK,CAACG,MAAM;AACpD"}
@@ -0,0 +1,7 @@
1
+ import { Folder } from "../folder/folder.types";
2
+ interface GetFolderAndItsAncestorsParams {
3
+ id: string;
4
+ folders: Folder[];
5
+ }
6
+ export declare const getFolderAndItsAncestors: ({ id, folders }: GetFolderAndItsAncestorsParams) => Folder[];
7
+ export {};
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getFolderAndItsAncestors = void 0;
7
+ const getFolderAndItsAncestors = ({
8
+ id,
9
+ folders
10
+ }) => {
11
+ // Create a Map with folders, using folder.id as key
12
+ const folderMap = new Map();
13
+ folders.forEach(folder => folderMap.set(folder.id, folder));
14
+ const findParents = (next, id) => {
15
+ const folder = folderMap.get(id);
16
+
17
+ // No folder found: return the result
18
+ if (!folder) {
19
+ return next;
20
+ }
21
+
22
+ // Push the current folder into the accumulator array
23
+ next.push(folder);
24
+
25
+ // No parentId found: return the result
26
+ if (!folder.parentId) {
27
+ return next;
28
+ }
29
+
30
+ // Go ahead and find parent for the current parent
31
+ return findParents(next, folder.parentId);
32
+ };
33
+ const folder = folderMap.get(id);
34
+
35
+ // No folder found: return an empty array
36
+ if (!folder) {
37
+ return [];
38
+ }
39
+
40
+ // The folder has no parent (it's at root level): return an array with the folder
41
+ if (!folder.parentId) {
42
+ return [folder];
43
+ }
44
+
45
+ // Recursively find parents for a given folder id
46
+ return findParents([], id);
47
+ };
48
+ exports.getFolderAndItsAncestors = getFolderAndItsAncestors;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getFolderAndItsAncestors","id","folders","folderMap","Map","forEach","folder","set","findParents","next","get","push","parentId"],"sources":["getFolderAndItsAncestors.ts"],"sourcesContent":["import { Folder } from \"~/folder/folder.types\";\n\ninterface GetFolderAndItsAncestorsParams {\n id: string;\n folders: Folder[];\n}\n\nexport const getFolderAndItsAncestors = ({\n id,\n folders\n}: GetFolderAndItsAncestorsParams): Folder[] => {\n // Create a Map with folders, using folder.id as key\n const folderMap = new Map<string, Folder>();\n folders.forEach(folder => folderMap.set(folder.id, folder));\n\n const findParents = (next: Folder[], id: string): Folder[] => {\n const folder = folderMap.get(id);\n\n // No folder found: return the result\n if (!folder) {\n return next;\n }\n\n // Push the current folder into the accumulator array\n next.push(folder);\n\n // No parentId found: return the result\n if (!folder.parentId) {\n return next;\n }\n\n // Go ahead and find parent for the current parent\n return findParents(next, folder.parentId);\n };\n\n const folder = folderMap.get(id);\n\n // No folder found: return an empty array\n if (!folder) {\n return [];\n }\n\n // The folder has no parent (it's at root level): return an array with the folder\n if (!folder.parentId) {\n return [folder];\n }\n\n // Recursively find parents for a given folder id\n return findParents([], id);\n};\n"],"mappings":";;;;;;AAOO,MAAMA,wBAAwB,GAAG,CAAC;EACrCC,EAAE;EACFC;AAC4B,CAAC,KAAe;EAC5C;EACA,MAAMC,SAAS,GAAG,IAAIC,GAAG,EAAkB;EAC3CF,OAAO,CAACG,OAAO,CAACC,MAAM,IAAIH,SAAS,CAACI,GAAG,CAACD,MAAM,CAACL,EAAE,EAAEK,MAAM,CAAC,CAAC;EAE3D,MAAME,WAAW,GAAG,CAACC,IAAc,EAAER,EAAU,KAAe;IAC1D,MAAMK,MAAM,GAAGH,SAAS,CAACO,GAAG,CAACT,EAAE,CAAC;;IAEhC;IACA,IAAI,CAACK,MAAM,EAAE;MACT,OAAOG,IAAI;IACf;;IAEA;IACAA,IAAI,CAACE,IAAI,CAACL,MAAM,CAAC;;IAEjB;IACA,IAAI,CAACA,MAAM,CAACM,QAAQ,EAAE;MAClB,OAAOH,IAAI;IACf;;IAEA;IACA,OAAOD,WAAW,CAACC,IAAI,EAAEH,MAAM,CAACM,QAAQ,CAAC;EAC7C,CAAC;EAED,MAAMN,MAAM,GAAGH,SAAS,CAACO,GAAG,CAACT,EAAE,CAAC;;EAEhC;EACA,IAAI,CAACK,MAAM,EAAE;IACT,OAAO,EAAE;EACb;;EAEA;EACA,IAAI,CAACA,MAAM,CAACM,QAAQ,EAAE;IAClB,OAAO,CAACN,MAAM,CAAC;EACnB;;EAEA;EACA,OAAOE,WAAW,CAAC,EAAE,EAAEP,EAAE,CAAC;AAC9B,CAAC;AAAC"}
@@ -0,0 +1,4 @@
1
+ import { AcoContext } from "../types";
2
+ declare type CheckInstallationParams = Pick<AcoContext, "tenancy" | "i18n">;
3
+ export declare const isInstallationPending: ({ tenancy, i18n }: CheckInstallationParams) => boolean;
4
+ export {};
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.isInstallationPending = void 0;
7
+ const isInstallationPending = ({
8
+ tenancy,
9
+ i18n
10
+ }) => {
11
+ /**
12
+ * In case of a fresh webiny project "tenant" and "locale" won't be there until
13
+ * installation is completed. So, we need to skip "ACO" creation till then.
14
+ */
15
+ const tenant = tenancy.getCurrentTenant();
16
+ if (!tenant) {
17
+ return true;
18
+ }
19
+ return !i18n.getContentLocale();
20
+ };
21
+ exports.isInstallationPending = isInstallationPending;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isInstallationPending","tenancy","i18n","tenant","getCurrentTenant","getContentLocale"],"sources":["isInstallationPending.ts"],"sourcesContent":["import { AcoContext } from \"~/types\";\n\ntype CheckInstallationParams = Pick<AcoContext, \"tenancy\" | \"i18n\">;\nexport const isInstallationPending = ({ tenancy, i18n }: CheckInstallationParams): boolean => {\n /**\n * In case of a fresh webiny project \"tenant\" and \"locale\" won't be there until\n * installation is completed. So, we need to skip \"ACO\" creation till then.\n */\n const tenant = tenancy.getCurrentTenant();\n if (!tenant) {\n return true;\n }\n\n return !i18n.getContentLocale();\n};\n"],"mappings":";;;;;;AAGO,MAAMA,qBAAqB,GAAG,CAAC;EAAEC,OAAO;EAAEC;AAA8B,CAAC,KAAc;EAC1F;AACJ;AACA;AACA;EACI,MAAMC,MAAM,GAAGF,OAAO,CAACG,gBAAgB,EAAE;EACzC,IAAI,CAACD,MAAM,EAAE;IACT,OAAO,IAAI;EACf;EAEA,OAAO,CAACD,IAAI,CAACG,gBAAgB,EAAE;AACnC,CAAC;AAAC"}
@@ -0,0 +1,15 @@
1
+ import { CmsModelPlugin, CmsPrivateModelFull } from "@webiny/api-headless-cms";
2
+ import { CmsGroup } from "@webiny/api-headless-cms/types";
3
+ interface Params {
4
+ group: Pick<CmsGroup, "id" | "name">;
5
+ /**
6
+ * Locale and tenant do not need to be defined.
7
+ * In that case model is not bound to any locale or tenant.
8
+ * You can bind it to locale, tenant, both or none.
9
+ */
10
+ locale?: string;
11
+ tenant?: string;
12
+ modelDefinition: Omit<CmsPrivateModelFull, "noValidate" | "group">;
13
+ }
14
+ export declare const modelFactory: (params: Params) => CmsModelPlugin;
15
+ export {};
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.modelFactory = void 0;
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
+ var _apiHeadlessCms = require("@webiny/api-headless-cms");
10
+ const modelFactory = params => {
11
+ const {
12
+ group,
13
+ locale,
14
+ tenant,
15
+ modelDefinition
16
+ } = params;
17
+ return (0, _apiHeadlessCms.createCmsModel)((0, _objectSpread2.default)((0, _objectSpread2.default)({
18
+ group,
19
+ locale,
20
+ tenant
21
+ }, modelDefinition), {}, {
22
+ noValidate: true
23
+ }));
24
+ };
25
+ exports.modelFactory = modelFactory;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["modelFactory","params","group","locale","tenant","modelDefinition","createCmsModel","noValidate"],"sources":["modelFactory.ts"],"sourcesContent":["import { CmsModelPlugin, CmsPrivateModelFull, createCmsModel } from \"@webiny/api-headless-cms\";\nimport { CmsGroup } from \"@webiny/api-headless-cms/types\";\n\ninterface Params {\n group: Pick<CmsGroup, \"id\" | \"name\">;\n /**\n * Locale and tenant do not need to be defined.\n * In that case model is not bound to any locale or tenant.\n * You can bind it to locale, tenant, both or none.\n */\n locale?: string;\n tenant?: string;\n modelDefinition: Omit<CmsPrivateModelFull, \"noValidate\" | \"group\">;\n}\n\nexport const modelFactory = (params: Params): CmsModelPlugin => {\n const { group, locale, tenant, modelDefinition } = params;\n\n return createCmsModel({\n group,\n locale,\n tenant,\n ...modelDefinition,\n noValidate: true\n });\n};\n"],"mappings":";;;;;;;;AAAA;AAeO,MAAMA,YAAY,GAAIC,MAAc,IAAqB;EAC5D,MAAM;IAAEC,KAAK;IAAEC,MAAM;IAAEC,MAAM;IAAEC;EAAgB,CAAC,GAAGJ,MAAM;EAEzD,OAAO,IAAAK,8BAAc;IACjBJ,KAAK;IACLC,MAAM;IACNC;EAAM,GACHC,eAAe;IAClBE,UAAU,EAAE;EAAI,GAClB;AACN,CAAC;AAAC"}
@@ -0,0 +1,3 @@
1
+ import { ErrorResponse, ListResponse, Response } from "@webiny/handler-graphql";
2
+ export declare const resolve: (fn: () => Promise<any>) => Promise<ErrorResponse | Response<any>>;
3
+ export declare const resolveList: (fn: () => Promise<any>) => Promise<ErrorResponse | ListResponse<unknown, any>>;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.resolveList = exports.resolve = void 0;
7
+ var _handlerGraphql = require("@webiny/handler-graphql");
8
+ const resolve = async fn => {
9
+ try {
10
+ return new _handlerGraphql.Response(await fn());
11
+ } catch (e) {
12
+ return new _handlerGraphql.ErrorResponse(e);
13
+ }
14
+ };
15
+ exports.resolve = resolve;
16
+ const resolveList = async fn => {
17
+ try {
18
+ const [items, meta] = await fn();
19
+ return new _handlerGraphql.ListResponse(items, meta);
20
+ } catch (e) {
21
+ return new _handlerGraphql.ErrorResponse(e);
22
+ }
23
+ };
24
+ exports.resolveList = resolveList;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["resolve","fn","Response","e","ErrorResponse","resolveList","items","meta","ListResponse"],"sources":["resolve.ts"],"sourcesContent":["import { ErrorResponse, ListResponse, Response } from \"@webiny/handler-graphql\";\n\nexport const resolve = async (fn: () => Promise<any>) => {\n try {\n return new Response(await fn());\n } catch (e) {\n return new ErrorResponse(e);\n }\n};\nexport const resolveList = async (fn: () => Promise<any>) => {\n try {\n const [items, meta] = await fn();\n return new ListResponse(items, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n};\n"],"mappings":";;;;;;AAAA;AAEO,MAAMA,OAAO,GAAG,MAAOC,EAAsB,IAAK;EACrD,IAAI;IACA,OAAO,IAAIC,wBAAQ,CAAC,MAAMD,EAAE,EAAE,CAAC;EACnC,CAAC,CAAC,OAAOE,CAAC,EAAE;IACR,OAAO,IAAIC,6BAAa,CAACD,CAAC,CAAC;EAC/B;AACJ,CAAC;AAAC;AACK,MAAME,WAAW,GAAG,MAAOJ,EAAsB,IAAK;EACzD,IAAI;IACA,MAAM,CAACK,KAAK,EAAEC,IAAI,CAAC,GAAG,MAAMN,EAAE,EAAE;IAChC,OAAO,IAAIO,4BAAY,CAACF,KAAK,EAAEC,IAAI,CAAC;EACxC,CAAC,CAAC,OAAOJ,CAAC,EAAE;IACR,OAAO,IAAIC,6BAAa,CAACD,CAAC,CAAC;EAC/B;AACJ,CAAC;AAAC"}
@@ -1,2 +0,0 @@
1
- import { FoldersConfig, IFolders } from "../types";
2
- export declare const createFoldersContext: ({ getTenantId, getLocaleCode, getIdentity, storageOperations }: FoldersConfig) => Promise<IFolders>;
@@ -1,261 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.createFoldersContext = void 0;
9
-
10
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
-
12
- var _mdbid = _interopRequireDefault(require("mdbid"));
13
-
14
- var _error = _interopRequireDefault(require("@webiny/error"));
15
-
16
- var _handlerGraphql = require("@webiny/handler-graphql");
17
-
18
- var _pubsub = require("@webiny/pubsub");
19
-
20
- var _joi = _interopRequireDefault(require("joi"));
21
-
22
- /**
23
- * Package mdbid does not have types.
24
- */
25
- // @ts-ignore
26
- const requiredString = _joi.default.string().required();
27
-
28
- const createSchema = _joi.default.object({
29
- name: requiredString.min(3),
30
- slug: requiredString.min(3),
31
- type: requiredString,
32
- tenant: requiredString,
33
- locale: requiredString
34
- });
35
-
36
- const updateSchema = _joi.default.object({
37
- name: requiredString.min(3),
38
- slug: requiredString.min(3)
39
- });
40
-
41
- const createFoldersContext = async ({
42
- getTenantId,
43
- getLocaleCode,
44
- getIdentity,
45
- storageOperations
46
- }) => {
47
- // create
48
- const onFolderBeforeCreate = (0, _pubsub.createTopic)("folders.onFolderBeforeCreate");
49
- const onFolderAfterCreate = (0, _pubsub.createTopic)("folders.onFolderAfterCreate"); // update
50
-
51
- const onFolderBeforeUpdate = (0, _pubsub.createTopic)("folders.onFolderBeforeUpdate");
52
- const onFolderAfterUpdate = (0, _pubsub.createTopic)("folders.onFolderAfterUpdate"); // delete
53
-
54
- const onFolderBeforeDelete = (0, _pubsub.createTopic)("folders.onFolderBeforeDelete");
55
- const onFolderAfterDelete = (0, _pubsub.createTopic)("folders.onFolderAfterDelete");
56
- return {
57
- onFolderBeforeCreate,
58
- onFolderAfterCreate,
59
- onFolderBeforeUpdate,
60
- onFolderAfterUpdate,
61
- onFolderBeforeDelete,
62
- onFolderAfterDelete,
63
-
64
- async getFolder({
65
- id
66
- }) {
67
- const tenant = getTenantId();
68
- const locale = getLocaleCode();
69
- let folder;
70
-
71
- try {
72
- folder = await storageOperations.getFolder({
73
- tenant,
74
- locale,
75
- id
76
- });
77
- } catch (error) {
78
- throw _error.default.from(error, {
79
- message: "Could not get folder.",
80
- code: "GET_FOLDER_ERROR",
81
- data: {
82
- id
83
- }
84
- });
85
- }
86
-
87
- if (!folder) {
88
- throw new _handlerGraphql.NotFoundError(`Unable to find folder with id: ${id}`);
89
- }
90
-
91
- return folder;
92
- },
93
-
94
- async listFolders({
95
- where
96
- }) {
97
- const tenant = getTenantId();
98
- const locale = getLocaleCode();
99
-
100
- try {
101
- return await storageOperations.listFolders({
102
- where: (0, _objectSpread2.default)({
103
- tenant,
104
- locale
105
- }, where),
106
- sort: ["createdOn_ASC"]
107
- });
108
- } catch (error) {
109
- throw _error.default.from(error, {
110
- message: "Could not list folders.",
111
- code: "LIST_FOLDERS_ERROR",
112
- data: (0, _objectSpread2.default)({}, where)
113
- });
114
- }
115
- },
116
-
117
- async createFolder(input) {
118
- await createSchema.validate(input);
119
- const tenant = getTenantId();
120
- const locale = getLocaleCode();
121
- const {
122
- type,
123
- slug,
124
- parentId
125
- } = input;
126
- const existing = await storageOperations.getFolder({
127
- tenant,
128
- locale,
129
- type,
130
- slug,
131
- parentId
132
- });
133
-
134
- if (existing) {
135
- throw new _error.default(`Folder with slug "${slug}" already exists at this level.`, "FOLDER_EXISTS");
136
- }
137
-
138
- const identity = getIdentity();
139
- const folder = (0, _objectSpread2.default)((0, _objectSpread2.default)({
140
- id: (0, _mdbid.default)(),
141
- tenant,
142
- locale
143
- }, input), {}, {
144
- webinyVersion: process.env.WEBINY_VERSION,
145
- createdOn: new Date().toISOString(),
146
- createdBy: {
147
- id: identity.id,
148
- displayName: identity.displayName,
149
- type: identity.type
150
- }
151
- });
152
-
153
- try {
154
- await onFolderBeforeCreate.publish({
155
- folder
156
- });
157
- const result = await storageOperations.createFolder({
158
- folder
159
- });
160
- await onFolderAfterCreate.publish({
161
- folder: result
162
- });
163
- return result;
164
- } catch (error) {
165
- throw _error.default.from(error, {
166
- message: "Could not create folder.",
167
- code: "CREATE_FOLDER_ERROR",
168
- data: (0, _objectSpread2.default)({}, input)
169
- });
170
- }
171
- },
172
-
173
- async updateFolder(id, input) {
174
- await updateSchema.validate(input);
175
- const tenant = getTenantId();
176
- const locale = getLocaleCode();
177
- const {
178
- slug,
179
- parentId
180
- } = input;
181
- const original = await storageOperations.getFolder({
182
- tenant,
183
- locale,
184
- id
185
- });
186
-
187
- if (!original) {
188
- throw new _handlerGraphql.NotFoundError(`Folder "${id}" was not found!`);
189
- }
190
-
191
- const existing = await storageOperations.getFolder({
192
- tenant,
193
- locale,
194
- type: original.type,
195
- slug: slug || original.slug,
196
- parentId: parentId !== undefined ? parentId : original.parentId // parentId can be `null`
197
-
198
- }); // Check if another folder exists already inside the target
199
-
200
- if (existing && (existing === null || existing === void 0 ? void 0 : existing.id) !== id) {
201
- throw new _error.default(`Folder with slug "${slug}" already exists at this level.`, "FOLDER_EXISTS");
202
- }
203
-
204
- const folder = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, original), input);
205
-
206
- try {
207
- await onFolderBeforeUpdate.publish({
208
- folder,
209
- original
210
- });
211
- const result = await storageOperations.updateFolder({
212
- original,
213
- folder
214
- });
215
- await onFolderAfterUpdate.publish({
216
- folder: result,
217
- original
218
- });
219
- return result;
220
- } catch (error) {
221
- throw new _error.default(error.message || "Could not update folder.", error.code || "UPDATE_FOLDER_ERROR", {
222
- folder
223
- });
224
- }
225
- },
226
-
227
- async deleteFolder(id) {
228
- const tenant = getTenantId();
229
- const locale = getLocaleCode();
230
- const folder = await storageOperations.getFolder({
231
- tenant,
232
- locale,
233
- id
234
- });
235
-
236
- if (!folder) {
237
- throw new _handlerGraphql.NotFoundError(`Folder "${id}" was not found!`);
238
- }
239
-
240
- try {
241
- await onFolderBeforeDelete.publish({
242
- folder
243
- });
244
- const result = storageOperations.deleteFolder({
245
- folder
246
- });
247
- await onFolderAfterDelete.publish({
248
- folder
249
- });
250
- return result;
251
- } catch (error) {
252
- throw new _error.default(error.message || "Could not delete folder.", error.code || "DELETE_FOLDER_ERROR", {
253
- folder
254
- });
255
- }
256
- }
257
-
258
- };
259
- };
260
-
261
- exports.createFoldersContext = createFoldersContext;
@@ -1 +0,0 @@
1
- {"version":3,"names":["requiredString","joi","string","required","createSchema","object","name","min","slug","type","tenant","locale","updateSchema","createFoldersContext","getTenantId","getLocaleCode","getIdentity","storageOperations","onFolderBeforeCreate","createTopic","onFolderAfterCreate","onFolderBeforeUpdate","onFolderAfterUpdate","onFolderBeforeDelete","onFolderAfterDelete","getFolder","id","folder","error","WebinyError","from","message","code","data","NotFoundError","listFolders","where","sort","createFolder","input","validate","parentId","existing","identity","mdbid","webinyVersion","process","env","WEBINY_VERSION","createdOn","Date","toISOString","createdBy","displayName","publish","result","updateFolder","original","undefined","deleteFolder"],"sources":["folders.ts"],"sourcesContent":["/**\n * Package mdbid does not have types.\n */\n// @ts-ignore\nimport mdbid from \"mdbid\";\nimport WebinyError from \"@webiny/error\";\nimport { NotFoundError } from \"@webiny/handler-graphql\";\nimport { createTopic } from \"@webiny/pubsub\";\nimport joi from \"joi\";\n\nimport {\n Folder,\n FolderInput,\n FoldersConfig,\n GetFolderParams,\n IFolders,\n ListFoldersParams,\n OnFolderAfterCreateTopicParams,\n OnFolderAfterDeleteTopicParams,\n OnFolderAfterUpdateTopicParams,\n OnFolderBeforeCreateTopicParams,\n OnFolderBeforeDeleteTopicParams,\n OnFolderBeforeUpdateTopicParams\n} from \"~/types\";\n\nconst requiredString = joi.string().required();\n\nconst createSchema = joi.object({\n name: requiredString.min(3),\n slug: requiredString.min(3),\n type: requiredString,\n tenant: requiredString,\n locale: requiredString\n});\n\nconst updateSchema = joi.object({\n name: requiredString.min(3),\n slug: requiredString.min(3)\n});\n\nexport const createFoldersContext = async ({\n getTenantId,\n getLocaleCode,\n getIdentity,\n storageOperations\n}: FoldersConfig): Promise<IFolders> => {\n // create\n const onFolderBeforeCreate = createTopic<OnFolderBeforeCreateTopicParams>(\n \"folders.onFolderBeforeCreate\"\n );\n const onFolderAfterCreate = createTopic<OnFolderAfterCreateTopicParams>(\n \"folders.onFolderAfterCreate\"\n );\n // update\n const onFolderBeforeUpdate = createTopic<OnFolderBeforeUpdateTopicParams>(\n \"folders.onFolderBeforeUpdate\"\n );\n const onFolderAfterUpdate = createTopic<OnFolderAfterUpdateTopicParams>(\n \"folders.onFolderAfterUpdate\"\n );\n // delete\n const onFolderBeforeDelete = createTopic<OnFolderBeforeDeleteTopicParams>(\n \"folders.onFolderBeforeDelete\"\n );\n const onFolderAfterDelete = createTopic<OnFolderAfterDeleteTopicParams>(\n \"folders.onFolderAfterDelete\"\n );\n\n return {\n onFolderBeforeCreate,\n onFolderAfterCreate,\n onFolderBeforeUpdate,\n onFolderAfterUpdate,\n onFolderBeforeDelete,\n onFolderAfterDelete,\n async getFolder({ id }: GetFolderParams): Promise<Folder> {\n const tenant = getTenantId();\n const locale = getLocaleCode();\n\n let folder: Folder | undefined;\n\n try {\n folder = await storageOperations.getFolder({ tenant, locale, id });\n } catch (error) {\n throw WebinyError.from(error, {\n message: \"Could not get folder.\",\n code: \"GET_FOLDER_ERROR\",\n data: { id }\n });\n }\n if (!folder) {\n throw new NotFoundError(`Unable to find folder with id: ${id}`);\n }\n return folder;\n },\n\n async listFolders({ where }: ListFoldersParams): Promise<Folder[]> {\n const tenant = getTenantId();\n const locale = getLocaleCode();\n\n try {\n return await storageOperations.listFolders({\n where: { tenant, locale, ...where },\n sort: [\"createdOn_ASC\"]\n });\n } catch (error) {\n throw WebinyError.from(error, {\n message: \"Could not list folders.\",\n code: \"LIST_FOLDERS_ERROR\",\n data: { ...where }\n });\n }\n },\n\n async createFolder(input: FolderInput): Promise<Folder> {\n await createSchema.validate(input);\n\n const tenant = getTenantId();\n const locale = getLocaleCode();\n const { type, slug, parentId } = input;\n\n const existing = await storageOperations.getFolder({\n tenant,\n locale,\n type,\n slug,\n parentId\n });\n\n if (existing) {\n throw new WebinyError(\n `Folder with slug \"${slug}\" already exists at this level.`,\n \"FOLDER_EXISTS\"\n );\n }\n\n const identity = getIdentity();\n\n const folder: Folder = {\n id: mdbid(),\n tenant,\n locale,\n ...input,\n webinyVersion: process.env.WEBINY_VERSION as string,\n createdOn: new Date().toISOString(),\n createdBy: {\n id: identity.id,\n displayName: identity.displayName,\n type: identity.type\n }\n };\n\n try {\n await onFolderBeforeCreate.publish({\n folder\n });\n const result = await storageOperations.createFolder({ folder });\n await onFolderAfterCreate.publish({\n folder: result\n });\n return result;\n } catch (error) {\n throw WebinyError.from(error, {\n message: \"Could not create folder.\",\n code: \"CREATE_FOLDER_ERROR\",\n data: { ...input }\n });\n }\n },\n\n async updateFolder(id: string, input: Record<string, any>): Promise<Folder> {\n await updateSchema.validate(input);\n\n const tenant = getTenantId();\n const locale = getLocaleCode();\n const { slug, parentId } = input;\n\n const original = await storageOperations.getFolder({ tenant, locale, id });\n\n if (!original) {\n throw new NotFoundError(`Folder \"${id}\" was not found!`);\n }\n\n const existing = await storageOperations.getFolder({\n tenant,\n locale,\n type: original.type,\n slug: slug || original.slug,\n parentId: parentId !== undefined ? parentId : original.parentId // parentId can be `null`\n });\n\n // Check if another folder exists already inside the target\n if (existing && existing?.id !== id) {\n throw new WebinyError(\n `Folder with slug \"${slug}\" already exists at this level.`,\n \"FOLDER_EXISTS\"\n );\n }\n\n const folder: Folder = {\n ...original,\n ...input\n };\n try {\n await onFolderBeforeUpdate.publish({\n folder,\n original\n });\n const result = await storageOperations.updateFolder({ original, folder });\n await onFolderAfterUpdate.publish({\n folder: result,\n original\n });\n return result;\n } catch (error) {\n throw new WebinyError(\n error.message || \"Could not update folder.\",\n error.code || \"UPDATE_FOLDER_ERROR\",\n {\n folder\n }\n );\n }\n },\n\n async deleteFolder(id: string): Promise<void> {\n const tenant = getTenantId();\n const locale = getLocaleCode();\n\n const folder = await storageOperations.getFolder({ tenant, locale, id });\n\n if (!folder) {\n throw new NotFoundError(`Folder \"${id}\" was not found!`);\n }\n\n try {\n await onFolderBeforeDelete.publish({\n folder\n });\n const result = storageOperations.deleteFolder({ folder });\n await onFolderAfterDelete.publish({\n folder\n });\n return result;\n } catch (error) {\n throw new WebinyError(\n error.message || \"Could not delete folder.\",\n error.code || \"DELETE_FOLDER_ERROR\",\n {\n folder\n }\n );\n }\n }\n };\n};\n"],"mappings":";;;;;;;;;;;AAIA;;AACA;;AACA;;AACA;;AACA;;AARA;AACA;AACA;AACA;AAsBA,MAAMA,cAAc,GAAGC,YAAA,CAAIC,MAAJ,GAAaC,QAAb,EAAvB;;AAEA,MAAMC,YAAY,GAAGH,YAAA,CAAII,MAAJ,CAAW;EAC5BC,IAAI,EAAEN,cAAc,CAACO,GAAf,CAAmB,CAAnB,CADsB;EAE5BC,IAAI,EAAER,cAAc,CAACO,GAAf,CAAmB,CAAnB,CAFsB;EAG5BE,IAAI,EAAET,cAHsB;EAI5BU,MAAM,EAAEV,cAJoB;EAK5BW,MAAM,EAAEX;AALoB,CAAX,CAArB;;AAQA,MAAMY,YAAY,GAAGX,YAAA,CAAII,MAAJ,CAAW;EAC5BC,IAAI,EAAEN,cAAc,CAACO,GAAf,CAAmB,CAAnB,CADsB;EAE5BC,IAAI,EAAER,cAAc,CAACO,GAAf,CAAmB,CAAnB;AAFsB,CAAX,CAArB;;AAKO,MAAMM,oBAAoB,GAAG,OAAO;EACvCC,WADuC;EAEvCC,aAFuC;EAGvCC,WAHuC;EAIvCC;AAJuC,CAAP,KAKI;EACpC;EACA,MAAMC,oBAAoB,GAAG,IAAAC,mBAAA,EACzB,8BADyB,CAA7B;EAGA,MAAMC,mBAAmB,GAAG,IAAAD,mBAAA,EACxB,6BADwB,CAA5B,CALoC,CAQpC;;EACA,MAAME,oBAAoB,GAAG,IAAAF,mBAAA,EACzB,8BADyB,CAA7B;EAGA,MAAMG,mBAAmB,GAAG,IAAAH,mBAAA,EACxB,6BADwB,CAA5B,CAZoC,CAepC;;EACA,MAAMI,oBAAoB,GAAG,IAAAJ,mBAAA,EACzB,8BADyB,CAA7B;EAGA,MAAMK,mBAAmB,GAAG,IAAAL,mBAAA,EACxB,6BADwB,CAA5B;EAIA,OAAO;IACHD,oBADG;IAEHE,mBAFG;IAGHC,oBAHG;IAIHC,mBAJG;IAKHC,oBALG;IAMHC,mBANG;;IAOH,MAAMC,SAAN,CAAgB;MAAEC;IAAF,CAAhB,EAA0D;MACtD,MAAMhB,MAAM,GAAGI,WAAW,EAA1B;MACA,MAAMH,MAAM,GAAGI,aAAa,EAA5B;MAEA,IAAIY,MAAJ;;MAEA,IAAI;QACAA,MAAM,GAAG,MAAMV,iBAAiB,CAACQ,SAAlB,CAA4B;UAAEf,MAAF;UAAUC,MAAV;UAAkBe;QAAlB,CAA5B,CAAf;MACH,CAFD,CAEE,OAAOE,KAAP,EAAc;QACZ,MAAMC,cAAA,CAAYC,IAAZ,CAAiBF,KAAjB,EAAwB;UAC1BG,OAAO,EAAE,uBADiB;UAE1BC,IAAI,EAAE,kBAFoB;UAG1BC,IAAI,EAAE;YAAEP;UAAF;QAHoB,CAAxB,CAAN;MAKH;;MACD,IAAI,CAACC,MAAL,EAAa;QACT,MAAM,IAAIO,6BAAJ,CAAmB,kCAAiCR,EAAG,EAAvD,CAAN;MACH;;MACD,OAAOC,MAAP;IACH,CA1BE;;IA4BH,MAAMQ,WAAN,CAAkB;MAAEC;IAAF,CAAlB,EAAmE;MAC/D,MAAM1B,MAAM,GAAGI,WAAW,EAA1B;MACA,MAAMH,MAAM,GAAGI,aAAa,EAA5B;;MAEA,IAAI;QACA,OAAO,MAAME,iBAAiB,CAACkB,WAAlB,CAA8B;UACvCC,KAAK;YAAI1B,MAAJ;YAAYC;UAAZ,GAAuByB,KAAvB,CADkC;UAEvCC,IAAI,EAAE,CAAC,eAAD;QAFiC,CAA9B,CAAb;MAIH,CALD,CAKE,OAAOT,KAAP,EAAc;QACZ,MAAMC,cAAA,CAAYC,IAAZ,CAAiBF,KAAjB,EAAwB;UAC1BG,OAAO,EAAE,yBADiB;UAE1BC,IAAI,EAAE,oBAFoB;UAG1BC,IAAI,kCAAOG,KAAP;QAHsB,CAAxB,CAAN;MAKH;IACJ,CA5CE;;IA8CH,MAAME,YAAN,CAAmBC,KAAnB,EAAwD;MACpD,MAAMnC,YAAY,CAACoC,QAAb,CAAsBD,KAAtB,CAAN;MAEA,MAAM7B,MAAM,GAAGI,WAAW,EAA1B;MACA,MAAMH,MAAM,GAAGI,aAAa,EAA5B;MACA,MAAM;QAAEN,IAAF;QAAQD,IAAR;QAAciC;MAAd,IAA2BF,KAAjC;MAEA,MAAMG,QAAQ,GAAG,MAAMzB,iBAAiB,CAACQ,SAAlB,CAA4B;QAC/Cf,MAD+C;QAE/CC,MAF+C;QAG/CF,IAH+C;QAI/CD,IAJ+C;QAK/CiC;MAL+C,CAA5B,CAAvB;;MAQA,IAAIC,QAAJ,EAAc;QACV,MAAM,IAAIb,cAAJ,CACD,qBAAoBrB,IAAK,iCADxB,EAEF,eAFE,CAAN;MAIH;;MAED,MAAMmC,QAAQ,GAAG3B,WAAW,EAA5B;MAEA,MAAMW,MAAc;QAChBD,EAAE,EAAE,IAAAkB,cAAA,GADY;QAEhBlC,MAFgB;QAGhBC;MAHgB,GAIb4B,KAJa;QAKhBM,aAAa,EAAEC,OAAO,CAACC,GAAR,CAAYC,cALX;QAMhBC,SAAS,EAAE,IAAIC,IAAJ,GAAWC,WAAX,EANK;QAOhBC,SAAS,EAAE;UACP1B,EAAE,EAAEiB,QAAQ,CAACjB,EADN;UAEP2B,WAAW,EAAEV,QAAQ,CAACU,WAFf;UAGP5C,IAAI,EAAEkC,QAAQ,CAAClC;QAHR;MAPK,EAApB;;MAcA,IAAI;QACA,MAAMS,oBAAoB,CAACoC,OAArB,CAA6B;UAC/B3B;QAD+B,CAA7B,CAAN;QAGA,MAAM4B,MAAM,GAAG,MAAMtC,iBAAiB,CAACqB,YAAlB,CAA+B;UAAEX;QAAF,CAA/B,CAArB;QACA,MAAMP,mBAAmB,CAACkC,OAApB,CAA4B;UAC9B3B,MAAM,EAAE4B;QADsB,CAA5B,CAAN;QAGA,OAAOA,MAAP;MACH,CATD,CASE,OAAO3B,KAAP,EAAc;QACZ,MAAMC,cAAA,CAAYC,IAAZ,CAAiBF,KAAjB,EAAwB;UAC1BG,OAAO,EAAE,0BADiB;UAE1BC,IAAI,EAAE,qBAFoB;UAG1BC,IAAI,kCAAOM,KAAP;QAHsB,CAAxB,CAAN;MAKH;IACJ,CApGE;;IAsGH,MAAMiB,YAAN,CAAmB9B,EAAnB,EAA+Ba,KAA/B,EAA4E;MACxE,MAAM3B,YAAY,CAAC4B,QAAb,CAAsBD,KAAtB,CAAN;MAEA,MAAM7B,MAAM,GAAGI,WAAW,EAA1B;MACA,MAAMH,MAAM,GAAGI,aAAa,EAA5B;MACA,MAAM;QAAEP,IAAF;QAAQiC;MAAR,IAAqBF,KAA3B;MAEA,MAAMkB,QAAQ,GAAG,MAAMxC,iBAAiB,CAACQ,SAAlB,CAA4B;QAAEf,MAAF;QAAUC,MAAV;QAAkBe;MAAlB,CAA5B,CAAvB;;MAEA,IAAI,CAAC+B,QAAL,EAAe;QACX,MAAM,IAAIvB,6BAAJ,CAAmB,WAAUR,EAAG,kBAAhC,CAAN;MACH;;MAED,MAAMgB,QAAQ,GAAG,MAAMzB,iBAAiB,CAACQ,SAAlB,CAA4B;QAC/Cf,MAD+C;QAE/CC,MAF+C;QAG/CF,IAAI,EAAEgD,QAAQ,CAAChD,IAHgC;QAI/CD,IAAI,EAAEA,IAAI,IAAIiD,QAAQ,CAACjD,IAJwB;QAK/CiC,QAAQ,EAAEA,QAAQ,KAAKiB,SAAb,GAAyBjB,QAAzB,GAAoCgB,QAAQ,CAAChB,QALR,CAKiB;;MALjB,CAA5B,CAAvB,CAbwE,CAqBxE;;MACA,IAAIC,QAAQ,IAAI,CAAAA,QAAQ,SAAR,IAAAA,QAAQ,WAAR,YAAAA,QAAQ,CAAEhB,EAAV,MAAiBA,EAAjC,EAAqC;QACjC,MAAM,IAAIG,cAAJ,CACD,qBAAoBrB,IAAK,iCADxB,EAEF,eAFE,CAAN;MAIH;;MAED,MAAMmB,MAAc,+DACb8B,QADa,GAEblB,KAFa,CAApB;;MAIA,IAAI;QACA,MAAMlB,oBAAoB,CAACiC,OAArB,CAA6B;UAC/B3B,MAD+B;UAE/B8B;QAF+B,CAA7B,CAAN;QAIA,MAAMF,MAAM,GAAG,MAAMtC,iBAAiB,CAACuC,YAAlB,CAA+B;UAAEC,QAAF;UAAY9B;QAAZ,CAA/B,CAArB;QACA,MAAML,mBAAmB,CAACgC,OAApB,CAA4B;UAC9B3B,MAAM,EAAE4B,MADsB;UAE9BE;QAF8B,CAA5B,CAAN;QAIA,OAAOF,MAAP;MACH,CAXD,CAWE,OAAO3B,KAAP,EAAc;QACZ,MAAM,IAAIC,cAAJ,CACFD,KAAK,CAACG,OAAN,IAAiB,0BADf,EAEFH,KAAK,CAACI,IAAN,IAAc,qBAFZ,EAGF;UACIL;QADJ,CAHE,CAAN;MAOH;IACJ,CA3JE;;IA6JH,MAAMgC,YAAN,CAAmBjC,EAAnB,EAA8C;MAC1C,MAAMhB,MAAM,GAAGI,WAAW,EAA1B;MACA,MAAMH,MAAM,GAAGI,aAAa,EAA5B;MAEA,MAAMY,MAAM,GAAG,MAAMV,iBAAiB,CAACQ,SAAlB,CAA4B;QAAEf,MAAF;QAAUC,MAAV;QAAkBe;MAAlB,CAA5B,CAArB;;MAEA,IAAI,CAACC,MAAL,EAAa;QACT,MAAM,IAAIO,6BAAJ,CAAmB,WAAUR,EAAG,kBAAhC,CAAN;MACH;;MAED,IAAI;QACA,MAAMH,oBAAoB,CAAC+B,OAArB,CAA6B;UAC/B3B;QAD+B,CAA7B,CAAN;QAGA,MAAM4B,MAAM,GAAGtC,iBAAiB,CAAC0C,YAAlB,CAA+B;UAAEhC;QAAF,CAA/B,CAAf;QACA,MAAMH,mBAAmB,CAAC8B,OAApB,CAA4B;UAC9B3B;QAD8B,CAA5B,CAAN;QAGA,OAAO4B,MAAP;MACH,CATD,CASE,OAAO3B,KAAP,EAAc;QACZ,MAAM,IAAIC,cAAJ,CACFD,KAAK,CAACG,OAAN,IAAiB,0BADf,EAEFH,KAAK,CAACI,IAAN,IAAc,qBAFZ,EAGF;UACIL;QADJ,CAHE,CAAN;MAOH;IACJ;;EAzLE,CAAP;AA2LH,CAvNM"}
@@ -1,2 +0,0 @@
1
- import { Folders, FoldersConfig } from "../types";
2
- export declare const createContext: (config: FoldersConfig) => Promise<Folders>;
package/context/index.js DELETED
@@ -1,22 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.createContext = void 0;
9
-
10
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
-
12
- var _folders = require("./folders");
13
-
14
- var _links = require("./links");
15
-
16
- const createContext = async config => {
17
- const linksContext = await (0, _links.createLinksContext)(config);
18
- const folderContext = await (0, _folders.createFoldersContext)(config);
19
- return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, linksContext), folderContext);
20
- };
21
-
22
- exports.createContext = createContext;
@@ -1 +0,0 @@
1
- {"version":3,"names":["createContext","config","linksContext","createLinksContext","folderContext","createFoldersContext"],"sources":["index.ts"],"sourcesContent":["import { createFoldersContext } from \"./folders\";\nimport { createLinksContext } from \"./links\";\n\nimport { Folders, FoldersConfig } from \"~/types\";\n\nexport const createContext = async (config: FoldersConfig): Promise<Folders> => {\n const linksContext = await createLinksContext(config);\n const folderContext = await createFoldersContext(config);\n\n return {\n ...linksContext,\n ...folderContext\n };\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AAIO,MAAMA,aAAa,GAAG,MAAOC,MAAP,IAAmD;EAC5E,MAAMC,YAAY,GAAG,MAAM,IAAAC,yBAAA,EAAmBF,MAAnB,CAA3B;EACA,MAAMG,aAAa,GAAG,MAAM,IAAAC,6BAAA,EAAqBJ,MAArB,CAA5B;EAEA,mEACOC,YADP,GAEOE,aAFP;AAIH,CARM"}
@@ -1,2 +0,0 @@
1
- import { FoldersConfig, ILinks } from "../types";
2
- export declare const createLinksContext: ({ getTenantId, getLocaleCode, getIdentity, storageOperations }: FoldersConfig) => Promise<ILinks>;