@wix/bex-core 2.204.0 → 2.206.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 (89) hide show
  1. package/dist/cjs/assets/locale/messages_cs.json +1 -1
  2. package/dist/cjs/assets/locale/messages_de.json +1 -1
  3. package/dist/cjs/assets/locale/messages_fr.json +1 -1
  4. package/dist/cjs/assets/locale/messages_ko.json +1 -1
  5. package/dist/cjs/assets/locale/messages_pt.json +1 -1
  6. package/dist/cjs/hooks/useAmbassadorCollection.js +1 -3
  7. package/dist/cjs/hooks/useAmbassadorCollection.js.map +1 -1
  8. package/dist/cjs/model/wixPatternsEssentials.js.map +1 -1
  9. package/dist/cjs/services/DataExtensionService/createDataExtensionSchemaErrors.js +21 -23
  10. package/dist/cjs/services/DataExtensionService/createDataExtensionSchemaErrors.js.map +1 -1
  11. package/dist/cjs/services/DataExtensionService/dataExtensionService.js +7 -13
  12. package/dist/cjs/services/DataExtensionService/dataExtensionService.js.map +1 -1
  13. package/dist/cjs/services/DataExtensionService/updateDataExtensionSchemaErrors.js +23 -25
  14. package/dist/cjs/services/DataExtensionService/updateDataExtensionSchemaErrors.js.map +1 -1
  15. package/dist/cjs/services/tagsService/createTagErrors.js +25 -27
  16. package/dist/cjs/services/tagsService/createTagErrors.js.map +1 -1
  17. package/dist/cjs/services/tagsService/tagsService.js +6 -16
  18. package/dist/cjs/services/tagsService/tagsService.js.map +1 -1
  19. package/dist/cjs/state/AppsState.js +1 -3
  20. package/dist/cjs/state/AppsState.js.map +1 -1
  21. package/dist/cjs/state/CustomFieldModalState.js +1 -1
  22. package/dist/cjs/state/CustomFieldModalState.js.map +1 -1
  23. package/dist/cjs/state/ExportState/ExportState.js +11 -6
  24. package/dist/cjs/state/ExportState/ExportState.js.map +1 -1
  25. package/dist/cjs/state/ExportState/commonExportAsyncJobErrors.js.map +1 -1
  26. package/dist/cjs/state/ExportState/createExportAsyncJobErrors.js +8 -16
  27. package/dist/cjs/state/ExportState/createExportAsyncJobErrors.js.map +1 -1
  28. package/dist/cjs/state/ExportState/getExportAsyncJobErrors.js +15 -23
  29. package/dist/cjs/state/ExportState/getExportAsyncJobErrors.js.map +1 -1
  30. package/dist/cjs/state/TagsState/TagsManagementState.js +2 -2
  31. package/dist/cjs/state/TagsState/TagsManagementState.js.map +1 -1
  32. package/dist/cjs/state/WixPatternsContainer.js.map +1 -1
  33. package/dist/cjs/testkit/WixPatternsContainer.driver.js +1 -1
  34. package/dist/cjs/testkit/WixPatternsContainer.driver.js.map +1 -1
  35. package/dist/esm/assets/locale/messages_cs.json +1 -1
  36. package/dist/esm/assets/locale/messages_de.json +1 -1
  37. package/dist/esm/assets/locale/messages_fr.json +1 -1
  38. package/dist/esm/assets/locale/messages_ko.json +1 -1
  39. package/dist/esm/assets/locale/messages_pt.json +1 -1
  40. package/dist/esm/hooks/useAmbassadorCollection.js +1 -1
  41. package/dist/esm/hooks/useAmbassadorCollection.js.map +1 -1
  42. package/dist/esm/services/DataExtensionService/createDataExtensionSchemaErrors.js +21 -23
  43. package/dist/esm/services/DataExtensionService/createDataExtensionSchemaErrors.js.map +1 -1
  44. package/dist/esm/services/DataExtensionService/dataExtensionService.js +7 -11
  45. package/dist/esm/services/DataExtensionService/dataExtensionService.js.map +1 -1
  46. package/dist/esm/services/DataExtensionService/updateDataExtensionSchemaErrors.js +23 -25
  47. package/dist/esm/services/DataExtensionService/updateDataExtensionSchemaErrors.js.map +1 -1
  48. package/dist/esm/services/tagsService/createTagErrors.js +28 -30
  49. package/dist/esm/services/tagsService/createTagErrors.js.map +1 -1
  50. package/dist/esm/services/tagsService/tagsService.js +6 -6
  51. package/dist/esm/services/tagsService/tagsService.js.map +1 -1
  52. package/dist/esm/state/AppsState.js +1 -1
  53. package/dist/esm/state/AppsState.js.map +1 -1
  54. package/dist/esm/state/CustomFieldModalState.js +2 -2
  55. package/dist/esm/state/CustomFieldModalState.js.map +1 -1
  56. package/dist/esm/state/ExportState/ExportState.js +10 -5
  57. package/dist/esm/state/ExportState/ExportState.js.map +1 -1
  58. package/dist/esm/state/ExportState/commonExportAsyncJobErrors.js.map +1 -1
  59. package/dist/esm/state/ExportState/createExportAsyncJobErrors.js +8 -14
  60. package/dist/esm/state/ExportState/createExportAsyncJobErrors.js.map +1 -1
  61. package/dist/esm/state/ExportState/getExportAsyncJobErrors.js +15 -21
  62. package/dist/esm/state/ExportState/getExportAsyncJobErrors.js.map +1 -1
  63. package/dist/esm/state/TagsState/TagsManagementState.js +3 -3
  64. package/dist/esm/state/TagsState/TagsManagementState.js.map +1 -1
  65. package/dist/esm/state/WixPatternsContainer.js.map +1 -1
  66. package/dist/esm/testkit/WixPatternsContainer.driver.js +1 -1
  67. package/dist/esm/testkit/WixPatternsContainer.driver.js.map +1 -1
  68. package/dist/types/model/wixPatternsEssentials.d.ts +5 -5
  69. package/dist/types/model/wixPatternsEssentials.d.ts.map +1 -1
  70. package/dist/types/services/DataExtensionService/createDataExtensionSchemaErrors.d.ts +3 -2
  71. package/dist/types/services/DataExtensionService/createDataExtensionSchemaErrors.d.ts.map +1 -1
  72. package/dist/types/services/DataExtensionService/dataExtensionService.d.ts.map +1 -1
  73. package/dist/types/services/DataExtensionService/updateDataExtensionSchemaErrors.d.ts +3 -2
  74. package/dist/types/services/DataExtensionService/updateDataExtensionSchemaErrors.d.ts.map +1 -1
  75. package/dist/types/services/tagsService/createTagErrors.d.ts +3 -3
  76. package/dist/types/services/tagsService/createTagErrors.d.ts.map +1 -1
  77. package/dist/types/services/tagsService/tagsService.d.ts +7 -4
  78. package/dist/types/services/tagsService/tagsService.d.ts.map +1 -1
  79. package/dist/types/state/ExportState/ExportState.d.ts.map +1 -1
  80. package/dist/types/state/ExportState/commonExportAsyncJobErrors.d.ts +2 -2
  81. package/dist/types/state/ExportState/commonExportAsyncJobErrors.d.ts.map +1 -1
  82. package/dist/types/state/ExportState/createExportAsyncJobErrors.d.ts +3 -3
  83. package/dist/types/state/ExportState/createExportAsyncJobErrors.d.ts.map +1 -1
  84. package/dist/types/state/ExportState/getExportAsyncJobErrors.d.ts +3 -3
  85. package/dist/types/state/ExportState/getExportAsyncJobErrors.d.ts.map +1 -1
  86. package/dist/types/state/TagsState/TagsManagementState.d.ts +4 -3
  87. package/dist/types/state/TagsState/TagsManagementState.d.ts.map +1 -1
  88. package/dist/types/state/WixPatternsContainer.d.ts.map +1 -1
  89. package/package.json +8 -4
@@ -481,7 +481,7 @@
481
481
  "cairo.tags.bulkItemUpdate.toast.success": "Tagy byly aktualizovány.",
482
482
  "cairo.customFields.maxFields": "Můžete přidat až 10 vlastních polí.",
483
483
  "cairo.offline": "Momentálně jste offline.",
484
- "cairo.table.custom-columns.dragAndDrop.search-placeholder": "Search columns...",
484
+ "cairo.table.custom-columns.dragAndDrop.search-placeholder": "Hledat sloupce...",
485
485
  "cairo.export.leaveSiteTitle": "Opustit web?",
486
486
  "cairo.customFields.editCustomField.save.CTA": "Uložit",
487
487
  "cairo.customFields.manageFields.title": "Spravovat vlastní pole",
@@ -481,7 +481,7 @@
481
481
  "cairo.tags.bulkItemUpdate.toast.success": "Tags wurden aktualisiert.",
482
482
  "cairo.customFields.maxFields": "Du kannst bis zu 10 benutzerdefinierte Felder hinzufügen.",
483
483
  "cairo.offline": "Du bist zurzeit offline.",
484
- "cairo.table.custom-columns.dragAndDrop.search-placeholder": "Search columns...",
484
+ "cairo.table.custom-columns.dragAndDrop.search-placeholder": "Spalten durchsuchen ...",
485
485
  "cairo.export.leaveSiteTitle": "Website verlassen?",
486
486
  "cairo.customFields.editCustomField.save.CTA": "Speichern",
487
487
  "cairo.customFields.manageFields.title": "Benutzerdefinierte Felder verwalten",
@@ -481,7 +481,7 @@
481
481
  "cairo.tags.bulkItemUpdate.toast.success": "Les libellés ont été mis à jour.",
482
482
  "cairo.customFields.maxFields": "Vous pouvez ajouter jusqu'à 10 champs personnalisés.",
483
483
  "cairo.offline": "Vous êtes actuellement hors ligne.",
484
- "cairo.table.custom-columns.dragAndDrop.search-placeholder": "Search columns...",
484
+ "cairo.table.custom-columns.dragAndDrop.search-placeholder": "Rechercher des colonnes...",
485
485
  "cairo.export.leaveSiteTitle": "Quitter le site ?",
486
486
  "cairo.customFields.editCustomField.save.CTA": "Enregistrer",
487
487
  "cairo.customFields.manageFields.title": "Gérer les champs personnalisés",
@@ -481,7 +481,7 @@
481
481
  "cairo.tags.bulkItemUpdate.toast.success": "태그가 업데이트되었습니다.",
482
482
  "cairo.customFields.maxFields": "최대 10개의 사용자 지정 입력란을 추가할 수 있습니다.",
483
483
  "cairo.offline": "현재 오프라인 상태입니다.",
484
- "cairo.table.custom-columns.dragAndDrop.search-placeholder": "Search columns...",
484
+ "cairo.table.custom-columns.dragAndDrop.search-placeholder": "칼럼 검색...",
485
485
  "cairo.export.leaveSiteTitle": "사이트 나가기",
486
486
  "cairo.customFields.editCustomField.save.CTA": "저장",
487
487
  "cairo.customFields.manageFields.title": "사용자 지정 입력란 관리",
@@ -481,7 +481,7 @@
481
481
  "cairo.tags.bulkItemUpdate.toast.success": "Tags atualizadas.",
482
482
  "cairo.customFields.maxFields": "Você pode adicionar até 10 campos personalizados.",
483
483
  "cairo.offline": "Você está offline no momento.",
484
- "cairo.table.custom-columns.dragAndDrop.search-placeholder": "Search columns...",
484
+ "cairo.table.custom-columns.dragAndDrop.search-placeholder": "Buscar colunas",
485
485
  "cairo.export.leaveSiteTitle": "Sair do site?",
486
486
  "cairo.customFields.editCustomField.save.CTA": "Salvar",
487
487
  "cairo.customFields.manageFields.title": "Gerenciar campos personalizados",
@@ -24,9 +24,7 @@ async function fetchData({
24
24
  const query = await transformPlatformizedQuery(platformizedQuery, wixPatternsQuery);
25
25
  return errorHandler == null ? void 0 : errorHandler.withErrorHandler(() => httpClient.request(ambassador.queryEntities({
26
26
  query
27
- })), {
28
- errorCodesMap: {}
29
- });
27
+ })), {});
30
28
  }
31
29
  function getOffsetConfig({
32
30
  config,
@@ -1 +1 @@
1
- {"version":3,"names":["_identity","_interopRequireDefault","require","_providers","_useCollection","_react","fetchData","config","wixPatternsQuery","httpClient","errorHandler","ambassador","transformPlatformizedQuery","identity","platformizedQuery","defaultPlatformizedQuery","query","withErrorHandler","request","queryEntities","errorCodesMap","getOffsetConfig","queryName","fqdn","paginationMode","response","items","data","entities","total","metadata","getCursorConfig","cursor","cursors","next","useCreateAmbassadorCollection","createCollection","useCreateCollection","useWixPatternsContainer","collectionConfig","useAmbassadorCollection","createAmbassadorCollection","collection","useState","_wixPatternsQuery$sor","filter","sort","map","fieldName","order","toUpperCase","cursorPaging","limit"],"sources":["../../../src/hooks/useAmbassadorCollection.ts"],"sourcesContent":["import identity from 'lodash/identity';\nimport type { AutoCrudHttp } from '@wix/auto-crud';\nimport type { FiltersMap, OptionalFiltersMap } from '../model';\nimport type { CollectionState } from '../state';\nimport type { CollectionConfigWithConditionals } from './collectionConfigPartials';\nimport type { CursorQuery, OffsetQuery } from '.';\nimport { useWixPatternsContainer } from '../providers';\nimport { useCreateCollection } from './useCollection';\nimport { useState } from 'react';\nimport { WixPatternsContainerParams } from '../state';\n\nexport type TransformPlatformizedQuery = (\n platformizedQuery: PlatformizedQuery,\n wixPatternsQuery: CursorQuery,\n) => PlatformizedQuery | Promise<PlatformizedQuery>;\n\nexport type AmbassadorCollectionConfig<\n T,\n F extends FiltersMap = OptionalFiltersMap,\n> = Omit<\n CollectionConfigWithConditionals<T, F>,\n 'fetchData' | 'paginationMode' | 'queryName'\n> &\n AmbassadorCollectionConfigI<T>;\n\nexport interface AmbassadorCollectionConfigI<T> {\n /**\n * CRUD subpackage of a metro Ambassador package.\n */\n ambassador: Required<Pick<AutoCrudHttp<T>, 'queryEntities' | 'fqdn'>>;\n /**\n * A function to transform the cairo query to a PlatformizedQuery object (which will be used to fetch data from the server):\n * - `platformizedQuery`: PlatformizedQuery\n * - `wixPatternsQuery`: CursorQuery\n * The function should return a PlatformizedQuery instance or a promise of PlatformizedQuery\n */\n transformPlatformizedQuery?: TransformPlatformizedQuery;\n /**\n * The query name used for cache purposes. This should be a unique value per API endpoint.\n * @default ambassador.fqdn\n */\n queryName?: string;\n}\n\ntype PlatformizedFilter = {\n [filter: string]: any;\n};\n\ntype PlatformizedSorting = {\n fieldName: string;\n order: 'ASC' | 'DESC';\n};\n\ntype PlatformizedCursorPaging = {\n limit: number;\n cursor?: string | null;\n};\n\n// TODO: should be exposed by Ambassador\ntype PlatformizedQuery = {\n filter?: PlatformizedFilter;\n sort?: PlatformizedSorting[];\n cursorPaging?: PlatformizedCursorPaging;\n};\n\nexport type AmbassadorCollectionFactory = <\n T,\n F extends FiltersMap = OptionalFiltersMap,\n>(\n config: AmbassadorCollectionConfig<T, F>,\n) => CollectionState<T, F>;\n\nasync function fetchData<T, F extends FiltersMap = OptionalFiltersMap>({\n config,\n wixPatternsQuery,\n httpClient,\n errorHandler,\n}: {\n config: AmbassadorCollectionConfig<T, F>;\n wixPatternsQuery: CursorQuery<Partial<F>> | OffsetQuery<Partial<F>>;\n httpClient: WixPatternsContainerParams['httpClient'];\n errorHandler: WixPatternsContainerParams['errorHandler'];\n}) {\n const { ambassador } = config;\n const transformPlatformizedQuery =\n config.transformPlatformizedQuery || identity;\n const platformizedQuery = defaultPlatformizedQuery(wixPatternsQuery);\n const query = await transformPlatformizedQuery(\n platformizedQuery,\n wixPatternsQuery,\n );\n return errorHandler?.withErrorHandler(\n () => httpClient.request(ambassador.queryEntities({ query })),\n { errorCodesMap: {} },\n );\n}\n\nfunction getOffsetConfig<T, F extends FiltersMap = OptionalFiltersMap>({\n config,\n httpClient,\n errorHandler,\n}: {\n config: AmbassadorCollectionConfig<T, F>;\n httpClient: WixPatternsContainerParams['httpClient'];\n errorHandler: WixPatternsContainerParams['errorHandler'];\n}): CollectionConfigWithConditionals<T, F> {\n return {\n queryName: config.ambassador.fqdn,\n ...config,\n paginationMode: 'offset',\n fetchData: async (query: OffsetQuery<Partial<F>>) => {\n const response = await fetchData({\n config,\n wixPatternsQuery: query,\n httpClient,\n errorHandler,\n });\n return {\n items: response?.data.entities ?? [],\n total: response?.data.metadata.total ?? 0,\n };\n },\n };\n}\n\nfunction getCursorConfig<T, F extends FiltersMap = OptionalFiltersMap>({\n config,\n httpClient,\n errorHandler,\n}: {\n config: AmbassadorCollectionConfig<T, F>;\n httpClient: WixPatternsContainerParams['httpClient'];\n errorHandler: WixPatternsContainerParams['errorHandler'];\n}): CollectionConfigWithConditionals<T, F> {\n const { ambassador } = config;\n\n return {\n queryName: ambassador.fqdn,\n ...config,\n paginationMode: 'cursor',\n fetchData: async (query: CursorQuery<Partial<F>>) => {\n const response = await fetchData({\n config,\n wixPatternsQuery: query,\n httpClient,\n errorHandler,\n });\n return {\n items: response?.data.entities ?? [],\n cursor: response?.data.metadata.cursors.next,\n total: response?.data.metadata.total ?? 0,\n };\n },\n };\n}\n\nexport function useCreateAmbassadorCollection(): AmbassadorCollectionFactory {\n const createCollection = useCreateCollection();\n const { httpClient, errorHandler } = useWixPatternsContainer();\n\n return <T, F extends FiltersMap = OptionalFiltersMap>(\n config: AmbassadorCollectionConfig<T, F>,\n ) => {\n const collectionConfig: CollectionConfigWithConditionals<T, F> =\n config.ambassador.queryEntities.paginationMode === 'offset'\n ? getOffsetConfig({ config, httpClient, errorHandler })\n : getCursorConfig({ config, httpClient, errorHandler });\n\n return createCollection(collectionConfig);\n };\n}\n\nexport function useAmbassadorCollection<\n T,\n F extends FiltersMap = OptionalFiltersMap,\n>(config: AmbassadorCollectionConfig<T, F>): CollectionState<T, F> {\n const createAmbassadorCollection = useCreateAmbassadorCollection();\n\n const [collection] = useState(() => createAmbassadorCollection<T, F>(config));\n\n return collection;\n}\n\nfunction defaultPlatformizedQuery(\n wixPatternsQuery: CursorQuery,\n): PlatformizedQuery {\n return {\n filter: {},\n sort: wixPatternsQuery.sort?.map((sort) => ({\n fieldName: sort.fieldName,\n order: sort.order.toUpperCase() as 'ASC' | 'DESC',\n })),\n cursorPaging: {\n cursor: wixPatternsQuery.cursor,\n limit: wixPatternsQuery.limit,\n },\n };\n}\n"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,sBAAA,CAAAC,OAAA;AAMA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAkDA;;AAcA,eAAeI,SAASA,CAA+C;EACrEC,MAAM;EACNC,gBAAgB;EAChBC,UAAU;EACVC;AAMF,CAAC,EAAE;EACD,MAAM;IAAEC;EAAW,CAAC,GAAGJ,MAAM;EAC7B,MAAMK,0BAA0B,GAC9BL,MAAM,CAACK,0BAA0B,IAAIC,iBAAQ;EAC/C,MAAMC,iBAAiB,GAAGC,wBAAwB,CAACP,gBAAgB,CAAC;EACpE,MAAMQ,KAAK,GAAG,MAAMJ,0BAA0B,CAC5CE,iBAAiB,EACjBN,gBACF,CAAC;EACD,OAAOE,YAAY,oBAAZA,YAAY,CAAEO,gBAAgB,CACnC,MAAMR,UAAU,CAACS,OAAO,CAACP,UAAU,CAACQ,aAAa,CAAC;IAAEH;EAAM,CAAC,CAAC,CAAC,EAC7D;IAAEI,aAAa,EAAE,CAAC;EAAE,CACtB,CAAC;AACH;AAEA,SAASC,eAAeA,CAA+C;EACrEd,MAAM;EACNE,UAAU;EACVC;AAKF,CAAC,EAA0C;EACzC,OAAO;IACLY,SAAS,EAAEf,MAAM,CAACI,UAAU,CAACY,IAAI;IACjC,GAAGhB,MAAM;IACTiB,cAAc,EAAE,QAAQ;IACxBlB,SAAS,EAAE,MAAOU,KAA8B,IAAK;MACnD,MAAMS,QAAQ,GAAG,MAAMnB,SAAS,CAAC;QAC/BC,MAAM;QACNC,gBAAgB,EAAEQ,KAAK;QACvBP,UAAU;QACVC;MACF,CAAC,CAAC;MACF,OAAO;QACLgB,KAAK,EAAE,CAAAD,QAAQ,oBAARA,QAAQ,CAAEE,IAAI,CAACC,QAAQ,KAAI,EAAE;QACpCC,KAAK,EAAE,CAAAJ,QAAQ,oBAARA,QAAQ,CAAEE,IAAI,CAACG,QAAQ,CAACD,KAAK,KAAI;MAC1C,CAAC;IACH;EACF,CAAC;AACH;AAEA,SAASE,eAAeA,CAA+C;EACrExB,MAAM;EACNE,UAAU;EACVC;AAKF,CAAC,EAA0C;EACzC,MAAM;IAAEC;EAAW,CAAC,GAAGJ,MAAM;EAE7B,OAAO;IACLe,SAAS,EAAEX,UAAU,CAACY,IAAI;IAC1B,GAAGhB,MAAM;IACTiB,cAAc,EAAE,QAAQ;IACxBlB,SAAS,EAAE,MAAOU,KAA8B,IAAK;MACnD,MAAMS,QAAQ,GAAG,MAAMnB,SAAS,CAAC;QAC/BC,MAAM;QACNC,gBAAgB,EAAEQ,KAAK;QACvBP,UAAU;QACVC;MACF,CAAC,CAAC;MACF,OAAO;QACLgB,KAAK,EAAE,CAAAD,QAAQ,oBAARA,QAAQ,CAAEE,IAAI,CAACC,QAAQ,KAAI,EAAE;QACpCI,MAAM,EAAEP,QAAQ,oBAARA,QAAQ,CAAEE,IAAI,CAACG,QAAQ,CAACG,OAAO,CAACC,IAAI;QAC5CL,KAAK,EAAE,CAAAJ,QAAQ,oBAARA,QAAQ,CAAEE,IAAI,CAACG,QAAQ,CAACD,KAAK,KAAI;MAC1C,CAAC;IACH;EACF,CAAC;AACH;AAEO,SAASM,6BAA6BA,CAAA,EAAgC;EAC3E,MAAMC,gBAAgB,GAAG,IAAAC,kCAAmB,EAAC,CAAC;EAC9C,MAAM;IAAE5B,UAAU;IAAEC;EAAa,CAAC,GAAG,IAAA4B,kCAAuB,EAAC,CAAC;EAE9D,OACE/B,MAAwC,IACrC;IACH,MAAMgC,gBAAwD,GAC5DhC,MAAM,CAACI,UAAU,CAACQ,aAAa,CAACK,cAAc,KAAK,QAAQ,GACvDH,eAAe,CAAC;MAAEd,MAAM;MAAEE,UAAU;MAAEC;IAAa,CAAC,CAAC,GACrDqB,eAAe,CAAC;MAAExB,MAAM;MAAEE,UAAU;MAAEC;IAAa,CAAC,CAAC;IAE3D,OAAO0B,gBAAgB,CAACG,gBAAgB,CAAC;EAC3C,CAAC;AACH;AAEO,SAASC,uBAAuBA,CAGrCjC,MAAwC,EAAyB;EACjE,MAAMkC,0BAA0B,GAAGN,6BAA6B,CAAC,CAAC;EAElE,MAAM,CAACO,UAAU,CAAC,GAAG,IAAAC,eAAQ,EAAC,MAAMF,0BAA0B,CAAOlC,MAAM,CAAC,CAAC;EAE7E,OAAOmC,UAAU;AACnB;AAEA,SAAS3B,wBAAwBA,CAC/BP,gBAA6B,EACV;EAAA,IAAAoC,qBAAA;EACnB,OAAO;IACLC,MAAM,EAAE,CAAC,CAAC;IACVC,IAAI,GAAAF,qBAAA,GAAEpC,gBAAgB,CAACsC,IAAI,qBAArBF,qBAAA,CAAuBG,GAAG,CAAED,IAAI,KAAM;MAC1CE,SAAS,EAAEF,IAAI,CAACE,SAAS;MACzBC,KAAK,EAAEH,IAAI,CAACG,KAAK,CAACC,WAAW,CAAC;IAChC,CAAC,CAAC,CAAC;IACHC,YAAY,EAAE;MACZnB,MAAM,EAAExB,gBAAgB,CAACwB,MAAM;MAC/BoB,KAAK,EAAE5C,gBAAgB,CAAC4C;IAC1B;EACF,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["_identity","_interopRequireDefault","require","_providers","_useCollection","_react","fetchData","config","wixPatternsQuery","httpClient","errorHandler","ambassador","transformPlatformizedQuery","identity","platformizedQuery","defaultPlatformizedQuery","query","withErrorHandler","request","queryEntities","getOffsetConfig","queryName","fqdn","paginationMode","response","items","data","entities","total","metadata","getCursorConfig","cursor","cursors","next","useCreateAmbassadorCollection","createCollection","useCreateCollection","useWixPatternsContainer","collectionConfig","useAmbassadorCollection","createAmbassadorCollection","collection","useState","_wixPatternsQuery$sor","filter","sort","map","fieldName","order","toUpperCase","cursorPaging","limit"],"sources":["../../../src/hooks/useAmbassadorCollection.ts"],"sourcesContent":["import identity from 'lodash/identity';\nimport type { AutoCrudHttp } from '@wix/auto-crud';\nimport type { FiltersMap, OptionalFiltersMap } from '../model';\nimport type { CollectionState } from '../state';\nimport type { CollectionConfigWithConditionals } from './collectionConfigPartials';\nimport type { CursorQuery, OffsetQuery } from '.';\nimport { useWixPatternsContainer } from '../providers';\nimport { useCreateCollection } from './useCollection';\nimport { useState } from 'react';\nimport { WixPatternsContainerParams } from '../state';\n\nexport type TransformPlatformizedQuery = (\n platformizedQuery: PlatformizedQuery,\n wixPatternsQuery: CursorQuery,\n) => PlatformizedQuery | Promise<PlatformizedQuery>;\n\nexport type AmbassadorCollectionConfig<\n T,\n F extends FiltersMap = OptionalFiltersMap,\n> = Omit<\n CollectionConfigWithConditionals<T, F>,\n 'fetchData' | 'paginationMode' | 'queryName'\n> &\n AmbassadorCollectionConfigI<T>;\n\nexport interface AmbassadorCollectionConfigI<T> {\n /**\n * CRUD subpackage of a metro Ambassador package.\n */\n ambassador: Required<Pick<AutoCrudHttp<T>, 'queryEntities' | 'fqdn'>>;\n /**\n * A function to transform the cairo query to a PlatformizedQuery object (which will be used to fetch data from the server):\n * - `platformizedQuery`: PlatformizedQuery\n * - `wixPatternsQuery`: CursorQuery\n * The function should return a PlatformizedQuery instance or a promise of PlatformizedQuery\n */\n transformPlatformizedQuery?: TransformPlatformizedQuery;\n /**\n * The query name used for cache purposes. This should be a unique value per API endpoint.\n * @default ambassador.fqdn\n */\n queryName?: string;\n}\n\ntype PlatformizedFilter = {\n [filter: string]: any;\n};\n\ntype PlatformizedSorting = {\n fieldName: string;\n order: 'ASC' | 'DESC';\n};\n\ntype PlatformizedCursorPaging = {\n limit: number;\n cursor?: string | null;\n};\n\n// TODO: should be exposed by Ambassador\ntype PlatformizedQuery = {\n filter?: PlatformizedFilter;\n sort?: PlatformizedSorting[];\n cursorPaging?: PlatformizedCursorPaging;\n};\n\nexport type AmbassadorCollectionFactory = <\n T,\n F extends FiltersMap = OptionalFiltersMap,\n>(\n config: AmbassadorCollectionConfig<T, F>,\n) => CollectionState<T, F>;\n\nasync function fetchData<T, F extends FiltersMap = OptionalFiltersMap>({\n config,\n wixPatternsQuery,\n httpClient,\n errorHandler,\n}: {\n config: AmbassadorCollectionConfig<T, F>;\n wixPatternsQuery: CursorQuery<Partial<F>> | OffsetQuery<Partial<F>>;\n httpClient: WixPatternsContainerParams['httpClient'];\n errorHandler: WixPatternsContainerParams['errorHandler'];\n}) {\n const { ambassador } = config;\n const transformPlatformizedQuery =\n config.transformPlatformizedQuery || identity;\n const platformizedQuery = defaultPlatformizedQuery(wixPatternsQuery);\n const query = await transformPlatformizedQuery(\n platformizedQuery,\n wixPatternsQuery,\n );\n return errorHandler?.withErrorHandler(\n () => httpClient.request(ambassador.queryEntities({ query })),\n {},\n );\n}\n\nfunction getOffsetConfig<T, F extends FiltersMap = OptionalFiltersMap>({\n config,\n httpClient,\n errorHandler,\n}: {\n config: AmbassadorCollectionConfig<T, F>;\n httpClient: WixPatternsContainerParams['httpClient'];\n errorHandler: WixPatternsContainerParams['errorHandler'];\n}): CollectionConfigWithConditionals<T, F> {\n return {\n queryName: config.ambassador.fqdn,\n ...config,\n paginationMode: 'offset',\n fetchData: async (query: OffsetQuery<Partial<F>>) => {\n const response = await fetchData({\n config,\n wixPatternsQuery: query,\n httpClient,\n errorHandler,\n });\n return {\n items: response?.data.entities ?? [],\n total: response?.data.metadata.total ?? 0,\n };\n },\n };\n}\n\nfunction getCursorConfig<T, F extends FiltersMap = OptionalFiltersMap>({\n config,\n httpClient,\n errorHandler,\n}: {\n config: AmbassadorCollectionConfig<T, F>;\n httpClient: WixPatternsContainerParams['httpClient'];\n errorHandler: WixPatternsContainerParams['errorHandler'];\n}): CollectionConfigWithConditionals<T, F> {\n const { ambassador } = config;\n\n return {\n queryName: ambassador.fqdn,\n ...config,\n paginationMode: 'cursor',\n fetchData: async (query: CursorQuery<Partial<F>>) => {\n const response = await fetchData({\n config,\n wixPatternsQuery: query,\n httpClient,\n errorHandler,\n });\n return {\n items: response?.data.entities ?? [],\n cursor: response?.data.metadata.cursors.next,\n total: response?.data.metadata.total ?? 0,\n };\n },\n };\n}\n\nexport function useCreateAmbassadorCollection(): AmbassadorCollectionFactory {\n const createCollection = useCreateCollection();\n const { httpClient, errorHandler } = useWixPatternsContainer();\n\n return <T, F extends FiltersMap = OptionalFiltersMap>(\n config: AmbassadorCollectionConfig<T, F>,\n ) => {\n const collectionConfig: CollectionConfigWithConditionals<T, F> =\n config.ambassador.queryEntities.paginationMode === 'offset'\n ? getOffsetConfig({ config, httpClient, errorHandler })\n : getCursorConfig({ config, httpClient, errorHandler });\n\n return createCollection(collectionConfig);\n };\n}\n\nexport function useAmbassadorCollection<\n T,\n F extends FiltersMap = OptionalFiltersMap,\n>(config: AmbassadorCollectionConfig<T, F>): CollectionState<T, F> {\n const createAmbassadorCollection = useCreateAmbassadorCollection();\n\n const [collection] = useState(() => createAmbassadorCollection<T, F>(config));\n\n return collection;\n}\n\nfunction defaultPlatformizedQuery(\n wixPatternsQuery: CursorQuery,\n): PlatformizedQuery {\n return {\n filter: {},\n sort: wixPatternsQuery.sort?.map((sort) => ({\n fieldName: sort.fieldName,\n order: sort.order.toUpperCase() as 'ASC' | 'DESC',\n })),\n cursorPaging: {\n cursor: wixPatternsQuery.cursor,\n limit: wixPatternsQuery.limit,\n },\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../src/model/wixPatternsEssentials.ts"],"sourcesContent":["import type { Essentials, EssentialsOptions } from '@wix/fe-essentials/core';\nimport type { LogParams, ReportProps } from '@wix/fe-essentials/bi';\nimport type { ErrorHandler } from '@wix/fe-essentials/error-handler';\nimport type { Trans, useTranslation } from '@wix/fe-essentials/react';\nimport type { ShowToast } from './toast';\nimport type {\n Environment,\n EnvironmentBi,\n ErrorMonitor,\n Experiments,\n MonitorLogger,\n OnlineManager,\n} from '../services';\nimport type { History } from 'history';\nimport type { QueryCache } from 'react-query/core';\nimport type { FunctionComponent } from 'react';\nimport type { DataCapsule } from './dataCapsule';\nimport { HttpClient } from './httpClient';\nimport type { SDK } from '@wix/dashboard';\n\nexport type OnSidePanelOpen = (listener: () => void) => {\n remove(): void;\n};\n\nexport type CloseSidePanel = () => unknown;\n\nexport interface BiLogger {\n report(reportProps: ReportProps): Promise<any>;\n}\n\nexport interface CairoBILoggerFactory {\n updateDefaults(params: LogParams): this;\n logger(): BiLogger;\n}\n\nexport type PageLocation = {\n pageId: string;\n pathname: string;\n search?: string;\n hash?: string;\n};\n\nexport interface PageProps {\n location: PageLocation;\n}\n\nexport type OnNavigationPause = () => { resume(): void };\nexport type OnNavigationCallback = (pause: OnNavigationPause) => void;\nexport type OnNavigation = (callback: OnNavigationCallback) => {\n remove(): void;\n};\n\nexport type NavigateToObject = {\n pageId: string;\n relativeUrl?: string;\n appState?: string;\n referrer?: string;\n};\nexport type NavigateOptions = { state?: any };\nexport type NavigateToFunc = (to: NavigateToObject) => void;\n\nexport type BeforeUnloadResponse = {\n remove: () => void;\n};\nexport type OnBeforeUnload = (\n callback: (event: Event) => void,\n) => BeforeUnloadResponse;\n\nexport interface HostContainerExtension {\n appId?: string;\n componentId: string;\n title?: string;\n menuItem?: {\n IconComponent?: FunctionComponent;\n structuredAction: (params?: Record<string, any>) => unknown;\n };\n Component?: React.ComponentType;\n Extension?: React.ComponentType;\n}\nexport type GetExtensions = () =>\n | HostContainerExtension[]\n | Promise<HostContainerExtension[]>;\ninterface HostContainer {\n getExtensions: GetExtensions;\n}\n\nexport type GetHostContainer = (hostContainerId: string) => HostContainer;\nexport type GetDashboardMenuPlugins = SDK['getDashboardMenuPlugins'];\nexport type GetDashboardPlugins = SDK['getDashboardPlugins'];\n\ntype CreateEssentials = (options: EssentialsOptions) => {\n i18n: Essentials['i18n'];\n dataCapsule: Essentials['dataCapsule'];\n biLoggerFactory?: () => CairoBILoggerFactory;\n errorMonitor: ErrorMonitor;\n fedopsLogger?: MonitorLogger;\n experiments?: Experiments;\n};\nexport type CreateComponentSettings = (container: {\n httpClient: HttpClient;\n queryCache: QueryCache;\n environment: Environment;\n createEssentials: CreateEssentials;\n}) => (options: { namespace: string }) => DataCapsule;\n\nexport interface PatternsErrorHandler {\n withErrorHandler: ErrorHandler['withErrorHandler'];\n getResolvedError?: ErrorHandler['getResolvedError'];\n showError?: ErrorHandler['showError'];\n reportRetryAttempt?: ErrorHandler['reportRetryAttempt'];\n}\n\nexport interface WixPatternsEssentials {\n httpClient: HttpClient;\n /** A `ErrorMonitor` instance `@wix/fe-essentials/error-monitor` */\n errorMonitor: ErrorMonitor;\n /** A `Experiments` instance `@wix/fe-essentials/experiments` */\n experiments: Experiments;\n errorHandler?: PatternsErrorHandler;\n biLogger?: BiLogger | null;\n /**\n * A function that returns the shape `{ i18n }` - should be compatible with `{createEssentials} from '@wix/fe-essentials'` */\n createEssentials: CreateEssentials;\n /** A `DataCapsule` to store component-level settings such as `Views` */\n createComponentSettings?: CreateComponentSettings;\n /** The user's environment\n * - `language` - preferable language for the user\n * - `artifactId` - App level identifier, usually the artifact ID\n * - `componentId` - Component/page level identifier (Optional)\n * - `componentName` - Readable component/page name (Optional)\n */\n environment: Pick<Environment, 'language'> &\n Partial<Omit<Environment, 'language'>> & {\n uiLibVersion?: string;\n msid?: string;\n };\n environmentBI: EnvironmentBi;\n /** `useTranslation` hook from `react-i18next` or `@wix/fe-essentials/react` */\n useTranslation: typeof useTranslation;\n /** `Trans` component from `react-i18next` or `@wix/fe-essentials/react */\n Trans: typeof Trans;\n user: {\n id?: string;\n permissions: string[];\n };\n /** `useExperiments` hook from `@wix/yoshi-flow-bm` or `@wix/fe-essentials/react` */\n useExperiments: () => {\n ready: boolean;\n experiments: {\n enabled: (key: string) => boolean;\n };\n };\n usePageLocation?: () => PageLocation;\n /** A function that shows a global toast. For BM usage, it should be `showToast` from `business-manager-api` */\n showToast?: ShowToast;\n /** A function to perform a navigation to a given pageId */\n navigateTo?: NavigateToFunc;\n useAppLoaded?: () => void;\n onSidePanelOpen?: OnSidePanelOpen;\n closeSidePanel?: CloseSidePanel;\n /** Custom [history](https://github.com/remix-run/history/tree/v5.3.0/packages/history) instance to sync custom consumer navigations with Cairo navigations */\n history?: History;\n /** An optional query cache instance for controlling the cache from other modules */\n queryCache?: QueryCache;\n /** A function that interrupts a navigation to another app inside wix platforms */\n onNavigation?: OnNavigation;\n getHostContainer?: GetHostContainer;\n onlineManager?: OnlineManager;\n /**\n * Deals with dirty state by setting up a listener that triggers a confirmation dialog when a user attempts to leave a page. The event listener is removed upon component unmount.\n * @param callback - called on navigation with an event object. Use event.preventDefault() within the callback to display the dialog.\n * @returns { remove: () => void } - object that includes a remove method. You can use this method to remove the listener whenever necessary.\n */\n onBeforeUnload?: OnBeforeUnload;\n}\n\nexport interface WixPatternsEssentialsOverrides\n extends Omit<Partial<WixPatternsEssentials>, 'environment'> {\n environment: Partial<WixPatternsEssentials['environment']>;\n}\n\nexport type ContextType = 'ACCOUNT' | 'SITE';\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../src/model/wixPatternsEssentials.ts"],"sourcesContent":["import type { Essentials, EssentialsOptions } from '@wix/fe-essentials/core';\nimport type { LogParams, ReportProps } from '@wix/fe-essentials/bi';\nimport type { errorHandler } from '@wix/essentials';\nimport type { Trans, useTranslation } from '@wix/fe-essentials/react';\nimport type { ShowToast } from './toast';\nimport type {\n Environment,\n EnvironmentBi,\n ErrorMonitor,\n Experiments,\n MonitorLogger,\n OnlineManager,\n} from '../services';\nimport type { History } from 'history';\nimport type { QueryCache } from 'react-query/core';\nimport type { FunctionComponent } from 'react';\nimport type { DataCapsule } from './dataCapsule';\nimport { HttpClient } from './httpClient';\nimport type { SDK } from '@wix/dashboard';\n\nexport type OnSidePanelOpen = (listener: () => void) => {\n remove(): void;\n};\n\nexport type CloseSidePanel = () => unknown;\n\nexport interface BiLogger {\n report(reportProps: ReportProps): Promise<any>;\n}\n\nexport interface CairoBILoggerFactory {\n updateDefaults(params: LogParams): this;\n logger(): BiLogger;\n}\n\nexport type PageLocation = {\n pageId: string;\n pathname: string;\n search?: string;\n hash?: string;\n};\n\nexport interface PageProps {\n location: PageLocation;\n}\n\nexport type OnNavigationPause = () => { resume(): void };\nexport type OnNavigationCallback = (pause: OnNavigationPause) => void;\nexport type OnNavigation = (callback: OnNavigationCallback) => {\n remove(): void;\n};\n\nexport type NavigateToObject = {\n pageId: string;\n relativeUrl?: string;\n appState?: string;\n referrer?: string;\n};\nexport type NavigateOptions = { state?: any };\nexport type NavigateToFunc = (to: NavigateToObject) => void;\n\nexport type BeforeUnloadResponse = {\n remove: () => void;\n};\nexport type OnBeforeUnload = (\n callback: (event: Event) => void,\n) => BeforeUnloadResponse;\n\nexport interface HostContainerExtension {\n appId?: string;\n componentId: string;\n title?: string;\n menuItem?: {\n IconComponent?: FunctionComponent;\n structuredAction: (params?: Record<string, any>) => unknown;\n };\n Component?: React.ComponentType;\n Extension?: React.ComponentType;\n}\nexport type GetExtensions = () =>\n | HostContainerExtension[]\n | Promise<HostContainerExtension[]>;\ninterface HostContainer {\n getExtensions: GetExtensions;\n}\n\nexport type GetHostContainer = (hostContainerId: string) => HostContainer;\nexport type GetDashboardMenuPlugins = SDK['getDashboardMenuPlugins'];\nexport type GetDashboardPlugins = SDK['getDashboardPlugins'];\n\ntype CreateEssentials = (options: EssentialsOptions) => {\n i18n: Essentials['i18n'];\n dataCapsule: Essentials['dataCapsule'];\n biLoggerFactory?: () => CairoBILoggerFactory;\n errorMonitor: ErrorMonitor;\n fedopsLogger?: MonitorLogger;\n experiments?: Experiments;\n};\nexport type CreateComponentSettings = (container: {\n httpClient: HttpClient;\n queryCache: QueryCache;\n environment: Environment;\n createEssentials: CreateEssentials;\n}) => (options: { namespace: string }) => DataCapsule;\n\nexport interface PatternsErrorHandler {\n withErrorHandler: errorHandler.ErrorHandler['withErrorHandler'];\n getResolvedError?: errorHandler.ErrorHandler['getResolvedError'];\n showError?: errorHandler.ErrorHandler['showError'];\n reportRetryAttempt?: errorHandler.ErrorHandler['reportRetryAttempt'];\n}\n\nexport interface WixPatternsEssentials {\n httpClient: HttpClient;\n /** A `ErrorMonitor` instance `@wix/fe-essentials/error-monitor` */\n errorMonitor: ErrorMonitor;\n /** A `Experiments` instance `@wix/fe-essentials/experiments` */\n experiments: Experiments;\n errorHandler?: PatternsErrorHandler;\n biLogger?: BiLogger | null;\n /**\n * A function that returns the shape `{ i18n }` - should be compatible with `{createEssentials} from '@wix/fe-essentials'` */\n createEssentials: CreateEssentials;\n /** A `DataCapsule` to store component-level settings such as `Views` */\n createComponentSettings?: CreateComponentSettings;\n /** The user's environment\n * - `language` - preferable language for the user\n * - `artifactId` - App level identifier, usually the artifact ID\n * - `componentId` - Component/page level identifier (Optional)\n * - `componentName` - Readable component/page name (Optional)\n */\n environment: Pick<Environment, 'language'> &\n Partial<Omit<Environment, 'language'>> & {\n uiLibVersion?: string;\n msid?: string;\n };\n environmentBI: EnvironmentBi;\n /** `useTranslation` hook from `react-i18next` or `@wix/fe-essentials/react` */\n useTranslation: typeof useTranslation;\n /** `Trans` component from `react-i18next` or `@wix/fe-essentials/react */\n Trans: typeof Trans;\n user: {\n id?: string;\n permissions: string[];\n };\n /** `useExperiments` hook from `@wix/yoshi-flow-bm` or `@wix/fe-essentials/react` */\n useExperiments: () => {\n ready: boolean;\n experiments: {\n enabled: (key: string) => boolean;\n };\n };\n usePageLocation?: () => PageLocation;\n /** A function that shows a global toast. For BM usage, it should be `showToast` from `business-manager-api` */\n showToast?: ShowToast;\n /** A function to perform a navigation to a given pageId */\n navigateTo?: NavigateToFunc;\n useAppLoaded?: () => void;\n onSidePanelOpen?: OnSidePanelOpen;\n closeSidePanel?: CloseSidePanel;\n /** Custom [history](https://github.com/remix-run/history/tree/v5.3.0/packages/history) instance to sync custom consumer navigations with Cairo navigations */\n history?: History;\n /** An optional query cache instance for controlling the cache from other modules */\n queryCache?: QueryCache;\n /** A function that interrupts a navigation to another app inside wix platforms */\n onNavigation?: OnNavigation;\n getHostContainer?: GetHostContainer;\n onlineManager?: OnlineManager;\n /**\n * Deals with dirty state by setting up a listener that triggers a confirmation dialog when a user attempts to leave a page. The event listener is removed upon component unmount.\n * @param callback - called on navigation with an event object. Use event.preventDefault() within the callback to display the dialog.\n * @returns { remove: () => void } - object that includes a remove method. You can use this method to remove the listener whenever necessary.\n */\n onBeforeUnload?: OnBeforeUnload;\n}\n\nexport interface WixPatternsEssentialsOverrides\n extends Omit<Partial<WixPatternsEssentials>, 'environment'> {\n environment: Partial<WixPatternsEssentials['environment']>;\n}\n\nexport type ContextType = 'ACCOUNT' | 'SITE';\n"],"mappings":"","ignoreList":[]}
@@ -6,29 +6,27 @@ const createDataExtensionSchemaErrors = ({
6
6
  translate: t
7
7
  }) => {
8
8
  return {
9
- applicationError: {
10
- INVALID_NAMESPACE: () => ({
11
- message: t('cairo.customFields.createDataExtension.invalid-namespace.error'),
12
- action: {
13
- text: t('cairo.error.contactSupport.cta'),
14
- onClick: () => {}
15
- }
16
- }),
17
- FQDN_NOT_FOUND: () => ({
18
- message: t('cairo.customFields.createDataExtension.fqdn-not-found.error'),
19
- action: {
20
- text: t('cairo.error.contactSupport.cta'),
21
- onClick: () => {}
22
- }
23
- }),
24
- FQDN_NOT_EXTENSIBLE: () => ({
25
- message: t('cairo.customFields.createDataExtension.fqdn-not-extensible.error'),
26
- action: {
27
- text: '',
28
- onClick: () => {}
29
- }
30
- })
31
- }
9
+ INVALID_NAMESPACE: () => ({
10
+ message: t('cairo.customFields.createDataExtension.invalid-namespace.error'),
11
+ action: {
12
+ text: t('cairo.error.contactSupport.cta'),
13
+ onClick: () => {}
14
+ }
15
+ }),
16
+ FQDN_NOT_FOUND: () => ({
17
+ message: t('cairo.customFields.createDataExtension.fqdn-not-found.error'),
18
+ action: {
19
+ text: t('cairo.error.contactSupport.cta'),
20
+ onClick: () => {}
21
+ }
22
+ }),
23
+ FQDN_NOT_EXTENSIBLE: () => ({
24
+ message: t('cairo.customFields.createDataExtension.fqdn-not-extensible.error'),
25
+ action: {
26
+ text: '',
27
+ onClick: () => {}
28
+ }
29
+ })
32
30
  };
33
31
  };
34
32
  exports.createDataExtensionSchemaErrors = createDataExtensionSchemaErrors;
@@ -1 +1 @@
1
- {"version":3,"names":["createDataExtensionSchemaErrors","translate","t","applicationError","INVALID_NAMESPACE","message","action","text","onClick","FQDN_NOT_FOUND","FQDN_NOT_EXTENSIBLE","exports"],"sources":["../../../../src/services/DataExtensionService/createDataExtensionSchemaErrors.ts"],"sourcesContent":["import { ErrorCodesMap } from '@wix/fe-essentials/error-handler';\nimport { Translate } from '../translations';\n\nexport const createDataExtensionSchemaErrors = ({\n translate: t,\n}: {\n translate: Translate;\n}): ErrorCodesMap => {\n return {\n applicationError: {\n INVALID_NAMESPACE: () => ({\n message: t(\n 'cairo.customFields.createDataExtension.invalid-namespace.error',\n ),\n action: {\n text: t('cairo.error.contactSupport.cta'),\n onClick: () => {},\n },\n }),\n FQDN_NOT_FOUND: () => ({\n message: t(\n 'cairo.customFields.createDataExtension.fqdn-not-found.error',\n ),\n action: {\n text: t('cairo.error.contactSupport.cta'),\n onClick: () => {},\n },\n }),\n FQDN_NOT_EXTENSIBLE: () => ({\n message: t(\n 'cairo.customFields.createDataExtension.fqdn-not-extensible.error',\n ),\n action: {\n text: '',\n onClick: () => {},\n },\n }),\n },\n };\n};\n"],"mappings":";;;;AAGO,MAAMA,+BAA+B,GAAGA,CAAC;EAC9CC,SAAS,EAAEC;AAGb,CAAC,KAAoB;EACnB,OAAO;IACLC,gBAAgB,EAAE;MAChBC,iBAAiB,EAAEA,CAAA,MAAO;QACxBC,OAAO,EAAEH,CAAC,CACR,gEACF,CAAC;QACDI,MAAM,EAAE;UACNC,IAAI,EAAEL,CAAC,CAAC,gCAAgC,CAAC;UACzCM,OAAO,EAAEA,CAAA,KAAM,CAAC;QAClB;MACF,CAAC,CAAC;MACFC,cAAc,EAAEA,CAAA,MAAO;QACrBJ,OAAO,EAAEH,CAAC,CACR,6DACF,CAAC;QACDI,MAAM,EAAE;UACNC,IAAI,EAAEL,CAAC,CAAC,gCAAgC,CAAC;UACzCM,OAAO,EAAEA,CAAA,KAAM,CAAC;QAClB;MACF,CAAC,CAAC;MACFE,mBAAmB,EAAEA,CAAA,MAAO;QAC1BL,OAAO,EAAEH,CAAC,CACR,kEACF,CAAC;QACDI,MAAM,EAAE;UACNC,IAAI,EAAE,EAAE;UACRC,OAAO,EAAEA,CAAA,KAAM,CAAC;QAClB;MACF,CAAC;IACH;EACF,CAAC;AACH,CAAC;AAACG,OAAA,CAAAX,+BAAA,GAAAA,+BAAA","ignoreList":[]}
1
+ {"version":3,"names":["createDataExtensionSchemaErrors","translate","t","INVALID_NAMESPACE","message","action","text","onClick","FQDN_NOT_FOUND","FQDN_NOT_EXTENSIBLE","exports"],"sources":["../../../../src/services/DataExtensionService/createDataExtensionSchemaErrors.ts"],"sourcesContent":["import { Translate } from '../translations';\nimport type { errorHandler } from '@wix/essentials';\nimport type { createDataExtensionSchema } from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/http';\n\nexport const createDataExtensionSchemaErrors = ({\n translate: t,\n}: {\n translate: Translate;\n}): errorHandler.ErrorCodesMap<typeof createDataExtensionSchema> => {\n return {\n INVALID_NAMESPACE: () => ({\n message: t(\n 'cairo.customFields.createDataExtension.invalid-namespace.error',\n ),\n action: {\n text: t('cairo.error.contactSupport.cta'),\n onClick: () => {},\n },\n }),\n FQDN_NOT_FOUND: () => ({\n message: t('cairo.customFields.createDataExtension.fqdn-not-found.error'),\n action: {\n text: t('cairo.error.contactSupport.cta'),\n onClick: () => {},\n },\n }),\n FQDN_NOT_EXTENSIBLE: () => ({\n message: t(\n 'cairo.customFields.createDataExtension.fqdn-not-extensible.error',\n ),\n action: {\n text: '',\n onClick: () => {},\n },\n }),\n };\n};\n"],"mappings":";;;;AAIO,MAAMA,+BAA+B,GAAGA,CAAC;EAC9CC,SAAS,EAAEC;AAGb,CAAC,KAAmE;EAClE,OAAO;IACLC,iBAAiB,EAAEA,CAAA,MAAO;MACxBC,OAAO,EAAEF,CAAC,CACR,gEACF,CAAC;MACDG,MAAM,EAAE;QACNC,IAAI,EAAEJ,CAAC,CAAC,gCAAgC,CAAC;QACzCK,OAAO,EAAEA,CAAA,KAAM,CAAC;MAClB;IACF,CAAC,CAAC;IACFC,cAAc,EAAEA,CAAA,MAAO;MACrBJ,OAAO,EAAEF,CAAC,CAAC,6DAA6D,CAAC;MACzEG,MAAM,EAAE;QACNC,IAAI,EAAEJ,CAAC,CAAC,gCAAgC,CAAC;QACzCK,OAAO,EAAEA,CAAA,KAAM,CAAC;MAClB;IACF,CAAC,CAAC;IACFE,mBAAmB,EAAEA,CAAA,MAAO;MAC1BL,OAAO,EAAEF,CAAC,CACR,kEACF,CAAC;MACDG,MAAM,EAAE;QACNC,IAAI,EAAE,EAAE;QACRC,OAAO,EAAEA,CAAA,KAAM,CAAC;MAClB;IACF,CAAC;EACH,CAAC;AACH,CAAC;AAACG,OAAA,CAAAV,+BAAA,GAAAA,+BAAA","ignoreList":[]}
@@ -214,9 +214,7 @@ class DataExtensionSchemaService {
214
214
  fqdn,
215
215
  namespaces: [],
216
216
  fields: [_types.RequestedField.ARCHIVED]
217
- })), {
218
- errorCodesMap: {}
219
- });
217
+ })), {});
220
218
  return res.data;
221
219
  }
222
220
  async _createDataExtensionSchema(schema) {
@@ -226,11 +224,9 @@ class DataExtensionSchemaService {
226
224
  } = this;
227
225
  return errorHandler.withErrorHandler(() => httpClient.request((0, _http.createDataExtensionSchema)({
228
226
  dataExtensionSchema: schema
229
- })), {
230
- errorCodesMap: (0, _createDataExtensionSchemaErrors.createDataExtensionSchemaErrors)({
231
- translate: this.translate
232
- })
233
- }).then(res => res.data);
227
+ })), (0, _createDataExtensionSchemaErrors.createDataExtensionSchemaErrors)({
228
+ translate: this.translate
229
+ })).then(res => res.data);
234
230
  }
235
231
  async _updateDataExtensionSchema(schema) {
236
232
  const {
@@ -239,11 +235,9 @@ class DataExtensionSchemaService {
239
235
  } = this;
240
236
  return errorHandler.withErrorHandler(() => httpClient.request((0, _http.updateDataExtensionSchema)({
241
237
  dataExtensionSchema: schema
242
- })), {
243
- errorCodesMap: (0, _updateDataExtensionSchemaErrors.updateDataExtensionSchemaErrors)({
244
- translate: this.translate
245
- })
246
- }).then(res => res.data);
238
+ })), (0, _updateDataExtensionSchemaErrors.updateDataExtensionSchemaErrors)({
239
+ translate: this.translate
240
+ })).then(res => res.data);
247
241
  }
248
242
  }
249
243
  exports.DataExtensionSchemaService = DataExtensionSchemaService;
@@ -1 +1 @@
1
- {"version":3,"names":["_types","require","_http","_updateDataExtensionSchemaErrors","_createDataExtensionSchemaErrors","DataExtensionSchemaService","toSchemaType","type","format","maxLength","items","Error","toCustomType","field","hasOwnProperty","_field$items","toCustomField","schema","key","_schema$jsonSchema","property","jsonSchema","properties","title","id","constructor","params","_defineProperty2","default","httpClient","translate","errorHandler","addCustomField","_params$schema","_params$schema2","_params$schema3","userFieldsNamespace","form","name","readApps","readUsers","writeApps","writeUsers","containsPii","fqdn","permissions","read","write","filterable","namespace","enabled","_updateDataExtensionSchema","_createDataExtensionSchema","archiveCustomField","_params$schema4","_params$schema5","fetchSchemas","res","withErrorHandler","request","listDataExtensionSchemas","namespaces","fields","RequestedField","ARCHIVED","errorCodesMap","data","createDataExtensionSchema","dataExtensionSchema","createDataExtensionSchemaErrors","then","updateDataExtensionSchema","updateDataExtensionSchemaErrors","exports"],"sources":["../../../../src/services/DataExtensionService/dataExtensionService.ts"],"sourcesContent":["import {\n DataExtensionSchema,\n RequestedField,\n} from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/types';\nimport {\n createDataExtensionSchema,\n listDataExtensionSchemas,\n updateDataExtensionSchema,\n} from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/http';\nimport { CustomFieldForm, WixPatternsContainer } from '../../state';\nimport { PatternsErrorHandler, WixPatternsEssentials } from '../../model';\nimport { updateDataExtensionSchemaErrors } from './updateDataExtensionSchemaErrors';\nimport { createDataExtensionSchemaErrors } from './createDataExtensionSchemaErrors';\n\nexport interface DataExtensionSchemaServiceParams {\n readonly httpClient: WixPatternsEssentials['httpClient'];\n readonly translate: WixPatternsContainer['translate'];\n readonly errorHandler: PatternsErrorHandler;\n}\n\n// server types\nexport type DataExtensionType =\n | 'string'\n | 'number'\n | 'integer'\n | 'boolean'\n | 'array'\n | 'object';\n\nexport type DataExtensionPermission =\n | 'apps'\n | 'owning-app'\n | 'users'\n | 'users-of-users';\n\ninterface DataExtensionFieldItems\n extends Partial<Omit<DataExtensionField, 'type' | 'maxLength'>> {\n type: Omit<DataExtensionType, 'array'>;\n maxLength: number;\n}\nexport interface DataExtensionField {\n id: string;\n type?: DataExtensionType;\n format?: 'date-time' | 'date' | 'single-line' | 'uri' | string;\n title?: string;\n maxLength?: number;\n enum?: string[];\n 'x-wix-archived'?: boolean;\n 'x-wix-filterable'?: boolean;\n 'x-wix-created-date': string;\n 'x-wix-object-type'?: string;\n 'x-wix-permissions': {\n read: DataExtensionPermission[];\n write: DataExtensionPermission[];\n };\n properties?: Record<string, any>;\n items?: DataExtensionFieldItems;\n 'x-wix-pii'?: { enabled: boolean };\n}\n\n// client types\nexport type CustomFieldType =\n | 'shortText'\n | 'longText'\n | 'url'\n | 'date'\n | 'dateTime'\n | 'integer'\n | 'decimal'\n | 'checkbox'\n | 'dropdown'\n | 'files'\n | 'multiSelect';\n\nexport type CustomFieldOrigin =\n | 'Custom columns panel'\n | 'Custom fields panel'\n | 'Custom fields widget'\n | 'external';\n\nexport interface ExtendedFieldsDataMap {\n [key: string]: any;\n}\n\nexport interface ExtendedFields {\n _type?: 'ExtendedFields';\n /**\n * Data Extensions extended fields\n * Key: Namespace\n * Value: extended fields data in Struct format\n */\n namespaces?: {\n _user_fields?: ExtendedFieldsDataMap | undefined;\n [key: string]: ExtendedFieldsDataMap | undefined;\n };\n}\n\nexport type CustomFieldOwner = 'user' | 'app';\n\nexport interface CustomField {\n id: string;\n type: CustomFieldType;\n label?: string;\n maxLength?: number;\n options?: string[];\n editable: boolean;\n filterable?: boolean;\n owner: CustomFieldOwner;\n properties?: Record<string, string>;\n namespace: string;\n permissions?: {\n read?: DataExtensionPermission[];\n write?: DataExtensionPermission[];\n };\n}\n\nexport interface AddFieldParams {\n schema?: DataExtensionSchema;\n fqdn: string;\n form: CustomFieldForm;\n filterable?: boolean;\n}\n\nexport interface ArchiveFieldParams {\n schema?: DataExtensionSchema;\n fqdn: string;\n id: string;\n}\n\nexport class DataExtensionSchemaService {\n readonly httpClient: WixPatternsEssentials['httpClient'];\n readonly translate: WixPatternsContainer['translate'];\n readonly errorHandler;\n\n readonly userFieldsNamespace = '_user_fields';\n\n static toSchemaType(type?: CustomFieldType) {\n switch (type) {\n case 'shortText':\n return {\n type: 'string',\n format: 'single-line',\n maxLength: 120,\n };\n case 'longText':\n return {\n type: 'string',\n maxLength: 200,\n };\n case 'url':\n return {\n type: 'string',\n format: 'uri',\n maxLength: 256,\n };\n case 'date':\n return {\n type: 'string',\n format: 'date',\n };\n case 'dateTime':\n return {\n type: 'string',\n format: 'date-time',\n };\n case 'integer':\n return {\n type: 'integer',\n };\n case 'decimal':\n return {\n type: 'number',\n };\n case 'checkbox':\n return {\n type: 'boolean',\n };\n case 'dropdown':\n return {\n type: 'array',\n items: {\n type: 'string',\n },\n };\n default:\n throw new Error(`Unexpected type: ${type}`);\n }\n }\n\n static toCustomType(field: DataExtensionField): CustomFieldType | undefined {\n switch (field.type) {\n case 'string':\n if (field.hasOwnProperty('enum')) {\n return 'dropdown';\n }\n switch (field.format) {\n case 'date-time':\n return 'dateTime';\n case 'uri':\n return 'url';\n case 'date':\n return 'date';\n case 'single-line':\n return 'shortText';\n default:\n return 'longText';\n }\n case 'number':\n return 'decimal';\n case 'integer':\n return 'integer';\n case 'boolean':\n return 'checkbox';\n case 'array': {\n if (field.items?.['x-wix-object-type'] === 'FILE/V1') {\n return 'files';\n }\n return 'multiSelect';\n }\n case 'object': {\n if (field['x-wix-object-type'] === 'FILE/V1') {\n return 'files';\n }\n return 'dropdown';\n }\n default:\n return;\n }\n }\n\n static toCustomField(\n schema: DataExtensionSchema,\n key: string,\n ): DataExtensionField | undefined {\n const property: DataExtensionField = schema.jsonSchema?.properties?.[key];\n\n if (!property || typeof property !== 'object') {\n return;\n }\n\n if (\n typeof property.title !== 'string' ||\n typeof property.type !== 'string' ||\n typeof property['x-wix-permissions'] !== 'object'\n ) {\n return;\n }\n\n return { ...property, id: key };\n }\n\n constructor(params: DataExtensionSchemaServiceParams) {\n this.httpClient = params.httpClient;\n this.translate = params.translate;\n this.errorHandler = params.errorHandler;\n }\n addCustomField(params: AddFieldParams) {\n const { userFieldsNamespace } = this;\n const {\n form: {\n key,\n name,\n readApps,\n readUsers,\n writeApps,\n writeUsers,\n containsPii,\n },\n fqdn,\n } = params;\n const type = DataExtensionSchemaService.toSchemaType(params.form.type);\n\n const permissions = {\n read: [\n 'users',\n ...(readUsers ? ['users-of-users'] : []),\n ...(readApps ? ['apps'] : []),\n ],\n write: [\n 'users',\n ...(writeUsers ? ['users-of-users'] : []),\n ...(writeApps ? ['apps'] : []),\n ],\n };\n\n const filterable = params.filterable ? { 'x-wix-filterable': true } : {};\n\n const schema: DataExtensionSchema = {\n fqdn,\n namespace: userFieldsNamespace,\n ...params.schema,\n jsonSchema: {\n properties: {\n ...params.schema?.jsonSchema?.properties,\n [key]: {\n ...params.schema?.jsonSchema?.properties[key],\n title: name,\n ...(containsPii ? { 'x-wix-pii': { enabled: true } } : {}),\n ...type,\n 'x-wix-permissions': permissions,\n ...filterable,\n },\n },\n },\n };\n\n return params.schema?.id\n ? this._updateDataExtensionSchema(schema)\n : this._createDataExtensionSchema(schema);\n }\n\n archiveCustomField(params: ArchiveFieldParams) {\n const { userFieldsNamespace } = this;\n const { id, fqdn } = params;\n\n const schema: DataExtensionSchema = {\n fqdn,\n namespace: userFieldsNamespace,\n ...params.schema,\n jsonSchema: {\n properties: {\n ...params.schema?.jsonSchema?.properties,\n [id]: {\n ...params.schema?.jsonSchema?.properties[id],\n 'x-wix-archived': true,\n },\n },\n },\n };\n return this._updateDataExtensionSchema(schema);\n }\n\n async fetchSchemas(fqdn: string) {\n const { httpClient, errorHandler } = this;\n\n const res = await errorHandler.withErrorHandler(\n () =>\n httpClient.request(\n listDataExtensionSchemas({\n fqdn,\n namespaces: [],\n fields: [RequestedField.ARCHIVED],\n }),\n ),\n { errorCodesMap: {} },\n );\n\n return res.data;\n }\n\n private async _createDataExtensionSchema(schema: DataExtensionSchema) {\n const { httpClient, errorHandler } = this;\n\n return errorHandler\n .withErrorHandler(\n () =>\n httpClient.request(\n createDataExtensionSchema({ dataExtensionSchema: schema }),\n ),\n {\n errorCodesMap: createDataExtensionSchemaErrors({\n translate: this.translate,\n }),\n },\n )\n .then((res) => res.data);\n }\n\n private async _updateDataExtensionSchema(schema: DataExtensionSchema) {\n const { httpClient, errorHandler } = this;\n return errorHandler\n .withErrorHandler(\n () =>\n httpClient.request(\n updateDataExtensionSchema({ dataExtensionSchema: schema }),\n ),\n {\n errorCodesMap: updateDataExtensionSchemaErrors({\n translate: this.translate,\n }),\n },\n )\n .then((res) => res.data);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_types","require","_http","_updateDataExtensionSchemaErrors","_createDataExtensionSchemaErrors","DataExtensionSchemaService","toSchemaType","type","format","maxLength","items","Error","toCustomType","field","hasOwnProperty","_field$items","toCustomField","schema","key","_schema$jsonSchema","property","jsonSchema","properties","title","id","constructor","params","_defineProperty2","default","httpClient","translate","errorHandler","addCustomField","_params$schema","_params$schema2","_params$schema3","userFieldsNamespace","form","name","readApps","readUsers","writeApps","writeUsers","containsPii","fqdn","permissions","read","write","filterable","namespace","enabled","_updateDataExtensionSchema","_createDataExtensionSchema","archiveCustomField","_params$schema4","_params$schema5","fetchSchemas","res","withErrorHandler","request","listDataExtensionSchemas","namespaces","fields","RequestedField","ARCHIVED","data","createDataExtensionSchema","dataExtensionSchema","createDataExtensionSchemaErrors","then","updateDataExtensionSchema","updateDataExtensionSchemaErrors","exports"],"sources":["../../../../src/services/DataExtensionService/dataExtensionService.ts"],"sourcesContent":["import {\n DataExtensionSchema,\n RequestedField,\n} from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/types';\nimport {\n createDataExtensionSchema,\n listDataExtensionSchemas,\n updateDataExtensionSchema,\n} from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/http';\nimport { CustomFieldForm, WixPatternsContainer } from '../../state';\nimport { PatternsErrorHandler, WixPatternsEssentials } from '../../model';\nimport { updateDataExtensionSchemaErrors } from './updateDataExtensionSchemaErrors';\nimport { createDataExtensionSchemaErrors } from './createDataExtensionSchemaErrors';\n\nexport interface DataExtensionSchemaServiceParams {\n readonly httpClient: WixPatternsEssentials['httpClient'];\n readonly translate: WixPatternsContainer['translate'];\n readonly errorHandler: PatternsErrorHandler;\n}\n\n// server types\nexport type DataExtensionType =\n | 'string'\n | 'number'\n | 'integer'\n | 'boolean'\n | 'array'\n | 'object';\n\nexport type DataExtensionPermission =\n | 'apps'\n | 'owning-app'\n | 'users'\n | 'users-of-users';\n\ninterface DataExtensionFieldItems\n extends Partial<Omit<DataExtensionField, 'type' | 'maxLength'>> {\n type: Omit<DataExtensionType, 'array'>;\n maxLength: number;\n}\nexport interface DataExtensionField {\n id: string;\n type?: DataExtensionType;\n format?: 'date-time' | 'date' | 'single-line' | 'uri' | string;\n title?: string;\n maxLength?: number;\n enum?: string[];\n 'x-wix-archived'?: boolean;\n 'x-wix-filterable'?: boolean;\n 'x-wix-created-date': string;\n 'x-wix-object-type'?: string;\n 'x-wix-permissions': {\n read: DataExtensionPermission[];\n write: DataExtensionPermission[];\n };\n properties?: Record<string, any>;\n items?: DataExtensionFieldItems;\n 'x-wix-pii'?: { enabled: boolean };\n}\n\n// client types\nexport type CustomFieldType =\n | 'shortText'\n | 'longText'\n | 'url'\n | 'date'\n | 'dateTime'\n | 'integer'\n | 'decimal'\n | 'checkbox'\n | 'dropdown'\n | 'files'\n | 'multiSelect';\n\nexport type CustomFieldOrigin =\n | 'Custom columns panel'\n | 'Custom fields panel'\n | 'Custom fields widget'\n | 'external';\n\nexport interface ExtendedFieldsDataMap {\n [key: string]: any;\n}\n\nexport interface ExtendedFields {\n _type?: 'ExtendedFields';\n /**\n * Data Extensions extended fields\n * Key: Namespace\n * Value: extended fields data in Struct format\n */\n namespaces?: {\n _user_fields?: ExtendedFieldsDataMap | undefined;\n [key: string]: ExtendedFieldsDataMap | undefined;\n };\n}\n\nexport type CustomFieldOwner = 'user' | 'app';\n\nexport interface CustomField {\n id: string;\n type: CustomFieldType;\n label?: string;\n maxLength?: number;\n options?: string[];\n editable: boolean;\n filterable?: boolean;\n owner: CustomFieldOwner;\n properties?: Record<string, string>;\n namespace: string;\n permissions?: {\n read?: DataExtensionPermission[];\n write?: DataExtensionPermission[];\n };\n}\n\nexport interface AddFieldParams {\n schema?: DataExtensionSchema;\n fqdn: string;\n form: CustomFieldForm;\n filterable?: boolean;\n}\n\nexport interface ArchiveFieldParams {\n schema?: DataExtensionSchema;\n fqdn: string;\n id: string;\n}\n\nexport class DataExtensionSchemaService {\n readonly httpClient: WixPatternsEssentials['httpClient'];\n readonly translate: WixPatternsContainer['translate'];\n readonly errorHandler;\n\n readonly userFieldsNamespace = '_user_fields';\n\n static toSchemaType(type?: CustomFieldType) {\n switch (type) {\n case 'shortText':\n return {\n type: 'string',\n format: 'single-line',\n maxLength: 120,\n };\n case 'longText':\n return {\n type: 'string',\n maxLength: 200,\n };\n case 'url':\n return {\n type: 'string',\n format: 'uri',\n maxLength: 256,\n };\n case 'date':\n return {\n type: 'string',\n format: 'date',\n };\n case 'dateTime':\n return {\n type: 'string',\n format: 'date-time',\n };\n case 'integer':\n return {\n type: 'integer',\n };\n case 'decimal':\n return {\n type: 'number',\n };\n case 'checkbox':\n return {\n type: 'boolean',\n };\n case 'dropdown':\n return {\n type: 'array',\n items: {\n type: 'string',\n },\n };\n default:\n throw new Error(`Unexpected type: ${type}`);\n }\n }\n\n static toCustomType(field: DataExtensionField): CustomFieldType | undefined {\n switch (field.type) {\n case 'string':\n if (field.hasOwnProperty('enum')) {\n return 'dropdown';\n }\n switch (field.format) {\n case 'date-time':\n return 'dateTime';\n case 'uri':\n return 'url';\n case 'date':\n return 'date';\n case 'single-line':\n return 'shortText';\n default:\n return 'longText';\n }\n case 'number':\n return 'decimal';\n case 'integer':\n return 'integer';\n case 'boolean':\n return 'checkbox';\n case 'array': {\n if (field.items?.['x-wix-object-type'] === 'FILE/V1') {\n return 'files';\n }\n return 'multiSelect';\n }\n case 'object': {\n if (field['x-wix-object-type'] === 'FILE/V1') {\n return 'files';\n }\n return 'dropdown';\n }\n default:\n return;\n }\n }\n\n static toCustomField(\n schema: DataExtensionSchema,\n key: string,\n ): DataExtensionField | undefined {\n const property: DataExtensionField = schema.jsonSchema?.properties?.[key];\n\n if (!property || typeof property !== 'object') {\n return;\n }\n\n if (\n typeof property.title !== 'string' ||\n typeof property.type !== 'string' ||\n typeof property['x-wix-permissions'] !== 'object'\n ) {\n return;\n }\n\n return { ...property, id: key };\n }\n\n constructor(params: DataExtensionSchemaServiceParams) {\n this.httpClient = params.httpClient;\n this.translate = params.translate;\n this.errorHandler = params.errorHandler;\n }\n addCustomField(params: AddFieldParams) {\n const { userFieldsNamespace } = this;\n const {\n form: {\n key,\n name,\n readApps,\n readUsers,\n writeApps,\n writeUsers,\n containsPii,\n },\n fqdn,\n } = params;\n const type = DataExtensionSchemaService.toSchemaType(params.form.type);\n\n const permissions = {\n read: [\n 'users',\n ...(readUsers ? ['users-of-users'] : []),\n ...(readApps ? ['apps'] : []),\n ],\n write: [\n 'users',\n ...(writeUsers ? ['users-of-users'] : []),\n ...(writeApps ? ['apps'] : []),\n ],\n };\n\n const filterable = params.filterable ? { 'x-wix-filterable': true } : {};\n\n const schema: DataExtensionSchema = {\n fqdn,\n namespace: userFieldsNamespace,\n ...params.schema,\n jsonSchema: {\n properties: {\n ...params.schema?.jsonSchema?.properties,\n [key]: {\n ...params.schema?.jsonSchema?.properties[key],\n title: name,\n ...(containsPii ? { 'x-wix-pii': { enabled: true } } : {}),\n ...type,\n 'x-wix-permissions': permissions,\n ...filterable,\n },\n },\n },\n };\n\n return params.schema?.id\n ? this._updateDataExtensionSchema(schema)\n : this._createDataExtensionSchema(schema);\n }\n\n archiveCustomField(params: ArchiveFieldParams) {\n const { userFieldsNamespace } = this;\n const { id, fqdn } = params;\n\n const schema: DataExtensionSchema = {\n fqdn,\n namespace: userFieldsNamespace,\n ...params.schema,\n jsonSchema: {\n properties: {\n ...params.schema?.jsonSchema?.properties,\n [id]: {\n ...params.schema?.jsonSchema?.properties[id],\n 'x-wix-archived': true,\n },\n },\n },\n };\n return this._updateDataExtensionSchema(schema);\n }\n\n async fetchSchemas(fqdn: string) {\n const { httpClient, errorHandler } = this;\n\n const res = await errorHandler.withErrorHandler(\n () =>\n httpClient.request(\n listDataExtensionSchemas({\n fqdn,\n namespaces: [],\n fields: [RequestedField.ARCHIVED],\n }),\n ),\n {},\n );\n\n return res.data;\n }\n\n private async _createDataExtensionSchema(schema: DataExtensionSchema) {\n const { httpClient, errorHandler } = this;\n\n return errorHandler\n .withErrorHandler(\n () =>\n httpClient.request(\n createDataExtensionSchema({ dataExtensionSchema: schema }),\n ),\n createDataExtensionSchemaErrors({\n translate: this.translate,\n }),\n )\n .then((res) => res.data);\n }\n\n private async _updateDataExtensionSchema(schema: DataExtensionSchema) {\n const { httpClient, errorHandler } = this;\n return errorHandler\n .withErrorHandler(\n () =>\n httpClient.request(\n updateDataExtensionSchema({ dataExtensionSchema: schema }),\n ),\n updateDataExtensionSchemaErrors({\n translate: this.translate,\n }),\n )\n .then((res) => res.data);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -6,31 +6,29 @@ const updateDataExtensionSchemaErrors = ({
6
6
  translate: t
7
7
  }) => {
8
8
  return {
9
- applicationError: {
10
- INVALID_NAMESPACE: () => ({
11
- message: t('cairo.customFields.updateDataExtension.invalid-namespace.error'),
12
- action: {
13
- text: t('cairo.error.contactSupport.cta'),
14
- onClick: () => {}
15
- }
16
- }),
17
- FQDN_NOT_FOUND: () => ({
18
- message: t('cairo.customFields.updateDataExtension.fqdn-not-found.error'),
19
- action: {
20
- text: t('cairo.error.contactSupport.cta'),
21
- onClick: () => {}
22
- }
23
- }),
24
- FQDN_NOT_EXTENSIBLE: () => ({
25
- message: t('cairo.customFields.updateDataExtension.fqdn-not-extensible.error')
26
- }),
27
- REMOVING_FIELDS_IS_DISALLOWED: () => ({
28
- message: t('cairo.customFields.updateDataExtension.removing-fields-not-allowed.error')
29
- }),
30
- CHANGING_FIELDS_IS_DISALLOWED: () => ({
31
- message: t('cairo.customFields.updateDataExtension.changing-fields-not-allowed.error')
32
- })
33
- }
9
+ INVALID_NAMESPACE: () => ({
10
+ message: t('cairo.customFields.updateDataExtension.invalid-namespace.error'),
11
+ action: {
12
+ text: t('cairo.error.contactSupport.cta'),
13
+ onClick: () => {}
14
+ }
15
+ }),
16
+ FQDN_NOT_FOUND: () => ({
17
+ message: t('cairo.customFields.updateDataExtension.fqdn-not-found.error'),
18
+ action: {
19
+ text: t('cairo.error.contactSupport.cta'),
20
+ onClick: () => {}
21
+ }
22
+ }),
23
+ FQDN_NOT_EXTENSIBLE: () => ({
24
+ message: t('cairo.customFields.updateDataExtension.fqdn-not-extensible.error')
25
+ }),
26
+ REMOVING_FIELDS_IS_DISALLOWED: () => ({
27
+ message: t('cairo.customFields.updateDataExtension.removing-fields-not-allowed.error')
28
+ }),
29
+ CHANGING_FIELDS_IS_DISALLOWED: () => ({
30
+ message: t('cairo.customFields.updateDataExtension.changing-fields-not-allowed.error')
31
+ })
34
32
  };
35
33
  };
36
34
  exports.updateDataExtensionSchemaErrors = updateDataExtensionSchemaErrors;
@@ -1 +1 @@
1
- {"version":3,"names":["updateDataExtensionSchemaErrors","translate","t","applicationError","INVALID_NAMESPACE","message","action","text","onClick","FQDN_NOT_FOUND","FQDN_NOT_EXTENSIBLE","REMOVING_FIELDS_IS_DISALLOWED","CHANGING_FIELDS_IS_DISALLOWED","exports"],"sources":["../../../../src/services/DataExtensionService/updateDataExtensionSchemaErrors.ts"],"sourcesContent":["import { ErrorCodesMap } from '@wix/fe-essentials/error-handler';\nimport { Translate } from '../translations';\n\nexport const updateDataExtensionSchemaErrors = ({\n translate: t,\n}: {\n translate: Translate;\n}): ErrorCodesMap => {\n return {\n applicationError: {\n INVALID_NAMESPACE: () => ({\n message: t(\n 'cairo.customFields.updateDataExtension.invalid-namespace.error',\n ),\n action: {\n text: t('cairo.error.contactSupport.cta'),\n onClick: () => {},\n },\n }),\n FQDN_NOT_FOUND: () => ({\n message: t(\n 'cairo.customFields.updateDataExtension.fqdn-not-found.error',\n ),\n action: {\n text: t('cairo.error.contactSupport.cta'),\n onClick: () => {},\n },\n }),\n FQDN_NOT_EXTENSIBLE: () => ({\n message: t(\n 'cairo.customFields.updateDataExtension.fqdn-not-extensible.error',\n ),\n }),\n REMOVING_FIELDS_IS_DISALLOWED: () => ({\n message: t(\n 'cairo.customFields.updateDataExtension.removing-fields-not-allowed.error',\n ),\n }),\n CHANGING_FIELDS_IS_DISALLOWED: () => ({\n message: t(\n 'cairo.customFields.updateDataExtension.changing-fields-not-allowed.error',\n ),\n }),\n },\n };\n};\n"],"mappings":";;;;AAGO,MAAMA,+BAA+B,GAAGA,CAAC;EAC9CC,SAAS,EAAEC;AAGb,CAAC,KAAoB;EACnB,OAAO;IACLC,gBAAgB,EAAE;MAChBC,iBAAiB,EAAEA,CAAA,MAAO;QACxBC,OAAO,EAAEH,CAAC,CACR,gEACF,CAAC;QACDI,MAAM,EAAE;UACNC,IAAI,EAAEL,CAAC,CAAC,gCAAgC,CAAC;UACzCM,OAAO,EAAEA,CAAA,KAAM,CAAC;QAClB;MACF,CAAC,CAAC;MACFC,cAAc,EAAEA,CAAA,MAAO;QACrBJ,OAAO,EAAEH,CAAC,CACR,6DACF,CAAC;QACDI,MAAM,EAAE;UACNC,IAAI,EAAEL,CAAC,CAAC,gCAAgC,CAAC;UACzCM,OAAO,EAAEA,CAAA,KAAM,CAAC;QAClB;MACF,CAAC,CAAC;MACFE,mBAAmB,EAAEA,CAAA,MAAO;QAC1BL,OAAO,EAAEH,CAAC,CACR,kEACF;MACF,CAAC,CAAC;MACFS,6BAA6B,EAAEA,CAAA,MAAO;QACpCN,OAAO,EAAEH,CAAC,CACR,0EACF;MACF,CAAC,CAAC;MACFU,6BAA6B,EAAEA,CAAA,MAAO;QACpCP,OAAO,EAAEH,CAAC,CACR,0EACF;MACF,CAAC;IACH;EACF,CAAC;AACH,CAAC;AAACW,OAAA,CAAAb,+BAAA,GAAAA,+BAAA","ignoreList":[]}
1
+ {"version":3,"names":["updateDataExtensionSchemaErrors","translate","t","INVALID_NAMESPACE","message","action","text","onClick","FQDN_NOT_FOUND","FQDN_NOT_EXTENSIBLE","REMOVING_FIELDS_IS_DISALLOWED","CHANGING_FIELDS_IS_DISALLOWED","exports"],"sources":["../../../../src/services/DataExtensionService/updateDataExtensionSchemaErrors.ts"],"sourcesContent":["import { Translate } from '../translations';\nimport type { errorHandler } from '@wix/essentials';\nimport type { updateDataExtensionSchema } from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/http';\n\nexport const updateDataExtensionSchemaErrors = ({\n translate: t,\n}: {\n translate: Translate;\n}): errorHandler.ErrorCodesMap<typeof updateDataExtensionSchema> => {\n return {\n INVALID_NAMESPACE: () => ({\n message: t(\n 'cairo.customFields.updateDataExtension.invalid-namespace.error',\n ),\n action: {\n text: t('cairo.error.contactSupport.cta'),\n onClick: () => {},\n },\n }),\n FQDN_NOT_FOUND: () => ({\n message: t(\n 'cairo.customFields.updateDataExtension.fqdn-not-found.error',\n ),\n action: {\n text: t('cairo.error.contactSupport.cta'),\n onClick: () => {},\n },\n }),\n FQDN_NOT_EXTENSIBLE: () => ({\n message: t(\n 'cairo.customFields.updateDataExtension.fqdn-not-extensible.error',\n ),\n }),\n REMOVING_FIELDS_IS_DISALLOWED: () => ({\n message: t(\n 'cairo.customFields.updateDataExtension.removing-fields-not-allowed.error',\n ),\n }),\n CHANGING_FIELDS_IS_DISALLOWED: () => ({\n message: t(\n 'cairo.customFields.updateDataExtension.changing-fields-not-allowed.error',\n ),\n }),\n };\n};\n"],"mappings":";;;;AAIO,MAAMA,+BAA+B,GAAGA,CAAC;EAC9CC,SAAS,EAAEC;AAGb,CAAC,KAAmE;EAClE,OAAO;IACLC,iBAAiB,EAAEA,CAAA,MAAO;MACxBC,OAAO,EAAEF,CAAC,CACR,gEACF,CAAC;MACDG,MAAM,EAAE;QACNC,IAAI,EAAEJ,CAAC,CAAC,gCAAgC,CAAC;QACzCK,OAAO,EAAEA,CAAA,KAAM,CAAC;MAClB;IACF,CAAC,CAAC;IACFC,cAAc,EAAEA,CAAA,MAAO;MACrBJ,OAAO,EAAEF,CAAC,CACR,6DACF,CAAC;MACDG,MAAM,EAAE;QACNC,IAAI,EAAEJ,CAAC,CAAC,gCAAgC,CAAC;QACzCK,OAAO,EAAEA,CAAA,KAAM,CAAC;MAClB;IACF,CAAC,CAAC;IACFE,mBAAmB,EAAEA,CAAA,MAAO;MAC1BL,OAAO,EAAEF,CAAC,CACR,kEACF;IACF,CAAC,CAAC;IACFQ,6BAA6B,EAAEA,CAAA,MAAO;MACpCN,OAAO,EAAEF,CAAC,CACR,0EACF;IACF,CAAC,CAAC;IACFS,6BAA6B,EAAEA,CAAA,MAAO;MACpCP,OAAO,EAAEF,CAAC,CACR,0EACF;IACF,CAAC;EACH,CAAC;AACH,CAAC;AAACU,OAAA,CAAAZ,+BAAA,GAAAA,+BAAA","ignoreList":[]}
@@ -8,34 +8,32 @@ const createTagErrors = ({
8
8
  retryFn
9
9
  }) => {
10
10
  return {
11
- applicationError: {
12
- FQDN_NOT_FOUND: () => ({
13
- message: visualType === 'toast' ? t('cairo.tags.fqdn-not-found.error') : t('cairo.tags.fqdn-not-found.manageTagsModal.error'),
14
- action: {
15
- text: t('cairo.error.contactSupport.cta'),
16
- onClick: () => {
17
- // TODO: contact support
18
- }
11
+ FQDN_NOT_FOUND: () => ({
12
+ message: visualType === 'toast' ? t('cairo.tags.fqdn-not-found.error') : t('cairo.tags.fqdn-not-found.manageTagsModal.error'),
13
+ action: {
14
+ text: t('cairo.error.contactSupport.cta'),
15
+ onClick: () => {
16
+ // TODO: contact support
19
17
  }
20
- }),
21
- TAG_NAME_ALREADY_EXISTS: () => ({
22
- message: t('cairo.tags.manageTags.modal.list.input.validation.exists')
23
- }),
24
- TAGS_REACHED_LIMIT: () => ({
25
- message: getTagsReachedLimitErrorMessage({
26
- visualType,
27
- translate: t
28
- })
29
- }),
30
- CREATE_ID_EXHAUSTED_RETRY_ATTEMPTS: () => ({
31
- message: visualType === 'toast' ? t('cairo.tags.collectionPage.toast.create.error') : t('cairo.tags.manageTags.modal.toast.create.error'),
32
- action: {
33
- text: t('cairo.error.tryAgain.cta'),
34
- onClick: retryFn
35
- }
36
- }),
37
- EXPOSURE_NOT_SUPPORTED: false
38
- }
18
+ }
19
+ }),
20
+ TAG_NAME_ALREADY_EXISTS: () => ({
21
+ message: t('cairo.tags.manageTags.modal.list.input.validation.exists')
22
+ }),
23
+ TAGS_REACHED_LIMIT: () => ({
24
+ message: getTagsReachedLimitErrorMessage({
25
+ visualType,
26
+ translate: t
27
+ })
28
+ }),
29
+ CREATE_ID_EXHAUSTED_RETRY_ATTEMPTS: () => ({
30
+ message: visualType === 'toast' ? t('cairo.tags.collectionPage.toast.create.error') : t('cairo.tags.manageTags.modal.toast.create.error'),
31
+ action: {
32
+ text: t('cairo.error.tryAgain.cta'),
33
+ onClick: retryFn
34
+ }
35
+ }),
36
+ EXPOSURE_NOT_SUPPORTED: false
39
37
  };
40
38
  };
41
39
  exports.createTagErrors = createTagErrors;
@@ -1 +1 @@
1
- {"version":3,"names":["createTagErrors","translate","t","visualType","retryFn","applicationError","FQDN_NOT_FOUND","message","action","text","onClick","TAG_NAME_ALREADY_EXISTS","TAGS_REACHED_LIMIT","getTagsReachedLimitErrorMessage","CREATE_ID_EXHAUSTED_RETRY_ATTEMPTS","EXPOSURE_NOT_SUPPORTED","exports"],"sources":["../../../../src/services/tagsService/createTagErrors.ts"],"sourcesContent":["import { ErrorCodesMapRequiredApplicationError } from '@wix/fe-essentials/error-handler';\nimport { CreateTagApplicationErrors } from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/types';\nimport { TagErrorVisualType } from '../../util';\nimport { Translate } from '..';\n\nexport const createTagErrors = ({\n translate: t,\n visualType = 'toast',\n retryFn,\n}: {\n translate: Translate;\n visualType?: TagErrorVisualType;\n retryFn?: () => void;\n}): ErrorCodesMapRequiredApplicationError<CreateTagApplicationErrors> => {\n return {\n applicationError: {\n FQDN_NOT_FOUND: () => ({\n message:\n visualType === 'toast'\n ? t('cairo.tags.fqdn-not-found.error')\n : t('cairo.tags.fqdn-not-found.manageTagsModal.error'),\n action: {\n text: t('cairo.error.contactSupport.cta'),\n onClick: () => {\n // TODO: contact support\n },\n },\n }),\n TAG_NAME_ALREADY_EXISTS: () => ({\n message: t('cairo.tags.manageTags.modal.list.input.validation.exists'),\n }),\n TAGS_REACHED_LIMIT: () => ({\n message: getTagsReachedLimitErrorMessage({\n visualType,\n translate: t,\n }),\n }),\n CREATE_ID_EXHAUSTED_RETRY_ATTEMPTS: () => ({\n message:\n visualType === 'toast'\n ? t('cairo.tags.collectionPage.toast.create.error')\n : t('cairo.tags.manageTags.modal.toast.create.error'),\n action: {\n text: t('cairo.error.tryAgain.cta'),\n onClick: retryFn,\n },\n }),\n EXPOSURE_NOT_SUPPORTED: false,\n },\n };\n};\n\nexport const getTagsReachedLimitErrorMessage = ({\n visualType,\n translate: t,\n}: {\n visualType: TagErrorVisualType;\n translate: Translate;\n}): string =>\n visualType === 'toast'\n ? t('cairo.tags.popover.creationLimitReached.error')\n : t('cairo.tags.creationLimitReached.error');\n"],"mappings":";;;;AAKO,MAAMA,eAAe,GAAGA,CAAC;EAC9BC,SAAS,EAAEC,CAAC;EACZC,UAAU,GAAG,OAAO;EACpBC;AAKF,CAAC,KAAwE;EACvE,OAAO;IACLC,gBAAgB,EAAE;MAChBC,cAAc,EAAEA,CAAA,MAAO;QACrBC,OAAO,EACLJ,UAAU,KAAK,OAAO,GAClBD,CAAC,CAAC,iCAAiC,CAAC,GACpCA,CAAC,CAAC,iDAAiD,CAAC;QAC1DM,MAAM,EAAE;UACNC,IAAI,EAAEP,CAAC,CAAC,gCAAgC,CAAC;UACzCQ,OAAO,EAAEA,CAAA,KAAM;YACb;UAAA;QAEJ;MACF,CAAC,CAAC;MACFC,uBAAuB,EAAEA,CAAA,MAAO;QAC9BJ,OAAO,EAAEL,CAAC,CAAC,0DAA0D;MACvE,CAAC,CAAC;MACFU,kBAAkB,EAAEA,CAAA,MAAO;QACzBL,OAAO,EAAEM,+BAA+B,CAAC;UACvCV,UAAU;UACVF,SAAS,EAAEC;QACb,CAAC;MACH,CAAC,CAAC;MACFY,kCAAkC,EAAEA,CAAA,MAAO;QACzCP,OAAO,EACLJ,UAAU,KAAK,OAAO,GAClBD,CAAC,CAAC,8CAA8C,CAAC,GACjDA,CAAC,CAAC,gDAAgD,CAAC;QACzDM,MAAM,EAAE;UACNC,IAAI,EAAEP,CAAC,CAAC,0BAA0B,CAAC;UACnCQ,OAAO,EAAEN;QACX;MACF,CAAC,CAAC;MACFW,sBAAsB,EAAE;IAC1B;EACF,CAAC;AACH,CAAC;AAACC,OAAA,CAAAhB,eAAA,GAAAA,eAAA;AAEK,MAAMa,+BAA+B,GAAGA,CAAC;EAC9CV,UAAU;EACVF,SAAS,EAAEC;AAIb,CAAC,KACCC,UAAU,KAAK,OAAO,GAClBD,CAAC,CAAC,+CAA+C,CAAC,GAClDA,CAAC,CAAC,uCAAuC,CAAC;AAACc,OAAA,CAAAH,+BAAA,GAAAA,+BAAA","ignoreList":[]}
1
+ {"version":3,"names":["createTagErrors","translate","t","visualType","retryFn","FQDN_NOT_FOUND","message","action","text","onClick","TAG_NAME_ALREADY_EXISTS","TAGS_REACHED_LIMIT","getTagsReachedLimitErrorMessage","CREATE_ID_EXHAUSTED_RETRY_ATTEMPTS","EXPOSURE_NOT_SUPPORTED","exports"],"sources":["../../../../src/services/tagsService/createTagErrors.ts"],"sourcesContent":["import { createTag } from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/http';\nimport { TagErrorVisualType } from '../../util';\nimport { Translate } from '..';\nimport type { errorHandler } from '@wix/essentials';\n\nexport const createTagErrors = ({\n translate: t,\n visualType = 'toast',\n retryFn,\n}: {\n translate: Translate;\n visualType?: TagErrorVisualType;\n retryFn?: () => void;\n}): errorHandler.ErrorCodesMap<typeof createTag> => {\n return {\n FQDN_NOT_FOUND: () => ({\n message:\n visualType === 'toast'\n ? t('cairo.tags.fqdn-not-found.error')\n : t('cairo.tags.fqdn-not-found.manageTagsModal.error'),\n action: {\n text: t('cairo.error.contactSupport.cta'),\n onClick: () => {\n // TODO: contact support\n },\n },\n }),\n TAG_NAME_ALREADY_EXISTS: () => ({\n message: t('cairo.tags.manageTags.modal.list.input.validation.exists'),\n }),\n TAGS_REACHED_LIMIT: () => ({\n message: getTagsReachedLimitErrorMessage({\n visualType,\n translate: t,\n }),\n }),\n CREATE_ID_EXHAUSTED_RETRY_ATTEMPTS: () => ({\n message:\n visualType === 'toast'\n ? t('cairo.tags.collectionPage.toast.create.error')\n : t('cairo.tags.manageTags.modal.toast.create.error'),\n action: {\n text: t('cairo.error.tryAgain.cta'),\n onClick: retryFn,\n },\n }),\n EXPOSURE_NOT_SUPPORTED: false,\n };\n};\n\nexport const getTagsReachedLimitErrorMessage = ({\n visualType,\n translate: t,\n}: {\n visualType: TagErrorVisualType;\n translate: Translate;\n}): string =>\n visualType === 'toast'\n ? t('cairo.tags.popover.creationLimitReached.error')\n : t('cairo.tags.creationLimitReached.error');\n"],"mappings":";;;;AAKO,MAAMA,eAAe,GAAGA,CAAC;EAC9BC,SAAS,EAAEC,CAAC;EACZC,UAAU,GAAG,OAAO;EACpBC;AAKF,CAAC,KAAmD;EAClD,OAAO;IACLC,cAAc,EAAEA,CAAA,MAAO;MACrBC,OAAO,EACLH,UAAU,KAAK,OAAO,GAClBD,CAAC,CAAC,iCAAiC,CAAC,GACpCA,CAAC,CAAC,iDAAiD,CAAC;MAC1DK,MAAM,EAAE;QACNC,IAAI,EAAEN,CAAC,CAAC,gCAAgC,CAAC;QACzCO,OAAO,EAAEA,CAAA,KAAM;UACb;QAAA;MAEJ;IACF,CAAC,CAAC;IACFC,uBAAuB,EAAEA,CAAA,MAAO;MAC9BJ,OAAO,EAAEJ,CAAC,CAAC,0DAA0D;IACvE,CAAC,CAAC;IACFS,kBAAkB,EAAEA,CAAA,MAAO;MACzBL,OAAO,EAAEM,+BAA+B,CAAC;QACvCT,UAAU;QACVF,SAAS,EAAEC;MACb,CAAC;IACH,CAAC,CAAC;IACFW,kCAAkC,EAAEA,CAAA,MAAO;MACzCP,OAAO,EACLH,UAAU,KAAK,OAAO,GAClBD,CAAC,CAAC,8CAA8C,CAAC,GACjDA,CAAC,CAAC,gDAAgD,CAAC;MACzDK,MAAM,EAAE;QACNC,IAAI,EAAEN,CAAC,CAAC,0BAA0B,CAAC;QACnCO,OAAO,EAAEL;MACX;IACF,CAAC,CAAC;IACFU,sBAAsB,EAAE;EAC1B,CAAC;AACH,CAAC;AAACC,OAAA,CAAAf,eAAA,GAAAA,eAAA;AAEK,MAAMY,+BAA+B,GAAGA,CAAC;EAC9CT,UAAU;EACVF,SAAS,EAAEC;AAIb,CAAC,KACCC,UAAU,KAAK,OAAO,GAClBD,CAAC,CAAC,+CAA+C,CAAC,GAClDA,CAAC,CAAC,uCAAuC,CAAC;AAACa,OAAA,CAAAH,+BAAA,GAAAA,+BAAA","ignoreList":[]}
@@ -18,15 +18,13 @@ class TagsService {
18
18
  getContextFunction(accountFn, siteFn) {
19
19
  return this.container.contextType === 'ACCOUNT' ? accountFn : siteFn;
20
20
  }
21
- async listTags(request, errorCodesMap) {
21
+ async listTags(request, errorCodesMap, options) {
22
22
  const fn = this.getContextFunction(_http.listTagsForAccount, _http.listTags);
23
23
  const {
24
24
  data: {
25
25
  tags = []
26
26
  }
27
- } = await this.container.errorHandler.withErrorHandler(() => this.httpClient.request(fn(request)), {
28
- errorCodesMap
29
- });
27
+ } = await this.container.errorHandler.withErrorHandler(() => this.httpClient.request(fn(request)), errorCodesMap, options);
30
28
  return tags.filter(({
31
29
  id,
32
30
  name
@@ -39,18 +37,14 @@ class TagsService {
39
37
  data: {
40
38
  tag
41
39
  }
42
- } = await this.container.errorHandler.withErrorHandler(() => this.httpClient.request((0, _http.createTag)(request)), {
43
- errorCodesMap
44
- });
40
+ } = await this.container.errorHandler.withErrorHandler(() => this.httpClient.request((0, _http.createTag)(request)), errorCodesMap);
45
41
  return tag;
46
42
  } else {
47
43
  const {
48
44
  data: {
49
45
  tag
50
46
  }
51
- } = await this.container.errorHandler.withErrorHandler(() => this.httpClient.request((0, _http.createTagForAccount)(request)), {
52
- errorCodesMap
53
- });
47
+ } = await this.container.errorHandler.withErrorHandler(() => this.httpClient.request((0, _http.createTagForAccount)(request)), errorCodesMap);
54
48
  return tag;
55
49
  }
56
50
  }
@@ -60,16 +54,12 @@ class TagsService {
60
54
  data: {
61
55
  tag
62
56
  }
63
- } = await this.container.errorHandler.withErrorHandler(() => this.httpClient.request(fn(request)), {
64
- errorCodesMap: {}
65
- });
57
+ } = await this.container.errorHandler.withErrorHandler(() => this.httpClient.request(fn(request)), {});
66
58
  return tag;
67
59
  }
68
60
  async deleteTag(request) {
69
61
  const fn = this.getContextFunction(_http.deleteTagForAccount, _http.deleteTag);
70
- return this.container.errorHandler.withErrorHandler(() => this.httpClient.request(fn(request)), {
71
- errorCodesMap: {}
72
- });
62
+ return this.container.errorHandler.withErrorHandler(() => this.httpClient.request(fn(request)), {});
73
63
  }
74
64
  }
75
65
  exports.TagsService = TagsService;
@@ -1 +1 @@
1
- {"version":3,"names":["_http","require","TagsService","constructor","container","_defineProperty2","default","httpClient","getContextFunction","accountFn","siteFn","contextType","listTags","request","errorCodesMap","fn","listTagsForAccount","data","tags","errorHandler","withErrorHandler","filter","id","name","createTag","tag","createTagForAccount","updateTag","updateTagForAccount","deleteTag","deleteTagForAccount","exports"],"sources":["../../../../src/services/tagsService/tagsService.ts"],"sourcesContent":["import {\n listTags,\n listTagsForAccount,\n createTag,\n createTagForAccount,\n updateTag,\n updateTagForAccount,\n deleteTag,\n deleteTagForAccount,\n} from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/http';\nimport {\n CreateTagApplicationErrors,\n CreateTagRequest,\n DeleteTagRequest,\n DeleteTagResponse,\n ListTagsRequest,\n Tag,\n UpdateTagRequest,\n} from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/types';\nimport { WixPatternsContainer } from '../../state';\nimport {\n ErrorCodesMap,\n ErrorCodesMapRequiredApplicationError,\n} from '@wix/fe-essentials/error-handler';\n\nexport interface TagsServiceParams {\n readonly container: WixPatternsContainer;\n}\n\nexport class TagsService {\n private readonly container: WixPatternsContainer;\n\n constructor({ container }: TagsServiceParams) {\n this.container = container;\n }\n\n private get httpClient() {\n return this.container.httpClient;\n }\n\n private getContextFunction<T, U>(accountFn: T, siteFn: U): T | U {\n return this.container.contextType === 'ACCOUNT' ? accountFn : siteFn;\n }\n\n async listTags(\n request: ListTagsRequest,\n errorCodesMap: ErrorCodesMap,\n ): Promise<Tag[]> {\n const fn = this.getContextFunction(listTagsForAccount, listTags);\n const {\n data: { tags = [] },\n } = await this.container.errorHandler.withErrorHandler(\n () => this.httpClient.request(fn(request)),\n { errorCodesMap },\n );\n return tags.filter(({ id, name }) => id && name);\n }\n\n async createTag(\n request: CreateTagRequest,\n errorCodesMap: ErrorCodesMapRequiredApplicationError<CreateTagApplicationErrors>,\n ): Promise<Tag> {\n // We cannot use getContextFunction because createTagForAccount and createTag have different return signatures due to error handling\n if (this.container.contextType === 'SITE') {\n const {\n data: { tag },\n } = await this.container.errorHandler.withErrorHandler(\n () => this.httpClient.request(createTag(request)),\n { errorCodesMap },\n );\n return tag!;\n } else {\n const {\n data: { tag },\n } = await this.container.errorHandler.withErrorHandler(\n () => this.httpClient.request(createTagForAccount(request)),\n { errorCodesMap },\n );\n return tag!;\n }\n }\n\n async updateTag(request: UpdateTagRequest): Promise<Tag> {\n const fn = this.getContextFunction(updateTagForAccount, updateTag);\n const {\n data: { tag },\n } = await this.container.errorHandler.withErrorHandler(\n () => this.httpClient.request(fn(request)),\n { errorCodesMap: {} },\n );\n return tag!;\n }\n\n async deleteTag(request: DeleteTagRequest): Promise<DeleteTagResponse> {\n const fn = this.getContextFunction(deleteTagForAccount, deleteTag);\n return this.container.errorHandler.withErrorHandler(\n () => this.httpClient.request(fn(request)),\n { errorCodesMap: {} },\n );\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AA6BO,MAAMC,WAAW,CAAC;EAGvBC,WAAWA,CAAC;IAAEC;EAA6B,CAAC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAC5C,IAAI,CAACF,SAAS,GAAGA,SAAS;EAC5B;EAEA,IAAYG,UAAUA,CAAA,EAAG;IACvB,OAAO,IAAI,CAACH,SAAS,CAACG,UAAU;EAClC;EAEQC,kBAAkBA,CAAOC,SAAY,EAAEC,MAAS,EAAS;IAC/D,OAAO,IAAI,CAACN,SAAS,CAACO,WAAW,KAAK,SAAS,GAAGF,SAAS,GAAGC,MAAM;EACtE;EAEA,MAAME,QAAQA,CACZC,OAAwB,EACxBC,aAA4B,EACZ;IAChB,MAAMC,EAAE,GAAG,IAAI,CAACP,kBAAkB,CAACQ,wBAAkB,EAAEJ,cAAQ,CAAC;IAChE,MAAM;MACJK,IAAI,EAAE;QAAEC,IAAI,GAAG;MAAG;IACpB,CAAC,GAAG,MAAM,IAAI,CAACd,SAAS,CAACe,YAAY,CAACC,gBAAgB,CACpD,MAAM,IAAI,CAACb,UAAU,CAACM,OAAO,CAACE,EAAE,CAACF,OAAO,CAAC,CAAC,EAC1C;MAAEC;IAAc,CAClB,CAAC;IACD,OAAOI,IAAI,CAACG,MAAM,CAAC,CAAC;MAAEC,EAAE;MAAEC;IAAK,CAAC,KAAKD,EAAE,IAAIC,IAAI,CAAC;EAClD;EAEA,MAAMC,SAASA,CACbX,OAAyB,EACzBC,aAAgF,EAClE;IACd;IACA,IAAI,IAAI,CAACV,SAAS,CAACO,WAAW,KAAK,MAAM,EAAE;MACzC,MAAM;QACJM,IAAI,EAAE;UAAEQ;QAAI;MACd,CAAC,GAAG,MAAM,IAAI,CAACrB,SAAS,CAACe,YAAY,CAACC,gBAAgB,CACpD,MAAM,IAAI,CAACb,UAAU,CAACM,OAAO,CAAC,IAAAW,eAAS,EAACX,OAAO,CAAC,CAAC,EACjD;QAAEC;MAAc,CAClB,CAAC;MACD,OAAOW,GAAG;IACZ,CAAC,MAAM;MACL,MAAM;QACJR,IAAI,EAAE;UAAEQ;QAAI;MACd,CAAC,GAAG,MAAM,IAAI,CAACrB,SAAS,CAACe,YAAY,CAACC,gBAAgB,CACpD,MAAM,IAAI,CAACb,UAAU,CAACM,OAAO,CAAC,IAAAa,yBAAmB,EAACb,OAAO,CAAC,CAAC,EAC3D;QAAEC;MAAc,CAClB,CAAC;MACD,OAAOW,GAAG;IACZ;EACF;EAEA,MAAME,SAASA,CAACd,OAAyB,EAAgB;IACvD,MAAME,EAAE,GAAG,IAAI,CAACP,kBAAkB,CAACoB,yBAAmB,EAAED,eAAS,CAAC;IAClE,MAAM;MACJV,IAAI,EAAE;QAAEQ;MAAI;IACd,CAAC,GAAG,MAAM,IAAI,CAACrB,SAAS,CAACe,YAAY,CAACC,gBAAgB,CACpD,MAAM,IAAI,CAACb,UAAU,CAACM,OAAO,CAACE,EAAE,CAACF,OAAO,CAAC,CAAC,EAC1C;MAAEC,aAAa,EAAE,CAAC;IAAE,CACtB,CAAC;IACD,OAAOW,GAAG;EACZ;EAEA,MAAMI,SAASA,CAAChB,OAAyB,EAA8B;IACrE,MAAME,EAAE,GAAG,IAAI,CAACP,kBAAkB,CAACsB,yBAAmB,EAAED,eAAS,CAAC;IAClE,OAAO,IAAI,CAACzB,SAAS,CAACe,YAAY,CAACC,gBAAgB,CACjD,MAAM,IAAI,CAACb,UAAU,CAACM,OAAO,CAACE,EAAE,CAACF,OAAO,CAAC,CAAC,EAC1C;MAAEC,aAAa,EAAE,CAAC;IAAE,CACtB,CAAC;EACH;AACF;AAACiB,OAAA,CAAA7B,WAAA,GAAAA,WAAA","ignoreList":[]}
1
+ {"version":3,"names":["_http","require","TagsService","constructor","container","_defineProperty2","default","httpClient","getContextFunction","accountFn","siteFn","contextType","listTags","request","errorCodesMap","options","fn","listTagsForAccount","data","tags","errorHandler","withErrorHandler","filter","id","name","createTag","tag","createTagForAccount","updateTag","updateTagForAccount","deleteTag","deleteTagForAccount","exports"],"sources":["../../../../src/services/tagsService/tagsService.ts"],"sourcesContent":["import {\n listTags,\n listTagsForAccount,\n createTag,\n createTagForAccount,\n updateTag,\n updateTagForAccount,\n deleteTag,\n deleteTagForAccount,\n} from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/http';\nimport {\n CreateTagRequest,\n DeleteTagRequest,\n DeleteTagResponse,\n ListTagsRequest,\n Tag,\n UpdateTagRequest,\n} from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/types';\nimport { WixPatternsContainer } from '../../state';\nimport type { errorHandler } from '@wix/essentials';\n\nexport interface TagsServiceParams {\n readonly container: WixPatternsContainer;\n}\n\nexport class TagsService {\n private readonly container: WixPatternsContainer;\n\n constructor({ container }: TagsServiceParams) {\n this.container = container;\n }\n\n private get httpClient() {\n return this.container.httpClient;\n }\n\n private getContextFunction<T, U>(accountFn: T, siteFn: U): T | U {\n return this.container.contextType === 'ACCOUNT' ? accountFn : siteFn;\n }\n\n async listTags(\n request: ListTagsRequest,\n errorCodesMap: errorHandler.ErrorCodesMap<typeof listTags>,\n options: {\n serverErrorOverride: errorHandler.ShowErrorMapFunction;\n },\n ): Promise<Tag[]> {\n const fn = this.getContextFunction(listTagsForAccount, listTags);\n const {\n data: { tags = [] },\n } = await this.container.errorHandler.withErrorHandler(\n () => this.httpClient.request(fn(request)),\n errorCodesMap,\n options,\n );\n return tags.filter(({ id, name }) => id && name);\n }\n\n async createTag(\n request: CreateTagRequest,\n errorCodesMap: errorHandler.ErrorCodesMap<typeof createTag>,\n ): Promise<Tag> {\n // We cannot use getContextFunction because createTagForAccount and createTag have different return signatures due to error handling\n if (this.container.contextType === 'SITE') {\n const {\n data: { tag },\n } = await this.container.errorHandler.withErrorHandler(\n () => this.httpClient.request(createTag(request)),\n errorCodesMap,\n );\n return tag!;\n } else {\n const {\n data: { tag },\n } = await this.container.errorHandler.withErrorHandler(\n () => this.httpClient.request(createTagForAccount(request)),\n errorCodesMap,\n );\n return tag!;\n }\n }\n\n async updateTag(request: UpdateTagRequest): Promise<Tag> {\n const fn = this.getContextFunction(updateTagForAccount, updateTag);\n const {\n data: { tag },\n } = await this.container.errorHandler.withErrorHandler(\n () => this.httpClient.request(fn(request)),\n {},\n );\n return tag!;\n }\n\n async deleteTag(request: DeleteTagRequest): Promise<DeleteTagResponse> {\n const fn = this.getContextFunction(deleteTagForAccount, deleteTag);\n return this.container.errorHandler.withErrorHandler(\n () => this.httpClient.request(fn(request)),\n {},\n );\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAyBO,MAAMC,WAAW,CAAC;EAGvBC,WAAWA,CAAC;IAAEC;EAA6B,CAAC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAC5C,IAAI,CAACF,SAAS,GAAGA,SAAS;EAC5B;EAEA,IAAYG,UAAUA,CAAA,EAAG;IACvB,OAAO,IAAI,CAACH,SAAS,CAACG,UAAU;EAClC;EAEQC,kBAAkBA,CAAOC,SAAY,EAAEC,MAAS,EAAS;IAC/D,OAAO,IAAI,CAACN,SAAS,CAACO,WAAW,KAAK,SAAS,GAAGF,SAAS,GAAGC,MAAM;EACtE;EAEA,MAAME,QAAQA,CACZC,OAAwB,EACxBC,aAA0D,EAC1DC,OAEC,EACe;IAChB,MAAMC,EAAE,GAAG,IAAI,CAACR,kBAAkB,CAACS,wBAAkB,EAAEL,cAAQ,CAAC;IAChE,MAAM;MACJM,IAAI,EAAE;QAAEC,IAAI,GAAG;MAAG;IACpB,CAAC,GAAG,MAAM,IAAI,CAACf,SAAS,CAACgB,YAAY,CAACC,gBAAgB,CACpD,MAAM,IAAI,CAACd,UAAU,CAACM,OAAO,CAACG,EAAE,CAACH,OAAO,CAAC,CAAC,EAC1CC,aAAa,EACbC,OACF,CAAC;IACD,OAAOI,IAAI,CAACG,MAAM,CAAC,CAAC;MAAEC,EAAE;MAAEC;IAAK,CAAC,KAAKD,EAAE,IAAIC,IAAI,CAAC;EAClD;EAEA,MAAMC,SAASA,CACbZ,OAAyB,EACzBC,aAA2D,EAC7C;IACd;IACA,IAAI,IAAI,CAACV,SAAS,CAACO,WAAW,KAAK,MAAM,EAAE;MACzC,MAAM;QACJO,IAAI,EAAE;UAAEQ;QAAI;MACd,CAAC,GAAG,MAAM,IAAI,CAACtB,SAAS,CAACgB,YAAY,CAACC,gBAAgB,CACpD,MAAM,IAAI,CAACd,UAAU,CAACM,OAAO,CAAC,IAAAY,eAAS,EAACZ,OAAO,CAAC,CAAC,EACjDC,aACF,CAAC;MACD,OAAOY,GAAG;IACZ,CAAC,MAAM;MACL,MAAM;QACJR,IAAI,EAAE;UAAEQ;QAAI;MACd,CAAC,GAAG,MAAM,IAAI,CAACtB,SAAS,CAACgB,YAAY,CAACC,gBAAgB,CACpD,MAAM,IAAI,CAACd,UAAU,CAACM,OAAO,CAAC,IAAAc,yBAAmB,EAACd,OAAO,CAAC,CAAC,EAC3DC,aACF,CAAC;MACD,OAAOY,GAAG;IACZ;EACF;EAEA,MAAME,SAASA,CAACf,OAAyB,EAAgB;IACvD,MAAMG,EAAE,GAAG,IAAI,CAACR,kBAAkB,CAACqB,yBAAmB,EAAED,eAAS,CAAC;IAClE,MAAM;MACJV,IAAI,EAAE;QAAEQ;MAAI;IACd,CAAC,GAAG,MAAM,IAAI,CAACtB,SAAS,CAACgB,YAAY,CAACC,gBAAgB,CACpD,MAAM,IAAI,CAACd,UAAU,CAACM,OAAO,CAACG,EAAE,CAACH,OAAO,CAAC,CAAC,EAC1C,CAAC,CACH,CAAC;IACD,OAAOa,GAAG;EACZ;EAEA,MAAMI,SAASA,CAACjB,OAAyB,EAA8B;IACrE,MAAMG,EAAE,GAAG,IAAI,CAACR,kBAAkB,CAACuB,yBAAmB,EAAED,eAAS,CAAC;IAClE,OAAO,IAAI,CAAC1B,SAAS,CAACgB,YAAY,CAACC,gBAAgB,CACjD,MAAM,IAAI,CAACd,UAAU,CAACM,OAAO,CAACG,EAAE,CAACH,OAAO,CAAC,CAAC,EAC1C,CAAC,CACH,CAAC;EACH;AACF;AAACmB,OAAA,CAAA9B,WAAA,GAAAA,WAAA","ignoreList":[]}