@webiny/tenant-manager 6.3.0-beta.4 → 6.4.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. package/TenantManager.js +8 -9
  2. package/TenantManager.js.map +1 -1
  3. package/admin/CurrentTenant/CurrentTenant.js +15 -24
  4. package/admin/CurrentTenant/CurrentTenant.js.map +1 -1
  5. package/admin/CurrentTenant/CurrentTenantGateway.js +18 -19
  6. package/admin/CurrentTenant/CurrentTenantGateway.js.map +1 -1
  7. package/admin/CurrentTenant/CurrentTenantPresenter.js +26 -23
  8. package/admin/CurrentTenant/CurrentTenantPresenter.js.map +1 -1
  9. package/admin/CurrentTenant/CurrentTenantRepository.js +30 -29
  10. package/admin/CurrentTenant/CurrentTenantRepository.js.map +1 -1
  11. package/admin/CurrentTenant/abstractions.js +4 -12
  12. package/admin/CurrentTenant/abstractions.js.map +1 -1
  13. package/admin/CurrentTenant/feature.js +15 -14
  14. package/admin/CurrentTenant/feature.js.map +1 -1
  15. package/admin/CurrentTenant/useCurrentTenant.js +11 -16
  16. package/admin/CurrentTenant/useCurrentTenant.js.map +1 -1
  17. package/admin/CurrentTenantProvider.js +5 -8
  18. package/admin/CurrentTenantProvider.js.map +1 -1
  19. package/admin/DisableTenant/DisableTenantGateway.js +21 -22
  20. package/admin/DisableTenant/DisableTenantGateway.js.map +1 -1
  21. package/admin/DisableTenant/DisableTenantRepository.js +13 -10
  22. package/admin/DisableTenant/DisableTenantRepository.js.map +1 -1
  23. package/admin/DisableTenant/DisableTenantUseCase.js +13 -10
  24. package/admin/DisableTenant/DisableTenantUseCase.js.map +1 -1
  25. package/admin/DisableTenant/abstractions.js +4 -12
  26. package/admin/DisableTenant/abstractions.js.map +1 -1
  27. package/admin/DisableTenant/feature.js +15 -14
  28. package/admin/DisableTenant/feature.js.map +1 -1
  29. package/admin/DisableTenant/index.js +0 -2
  30. package/admin/DisableTenant/useDisableTenant.js +20 -20
  31. package/admin/DisableTenant/useDisableTenant.js.map +1 -1
  32. package/admin/EnableTenant/EnableTenantGateway.js +21 -22
  33. package/admin/EnableTenant/EnableTenantGateway.js.map +1 -1
  34. package/admin/EnableTenant/EnableTenantRepository.js +13 -10
  35. package/admin/EnableTenant/EnableTenantRepository.js.map +1 -1
  36. package/admin/EnableTenant/EnableTenantUseCase.js +13 -10
  37. package/admin/EnableTenant/EnableTenantUseCase.js.map +1 -1
  38. package/admin/EnableTenant/abstractions.js +4 -12
  39. package/admin/EnableTenant/abstractions.js.map +1 -1
  40. package/admin/EnableTenant/feature.js +15 -14
  41. package/admin/EnableTenant/feature.js.map +1 -1
  42. package/admin/EnableTenant/index.js +0 -2
  43. package/admin/EnableTenant/useEnableTenant.js +19 -18
  44. package/admin/EnableTenant/useEnableTenant.js.map +1 -1
  45. package/admin/Extension.js +32 -36
  46. package/admin/Extension.js.map +1 -1
  47. package/admin/IsRootTenant.js +14 -32
  48. package/admin/IsRootTenant.js.map +1 -1
  49. package/admin/SecurityPermission.js +11 -14
  50. package/admin/SecurityPermission.js.map +1 -1
  51. package/admin/TenantEntryList/DisableTenant/useDisableTenantDialog.js +36 -37
  52. package/admin/TenantEntryList/DisableTenant/useDisableTenantDialog.js.map +1 -1
  53. package/admin/TenantEntryList/EnableTenant/EnableTenant.js +10 -14
  54. package/admin/TenantEntryList/EnableTenant/EnableTenant.js.map +1 -1
  55. package/admin/TenantEntryList/EnableTenant/useEnableTenant.js +34 -33
  56. package/admin/TenantEntryList/EnableTenant/useEnableTenant.js.map +1 -1
  57. package/admin/TenantEntryList/FolderNameCell.js +19 -24
  58. package/admin/TenantEntryList/FolderNameCell.js.map +1 -1
  59. package/admin/TenantEntryList/InstallTenantButton/InstallTenant.js +10 -14
  60. package/admin/TenantEntryList/InstallTenantButton/InstallTenant.js.map +1 -1
  61. package/admin/TenantEntryList/InstallTenantButton/installTenant.gql.js +3 -2
  62. package/admin/TenantEntryList/InstallTenantButton/installTenant.gql.js.map +1 -1
  63. package/admin/TenantEntryList/InstallTenantButton/useInstallTenant.js +34 -38
  64. package/admin/TenantEntryList/InstallTenantButton/useInstallTenant.js.map +1 -1
  65. package/admin/TenantEntryList/ManageTenant.js +15 -16
  66. package/admin/TenantEntryList/ManageTenant.js.map +1 -1
  67. package/admin/TenantEntryList/TenantCell.js +15 -30
  68. package/admin/TenantEntryList/TenantCell.js.map +1 -1
  69. package/admin/TenantEntryList/TenantNameCell.js +35 -45
  70. package/admin/TenantEntryList/TenantNameCell.js.map +1 -1
  71. package/admin/TenantEntryList.js +43 -60
  72. package/admin/TenantEntryList.js.map +1 -1
  73. package/admin/TenantSelector.js +31 -35
  74. package/admin/TenantSelector.js.map +1 -1
  75. package/admin/domain/permissionsSchema.js +4 -3
  76. package/admin/domain/permissionsSchema.js.map +1 -1
  77. package/admin/features/permissions/abstractions.js +2 -1
  78. package/admin/features/permissions/abstractions.js.map +1 -1
  79. package/admin/features/permissions/feature.js +2 -1
  80. package/admin/features/permissions/feature.js.map +1 -1
  81. package/admin/types.js +0 -3
  82. package/api/Extension.js +20 -23
  83. package/api/Extension.js.map +1 -1
  84. package/api/domain/TenantId.js +5 -7
  85. package/api/domain/TenantId.js.map +1 -1
  86. package/api/domain/TenantModel.js +59 -37
  87. package/api/domain/TenantModel.js.map +1 -1
  88. package/api/domain/TenantModelExtension.js +2 -2
  89. package/api/domain/TenantModelExtension.js.map +1 -1
  90. package/api/domain/errors.js +49 -54
  91. package/api/domain/errors.js.map +1 -1
  92. package/api/features/AddCmsPermissions/AddCmsPermissions.js +40 -31
  93. package/api/features/AddCmsPermissions/AddCmsPermissions.js.map +1 -1
  94. package/api/features/AddCmsPermissions/feature.js +6 -5
  95. package/api/features/AddCmsPermissions/feature.js.map +1 -1
  96. package/api/features/CreateAndInstallTenant/CreateAndInstallTenantUseCase.js +67 -85
  97. package/api/features/CreateAndInstallTenant/CreateAndInstallTenantUseCase.js.map +1 -1
  98. package/api/features/CreateAndInstallTenant/abstractions.js +2 -6
  99. package/api/features/CreateAndInstallTenant/abstractions.js.map +1 -1
  100. package/api/features/CreateAndInstallTenant/feature.js +6 -6
  101. package/api/features/CreateAndInstallTenant/feature.js.map +1 -1
  102. package/api/features/CreateTenant/CreateTenantRepository.js +33 -38
  103. package/api/features/CreateTenant/CreateTenantRepository.js.map +1 -1
  104. package/api/features/CreateTenant/CreateTenantUseCase.js +29 -32
  105. package/api/features/CreateTenant/CreateTenantUseCase.js.map +1 -1
  106. package/api/features/CreateTenant/abstractions.js +3 -8
  107. package/api/features/CreateTenant/abstractions.js.map +1 -1
  108. package/api/features/CreateTenant/feature.js +7 -9
  109. package/api/features/CreateTenant/feature.js.map +1 -1
  110. package/api/features/DeleteTenantOnEntryDelete/DeleteTenantOnEntryDeleteHandler.js +17 -27
  111. package/api/features/DeleteTenantOnEntryDelete/DeleteTenantOnEntryDeleteHandler.js.map +1 -1
  112. package/api/features/DeleteTenantOnEntryDelete/feature.js +6 -6
  113. package/api/features/DeleteTenantOnEntryDelete/feature.js.map +1 -1
  114. package/api/features/DisableTenant/DisableTenantUseCase.js +41 -53
  115. package/api/features/DisableTenant/DisableTenantUseCase.js.map +1 -1
  116. package/api/features/DisableTenant/abstractions.js +2 -1
  117. package/api/features/DisableTenant/abstractions.js.map +1 -1
  118. package/api/features/DisableTenant/events.js +17 -12
  119. package/api/features/DisableTenant/events.js.map +1 -1
  120. package/api/features/DisableTenant/feature.js +6 -6
  121. package/api/features/DisableTenant/feature.js.map +1 -1
  122. package/api/features/EnableTenant/EnableTenantUseCase.js +43 -55
  123. package/api/features/EnableTenant/EnableTenantUseCase.js.map +1 -1
  124. package/api/features/EnableTenant/abstractions.js +2 -1
  125. package/api/features/EnableTenant/abstractions.js.map +1 -1
  126. package/api/features/EnableTenant/events.js +17 -12
  127. package/api/features/EnableTenant/events.js.map +1 -1
  128. package/api/features/EnableTenant/feature.js +6 -6
  129. package/api/features/EnableTenant/feature.js.map +1 -1
  130. package/api/features/GetCurrentTenant/GetCurrentTenantUseCase.js +21 -24
  131. package/api/features/GetCurrentTenant/GetCurrentTenantUseCase.js.map +1 -1
  132. package/api/features/GetCurrentTenant/abstractions.js +2 -7
  133. package/api/features/GetCurrentTenant/abstractions.js.map +1 -1
  134. package/api/features/GetCurrentTenant/feature.js +6 -6
  135. package/api/features/GetCurrentTenant/feature.js.map +1 -1
  136. package/api/features/GetTenantById/GetTenantByIdRepository.js +31 -36
  137. package/api/features/GetTenantById/GetTenantByIdRepository.js.map +1 -1
  138. package/api/features/GetTenantById/GetTenantByIdUseCase.js +15 -19
  139. package/api/features/GetTenantById/GetTenantByIdUseCase.js.map +1 -1
  140. package/api/features/GetTenantById/abstractions.js +3 -12
  141. package/api/features/GetTenantById/abstractions.js.map +1 -1
  142. package/api/features/GetTenantById/feature.js +7 -9
  143. package/api/features/GetTenantById/feature.js.map +1 -1
  144. package/api/features/UpdateTenant/UpdateTenantRepository.js +40 -47
  145. package/api/features/UpdateTenant/UpdateTenantRepository.js.map +1 -1
  146. package/api/features/UpdateTenant/UpdateTenantUseCase.js +15 -15
  147. package/api/features/UpdateTenant/UpdateTenantUseCase.js.map +1 -1
  148. package/api/features/UpdateTenant/abstractions.js +3 -12
  149. package/api/features/UpdateTenant/abstractions.js.map +1 -1
  150. package/api/features/UpdateTenant/feature.js +7 -9
  151. package/api/features/UpdateTenant/feature.js.map +1 -1
  152. package/api/graphql/CreateTenantSchema.js +53 -55
  153. package/api/graphql/CreateTenantSchema.js.map +1 -1
  154. package/api/graphql/DisableTenantSchema.js +20 -24
  155. package/api/graphql/DisableTenantSchema.js.map +1 -1
  156. package/api/graphql/EnableTenantSchema.js +20 -24
  157. package/api/graphql/EnableTenantSchema.js.map +1 -1
  158. package/api/graphql/GetCurrentTenantSchema.js +24 -28
  159. package/api/graphql/GetCurrentTenantSchema.js.map +1 -1
  160. package/api/graphql/InstallTenantSchema.js +26 -33
  161. package/api/graphql/InstallTenantSchema.js.map +1 -1
  162. package/exports/admin/tenancy.js +1 -5
  163. package/exports/api/tenant-manager.js +0 -2
  164. package/index.js +0 -2
  165. package/package.json +16 -16
  166. package/shared/Tenant.js +23 -22
  167. package/shared/Tenant.js.map +1 -1
  168. package/shared/constants.js +2 -1
  169. package/shared/constants.js.map +1 -1
  170. package/admin/DisableTenant/index.js.map +0 -1
  171. package/admin/EnableTenant/index.js.map +0 -1
  172. package/admin/types.js.map +0 -1
  173. package/exports/admin/tenancy.js.map +0 -1
  174. package/exports/api/tenant-manager.js.map +0 -1
  175. package/index.js.map +0 -1
@@ -1,21 +1,20 @@
1
- import React, { useCallback } from "react";
1
+ import react, { useCallback } from "react";
2
2
  import { Button } from "@webiny/admin-ui";
3
3
  import { useTenantContext } from "@webiny/app-admin";
4
- export const ManageTenant = ({
5
- tenant
6
- }) => {
7
- const {
8
- setTenant
9
- } = useTenantContext();
10
- const switchToTenant = useCallback(() => {
11
- localStorage.removeItem("webiny_wb_page_latest_visited_folder");
12
- setTenant(tenant.entryId);
13
- }, [tenant]);
14
- return /*#__PURE__*/React.createElement(Button, {
15
- variant: "secondary",
16
- onClick: switchToTenant,
17
- text: "Manage"
18
- });
4
+ const ManageTenant = ({ tenant })=>{
5
+ const { setTenant } = useTenantContext();
6
+ const switchToTenant = useCallback(()=>{
7
+ localStorage.removeItem("webiny_wb_page_latest_visited_folder");
8
+ setTenant(tenant.entryId);
9
+ }, [
10
+ tenant
11
+ ]);
12
+ return /*#__PURE__*/ react.createElement(Button, {
13
+ variant: "secondary",
14
+ onClick: switchToTenant,
15
+ text: "Manage"
16
+ });
19
17
  };
18
+ export { ManageTenant };
20
19
 
21
20
  //# sourceMappingURL=ManageTenant.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","Button","useTenantContext","ManageTenant","tenant","setTenant","switchToTenant","localStorage","removeItem","entryId","createElement","variant","onClick","text"],"sources":["ManageTenant.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { Button } from \"@webiny/admin-ui\";\nimport { useTenantContext } from \"@webiny/app-admin\";\nimport type { TenantEntry } from \"../types.js\";\n\ninterface ManageTenantProps {\n tenant: TenantEntry;\n}\n\nexport const ManageTenant = ({ tenant }: ManageTenantProps) => {\n const { setTenant } = useTenantContext();\n const switchToTenant = useCallback(() => {\n localStorage.removeItem(\"webiny_wb_page_latest_visited_folder\");\n setTenant(tenant.entryId);\n }, [tenant]);\n\n return <Button variant={\"secondary\"} onClick={switchToTenant} text={\"Manage\"} />;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,WAAW,QAAQ,OAAO;AAC1C,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,gBAAgB,QAAQ,mBAAmB;AAOpD,OAAO,MAAMC,YAAY,GAAGA,CAAC;EAAEC;AAA0B,CAAC,KAAK;EAC3D,MAAM;IAAEC;EAAU,CAAC,GAAGH,gBAAgB,CAAC,CAAC;EACxC,MAAMI,cAAc,GAAGN,WAAW,CAAC,MAAM;IACrCO,YAAY,CAACC,UAAU,CAAC,sCAAsC,CAAC;IAC/DH,SAAS,CAACD,MAAM,CAACK,OAAO,CAAC;EAC7B,CAAC,EAAE,CAACL,MAAM,CAAC,CAAC;EAEZ,oBAAOL,KAAA,CAAAW,aAAA,CAACT,MAAM;IAACU,OAAO,EAAE,WAAY;IAACC,OAAO,EAAEN,cAAe;IAACO,IAAI,EAAE;EAAS,CAAE,CAAC;AACpF,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"admin/TenantEntryList/ManageTenant.js","sources":["../../../src/admin/TenantEntryList/ManageTenant.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { Button } from \"@webiny/admin-ui\";\nimport { useTenantContext } from \"@webiny/app-admin\";\nimport type { TenantEntry } from \"../types.js\";\n\ninterface ManageTenantProps {\n tenant: TenantEntry;\n}\n\nexport const ManageTenant = ({ tenant }: ManageTenantProps) => {\n const { setTenant } = useTenantContext();\n const switchToTenant = useCallback(() => {\n localStorage.removeItem(\"webiny_wb_page_latest_visited_folder\");\n setTenant(tenant.entryId);\n }, [tenant]);\n\n return <Button variant={\"secondary\"} onClick={switchToTenant} text={\"Manage\"} />;\n};\n"],"names":["ManageTenant","tenant","setTenant","useTenantContext","switchToTenant","useCallback","localStorage","Button"],"mappings":";;;AASO,MAAMA,eAAe,CAAC,EAAEC,MAAM,EAAqB;IACtD,MAAM,EAAEC,SAAS,EAAE,GAAGC;IACtB,MAAMC,iBAAiBC,YAAY;QAC/BC,aAAa,UAAU,CAAC;QACxBJ,UAAUD,OAAO,OAAO;IAC5B,GAAG;QAACA;KAAO;IAEX,OAAO,WAAP,GAAO,oBAACM,QAAMA;QAAC,SAAS;QAAa,SAASH;QAAgB,MAAM;;AACxE"}
@@ -1,39 +1,24 @@
1
- import React from "react";
1
+ import react from "react";
2
2
  import { ContentEntryListConfig } from "@webiny/app-headless-cms";
3
3
  import { InstallTenant } from "./InstallTenantButton/InstallTenant.js";
4
4
  import { ManageTenant } from "./ManageTenant.js";
5
5
  import { EnableTenant } from "./EnableTenant/EnableTenant.js";
6
- const {
7
- Browser
8
- } = ContentEntryListConfig;
9
- const {
10
- useTableRow,
11
- isFolderRow
12
- } = Browser.Table.Column;
13
- export const TenantCell = () => {
14
- // useTableRow() allows you to access the entire data of the current row.
15
- const {
16
- row
17
- } = useTableRow();
18
-
19
- // isFolderRow() allows for custom rendering when the current row is a folder.
20
- if (isFolderRow(row)) {
21
- return /*#__PURE__*/React.createElement(React.Fragment, null, "-");
22
- }
23
- const tenant = row.data;
24
- if (!tenant.values.isInstalled) {
25
- return /*#__PURE__*/React.createElement(InstallTenant, {
26
- tenant: tenant
6
+ const { Browser: Browser } = ContentEntryListConfig;
7
+ const { useTableRow: useTableRow, isFolderRow: isFolderRow } = Browser.Table.Column;
8
+ const TenantCell = ()=>{
9
+ const { row } = useTableRow();
10
+ if (isFolderRow(row)) return /*#__PURE__*/ react.createElement(react.Fragment, null, "-");
11
+ const tenant = row.data;
12
+ if (!tenant.values.isInstalled) return /*#__PURE__*/ react.createElement(InstallTenant, {
13
+ tenant: tenant
14
+ });
15
+ if ("disabled" === tenant.values.status) return /*#__PURE__*/ react.createElement(EnableTenant, {
16
+ tenant: tenant
27
17
  });
28
- }
29
- if (tenant.values.status === "disabled") {
30
- return /*#__PURE__*/React.createElement(EnableTenant, {
31
- tenant: tenant
18
+ return /*#__PURE__*/ react.createElement(ManageTenant, {
19
+ tenant: tenant
32
20
  });
33
- }
34
- return /*#__PURE__*/React.createElement(ManageTenant, {
35
- tenant: tenant
36
- });
37
21
  };
22
+ export { TenantCell };
38
23
 
39
24
  //# sourceMappingURL=TenantCell.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","ContentEntryListConfig","InstallTenant","ManageTenant","EnableTenant","Browser","useTableRow","isFolderRow","Table","Column","TenantCell","row","createElement","Fragment","tenant","data","values","isInstalled","status"],"sources":["TenantCell.tsx"],"sourcesContent":["import React from \"react\";\nimport { ContentEntryListConfig } from \"@webiny/app-headless-cms\";\nimport { TenantEntry } from \"../types.js\";\nimport { InstallTenant } from \"./InstallTenantButton/InstallTenant.js\";\nimport { ManageTenant } from \"./ManageTenant.js\";\nimport { EnableTenant } from \"~/admin/TenantEntryList/EnableTenant/EnableTenant.js\";\n\nconst { Browser } = ContentEntryListConfig;\nconst { useTableRow, isFolderRow } = Browser.Table.Column;\n\nexport const TenantCell = () => {\n // useTableRow() allows you to access the entire data of the current row.\n const { row } = useTableRow<TenantEntry>();\n\n // isFolderRow() allows for custom rendering when the current row is a folder.\n if (isFolderRow(row)) {\n return <>{\"-\"}</>;\n }\n\n const tenant = row.data;\n\n if (!tenant.values.isInstalled) {\n return <InstallTenant tenant={tenant} />;\n }\n\n if (tenant.values.status === \"disabled\") {\n return <EnableTenant tenant={tenant} />;\n }\n\n return <ManageTenant tenant={tenant} />;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,sBAAsB,QAAQ,0BAA0B;AAEjE,SAASC,aAAa;AACtB,SAASC,YAAY;AACrB,SAASC,YAAY;AAErB,MAAM;EAAEC;AAAQ,CAAC,GAAGJ,sBAAsB;AAC1C,MAAM;EAAEK,WAAW;EAAEC;AAAY,CAAC,GAAGF,OAAO,CAACG,KAAK,CAACC,MAAM;AAEzD,OAAO,MAAMC,UAAU,GAAGA,CAAA,KAAM;EAC5B;EACA,MAAM;IAAEC;EAAI,CAAC,GAAGL,WAAW,CAAc,CAAC;;EAE1C;EACA,IAAIC,WAAW,CAACI,GAAG,CAAC,EAAE;IAClB,oBAAOX,KAAA,CAAAY,aAAA,CAAAZ,KAAA,CAAAa,QAAA,QAAG,GAAM,CAAC;EACrB;EAEA,MAAMC,MAAM,GAAGH,GAAG,CAACI,IAAI;EAEvB,IAAI,CAACD,MAAM,CAACE,MAAM,CAACC,WAAW,EAAE;IAC5B,oBAAOjB,KAAA,CAAAY,aAAA,CAACV,aAAa;MAACY,MAAM,EAAEA;IAAO,CAAE,CAAC;EAC5C;EAEA,IAAIA,MAAM,CAACE,MAAM,CAACE,MAAM,KAAK,UAAU,EAAE;IACrC,oBAAOlB,KAAA,CAAAY,aAAA,CAACR,YAAY;MAACU,MAAM,EAAEA;IAAO,CAAE,CAAC;EAC3C;EAEA,oBAAOd,KAAA,CAAAY,aAAA,CAACT,YAAY;IAACW,MAAM,EAAEA;EAAO,CAAE,CAAC;AAC3C,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"admin/TenantEntryList/TenantCell.js","sources":["../../../src/admin/TenantEntryList/TenantCell.tsx"],"sourcesContent":["import React from \"react\";\nimport { ContentEntryListConfig } from \"@webiny/app-headless-cms\";\nimport { TenantEntry } from \"../types.js\";\nimport { InstallTenant } from \"./InstallTenantButton/InstallTenant.js\";\nimport { ManageTenant } from \"./ManageTenant.js\";\nimport { EnableTenant } from \"~/admin/TenantEntryList/EnableTenant/EnableTenant.js\";\n\nconst { Browser } = ContentEntryListConfig;\nconst { useTableRow, isFolderRow } = Browser.Table.Column;\n\nexport const TenantCell = () => {\n // useTableRow() allows you to access the entire data of the current row.\n const { row } = useTableRow<TenantEntry>();\n\n // isFolderRow() allows for custom rendering when the current row is a folder.\n if (isFolderRow(row)) {\n return <>{\"-\"}</>;\n }\n\n const tenant = row.data;\n\n if (!tenant.values.isInstalled) {\n return <InstallTenant tenant={tenant} />;\n }\n\n if (tenant.values.status === \"disabled\") {\n return <EnableTenant tenant={tenant} />;\n }\n\n return <ManageTenant tenant={tenant} />;\n};\n"],"names":["Browser","ContentEntryListConfig","useTableRow","isFolderRow","TenantCell","row","tenant","InstallTenant","EnableTenant","ManageTenant"],"mappings":";;;;;AAOA,MAAM,EAAEA,SAAAA,OAAO,EAAE,GAAGC;AACpB,MAAM,EAAEC,aAAAA,WAAW,EAAEC,aAAAA,WAAW,EAAE,GAAGH,QAAQ,KAAK,CAAC,MAAM;AAElD,MAAMI,aAAa;IAEtB,MAAM,EAAEC,GAAG,EAAE,GAAGH;IAGhB,IAAIC,YAAYE,MACZ,OAAO,WAAP,GAAO,0CAAG;IAGd,MAAMC,SAASD,IAAI,IAAI;IAEvB,IAAI,CAACC,OAAO,MAAM,CAAC,WAAW,EAC1B,OAAO,WAAP,GAAO,oBAACC,eAAaA;QAAC,QAAQD;;IAGlC,IAAIA,AAAyB,eAAzBA,OAAO,MAAM,CAAC,MAAM,EACpB,OAAO,WAAP,GAAO,oBAACE,cAAYA;QAAC,QAAQF;;IAGjC,OAAO,WAAP,GAAO,oBAACG,cAAYA;QAAC,QAAQH;;AACjC"}
@@ -1,54 +1,44 @@
1
- import React from "react";
1
+ import react from "react";
2
2
  import { Icon, Link, Text } from "@webiny/admin-ui";
3
- import { ReactComponent as File } from "@webiny/icons/description.svg";
3
+ import { ReactComponent } from "@webiny/icons/description.svg";
4
4
  import { ContentEntryListConfig } from "@webiny/app-headless-cms";
5
5
  import { FolderNameCell } from "./FolderNameCell.js";
6
6
  import { useContentEntriesList } from "@webiny/app-headless-cms/exports/admin/cms/entry/list.js";
7
- const TenantName = ({
8
- tenant
9
- }) => {
10
- const {
11
- getEntryEditUrl
12
- } = useContentEntriesList();
13
- return /*#__PURE__*/React.createElement("div", {
14
- className: "flex flex-col gap-y-[3px]"
15
- }, /*#__PURE__*/React.createElement(Link, {
16
- to: getEntryEditUrl(tenant),
17
- variant: "secondary",
18
- className: "truncate no-underline!"
19
- }, /*#__PURE__*/React.createElement("div", {
20
- className: "flex w-full items-center"
21
- }, /*#__PURE__*/React.createElement(Icon, {
22
- size: "sm",
23
- color: "neutral-strong",
24
- className: "mr-xs",
25
- icon: /*#__PURE__*/React.createElement(File, null),
26
- label: `Tenant - ${tenant.values.name}`
27
- }), /*#__PURE__*/React.createElement(Text, {
28
- as: "div",
29
- className: "truncate min-w-0 shrink"
30
- }, tenant.values.name))), /*#__PURE__*/React.createElement(Text, {
31
- as: "div",
32
- size: "sm",
33
- className: "text-neutral-dimmed"
34
- }, "ID: ", tenant.entryId));
7
+ const TenantName = ({ tenant })=>{
8
+ const { getEntryEditUrl } = useContentEntriesList();
9
+ return /*#__PURE__*/ react.createElement("div", {
10
+ className: "flex flex-col gap-y-[3px]"
11
+ }, /*#__PURE__*/ react.createElement(Link, {
12
+ to: getEntryEditUrl(tenant),
13
+ variant: "secondary",
14
+ className: "truncate no-underline!"
15
+ }, /*#__PURE__*/ react.createElement("div", {
16
+ className: "flex w-full items-center"
17
+ }, /*#__PURE__*/ react.createElement(Icon, {
18
+ size: "sm",
19
+ color: "neutral-strong",
20
+ className: "mr-xs",
21
+ icon: /*#__PURE__*/ react.createElement(ReactComponent, null),
22
+ label: `Tenant - ${tenant.values.name}`
23
+ }), /*#__PURE__*/ react.createElement(Text, {
24
+ as: "div",
25
+ className: "truncate min-w-0 shrink"
26
+ }, tenant.values.name))), /*#__PURE__*/ react.createElement(Text, {
27
+ as: "div",
28
+ size: "sm",
29
+ className: "text-neutral-dimmed"
30
+ }, "ID: ", tenant.entryId));
35
31
  };
36
- export const TenantNameCell = () => {
37
- const {
38
- useTableRow,
39
- isFolderRow
40
- } = ContentEntryListConfig.Browser.Table.Column;
41
- const {
42
- row
43
- } = useTableRow();
44
- if (isFolderRow(row)) {
45
- return /*#__PURE__*/React.createElement(FolderNameCell, {
46
- folder: row.data
32
+ const TenantNameCell = ()=>{
33
+ const { useTableRow, isFolderRow } = ContentEntryListConfig.Browser.Table.Column;
34
+ const { row } = useTableRow();
35
+ if (isFolderRow(row)) return /*#__PURE__*/ react.createElement(FolderNameCell, {
36
+ folder: row.data
37
+ });
38
+ return /*#__PURE__*/ react.createElement(TenantName, {
39
+ tenant: row.data
47
40
  });
48
- }
49
- return /*#__PURE__*/React.createElement(TenantName, {
50
- tenant: row.data
51
- });
52
41
  };
42
+ export { TenantNameCell };
53
43
 
54
44
  //# sourceMappingURL=TenantNameCell.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","Icon","Link","Text","ReactComponent","File","ContentEntryListConfig","FolderNameCell","useContentEntriesList","TenantName","tenant","getEntryEditUrl","createElement","className","to","variant","size","color","icon","label","values","name","as","entryId","TenantNameCell","useTableRow","isFolderRow","Browser","Table","Column","row","folder","data"],"sources":["TenantNameCell.tsx"],"sourcesContent":["import React from \"react\";\nimport { Icon, Link, Text } from \"@webiny/admin-ui\";\nimport { ReactComponent as File } from \"@webiny/icons/description.svg\";\nimport { ContentEntryListConfig } from \"@webiny/app-headless-cms\";\nimport { FolderNameCell } from \"./FolderNameCell.js\";\nimport type { TenantEntry } from \"~/admin/types.js\";\nimport { useContentEntriesList } from \"@webiny/app-headless-cms/exports/admin/cms/entry/list.js\";\n\ninterface TenantNameProps {\n tenant: TenantEntry;\n}\n\nconst TenantName = ({ tenant }: TenantNameProps) => {\n const { getEntryEditUrl } = useContentEntriesList();\n\n return (\n <div className={\"flex flex-col gap-y-[3px]\"}>\n <Link\n to={getEntryEditUrl(tenant)}\n variant={\"secondary\"}\n className={\"truncate no-underline!\"}\n >\n <div className={\"flex w-full items-center\"}>\n <Icon\n size={\"sm\"}\n color={\"neutral-strong\"}\n className={\"mr-xs\"}\n icon={<File />}\n label={`Tenant - ${tenant.values.name}`}\n />\n <Text as={\"div\"} className={\"truncate min-w-0 shrink\"}>\n {tenant.values.name}\n </Text>\n </div>\n </Link>\n <Text as={\"div\"} size={\"sm\"} className={\"text-neutral-dimmed\"}>\n ID: {tenant.entryId}\n </Text>\n </div>\n );\n};\n\nexport const TenantNameCell = () => {\n const { useTableRow, isFolderRow } = ContentEntryListConfig.Browser.Table.Column;\n const { row } = useTableRow<TenantEntry>();\n\n if (isFolderRow(row)) {\n return <FolderNameCell folder={row.data} />;\n }\n\n return <TenantName tenant={row.data} />;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,IAAI,EAAEC,IAAI,QAAQ,kBAAkB;AACnD,SAASC,cAAc,IAAIC,IAAI,QAAQ,+BAA+B;AACtE,SAASC,sBAAsB,QAAQ,0BAA0B;AACjE,SAASC,cAAc;AAEvB,SAASC,qBAAqB,QAAQ,0DAA0D;AAMhG,MAAMC,UAAU,GAAGA,CAAC;EAAEC;AAAwB,CAAC,KAAK;EAChD,MAAM;IAAEC;EAAgB,CAAC,GAAGH,qBAAqB,CAAC,CAAC;EAEnD,oBACIR,KAAA,CAAAY,aAAA;IAAKC,SAAS,EAAE;EAA4B,gBACxCb,KAAA,CAAAY,aAAA,CAACV,IAAI;IACDY,EAAE,EAAEH,eAAe,CAACD,MAAM,CAAE;IAC5BK,OAAO,EAAE,WAAY;IACrBF,SAAS,EAAE;EAAyB,gBAEpCb,KAAA,CAAAY,aAAA;IAAKC,SAAS,EAAE;EAA2B,gBACvCb,KAAA,CAAAY,aAAA,CAACX,IAAI;IACDe,IAAI,EAAE,IAAK;IACXC,KAAK,EAAE,gBAAiB;IACxBJ,SAAS,EAAE,OAAQ;IACnBK,IAAI,eAAElB,KAAA,CAAAY,aAAA,CAACP,IAAI,MAAE,CAAE;IACfc,KAAK,EAAE,YAAYT,MAAM,CAACU,MAAM,CAACC,IAAI;EAAG,CAC3C,CAAC,eACFrB,KAAA,CAAAY,aAAA,CAACT,IAAI;IAACmB,EAAE,EAAE,KAAM;IAACT,SAAS,EAAE;EAA0B,GACjDH,MAAM,CAACU,MAAM,CAACC,IACb,CACL,CACH,CAAC,eACPrB,KAAA,CAAAY,aAAA,CAACT,IAAI;IAACmB,EAAE,EAAE,KAAM;IAACN,IAAI,EAAE,IAAK;IAACH,SAAS,EAAE;EAAsB,GAAC,MACvD,EAACH,MAAM,CAACa,OACV,CACL,CAAC;AAEd,CAAC;AAED,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAM;EAChC,MAAM;IAAEC,WAAW;IAAEC;EAAY,CAAC,GAAGpB,sBAAsB,CAACqB,OAAO,CAACC,KAAK,CAACC,MAAM;EAChF,MAAM;IAAEC;EAAI,CAAC,GAAGL,WAAW,CAAc,CAAC;EAE1C,IAAIC,WAAW,CAACI,GAAG,CAAC,EAAE;IAClB,oBAAO9B,KAAA,CAAAY,aAAA,CAACL,cAAc;MAACwB,MAAM,EAAED,GAAG,CAACE;IAAK,CAAE,CAAC;EAC/C;EAEA,oBAAOhC,KAAA,CAAAY,aAAA,CAACH,UAAU;IAACC,MAAM,EAAEoB,GAAG,CAACE;EAAK,CAAE,CAAC;AAC3C,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"admin/TenantEntryList/TenantNameCell.js","sources":["../../../src/admin/TenantEntryList/TenantNameCell.tsx"],"sourcesContent":["import React from \"react\";\nimport { Icon, Link, Text } from \"@webiny/admin-ui\";\nimport { ReactComponent as File } from \"@webiny/icons/description.svg\";\nimport { ContentEntryListConfig } from \"@webiny/app-headless-cms\";\nimport { FolderNameCell } from \"./FolderNameCell.js\";\nimport type { TenantEntry } from \"~/admin/types.js\";\nimport { useContentEntriesList } from \"@webiny/app-headless-cms/exports/admin/cms/entry/list.js\";\n\ninterface TenantNameProps {\n tenant: TenantEntry;\n}\n\nconst TenantName = ({ tenant }: TenantNameProps) => {\n const { getEntryEditUrl } = useContentEntriesList();\n\n return (\n <div className={\"flex flex-col gap-y-[3px]\"}>\n <Link\n to={getEntryEditUrl(tenant)}\n variant={\"secondary\"}\n className={\"truncate no-underline!\"}\n >\n <div className={\"flex w-full items-center\"}>\n <Icon\n size={\"sm\"}\n color={\"neutral-strong\"}\n className={\"mr-xs\"}\n icon={<File />}\n label={`Tenant - ${tenant.values.name}`}\n />\n <Text as={\"div\"} className={\"truncate min-w-0 shrink\"}>\n {tenant.values.name}\n </Text>\n </div>\n </Link>\n <Text as={\"div\"} size={\"sm\"} className={\"text-neutral-dimmed\"}>\n ID: {tenant.entryId}\n </Text>\n </div>\n );\n};\n\nexport const TenantNameCell = () => {\n const { useTableRow, isFolderRow } = ContentEntryListConfig.Browser.Table.Column;\n const { row } = useTableRow<TenantEntry>();\n\n if (isFolderRow(row)) {\n return <FolderNameCell folder={row.data} />;\n }\n\n return <TenantName tenant={row.data} />;\n};\n"],"names":["TenantName","tenant","getEntryEditUrl","useContentEntriesList","Link","Icon","File","Text","TenantNameCell","useTableRow","isFolderRow","ContentEntryListConfig","row","FolderNameCell"],"mappings":";;;;;;AAYA,MAAMA,aAAa,CAAC,EAAEC,MAAM,EAAmB;IAC3C,MAAM,EAAEC,eAAe,EAAE,GAAGC;IAE5B,OAAO,WAAP,GACI,oBAAC;QAAI,WAAW;qBACZ,oBAACC,MAAIA;QACD,IAAIF,gBAAgBD;QACpB,SAAS;QACT,WAAW;qBAEX,oBAAC;QAAI,WAAW;qBACZ,oBAACI,MAAIA;QACD,MAAM;QACN,OAAO;QACP,WAAW;QACX,oBAAM,oBAACC,gBAAIA;QACX,OAAO,CAAC,SAAS,EAAEL,OAAO,MAAM,CAAC,IAAI,EAAE;sBAE3C,oBAACM,MAAIA;QAAC,IAAI;QAAO,WAAW;OACvBN,OAAO,MAAM,CAAC,IAAI,mBAI/B,oBAACM,MAAIA;QAAC,IAAI;QAAO,MAAM;QAAM,WAAW;OAAuB,QACtDN,OAAO,OAAO;AAInC;AAEO,MAAMO,iBAAiB;IAC1B,MAAM,EAAEC,WAAW,EAAEC,WAAW,EAAE,GAAGC,uBAAuB,OAAO,CAAC,KAAK,CAAC,MAAM;IAChF,MAAM,EAAEC,GAAG,EAAE,GAAGH;IAEhB,IAAIC,YAAYE,MACZ,OAAO,WAAP,GAAO,oBAACC,gBAAcA;QAAC,QAAQD,IAAI,IAAI;;IAG3C,OAAO,WAAP,GAAO,oBAACZ,YAAUA;QAAC,QAAQY,IAAI,IAAI;;AACvC"}
@@ -1,71 +1,54 @@
1
- import React from "react";
1
+ import react from "react";
2
2
  import { useModel } from "@webiny/app-headless-cms/exports/admin/cms.js";
3
3
  import { ContentEntryListConfig } from "@webiny/app-headless-cms/exports/admin/cms/entry/list.js";
4
- import { ReactComponent as DisableIcon } from "@webiny/icons/power_off.svg";
4
+ import { ReactComponent } from "@webiny/icons/power_off.svg";
5
5
  import { TenantCell } from "./TenantEntryList/TenantCell.js";
6
6
  import { TENANT_MODEL_ID } from "../shared/constants.js";
7
7
  import { useDisableTenantDialog } from "./TenantEntryList/DisableTenant/useDisableTenantDialog.js";
8
8
  import { TenantNameCell } from "./TenantEntryList/TenantNameCell.js";
9
- const {
10
- Browser
11
- } = ContentEntryListConfig;
9
+ const { Browser: Browser } = ContentEntryListConfig;
12
10
  const EntryAction = Browser.Entry.Action;
13
- const {
14
- useTableRow
15
- } = Browser.Table.Column;
16
- const WithDisableAction = ({
17
- children
18
- }) => {
19
- // useTableRow() allows you to access the entire data of the current row.
20
- const {
21
- row
22
- } = useTableRow();
23
- const {
24
- disableEntry
25
- } = useDisableTenantDialog({
26
- record: row.data
27
- });
28
- if (row.data.values.status === "enabled") {
29
- return /*#__PURE__*/React.createElement(EntryAction.OptionsMenuItem, {
30
- icon: /*#__PURE__*/React.createElement(DisableIcon, null),
31
- label: "Disable",
32
- onAction: disableEntry,
33
- "data-testid": "aco.actions.entry.delete",
34
- className: "text-destructive-primary! [&_svg]:fill-destructive"
11
+ const { useTableRow: useTableRow } = Browser.Table.Column;
12
+ const WithDisableAction = ({ children })=>{
13
+ const { row } = useTableRow();
14
+ const { disableEntry } = useDisableTenantDialog({
15
+ record: row.data
35
16
  });
36
- }
37
- return /*#__PURE__*/React.createElement(React.Fragment, null, children);
38
- };
39
- const DeleteActionDecorator = EntryAction.createDecorator(Original => {
40
- return function DeleteAction(props) {
41
- const {
42
- model
43
- } = useModel();
44
- if (model.modelId !== TENANT_MODEL_ID) {
45
- return /*#__PURE__*/React.createElement(Original, props);
46
- }
47
- if (props.name === "delete") {
48
- return /*#__PURE__*/React.createElement(Original, Object.assign({}, props, {
49
- element: /*#__PURE__*/React.createElement(WithDisableAction, null, props.element)
50
- }));
51
- }
52
- return /*#__PURE__*/React.createElement(Original, props);
53
- };
54
- });
55
- export const TenantEntryList = () => {
56
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(DeleteActionDecorator, null), /*#__PURE__*/React.createElement(ContentEntryListConfig, null, /*#__PURE__*/React.createElement(Browser.Table.Column, {
57
- hideable: false,
58
- name: "name",
59
- header: "Name",
60
- modelIds: [TENANT_MODEL_ID],
61
- cell: /*#__PURE__*/React.createElement(TenantNameCell, null)
62
- }), /*#__PURE__*/React.createElement(Browser.Table.Column, {
63
- name: "tenant",
64
- header: "Tenant",
65
- modelIds: [TENANT_MODEL_ID],
66
- cell: /*#__PURE__*/React.createElement(TenantCell, null),
67
- before: "actions"
68
- })));
17
+ if ("enabled" === row.data.values.status) return /*#__PURE__*/ react.createElement(EntryAction.OptionsMenuItem, {
18
+ icon: /*#__PURE__*/ react.createElement(ReactComponent, null),
19
+ label: "Disable",
20
+ onAction: disableEntry,
21
+ "data-testid": "aco.actions.entry.delete",
22
+ className: "text-destructive-primary! [&_svg]:fill-destructive"
23
+ });
24
+ return /*#__PURE__*/ react.createElement(react.Fragment, null, children);
69
25
  };
26
+ const DeleteActionDecorator = EntryAction.createDecorator((Original)=>function(props) {
27
+ const { model } = useModel();
28
+ if (model.modelId !== TENANT_MODEL_ID) return /*#__PURE__*/ react.createElement(Original, props);
29
+ if ("delete" === props.name) return /*#__PURE__*/ react.createElement(Original, {
30
+ ...props,
31
+ element: /*#__PURE__*/ react.createElement(WithDisableAction, null, props.element)
32
+ });
33
+ return /*#__PURE__*/ react.createElement(Original, props);
34
+ });
35
+ const TenantEntryList = ()=>/*#__PURE__*/ react.createElement(react.Fragment, null, /*#__PURE__*/ react.createElement(DeleteActionDecorator, null), /*#__PURE__*/ react.createElement(ContentEntryListConfig, null, /*#__PURE__*/ react.createElement(Browser.Table.Column, {
36
+ hideable: false,
37
+ name: "name",
38
+ header: "Name",
39
+ modelIds: [
40
+ TENANT_MODEL_ID
41
+ ],
42
+ cell: /*#__PURE__*/ react.createElement(TenantNameCell, null)
43
+ }), /*#__PURE__*/ react.createElement(Browser.Table.Column, {
44
+ name: "tenant",
45
+ header: "Tenant",
46
+ modelIds: [
47
+ TENANT_MODEL_ID
48
+ ],
49
+ cell: /*#__PURE__*/ react.createElement(TenantCell, null),
50
+ before: "actions"
51
+ })));
52
+ export { TenantEntryList };
70
53
 
71
54
  //# sourceMappingURL=TenantEntryList.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useModel","ContentEntryListConfig","ReactComponent","DisableIcon","TenantCell","TENANT_MODEL_ID","useDisableTenantDialog","TenantNameCell","Browser","EntryAction","Entry","Action","useTableRow","Table","Column","WithDisableAction","children","row","disableEntry","record","data","values","status","createElement","OptionsMenuItem","icon","label","onAction","className","Fragment","DeleteActionDecorator","createDecorator","Original","DeleteAction","props","model","modelId","name","Object","assign","element","TenantEntryList","hideable","header","modelIds","cell","before"],"sources":["TenantEntryList.tsx"],"sourcesContent":["import React from \"react\";\nimport { useModel } from \"@webiny/app-headless-cms/exports/admin/cms.js\";\nimport { ContentEntryListConfig } from \"@webiny/app-headless-cms/exports/admin/cms/entry/list.js\";\nimport { ReactComponent as DisableIcon } from \"@webiny/icons/power_off.svg\";\nimport { TenantCell } from \"./TenantEntryList/TenantCell.js\";\nimport { TENANT_MODEL_ID } from \"~/shared/constants.js\";\nimport type { TenantEntry } from \"~/admin/types.js\";\nimport { useDisableTenantDialog } from \"~/admin/TenantEntryList/DisableTenant/useDisableTenantDialog.js\";\nimport { TenantNameCell } from \"~/admin/TenantEntryList/TenantNameCell.js\";\n\nconst { Browser } = ContentEntryListConfig;\nconst EntryAction = Browser.Entry.Action;\nconst { useTableRow } = Browser.Table.Column;\n\ninterface WithDisableActionProps {\n children: React.ReactNode;\n}\n\nconst WithDisableAction = ({ children }: WithDisableActionProps) => {\n // useTableRow() allows you to access the entire data of the current row.\n const { row } = useTableRow<TenantEntry>();\n const { disableEntry } = useDisableTenantDialog({ record: row.data });\n\n if (row.data.values.status === \"enabled\") {\n return (\n <EntryAction.OptionsMenuItem\n icon={<DisableIcon />}\n label={\"Disable\"}\n onAction={disableEntry}\n data-testid={\"aco.actions.entry.delete\"}\n className={\"text-destructive-primary! [&_svg]:fill-destructive\"}\n />\n );\n }\n\n return <>{children}</>;\n};\n\nconst DeleteActionDecorator = EntryAction.createDecorator(Original => {\n return function DeleteAction(props) {\n const { model } = useModel();\n\n if (model.modelId !== TENANT_MODEL_ID) {\n return <Original {...props} />;\n }\n\n if (props.name === \"delete\") {\n return (\n <Original\n {...props}\n element={<WithDisableAction>{props.element}</WithDisableAction>}\n />\n );\n }\n\n return <Original {...props} />;\n };\n});\n\nexport const TenantEntryList = () => {\n return (\n <>\n <DeleteActionDecorator />\n <ContentEntryListConfig>\n <Browser.Table.Column\n hideable={false}\n name={\"name\"}\n header={\"Name\"}\n modelIds={[TENANT_MODEL_ID]}\n cell={<TenantNameCell />}\n />\n <Browser.Table.Column\n name={\"tenant\"}\n header={\"Tenant\"}\n modelIds={[TENANT_MODEL_ID]}\n cell={<TenantCell />}\n before={\"actions\"}\n />\n </ContentEntryListConfig>\n </>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,QAAQ,+CAA+C;AACxE,SAASC,sBAAsB,QAAQ,0DAA0D;AACjG,SAASC,cAAc,IAAIC,WAAW,QAAQ,6BAA6B;AAC3E,SAASC,UAAU;AACnB,SAASC,eAAe;AAExB,SAASC,sBAAsB;AAC/B,SAASC,cAAc;AAEvB,MAAM;EAAEC;AAAQ,CAAC,GAAGP,sBAAsB;AAC1C,MAAMQ,WAAW,GAAGD,OAAO,CAACE,KAAK,CAACC,MAAM;AACxC,MAAM;EAAEC;AAAY,CAAC,GAAGJ,OAAO,CAACK,KAAK,CAACC,MAAM;AAM5C,MAAMC,iBAAiB,GAAGA,CAAC;EAAEC;AAAiC,CAAC,KAAK;EAChE;EACA,MAAM;IAAEC;EAAI,CAAC,GAAGL,WAAW,CAAc,CAAC;EAC1C,MAAM;IAAEM;EAAa,CAAC,GAAGZ,sBAAsB,CAAC;IAAEa,MAAM,EAAEF,GAAG,CAACG;EAAK,CAAC,CAAC;EAErE,IAAIH,GAAG,CAACG,IAAI,CAACC,MAAM,CAACC,MAAM,KAAK,SAAS,EAAE;IACtC,oBACIvB,KAAA,CAAAwB,aAAA,CAACd,WAAW,CAACe,eAAe;MACxBC,IAAI,eAAE1B,KAAA,CAAAwB,aAAA,CAACpB,WAAW,MAAE,CAAE;MACtBuB,KAAK,EAAE,SAAU;MACjBC,QAAQ,EAAET,YAAa;MACvB,eAAa,0BAA2B;MACxCU,SAAS,EAAE;IAAqD,CACnE,CAAC;EAEV;EAEA,oBAAO7B,KAAA,CAAAwB,aAAA,CAAAxB,KAAA,CAAA8B,QAAA,QAAGb,QAAW,CAAC;AAC1B,CAAC;AAED,MAAMc,qBAAqB,GAAGrB,WAAW,CAACsB,eAAe,CAACC,QAAQ,IAAI;EAClE,OAAO,SAASC,YAAYA,CAACC,KAAK,EAAE;IAChC,MAAM;MAAEC;IAAM,CAAC,GAAGnC,QAAQ,CAAC,CAAC;IAE5B,IAAImC,KAAK,CAACC,OAAO,KAAK/B,eAAe,EAAE;MACnC,oBAAON,KAAA,CAAAwB,aAAA,CAACS,QAAQ,EAAKE,KAAQ,CAAC;IAClC;IAEA,IAAIA,KAAK,CAACG,IAAI,KAAK,QAAQ,EAAE;MACzB,oBACItC,KAAA,CAAAwB,aAAA,CAACS,QAAQ,EAAAM,MAAA,CAAAC,MAAA,KACDL,KAAK;QACTM,OAAO,eAAEzC,KAAA,CAAAwB,aAAA,CAACR,iBAAiB,QAAEmB,KAAK,CAACM,OAA2B;MAAE,EACnE,CAAC;IAEV;IAEA,oBAAOzC,KAAA,CAAAwB,aAAA,CAACS,QAAQ,EAAKE,KAAQ,CAAC;EAClC,CAAC;AACL,CAAC,CAAC;AAEF,OAAO,MAAMO,eAAe,GAAGA,CAAA,KAAM;EACjC,oBACI1C,KAAA,CAAAwB,aAAA,CAAAxB,KAAA,CAAA8B,QAAA,qBACI9B,KAAA,CAAAwB,aAAA,CAACO,qBAAqB,MAAE,CAAC,eACzB/B,KAAA,CAAAwB,aAAA,CAACtB,sBAAsB,qBACnBF,KAAA,CAAAwB,aAAA,CAACf,OAAO,CAACK,KAAK,CAACC,MAAM;IACjB4B,QAAQ,EAAE,KAAM;IAChBL,IAAI,EAAE,MAAO;IACbM,MAAM,EAAE,MAAO;IACfC,QAAQ,EAAE,CAACvC,eAAe,CAAE;IAC5BwC,IAAI,eAAE9C,KAAA,CAAAwB,aAAA,CAAChB,cAAc,MAAE;EAAE,CAC5B,CAAC,eACFR,KAAA,CAAAwB,aAAA,CAACf,OAAO,CAACK,KAAK,CAACC,MAAM;IACjBuB,IAAI,EAAE,QAAS;IACfM,MAAM,EAAE,QAAS;IACjBC,QAAQ,EAAE,CAACvC,eAAe,CAAE;IAC5BwC,IAAI,eAAE9C,KAAA,CAAAwB,aAAA,CAACnB,UAAU,MAAE,CAAE;IACrB0C,MAAM,EAAE;EAAU,CACrB,CACmB,CAC1B,CAAC;AAEX,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"admin/TenantEntryList.js","sources":["../../src/admin/TenantEntryList.tsx"],"sourcesContent":["import React from \"react\";\nimport { useModel } from \"@webiny/app-headless-cms/exports/admin/cms.js\";\nimport { ContentEntryListConfig } from \"@webiny/app-headless-cms/exports/admin/cms/entry/list.js\";\nimport { ReactComponent as DisableIcon } from \"@webiny/icons/power_off.svg\";\nimport { TenantCell } from \"./TenantEntryList/TenantCell.js\";\nimport { TENANT_MODEL_ID } from \"~/shared/constants.js\";\nimport type { TenantEntry } from \"~/admin/types.js\";\nimport { useDisableTenantDialog } from \"~/admin/TenantEntryList/DisableTenant/useDisableTenantDialog.js\";\nimport { TenantNameCell } from \"~/admin/TenantEntryList/TenantNameCell.js\";\n\nconst { Browser } = ContentEntryListConfig;\nconst EntryAction = Browser.Entry.Action;\nconst { useTableRow } = Browser.Table.Column;\n\ninterface WithDisableActionProps {\n children: React.ReactNode;\n}\n\nconst WithDisableAction = ({ children }: WithDisableActionProps) => {\n // useTableRow() allows you to access the entire data of the current row.\n const { row } = useTableRow<TenantEntry>();\n const { disableEntry } = useDisableTenantDialog({ record: row.data });\n\n if (row.data.values.status === \"enabled\") {\n return (\n <EntryAction.OptionsMenuItem\n icon={<DisableIcon />}\n label={\"Disable\"}\n onAction={disableEntry}\n data-testid={\"aco.actions.entry.delete\"}\n className={\"text-destructive-primary! [&_svg]:fill-destructive\"}\n />\n );\n }\n\n return <>{children}</>;\n};\n\nconst DeleteActionDecorator = EntryAction.createDecorator(Original => {\n return function DeleteAction(props) {\n const { model } = useModel();\n\n if (model.modelId !== TENANT_MODEL_ID) {\n return <Original {...props} />;\n }\n\n if (props.name === \"delete\") {\n return (\n <Original\n {...props}\n element={<WithDisableAction>{props.element}</WithDisableAction>}\n />\n );\n }\n\n return <Original {...props} />;\n };\n});\n\nexport const TenantEntryList = () => {\n return (\n <>\n <DeleteActionDecorator />\n <ContentEntryListConfig>\n <Browser.Table.Column\n hideable={false}\n name={\"name\"}\n header={\"Name\"}\n modelIds={[TENANT_MODEL_ID]}\n cell={<TenantNameCell />}\n />\n <Browser.Table.Column\n name={\"tenant\"}\n header={\"Tenant\"}\n modelIds={[TENANT_MODEL_ID]}\n cell={<TenantCell />}\n before={\"actions\"}\n />\n </ContentEntryListConfig>\n </>\n );\n};\n"],"names":["Browser","ContentEntryListConfig","EntryAction","useTableRow","WithDisableAction","children","row","disableEntry","useDisableTenantDialog","DisableIcon","DeleteActionDecorator","Original","props","model","useModel","TENANT_MODEL_ID","TenantEntryList","TenantNameCell","TenantCell"],"mappings":";;;;;;;;AAUA,MAAM,EAAEA,SAAAA,OAAO,EAAE,GAAGC;AACpB,MAAMC,cAAcF,QAAQ,KAAK,CAAC,MAAM;AACxC,MAAM,EAAEG,aAAAA,WAAW,EAAE,GAAGH,QAAQ,KAAK,CAAC,MAAM;AAM5C,MAAMI,oBAAoB,CAAC,EAAEC,QAAQ,EAA0B;IAE3D,MAAM,EAAEC,GAAG,EAAE,GAAGH;IAChB,MAAM,EAAEI,YAAY,EAAE,GAAGC,uBAAuB;QAAE,QAAQF,IAAI,IAAI;IAAC;IAEnE,IAAIA,AAA2B,cAA3BA,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EACtB,OAAO,WAAP,GACI,oBAACJ,YAAY,eAAe;QACxB,oBAAM,oBAACO,gBAAWA;QAClB,OAAO;QACP,UAAUF;QACV,eAAa;QACb,WAAW;;IAKvB,OAAO,WAAP,GAAO,0CAAGF;AACd;AAEA,MAAMK,wBAAwBR,YAAY,eAAe,CAACS,CAAAA,WAC/C,SAAsBC,KAAK;QAC9B,MAAM,EAAEC,KAAK,EAAE,GAAGC;QAElB,IAAID,MAAM,OAAO,KAAKE,iBAClB,OAAO,WAAP,GAAO,oBAACJ,UAAaC;QAGzB,IAAIA,AAAe,aAAfA,MAAM,IAAI,EACV,OAAO,WAAP,GACI,oBAACD,UAAAA;YACI,GAAGC,KAAK;YACT,uBAAS,oBAACR,mBAAiBA,MAAEQ,MAAM,OAAO;;QAKtD,OAAO,WAAP,GAAO,oBAACD,UAAaC;IACzB;AAGG,MAAMI,kBAAkB,IACpB,WAAP,GACI,wDACI,oBAACN,uBAAqBA,OAAAA,WAAAA,GACtB,oBAACT,wBAAsBA,MAAAA,WAAAA,GACnB,oBAACD,QAAQ,KAAK,CAAC,MAAM;QACjB,UAAU;QACV,MAAM;QACN,QAAQ;QACR,UAAU;YAACe;SAAgB;QAC3B,oBAAM,oBAACE,gBAAcA;sBAEzB,oBAACjB,QAAQ,KAAK,CAAC,MAAM;QACjB,MAAM;QACN,QAAQ;QACR,UAAU;YAACe;SAAgB;QAC3B,oBAAM,oBAACG,YAAUA;QACjB,QAAQ"}
@@ -1,39 +1,35 @@
1
- import React from "react";
2
- import { TenantSelector as BaseTenantSelector } from "@webiny/app-admin";
1
+ import react from "react";
2
+ import { TenantSelector as app_admin_TenantSelector, useAuthentication } from "@webiny/app-admin";
3
3
  import { CopyButton, Icon, Tooltip, useToast } from "@webiny/admin-ui";
4
- import { useAuthentication } from "@webiny/app-admin";
5
- import { ReactComponent as TenantIcon } from "@webiny/icons/business.svg";
6
- export const TenantSelector = BaseTenantSelector.createDecorator(() => {
7
- return function TenantSelector() {
8
- const {
9
- identity
10
- } = useAuthentication();
11
- const currentTenant = identity.currentTenant;
12
- const toast = useToast();
13
- const confirmClipboard = () => {
14
- toast.showSuccessToast({
15
- title: "Tenant ID copied to clipboard!"
16
- });
17
- };
18
- return /*#__PURE__*/React.createElement(Tooltip, {
19
- content: /*#__PURE__*/React.createElement("div", {
20
- className: "flex items-center gap-x-xs"
21
- }, "ID: ", currentTenant.id, /*#__PURE__*/React.createElement(CopyButton, {
22
- size: "sm",
23
- value: currentTenant.id,
24
- onCopy: confirmClipboard,
25
- variant: "ghost-negative"
26
- })),
27
- side: "bottom",
28
- trigger: /*#__PURE__*/React.createElement("div", {
29
- className: "flex items-center gap-x-xs cursor-pointer"
30
- }, /*#__PURE__*/React.createElement(Icon, {
31
- label: "Root tenant",
32
- icon: /*#__PURE__*/React.createElement(TenantIcon, null),
33
- className: "fill-neutral-xstrong"
34
- }), currentTenant.name)
4
+ import { ReactComponent } from "@webiny/icons/business.svg";
5
+ const TenantSelector_TenantSelector = app_admin_TenantSelector.createDecorator(()=>function() {
6
+ const { identity } = useAuthentication();
7
+ const currentTenant = identity.currentTenant;
8
+ const toast = useToast();
9
+ const confirmClipboard = ()=>{
10
+ toast.showSuccessToast({
11
+ title: "Tenant ID copied to clipboard!"
12
+ });
13
+ };
14
+ return /*#__PURE__*/ react.createElement(Tooltip, {
15
+ content: /*#__PURE__*/ react.createElement("div", {
16
+ className: "flex items-center gap-x-xs"
17
+ }, "ID: ", currentTenant.id, /*#__PURE__*/ react.createElement(CopyButton, {
18
+ size: "sm",
19
+ value: currentTenant.id,
20
+ onCopy: confirmClipboard,
21
+ variant: "ghost-negative"
22
+ })),
23
+ side: "bottom",
24
+ trigger: /*#__PURE__*/ react.createElement("div", {
25
+ className: "flex items-center gap-x-xs cursor-pointer"
26
+ }, /*#__PURE__*/ react.createElement(Icon, {
27
+ label: "Root tenant",
28
+ icon: /*#__PURE__*/ react.createElement(ReactComponent, null),
29
+ className: "fill-neutral-xstrong"
30
+ }), currentTenant.name)
31
+ });
35
32
  });
36
- };
37
- });
33
+ export { TenantSelector_TenantSelector as TenantSelector };
38
34
 
39
35
  //# sourceMappingURL=TenantSelector.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","TenantSelector","BaseTenantSelector","CopyButton","Icon","Tooltip","useToast","useAuthentication","ReactComponent","TenantIcon","createDecorator","identity","currentTenant","toast","confirmClipboard","showSuccessToast","title","createElement","content","className","id","size","value","onCopy","variant","side","trigger","label","icon","name"],"sources":["TenantSelector.tsx"],"sourcesContent":["import React from \"react\";\nimport { TenantSelector as BaseTenantSelector } from \"@webiny/app-admin\";\nimport { CopyButton, Icon, Tooltip, useToast } from \"@webiny/admin-ui\";\nimport { useAuthentication } from \"@webiny/app-admin\";\nimport { ReactComponent as TenantIcon } from \"@webiny/icons/business.svg\";\n\nexport const TenantSelector = BaseTenantSelector.createDecorator(() => {\n return function TenantSelector() {\n const { identity } = useAuthentication();\n const currentTenant = identity.currentTenant;\n const toast = useToast();\n\n const confirmClipboard = () => {\n toast.showSuccessToast({\n title: \"Tenant ID copied to clipboard!\"\n });\n };\n\n return (\n <Tooltip\n content={\n <div className={\"flex items-center gap-x-xs\"}>\n ID: {currentTenant.id}\n <CopyButton\n size=\"sm\"\n value={currentTenant.id}\n onCopy={confirmClipboard}\n variant={\"ghost-negative\"}\n />\n </div>\n }\n side={\"bottom\"}\n trigger={\n <div className={\"flex items-center gap-x-xs cursor-pointer\"}>\n <Icon\n label=\"Root tenant\"\n icon={<TenantIcon />}\n className={\"fill-neutral-xstrong\"}\n />\n {currentTenant.name}\n </div>\n }\n />\n );\n };\n});\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,cAAc,IAAIC,kBAAkB,QAAQ,mBAAmB;AACxE,SAASC,UAAU,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,kBAAkB;AACtE,SAASC,iBAAiB,QAAQ,mBAAmB;AACrD,SAASC,cAAc,IAAIC,UAAU,QAAQ,4BAA4B;AAEzE,OAAO,MAAMR,cAAc,GAAGC,kBAAkB,CAACQ,eAAe,CAAC,MAAM;EACnE,OAAO,SAAST,cAAcA,CAAA,EAAG;IAC7B,MAAM;MAAEU;IAAS,CAAC,GAAGJ,iBAAiB,CAAC,CAAC;IACxC,MAAMK,aAAa,GAAGD,QAAQ,CAACC,aAAa;IAC5C,MAAMC,KAAK,GAAGP,QAAQ,CAAC,CAAC;IAExB,MAAMQ,gBAAgB,GAAGA,CAAA,KAAM;MAC3BD,KAAK,CAACE,gBAAgB,CAAC;QACnBC,KAAK,EAAE;MACX,CAAC,CAAC;IACN,CAAC;IAED,oBACIhB,KAAA,CAAAiB,aAAA,CAACZ,OAAO;MACJa,OAAO,eACHlB,KAAA,CAAAiB,aAAA;QAAKE,SAAS,EAAE;MAA6B,GAAC,MACtC,EAACP,aAAa,CAACQ,EAAE,eACrBpB,KAAA,CAAAiB,aAAA,CAACd,UAAU;QACPkB,IAAI,EAAC,IAAI;QACTC,KAAK,EAAEV,aAAa,CAACQ,EAAG;QACxBG,MAAM,EAAET,gBAAiB;QACzBU,OAAO,EAAE;MAAiB,CAC7B,CACA,CACR;MACDC,IAAI,EAAE,QAAS;MACfC,OAAO,eACH1B,KAAA,CAAAiB,aAAA;QAAKE,SAAS,EAAE;MAA4C,gBACxDnB,KAAA,CAAAiB,aAAA,CAACb,IAAI;QACDuB,KAAK,EAAC,aAAa;QACnBC,IAAI,eAAE5B,KAAA,CAAAiB,aAAA,CAACR,UAAU,MAAE,CAAE;QACrBU,SAAS,EAAE;MAAuB,CACrC,CAAC,EACDP,aAAa,CAACiB,IACd;IACR,CACJ,CAAC;EAEV,CAAC;AACL,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"admin/TenantSelector.js","sources":["../../src/admin/TenantSelector.tsx"],"sourcesContent":["import React from \"react\";\nimport { TenantSelector as BaseTenantSelector } from \"@webiny/app-admin\";\nimport { CopyButton, Icon, Tooltip, useToast } from \"@webiny/admin-ui\";\nimport { useAuthentication } from \"@webiny/app-admin\";\nimport { ReactComponent as TenantIcon } from \"@webiny/icons/business.svg\";\n\nexport const TenantSelector = BaseTenantSelector.createDecorator(() => {\n return function TenantSelector() {\n const { identity } = useAuthentication();\n const currentTenant = identity.currentTenant;\n const toast = useToast();\n\n const confirmClipboard = () => {\n toast.showSuccessToast({\n title: \"Tenant ID copied to clipboard!\"\n });\n };\n\n return (\n <Tooltip\n content={\n <div className={\"flex items-center gap-x-xs\"}>\n ID: {currentTenant.id}\n <CopyButton\n size=\"sm\"\n value={currentTenant.id}\n onCopy={confirmClipboard}\n variant={\"ghost-negative\"}\n />\n </div>\n }\n side={\"bottom\"}\n trigger={\n <div className={\"flex items-center gap-x-xs cursor-pointer\"}>\n <Icon\n label=\"Root tenant\"\n icon={<TenantIcon />}\n className={\"fill-neutral-xstrong\"}\n />\n {currentTenant.name}\n </div>\n }\n />\n );\n };\n});\n"],"names":["TenantSelector","BaseTenantSelector","identity","useAuthentication","currentTenant","toast","useToast","confirmClipboard","Tooltip","CopyButton","Icon","TenantIcon"],"mappings":";;;;AAMO,MAAMA,gCAAiBC,yBAAAA,eAAkC,CAAC,IACtD;QACH,MAAM,EAAEC,QAAQ,EAAE,GAAGC;QACrB,MAAMC,gBAAgBF,SAAS,aAAa;QAC5C,MAAMG,QAAQC;QAEd,MAAMC,mBAAmB;YACrBF,MAAM,gBAAgB,CAAC;gBACnB,OAAO;YACX;QACJ;QAEA,OAAO,WAAP,GACI,oBAACG,SAAOA;YACJ,uBACI,oBAAC;gBAAI,WAAW;eAA8B,QACrCJ,cAAc,EAAE,gBACrB,oBAACK,YAAUA;gBACP,MAAK;gBACL,OAAOL,cAAc,EAAE;gBACvB,QAAQG;gBACR,SAAS;;YAIrB,MAAM;YACN,uBACI,oBAAC;gBAAI,WAAW;6BACZ,oBAACG,MAAIA;gBACD,OAAM;gBACN,oBAAM,oBAACC,gBAAUA;gBACjB,WAAW;gBAEdP,cAAc,IAAI;;IAKvC"}
@@ -1,7 +1,8 @@
1
1
  import { createPermissionSchema } from "@webiny/app-admin";
2
- export const TM_PERMISSIONS_SCHEMA = createPermissionSchema({
3
- prefix: "tm",
4
- fullAccess: true
2
+ const TM_PERMISSIONS_SCHEMA = createPermissionSchema({
3
+ prefix: "tm",
4
+ fullAccess: true
5
5
  });
6
+ export { TM_PERMISSIONS_SCHEMA };
6
7
 
7
8
  //# sourceMappingURL=permissionsSchema.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createPermissionSchema","TM_PERMISSIONS_SCHEMA","prefix","fullAccess"],"sources":["permissionsSchema.ts"],"sourcesContent":["import { createPermissionSchema } from \"@webiny/app-admin\";\n\nexport const TM_PERMISSIONS_SCHEMA = createPermissionSchema({\n prefix: \"tm\",\n fullAccess: true\n});\n"],"mappings":"AAAA,SAASA,sBAAsB,QAAQ,mBAAmB;AAE1D,OAAO,MAAMC,qBAAqB,GAAGD,sBAAsB,CAAC;EACxDE,MAAM,EAAE,IAAI;EACZC,UAAU,EAAE;AAChB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"admin/domain/permissionsSchema.js","sources":["../../../src/admin/domain/permissionsSchema.ts"],"sourcesContent":["import { createPermissionSchema } from \"@webiny/app-admin\";\n\nexport const TM_PERMISSIONS_SCHEMA = createPermissionSchema({\n prefix: \"tm\",\n fullAccess: true\n});\n"],"names":["TM_PERMISSIONS_SCHEMA","createPermissionSchema"],"mappings":";AAEO,MAAMA,wBAAwBC,uBAAuB;IACxD,QAAQ;IACR,YAAY;AAChB"}
@@ -1,5 +1,6 @@
1
1
  import { createPermissionsAbstraction } from "@webiny/app-admin/exports/admin/security.js";
2
2
  import { TM_PERMISSIONS_SCHEMA } from "../../domain/permissionsSchema.js";
3
- export const TmPermissions = createPermissionsAbstraction(TM_PERMISSIONS_SCHEMA);
3
+ const TmPermissions = createPermissionsAbstraction(TM_PERMISSIONS_SCHEMA);
4
+ export { TmPermissions };
4
5
 
5
6
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createPermissionsAbstraction","TM_PERMISSIONS_SCHEMA","TmPermissions"],"sources":["abstractions.ts"],"sourcesContent":["import { createPermissionsAbstraction } from \"@webiny/app-admin/exports/admin/security.js\";\nimport type { Permissions } from \"@webiny/app-admin/exports/admin/security.js\";\nimport { TM_PERMISSIONS_SCHEMA } from \"~/admin/domain/permissionsSchema.js\";\n\nexport const TmPermissions = createPermissionsAbstraction(TM_PERMISSIONS_SCHEMA);\n\nexport namespace TmPermissions {\n export type Interface = Permissions<typeof TM_PERMISSIONS_SCHEMA>;\n}\n"],"mappings":"AAAA,SAASA,4BAA4B,QAAQ,6CAA6C;AAE1F,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,aAAa,GAAGF,4BAA4B,CAACC,qBAAqB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"admin/features/permissions/abstractions.js","sources":["../../../../src/admin/features/permissions/abstractions.ts"],"sourcesContent":["import { createPermissionsAbstraction } from \"@webiny/app-admin/exports/admin/security.js\";\nimport type { Permissions } from \"@webiny/app-admin/exports/admin/security.js\";\nimport { TM_PERMISSIONS_SCHEMA } from \"~/admin/domain/permissionsSchema.js\";\n\nexport const TmPermissions = createPermissionsAbstraction(TM_PERMISSIONS_SCHEMA);\n\nexport namespace TmPermissions {\n export type Interface = Permissions<typeof TM_PERMISSIONS_SCHEMA>;\n}\n"],"names":["TmPermissions","createPermissionsAbstraction","TM_PERMISSIONS_SCHEMA"],"mappings":";;AAIO,MAAMA,gBAAgBC,6BAA6BC"}
@@ -1,6 +1,7 @@
1
1
  import { createPermissionsFeature } from "@webiny/app-admin/exports/admin/security.js";
2
2
  import { TM_PERMISSIONS_SCHEMA } from "../../domain/permissionsSchema.js";
3
3
  import { TmPermissions } from "./abstractions.js";
4
- export const TmPermissionsFeature = createPermissionsFeature(TM_PERMISSIONS_SCHEMA, TmPermissions);
4
+ const TmPermissionsFeature = createPermissionsFeature(TM_PERMISSIONS_SCHEMA, TmPermissions);
5
+ export { TmPermissionsFeature };
5
6
 
6
7
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createPermissionsFeature","TM_PERMISSIONS_SCHEMA","TmPermissions","TmPermissionsFeature"],"sources":["feature.ts"],"sourcesContent":["import { createPermissionsFeature } from \"@webiny/app-admin/exports/admin/security.js\";\nimport { TM_PERMISSIONS_SCHEMA } from \"~/admin/domain/permissionsSchema.js\";\nimport { TmPermissions } from \"./abstractions.js\";\n\nexport const TmPermissionsFeature = createPermissionsFeature(TM_PERMISSIONS_SCHEMA, TmPermissions);\n"],"mappings":"AAAA,SAASA,wBAAwB,QAAQ,6CAA6C;AACtF,SAASC,qBAAqB;AAC9B,SAASC,aAAa;AAEtB,OAAO,MAAMC,oBAAoB,GAAGH,wBAAwB,CAACC,qBAAqB,EAAEC,aAAa,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"admin/features/permissions/feature.js","sources":["../../../../src/admin/features/permissions/feature.ts"],"sourcesContent":["import { createPermissionsFeature } from \"@webiny/app-admin/exports/admin/security.js\";\nimport { TM_PERMISSIONS_SCHEMA } from \"~/admin/domain/permissionsSchema.js\";\nimport { TmPermissions } from \"./abstractions.js\";\n\nexport const TmPermissionsFeature = createPermissionsFeature(TM_PERMISSIONS_SCHEMA, TmPermissions);\n"],"names":["TmPermissionsFeature","createPermissionsFeature","TM_PERMISSIONS_SCHEMA","TmPermissions"],"mappings":";;;AAIO,MAAMA,uBAAuBC,yBAAyBC,uBAAuBC"}
package/admin/types.js CHANGED
@@ -1,3 +0,0 @@
1
- export {};
2
-
3
- //# sourceMappingURL=types.js.map
package/api/Extension.js CHANGED
@@ -14,29 +14,26 @@ import DisableTenantSchema from "./graphql/DisableTenantSchema.js";
14
14
  import EnableTenantSchema from "./graphql/EnableTenantSchema.js";
15
15
  import GetCurrentTenantSchema from "./graphql/GetCurrentTenantSchema.js";
16
16
  import { AddCmsPermissionsFeature } from "./features/AddCmsPermissions/feature.js";
17
- export const Extension = createFeature({
18
- name: "TenantManagement",
19
- register(container) {
20
- container.register(TenantModel);
21
-
22
- //GraphQL
23
- container.register(InstallTenantSchema);
24
- container.register(CreateTenantSchema);
25
- container.register(DisableTenantSchema);
26
- container.register(EnableTenantSchema);
27
- container.register(GetCurrentTenantSchema);
28
-
29
- // Features
30
- CreateAndInstallTenantFeature.register(container);
31
- CreateTenantFeature.register(container);
32
- DisableTenantFeature.register(container);
33
- EnableTenantFeature.register(container);
34
- GetTenantByIdFeature.register(container);
35
- GetCurrentTenantFeature.register(container);
36
- UpdateTenantFeature.register(container);
37
- DeleteTenantOnEntryDeleteFeature.register(container);
38
- AddCmsPermissionsFeature.register(container);
39
- }
17
+ const Extension = createFeature({
18
+ name: "TenantManagement",
19
+ register (container) {
20
+ container.register(TenantModel);
21
+ container.register(InstallTenantSchema);
22
+ container.register(CreateTenantSchema);
23
+ container.register(DisableTenantSchema);
24
+ container.register(EnableTenantSchema);
25
+ container.register(GetCurrentTenantSchema);
26
+ CreateAndInstallTenantFeature.register(container);
27
+ CreateTenantFeature.register(container);
28
+ DisableTenantFeature.register(container);
29
+ EnableTenantFeature.register(container);
30
+ GetTenantByIdFeature.register(container);
31
+ GetCurrentTenantFeature.register(container);
32
+ UpdateTenantFeature.register(container);
33
+ DeleteTenantOnEntryDeleteFeature.register(container);
34
+ AddCmsPermissionsFeature.register(container);
35
+ }
40
36
  });
37
+ export { Extension };
41
38
 
42
39
  //# sourceMappingURL=Extension.js.map