@webiny/app-admin 6.6.0-alpha.0 → 6.6.0-alpha.10

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 (912) hide show
  1. package/base/Admin.js +34 -2
  2. package/base/Admin.js.map +1 -1
  3. package/base/Base/DefaultFieldRenderers.js +21 -2
  4. package/base/Base/DefaultFieldRenderers.js.map +1 -1
  5. package/base/Base/FieldRenderers/AutoCompleteRenderer.d.ts +13 -0
  6. package/base/Base/FieldRenderers/AutoCompleteRenderer.js +30 -0
  7. package/base/Base/FieldRenderers/AutoCompleteRenderer.js.map +1 -0
  8. package/base/Base/FieldRenderers/BirthdayInputRenderer.d.ts +21 -0
  9. package/base/Base/FieldRenderers/BirthdayInputRenderer.js +39 -0
  10. package/base/Base/FieldRenderers/BirthdayInputRenderer.js.map +1 -0
  11. package/base/Base/FieldRenderers/BirthdayInputRenderer.test.d.ts +1 -0
  12. package/base/Base/FieldRenderers/BirthdayInputRenderer.test.js +123 -0
  13. package/base/Base/FieldRenderers/BirthdayInputRenderer.test.js.map +1 -0
  14. package/base/Base/FieldRenderers/HorizontalTabsRenderer.d.ts +2 -2
  15. package/base/Base/FieldRenderers/LexicalRenderer.js +10 -6
  16. package/base/Base/FieldRenderers/LexicalRenderer.js.map +1 -1
  17. package/base/Base/FieldRenderers/MultiFilePickerRenderer.js +8 -5
  18. package/base/Base/FieldRenderers/MultiFilePickerRenderer.js.map +1 -1
  19. package/base/Base/FieldRenderers/MultiSelectRenderer.d.ts +15 -0
  20. package/base/Base/FieldRenderers/MultiSelectRenderer.js +31 -0
  21. package/base/Base/FieldRenderers/MultiSelectRenderer.js.map +1 -0
  22. package/base/Base/FieldRenderers/ObjectRenderer/DynamicZoneRenderer.d.ts +2 -0
  23. package/base/Base/FieldRenderers/ObjectRenderer/DynamicZoneRenderer.js +5 -2
  24. package/base/Base/FieldRenderers/ObjectRenderer/DynamicZoneRenderer.js.map +1 -1
  25. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/MultiValueDynamicZone.d.ts +11 -0
  26. package/base/Base/FieldRenderers/ObjectRenderer/{MultiValueDynamicZone.js → MultiValueDynamicZone/MultiValueDynamicZone.js} +83 -15
  27. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/MultiValueDynamicZone.js.map +1 -0
  28. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/MultiValueDynamicZonePresenter.d.ts +13 -0
  29. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/MultiValueDynamicZonePresenter.js +28 -0
  30. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/MultiValueDynamicZonePresenter.js.map +1 -0
  31. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/abstractions.d.ts +15 -0
  32. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/abstractions.js +5 -0
  33. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/abstractions.js.map +1 -0
  34. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/feature.d.ts +1 -0
  35. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/feature.js +11 -0
  36. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/feature.js.map +1 -0
  37. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/index.d.ts +2 -0
  38. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/index.js +2 -0
  39. package/base/Base/FieldRenderers/ObjectRenderer/ObjectAccordionMultipleRenderer.d.ts +1 -1
  40. package/base/Base/FieldRenderers/ObjectRenderer/ObjectAccordionMultipleRenderer.js +29 -4
  41. package/base/Base/FieldRenderers/ObjectRenderer/ObjectAccordionMultipleRenderer.js.map +1 -1
  42. package/base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.d.ts +12 -8
  43. package/base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.js +48 -8
  44. package/base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.js.map +1 -1
  45. package/base/Base/FieldRenderers/ObjectRenderer/ObjectRenderer.js +16 -25
  46. package/base/Base/FieldRenderers/ObjectRenderer/ObjectRenderer.js.map +1 -1
  47. package/base/Base/FieldRenderers/ObjectRenderer/SingleValueDynamicZone.d.ts +3 -2
  48. package/base/Base/FieldRenderers/ObjectRenderer/SingleValueDynamicZone.js +29 -8
  49. package/base/Base/FieldRenderers/ObjectRenderer/SingleValueDynamicZone.js.map +1 -1
  50. package/base/Base/FieldRenderers/ObjectRenderer/{TemplatePicker.d.ts → TemplatePicker/AddTemplateButton.d.ts} +1 -1
  51. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/AddTemplateButton.js +24 -0
  52. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/AddTemplateButton.js.map +1 -0
  53. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/SelectableTemplate.d.ts +13 -0
  54. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/SelectableTemplate.js +21 -0
  55. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/SelectableTemplate.js.map +1 -0
  56. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateCard.d.ts +3 -0
  57. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateCard.js +35 -0
  58. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateCard.js.map +1 -0
  59. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGallery.d.ts +8 -0
  60. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGallery.js +22 -0
  61. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGallery.js.map +1 -0
  62. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGalleryToolbar.d.ts +10 -0
  63. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGalleryToolbar.js +52 -0
  64. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGalleryToolbar.js.map +1 -0
  65. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateIcon.d.ts +8 -0
  66. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateIcon.js +16 -0
  67. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateIcon.js.map +1 -0
  68. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateList.d.ts +10 -0
  69. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateList.js +22 -0
  70. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateList.js.map +1 -0
  71. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateListItem.d.ts +3 -0
  72. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateListItem.js +35 -0
  73. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateListItem.js.map +1 -0
  74. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/index.d.ts +1 -0
  75. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/index.js +1 -0
  76. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/types.d.ts +6 -0
  77. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/types.js +0 -0
  78. package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.d.ts +8 -3
  79. package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.js +25 -17
  80. package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.js.map +1 -1
  81. package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.test.d.ts +1 -0
  82. package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.test.js +106 -0
  83. package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.test.js.map +1 -0
  84. package/base/Base/FieldRenderers/RadioButtonsRenderer.js +3 -2
  85. package/base/Base/FieldRenderers/RadioButtonsRenderer.js.map +1 -1
  86. package/base/Base/FieldRenderers/SelectRenderer.d.ts +6 -0
  87. package/base/Base/FieldRenderers/SelectRenderer.js +4 -2
  88. package/base/Base/FieldRenderers/SelectRenderer.js.map +1 -1
  89. package/base/Base/FieldRenderers/VerticalTabsRenderer.d.ts +2 -2
  90. package/base/Base/Menus.js +4 -4
  91. package/base/Base/Menus.js.map +1 -1
  92. package/base/Base.js +2 -1
  93. package/base/Base.js.map +1 -1
  94. package/base/createRootContainer.js +8 -2
  95. package/base/createRootContainer.js.map +1 -1
  96. package/base/resolveApiUrl.d.ts +10 -0
  97. package/base/resolveApiUrl.js +11 -3
  98. package/base/resolveApiUrl.js.map +1 -1
  99. package/base/ui/AssumedPermissionsSelector.d.ts +47 -0
  100. package/base/ui/AssumedPermissionsSelector.js +7 -0
  101. package/base/ui/AssumedPermissionsSelector.js.map +1 -0
  102. package/base/ui/DebuggerIndicator.d.ts +23 -0
  103. package/base/ui/DebuggerIndicator.js +5 -0
  104. package/base/ui/DebuggerIndicator.js.map +1 -0
  105. package/base/ui/Layout.d.ts +20 -0
  106. package/base/ui/Layout.js +2 -1
  107. package/base/ui/Layout.js.map +1 -1
  108. package/components/DeveloperMode/DeveloperMode.d.ts +1 -3
  109. package/components/DeveloperMode/DeveloperMode.js.map +1 -1
  110. package/components/Drawers/DrawerParamsContext.d.ts +6 -0
  111. package/components/Drawers/DrawerParamsContext.js +10 -0
  112. package/components/Drawers/DrawerParamsContext.js.map +1 -0
  113. package/components/Drawers/DrawersContext.d.ts +13 -0
  114. package/components/Drawers/DrawersContext.js +50 -0
  115. package/components/Drawers/DrawersContext.js.map +1 -0
  116. package/components/Drawers/useDrawers.d.ts +2 -0
  117. package/components/Drawers/useDrawers.js +10 -0
  118. package/components/Drawers/useDrawers.js.map +1 -0
  119. package/components/Filters/Filters.js +10 -3
  120. package/components/Filters/Filters.js.map +1 -1
  121. package/components/IconPicker/IconPickerComponent.d.ts +2 -2
  122. package/components/IconPicker/IconPickerComponent.js +1 -1
  123. package/components/IconPicker/IconPickerComponent.js.map +1 -1
  124. package/components/LexicalEditor/LexicalLinkForm.js +3 -0
  125. package/components/LexicalEditor/LexicalLinkForm.js.map +1 -1
  126. package/components/ListView/ListViewBulkActions.d.ts +2 -2
  127. package/components/ListView/ListViewContent.d.ts +2 -2
  128. package/components/ListView/ListViewFilters.d.ts +2 -2
  129. package/components/ListView/index.d.ts +6 -6
  130. package/components/OverlayLayout/OverlayLayout.js +4 -2
  131. package/components/OverlayLayout/OverlayLayout.js.map +1 -1
  132. package/components/OverlayLayout/components/OverlayContent.js +1 -0
  133. package/components/OverlayLayout/components/OverlayContent.js.map +1 -1
  134. package/components/RolesMultiAutocomplete/index.d.ts +4 -2
  135. package/components/SplitView/SplitView.d.ts +2 -2
  136. package/components/SplitView/SplitView.js +8 -8
  137. package/components/SplitView/SplitView.js.map +1 -1
  138. package/components/Table/components/Table/TableInner.d.ts +2 -2
  139. package/components/TeamAutocomplete/index.d.ts +4 -2
  140. package/components/TeamsMultiAutocomplete/index.d.ts +4 -2
  141. package/components/index.d.ts +0 -1
  142. package/components/index.js +0 -1
  143. package/config/AdminConfig/Breadcrumbs.d.ts +42 -0
  144. package/config/AdminConfig/Breadcrumbs.js +24 -0
  145. package/config/AdminConfig/Breadcrumbs.js.map +1 -0
  146. package/config/AdminConfig/Drawer.d.ts +10 -0
  147. package/config/AdminConfig/Drawer.js +19 -0
  148. package/config/AdminConfig/Drawer.js.map +1 -0
  149. package/config/AdminConfig/LexicalTheme/AllowCustomColors.d.ts +5 -0
  150. package/config/AdminConfig/LexicalTheme/AllowCustomColors.js +18 -0
  151. package/config/AdminConfig/LexicalTheme/AllowCustomColors.js.map +1 -0
  152. package/config/AdminConfig/LexicalTheme.d.ts +2 -0
  153. package/config/AdminConfig/LexicalTheme.js +2 -0
  154. package/config/AdminConfig/LexicalTheme.js.map +1 -1
  155. package/config/AdminConfig/Widget.d.ts +9 -1
  156. package/config/AdminConfig/Widget.js +6 -2
  157. package/config/AdminConfig/Widget.js.map +1 -1
  158. package/config/AdminConfig.d.ts +8 -0
  159. package/config/AdminConfig.js +8 -1
  160. package/config/AdminConfig.js.map +1 -1
  161. package/domain/Identity.js +1 -1
  162. package/domain/Identity.js.map +1 -1
  163. package/exports/admin/ui.d.ts +4 -0
  164. package/exports/admin/ui.js +4 -1
  165. package/exports/admin.d.ts +7 -0
  166. package/exports/admin.js +5 -0
  167. package/features/accessManagement/types.d.ts +3 -3
  168. package/features/adminAssistant/AdminAssistantGateway.d.ts +30 -0
  169. package/features/adminAssistant/AdminAssistantGateway.js +41 -0
  170. package/features/adminAssistant/AdminAssistantGateway.js.map +1 -0
  171. package/features/adminAssistant/AdminAssistantPresenter.d.ts +60 -0
  172. package/features/adminAssistant/AdminAssistantPresenter.js +377 -0
  173. package/features/adminAssistant/AdminAssistantPresenter.js.map +1 -0
  174. package/features/adminAssistant/abstractions.d.ts +176 -0
  175. package/features/adminAssistant/abstractions.js +6 -0
  176. package/features/adminAssistant/abstractions.js.map +1 -0
  177. package/features/adminAssistant/feature.d.ts +3 -0
  178. package/features/adminAssistant/feature.js +19 -0
  179. package/features/adminAssistant/feature.js.map +1 -0
  180. package/features/adminAssistant/index.d.ts +6 -0
  181. package/features/adminAssistant/index.js +3 -0
  182. package/features/adminAssistant/turnsFromMessages.d.ts +15 -0
  183. package/features/adminAssistant/turnsFromMessages.js +77 -0
  184. package/features/adminAssistant/turnsFromMessages.js.map +1 -0
  185. package/features/adminUsers/account/getCurrentUser/GetCurrentUserGateway.d.ts +11 -0
  186. package/features/adminUsers/account/getCurrentUser/GetCurrentUserGateway.js +44 -0
  187. package/features/adminUsers/account/getCurrentUser/GetCurrentUserGateway.js.map +1 -0
  188. package/features/adminUsers/account/getCurrentUser/GetCurrentUserUseCase.d.ts +10 -0
  189. package/features/adminUsers/account/getCurrentUser/GetCurrentUserUseCase.js +19 -0
  190. package/features/adminUsers/account/getCurrentUser/GetCurrentUserUseCase.js.map +1 -0
  191. package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserGateway.d.ts +16 -0
  192. package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserGateway.js +5 -0
  193. package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserGateway.js.map +1 -0
  194. package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserUseCase.d.ts +10 -0
  195. package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserUseCase.js +5 -0
  196. package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserUseCase.js.map +1 -0
  197. package/features/adminUsers/account/getCurrentUser/abstractions/index.d.ts +6 -0
  198. package/features/adminUsers/account/getCurrentUser/abstractions/index.js +2 -0
  199. package/features/adminUsers/account/getCurrentUser/feature.d.ts +3 -0
  200. package/features/adminUsers/account/getCurrentUser/feature.js +19 -0
  201. package/features/adminUsers/account/getCurrentUser/feature.js.map +1 -0
  202. package/features/adminUsers/account/getCurrentUser/index.d.ts +1 -0
  203. package/features/adminUsers/account/getCurrentUser/index.js +1 -0
  204. package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserGateway.d.ts +11 -0
  205. package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserGateway.js +48 -0
  206. package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserGateway.js.map +1 -0
  207. package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserUseCase.d.ts +10 -0
  208. package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserUseCase.js +19 -0
  209. package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserUseCase.js.map +1 -0
  210. package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserGateway.d.ts +26 -0
  211. package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserGateway.js +5 -0
  212. package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserGateway.js.map +1 -0
  213. package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserUseCase.d.ts +13 -0
  214. package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserUseCase.js +5 -0
  215. package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserUseCase.js.map +1 -0
  216. package/features/adminUsers/account/updateCurrentUser/abstractions/index.d.ts +8 -0
  217. package/features/adminUsers/account/updateCurrentUser/abstractions/index.js +2 -0
  218. package/features/adminUsers/account/updateCurrentUser/feature.d.ts +3 -0
  219. package/features/adminUsers/account/updateCurrentUser/feature.js +19 -0
  220. package/features/adminUsers/account/updateCurrentUser/feature.js.map +1 -0
  221. package/features/adminUsers/account/updateCurrentUser/index.d.ts +1 -0
  222. package/features/adminUsers/account/updateCurrentUser/index.js +1 -0
  223. package/features/adminUsers/passwordPolicy/RulesPasswordPolicy.d.ts +6 -0
  224. package/features/adminUsers/passwordPolicy/RulesPasswordPolicy.js +22 -0
  225. package/features/adminUsers/passwordPolicy/RulesPasswordPolicy.js.map +1 -0
  226. package/features/adminUsers/passwordPolicy/abstractions.d.ts +20 -0
  227. package/features/adminUsers/passwordPolicy/abstractions.js +5 -0
  228. package/features/adminUsers/passwordPolicy/abstractions.js.map +1 -0
  229. package/features/adminUsers/passwordPolicy/feature.d.ts +8 -0
  230. package/features/adminUsers/passwordPolicy/feature.js +18 -0
  231. package/features/adminUsers/passwordPolicy/feature.js.map +1 -0
  232. package/features/adminUsers/passwordPolicy/index.d.ts +3 -0
  233. package/features/adminUsers/passwordPolicy/index.js +3 -0
  234. package/features/adminUsers/passwordPolicy/readPasswordPolicyRules.d.ts +10 -0
  235. package/features/adminUsers/passwordPolicy/readPasswordPolicyRules.js +11 -0
  236. package/features/adminUsers/passwordPolicy/readPasswordPolicyRules.js.map +1 -0
  237. package/features/adminUsers/permissions/abstractions.d.ts +17 -0
  238. package/features/adminUsers/permissions/abstractions.js +6 -0
  239. package/features/adminUsers/permissions/abstractions.js.map +1 -0
  240. package/features/adminUsers/permissions/feature.d.ts +14 -0
  241. package/features/adminUsers/permissions/feature.js +7 -0
  242. package/features/adminUsers/permissions/feature.js.map +1 -0
  243. package/features/adminUsers/permissionsSchema.d.ts +10 -0
  244. package/features/adminUsers/permissionsSchema.js +18 -0
  245. package/features/adminUsers/permissionsSchema.js.map +1 -0
  246. package/features/adminUsers/users/createUser/CreateUserGateway.d.ts +11 -0
  247. package/features/adminUsers/users/createUser/CreateUserGateway.js +49 -0
  248. package/features/adminUsers/users/createUser/CreateUserGateway.js.map +1 -0
  249. package/features/adminUsers/users/createUser/CreateUserUseCase.d.ts +10 -0
  250. package/features/adminUsers/users/createUser/CreateUserUseCase.js +18 -0
  251. package/features/adminUsers/users/createUser/CreateUserUseCase.js.map +1 -0
  252. package/features/adminUsers/users/createUser/abstractions/CreateUserGateway.d.ts +21 -0
  253. package/features/adminUsers/users/createUser/abstractions/CreateUserGateway.js +5 -0
  254. package/features/adminUsers/users/createUser/abstractions/CreateUserGateway.js.map +1 -0
  255. package/features/adminUsers/users/createUser/abstractions/CreateUserUseCase.d.ts +14 -0
  256. package/features/adminUsers/users/createUser/abstractions/CreateUserUseCase.js +5 -0
  257. package/features/adminUsers/users/createUser/abstractions/CreateUserUseCase.js.map +1 -0
  258. package/features/adminUsers/users/createUser/abstractions/index.d.ts +2 -0
  259. package/features/adminUsers/users/createUser/abstractions/index.js +2 -0
  260. package/features/adminUsers/users/createUser/feature.d.ts +3 -0
  261. package/features/adminUsers/users/createUser/feature.js +19 -0
  262. package/features/adminUsers/users/createUser/feature.js.map +1 -0
  263. package/features/adminUsers/users/createUser/index.d.ts +2 -0
  264. package/features/adminUsers/users/createUser/index.js +2 -0
  265. package/features/adminUsers/users/deleteUser/DeleteUserGateway.d.ts +11 -0
  266. package/features/adminUsers/users/deleteUser/DeleteUserGateway.js +40 -0
  267. package/features/adminUsers/users/deleteUser/DeleteUserGateway.js.map +1 -0
  268. package/features/adminUsers/users/deleteUser/DeleteUserUseCase.d.ts +10 -0
  269. package/features/adminUsers/users/deleteUser/DeleteUserUseCase.js +18 -0
  270. package/features/adminUsers/users/deleteUser/DeleteUserUseCase.js.map +1 -0
  271. package/features/adminUsers/users/deleteUser/abstractions/DeleteUserGateway.d.ts +11 -0
  272. package/features/adminUsers/users/deleteUser/abstractions/DeleteUserGateway.js +5 -0
  273. package/features/adminUsers/users/deleteUser/abstractions/DeleteUserGateway.js.map +1 -0
  274. package/features/adminUsers/users/deleteUser/abstractions/DeleteUserUseCase.d.ts +11 -0
  275. package/features/adminUsers/users/deleteUser/abstractions/DeleteUserUseCase.js +5 -0
  276. package/features/adminUsers/users/deleteUser/abstractions/DeleteUserUseCase.js.map +1 -0
  277. package/features/adminUsers/users/deleteUser/abstractions/index.d.ts +2 -0
  278. package/features/adminUsers/users/deleteUser/abstractions/index.js +2 -0
  279. package/features/adminUsers/users/deleteUser/feature.d.ts +3 -0
  280. package/features/adminUsers/users/deleteUser/feature.js +19 -0
  281. package/features/adminUsers/users/deleteUser/feature.js.map +1 -0
  282. package/features/adminUsers/users/deleteUser/index.d.ts +2 -0
  283. package/features/adminUsers/users/deleteUser/index.js +2 -0
  284. package/features/adminUsers/users/getUser/GetUserGateway.d.ts +11 -0
  285. package/features/adminUsers/users/getUser/GetUserGateway.js +57 -0
  286. package/features/adminUsers/users/getUser/GetUserGateway.js.map +1 -0
  287. package/features/adminUsers/users/getUser/GetUserUseCase.d.ts +10 -0
  288. package/features/adminUsers/users/getUser/GetUserUseCase.js +18 -0
  289. package/features/adminUsers/users/getUser/GetUserUseCase.js.map +1 -0
  290. package/features/adminUsers/users/getUser/abstractions/GetUserGateway.d.ts +32 -0
  291. package/features/adminUsers/users/getUser/abstractions/GetUserGateway.js +5 -0
  292. package/features/adminUsers/users/getUser/abstractions/GetUserGateway.js.map +1 -0
  293. package/features/adminUsers/users/getUser/abstractions/GetUserUseCase.d.ts +14 -0
  294. package/features/adminUsers/users/getUser/abstractions/GetUserUseCase.js +5 -0
  295. package/features/adminUsers/users/getUser/abstractions/GetUserUseCase.js.map +1 -0
  296. package/features/adminUsers/users/getUser/abstractions/index.d.ts +2 -0
  297. package/features/adminUsers/users/getUser/abstractions/index.js +2 -0
  298. package/features/adminUsers/users/getUser/feature.d.ts +3 -0
  299. package/features/adminUsers/users/getUser/feature.js +19 -0
  300. package/features/adminUsers/users/getUser/feature.js.map +1 -0
  301. package/features/adminUsers/users/getUser/index.d.ts +2 -0
  302. package/features/adminUsers/users/getUser/index.js +2 -0
  303. package/features/adminUsers/users/listUsers/ListUsersGateway.d.ts +11 -0
  304. package/features/adminUsers/users/listUsers/ListUsersGateway.js +39 -0
  305. package/features/adminUsers/users/listUsers/ListUsersGateway.js.map +1 -0
  306. package/features/adminUsers/users/listUsers/ListUsersUseCase.d.ts +10 -0
  307. package/features/adminUsers/users/listUsers/ListUsersUseCase.js +18 -0
  308. package/features/adminUsers/users/listUsers/ListUsersUseCase.js.map +1 -0
  309. package/features/adminUsers/users/listUsers/abstractions/ListUsersGateway.d.ts +17 -0
  310. package/features/adminUsers/users/listUsers/abstractions/ListUsersGateway.js +5 -0
  311. package/features/adminUsers/users/listUsers/abstractions/ListUsersGateway.js.map +1 -0
  312. package/features/adminUsers/users/listUsers/abstractions/ListUsersUseCase.d.ts +10 -0
  313. package/features/adminUsers/users/listUsers/abstractions/ListUsersUseCase.js +5 -0
  314. package/features/adminUsers/users/listUsers/abstractions/ListUsersUseCase.js.map +1 -0
  315. package/features/adminUsers/users/listUsers/abstractions/index.d.ts +2 -0
  316. package/features/adminUsers/users/listUsers/abstractions/index.js +2 -0
  317. package/features/adminUsers/users/listUsers/feature.d.ts +3 -0
  318. package/features/adminUsers/users/listUsers/feature.js +19 -0
  319. package/features/adminUsers/users/listUsers/feature.js.map +1 -0
  320. package/features/adminUsers/users/listUsers/index.d.ts +2 -0
  321. package/features/adminUsers/users/listUsers/index.js +2 -0
  322. package/features/adminUsers/users/updateUser/UpdateUserGateway.d.ts +11 -0
  323. package/features/adminUsers/users/updateUser/UpdateUserGateway.js +59 -0
  324. package/features/adminUsers/users/updateUser/UpdateUserGateway.js.map +1 -0
  325. package/features/adminUsers/users/updateUser/UpdateUserUseCase.d.ts +10 -0
  326. package/features/adminUsers/users/updateUser/UpdateUserUseCase.js +18 -0
  327. package/features/adminUsers/users/updateUser/UpdateUserUseCase.js.map +1 -0
  328. package/features/adminUsers/users/updateUser/abstractions/UpdateUserGateway.d.ts +33 -0
  329. package/features/adminUsers/users/updateUser/abstractions/UpdateUserGateway.js +5 -0
  330. package/features/adminUsers/users/updateUser/abstractions/UpdateUserGateway.js.map +1 -0
  331. package/features/adminUsers/users/updateUser/abstractions/UpdateUserUseCase.d.ts +15 -0
  332. package/features/adminUsers/users/updateUser/abstractions/UpdateUserUseCase.js +5 -0
  333. package/features/adminUsers/users/updateUser/abstractions/UpdateUserUseCase.js.map +1 -0
  334. package/features/adminUsers/users/updateUser/abstractions/index.d.ts +2 -0
  335. package/features/adminUsers/users/updateUser/abstractions/index.js +2 -0
  336. package/features/adminUsers/users/updateUser/feature.d.ts +3 -0
  337. package/features/adminUsers/users/updateUser/feature.js +19 -0
  338. package/features/adminUsers/users/updateUser/feature.js.map +1 -0
  339. package/features/adminUsers/users/updateUser/index.d.ts +2 -0
  340. package/features/adminUsers/users/updateUser/index.js +2 -0
  341. package/features/aiChats/AiChatSaveError.d.ts +6 -0
  342. package/features/aiChats/AiChatSaveError.js +8 -0
  343. package/features/aiChats/AiChatSaveError.js.map +1 -0
  344. package/features/aiChats/AiChatsGateway.d.ts +18 -0
  345. package/features/aiChats/AiChatsGateway.js +132 -0
  346. package/features/aiChats/AiChatsGateway.js.map +1 -0
  347. package/features/aiChats/AiChatsRepository.d.ts +36 -0
  348. package/features/aiChats/AiChatsRepository.js +110 -0
  349. package/features/aiChats/AiChatsRepository.js.map +1 -0
  350. package/features/aiChats/AiChatsRequestError.d.ts +9 -0
  351. package/features/aiChats/AiChatsRequestError.js +8 -0
  352. package/features/aiChats/AiChatsRequestError.js.map +1 -0
  353. package/features/aiChats/abstractions.d.ts +76 -0
  354. package/features/aiChats/abstractions.js +6 -0
  355. package/features/aiChats/abstractions.js.map +1 -0
  356. package/features/aiChats/feature.d.ts +3 -0
  357. package/features/aiChats/feature.js +19 -0
  358. package/features/aiChats/feature.js.map +1 -0
  359. package/features/aiChats/index.d.ts +9 -0
  360. package/features/aiChats/index.js +3 -0
  361. package/features/aiChats/messageOf.d.ts +2 -0
  362. package/features/aiChats/messageOf.js +7 -0
  363. package/features/aiChats/messageOf.js.map +1 -0
  364. package/features/aiSettings/abstractions.d.ts +16 -0
  365. package/features/aiSettings/abstractions.js +5 -0
  366. package/features/aiSettings/abstractions.js.map +1 -0
  367. package/features/aiSettings/index.d.ts +2 -0
  368. package/features/aiSettings/index.js +1 -0
  369. package/features/assumePermissions/ApiStreamClientDecorator.d.ts +16 -0
  370. package/features/assumePermissions/ApiStreamClientDecorator.js +29 -0
  371. package/features/assumePermissions/ApiStreamClientDecorator.js.map +1 -0
  372. package/features/assumePermissions/AssumePermissionsContext.d.ts +17 -0
  373. package/features/assumePermissions/AssumePermissionsContext.js +32 -0
  374. package/features/assumePermissions/AssumePermissionsContext.js.map +1 -0
  375. package/features/assumePermissions/AssumePermissionsUseCase.d.ts +33 -0
  376. package/features/assumePermissions/AssumePermissionsUseCase.js +48 -0
  377. package/features/assumePermissions/AssumePermissionsUseCase.js.map +1 -0
  378. package/features/assumePermissions/GraphQLClientDecorator.d.ts +16 -0
  379. package/features/assumePermissions/GraphQLClientDecorator.js +29 -0
  380. package/features/assumePermissions/GraphQLClientDecorator.js.map +1 -0
  381. package/features/assumePermissions/ListAssumableTargetsGateway.d.ts +13 -0
  382. package/features/assumePermissions/ListAssumableTargetsGateway.js +74 -0
  383. package/features/assumePermissions/ListAssumableTargetsGateway.js.map +1 -0
  384. package/features/assumePermissions/ListAssumableTargetsUseCase.d.ts +16 -0
  385. package/features/assumePermissions/ListAssumableTargetsUseCase.js +38 -0
  386. package/features/assumePermissions/ListAssumableTargetsUseCase.js.map +1 -0
  387. package/features/assumePermissions/LogInUseCaseDecorator.d.ts +33 -0
  388. package/features/assumePermissions/LogInUseCaseDecorator.js +36 -0
  389. package/features/assumePermissions/LogInUseCaseDecorator.js.map +1 -0
  390. package/features/assumePermissions/LogOutUseCaseDecorator.d.ts +16 -0
  391. package/features/assumePermissions/LogOutUseCaseDecorator.js +21 -0
  392. package/features/assumePermissions/LogOutUseCaseDecorator.js.map +1 -0
  393. package/features/assumePermissions/abstractions.d.ts +78 -0
  394. package/features/assumePermissions/abstractions.js +8 -0
  395. package/features/assumePermissions/abstractions.js.map +1 -0
  396. package/features/assumePermissions/assumePermissionsHeader.d.ts +3 -0
  397. package/features/assumePermissions/assumePermissionsHeader.js +7 -0
  398. package/features/assumePermissions/assumePermissionsHeader.js.map +1 -0
  399. package/features/assumePermissions/feature.d.ts +4 -0
  400. package/features/assumePermissions/feature.js +32 -0
  401. package/features/assumePermissions/feature.js.map +1 -0
  402. package/features/assumePermissions/index.d.ts +4 -0
  403. package/features/assumePermissions/index.js +2 -0
  404. package/features/banners/Banners.d.ts +15 -0
  405. package/features/banners/Banners.js +39 -0
  406. package/features/banners/Banners.js.map +1 -0
  407. package/features/banners/abstractions.d.ts +34 -0
  408. package/features/banners/abstractions.js +5 -0
  409. package/features/banners/abstractions.js.map +1 -0
  410. package/features/banners/feature.d.ts +3 -0
  411. package/features/banners/feature.js +17 -0
  412. package/features/banners/feature.js.map +1 -0
  413. package/features/banners/index.d.ts +2 -0
  414. package/features/banners/index.js +2 -0
  415. package/features/dateFormatter/DefaultDateFormatter.d.ts +8 -0
  416. package/features/dateFormatter/DefaultDateFormatter.js +25 -0
  417. package/features/dateFormatter/DefaultDateFormatter.js.map +1 -0
  418. package/features/dateFormatter/abstractions.d.ts +13 -0
  419. package/features/dateFormatter/abstractions.js +5 -0
  420. package/features/dateFormatter/abstractions.js.map +1 -0
  421. package/features/dateFormatter/feature.d.ts +3 -0
  422. package/features/dateFormatter/feature.js +17 -0
  423. package/features/dateFormatter/feature.js.map +1 -0
  424. package/features/dateFormatter/formatUtcOffset.d.ts +1 -0
  425. package/features/dateFormatter/formatUtcOffset.js +11 -0
  426. package/features/dateFormatter/formatUtcOffset.js.map +1 -0
  427. package/features/dateFormatter/index.d.ts +4 -0
  428. package/features/dateFormatter/index.js +4 -0
  429. package/features/dateFormatter/useDateFormatter.d.ts +5 -0
  430. package/features/dateFormatter/useDateFormatter.js +8 -0
  431. package/features/dateFormatter/useDateFormatter.js.map +1 -0
  432. package/features/debugger/DebugSessionsRepository.d.ts +35 -0
  433. package/features/debugger/DebugSessionsRepository.js +57 -0
  434. package/features/debugger/DebugSessionsRepository.js.map +1 -0
  435. package/features/debugger/GraphQLExtensionsDebugHandler.d.ts +17 -0
  436. package/features/debugger/GraphQLExtensionsDebugHandler.js +21 -0
  437. package/features/debugger/GraphQLExtensionsDebugHandler.js.map +1 -0
  438. package/features/debugger/GraphQLExtensionsDebugHandler.test.d.ts +1 -0
  439. package/features/debugger/GraphQLExtensionsDebugHandler.test.js +112 -0
  440. package/features/debugger/GraphQLExtensionsDebugHandler.test.js.map +1 -0
  441. package/features/debugger/abstractions.d.ts +50 -0
  442. package/features/debugger/abstractions.js +5 -0
  443. package/features/debugger/abstractions.js.map +1 -0
  444. package/features/debugger/constants.d.ts +1 -0
  445. package/features/debugger/constants.js +4 -0
  446. package/features/debugger/constants.js.map +1 -0
  447. package/features/debugger/feature.d.ts +3 -0
  448. package/features/debugger/feature.js +19 -0
  449. package/features/debugger/feature.js.map +1 -0
  450. package/features/debugger/index.d.ts +3 -0
  451. package/features/debugger/index.js +3 -0
  452. package/features/featureFlags/FeatureFlagsGateway.d.ts +10 -0
  453. package/features/featureFlags/FeatureFlagsGateway.js +40 -0
  454. package/features/featureFlags/FeatureFlagsGateway.js.map +1 -0
  455. package/features/featureFlags/FeatureFlagsService.d.ts +16 -0
  456. package/features/featureFlags/FeatureFlagsService.js +64 -0
  457. package/features/featureFlags/FeatureFlagsService.js.map +1 -0
  458. package/features/featureFlags/abstractions.d.ts +19 -0
  459. package/features/featureFlags/abstractions.js +6 -0
  460. package/features/featureFlags/abstractions.js.map +1 -0
  461. package/features/featureFlags/feature.d.ts +3 -0
  462. package/features/featureFlags/feature.js +19 -0
  463. package/features/featureFlags/feature.js.map +1 -0
  464. package/features/formModel/AccessControlRuleEvaluator.d.ts +12 -0
  465. package/features/formModel/AccessControlRuleEvaluator.js +30 -0
  466. package/features/formModel/AccessControlRuleEvaluator.js.map +1 -0
  467. package/features/formModel/AccessControlRuleEvaluator.test.d.ts +1 -0
  468. package/features/formModel/AccessControlRuleEvaluator.test.js +219 -0
  469. package/features/formModel/AccessControlRuleEvaluator.test.js.map +1 -0
  470. package/features/formModel/ConditionRuleEvaluator.js +34 -4
  471. package/features/formModel/ConditionRuleEvaluator.js.map +1 -1
  472. package/features/formModel/Field.d.ts +14 -1
  473. package/features/formModel/Field.js +49 -3
  474. package/features/formModel/Field.js.map +1 -1
  475. package/features/formModel/FieldBuilder.d.ts +3 -3
  476. package/features/formModel/FieldBuilder.js +3 -2
  477. package/features/formModel/FieldBuilder.js.map +1 -1
  478. package/features/formModel/FieldBuilder.test.js +162 -5
  479. package/features/formModel/FieldBuilder.test.js.map +1 -1
  480. package/features/formModel/FocusManager.js +10 -3
  481. package/features/formModel/FocusManager.js.map +1 -1
  482. package/features/formModel/FormErrors.d.ts +2 -2
  483. package/features/formModel/FormErrors.js +1 -1
  484. package/features/formModel/FormErrors.js.map +1 -1
  485. package/features/formModel/FormModel.d.ts +2 -0
  486. package/features/formModel/FormModel.js +32 -9
  487. package/features/formModel/FormModel.js.map +1 -1
  488. package/features/formModel/FormModel.test.js +883 -2
  489. package/features/formModel/FormModel.test.js.map +1 -1
  490. package/features/formModel/FormView.d.ts +8 -4
  491. package/features/formModel/ObjectField.d.ts +12 -1
  492. package/features/formModel/ObjectField.js +70 -20
  493. package/features/formModel/ObjectField.js.map +1 -1
  494. package/features/formModel/PresenterErrors.d.ts +2 -2
  495. package/features/formModel/Rules.test.js +224 -16
  496. package/features/formModel/Rules.test.js.map +1 -1
  497. package/features/formModel/abstractions.d.ts +56 -4
  498. package/features/formModel/abstractions.js +2 -1
  499. package/features/formModel/abstractions.js.map +1 -1
  500. package/features/formModel/createFieldRenderer.d.ts +42 -0
  501. package/features/formModel/createFieldRenderer.js +33 -10
  502. package/features/formModel/createFieldRenderer.js.map +1 -1
  503. package/features/formModel/demo/FormModelDemo.d.ts +2 -2
  504. package/features/formModel/feature.js +2 -0
  505. package/features/formModel/feature.js.map +1 -1
  506. package/features/formModel/fieldTypes/DateTimeFieldType.d.ts +67 -4
  507. package/features/formModel/fieldTypes/DateTimeFieldType.js +88 -22
  508. package/features/formModel/fieldTypes/DateTimeFieldType.js.map +1 -1
  509. package/features/formModel/fieldTypes/ObjectFieldType.d.ts +3 -1
  510. package/features/formModel/fieldTypes/ObjectFieldType.js +23 -1
  511. package/features/formModel/fieldTypes/ObjectFieldType.js.map +1 -1
  512. package/features/formModel/fieldTypes/dateLimits.d.ts +37 -0
  513. package/features/formModel/fieldTypes/dateLimits.js +64 -0
  514. package/features/formModel/fieldTypes/dateLimits.js.map +1 -0
  515. package/features/formModel/fieldTypes/dateLimits.test.d.ts +1 -0
  516. package/features/formModel/fieldTypes/dateLimits.test.js +60 -0
  517. package/features/formModel/fieldTypes/dateLimits.test.js.map +1 -0
  518. package/features/formModel/hasSubtreeFocusRequest.d.ts +12 -0
  519. package/features/formModel/hasSubtreeFocusRequest.js +15 -0
  520. package/features/formModel/hasSubtreeFocusRequest.js.map +1 -0
  521. package/features/formModel/index.d.ts +3 -2
  522. package/features/formModel/index.js +2 -1
  523. package/features/formModel/jsonSchema/JsonSchema.d.ts +18 -0
  524. package/features/formModel/jsonSchema/JsonSchema.js +0 -0
  525. package/features/formModel/jsonSchema/JsonSchemaFieldOptions.d.ts +4 -0
  526. package/features/formModel/jsonSchema/JsonSchemaFieldOptions.js +0 -0
  527. package/features/formModel/jsonSchema/JsonSchemaIssue.d.ts +4 -0
  528. package/features/formModel/jsonSchema/JsonSchemaIssue.js +0 -0
  529. package/features/formModel/jsonSchema/JsonSchemaValidationResult.d.ts +5 -0
  530. package/features/formModel/jsonSchema/JsonSchemaValidationResult.js +0 -0
  531. package/features/formModel/jsonSchema/JsonSchemaValidator.d.ts +4 -0
  532. package/features/formModel/jsonSchema/JsonSchemaValidator.js +0 -0
  533. package/features/formModel/jsonSchema/PlainObject.d.ts +1 -0
  534. package/features/formModel/jsonSchema/PlainObject.js +0 -0
  535. package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.d.ts +5 -0
  536. package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.js +154 -0
  537. package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.js.map +1 -0
  538. package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.test.d.ts +1 -0
  539. package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.test.js +643 -0
  540. package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.test.js.map +1 -0
  541. package/features/formModel/jsonSchema/createJsonSchemaValidator.d.ts +3 -0
  542. package/features/formModel/jsonSchema/createJsonSchemaValidator.js +40 -0
  543. package/features/formModel/jsonSchema/createJsonSchemaValidator.js.map +1 -0
  544. package/features/formModel/jsonSchema/createJsonSchemaValidator.test.d.ts +1 -0
  545. package/features/formModel/jsonSchema/createJsonSchemaValidator.test.js +141 -0
  546. package/features/formModel/jsonSchema/createJsonSchemaValidator.test.js.map +1 -0
  547. package/features/formModel/jsonSchema/formDataToJsonSchemaValue.d.ts +3 -0
  548. package/features/formModel/jsonSchema/formDataToJsonSchemaValue.js +52 -0
  549. package/features/formModel/jsonSchema/formDataToJsonSchemaValue.js.map +1 -0
  550. package/features/formModel/jsonSchema/formDataToJsonSchemaValue.test.d.ts +1 -0
  551. package/features/formModel/jsonSchema/formDataToJsonSchemaValue.test.js +250 -0
  552. package/features/formModel/jsonSchema/formDataToJsonSchemaValue.test.js.map +1 -0
  553. package/features/formModel/jsonSchema/getJsonSchemaKind.d.ts +3 -0
  554. package/features/formModel/jsonSchema/getJsonSchemaKind.js +31 -0
  555. package/features/formModel/jsonSchema/getJsonSchemaKind.js.map +1 -0
  556. package/features/formModel/jsonSchema/getJsonSchemaKind.test.d.ts +1 -0
  557. package/features/formModel/jsonSchema/getJsonSchemaKind.test.js +123 -0
  558. package/features/formModel/jsonSchema/getJsonSchemaKind.test.js.map +1 -0
  559. package/features/formModel/jsonSchema/isPlainObject.d.ts +2 -0
  560. package/features/formModel/jsonSchema/isPlainObject.js +4 -0
  561. package/features/formModel/jsonSchema/isPlainObject.js.map +1 -0
  562. package/features/formModel/jsonSchema/jsonSchemaValueToFormData.d.ts +3 -0
  563. package/features/formModel/jsonSchema/jsonSchemaValueToFormData.js +30 -0
  564. package/features/formModel/jsonSchema/jsonSchemaValueToFormData.js.map +1 -0
  565. package/features/formModel/jsonSchema/jsonSchemaValueToFormData.test.d.ts +1 -0
  566. package/features/formModel/jsonSchema/jsonSchemaValueToFormData.test.js +207 -0
  567. package/features/formModel/jsonSchema/jsonSchemaValueToFormData.test.js.map +1 -0
  568. package/features/formModel/jsonSchema/normalizeJsonSchema.d.ts +2 -0
  569. package/features/formModel/jsonSchema/normalizeJsonSchema.js +10 -0
  570. package/features/formModel/jsonSchema/normalizeJsonSchema.js.map +1 -0
  571. package/features/formModel/renderers.d.ts +2 -0
  572. package/features/formModel/renderers.js +2 -0
  573. package/features/notifications/Notifications.d.ts +1 -0
  574. package/features/notifications/Notifications.js +3 -0
  575. package/features/notifications/Notifications.js.map +1 -1
  576. package/features/notifications/Notifications.test.d.ts +1 -0
  577. package/features/notifications/Notifications.test.js +106 -0
  578. package/features/notifications/Notifications.test.js.map +1 -0
  579. package/features/notifications/NotificationsRenderer.d.ts +3 -2
  580. package/features/notifications/NotificationsRenderer.js +23 -4
  581. package/features/notifications/NotificationsRenderer.js.map +1 -1
  582. package/features/notifications/NotificationsRenderer.test.d.ts +1 -0
  583. package/features/notifications/NotificationsRenderer.test.js +261 -0
  584. package/features/notifications/NotificationsRenderer.test.js.map +1 -0
  585. package/features/notifications/abstractions.d.ts +13 -2
  586. package/features/notifications/abstractions.js.map +1 -1
  587. package/features/security/AuthenticationContext/ApiStreamClientDecorator.d.ts +22 -0
  588. package/features/security/AuthenticationContext/ApiStreamClientDecorator.js +32 -0
  589. package/features/security/AuthenticationContext/ApiStreamClientDecorator.js.map +1 -0
  590. package/features/security/AuthenticationContext/feature.js +2 -0
  591. package/features/security/AuthenticationContext/feature.js.map +1 -1
  592. package/features/security/LogIn/LogInUseCase.d.ts +0 -1
  593. package/features/security/LogIn/LogInUseCase.js +2 -5
  594. package/features/security/LogIn/LogInUseCase.js.map +1 -1
  595. package/features/security/LogIn/hasAppPermissions.d.ts +2 -0
  596. package/features/security/LogIn/hasAppPermissions.js +8 -0
  597. package/features/security/LogIn/hasAppPermissions.js.map +1 -0
  598. package/features/slugify/DefaultSlugify.d.ts +8 -0
  599. package/features/slugify/DefaultSlugify.js +20 -0
  600. package/features/slugify/DefaultSlugify.js.map +1 -0
  601. package/features/slugify/abstractions.d.ts +12 -0
  602. package/features/slugify/abstractions.js +5 -0
  603. package/features/slugify/abstractions.js.map +1 -0
  604. package/features/slugify/feature.d.ts +1 -0
  605. package/features/slugify/feature.js +11 -0
  606. package/features/slugify/feature.js.map +1 -0
  607. package/features/slugify/index.d.ts +3 -0
  608. package/features/slugify/index.js +3 -0
  609. package/features/stringFormatter/DefaultStringFormatter.d.ts +17 -0
  610. package/features/stringFormatter/DefaultStringFormatter.js +19 -0
  611. package/features/stringFormatter/DefaultStringFormatter.js.map +1 -0
  612. package/features/stringFormatter/abstractions.d.ts +11 -0
  613. package/features/stringFormatter/abstractions.js +5 -0
  614. package/features/stringFormatter/abstractions.js.map +1 -0
  615. package/features/stringFormatter/feature.d.ts +3 -0
  616. package/features/stringFormatter/feature.js +19 -0
  617. package/features/stringFormatter/feature.js.map +1 -0
  618. package/features/stringFormatter/index.d.ts +4 -0
  619. package/features/stringFormatter/index.js +4 -0
  620. package/features/stringFormatter/useStringFormatter.d.ts +5 -0
  621. package/features/stringFormatter/useStringFormatter.js +8 -0
  622. package/features/stringFormatter/useStringFormatter.js.map +1 -0
  623. package/features/tenancy/ApiStreamClientDecorator.d.ts +16 -0
  624. package/features/tenancy/ApiStreamClientDecorator.js +30 -0
  625. package/features/tenancy/ApiStreamClientDecorator.js.map +1 -0
  626. package/features/tenancy/feature.js +2 -0
  627. package/features/tenancy/feature.js.map +1 -1
  628. package/features/wcp/ReactLicense.d.ts +11 -0
  629. package/features/wcp/ReactLicense.js +33 -0
  630. package/features/wcp/ReactLicense.js.map +1 -1
  631. package/features/wcp/WcpGateway.js +7 -0
  632. package/features/wcp/WcpGateway.js.map +1 -1
  633. package/hooks/index.d.ts +3 -0
  634. package/hooks/index.js +3 -0
  635. package/hooks/useDrawer.d.ts +9 -0
  636. package/hooks/useDrawer.js +19 -0
  637. package/hooks/useDrawer.js.map +1 -0
  638. package/hooks/useHotkeys.js +11 -7
  639. package/hooks/useHotkeys.js.map +1 -1
  640. package/hooks/useOpenDrawer.d.ts +7 -0
  641. package/hooks/useOpenDrawer.js +18 -0
  642. package/hooks/useOpenDrawer.js.map +1 -0
  643. package/hooks/useSnackbar.js.map +1 -1
  644. package/index.d.ts +43 -2
  645. package/index.js +43 -15
  646. package/modules/AccessManagementExtension.js +49 -23
  647. package/modules/AccessManagementExtension.js.map +1 -1
  648. package/modules/DebuggerExtension.d.ts +2 -0
  649. package/modules/DebuggerExtension.js +55 -0
  650. package/modules/DebuggerExtension.js.map +1 -0
  651. package/package.json +41 -38
  652. package/presentation/accessManagement/SecurityPermissions.js +3 -3
  653. package/presentation/accessManagement/SecurityPermissions.js.map +1 -1
  654. package/presentation/accessManagement/apiKeys/ApiKeysPresenter.d.ts +3 -1
  655. package/presentation/accessManagement/apiKeys/ApiKeysPresenter.js +14 -18
  656. package/presentation/accessManagement/apiKeys/ApiKeysPresenter.js.map +1 -1
  657. package/presentation/accessManagement/apiKeys/components/ApiKeysView.d.ts +2 -2
  658. package/presentation/accessManagement/apiKeys/components/ApiKeysView.js +13 -7
  659. package/presentation/accessManagement/apiKeys/components/ApiKeysView.js.map +1 -1
  660. package/presentation/accessManagement/roles/RolesPresenter.d.ts +3 -1
  661. package/presentation/accessManagement/roles/RolesPresenter.js +12 -16
  662. package/presentation/accessManagement/roles/RolesPresenter.js.map +1 -1
  663. package/presentation/accessManagement/roles/components/RolesDataList.d.ts +10 -0
  664. package/presentation/accessManagement/roles/components/RolesDataList.js +146 -0
  665. package/presentation/accessManagement/roles/components/RolesDataList.js.map +1 -0
  666. package/presentation/accessManagement/roles/components/RolesForm.d.ts +13 -0
  667. package/presentation/accessManagement/roles/components/RolesForm.js +114 -0
  668. package/presentation/accessManagement/roles/components/RolesForm.js.map +1 -0
  669. package/presentation/accessManagement/roles/components/RolesView.d.ts +2 -2
  670. package/presentation/accessManagement/roles/components/RolesView.js +6 -212
  671. package/presentation/accessManagement/roles/components/RolesView.js.map +1 -1
  672. package/presentation/accessManagement/teams/TeamsPresenter.d.ts +3 -1
  673. package/presentation/accessManagement/teams/TeamsPresenter.js +12 -16
  674. package/presentation/accessManagement/teams/TeamsPresenter.js.map +1 -1
  675. package/presentation/accessManagement/teams/components/TeamsDataList.d.ts +10 -0
  676. package/presentation/accessManagement/teams/components/TeamsDataList.js +146 -0
  677. package/presentation/accessManagement/teams/components/TeamsDataList.js.map +1 -0
  678. package/presentation/accessManagement/teams/components/TeamsForm.d.ts +13 -0
  679. package/presentation/accessManagement/teams/components/TeamsForm.js +96 -0
  680. package/presentation/accessManagement/teams/components/TeamsForm.js.map +1 -0
  681. package/presentation/accessManagement/teams/components/TeamsView.d.ts +2 -2
  682. package/presentation/accessManagement/teams/components/TeamsView.js +6 -194
  683. package/presentation/accessManagement/teams/components/TeamsView.js.map +1 -1
  684. package/presentation/adminUsers/AdminUsers.d.ts +10 -0
  685. package/presentation/adminUsers/AdminUsers.js +77 -0
  686. package/presentation/adminUsers/AdminUsers.js.map +1 -0
  687. package/presentation/adminUsers/SecurityPermission.d.ts +2 -0
  688. package/presentation/adminUsers/SecurityPermission.js +15 -0
  689. package/presentation/adminUsers/SecurityPermission.js.map +1 -0
  690. package/presentation/adminUsers/UserItem.d.ts +10 -0
  691. package/presentation/adminUsers/UserItem.js +0 -0
  692. package/presentation/adminUsers/components/AvatarImage/AvatarImage.d.ts +3 -0
  693. package/presentation/adminUsers/components/AvatarImage/AvatarImage.js +31 -0
  694. package/presentation/adminUsers/components/AvatarImage/AvatarImage.js.map +1 -0
  695. package/presentation/adminUsers/components/AvatarImage/AvatarImagePreview.d.ts +10 -0
  696. package/presentation/adminUsers/components/AvatarImage/AvatarImagePreview.js +53 -0
  697. package/presentation/adminUsers/components/AvatarImage/AvatarImagePreview.js.map +1 -0
  698. package/presentation/adminUsers/components/AvatarImage/AvatarImageTrigger.d.ts +7 -0
  699. package/presentation/adminUsers/components/AvatarImage/AvatarImageTrigger.js +28 -0
  700. package/presentation/adminUsers/components/AvatarImage/AvatarImageTrigger.js.map +1 -0
  701. package/presentation/adminUsers/components/AvatarImage/index.d.ts +1 -0
  702. package/presentation/adminUsers/components/AvatarImage/index.js +1 -0
  703. package/presentation/adminUsers/routes.d.ts +10 -0
  704. package/presentation/adminUsers/routes.js +20 -0
  705. package/presentation/adminUsers/routes.js.map +1 -0
  706. package/presentation/adminUsers/userMenu/AccountDetails.d.ts +6 -0
  707. package/presentation/adminUsers/userMenu/AccountDetails.js +20 -0
  708. package/presentation/adminUsers/userMenu/AccountDetails.js.map +1 -0
  709. package/presentation/adminUsers/userMenu/useIsDefaultTenant.d.ts +1 -0
  710. package/presentation/adminUsers/userMenu/useIsDefaultTenant.js +9 -0
  711. package/presentation/adminUsers/userMenu/useIsDefaultTenant.js.map +1 -0
  712. package/presentation/adminUsers/views/Account/Account.d.ts +2 -0
  713. package/presentation/adminUsers/views/Account/Account.js +137 -0
  714. package/presentation/adminUsers/views/Account/Account.js.map +1 -0
  715. package/presentation/adminUsers/views/Account/index.d.ts +1 -0
  716. package/presentation/adminUsers/views/Account/index.js +1 -0
  717. package/presentation/adminUsers/views/Users/UsersDataList.d.ts +3 -0
  718. package/presentation/adminUsers/views/Users/UsersDataList.js +180 -0
  719. package/presentation/adminUsers/views/Users/UsersDataList.js.map +1 -0
  720. package/presentation/adminUsers/views/Users/UsersForm.d.ts +5 -0
  721. package/presentation/adminUsers/views/Users/UsersForm.js +175 -0
  722. package/presentation/adminUsers/views/Users/UsersForm.js.map +1 -0
  723. package/presentation/adminUsers/views/Users/UsersView.d.ts +2 -0
  724. package/presentation/adminUsers/views/Users/UsersView.js +15 -0
  725. package/presentation/adminUsers/views/Users/UsersView.js.map +1 -0
  726. package/presentation/adminUsers/views/Users/components/DeleteAction.d.ts +7 -0
  727. package/presentation/adminUsers/views/Users/components/DeleteAction.js +29 -0
  728. package/presentation/adminUsers/views/Users/components/DeleteAction.js.map +1 -0
  729. package/presentation/adminUsers/views/Users/hooks/useUserForm.d.ts +27 -0
  730. package/presentation/adminUsers/views/Users/hooks/useUserForm.js +101 -0
  731. package/presentation/adminUsers/views/Users/hooks/useUserForm.js.map +1 -0
  732. package/presentation/adminUsers/views/Users/search.js +21 -0
  733. package/presentation/adminUsers/views/Users/search.js.map +1 -0
  734. package/presentation/adminUsers/views/Users/search.svg +20 -0
  735. package/presentation/adminUsers/views/utils.d.ts +3 -0
  736. package/presentation/adminUsers/views/utils.js +12 -0
  737. package/presentation/adminUsers/views/utils.js.map +1 -0
  738. package/presentation/aiChats/AiChatsPanelPresenter.d.ts +28 -0
  739. package/presentation/aiChats/AiChatsPanelPresenter.js +132 -0
  740. package/presentation/aiChats/AiChatsPanelPresenter.js.map +1 -0
  741. package/presentation/aiChats/abstractions.d.ts +69 -0
  742. package/presentation/aiChats/abstractions.js +5 -0
  743. package/presentation/aiChats/abstractions.js.map +1 -0
  744. package/presentation/aiChats/feature.d.ts +3 -0
  745. package/presentation/aiChats/feature.js +17 -0
  746. package/presentation/aiChats/feature.js.map +1 -0
  747. package/presentation/aiChats/index.d.ts +2 -0
  748. package/presentation/aiChats/index.js +2 -0
  749. package/presentation/assumePermissions/AssumePermissionsPresenter.d.ts +36 -0
  750. package/presentation/assumePermissions/AssumePermissionsPresenter.js +153 -0
  751. package/presentation/assumePermissions/AssumePermissionsPresenter.js.map +1 -0
  752. package/presentation/assumePermissions/abstractions.d.ts +30 -0
  753. package/presentation/assumePermissions/abstractions.js +5 -0
  754. package/presentation/assumePermissions/abstractions.js.map +1 -0
  755. package/presentation/assumePermissions/components/AssumePermissionsButton.d.ts +14 -0
  756. package/presentation/assumePermissions/components/AssumePermissionsButton.js +42 -0
  757. package/presentation/assumePermissions/components/AssumePermissionsButton.js.map +1 -0
  758. package/presentation/assumePermissions/components/AssumedPermissionsBanner.d.ts +11 -0
  759. package/presentation/assumePermissions/components/AssumedPermissionsBanner.js +25 -0
  760. package/presentation/assumePermissions/components/AssumedPermissionsBanner.js.map +1 -0
  761. package/presentation/assumePermissions/components/AssumedPermissionsSelector.d.ts +2 -0
  762. package/presentation/assumePermissions/components/AssumedPermissionsSelector.js +68 -0
  763. package/presentation/assumePermissions/components/AssumedPermissionsSelector.js.map +1 -0
  764. package/presentation/assumePermissions/feature.d.ts +3 -0
  765. package/presentation/assumePermissions/feature.js +17 -0
  766. package/presentation/assumePermissions/feature.js.map +1 -0
  767. package/presentation/assumePermissions/index.d.ts +4 -0
  768. package/presentation/assumePermissions/index.js +4 -0
  769. package/presentation/banners/BannersPresenter.d.ts +14 -0
  770. package/presentation/banners/BannersPresenter.js +60 -0
  771. package/presentation/banners/BannersPresenter.js.map +1 -0
  772. package/presentation/banners/abstractions.d.ts +24 -0
  773. package/presentation/banners/abstractions.js +5 -0
  774. package/presentation/banners/abstractions.js.map +1 -0
  775. package/presentation/banners/components/Banner.d.ts +10 -0
  776. package/presentation/banners/components/Banner.js +32 -0
  777. package/presentation/banners/components/Banner.js.map +1 -0
  778. package/presentation/banners/components/BannerBar.d.ts +11 -0
  779. package/presentation/banners/components/BannerBar.js +51 -0
  780. package/presentation/banners/components/BannerBar.js.map +1 -0
  781. package/presentation/banners/feature.d.ts +3 -0
  782. package/presentation/banners/feature.js +17 -0
  783. package/presentation/banners/feature.js.map +1 -0
  784. package/presentation/banners/index.d.ts +6 -0
  785. package/presentation/banners/index.js +4 -0
  786. package/presentation/banners/useBanner.d.ts +10 -0
  787. package/presentation/banners/useBanner.js +15 -0
  788. package/presentation/banners/useBanner.js.map +1 -0
  789. package/presentation/commandPalette/CommandPalettePresenter.d.ts +21 -0
  790. package/presentation/commandPalette/CommandPalettePresenter.js +93 -0
  791. package/presentation/commandPalette/CommandPalettePresenter.js.map +1 -0
  792. package/presentation/commandPalette/abstractions.d.ts +81 -0
  793. package/presentation/commandPalette/abstractions.js +7 -0
  794. package/presentation/commandPalette/abstractions.js.map +1 -0
  795. package/presentation/commandPalette/commands/AiChatsCommand.d.ts +24 -0
  796. package/presentation/commandPalette/commands/AiChatsCommand.js +41 -0
  797. package/presentation/commandPalette/commands/AiChatsCommand.js.map +1 -0
  798. package/presentation/commandPalette/commands/AskAiCommand.d.ts +26 -0
  799. package/presentation/commandPalette/commands/AskAiCommand.js +34 -0
  800. package/presentation/commandPalette/commands/AskAiCommand.js.map +1 -0
  801. package/presentation/commandPalette/commands/CopyCurrentUrlCommand.d.ts +15 -0
  802. package/presentation/commandPalette/commands/CopyCurrentUrlCommand.js +33 -0
  803. package/presentation/commandPalette/commands/CopyCurrentUrlCommand.js.map +1 -0
  804. package/presentation/commandPalette/commands/SendMessageCommand.d.ts +23 -0
  805. package/presentation/commandPalette/commands/SendMessageCommand.js +66 -0
  806. package/presentation/commandPalette/commands/SendMessageCommand.js.map +1 -0
  807. package/presentation/commandPalette/commands/SignOutCommand.d.ts +18 -0
  808. package/presentation/commandPalette/commands/SignOutCommand.js +37 -0
  809. package/presentation/commandPalette/commands/SignOutCommand.js.map +1 -0
  810. package/presentation/commandPalette/commands/feature.d.ts +5 -0
  811. package/presentation/commandPalette/commands/feature.js +19 -0
  812. package/presentation/commandPalette/commands/feature.js.map +1 -0
  813. package/presentation/commandPalette/feature.d.ts +3 -0
  814. package/presentation/commandPalette/feature.js +17 -0
  815. package/presentation/commandPalette/feature.js.map +1 -0
  816. package/presentation/commandPalette/index.d.ts +3 -0
  817. package/presentation/commandPalette/index.js +2 -0
  818. package/presentation/createReactiveComponent.d.ts +1 -0
  819. package/presentation/createReactiveComponent.js +1 -0
  820. package/presentation/debugger/DebuggerPresenter.d.ts +14 -0
  821. package/presentation/debugger/DebuggerPresenter.js +45 -0
  822. package/presentation/debugger/DebuggerPresenter.js.map +1 -0
  823. package/presentation/debugger/abstractions.d.ts +17 -0
  824. package/presentation/debugger/abstractions.js +5 -0
  825. package/presentation/debugger/abstractions.js.map +1 -0
  826. package/presentation/debugger/components/DebuggerIndicator.d.ts +2 -0
  827. package/presentation/debugger/components/DebuggerIndicator.js +45 -0
  828. package/presentation/debugger/components/DebuggerIndicator.js.map +1 -0
  829. package/presentation/debugger/components/DebuggerView.d.ts +4 -0
  830. package/presentation/debugger/components/DebuggerView.js +44 -0
  831. package/presentation/debugger/components/DebuggerView.js.map +1 -0
  832. package/presentation/debugger/downloadJson.d.ts +7 -0
  833. package/presentation/debugger/downloadJson.js +17 -0
  834. package/presentation/debugger/downloadJson.js.map +1 -0
  835. package/presentation/debugger/feature.d.ts +3 -0
  836. package/presentation/debugger/feature.js +17 -0
  837. package/presentation/debugger/feature.js.map +1 -0
  838. package/presentation/debugger/routes.d.ts +4 -0
  839. package/presentation/debugger/routes.js +10 -0
  840. package/presentation/debugger/routes.js.map +1 -0
  841. package/presentation/featureFlags/FeatureFlagsProvider.d.ts +7 -0
  842. package/presentation/featureFlags/FeatureFlagsProvider.js +22 -0
  843. package/presentation/featureFlags/FeatureFlagsProvider.js.map +1 -0
  844. package/presentation/featureFlags/useFeatureFlags.d.ts +2 -0
  845. package/presentation/featureFlags/useFeatureFlags.js +17 -0
  846. package/presentation/featureFlags/useFeatureFlags.js.map +1 -0
  847. package/presentation/installation/components/SystemInstaller/SystemInstaller.d.ts +2 -2
  848. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep.js +4 -3
  849. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep.js.map +1 -1
  850. package/presentation/installation/components/SystemInstaller/steps/FinishSetup/handleStartUsing.js +0 -3
  851. package/presentation/installation/components/SystemInstaller/steps/FinishSetup/handleStartUsing.js.map +1 -1
  852. package/presentation/installation/presenters/SystemInstaller/SystemInstallerPresenter.js.map +1 -1
  853. package/presentation/listPresenter/FolderAwareDataSource.d.ts +5 -0
  854. package/presentation/listPresenter/FolderAwareDataSource.js +8 -4
  855. package/presentation/listPresenter/FolderAwareDataSource.js.map +1 -1
  856. package/presentation/listPresenter/QueryMatcher.d.ts +28 -5
  857. package/presentation/listPresenter/QueryMatcher.js +74 -4
  858. package/presentation/listPresenter/QueryMatcher.js.map +1 -1
  859. package/presentation/listPresenter/QueryMatcher.test.d.ts +1 -0
  860. package/presentation/listPresenter/QueryMatcher.test.js +345 -0
  861. package/presentation/listPresenter/QueryMatcher.test.js.map +1 -0
  862. package/presentation/sortable/SortablePresenter.d.ts +23 -0
  863. package/presentation/sortable/SortablePresenter.js +175 -0
  864. package/presentation/sortable/SortablePresenter.js.map +1 -0
  865. package/presentation/sortable/abstractions.d.ts +24 -0
  866. package/presentation/sortable/abstractions.js +5 -0
  867. package/presentation/sortable/abstractions.js.map +1 -0
  868. package/presentation/sortable/feature.d.ts +1 -0
  869. package/presentation/sortable/feature.js +11 -0
  870. package/presentation/sortable/feature.js.map +1 -0
  871. package/presentation/sortable/index.d.ts +2 -0
  872. package/presentation/sortable/index.js +2 -0
  873. package/presentation/trashBin/TrashBinPresenter.js +3 -1
  874. package/presentation/trashBin/TrashBinPresenter.js.map +1 -1
  875. package/presentation/trashBin/TrashBinPresenter.test.d.ts +1 -0
  876. package/presentation/trashBin/TrashBinPresenter.test.js +91 -0
  877. package/presentation/trashBin/TrashBinPresenter.test.js.map +1 -0
  878. package/presentation/trashBin/abstractions.d.ts +1 -1
  879. package/presentation/trashBin/abstractions.js.map +1 -1
  880. package/presentation/trashBin/components/BulkActions/DeleteItems.d.ts +2 -2
  881. package/presentation/trashBin/components/BulkActions/DeleteItems.js +5 -1
  882. package/presentation/trashBin/components/BulkActions/DeleteItems.js.map +1 -1
  883. package/presentation/trashBin/components/BulkActions/DeleteItems.test.d.ts +1 -0
  884. package/presentation/trashBin/components/BulkActions/DeleteItems.test.js +100 -0
  885. package/presentation/trashBin/components/BulkActions/DeleteItems.test.js.map +1 -0
  886. package/presentation/trashBin/components/BulkActions/RestoreItems.d.ts +2 -2
  887. package/presentation/trashBin/components/TrashBinOverlay.d.ts +2 -2
  888. package/presentation/trashBin/hooks/useDeleteTrashBinItem.js +2 -1
  889. package/presentation/trashBin/hooks/useDeleteTrashBinItem.js.map +1 -1
  890. package/presentation/trashBin/hooks/useDeleteTrashBinItem.test.d.ts +1 -0
  891. package/presentation/trashBin/hooks/useDeleteTrashBinItem.test.js +67 -0
  892. package/presentation/trashBin/hooks/useDeleteTrashBinItem.test.js.map +1 -0
  893. package/static/svg/search.43fa797c.svg +20 -0
  894. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone.d.ts +0 -10
  895. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone.js.map +0 -1
  896. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker.js +0 -68
  897. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker.js.map +0 -1
  898. package/base/Base/Menus/WebinyVersion.d.ts +0 -2
  899. package/base/Base/Menus/WebinyVersion.js +0 -23
  900. package/base/Base/Menus/WebinyVersion.js.map +0 -1
  901. package/base/WebinyVersion.d.ts +0 -2
  902. package/base/WebinyVersion.js +0 -23
  903. package/base/WebinyVersion.js.map +0 -1
  904. package/components/Wcp.d.ts +0 -19
  905. package/components/Wcp.js +0 -37
  906. package/components/Wcp.js.map +0 -1
  907. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/createPasswordValidator.d.ts +0 -8
  908. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/createPasswordValidator.js +0 -17
  909. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/createPasswordValidator.js.map +0 -1
  910. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/usePasswordValidator.d.ts +0 -1
  911. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/usePasswordValidator.js +0 -16
  912. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/usePasswordValidator.js.map +0 -1
@@ -0,0 +1,16 @@
1
+ import { ApiStreamClient } from "@webiny/app/features/apiStreamClient/index.js";
2
+ import { AssumePermissionsContext } from "./abstractions.js";
3
+ /**
4
+ * Carries the previewed role onto streaming requests too, so a streaming route enforces the same
5
+ * permissions as an equivalent GraphQL call.
6
+ */
7
+ declare class ApiStreamClientWithAssumedPermissions implements ApiStreamClient.Interface {
8
+ private context;
9
+ private decoratee;
10
+ constructor(context: AssumePermissionsContext.Interface, decoratee: ApiStreamClient.Interface);
11
+ execute(params: ApiStreamClient.Request): Promise<ApiStreamClient.Response>;
12
+ }
13
+ export declare const ApiStreamClientDecorator: typeof ApiStreamClientWithAssumedPermissions & {
14
+ __abstraction: import("@webiny/di").Abstraction<import("@webiny/app/features/apiStreamClient/abstractions.js").IApiStreamClient>;
15
+ };
16
+ export {};
@@ -0,0 +1,29 @@
1
+ import { ApiStreamClient } from "@webiny/app/features/apiStreamClient/index.js";
2
+ import { AssumePermissionsContext } from "./abstractions.js";
3
+ import { ASSUME_PERMISSIONS_HEADER, assumePermissionsHeaderValue } from "./assumePermissionsHeader.js";
4
+ class ApiStreamClientWithAssumedPermissions {
5
+ constructor(context, decoratee){
6
+ this.context = context;
7
+ this.decoratee = decoratee;
8
+ }
9
+ async execute(params) {
10
+ const headers = {
11
+ ...params.headers
12
+ };
13
+ const assumed = this.context.get();
14
+ if (assumed && !(ASSUME_PERMISSIONS_HEADER in headers)) headers[ASSUME_PERMISSIONS_HEADER] = assumePermissionsHeaderValue(assumed);
15
+ return this.decoratee.execute({
16
+ ...params,
17
+ headers
18
+ });
19
+ }
20
+ }
21
+ const ApiStreamClientDecorator = ApiStreamClient.createDecorator({
22
+ decorator: ApiStreamClientWithAssumedPermissions,
23
+ dependencies: [
24
+ AssumePermissionsContext
25
+ ]
26
+ });
27
+ export { ApiStreamClientDecorator };
28
+
29
+ //# sourceMappingURL=ApiStreamClientDecorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/assumePermissions/ApiStreamClientDecorator.js","sources":["../../../src/features/assumePermissions/ApiStreamClientDecorator.ts"],"sourcesContent":["import { ApiStreamClient } from \"@webiny/app/features/apiStreamClient/index.js\";\nimport { AssumePermissionsContext } from \"./abstractions.js\";\nimport { ASSUME_PERMISSIONS_HEADER } from \"./assumePermissionsHeader.js\";\nimport { assumePermissionsHeaderValue } from \"./assumePermissionsHeader.js\";\n\n/**\n * Carries the previewed role onto streaming requests too, so a streaming route enforces the same\n * permissions as an equivalent GraphQL call.\n */\nclass ApiStreamClientWithAssumedPermissions implements ApiStreamClient.Interface {\n constructor(\n private context: AssumePermissionsContext.Interface,\n private decoratee: ApiStreamClient.Interface\n ) {}\n\n async execute(params: ApiStreamClient.Request): Promise<ApiStreamClient.Response> {\n const headers: ApiStreamClient.Headers = { ...params.headers };\n const assumed = this.context.get();\n\n /*\n * A caller that set the header itself keeps its value. The role list query sends it empty,\n * so its own lists come back as the signed-in user rather than as the role being previewed.\n */\n if (assumed && !(ASSUME_PERMISSIONS_HEADER in headers)) {\n headers[ASSUME_PERMISSIONS_HEADER] = assumePermissionsHeaderValue(assumed);\n }\n\n return this.decoratee.execute({ ...params, headers });\n }\n}\n\nexport const ApiStreamClientDecorator = ApiStreamClient.createDecorator({\n decorator: ApiStreamClientWithAssumedPermissions,\n dependencies: [AssumePermissionsContext]\n});\n"],"names":["ApiStreamClientWithAssumedPermissions","context","decoratee","params","headers","assumed","ASSUME_PERMISSIONS_HEADER","assumePermissionsHeaderValue","ApiStreamClientDecorator","ApiStreamClient","AssumePermissionsContext"],"mappings":";;;AASA,MAAMA;IACF,YACYC,OAA2C,EAC3CC,SAAoC,CAC9C;aAFUD,OAAO,GAAPA;aACAC,SAAS,GAATA;IACT;IAEH,MAAM,QAAQC,MAA+B,EAAqC;QAC9E,MAAMC,UAAmC;YAAE,GAAGD,OAAO,OAAO;QAAC;QAC7D,MAAME,UAAU,IAAI,CAAC,OAAO,CAAC,GAAG;QAMhC,IAAIA,WAAW,CAAEC,CAAAA,6BAA6BF,OAAM,GAChDA,OAAO,CAACE,0BAA0B,GAAGC,6BAA6BF;QAGtE,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YAAE,GAAGF,MAAM;YAAEC;QAAQ;IACvD;AACJ;AAEO,MAAMI,2BAA2BC,gBAAgB,eAAe,CAAC;IACpE,WAAWT;IACX,cAAc;QAACU;KAAyB;AAC5C"}
@@ -0,0 +1,17 @@
1
+ import { LocalStorage } from "@webiny/app/features/localStorage";
2
+ import { AssumePermissionsContext as Abstraction } from "./abstractions.js";
3
+ /**
4
+ * Holds the role or team being previewed, and survives a reload so a refresh mid-preview doesn't
5
+ * quietly hand the user their real permissions back.
6
+ */
7
+ declare class AssumePermissionsContextImpl implements Abstraction.Interface {
8
+ private localStorage;
9
+ private value;
10
+ constructor(localStorage: LocalStorage.Interface);
11
+ get(): Abstraction.Value | null;
12
+ set(value: Abstraction.Value | null): void;
13
+ }
14
+ export declare const AssumePermissionsContext: typeof AssumePermissionsContextImpl & {
15
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IAssumePermissionsContext>;
16
+ };
17
+ export {};
@@ -0,0 +1,32 @@
1
+ import { makeAutoObservable, runInAction } from "mobx";
2
+ import { LocalStorage } from "@webiny/app/features/localStorage";
3
+ import { AssumePermissionsContext } from "./abstractions.js";
4
+ const LOCAL_STORAGE_KEY = "assumedPermissions";
5
+ class AssumePermissionsContextImpl {
6
+ constructor(localStorage){
7
+ this.localStorage = localStorage;
8
+ this.value = this.localStorage.get(LOCAL_STORAGE_KEY) ?? null;
9
+ makeAutoObservable(this, {}, {
10
+ autoBind: true
11
+ });
12
+ }
13
+ get() {
14
+ return this.value;
15
+ }
16
+ set(value) {
17
+ runInAction(()=>{
18
+ this.value = value;
19
+ });
20
+ if (value) return void this.localStorage.set(LOCAL_STORAGE_KEY, value);
21
+ this.localStorage.remove(LOCAL_STORAGE_KEY);
22
+ }
23
+ }
24
+ const AssumePermissionsContext_AssumePermissionsContext = AssumePermissionsContext.createImplementation({
25
+ implementation: AssumePermissionsContextImpl,
26
+ dependencies: [
27
+ LocalStorage
28
+ ]
29
+ });
30
+ export { AssumePermissionsContext_AssumePermissionsContext as AssumePermissionsContext };
31
+
32
+ //# sourceMappingURL=AssumePermissionsContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/assumePermissions/AssumePermissionsContext.js","sources":["../../../src/features/assumePermissions/AssumePermissionsContext.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { runInAction } from \"mobx\";\nimport { LocalStorage } from \"@webiny/app/features/localStorage\";\nimport { AssumePermissionsContext as Abstraction } from \"./abstractions.js\";\n\nconst LOCAL_STORAGE_KEY = \"assumedPermissions\";\n\n/**\n * Holds the role or team being previewed, and survives a reload so a refresh mid-preview doesn't\n * quietly hand the user their real permissions back.\n */\nclass AssumePermissionsContextImpl implements Abstraction.Interface {\n private value: Abstraction.Value | null;\n\n constructor(private localStorage: LocalStorage.Interface) {\n this.value = this.localStorage.get<Abstraction.Value>(LOCAL_STORAGE_KEY) ?? null;\n makeAutoObservable(this, {}, { autoBind: true });\n }\n\n get(): Abstraction.Value | null {\n return this.value;\n }\n\n set(value: Abstraction.Value | null): void {\n runInAction(() => {\n this.value = value;\n });\n\n if (value) {\n this.localStorage.set(LOCAL_STORAGE_KEY, value);\n return;\n }\n\n this.localStorage.remove(LOCAL_STORAGE_KEY);\n }\n}\n\nexport const AssumePermissionsContext = Abstraction.createImplementation({\n implementation: AssumePermissionsContextImpl,\n dependencies: [LocalStorage]\n});\n"],"names":["LOCAL_STORAGE_KEY","AssumePermissionsContextImpl","localStorage","makeAutoObservable","value","runInAction","AssumePermissionsContext","Abstraction","LocalStorage"],"mappings":";;;AAKA,MAAMA,oBAAoB;AAM1B,MAAMC;IAGF,YAAoBC,YAAoC,CAAE;aAAtCA,YAAY,GAAZA;QAChB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAoBF,sBAAsB;QAC5EG,mBAAmB,IAAI,EAAE,CAAC,GAAG;YAAE,UAAU;QAAK;IAClD;IAEA,MAAgC;QAC5B,OAAO,IAAI,CAAC,KAAK;IACrB;IAEA,IAAIC,KAA+B,EAAQ;QACvCC,YAAY;YACR,IAAI,CAAC,KAAK,GAAGD;QACjB;QAEA,IAAIA,OAAO,YACP,IAAI,CAAC,YAAY,CAAC,GAAG,CAACJ,mBAAmBI;QAI7C,IAAI,CAAC,YAAY,CAAC,MAAM,CAACJ;IAC7B;AACJ;AAEO,MAAMM,oDAA2BC,yBAAAA,oBAAgC,CAAC;IACrE,gBAAgBN;IAChB,cAAc;QAACO;KAAa;AAChC"}
@@ -0,0 +1,33 @@
1
+ import { IdentityContext } from "../../features/security/IdentityContext/index.js";
2
+ import { LogInRepository } from "../../features/security/LogIn/abstractions.js";
3
+ import { AssumePermissionsContext } from "./abstractions.js";
4
+ import { AssumePermissionsUseCase as Abstraction } from "./abstractions.js";
5
+ /**
6
+ * Switches the Admin into (or out of) previewing a role. The permissions themselves come from the
7
+ * API: once the context holds a role, every request carries the assume-permissions header, so the
8
+ * login query returns the identity as that role sees it. Nothing about the permission set is
9
+ * decided on the client.
10
+ *
11
+ * This only records the choice and proves it works. The caller reloads the page afterwards, which
12
+ * is what actually re-renders the Admin as the new role. Swapping the identity in place leaves
13
+ * half the UI stale, because permission checks like `createHasPermission` read the identity during
14
+ * render without observing it, and every list already fetched still holds the previous role's
15
+ * data. The tenant switcher reaches for a full page load for the same reason.
16
+ *
17
+ * The login call here is not redundant with the one the reload performs. It is how a role that
18
+ * grants nothing gets caught BEFORE the reload: the selection is persisted, so reloading into a
19
+ * failed login would strand the user behind an error screen with no way to clear it.
20
+ */
21
+ declare class AssumePermissionsUseCaseImpl implements Abstraction.Interface {
22
+ private assumePermissionsContext;
23
+ private identityContext;
24
+ private logInRepository;
25
+ constructor(assumePermissionsContext: AssumePermissionsContext.Interface, identityContext: IdentityContext.Interface, logInRepository: LogInRepository.Interface);
26
+ execute(target: Abstraction.Target | null, options?: Abstraction.Options): Promise<void>;
27
+ private toStored;
28
+ private verify;
29
+ }
30
+ export declare const AssumePermissionsUseCase: typeof AssumePermissionsUseCaseImpl & {
31
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IAssumePermissionsUseCase>;
32
+ };
33
+ export {};
@@ -0,0 +1,48 @@
1
+ import { IdentityContext } from "../security/IdentityContext/index.js";
2
+ import { LogInRepository } from "../security/LogIn/abstractions.js";
3
+ import { hasAppPermissions } from "../security/LogIn/hasAppPermissions.js";
4
+ import { AssumePermissionsContext, AssumePermissionsUseCase } from "./abstractions.js";
5
+ class AssumePermissionsUseCaseImpl {
6
+ constructor(assumePermissionsContext, identityContext, logInRepository){
7
+ this.assumePermissionsContext = assumePermissionsContext;
8
+ this.identityContext = identityContext;
9
+ this.logInRepository = logInRepository;
10
+ }
11
+ async execute(target, options = {}) {
12
+ const previous = this.assumePermissionsContext.get();
13
+ const value = this.toStored(target, previous, options);
14
+ this.assumePermissionsContext.set(value);
15
+ try {
16
+ await this.verify(value);
17
+ } catch (error) {
18
+ this.assumePermissionsContext.set(previous);
19
+ throw error;
20
+ }
21
+ }
22
+ toStored(target, previous, options) {
23
+ if (!target) return null;
24
+ const identity = this.identityContext.getIdentity();
25
+ const value = {
26
+ ...target,
27
+ startedBy: identity.id
28
+ };
29
+ const returnTo = previous?.returnTo ?? options.returnTo;
30
+ if (returnTo) value.returnTo = returnTo;
31
+ return value;
32
+ }
33
+ async verify(value) {
34
+ const identity = await this.logInRepository.login();
35
+ if (value && !hasAppPermissions(identity)) throw new Error(`"${value.name}" grants no permissions on this tenant.`);
36
+ }
37
+ }
38
+ const AssumePermissionsUseCase_AssumePermissionsUseCase = AssumePermissionsUseCase.createImplementation({
39
+ implementation: AssumePermissionsUseCaseImpl,
40
+ dependencies: [
41
+ AssumePermissionsContext,
42
+ IdentityContext,
43
+ LogInRepository
44
+ ]
45
+ });
46
+ export { AssumePermissionsUseCase_AssumePermissionsUseCase as AssumePermissionsUseCase };
47
+
48
+ //# sourceMappingURL=AssumePermissionsUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/assumePermissions/AssumePermissionsUseCase.js","sources":["../../../src/features/assumePermissions/AssumePermissionsUseCase.ts"],"sourcesContent":["import { IdentityContext } from \"~/features/security/IdentityContext/index.js\";\nimport { LogInRepository } from \"~/features/security/LogIn/abstractions.js\";\nimport { hasAppPermissions } from \"~/features/security/LogIn/hasAppPermissions.js\";\nimport { AssumePermissionsContext } from \"./abstractions.js\";\nimport { AssumePermissionsUseCase as Abstraction } from \"./abstractions.js\";\n\n/**\n * Switches the Admin into (or out of) previewing a role. The permissions themselves come from the\n * API: once the context holds a role, every request carries the assume-permissions header, so the\n * login query returns the identity as that role sees it. Nothing about the permission set is\n * decided on the client.\n *\n * This only records the choice and proves it works. The caller reloads the page afterwards, which\n * is what actually re-renders the Admin as the new role. Swapping the identity in place leaves\n * half the UI stale, because permission checks like `createHasPermission` read the identity during\n * render without observing it, and every list already fetched still holds the previous role's\n * data. The tenant switcher reaches for a full page load for the same reason.\n *\n * The login call here is not redundant with the one the reload performs. It is how a role that\n * grants nothing gets caught BEFORE the reload: the selection is persisted, so reloading into a\n * failed login would strand the user behind an error screen with no way to clear it.\n */\nclass AssumePermissionsUseCaseImpl implements Abstraction.Interface {\n constructor(\n private assumePermissionsContext: AssumePermissionsContext.Interface,\n private identityContext: IdentityContext.Interface,\n private logInRepository: LogInRepository.Interface\n ) {}\n\n async execute(\n target: Abstraction.Target | null,\n options: Abstraction.Options = {}\n ): Promise<void> {\n const previous = this.assumePermissionsContext.get();\n const value = this.toStored(target, previous, options);\n this.assumePermissionsContext.set(value);\n\n try {\n await this.verify(value);\n } catch (error) {\n /*\n * Put the previous selection back. Otherwise the app keeps sending a header it has\n * already failed on, and because the selection is persisted, a reload won't clear it.\n */\n this.assumePermissionsContext.set(previous);\n throw error;\n }\n }\n\n /*\n * The identity id is the same whether or not a preview is running (only the permissions\n * change), so switching straight from one role to another still records the right person.\n */\n private toStored(\n target: Abstraction.Target | null,\n previous: AssumePermissionsContext.Value | null,\n options: Abstraction.Options\n ): AssumePermissionsContext.Value | null {\n if (!target) {\n return null;\n }\n\n const identity = this.identityContext.getIdentity();\n const value: AssumePermissionsContext.Value = { ...target, startedBy: identity.id };\n\n // Switching from one role to the next keeps the place the first preview started from.\n const returnTo = previous?.returnTo ?? options.returnTo;\n if (returnTo) {\n value.returnTo = returnTo;\n }\n\n return value;\n }\n\n private async verify(value: AssumePermissionsContext.Value | null): Promise<void> {\n const identity = await this.logInRepository.login();\n\n if (value && !hasAppPermissions(identity)) {\n throw new Error(`\"${value.name}\" grants no permissions on this tenant.`);\n }\n }\n}\n\nexport const AssumePermissionsUseCase = Abstraction.createImplementation({\n implementation: AssumePermissionsUseCaseImpl,\n dependencies: [AssumePermissionsContext, IdentityContext, LogInRepository]\n});\n"],"names":["AssumePermissionsUseCaseImpl","assumePermissionsContext","identityContext","logInRepository","target","options","previous","value","error","identity","returnTo","hasAppPermissions","Error","AssumePermissionsUseCase","Abstraction","AssumePermissionsContext","IdentityContext","LogInRepository"],"mappings":";;;;AAsBA,MAAMA;IACF,YACYC,wBAA4D,EAC5DC,eAA0C,EAC1CC,eAA0C,CACpD;aAHUF,wBAAwB,GAAxBA;aACAC,eAAe,GAAfA;aACAC,eAAe,GAAfA;IACT;IAEH,MAAM,QACFC,MAAiC,EACjCC,UAA+B,CAAC,CAAC,EACpB;QACb,MAAMC,WAAW,IAAI,CAAC,wBAAwB,CAAC,GAAG;QAClD,MAAMC,QAAQ,IAAI,CAAC,QAAQ,CAACH,QAAQE,UAAUD;QAC9C,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAACE;QAElC,IAAI;YACA,MAAM,IAAI,CAAC,MAAM,CAACA;QACtB,EAAE,OAAOC,OAAO;YAKZ,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAACF;YAClC,MAAME;QACV;IACJ;IAMQ,SACJJ,MAAiC,EACjCE,QAA+C,EAC/CD,OAA4B,EACS;QACrC,IAAI,CAACD,QACD,OAAO;QAGX,MAAMK,WAAW,IAAI,CAAC,eAAe,CAAC,WAAW;QACjD,MAAMF,QAAwC;YAAE,GAAGH,MAAM;YAAE,WAAWK,SAAS,EAAE;QAAC;QAGlF,MAAMC,WAAWJ,UAAU,YAAYD,QAAQ,QAAQ;QACvD,IAAIK,UACAH,MAAM,QAAQ,GAAGG;QAGrB,OAAOH;IACX;IAEA,MAAc,OAAOA,KAA4C,EAAiB;QAC9E,MAAME,WAAW,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK;QAEjD,IAAIF,SAAS,CAACI,kBAAkBF,WAC5B,MAAM,IAAIG,MAAM,CAAC,CAAC,EAAEL,MAAM,IAAI,CAAC,uCAAuC,CAAC;IAE/E;AACJ;AAEO,MAAMM,oDAA2BC,yBAAAA,oBAAgC,CAAC;IACrE,gBAAgBd;IAChB,cAAc;QAACe;QAA0BC;QAAiBC;KAAgB;AAC9E"}
@@ -0,0 +1,16 @@
1
+ import { GraphQLClient } from "@webiny/app/features/graphqlClient/index.js";
2
+ import { AssumePermissionsContext } from "./abstractions.js";
3
+ /**
4
+ * Tells the API which role to evaluate the request against while a preview is active. Mirrors the
5
+ * tenancy `GraphQLClientDecorator`.
6
+ */
7
+ declare class GraphQLClientWithAssumedPermissions implements GraphQLClient.Interface {
8
+ private context;
9
+ private decoratee;
10
+ constructor(context: AssumePermissionsContext.Interface, decoratee: GraphQLClient.Interface);
11
+ execute<TResult = any, TVariables = any>(params: GraphQLClient.Request<TVariables>): Promise<TResult>;
12
+ }
13
+ export declare const GraphQLClientDecorator: typeof GraphQLClientWithAssumedPermissions & {
14
+ __abstraction: import("@webiny/di").Abstraction<import("@webiny/app/features/graphqlClient/abstractions.js").IGraphQLClient>;
15
+ };
16
+ export {};
@@ -0,0 +1,29 @@
1
+ import { GraphQLClient } from "@webiny/app/features/graphqlClient/index.js";
2
+ import { AssumePermissionsContext } from "./abstractions.js";
3
+ import { ASSUME_PERMISSIONS_HEADER, assumePermissionsHeaderValue } from "./assumePermissionsHeader.js";
4
+ class GraphQLClientWithAssumedPermissions {
5
+ constructor(context, decoratee){
6
+ this.context = context;
7
+ this.decoratee = decoratee;
8
+ }
9
+ async execute(params) {
10
+ const headers = {
11
+ ...params.headers
12
+ };
13
+ const assumed = this.context.get();
14
+ if (assumed && !(ASSUME_PERMISSIONS_HEADER in headers)) headers[ASSUME_PERMISSIONS_HEADER] = assumePermissionsHeaderValue(assumed);
15
+ return this.decoratee.execute({
16
+ ...params,
17
+ headers
18
+ });
19
+ }
20
+ }
21
+ const GraphQLClientDecorator = GraphQLClient.createDecorator({
22
+ decorator: GraphQLClientWithAssumedPermissions,
23
+ dependencies: [
24
+ AssumePermissionsContext
25
+ ]
26
+ });
27
+ export { GraphQLClientDecorator };
28
+
29
+ //# sourceMappingURL=GraphQLClientDecorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/assumePermissions/GraphQLClientDecorator.js","sources":["../../../src/features/assumePermissions/GraphQLClientDecorator.ts"],"sourcesContent":["import { GraphQLClient } from \"@webiny/app/features/graphqlClient/index.js\";\nimport { AssumePermissionsContext } from \"./abstractions.js\";\nimport { ASSUME_PERMISSIONS_HEADER } from \"./assumePermissionsHeader.js\";\nimport { assumePermissionsHeaderValue } from \"./assumePermissionsHeader.js\";\n\n/**\n * Tells the API which role to evaluate the request against while a preview is active. Mirrors the\n * tenancy `GraphQLClientDecorator`.\n */\nclass GraphQLClientWithAssumedPermissions implements GraphQLClient.Interface {\n constructor(\n private context: AssumePermissionsContext.Interface,\n private decoratee: GraphQLClient.Interface\n ) {}\n\n async execute<TResult = any, TVariables = any>(\n params: GraphQLClient.Request<TVariables>\n ): Promise<TResult> {\n const headers: GraphQLClient.Headers = { ...params.headers };\n const assumed = this.context.get();\n\n /*\n * A caller that set the header itself keeps its value. The role list query sends it empty,\n * so its own lists come back as the signed-in user rather than as the role being previewed.\n */\n if (assumed && !(ASSUME_PERMISSIONS_HEADER in headers)) {\n headers[ASSUME_PERMISSIONS_HEADER] = assumePermissionsHeaderValue(assumed);\n }\n\n return this.decoratee.execute({ ...params, headers });\n }\n}\n\nexport const GraphQLClientDecorator = GraphQLClient.createDecorator({\n decorator: GraphQLClientWithAssumedPermissions,\n dependencies: [AssumePermissionsContext]\n});\n"],"names":["GraphQLClientWithAssumedPermissions","context","decoratee","params","headers","assumed","ASSUME_PERMISSIONS_HEADER","assumePermissionsHeaderValue","GraphQLClientDecorator","GraphQLClient","AssumePermissionsContext"],"mappings":";;;AASA,MAAMA;IACF,YACYC,OAA2C,EAC3CC,SAAkC,CAC5C;aAFUD,OAAO,GAAPA;aACAC,SAAS,GAATA;IACT;IAEH,MAAM,QACFC,MAAyC,EACzB;QAChB,MAAMC,UAAiC;YAAE,GAAGD,OAAO,OAAO;QAAC;QAC3D,MAAME,UAAU,IAAI,CAAC,OAAO,CAAC,GAAG;QAMhC,IAAIA,WAAW,CAAEC,CAAAA,6BAA6BF,OAAM,GAChDA,OAAO,CAACE,0BAA0B,GAAGC,6BAA6BF;QAGtE,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YAAE,GAAGF,MAAM;YAAEC;QAAQ;IACvD;AACJ;AAEO,MAAMI,yBAAyBC,cAAc,eAAe,CAAC;IAChE,WAAWT;IACX,cAAc;QAACU;KAAyB;AAC5C"}
@@ -0,0 +1,13 @@
1
+ import { MainGraphQLClient } from "@webiny/app/features/mainGraphQLClient/index.js";
2
+ import { ListAssumableTargetsGateway as Abstraction } from "./abstractions.js";
3
+ declare class ListAssumableTargetsGatewayImpl implements Abstraction.Interface {
4
+ private client;
5
+ constructor(client: MainGraphQLClient.Interface);
6
+ execute(params: {
7
+ includeTeams: boolean;
8
+ }): Promise<Abstraction.Dto>;
9
+ }
10
+ export declare const ListAssumableTargetsGateway: typeof ListAssumableTargetsGatewayImpl & {
11
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IListAssumableTargetsGateway>;
12
+ };
13
+ export {};
@@ -0,0 +1,74 @@
1
+ import { MainGraphQLClient } from "@webiny/app/features/mainGraphQLClient/index.js";
2
+ import { ListAssumableTargetsGateway } from "./abstractions.js";
3
+ import { ASSUME_PERMISSIONS_HEADER } from "./assumePermissionsHeader.js";
4
+ const ROLES_FIELD = `
5
+ roles: listRoles {
6
+ data {
7
+ id
8
+ name
9
+ }
10
+ error {
11
+ message
12
+ }
13
+ }
14
+ `;
15
+ const TEAMS_FIELD = `
16
+ teams: listTeams {
17
+ data {
18
+ id
19
+ name
20
+ }
21
+ error {
22
+ message
23
+ }
24
+ }
25
+ `;
26
+ const LIST_ROLES = `
27
+ query ListAssumableRoles {
28
+ security {
29
+ ${ROLES_FIELD}
30
+ }
31
+ }
32
+ `;
33
+ const LIST_ROLES_AND_TEAMS = `
34
+ query ListAssumableRolesAndTeams {
35
+ security {
36
+ ${ROLES_FIELD}
37
+ ${TEAMS_FIELD}
38
+ }
39
+ }
40
+ `;
41
+ function unwrap(response) {
42
+ if (!response) return [];
43
+ if (response.error) throw new Error(response.error.message);
44
+ return response.data ?? [];
45
+ }
46
+ class ListAssumableTargetsGatewayImpl {
47
+ constructor(client){
48
+ this.client = client;
49
+ }
50
+ async execute(params) {
51
+ const query = params.includeTeams ? LIST_ROLES_AND_TEAMS : LIST_ROLES;
52
+ const response = await this.client.execute({
53
+ query,
54
+ headers: {
55
+ [ASSUME_PERMISSIONS_HEADER]: ""
56
+ }
57
+ });
58
+ const roles = unwrap(response.security.roles);
59
+ const teams = unwrap(response.security.teams);
60
+ return {
61
+ roles,
62
+ teams
63
+ };
64
+ }
65
+ }
66
+ const ListAssumableTargetsGateway_ListAssumableTargetsGateway = ListAssumableTargetsGateway.createImplementation({
67
+ implementation: ListAssumableTargetsGatewayImpl,
68
+ dependencies: [
69
+ MainGraphQLClient
70
+ ]
71
+ });
72
+ export { ListAssumableTargetsGateway_ListAssumableTargetsGateway as ListAssumableTargetsGateway };
73
+
74
+ //# sourceMappingURL=ListAssumableTargetsGateway.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/assumePermissions/ListAssumableTargetsGateway.js","sources":["../../../src/features/assumePermissions/ListAssumableTargetsGateway.ts"],"sourcesContent":["import { MainGraphQLClient } from \"@webiny/app/features/mainGraphQLClient/index.js\";\nimport { ListAssumableTargetsGateway as Abstraction } from \"./abstractions.js\";\nimport { ASSUME_PERMISSIONS_HEADER } from \"./assumePermissionsHeader.js\";\n\nconst ROLES_FIELD = /* GraphQL */ `\n roles: listRoles {\n data {\n id\n name\n }\n error {\n message\n }\n }\n`;\n\nconst TEAMS_FIELD = /* GraphQL */ `\n teams: listTeams {\n data {\n id\n name\n }\n error {\n message\n }\n }\n`;\n\nconst LIST_ROLES = /* GraphQL */ `\n query ListAssumableRoles {\n security {\n ${ROLES_FIELD}\n }\n }\n`;\n\nconst LIST_ROLES_AND_TEAMS = /* GraphQL */ `\n query ListAssumableRolesAndTeams {\n security {\n ${ROLES_FIELD}\n ${TEAMS_FIELD}\n }\n }\n`;\n\ninterface ListResponse<T> {\n data: T[] | null;\n error: { message: string } | null;\n}\n\ninterface Response {\n security: {\n roles: ListResponse<Abstraction.Dto[\"roles\"][number]>;\n teams?: ListResponse<Abstraction.Dto[\"teams\"][number]>;\n };\n}\n\nfunction unwrap<T>(response: ListResponse<T> | undefined): T[] {\n if (!response) {\n return [];\n }\n\n if (response.error) {\n throw new Error(response.error.message);\n }\n\n return response.data ?? [];\n}\n\nclass ListAssumableTargetsGatewayImpl implements Abstraction.Interface {\n constructor(private client: MainGraphQLClient.Interface) {}\n\n async execute(params: { includeTeams: boolean }): Promise<Abstraction.Dto> {\n const query = params.includeTeams ? LIST_ROLES_AND_TEAMS : LIST_ROLES;\n\n /*\n * An explicit, empty assume-permissions header. The client decorator leaves a header the\n * caller set alone, and the API reads an empty value as \"no preview\", so this one request\n * runs as the signed-in user even while the rest of the Admin runs as the previewed role.\n */\n const response = await this.client.execute<Response>({\n query,\n headers: { [ASSUME_PERMISSIONS_HEADER]: \"\" }\n });\n\n const roles = unwrap(response.security.roles);\n const teams = unwrap(response.security.teams);\n\n return { roles, teams };\n }\n}\n\nexport const ListAssumableTargetsGateway = Abstraction.createImplementation({\n implementation: ListAssumableTargetsGatewayImpl,\n dependencies: [MainGraphQLClient]\n});\n"],"names":["ROLES_FIELD","TEAMS_FIELD","LIST_ROLES","LIST_ROLES_AND_TEAMS","unwrap","response","Error","ListAssumableTargetsGatewayImpl","client","params","query","ASSUME_PERMISSIONS_HEADER","roles","teams","ListAssumableTargetsGateway","Abstraction","MainGraphQLClient"],"mappings":";;;AAIA,MAAMA,cAA4B,CAAC;;;;;;;;;;AAUnC,CAAC;AAED,MAAMC,cAA4B,CAAC;;;;;;;;;;AAUnC,CAAC;AAED,MAAMC,aAA2B,CAAC;;;YAGtB,EAAEF,YAAY;;;AAG1B,CAAC;AAED,MAAMG,uBAAqC,CAAC;;;YAGhC,EAAEH,YAAY;YACd,EAAEC,YAAY;;;AAG1B,CAAC;AAcD,SAASG,OAAUC,QAAqC;IACpD,IAAI,CAACA,UACD,OAAO,EAAE;IAGb,IAAIA,SAAS,KAAK,EACd,MAAM,IAAIC,MAAMD,SAAS,KAAK,CAAC,OAAO;IAG1C,OAAOA,SAAS,IAAI,IAAI,EAAE;AAC9B;AAEA,MAAME;IACF,YAAoBC,MAAmC,CAAE;aAArCA,MAAM,GAANA;IAAsC;IAE1D,MAAM,QAAQC,MAAiC,EAA4B;QACvE,MAAMC,QAAQD,OAAO,YAAY,GAAGN,uBAAuBD;QAO3D,MAAMG,WAAW,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAW;YACjDK;YACA,SAAS;gBAAE,CAACC,0BAA0B,EAAE;YAAG;QAC/C;QAEA,MAAMC,QAAQR,OAAOC,SAAS,QAAQ,CAAC,KAAK;QAC5C,MAAMQ,QAAQT,OAAOC,SAAS,QAAQ,CAAC,KAAK;QAE5C,OAAO;YAAEO;YAAOC;QAAM;IAC1B;AACJ;AAEO,MAAMC,0DAA8BC,4BAAAA,oBAAgC,CAAC;IACxE,gBAAgBR;IAChB,cAAc;QAACS;KAAkB;AACrC"}
@@ -0,0 +1,16 @@
1
+ import { ListAssumableTargetsGateway } from "./abstractions.js";
2
+ import { ListAssumableTargetsUseCase as Abstraction } from "./abstractions.js";
3
+ declare class ListAssumableTargetsUseCaseImpl implements Abstraction.Interface {
4
+ private gateway;
5
+ constructor(gateway: ListAssumableTargetsGateway.Interface);
6
+ execute(params: {
7
+ includeTeams: boolean;
8
+ }): Promise<{
9
+ roles: import("./abstractions.js").IAssumePermissionsTarget[];
10
+ teams: import("./abstractions.js").IAssumePermissionsTarget[];
11
+ }>;
12
+ }
13
+ export declare const ListAssumableTargetsUseCase: typeof ListAssumableTargetsUseCaseImpl & {
14
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IListAssumableTargetsUseCase>;
15
+ };
16
+ export {};
@@ -0,0 +1,38 @@
1
+ import { ListAssumableTargetsGateway, ListAssumableTargetsUseCase } from "./abstractions.js";
2
+ function toRole(role) {
3
+ return {
4
+ type: "role",
5
+ id: role.id,
6
+ name: role.name
7
+ };
8
+ }
9
+ function toTeam(team) {
10
+ return {
11
+ type: "team",
12
+ id: team.id,
13
+ name: team.name
14
+ };
15
+ }
16
+ class ListAssumableTargetsUseCaseImpl {
17
+ constructor(gateway){
18
+ this.gateway = gateway;
19
+ }
20
+ async execute(params) {
21
+ const dto = await this.gateway.execute(params);
22
+ const roles = dto.roles.map(toRole);
23
+ const teams = dto.teams.map(toTeam);
24
+ return {
25
+ roles,
26
+ teams
27
+ };
28
+ }
29
+ }
30
+ const ListAssumableTargetsUseCase_ListAssumableTargetsUseCase = ListAssumableTargetsUseCase.createImplementation({
31
+ implementation: ListAssumableTargetsUseCaseImpl,
32
+ dependencies: [
33
+ ListAssumableTargetsGateway
34
+ ]
35
+ });
36
+ export { ListAssumableTargetsUseCase_ListAssumableTargetsUseCase as ListAssumableTargetsUseCase };
37
+
38
+ //# sourceMappingURL=ListAssumableTargetsUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/assumePermissions/ListAssumableTargetsUseCase.js","sources":["../../../src/features/assumePermissions/ListAssumableTargetsUseCase.ts"],"sourcesContent":["import { ListAssumableTargetsGateway } from \"./abstractions.js\";\nimport { ListAssumableTargetsUseCase as Abstraction } from \"./abstractions.js\";\n\ntype Entry = ListAssumableTargetsGateway.Dto[\"roles\"][number];\n\nfunction toRole(role: Entry): Abstraction.Target {\n return { type: \"role\", id: role.id, name: role.name };\n}\n\nfunction toTeam(team: Entry): Abstraction.Target {\n return { type: \"team\", id: team.id, name: team.name };\n}\n\nclass ListAssumableTargetsUseCaseImpl implements Abstraction.Interface {\n constructor(private gateway: ListAssumableTargetsGateway.Interface) {}\n\n async execute(params: { includeTeams: boolean }) {\n const dto = await this.gateway.execute(params);\n\n const roles = dto.roles.map(toRole);\n const teams = dto.teams.map(toTeam);\n\n return { roles, teams };\n }\n}\n\nexport const ListAssumableTargetsUseCase = Abstraction.createImplementation({\n implementation: ListAssumableTargetsUseCaseImpl,\n dependencies: [ListAssumableTargetsGateway]\n});\n"],"names":["toRole","role","toTeam","team","ListAssumableTargetsUseCaseImpl","gateway","params","dto","roles","teams","ListAssumableTargetsUseCase","Abstraction","ListAssumableTargetsGateway"],"mappings":";AAKA,SAASA,OAAOC,IAAW;IACvB,OAAO;QAAE,MAAM;QAAQ,IAAIA,KAAK,EAAE;QAAE,MAAMA,KAAK,IAAI;IAAC;AACxD;AAEA,SAASC,OAAOC,IAAW;IACvB,OAAO;QAAE,MAAM;QAAQ,IAAIA,KAAK,EAAE;QAAE,MAAMA,KAAK,IAAI;IAAC;AACxD;AAEA,MAAMC;IACF,YAAoBC,OAA8C,CAAE;aAAhDA,OAAO,GAAPA;IAAiD;IAErE,MAAM,QAAQC,MAAiC,EAAE;QAC7C,MAAMC,MAAM,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAACD;QAEvC,MAAME,QAAQD,IAAI,KAAK,CAAC,GAAG,CAACP;QAC5B,MAAMS,QAAQF,IAAI,KAAK,CAAC,GAAG,CAACL;QAE5B,OAAO;YAAEM;YAAOC;QAAM;IAC1B;AACJ;AAEO,MAAMC,0DAA8BC,4BAAAA,oBAAgC,CAAC;IACxE,gBAAgBP;IAChB,cAAc;QAACQ;KAA4B;AAC/C"}
@@ -0,0 +1,33 @@
1
+ import { LogInUseCase } from "../../features/security/LogIn/abstractions.js";
2
+ import { IdentityContext } from "../../features/security/IdentityContext/index.js";
3
+ import { AssumePermissionsContext } from "./abstractions.js";
4
+ /**
5
+ * Drops a stored preview that doesn't belong to this login, and logs in again as the user.
6
+ *
7
+ * The login request has to carry the preview header, since that request is what returns the
8
+ * previewed permissions, and it goes out before anyone knows who is signing in. So a preview left
9
+ * behind is caught here, after the fact, in the two ways it can go wrong:
10
+ *
11
+ * - The login fails. A preview that no longer resolves (the role was deleted, or it belongs to
12
+ * another tenant) grants nothing, and a login with no permissions throws. Without this the user
13
+ * would be stuck on that error screen, because the selection survives a reload.
14
+ * - It was started by someone else. A session can end without going through log out, so the next
15
+ * person on the browser would otherwise inherit whatever the last one was previewing.
16
+ *
17
+ * Any login failure drops the preview, not only the one a bad preview causes. The login path throws
18
+ * plain errors, so there is nothing to tell "no permissions" from a network error by. That errs on
19
+ * the safe side: a transient failure costs the preview and one retry, and the user is back on
20
+ * their own permissions. Narrowing it needs a typed error from LogInUseCase.
21
+ */
22
+ declare class LogInUseCaseDecoratorImpl implements LogInUseCase.Interface {
23
+ private assumePermissionsContext;
24
+ private identityContext;
25
+ private decoratee;
26
+ constructor(assumePermissionsContext: AssumePermissionsContext.Interface, identityContext: IdentityContext.Interface, decoratee: LogInUseCase.Interface);
27
+ execute(params: LogInUseCase.Params): Promise<void>;
28
+ private loginWithoutAssumedPermissions;
29
+ }
30
+ export declare const LogInUseCaseDecorator: typeof LogInUseCaseDecoratorImpl & {
31
+ __abstraction: import("@webiny/di").Abstraction<import("~/features/security/LogIn/abstractions.js").ILogInUseCase>;
32
+ };
33
+ export {};
@@ -0,0 +1,36 @@
1
+ import { LogInUseCase } from "../security/LogIn/abstractions.js";
2
+ import { IdentityContext } from "../security/IdentityContext/index.js";
3
+ import { AssumePermissionsContext } from "./abstractions.js";
4
+ class LogInUseCaseDecoratorImpl {
5
+ constructor(assumePermissionsContext, identityContext, decoratee){
6
+ this.assumePermissionsContext = assumePermissionsContext;
7
+ this.identityContext = identityContext;
8
+ this.decoratee = decoratee;
9
+ }
10
+ async execute(params) {
11
+ const active = this.assumePermissionsContext.get();
12
+ if (!active) return void await this.decoratee.execute(params);
13
+ try {
14
+ await this.decoratee.execute(params);
15
+ } catch {
16
+ await this.loginWithoutAssumedPermissions(params);
17
+ return;
18
+ }
19
+ const identity = this.identityContext.getIdentity();
20
+ if (identity.id !== active.startedBy) await this.loginWithoutAssumedPermissions(params);
21
+ }
22
+ async loginWithoutAssumedPermissions(params) {
23
+ this.assumePermissionsContext.set(null);
24
+ await this.decoratee.execute(params);
25
+ }
26
+ }
27
+ const LogInUseCaseDecorator = LogInUseCase.createDecorator({
28
+ decorator: LogInUseCaseDecoratorImpl,
29
+ dependencies: [
30
+ AssumePermissionsContext,
31
+ IdentityContext
32
+ ]
33
+ });
34
+ export { LogInUseCaseDecorator };
35
+
36
+ //# sourceMappingURL=LogInUseCaseDecorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/assumePermissions/LogInUseCaseDecorator.js","sources":["../../../src/features/assumePermissions/LogInUseCaseDecorator.ts"],"sourcesContent":["import { LogInUseCase } from \"~/features/security/LogIn/abstractions.js\";\nimport { IdentityContext } from \"~/features/security/IdentityContext/index.js\";\nimport { AssumePermissionsContext } from \"./abstractions.js\";\n\n/**\n * Drops a stored preview that doesn't belong to this login, and logs in again as the user.\n *\n * The login request has to carry the preview header, since that request is what returns the\n * previewed permissions, and it goes out before anyone knows who is signing in. So a preview left\n * behind is caught here, after the fact, in the two ways it can go wrong:\n *\n * - The login fails. A preview that no longer resolves (the role was deleted, or it belongs to\n * another tenant) grants nothing, and a login with no permissions throws. Without this the user\n * would be stuck on that error screen, because the selection survives a reload.\n * - It was started by someone else. A session can end without going through log out, so the next\n * person on the browser would otherwise inherit whatever the last one was previewing.\n *\n * Any login failure drops the preview, not only the one a bad preview causes. The login path throws\n * plain errors, so there is nothing to tell \"no permissions\" from a network error by. That errs on\n * the safe side: a transient failure costs the preview and one retry, and the user is back on\n * their own permissions. Narrowing it needs a typed error from LogInUseCase.\n */\nclass LogInUseCaseDecoratorImpl implements LogInUseCase.Interface {\n constructor(\n private assumePermissionsContext: AssumePermissionsContext.Interface,\n private identityContext: IdentityContext.Interface,\n private decoratee: LogInUseCase.Interface\n ) {}\n\n async execute(params: LogInUseCase.Params): Promise<void> {\n const active = this.assumePermissionsContext.get();\n\n if (!active) {\n await this.decoratee.execute(params);\n return;\n }\n\n try {\n await this.decoratee.execute(params);\n } catch {\n await this.loginWithoutAssumedPermissions(params);\n return;\n }\n\n const identity = this.identityContext.getIdentity();\n if (identity.id !== active.startedBy) {\n await this.loginWithoutAssumedPermissions(params);\n }\n }\n\n private async loginWithoutAssumedPermissions(params: LogInUseCase.Params): Promise<void> {\n this.assumePermissionsContext.set(null);\n await this.decoratee.execute(params);\n }\n}\n\nexport const LogInUseCaseDecorator = LogInUseCase.createDecorator({\n decorator: LogInUseCaseDecoratorImpl,\n dependencies: [AssumePermissionsContext, IdentityContext]\n});\n"],"names":["LogInUseCaseDecoratorImpl","assumePermissionsContext","identityContext","decoratee","params","active","identity","LogInUseCaseDecorator","LogInUseCase","AssumePermissionsContext","IdentityContext"],"mappings":";;;AAsBA,MAAMA;IACF,YACYC,wBAA4D,EAC5DC,eAA0C,EAC1CC,SAAiC,CAC3C;aAHUF,wBAAwB,GAAxBA;aACAC,eAAe,GAAfA;aACAC,SAAS,GAATA;IACT;IAEH,MAAM,QAAQC,MAA2B,EAAiB;QACtD,MAAMC,SAAS,IAAI,CAAC,wBAAwB,CAAC,GAAG;QAEhD,IAAI,CAACA,QAAQ,YACT,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAACD;QAIjC,IAAI;YACA,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAACA;QACjC,EAAE,OAAM;YACJ,MAAM,IAAI,CAAC,8BAA8B,CAACA;YAC1C;QACJ;QAEA,MAAME,WAAW,IAAI,CAAC,eAAe,CAAC,WAAW;QACjD,IAAIA,SAAS,EAAE,KAAKD,OAAO,SAAS,EAChC,MAAM,IAAI,CAAC,8BAA8B,CAACD;IAElD;IAEA,MAAc,+BAA+BA,MAA2B,EAAiB;QACrF,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC;QAClC,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAACA;IACjC;AACJ;AAEO,MAAMG,wBAAwBC,aAAa,eAAe,CAAC;IAC9D,WAAWR;IACX,cAAc;QAACS;QAA0BC;KAAgB;AAC7D"}
@@ -0,0 +1,16 @@
1
+ import { LogOutUseCase } from "../../features/security/LogOut/abstractions.js";
2
+ import { AssumePermissionsContext } from "./abstractions.js";
3
+ /**
4
+ * A preview belongs to the session that started it. Cleared before the rest of log out runs,
5
+ * because the logout callback may navigate away and nothing after it is guaranteed to execute.
6
+ */
7
+ declare class LogOutUseCaseDecoratorImpl implements LogOutUseCase.Interface {
8
+ private assumePermissionsContext;
9
+ private decoratee;
10
+ constructor(assumePermissionsContext: AssumePermissionsContext.Interface, decoratee: LogOutUseCase.Interface);
11
+ execute(): Promise<void>;
12
+ }
13
+ export declare const LogOutUseCaseDecorator: typeof LogOutUseCaseDecoratorImpl & {
14
+ __abstraction: import("@webiny/di").Abstraction<import("~/features/security/LogOut/abstractions.js").ILogOutUseCase>;
15
+ };
16
+ export {};
@@ -0,0 +1,21 @@
1
+ import { LogOutUseCase } from "../security/LogOut/abstractions.js";
2
+ import { AssumePermissionsContext } from "./abstractions.js";
3
+ class LogOutUseCaseDecoratorImpl {
4
+ constructor(assumePermissionsContext, decoratee){
5
+ this.assumePermissionsContext = assumePermissionsContext;
6
+ this.decoratee = decoratee;
7
+ }
8
+ async execute() {
9
+ this.assumePermissionsContext.set(null);
10
+ await this.decoratee.execute();
11
+ }
12
+ }
13
+ const LogOutUseCaseDecorator = LogOutUseCase.createDecorator({
14
+ decorator: LogOutUseCaseDecoratorImpl,
15
+ dependencies: [
16
+ AssumePermissionsContext
17
+ ]
18
+ });
19
+ export { LogOutUseCaseDecorator };
20
+
21
+ //# sourceMappingURL=LogOutUseCaseDecorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/assumePermissions/LogOutUseCaseDecorator.js","sources":["../../../src/features/assumePermissions/LogOutUseCaseDecorator.ts"],"sourcesContent":["import { LogOutUseCase } from \"~/features/security/LogOut/abstractions.js\";\nimport { AssumePermissionsContext } from \"./abstractions.js\";\n\n/**\n * A preview belongs to the session that started it. Cleared before the rest of log out runs,\n * because the logout callback may navigate away and nothing after it is guaranteed to execute.\n */\nclass LogOutUseCaseDecoratorImpl implements LogOutUseCase.Interface {\n constructor(\n private assumePermissionsContext: AssumePermissionsContext.Interface,\n private decoratee: LogOutUseCase.Interface\n ) {}\n\n async execute(): Promise<void> {\n this.assumePermissionsContext.set(null);\n await this.decoratee.execute();\n }\n}\n\nexport const LogOutUseCaseDecorator = LogOutUseCase.createDecorator({\n decorator: LogOutUseCaseDecoratorImpl,\n dependencies: [AssumePermissionsContext]\n});\n"],"names":["LogOutUseCaseDecoratorImpl","assumePermissionsContext","decoratee","LogOutUseCaseDecorator","LogOutUseCase","AssumePermissionsContext"],"mappings":";;AAOA,MAAMA;IACF,YACYC,wBAA4D,EAC5DC,SAAkC,CAC5C;aAFUD,wBAAwB,GAAxBA;aACAC,SAAS,GAATA;IACT;IAEH,MAAM,UAAyB;QAC3B,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC;QAClC,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO;IAChC;AACJ;AAEO,MAAMC,yBAAyBC,cAAc,eAAe,CAAC;IAChE,WAAWJ;IACX,cAAc;QAACK;KAAyB;AAC5C"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * The role or team whose permissions to assume. `name` is carried alongside the id purely so the
3
+ * banner can say whose permissions are in effect without a second query.
4
+ */
5
+ export interface IAssumePermissionsTarget {
6
+ type: "role" | "team";
7
+ id: string;
8
+ name: string;
9
+ }
10
+ /**
11
+ * The assumed permissions as stored. `startedBy` is the id of the identity that started it: the
12
+ * selection outlives a reload by design, so it is also there for whoever signs in next on this
13
+ * browser, and the id is how their login tells it isn't theirs.
14
+ */
15
+ export interface IAssumedPermissions extends IAssumePermissionsTarget {
16
+ startedBy: string;
17
+ returnTo?: string;
18
+ }
19
+ export interface IAssumePermissionsContext {
20
+ get(): IAssumedPermissions | null;
21
+ set(value: IAssumedPermissions | null): void;
22
+ }
23
+ export declare const AssumePermissionsContext: import("@webiny/di").Abstraction<IAssumePermissionsContext>;
24
+ export declare namespace AssumePermissionsContext {
25
+ type Interface = IAssumePermissionsContext;
26
+ type Value = IAssumedPermissions;
27
+ }
28
+ export interface IAssumePermissionsOptions {
29
+ returnTo?: string;
30
+ }
31
+ export interface IAssumePermissionsUseCase {
32
+ execute(target: IAssumePermissionsTarget | null, options?: IAssumePermissionsOptions): Promise<void>;
33
+ }
34
+ export declare const AssumePermissionsUseCase: import("@webiny/di").Abstraction<IAssumePermissionsUseCase>;
35
+ export declare namespace AssumePermissionsUseCase {
36
+ type Interface = IAssumePermissionsUseCase;
37
+ type Target = IAssumePermissionsTarget;
38
+ type Options = IAssumePermissionsOptions;
39
+ }
40
+ export interface IAssumableTargetsDto {
41
+ roles: Array<{
42
+ id: string;
43
+ name: string;
44
+ }>;
45
+ teams: Array<{
46
+ id: string;
47
+ name: string;
48
+ }>;
49
+ }
50
+ /**
51
+ * Fetches the roles and teams on offer AS THE SIGNED-IN USER, never as the role being previewed.
52
+ * Every other request carries the assume-permissions header while a preview is active, and the
53
+ * previewed role usually cannot list roles, so without the opt-out the header control would come
54
+ * up empty exactly when someone is trying to switch from one role to the next.
55
+ */
56
+ export interface IListAssumableTargetsGateway {
57
+ execute(params: {
58
+ includeTeams: boolean;
59
+ }): Promise<IAssumableTargetsDto>;
60
+ }
61
+ export declare const ListAssumableTargetsGateway: import("@webiny/di").Abstraction<IListAssumableTargetsGateway>;
62
+ export declare namespace ListAssumableTargetsGateway {
63
+ type Interface = IListAssumableTargetsGateway;
64
+ type Dto = IAssumableTargetsDto;
65
+ }
66
+ export interface IListAssumableTargetsUseCase {
67
+ execute(params: {
68
+ includeTeams: boolean;
69
+ }): Promise<{
70
+ roles: IAssumePermissionsTarget[];
71
+ teams: IAssumePermissionsTarget[];
72
+ }>;
73
+ }
74
+ export declare const ListAssumableTargetsUseCase: import("@webiny/di").Abstraction<IListAssumableTargetsUseCase>;
75
+ export declare namespace ListAssumableTargetsUseCase {
76
+ type Interface = IListAssumableTargetsUseCase;
77
+ type Target = IAssumePermissionsTarget;
78
+ }