@webiny/languages 6.3.0 → 6.4.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/Languages.js +8 -9
  2. package/Languages.js.map +1 -1
  3. package/admin/Extension.js +21 -25
  4. package/admin/Extension.js.map +1 -1
  5. package/admin/GenericCell.js +7 -12
  6. package/admin/GenericCell.js.map +1 -1
  7. package/admin/LanguageEntryList.js +31 -30
  8. package/admin/LanguageEntryList.js.map +1 -1
  9. package/admin/PermissionsSchema.js +5 -4
  10. package/admin/PermissionsSchema.js.map +1 -1
  11. package/admin/SecurityPermission.js +11 -14
  12. package/admin/SecurityPermission.js.map +1 -1
  13. package/admin/features/listLanguages/LanguageEntryAfterCreateHandler.js +14 -11
  14. package/admin/features/listLanguages/LanguageEntryAfterCreateHandler.js.map +1 -1
  15. package/admin/features/listLanguages/LanguageEntryAfterDeleteHandler.js +12 -11
  16. package/admin/features/listLanguages/LanguageEntryAfterDeleteHandler.js.map +1 -1
  17. package/admin/features/listLanguages/LanguageEntryAfterUpdateHandler.js +16 -17
  18. package/admin/features/listLanguages/LanguageEntryAfterUpdateHandler.js.map +1 -1
  19. package/admin/features/listLanguages/ListLanguagesGateway.js +18 -17
  20. package/admin/features/listLanguages/ListLanguagesGateway.js.map +1 -1
  21. package/admin/features/listLanguages/ListLanguagesRepository.js +23 -23
  22. package/admin/features/listLanguages/ListLanguagesRepository.js.map +1 -1
  23. package/admin/features/listLanguages/ListLanguagesUseCase.js +13 -10
  24. package/admin/features/listLanguages/ListLanguagesUseCase.js.map +1 -1
  25. package/admin/features/listLanguages/abstractions.js +5 -27
  26. package/admin/features/listLanguages/abstractions.js.map +1 -1
  27. package/admin/features/listLanguages/feature.js +22 -21
  28. package/admin/features/listLanguages/feature.js.map +1 -1
  29. package/admin/features/listLanguages/index.js +0 -2
  30. package/admin/features/listLanguages/toLanguageDto.js +10 -9
  31. package/admin/features/listLanguages/toLanguageDto.js.map +1 -1
  32. package/admin/presentation/hooks/useLanguages.js +20 -19
  33. package/admin/presentation/hooks/useLanguages.js.map +1 -1
  34. package/api/Extension.js +12 -15
  35. package/api/Extension.js.map +1 -1
  36. package/api/domain/Language.js +0 -3
  37. package/api/domain/LanguageModel.js +49 -24
  38. package/api/domain/LanguageModel.js.map +1 -1
  39. package/api/domain/errors.js +16 -17
  40. package/api/domain/errors.js.map +1 -1
  41. package/api/domain/permissionsSchema.js +5 -4
  42. package/api/domain/permissionsSchema.js.map +1 -1
  43. package/api/features/AddCmsPermissions/AddCmsPermissions.js +41 -32
  44. package/api/features/AddCmsPermissions/AddCmsPermissions.js.map +1 -1
  45. package/api/features/AddCmsPermissions/feature.js +6 -5
  46. package/api/features/AddCmsPermissions/feature.js.map +1 -1
  47. package/api/features/EnsureSingleDefaultLanguage/UnsetDefaultLanguagesHandler.js +36 -46
  48. package/api/features/EnsureSingleDefaultLanguage/UnsetDefaultLanguagesHandler.js.map +1 -1
  49. package/api/features/EnsureSingleDefaultLanguage/feature.js +6 -5
  50. package/api/features/EnsureSingleDefaultLanguage/feature.js.map +1 -1
  51. package/api/features/GetLanguageByCode/GetLanguageByCodeRepository.js +36 -40
  52. package/api/features/GetLanguageByCode/GetLanguageByCodeRepository.js.map +1 -1
  53. package/api/features/GetLanguageByCode/GetLanguageByCodeUseCase.js +14 -11
  54. package/api/features/GetLanguageByCode/GetLanguageByCodeUseCase.js.map +1 -1
  55. package/api/features/GetLanguageByCode/abstractions.js +3 -13
  56. package/api/features/GetLanguageByCode/abstractions.js.map +1 -1
  57. package/api/features/GetLanguageByCode/feature.js +7 -6
  58. package/api/features/GetLanguageByCode/feature.js.map +1 -1
  59. package/api/features/GetLanguageByCode/index.js +0 -2
  60. package/api/features/ListLanguages/ListLanguagesRepository.js +36 -34
  61. package/api/features/ListLanguages/ListLanguagesRepository.js.map +1 -1
  62. package/api/features/ListLanguages/ListLanguagesUseCase.js +14 -11
  63. package/api/features/ListLanguages/ListLanguagesUseCase.js.map +1 -1
  64. package/api/features/ListLanguages/abstractions.js +3 -13
  65. package/api/features/ListLanguages/abstractions.js.map +1 -1
  66. package/api/features/ListLanguages/feature.js +7 -6
  67. package/api/features/ListLanguages/feature.js.map +1 -1
  68. package/api/features/ListLanguages/index.js +0 -2
  69. package/api/features/Permissions/abstractions.js +2 -1
  70. package/api/features/Permissions/abstractions.js.map +1 -1
  71. package/api/features/Permissions/feature.js +2 -1
  72. package/api/features/Permissions/feature.js.map +1 -1
  73. package/api/graphql/LanguagesGraphQLSchema.js +24 -31
  74. package/api/graphql/LanguagesGraphQLSchema.js.map +1 -1
  75. package/exports/admin/languages.js +0 -2
  76. package/exports/api/languages.js +0 -2
  77. package/index.js +0 -2
  78. package/package.json +21 -21
  79. package/shared/constants.js +2 -1
  80. package/shared/constants.js.map +1 -1
  81. package/admin/features/listLanguages/index.js.map +0 -1
  82. package/api/domain/Language.js.map +0 -1
  83. package/api/features/GetLanguageByCode/index.js.map +0 -1
  84. package/api/features/ListLanguages/index.js.map +0 -1
  85. package/exports/admin/languages.js.map +0 -1
  86. package/exports/api/languages.js.map +0 -1
  87. package/index.js.map +0 -1
@@ -1,10 +1,11 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import AddCmsPermissions from "./AddCmsPermissions.js";
3
- export const AddCmsPermissionsFeature = createFeature({
4
- name: "Languages/AddCmsPermissions",
5
- register(container) {
6
- container.register(AddCmsPermissions);
7
- }
3
+ const AddCmsPermissionsFeature = createFeature({
4
+ name: "Languages/AddCmsPermissions",
5
+ register (container) {
6
+ container.register(AddCmsPermissions);
7
+ }
8
8
  });
9
+ export { AddCmsPermissionsFeature };
9
10
 
10
11
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","AddCmsPermissions","AddCmsPermissionsFeature","name","register","container"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport AddCmsPermissions from \"./AddCmsPermissions.js\";\n\nexport const AddCmsPermissionsFeature = createFeature({\n name: \"Languages/AddCmsPermissions\",\n register(container) {\n container.register(AddCmsPermissions);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,OAAOC,iBAAiB;AAExB,OAAO,MAAMC,wBAAwB,GAAGF,aAAa,CAAC;EAClDG,IAAI,EAAE,6BAA6B;EACnCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACH,iBAAiB,CAAC;EACzC;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"api/features/AddCmsPermissions/feature.js","sources":["../../../../src/api/features/AddCmsPermissions/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport AddCmsPermissions from \"./AddCmsPermissions.js\";\n\nexport const AddCmsPermissionsFeature = createFeature({\n name: \"Languages/AddCmsPermissions\",\n register(container) {\n container.register(AddCmsPermissions);\n }\n});\n"],"names":["AddCmsPermissionsFeature","createFeature","container","AddCmsPermissions"],"mappings":";;AAGO,MAAMA,2BAA2BC,cAAc;IAClD,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
@@ -4,55 +4,45 @@ import { ListLatestEntriesUseCase } from "@webiny/api-headless-cms/features/cont
4
4
  import { LANGUAGE_MODEL_ID } from "../../../shared/constants.js";
5
5
  import { UpdateEntryRepository } from "@webiny/api-headless-cms/features/contentEntry/UpdateEntry/abstractions.js";
6
6
  class UnsetDefaultLanguagesHandler {
7
- constructor(getModel, listLatestEntries, updateEntry) {
8
- this.getModel = getModel;
9
- this.listLatestEntries = listLatestEntries;
10
- this.updateEntry = updateEntry;
11
- }
12
- async handle(event) {
13
- const {
14
- entry,
15
- model
16
- } = event.payload;
17
- if (model.modelId !== LANGUAGE_MODEL_ID) {
18
- return;
7
+ constructor(getModel, listLatestEntries, updateEntry){
8
+ this.getModel = getModel;
9
+ this.listLatestEntries = listLatestEntries;
10
+ this.updateEntry = updateEntry;
19
11
  }
20
- if (!entry.values.isDefault) {
21
- return;
12
+ async handle(event) {
13
+ const { entry, model } = event.payload;
14
+ if (model.modelId !== LANGUAGE_MODEL_ID) return;
15
+ if (!entry.values.isDefault) return;
16
+ const modelResult = await this.getModel.execute(LANGUAGE_MODEL_ID);
17
+ if (modelResult.isFail()) return;
18
+ const languageModel = modelResult.value;
19
+ const listResult = await this.listLatestEntries.execute(languageModel, {
20
+ where: {
21
+ entryId_not: entry.entryId,
22
+ values: {
23
+ isDefault: true
24
+ }
25
+ }
26
+ });
27
+ if (listResult.isFail()) return;
28
+ const { entries } = listResult.value;
29
+ for (const other of entries)await this.updateEntry.execute(languageModel, {
30
+ ...other,
31
+ values: {
32
+ ...other.values,
33
+ isDefault: false
34
+ }
35
+ });
22
36
  }
23
- const modelResult = await this.getModel.execute(LANGUAGE_MODEL_ID);
24
- if (modelResult.isFail()) {
25
- return;
26
- }
27
- const languageModel = modelResult.value;
28
- const listResult = await this.listLatestEntries.execute(languageModel, {
29
- where: {
30
- entryId_not: entry.entryId,
31
- values: {
32
- isDefault: true
33
- }
34
- }
35
- });
36
- if (listResult.isFail()) {
37
- return;
38
- }
39
- const {
40
- entries
41
- } = listResult.value;
42
- for (const other of entries) {
43
- await this.updateEntry.execute(languageModel, {
44
- ...other,
45
- values: {
46
- ...other.values,
47
- isDefault: false
48
- }
49
- });
50
- }
51
- }
52
37
  }
53
- export default EntryAfterUpdateEventHandler.createImplementation({
54
- implementation: UnsetDefaultLanguagesHandler,
55
- dependencies: [GetModelUseCase, ListLatestEntriesUseCase, UpdateEntryRepository]
38
+ const EnsureSingleDefaultLanguage_UnsetDefaultLanguagesHandler = EntryAfterUpdateEventHandler.createImplementation({
39
+ implementation: UnsetDefaultLanguagesHandler,
40
+ dependencies: [
41
+ GetModelUseCase,
42
+ ListLatestEntriesUseCase,
43
+ UpdateEntryRepository
44
+ ]
56
45
  });
46
+ export default EnsureSingleDefaultLanguage_UnsetDefaultLanguagesHandler;
57
47
 
58
48
  //# sourceMappingURL=UnsetDefaultLanguagesHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["EntryAfterUpdateEventHandler","GetModelUseCase","ListLatestEntriesUseCase","LANGUAGE_MODEL_ID","UpdateEntryRepository","UnsetDefaultLanguagesHandler","constructor","getModel","listLatestEntries","updateEntry","handle","event","entry","model","payload","modelId","values","isDefault","modelResult","execute","isFail","languageModel","value","listResult","where","entryId_not","entryId","entries","other","createImplementation","implementation","dependencies"],"sources":["UnsetDefaultLanguagesHandler.ts"],"sourcesContent":["import { EntryAfterUpdateEventHandler } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry/events.js\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/abstractions.js\";\nimport { ListLatestEntriesUseCase } from \"@webiny/api-headless-cms/features/contentEntry/ListEntries/abstractions.js\";\nimport { LANGUAGE_MODEL_ID } from \"~/shared/constants.js\";\nimport { UpdateEntryRepository } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry/abstractions.js\";\n\nclass UnsetDefaultLanguagesHandler implements EntryAfterUpdateEventHandler.Interface {\n constructor(\n private getModel: GetModelUseCase.Interface,\n private listLatestEntries: ListLatestEntriesUseCase.Interface,\n private updateEntry: UpdateEntryRepository.Interface\n ) {}\n\n async handle(event: EntryAfterUpdateEventHandler.Event): Promise<void> {\n const { entry, model } = event.payload;\n\n if (model.modelId !== LANGUAGE_MODEL_ID) {\n return;\n }\n\n if (!entry.values.isDefault) {\n return;\n }\n\n const modelResult = await this.getModel.execute(LANGUAGE_MODEL_ID);\n if (modelResult.isFail()) {\n return;\n }\n\n const languageModel = modelResult.value;\n\n const listResult = await this.listLatestEntries.execute(languageModel, {\n where: {\n entryId_not: entry.entryId,\n values: {\n isDefault: true\n }\n }\n });\n\n if (listResult.isFail()) {\n return;\n }\n\n const { entries } = listResult.value;\n\n for (const other of entries) {\n await this.updateEntry.execute(languageModel, {\n ...other,\n values: {\n ...other.values,\n isDefault: false\n }\n });\n }\n }\n}\n\nexport default EntryAfterUpdateEventHandler.createImplementation({\n implementation: UnsetDefaultLanguagesHandler,\n dependencies: [GetModelUseCase, ListLatestEntriesUseCase, UpdateEntryRepository]\n});\n"],"mappings":"AAAA,SAASA,4BAA4B,QAAQ,sEAAsE;AACnH,SAASC,eAAe,QAAQ,yEAAyE;AACzG,SAASC,wBAAwB,QAAQ,4EAA4E;AACrH,SAASC,iBAAiB;AAC1B,SAASC,qBAAqB,QAAQ,4EAA4E;AAElH,MAAMC,4BAA4B,CAAmD;EACjFC,WAAWA,CACCC,QAAmC,EACnCC,iBAAqD,EACrDC,WAA4C,EACtD;IAAA,KAHUF,QAAmC,GAAnCA,QAAmC;IAAA,KACnCC,iBAAqD,GAArDA,iBAAqD;IAAA,KACrDC,WAA4C,GAA5CA,WAA4C;EACrD;EAEH,MAAMC,MAAMA,CAACC,KAAyC,EAAiB;IACnE,MAAM;MAAEC,KAAK;MAAEC;IAAM,CAAC,GAAGF,KAAK,CAACG,OAAO;IAEtC,IAAID,KAAK,CAACE,OAAO,KAAKZ,iBAAiB,EAAE;MACrC;IACJ;IAEA,IAAI,CAACS,KAAK,CAACI,MAAM,CAACC,SAAS,EAAE;MACzB;IACJ;IAEA,MAAMC,WAAW,GAAG,MAAM,IAAI,CAACX,QAAQ,CAACY,OAAO,CAAChB,iBAAiB,CAAC;IAClE,IAAIe,WAAW,CAACE,MAAM,CAAC,CAAC,EAAE;MACtB;IACJ;IAEA,MAAMC,aAAa,GAAGH,WAAW,CAACI,KAAK;IAEvC,MAAMC,UAAU,GAAG,MAAM,IAAI,CAACf,iBAAiB,CAACW,OAAO,CAACE,aAAa,EAAE;MACnEG,KAAK,EAAE;QACHC,WAAW,EAAEb,KAAK,CAACc,OAAO;QAC1BV,MAAM,EAAE;UACJC,SAAS,EAAE;QACf;MACJ;IACJ,CAAC,CAAC;IAEF,IAAIM,UAAU,CAACH,MAAM,CAAC,CAAC,EAAE;MACrB;IACJ;IAEA,MAAM;MAAEO;IAAQ,CAAC,GAAGJ,UAAU,CAACD,KAAK;IAEpC,KAAK,MAAMM,KAAK,IAAID,OAAO,EAAE;MACzB,MAAM,IAAI,CAAClB,WAAW,CAACU,OAAO,CAACE,aAAa,EAAE;QAC1C,GAAGO,KAAK;QACRZ,MAAM,EAAE;UACJ,GAAGY,KAAK,CAACZ,MAAM;UACfC,SAAS,EAAE;QACf;MACJ,CAAC,CAAC;IACN;EACJ;AACJ;AAEA,eAAejB,4BAA4B,CAAC6B,oBAAoB,CAAC;EAC7DC,cAAc,EAAEzB,4BAA4B;EAC5C0B,YAAY,EAAE,CAAC9B,eAAe,EAAEC,wBAAwB,EAAEE,qBAAqB;AACnF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"api/features/EnsureSingleDefaultLanguage/UnsetDefaultLanguagesHandler.js","sources":["../../../../src/api/features/EnsureSingleDefaultLanguage/UnsetDefaultLanguagesHandler.ts"],"sourcesContent":["import { EntryAfterUpdateEventHandler } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry/events.js\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/abstractions.js\";\nimport { ListLatestEntriesUseCase } from \"@webiny/api-headless-cms/features/contentEntry/ListEntries/abstractions.js\";\nimport { LANGUAGE_MODEL_ID } from \"~/shared/constants.js\";\nimport { UpdateEntryRepository } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry/abstractions.js\";\n\nclass UnsetDefaultLanguagesHandler implements EntryAfterUpdateEventHandler.Interface {\n constructor(\n private getModel: GetModelUseCase.Interface,\n private listLatestEntries: ListLatestEntriesUseCase.Interface,\n private updateEntry: UpdateEntryRepository.Interface\n ) {}\n\n async handle(event: EntryAfterUpdateEventHandler.Event): Promise<void> {\n const { entry, model } = event.payload;\n\n if (model.modelId !== LANGUAGE_MODEL_ID) {\n return;\n }\n\n if (!entry.values.isDefault) {\n return;\n }\n\n const modelResult = await this.getModel.execute(LANGUAGE_MODEL_ID);\n if (modelResult.isFail()) {\n return;\n }\n\n const languageModel = modelResult.value;\n\n const listResult = await this.listLatestEntries.execute(languageModel, {\n where: {\n entryId_not: entry.entryId,\n values: {\n isDefault: true\n }\n }\n });\n\n if (listResult.isFail()) {\n return;\n }\n\n const { entries } = listResult.value;\n\n for (const other of entries) {\n await this.updateEntry.execute(languageModel, {\n ...other,\n values: {\n ...other.values,\n isDefault: false\n }\n });\n }\n }\n}\n\nexport default EntryAfterUpdateEventHandler.createImplementation({\n implementation: UnsetDefaultLanguagesHandler,\n dependencies: [GetModelUseCase, ListLatestEntriesUseCase, UpdateEntryRepository]\n});\n"],"names":["UnsetDefaultLanguagesHandler","getModel","listLatestEntries","updateEntry","event","entry","model","LANGUAGE_MODEL_ID","modelResult","languageModel","listResult","entries","other","EntryAfterUpdateEventHandler","GetModelUseCase","ListLatestEntriesUseCase","UpdateEntryRepository"],"mappings":";;;;;AAMA,MAAMA;IACF,YACYC,QAAmC,EACnCC,iBAAqD,EACrDC,WAA4C,CACtD;aAHUF,QAAQ,GAARA;aACAC,iBAAiB,GAAjBA;aACAC,WAAW,GAAXA;IACT;IAEH,MAAM,OAAOC,KAAyC,EAAiB;QACnE,MAAM,EAAEC,KAAK,EAAEC,KAAK,EAAE,GAAGF,MAAM,OAAO;QAEtC,IAAIE,MAAM,OAAO,KAAKC,mBAClB;QAGJ,IAAI,CAACF,MAAM,MAAM,CAAC,SAAS,EACvB;QAGJ,MAAMG,cAAc,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAACD;QAChD,IAAIC,YAAY,MAAM,IAClB;QAGJ,MAAMC,gBAAgBD,YAAY,KAAK;QAEvC,MAAME,aAAa,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAACD,eAAe;YACnE,OAAO;gBACH,aAAaJ,MAAM,OAAO;gBAC1B,QAAQ;oBACJ,WAAW;gBACf;YACJ;QACJ;QAEA,IAAIK,WAAW,MAAM,IACjB;QAGJ,MAAM,EAAEC,OAAO,EAAE,GAAGD,WAAW,KAAK;QAEpC,KAAK,MAAME,SAASD,QAChB,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAACF,eAAe;YAC1C,GAAGG,KAAK;YACR,QAAQ;gBACJ,GAAGA,MAAM,MAAM;gBACf,WAAW;YACf;QACJ;IAER;AACJ;AAEA,iEAAeC,6BAA6B,oBAAoB,CAAC;IAC7D,gBAAgBb;IAChB,cAAc;QAACc;QAAiBC;QAA0BC;KAAsB;AACpF"}
@@ -1,10 +1,11 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import UnsetDefaultLanguagesHandler from "./UnsetDefaultLanguagesHandler.js";
3
- export const EnsureSingleDefaultLanguageFeature = createFeature({
4
- name: "Languages/EnsureSingleDefaultLanguage",
5
- register(container) {
6
- container.register(UnsetDefaultLanguagesHandler);
7
- }
3
+ const EnsureSingleDefaultLanguageFeature = createFeature({
4
+ name: "Languages/EnsureSingleDefaultLanguage",
5
+ register (container) {
6
+ container.register(UnsetDefaultLanguagesHandler);
7
+ }
8
8
  });
9
+ export { EnsureSingleDefaultLanguageFeature };
9
10
 
10
11
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","UnsetDefaultLanguagesHandler","EnsureSingleDefaultLanguageFeature","name","register","container"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport UnsetDefaultLanguagesHandler from \"./UnsetDefaultLanguagesHandler.js\";\n\nexport const EnsureSingleDefaultLanguageFeature = createFeature({\n name: \"Languages/EnsureSingleDefaultLanguage\",\n register(container) {\n container.register(UnsetDefaultLanguagesHandler);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,OAAOC,4BAA4B;AAEnC,OAAO,MAAMC,kCAAkC,GAAGF,aAAa,CAAC;EAC5DG,IAAI,EAAE,uCAAuC;EAC7CC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACH,4BAA4B,CAAC;EACpD;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"api/features/EnsureSingleDefaultLanguage/feature.js","sources":["../../../../src/api/features/EnsureSingleDefaultLanguage/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport UnsetDefaultLanguagesHandler from \"./UnsetDefaultLanguagesHandler.js\";\n\nexport const EnsureSingleDefaultLanguageFeature = createFeature({\n name: \"Languages/EnsureSingleDefaultLanguage\",\n register(container) {\n container.register(UnsetDefaultLanguagesHandler);\n }\n});\n"],"names":["EnsureSingleDefaultLanguageFeature","createFeature","container","UnsetDefaultLanguagesHandler"],"mappings":";;AAGO,MAAMA,qCAAqCC,cAAc;IAC5D,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
@@ -1,52 +1,48 @@
1
1
  import { Result } from "@webiny/feature/api";
2
2
  import { GetModelUseCase } from "@webiny/api-headless-cms/features/contentModel/GetModel/abstractions.js";
3
3
  import { ListLatestEntriesUseCase } from "@webiny/api-headless-cms/features/contentEntry/ListEntries/abstractions.js";
4
- import { GetLanguageByCodeRepository as RepositoryAbstraction } from "./abstractions.js";
4
+ import { GetLanguageByCodeRepository } from "./abstractions.js";
5
5
  import { LANGUAGE_MODEL_ID } from "../../../shared/constants.js";
6
6
  import { LanguageNotFoundError, LanguagePersistenceError } from "../../domain/errors.js";
7
7
  class GetLanguageByCodeRepositoryImpl {
8
- constructor(getModel, listLatestEntries) {
9
- this.getModel = getModel;
10
- this.listLatestEntries = listLatestEntries;
11
- }
12
- async execute(code) {
13
- const modelResult = await this.getModel.execute(LANGUAGE_MODEL_ID);
14
- if (modelResult.isFail()) {
15
- return Result.fail(new LanguagePersistenceError(modelResult.error));
8
+ constructor(getModel, listLatestEntries){
9
+ this.getModel = getModel;
10
+ this.listLatestEntries = listLatestEntries;
16
11
  }
17
- const model = modelResult.value;
18
- const listResult = await this.listLatestEntries.execute(model, {
19
- where: {
20
- values: {
21
- code
22
- }
23
- },
24
- limit: 1
25
- });
26
- if (listResult.isFail()) {
27
- return Result.fail(new LanguagePersistenceError(listResult.error));
12
+ async execute(code) {
13
+ const modelResult = await this.getModel.execute(LANGUAGE_MODEL_ID);
14
+ if (modelResult.isFail()) return Result.fail(new LanguagePersistenceError(modelResult.error));
15
+ const model = modelResult.value;
16
+ const listResult = await this.listLatestEntries.execute(model, {
17
+ where: {
18
+ values: {
19
+ code
20
+ }
21
+ },
22
+ limit: 1
23
+ });
24
+ if (listResult.isFail()) return Result.fail(new LanguagePersistenceError(listResult.error));
25
+ const { entries } = listResult.value;
26
+ if (0 === entries.length) return Result.fail(new LanguageNotFoundError(code));
27
+ const entry = entries[0];
28
+ const language = {
29
+ id: entry.entryId,
30
+ name: entry.values.name,
31
+ code: entry.values.code,
32
+ direction: entry.values.direction,
33
+ isDefault: entry.values.isDefault,
34
+ enabled: entry.values.enabled
35
+ };
36
+ return Result.ok(language);
28
37
  }
29
- const {
30
- entries
31
- } = listResult.value;
32
- if (entries.length === 0) {
33
- return Result.fail(new LanguageNotFoundError(code));
34
- }
35
- const entry = entries[0];
36
- const language = {
37
- id: entry.entryId,
38
- name: entry.values.name,
39
- code: entry.values.code,
40
- direction: entry.values.direction,
41
- isDefault: entry.values.isDefault,
42
- enabled: entry.values.enabled
43
- };
44
- return Result.ok(language);
45
- }
46
38
  }
47
- export const GetLanguageByCodeRepository = RepositoryAbstraction.createImplementation({
48
- implementation: GetLanguageByCodeRepositoryImpl,
49
- dependencies: [GetModelUseCase, ListLatestEntriesUseCase]
39
+ const GetLanguageByCodeRepository_GetLanguageByCodeRepository = GetLanguageByCodeRepository.createImplementation({
40
+ implementation: GetLanguageByCodeRepositoryImpl,
41
+ dependencies: [
42
+ GetModelUseCase,
43
+ ListLatestEntriesUseCase
44
+ ]
50
45
  });
46
+ export { GetLanguageByCodeRepository_GetLanguageByCodeRepository as GetLanguageByCodeRepository };
51
47
 
52
48
  //# sourceMappingURL=GetLanguageByCodeRepository.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","GetModelUseCase","ListLatestEntriesUseCase","GetLanguageByCodeRepository","RepositoryAbstraction","LANGUAGE_MODEL_ID","LanguageNotFoundError","LanguagePersistenceError","GetLanguageByCodeRepositoryImpl","constructor","getModel","listLatestEntries","execute","code","modelResult","isFail","fail","error","model","value","listResult","where","values","limit","entries","length","entry","language","id","entryId","name","direction","isDefault","enabled","ok","createImplementation","implementation","dependencies"],"sources":["GetLanguageByCodeRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/abstractions.js\";\nimport { ListLatestEntriesUseCase } from \"@webiny/api-headless-cms/features/contentEntry/ListEntries/abstractions.js\";\nimport { GetLanguageByCodeRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { LANGUAGE_MODEL_ID } from \"~/shared/constants.js\";\nimport { LanguageNotFoundError, LanguagePersistenceError } from \"~/api/domain/errors.js\";\nimport type { Language } from \"~/api/domain/Language.js\";\n\nclass GetLanguageByCodeRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private getModel: GetModelUseCase.Interface,\n private listLatestEntries: ListLatestEntriesUseCase.Interface\n ) {}\n\n async execute(code: string): RepositoryAbstraction.Return {\n const modelResult = await this.getModel.execute(LANGUAGE_MODEL_ID);\n if (modelResult.isFail()) {\n return Result.fail(new LanguagePersistenceError(modelResult.error));\n }\n\n const model = modelResult.value;\n\n const listResult = await this.listLatestEntries.execute(model, {\n where: {\n values: {\n code\n }\n },\n limit: 1\n });\n\n if (listResult.isFail()) {\n return Result.fail(new LanguagePersistenceError(listResult.error));\n }\n\n const { entries } = listResult.value;\n\n if (entries.length === 0) {\n return Result.fail(new LanguageNotFoundError(code));\n }\n\n const entry = entries[0];\n\n const language: Language = {\n id: entry.entryId,\n name: entry.values.name,\n code: entry.values.code,\n direction: entry.values.direction,\n isDefault: entry.values.isDefault,\n enabled: entry.values.enabled\n };\n\n return Result.ok(language);\n }\n}\n\nexport const GetLanguageByCodeRepository = RepositoryAbstraction.createImplementation({\n implementation: GetLanguageByCodeRepositoryImpl,\n dependencies: [GetModelUseCase, ListLatestEntriesUseCase]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,eAAe,QAAQ,yEAAyE;AACzG,SAASC,wBAAwB,QAAQ,4EAA4E;AACrH,SAASC,2BAA2B,IAAIC,qBAAqB;AAC7D,SAASC,iBAAiB;AAC1B,SAASC,qBAAqB,EAAEC,wBAAwB;AAGxD,MAAMC,+BAA+B,CAA4C;EAC7EC,WAAWA,CACCC,QAAmC,EACnCC,iBAAqD,EAC/D;IAAA,KAFUD,QAAmC,GAAnCA,QAAmC;IAAA,KACnCC,iBAAqD,GAArDA,iBAAqD;EAC9D;EAEH,MAAMC,OAAOA,CAACC,IAAY,EAAgC;IACtD,MAAMC,WAAW,GAAG,MAAM,IAAI,CAACJ,QAAQ,CAACE,OAAO,CAACP,iBAAiB,CAAC;IAClE,IAAIS,WAAW,CAACC,MAAM,CAAC,CAAC,EAAE;MACtB,OAAOf,MAAM,CAACgB,IAAI,CAAC,IAAIT,wBAAwB,CAACO,WAAW,CAACG,KAAK,CAAC,CAAC;IACvE;IAEA,MAAMC,KAAK,GAAGJ,WAAW,CAACK,KAAK;IAE/B,MAAMC,UAAU,GAAG,MAAM,IAAI,CAACT,iBAAiB,CAACC,OAAO,CAACM,KAAK,EAAE;MAC3DG,KAAK,EAAE;QACHC,MAAM,EAAE;UACJT;QACJ;MACJ,CAAC;MACDU,KAAK,EAAE;IACX,CAAC,CAAC;IAEF,IAAIH,UAAU,CAACL,MAAM,CAAC,CAAC,EAAE;MACrB,OAAOf,MAAM,CAACgB,IAAI,CAAC,IAAIT,wBAAwB,CAACa,UAAU,CAACH,KAAK,CAAC,CAAC;IACtE;IAEA,MAAM;MAAEO;IAAQ,CAAC,GAAGJ,UAAU,CAACD,KAAK;IAEpC,IAAIK,OAAO,CAACC,MAAM,KAAK,CAAC,EAAE;MACtB,OAAOzB,MAAM,CAACgB,IAAI,CAAC,IAAIV,qBAAqB,CAACO,IAAI,CAAC,CAAC;IACvD;IAEA,MAAMa,KAAK,GAAGF,OAAO,CAAC,CAAC,CAAC;IAExB,MAAMG,QAAkB,GAAG;MACvBC,EAAE,EAAEF,KAAK,CAACG,OAAO;MACjBC,IAAI,EAAEJ,KAAK,CAACJ,MAAM,CAACQ,IAAI;MACvBjB,IAAI,EAAEa,KAAK,CAACJ,MAAM,CAACT,IAAI;MACvBkB,SAAS,EAAEL,KAAK,CAACJ,MAAM,CAACS,SAAS;MACjCC,SAAS,EAAEN,KAAK,CAACJ,MAAM,CAACU,SAAS;MACjCC,OAAO,EAAEP,KAAK,CAACJ,MAAM,CAACW;IAC1B,CAAC;IAED,OAAOjC,MAAM,CAACkC,EAAE,CAACP,QAAQ,CAAC;EAC9B;AACJ;AAEA,OAAO,MAAMxB,2BAA2B,GAAGC,qBAAqB,CAAC+B,oBAAoB,CAAC;EAClFC,cAAc,EAAE5B,+BAA+B;EAC/C6B,YAAY,EAAE,CAACpC,eAAe,EAAEC,wBAAwB;AAC5D,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"api/features/GetLanguageByCode/GetLanguageByCodeRepository.js","sources":["../../../../src/api/features/GetLanguageByCode/GetLanguageByCodeRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/abstractions.js\";\nimport { ListLatestEntriesUseCase } from \"@webiny/api-headless-cms/features/contentEntry/ListEntries/abstractions.js\";\nimport { GetLanguageByCodeRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { LANGUAGE_MODEL_ID } from \"~/shared/constants.js\";\nimport { LanguageNotFoundError, LanguagePersistenceError } from \"~/api/domain/errors.js\";\nimport type { Language } from \"~/api/domain/Language.js\";\n\nclass GetLanguageByCodeRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private getModel: GetModelUseCase.Interface,\n private listLatestEntries: ListLatestEntriesUseCase.Interface\n ) {}\n\n async execute(code: string): RepositoryAbstraction.Return {\n const modelResult = await this.getModel.execute(LANGUAGE_MODEL_ID);\n if (modelResult.isFail()) {\n return Result.fail(new LanguagePersistenceError(modelResult.error));\n }\n\n const model = modelResult.value;\n\n const listResult = await this.listLatestEntries.execute(model, {\n where: {\n values: {\n code\n }\n },\n limit: 1\n });\n\n if (listResult.isFail()) {\n return Result.fail(new LanguagePersistenceError(listResult.error));\n }\n\n const { entries } = listResult.value;\n\n if (entries.length === 0) {\n return Result.fail(new LanguageNotFoundError(code));\n }\n\n const entry = entries[0];\n\n const language: Language = {\n id: entry.entryId,\n name: entry.values.name,\n code: entry.values.code,\n direction: entry.values.direction,\n isDefault: entry.values.isDefault,\n enabled: entry.values.enabled\n };\n\n return Result.ok(language);\n }\n}\n\nexport const GetLanguageByCodeRepository = RepositoryAbstraction.createImplementation({\n implementation: GetLanguageByCodeRepositoryImpl,\n dependencies: [GetModelUseCase, ListLatestEntriesUseCase]\n});\n"],"names":["GetLanguageByCodeRepositoryImpl","getModel","listLatestEntries","code","modelResult","LANGUAGE_MODEL_ID","Result","LanguagePersistenceError","model","listResult","entries","LanguageNotFoundError","entry","language","GetLanguageByCodeRepository","RepositoryAbstraction","GetModelUseCase","ListLatestEntriesUseCase"],"mappings":";;;;;;AAQA,MAAMA;IACF,YACYC,QAAmC,EACnCC,iBAAqD,CAC/D;aAFUD,QAAQ,GAARA;aACAC,iBAAiB,GAAjBA;IACT;IAEH,MAAM,QAAQC,IAAY,EAAgC;QACtD,MAAMC,cAAc,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAACC;QAChD,IAAID,YAAY,MAAM,IAClB,OAAOE,OAAO,IAAI,CAAC,IAAIC,yBAAyBH,YAAY,KAAK;QAGrE,MAAMI,QAAQJ,YAAY,KAAK;QAE/B,MAAMK,aAAa,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAACD,OAAO;YAC3D,OAAO;gBACH,QAAQ;oBACJL;gBACJ;YACJ;YACA,OAAO;QACX;QAEA,IAAIM,WAAW,MAAM,IACjB,OAAOH,OAAO,IAAI,CAAC,IAAIC,yBAAyBE,WAAW,KAAK;QAGpE,MAAM,EAAEC,OAAO,EAAE,GAAGD,WAAW,KAAK;QAEpC,IAAIC,AAAmB,MAAnBA,QAAQ,MAAM,EACd,OAAOJ,OAAO,IAAI,CAAC,IAAIK,sBAAsBR;QAGjD,MAAMS,QAAQF,OAAO,CAAC,EAAE;QAExB,MAAMG,WAAqB;YACvB,IAAID,MAAM,OAAO;YACjB,MAAMA,MAAM,MAAM,CAAC,IAAI;YACvB,MAAMA,MAAM,MAAM,CAAC,IAAI;YACvB,WAAWA,MAAM,MAAM,CAAC,SAAS;YACjC,WAAWA,MAAM,MAAM,CAAC,SAAS;YACjC,SAASA,MAAM,MAAM,CAAC,OAAO;QACjC;QAEA,OAAON,OAAO,EAAE,CAACO;IACrB;AACJ;AAEO,MAAMC,0DAA8BC,4BAAAA,oBAA0C,CAAC;IAClF,gBAAgBf;IAChB,cAAc;QAACgB;QAAiBC;KAAyB;AAC7D"}
@@ -1,17 +1,20 @@
1
1
  import { createImplementation } from "@webiny/feature/api";
2
- import { GetLanguageByCodeUseCase as UseCaseAbstraction, GetLanguageByCodeRepository } from "./abstractions.js";
2
+ import { GetLanguageByCodeRepository, GetLanguageByCodeUseCase } from "./abstractions.js";
3
3
  class GetLanguageByCodeUseCaseImpl {
4
- constructor(repository) {
5
- this.repository = repository;
6
- }
7
- async execute(code) {
8
- return this.repository.execute(code);
9
- }
4
+ constructor(repository){
5
+ this.repository = repository;
6
+ }
7
+ async execute(code) {
8
+ return this.repository.execute(code);
9
+ }
10
10
  }
11
- export const GetLanguageByCodeUseCase = createImplementation({
12
- abstraction: UseCaseAbstraction,
13
- implementation: GetLanguageByCodeUseCaseImpl,
14
- dependencies: [GetLanguageByCodeRepository]
11
+ const GetLanguageByCodeUseCase_GetLanguageByCodeUseCase = createImplementation({
12
+ abstraction: GetLanguageByCodeUseCase,
13
+ implementation: GetLanguageByCodeUseCaseImpl,
14
+ dependencies: [
15
+ GetLanguageByCodeRepository
16
+ ]
15
17
  });
18
+ export { GetLanguageByCodeUseCase_GetLanguageByCodeUseCase as GetLanguageByCodeUseCase };
16
19
 
17
20
  //# sourceMappingURL=GetLanguageByCodeUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createImplementation","GetLanguageByCodeUseCase","UseCaseAbstraction","GetLanguageByCodeRepository","GetLanguageByCodeUseCaseImpl","constructor","repository","execute","code","abstraction","implementation","dependencies"],"sources":["GetLanguageByCodeUseCase.ts"],"sourcesContent":["import { createImplementation } from \"@webiny/feature/api\";\nimport {\n GetLanguageByCodeUseCase as UseCaseAbstraction,\n GetLanguageByCodeRepository\n} from \"./abstractions.js\";\n\nclass GetLanguageByCodeUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private repository: GetLanguageByCodeRepository.Interface) {}\n\n async execute(code: string): UseCaseAbstraction.Return {\n return this.repository.execute(code);\n }\n}\n\nexport const GetLanguageByCodeUseCase = createImplementation({\n abstraction: UseCaseAbstraction,\n implementation: GetLanguageByCodeUseCaseImpl,\n dependencies: [GetLanguageByCodeRepository]\n});\n"],"mappings":"AAAA,SAASA,oBAAoB,QAAQ,qBAAqB;AAC1D,SACIC,wBAAwB,IAAIC,kBAAkB,EAC9CC,2BAA2B;AAG/B,MAAMC,4BAA4B,CAAyC;EACvEC,WAAWA,CAASC,UAAiD,EAAE;IAAA,KAAnDA,UAAiD,GAAjDA,UAAiD;EAAG;EAExE,MAAMC,OAAOA,CAACC,IAAY,EAA6B;IACnD,OAAO,IAAI,CAACF,UAAU,CAACC,OAAO,CAACC,IAAI,CAAC;EACxC;AACJ;AAEA,OAAO,MAAMP,wBAAwB,GAAGD,oBAAoB,CAAC;EACzDS,WAAW,EAAEP,kBAAkB;EAC/BQ,cAAc,EAAEN,4BAA4B;EAC5CO,YAAY,EAAE,CAACR,2BAA2B;AAC9C,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"api/features/GetLanguageByCode/GetLanguageByCodeUseCase.js","sources":["../../../../src/api/features/GetLanguageByCode/GetLanguageByCodeUseCase.ts"],"sourcesContent":["import { createImplementation } from \"@webiny/feature/api\";\nimport {\n GetLanguageByCodeUseCase as UseCaseAbstraction,\n GetLanguageByCodeRepository\n} from \"./abstractions.js\";\n\nclass GetLanguageByCodeUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private repository: GetLanguageByCodeRepository.Interface) {}\n\n async execute(code: string): UseCaseAbstraction.Return {\n return this.repository.execute(code);\n }\n}\n\nexport const GetLanguageByCodeUseCase = createImplementation({\n abstraction: UseCaseAbstraction,\n implementation: GetLanguageByCodeUseCaseImpl,\n dependencies: [GetLanguageByCodeRepository]\n});\n"],"names":["GetLanguageByCodeUseCaseImpl","repository","code","GetLanguageByCodeUseCase","createImplementation","UseCaseAbstraction","GetLanguageByCodeRepository"],"mappings":";;AAMA,MAAMA;IACF,YAAoBC,UAAiD,CAAE;aAAnDA,UAAU,GAAVA;IAAoD;IAExE,MAAM,QAAQC,IAAY,EAA6B;QACnD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAACA;IACnC;AACJ;AAEO,MAAMC,oDAA2BC,qBAAqB;IACzD,aAAaC;IACb,gBAAgBL;IAChB,cAAc;QAACM;KAA4B;AAC/C"}
@@ -1,16 +1,6 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
-
3
- // ============================================================================
4
- // Repository Abstraction
5
- // ============================================================================
6
-
7
- export const GetLanguageByCodeRepository = createAbstraction("Languages/GetLanguageByCodeRepository");
8
-
9
- // ============================================================================
10
- // Use Case Abstraction
11
- // ============================================================================
12
-
13
- /** Get a language entry by its code. */
14
- export const GetLanguageByCodeUseCase = createAbstraction("Languages/GetLanguageByCodeUseCase");
2
+ const GetLanguageByCodeRepository = createAbstraction("Languages/GetLanguageByCodeRepository");
3
+ const GetLanguageByCodeUseCase = createAbstraction("Languages/GetLanguageByCodeUseCase");
4
+ export { GetLanguageByCodeRepository, GetLanguageByCodeUseCase };
15
5
 
16
6
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","GetLanguageByCodeRepository","GetLanguageByCodeUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { Language } from \"~/api/domain/Language.js\";\nimport type { LanguageNotFoundError, LanguagePersistenceError } from \"~/api/domain/errors.js\";\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IGetLanguageByCodeRepository {\n execute(code: string): Promise<Result<Language, RepositoryError>>;\n}\n\nexport interface IGetLanguageByCodeRepositoryErrors {\n notFound: LanguageNotFoundError;\n persistence: LanguagePersistenceError;\n}\n\ntype RepositoryError = IGetLanguageByCodeRepositoryErrors[keyof IGetLanguageByCodeRepositoryErrors];\n\nexport const GetLanguageByCodeRepository = createAbstraction<IGetLanguageByCodeRepository>(\n \"Languages/GetLanguageByCodeRepository\"\n);\n\nexport namespace GetLanguageByCodeRepository {\n export type Interface = IGetLanguageByCodeRepository;\n export type Return = Promise<Result<Language, RepositoryError>>;\n export type Error = RepositoryError;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IGetLanguageByCodeUseCase {\n execute(code: string): Promise<Result<Language, UseCaseError>>;\n}\n\nexport interface IGetLanguageByCodeUseCaseErrors {\n notFound: LanguageNotFoundError;\n persistence: LanguagePersistenceError;\n}\n\ntype UseCaseError = IGetLanguageByCodeUseCaseErrors[keyof IGetLanguageByCodeUseCaseErrors];\n\n/** Get a language entry by its code. */\nexport const GetLanguageByCodeUseCase = createAbstraction<IGetLanguageByCodeUseCase>(\n \"Languages/GetLanguageByCodeUseCase\"\n);\n\nexport namespace GetLanguageByCodeUseCase {\n export type Interface = IGetLanguageByCodeUseCase;\n export type Return = Promise<Result<Language, UseCaseError>>;\n export type Error = UseCaseError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAIpE;AACA;AACA;;AAaA,OAAO,MAAMC,2BAA2B,GAAGD,iBAAiB,CACxD,uCACJ,CAAC;;AAQD;AACA;AACA;;AAaA;AACA,OAAO,MAAME,wBAAwB,GAAGF,iBAAiB,CACrD,oCACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"api/features/GetLanguageByCode/abstractions.js","sources":["../../../../src/api/features/GetLanguageByCode/abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { Language } from \"~/api/domain/Language.js\";\nimport type { LanguageNotFoundError, LanguagePersistenceError } from \"~/api/domain/errors.js\";\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IGetLanguageByCodeRepository {\n execute(code: string): Promise<Result<Language, RepositoryError>>;\n}\n\nexport interface IGetLanguageByCodeRepositoryErrors {\n notFound: LanguageNotFoundError;\n persistence: LanguagePersistenceError;\n}\n\ntype RepositoryError = IGetLanguageByCodeRepositoryErrors[keyof IGetLanguageByCodeRepositoryErrors];\n\nexport const GetLanguageByCodeRepository = createAbstraction<IGetLanguageByCodeRepository>(\n \"Languages/GetLanguageByCodeRepository\"\n);\n\nexport namespace GetLanguageByCodeRepository {\n export type Interface = IGetLanguageByCodeRepository;\n export type Return = Promise<Result<Language, RepositoryError>>;\n export type Error = RepositoryError;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IGetLanguageByCodeUseCase {\n execute(code: string): Promise<Result<Language, UseCaseError>>;\n}\n\nexport interface IGetLanguageByCodeUseCaseErrors {\n notFound: LanguageNotFoundError;\n persistence: LanguagePersistenceError;\n}\n\ntype UseCaseError = IGetLanguageByCodeUseCaseErrors[keyof IGetLanguageByCodeUseCaseErrors];\n\n/** Get a language entry by its code. */\nexport const GetLanguageByCodeUseCase = createAbstraction<IGetLanguageByCodeUseCase>(\n \"Languages/GetLanguageByCodeUseCase\"\n);\n\nexport namespace GetLanguageByCodeUseCase {\n export type Interface = IGetLanguageByCodeUseCase;\n export type Return = Promise<Result<Language, UseCaseError>>;\n export type Error = UseCaseError;\n}\n"],"names":["GetLanguageByCodeRepository","createAbstraction","GetLanguageByCodeUseCase"],"mappings":";AAmBO,MAAMA,8BAA8BC,kBACvC;AAyBG,MAAMC,2BAA2BD,kBACpC"}
@@ -1,12 +1,13 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { GetLanguageByCodeRepository } from "./GetLanguageByCodeRepository.js";
3
3
  import { GetLanguageByCodeUseCase } from "./GetLanguageByCodeUseCase.js";
4
- export const GetLanguageByCodeFeature = createFeature({
5
- name: "Languages/GetLanguageByCode",
6
- register(container) {
7
- container.register(GetLanguageByCodeRepository).inSingletonScope();
8
- container.register(GetLanguageByCodeUseCase);
9
- }
4
+ const GetLanguageByCodeFeature = createFeature({
5
+ name: "Languages/GetLanguageByCode",
6
+ register (container) {
7
+ container.register(GetLanguageByCodeRepository).inSingletonScope();
8
+ container.register(GetLanguageByCodeUseCase);
9
+ }
10
10
  });
11
+ export { GetLanguageByCodeFeature };
11
12
 
12
13
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","GetLanguageByCodeRepository","GetLanguageByCodeUseCase","GetLanguageByCodeFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetLanguageByCodeRepository } from \"./GetLanguageByCodeRepository.js\";\nimport { GetLanguageByCodeUseCase } from \"./GetLanguageByCodeUseCase.js\";\n\nexport const GetLanguageByCodeFeature = createFeature({\n name: \"Languages/GetLanguageByCode\",\n register(container) {\n container.register(GetLanguageByCodeRepository).inSingletonScope();\n container.register(GetLanguageByCodeUseCase);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,2BAA2B;AACpC,SAASC,wBAAwB;AAEjC,OAAO,MAAMC,wBAAwB,GAAGH,aAAa,CAAC;EAClDI,IAAI,EAAE,6BAA6B;EACnCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACJ,2BAA2B,CAAC,CAACM,gBAAgB,CAAC,CAAC;IAClED,SAAS,CAACD,QAAQ,CAACH,wBAAwB,CAAC;EAChD;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"api/features/GetLanguageByCode/feature.js","sources":["../../../../src/api/features/GetLanguageByCode/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetLanguageByCodeRepository } from \"./GetLanguageByCodeRepository.js\";\nimport { GetLanguageByCodeUseCase } from \"./GetLanguageByCodeUseCase.js\";\n\nexport const GetLanguageByCodeFeature = createFeature({\n name: \"Languages/GetLanguageByCode\",\n register(container) {\n container.register(GetLanguageByCodeRepository).inSingletonScope();\n container.register(GetLanguageByCodeUseCase);\n }\n});\n"],"names":["GetLanguageByCodeFeature","createFeature","container","GetLanguageByCodeRepository","GetLanguageByCodeUseCase"],"mappings":";;;AAIO,MAAMA,2BAA2BC,cAAc;IAClD,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,6BAA6B,gBAAgB;QAChED,UAAU,QAAQ,CAACE;IACvB;AACJ"}
@@ -1,3 +1 @@
1
1
  export { GetLanguageByCodeUseCase } from "./abstractions.js";
2
-
3
- //# sourceMappingURL=index.js.map
@@ -1,46 +1,48 @@
1
1
  import { Result } from "@webiny/feature/api";
2
2
  import { GetModelUseCase } from "@webiny/api-headless-cms/features/contentModel/GetModel/abstractions.js";
3
3
  import { ListLatestEntriesUseCase } from "@webiny/api-headless-cms/features/contentEntry/ListEntries/abstractions.js";
4
- import { ListLanguagesRepository as RepositoryAbstraction } from "./abstractions.js";
4
+ import { ListLanguagesRepository } from "./abstractions.js";
5
5
  import { LANGUAGE_MODEL_ID } from "../../../shared/constants.js";
6
6
  import { LanguagePersistenceError } from "../../domain/errors.js";
7
7
  class ListLanguagesRepositoryImpl {
8
- constructor(getModel, listLatestEntries) {
9
- this.getModel = getModel;
10
- this.listLatestEntries = listLatestEntries;
11
- }
12
- async execute() {
13
- const modelResult = await this.getModel.execute(LANGUAGE_MODEL_ID);
14
- if (modelResult.isFail()) {
15
- return Result.fail(new LanguagePersistenceError(modelResult.error));
8
+ constructor(getModel, listLatestEntries){
9
+ this.getModel = getModel;
10
+ this.listLatestEntries = listLatestEntries;
16
11
  }
17
- const model = modelResult.value;
18
- const listResult = await this.listLatestEntries.execute(model, {
19
- limit: 1000,
20
- where: {
21
- values: {
22
- enabled: true
23
- }
24
- },
25
- sort: ["values_name_ASC"]
26
- });
27
- if (listResult.isFail()) {
28
- return Result.fail(new LanguagePersistenceError(listResult.error));
12
+ async execute() {
13
+ const modelResult = await this.getModel.execute(LANGUAGE_MODEL_ID);
14
+ if (modelResult.isFail()) return Result.fail(new LanguagePersistenceError(modelResult.error));
15
+ const model = modelResult.value;
16
+ const listResult = await this.listLatestEntries.execute(model, {
17
+ limit: 1000,
18
+ where: {
19
+ values: {
20
+ enabled: true
21
+ }
22
+ },
23
+ sort: [
24
+ "values_name_ASC"
25
+ ]
26
+ });
27
+ if (listResult.isFail()) return Result.fail(new LanguagePersistenceError(listResult.error));
28
+ const languages = listResult.value.entries.map((entry)=>({
29
+ id: entry.entryId,
30
+ name: entry.values.name,
31
+ code: entry.values.code,
32
+ direction: entry.values.direction,
33
+ isDefault: entry.values.isDefault,
34
+ enabled: entry.values.enabled
35
+ }));
36
+ return Result.ok(languages);
29
37
  }
30
- const languages = listResult.value.entries.map(entry => ({
31
- id: entry.entryId,
32
- name: entry.values.name,
33
- code: entry.values.code,
34
- direction: entry.values.direction,
35
- isDefault: entry.values.isDefault,
36
- enabled: entry.values.enabled
37
- }));
38
- return Result.ok(languages);
39
- }
40
38
  }
41
- export const ListLanguagesRepository = RepositoryAbstraction.createImplementation({
42
- implementation: ListLanguagesRepositoryImpl,
43
- dependencies: [GetModelUseCase, ListLatestEntriesUseCase]
39
+ const ListLanguagesRepository_ListLanguagesRepository = ListLanguagesRepository.createImplementation({
40
+ implementation: ListLanguagesRepositoryImpl,
41
+ dependencies: [
42
+ GetModelUseCase,
43
+ ListLatestEntriesUseCase
44
+ ]
44
45
  });
46
+ export { ListLanguagesRepository_ListLanguagesRepository as ListLanguagesRepository };
45
47
 
46
48
  //# sourceMappingURL=ListLanguagesRepository.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","GetModelUseCase","ListLatestEntriesUseCase","ListLanguagesRepository","RepositoryAbstraction","LANGUAGE_MODEL_ID","LanguagePersistenceError","ListLanguagesRepositoryImpl","constructor","getModel","listLatestEntries","execute","modelResult","isFail","fail","error","model","value","listResult","limit","where","values","enabled","sort","languages","entries","map","entry","id","entryId","name","code","direction","isDefault","ok","createImplementation","implementation","dependencies"],"sources":["ListLanguagesRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/abstractions.js\";\nimport { ListLatestEntriesUseCase } from \"@webiny/api-headless-cms/features/contentEntry/ListEntries/abstractions.js\";\nimport { ListLanguagesRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { LANGUAGE_MODEL_ID } from \"~/shared/constants.js\";\nimport { LanguagePersistenceError } from \"~/api/domain/errors.js\";\nimport type { Language } from \"~/api/domain/Language.js\";\n\nclass ListLanguagesRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private getModel: GetModelUseCase.Interface,\n private listLatestEntries: ListLatestEntriesUseCase.Interface\n ) {}\n\n async execute(): RepositoryAbstraction.Return {\n const modelResult = await this.getModel.execute(LANGUAGE_MODEL_ID);\n if (modelResult.isFail()) {\n return Result.fail(new LanguagePersistenceError(modelResult.error));\n }\n\n const model = modelResult.value;\n\n const listResult = await this.listLatestEntries.execute(model, {\n limit: 1000,\n where: {\n values: {\n enabled: true\n }\n },\n sort: [\"values_name_ASC\"]\n });\n\n if (listResult.isFail()) {\n return Result.fail(new LanguagePersistenceError(listResult.error));\n }\n\n const languages: Language[] = listResult.value.entries.map(entry => ({\n id: entry.entryId,\n name: entry.values.name,\n code: entry.values.code,\n direction: entry.values.direction,\n isDefault: entry.values.isDefault,\n enabled: entry.values.enabled\n }));\n\n return Result.ok(languages);\n }\n}\n\nexport const ListLanguagesRepository = RepositoryAbstraction.createImplementation({\n implementation: ListLanguagesRepositoryImpl,\n dependencies: [GetModelUseCase, ListLatestEntriesUseCase]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,eAAe,QAAQ,yEAAyE;AACzG,SAASC,wBAAwB,QAAQ,4EAA4E;AACrH,SAASC,uBAAuB,IAAIC,qBAAqB;AACzD,SAASC,iBAAiB;AAC1B,SAASC,wBAAwB;AAGjC,MAAMC,2BAA2B,CAA4C;EACzEC,WAAWA,CACCC,QAAmC,EACnCC,iBAAqD,EAC/D;IAAA,KAFUD,QAAmC,GAAnCA,QAAmC;IAAA,KACnCC,iBAAqD,GAArDA,iBAAqD;EAC9D;EAEH,MAAMC,OAAOA,CAAA,EAAiC;IAC1C,MAAMC,WAAW,GAAG,MAAM,IAAI,CAACH,QAAQ,CAACE,OAAO,CAACN,iBAAiB,CAAC;IAClE,IAAIO,WAAW,CAACC,MAAM,CAAC,CAAC,EAAE;MACtB,OAAOb,MAAM,CAACc,IAAI,CAAC,IAAIR,wBAAwB,CAACM,WAAW,CAACG,KAAK,CAAC,CAAC;IACvE;IAEA,MAAMC,KAAK,GAAGJ,WAAW,CAACK,KAAK;IAE/B,MAAMC,UAAU,GAAG,MAAM,IAAI,CAACR,iBAAiB,CAACC,OAAO,CAACK,KAAK,EAAE;MAC3DG,KAAK,EAAE,IAAI;MACXC,KAAK,EAAE;QACHC,MAAM,EAAE;UACJC,OAAO,EAAE;QACb;MACJ,CAAC;MACDC,IAAI,EAAE,CAAC,iBAAiB;IAC5B,CAAC,CAAC;IAEF,IAAIL,UAAU,CAACL,MAAM,CAAC,CAAC,EAAE;MACrB,OAAOb,MAAM,CAACc,IAAI,CAAC,IAAIR,wBAAwB,CAACY,UAAU,CAACH,KAAK,CAAC,CAAC;IACtE;IAEA,MAAMS,SAAqB,GAAGN,UAAU,CAACD,KAAK,CAACQ,OAAO,CAACC,GAAG,CAACC,KAAK,KAAK;MACjEC,EAAE,EAAED,KAAK,CAACE,OAAO;MACjBC,IAAI,EAAEH,KAAK,CAACN,MAAM,CAACS,IAAI;MACvBC,IAAI,EAAEJ,KAAK,CAACN,MAAM,CAACU,IAAI;MACvBC,SAAS,EAAEL,KAAK,CAACN,MAAM,CAACW,SAAS;MACjCC,SAAS,EAAEN,KAAK,CAACN,MAAM,CAACY,SAAS;MACjCX,OAAO,EAAEK,KAAK,CAACN,MAAM,CAACC;IAC1B,CAAC,CAAC,CAAC;IAEH,OAAOtB,MAAM,CAACkC,EAAE,CAACV,SAAS,CAAC;EAC/B;AACJ;AAEA,OAAO,MAAMrB,uBAAuB,GAAGC,qBAAqB,CAAC+B,oBAAoB,CAAC;EAC9EC,cAAc,EAAE7B,2BAA2B;EAC3C8B,YAAY,EAAE,CAACpC,eAAe,EAAEC,wBAAwB;AAC5D,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"api/features/ListLanguages/ListLanguagesRepository.js","sources":["../../../../src/api/features/ListLanguages/ListLanguagesRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/abstractions.js\";\nimport { ListLatestEntriesUseCase } from \"@webiny/api-headless-cms/features/contentEntry/ListEntries/abstractions.js\";\nimport { ListLanguagesRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { LANGUAGE_MODEL_ID } from \"~/shared/constants.js\";\nimport { LanguagePersistenceError } from \"~/api/domain/errors.js\";\nimport type { Language } from \"~/api/domain/Language.js\";\n\nclass ListLanguagesRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private getModel: GetModelUseCase.Interface,\n private listLatestEntries: ListLatestEntriesUseCase.Interface\n ) {}\n\n async execute(): RepositoryAbstraction.Return {\n const modelResult = await this.getModel.execute(LANGUAGE_MODEL_ID);\n if (modelResult.isFail()) {\n return Result.fail(new LanguagePersistenceError(modelResult.error));\n }\n\n const model = modelResult.value;\n\n const listResult = await this.listLatestEntries.execute(model, {\n limit: 1000,\n where: {\n values: {\n enabled: true\n }\n },\n sort: [\"values_name_ASC\"]\n });\n\n if (listResult.isFail()) {\n return Result.fail(new LanguagePersistenceError(listResult.error));\n }\n\n const languages: Language[] = listResult.value.entries.map(entry => ({\n id: entry.entryId,\n name: entry.values.name,\n code: entry.values.code,\n direction: entry.values.direction,\n isDefault: entry.values.isDefault,\n enabled: entry.values.enabled\n }));\n\n return Result.ok(languages);\n }\n}\n\nexport const ListLanguagesRepository = RepositoryAbstraction.createImplementation({\n implementation: ListLanguagesRepositoryImpl,\n dependencies: [GetModelUseCase, ListLatestEntriesUseCase]\n});\n"],"names":["ListLanguagesRepositoryImpl","getModel","listLatestEntries","modelResult","LANGUAGE_MODEL_ID","Result","LanguagePersistenceError","model","listResult","languages","entry","ListLanguagesRepository","RepositoryAbstraction","GetModelUseCase","ListLatestEntriesUseCase"],"mappings":";;;;;;AAQA,MAAMA;IACF,YACYC,QAAmC,EACnCC,iBAAqD,CAC/D;aAFUD,QAAQ,GAARA;aACAC,iBAAiB,GAAjBA;IACT;IAEH,MAAM,UAAwC;QAC1C,MAAMC,cAAc,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAACC;QAChD,IAAID,YAAY,MAAM,IAClB,OAAOE,OAAO,IAAI,CAAC,IAAIC,yBAAyBH,YAAY,KAAK;QAGrE,MAAMI,QAAQJ,YAAY,KAAK;QAE/B,MAAMK,aAAa,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAACD,OAAO;YAC3D,OAAO;YACP,OAAO;gBACH,QAAQ;oBACJ,SAAS;gBACb;YACJ;YACA,MAAM;gBAAC;aAAkB;QAC7B;QAEA,IAAIC,WAAW,MAAM,IACjB,OAAOH,OAAO,IAAI,CAAC,IAAIC,yBAAyBE,WAAW,KAAK;QAGpE,MAAMC,YAAwBD,WAAW,KAAK,CAAC,OAAO,CAAC,GAAG,CAACE,CAAAA,QAAU;gBACjE,IAAIA,MAAM,OAAO;gBACjB,MAAMA,MAAM,MAAM,CAAC,IAAI;gBACvB,MAAMA,MAAM,MAAM,CAAC,IAAI;gBACvB,WAAWA,MAAM,MAAM,CAAC,SAAS;gBACjC,WAAWA,MAAM,MAAM,CAAC,SAAS;gBACjC,SAASA,MAAM,MAAM,CAAC,OAAO;YACjC;QAEA,OAAOL,OAAO,EAAE,CAACI;IACrB;AACJ;AAEO,MAAME,kDAA0BC,wBAAAA,oBAA0C,CAAC;IAC9E,gBAAgBZ;IAChB,cAAc;QAACa;QAAiBC;KAAyB;AAC7D"}
@@ -1,17 +1,20 @@
1
1
  import { createImplementation } from "@webiny/feature/api";
2
- import { ListLanguagesUseCase as UseCaseAbstraction, ListLanguagesRepository } from "./abstractions.js";
2
+ import { ListLanguagesRepository, ListLanguagesUseCase } from "./abstractions.js";
3
3
  class ListLanguagesUseCaseImpl {
4
- constructor(repository) {
5
- this.repository = repository;
6
- }
7
- async execute() {
8
- return this.repository.execute();
9
- }
4
+ constructor(repository){
5
+ this.repository = repository;
6
+ }
7
+ async execute() {
8
+ return this.repository.execute();
9
+ }
10
10
  }
11
- export const ListLanguagesUseCase = createImplementation({
12
- abstraction: UseCaseAbstraction,
13
- implementation: ListLanguagesUseCaseImpl,
14
- dependencies: [ListLanguagesRepository]
11
+ const ListLanguagesUseCase_ListLanguagesUseCase = createImplementation({
12
+ abstraction: ListLanguagesUseCase,
13
+ implementation: ListLanguagesUseCaseImpl,
14
+ dependencies: [
15
+ ListLanguagesRepository
16
+ ]
15
17
  });
18
+ export { ListLanguagesUseCase_ListLanguagesUseCase as ListLanguagesUseCase };
16
19
 
17
20
  //# sourceMappingURL=ListLanguagesUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createImplementation","ListLanguagesUseCase","UseCaseAbstraction","ListLanguagesRepository","ListLanguagesUseCaseImpl","constructor","repository","execute","abstraction","implementation","dependencies"],"sources":["ListLanguagesUseCase.ts"],"sourcesContent":["import { createImplementation } from \"@webiny/feature/api\";\nimport {\n ListLanguagesUseCase as UseCaseAbstraction,\n ListLanguagesRepository\n} from \"./abstractions.js\";\n\nclass ListLanguagesUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private repository: ListLanguagesRepository.Interface) {}\n\n async execute(): UseCaseAbstraction.Return {\n return this.repository.execute();\n }\n}\n\nexport const ListLanguagesUseCase = createImplementation({\n abstraction: UseCaseAbstraction,\n implementation: ListLanguagesUseCaseImpl,\n dependencies: [ListLanguagesRepository]\n});\n"],"mappings":"AAAA,SAASA,oBAAoB,QAAQ,qBAAqB;AAC1D,SACIC,oBAAoB,IAAIC,kBAAkB,EAC1CC,uBAAuB;AAG3B,MAAMC,wBAAwB,CAAyC;EACnEC,WAAWA,CAASC,UAA6C,EAAE;IAAA,KAA/CA,UAA6C,GAA7CA,UAA6C;EAAG;EAEpE,MAAMC,OAAOA,CAAA,EAA8B;IACvC,OAAO,IAAI,CAACD,UAAU,CAACC,OAAO,CAAC,CAAC;EACpC;AACJ;AAEA,OAAO,MAAMN,oBAAoB,GAAGD,oBAAoB,CAAC;EACrDQ,WAAW,EAAEN,kBAAkB;EAC/BO,cAAc,EAAEL,wBAAwB;EACxCM,YAAY,EAAE,CAACP,uBAAuB;AAC1C,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"api/features/ListLanguages/ListLanguagesUseCase.js","sources":["../../../../src/api/features/ListLanguages/ListLanguagesUseCase.ts"],"sourcesContent":["import { createImplementation } from \"@webiny/feature/api\";\nimport {\n ListLanguagesUseCase as UseCaseAbstraction,\n ListLanguagesRepository\n} from \"./abstractions.js\";\n\nclass ListLanguagesUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private repository: ListLanguagesRepository.Interface) {}\n\n async execute(): UseCaseAbstraction.Return {\n return this.repository.execute();\n }\n}\n\nexport const ListLanguagesUseCase = createImplementation({\n abstraction: UseCaseAbstraction,\n implementation: ListLanguagesUseCaseImpl,\n dependencies: [ListLanguagesRepository]\n});\n"],"names":["ListLanguagesUseCaseImpl","repository","ListLanguagesUseCase","createImplementation","UseCaseAbstraction","ListLanguagesRepository"],"mappings":";;AAMA,MAAMA;IACF,YAAoBC,UAA6C,CAAE;aAA/CA,UAAU,GAAVA;IAAgD;IAEpE,MAAM,UAAqC;QACvC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO;IAClC;AACJ;AAEO,MAAMC,4CAAuBC,qBAAqB;IACrD,aAAaC;IACb,gBAAgBJ;IAChB,cAAc;QAACK;KAAwB;AAC3C"}
@@ -1,16 +1,6 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
-
3
- // ============================================================================
4
- // Repository Abstraction
5
- // ============================================================================
6
-
7
- export const ListLanguagesRepository = createAbstraction("Languages/ListLanguagesRepository");
8
-
9
- // ============================================================================
10
- // Use Case Abstraction
11
- // ============================================================================
12
-
13
- /** List all language entries. */
14
- export const ListLanguagesUseCase = createAbstraction("Languages/ListLanguagesUseCase");
2
+ const ListLanguagesRepository = createAbstraction("Languages/ListLanguagesRepository");
3
+ const ListLanguagesUseCase = createAbstraction("Languages/ListLanguagesUseCase");
4
+ export { ListLanguagesRepository, ListLanguagesUseCase };
15
5
 
16
6
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","ListLanguagesRepository","ListLanguagesUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { Language } from \"~/api/domain/Language.js\";\nimport type { LanguagePersistenceError } from \"~/api/domain/errors.js\";\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IListLanguagesRepository {\n execute(): Promise<Result<Language[], RepositoryError>>;\n}\n\nexport interface IListLanguagesRepositoryErrors {\n persistence: LanguagePersistenceError;\n}\n\ntype RepositoryError = IListLanguagesRepositoryErrors[keyof IListLanguagesRepositoryErrors];\n\nexport const ListLanguagesRepository = createAbstraction<IListLanguagesRepository>(\n \"Languages/ListLanguagesRepository\"\n);\n\nexport namespace ListLanguagesRepository {\n export type Interface = IListLanguagesRepository;\n export type Return = Promise<Result<Language[], RepositoryError>>;\n export type Error = RepositoryError;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IListLanguagesUseCase {\n execute(): Promise<Result<Language[], UseCaseError>>;\n}\n\nexport interface IListLanguagesUseCaseErrors {\n persistence: LanguagePersistenceError;\n}\n\ntype UseCaseError = IListLanguagesUseCaseErrors[keyof IListLanguagesUseCaseErrors];\n\n/** List all language entries. */\nexport const ListLanguagesUseCase = createAbstraction<IListLanguagesUseCase>(\n \"Languages/ListLanguagesUseCase\"\n);\n\nexport namespace ListLanguagesUseCase {\n export type Interface = IListLanguagesUseCase;\n export type Return = Promise<Result<Language[], UseCaseError>>;\n export type Error = UseCaseError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAIpE;AACA;AACA;;AAYA,OAAO,MAAMC,uBAAuB,GAAGD,iBAAiB,CACpD,mCACJ,CAAC;;AAQD;AACA;AACA;;AAYA;AACA,OAAO,MAAME,oBAAoB,GAAGF,iBAAiB,CACjD,gCACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"api/features/ListLanguages/abstractions.js","sources":["../../../../src/api/features/ListLanguages/abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { Language } from \"~/api/domain/Language.js\";\nimport type { LanguagePersistenceError } from \"~/api/domain/errors.js\";\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IListLanguagesRepository {\n execute(): Promise<Result<Language[], RepositoryError>>;\n}\n\nexport interface IListLanguagesRepositoryErrors {\n persistence: LanguagePersistenceError;\n}\n\ntype RepositoryError = IListLanguagesRepositoryErrors[keyof IListLanguagesRepositoryErrors];\n\nexport const ListLanguagesRepository = createAbstraction<IListLanguagesRepository>(\n \"Languages/ListLanguagesRepository\"\n);\n\nexport namespace ListLanguagesRepository {\n export type Interface = IListLanguagesRepository;\n export type Return = Promise<Result<Language[], RepositoryError>>;\n export type Error = RepositoryError;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IListLanguagesUseCase {\n execute(): Promise<Result<Language[], UseCaseError>>;\n}\n\nexport interface IListLanguagesUseCaseErrors {\n persistence: LanguagePersistenceError;\n}\n\ntype UseCaseError = IListLanguagesUseCaseErrors[keyof IListLanguagesUseCaseErrors];\n\n/** List all language entries. */\nexport const ListLanguagesUseCase = createAbstraction<IListLanguagesUseCase>(\n \"Languages/ListLanguagesUseCase\"\n);\n\nexport namespace ListLanguagesUseCase {\n export type Interface = IListLanguagesUseCase;\n export type Return = Promise<Result<Language[], UseCaseError>>;\n export type Error = UseCaseError;\n}\n"],"names":["ListLanguagesRepository","createAbstraction","ListLanguagesUseCase"],"mappings":";AAkBO,MAAMA,0BAA0BC,kBACnC;AAwBG,MAAMC,uBAAuBD,kBAChC"}