@webiny/app-admin 6.6.0-alpha.1 → 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 (718) hide show
  1. package/base/Admin.js +19 -2
  2. package/base/Admin.js.map +1 -1
  3. package/base/Base/DefaultFieldRenderers.js +4 -0
  4. package/base/Base/DefaultFieldRenderers.js.map +1 -1
  5. package/base/Base/FieldRenderers/AutoCompleteRenderer.js +1 -0
  6. package/base/Base/FieldRenderers/AutoCompleteRenderer.js.map +1 -1
  7. package/base/Base/FieldRenderers/BirthdayInputRenderer.d.ts +21 -0
  8. package/base/Base/FieldRenderers/BirthdayInputRenderer.js +39 -0
  9. package/base/Base/FieldRenderers/BirthdayInputRenderer.js.map +1 -0
  10. package/base/Base/FieldRenderers/BirthdayInputRenderer.test.d.ts +1 -0
  11. package/base/Base/FieldRenderers/BirthdayInputRenderer.test.js +123 -0
  12. package/base/Base/FieldRenderers/BirthdayInputRenderer.test.js.map +1 -0
  13. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/MultiValueDynamicZone.js +21 -4
  14. package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/MultiValueDynamicZone.js.map +1 -1
  15. package/base/Base/FieldRenderers/ObjectRenderer/ObjectAccordionMultipleRenderer.js +11 -2
  16. package/base/Base/FieldRenderers/ObjectRenderer/ObjectAccordionMultipleRenderer.js.map +1 -1
  17. package/base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.d.ts +2 -0
  18. package/base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.js +14 -5
  19. package/base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.js.map +1 -1
  20. package/base/Base/FieldRenderers/ObjectRenderer/ObjectRenderer.js +16 -25
  21. package/base/Base/FieldRenderers/ObjectRenderer/ObjectRenderer.js.map +1 -1
  22. package/base/Base/FieldRenderers/ObjectRenderer/SingleValueDynamicZone.js +18 -3
  23. package/base/Base/FieldRenderers/ObjectRenderer/SingleValueDynamicZone.js.map +1 -1
  24. package/base/Base/FieldRenderers/ObjectRenderer/{TemplatePicker.d.ts → TemplatePicker/AddTemplateButton.d.ts} +1 -1
  25. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/AddTemplateButton.js +24 -0
  26. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/AddTemplateButton.js.map +1 -0
  27. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/SelectableTemplate.d.ts +13 -0
  28. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/SelectableTemplate.js +21 -0
  29. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/SelectableTemplate.js.map +1 -0
  30. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateCard.d.ts +3 -0
  31. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateCard.js +35 -0
  32. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateCard.js.map +1 -0
  33. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGallery.d.ts +8 -0
  34. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGallery.js +22 -0
  35. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGallery.js.map +1 -0
  36. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGalleryToolbar.d.ts +10 -0
  37. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGalleryToolbar.js +52 -0
  38. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGalleryToolbar.js.map +1 -0
  39. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateIcon.d.ts +8 -0
  40. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateIcon.js +16 -0
  41. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateIcon.js.map +1 -0
  42. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateList.d.ts +10 -0
  43. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateList.js +22 -0
  44. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateList.js.map +1 -0
  45. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateListItem.d.ts +3 -0
  46. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateListItem.js +35 -0
  47. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateListItem.js.map +1 -0
  48. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/index.d.ts +1 -0
  49. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/index.js +1 -0
  50. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/types.d.ts +6 -0
  51. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/types.js +0 -0
  52. package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.d.ts +8 -3
  53. package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.js +25 -17
  54. package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.js.map +1 -1
  55. package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.test.d.ts +1 -0
  56. package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.test.js +106 -0
  57. package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.test.js.map +1 -0
  58. package/base/Base/FieldRenderers/RadioButtonsRenderer.js +3 -2
  59. package/base/Base/FieldRenderers/RadioButtonsRenderer.js.map +1 -1
  60. package/base/Base/FieldRenderers/SelectRenderer.js +4 -2
  61. package/base/Base/FieldRenderers/SelectRenderer.js.map +1 -1
  62. package/base/Base.js +2 -1
  63. package/base/Base.js.map +1 -1
  64. package/base/createRootContainer.js +4 -0
  65. package/base/createRootContainer.js.map +1 -1
  66. package/base/resolveApiUrl.d.ts +10 -0
  67. package/base/resolveApiUrl.js +11 -3
  68. package/base/resolveApiUrl.js.map +1 -1
  69. package/base/ui/AssumedPermissionsSelector.d.ts +47 -0
  70. package/base/ui/AssumedPermissionsSelector.js +7 -0
  71. package/base/ui/AssumedPermissionsSelector.js.map +1 -0
  72. package/base/ui/DebuggerIndicator.d.ts +23 -0
  73. package/base/ui/DebuggerIndicator.js +5 -0
  74. package/base/ui/DebuggerIndicator.js.map +1 -0
  75. package/base/ui/Layout.d.ts +20 -0
  76. package/base/ui/Layout.js +2 -1
  77. package/base/ui/Layout.js.map +1 -1
  78. package/components/DeveloperMode/DeveloperMode.d.ts +1 -3
  79. package/components/DeveloperMode/DeveloperMode.js.map +1 -1
  80. package/components/Filters/Filters.js +7 -1
  81. package/components/Filters/Filters.js.map +1 -1
  82. package/components/IconPicker/IconPickerComponent.js +1 -1
  83. package/components/IconPicker/IconPickerComponent.js.map +1 -1
  84. package/components/SplitView/SplitView.d.ts +2 -2
  85. package/components/SplitView/SplitView.js +7 -7
  86. package/components/SplitView/SplitView.js.map +1 -1
  87. package/config/AdminConfig/Widget.d.ts +9 -1
  88. package/config/AdminConfig/Widget.js +6 -2
  89. package/config/AdminConfig/Widget.js.map +1 -1
  90. package/domain/Identity.js +1 -1
  91. package/domain/Identity.js.map +1 -1
  92. package/exports/admin/ui.d.ts +4 -0
  93. package/exports/admin/ui.js +4 -1
  94. package/exports/admin.d.ts +4 -0
  95. package/exports/admin.js +2 -0
  96. package/features/{aiChat/AiChatGateway.d.ts → adminAssistant/AdminAssistantGateway.d.ts} +7 -7
  97. package/features/{aiChat/AiChatGateway.js → adminAssistant/AdminAssistantGateway.js} +8 -8
  98. package/features/adminAssistant/AdminAssistantGateway.js.map +1 -0
  99. package/features/adminAssistant/AdminAssistantPresenter.d.ts +60 -0
  100. package/features/adminAssistant/AdminAssistantPresenter.js +377 -0
  101. package/features/adminAssistant/AdminAssistantPresenter.js.map +1 -0
  102. package/features/adminAssistant/abstractions.d.ts +176 -0
  103. package/features/adminAssistant/abstractions.js +6 -0
  104. package/features/adminAssistant/abstractions.js.map +1 -0
  105. package/features/adminAssistant/feature.d.ts +3 -0
  106. package/features/adminAssistant/feature.js +19 -0
  107. package/features/adminAssistant/feature.js.map +1 -0
  108. package/features/adminAssistant/index.d.ts +6 -0
  109. package/features/adminAssistant/index.js +3 -0
  110. package/features/adminAssistant/turnsFromMessages.d.ts +15 -0
  111. package/features/adminAssistant/turnsFromMessages.js +77 -0
  112. package/features/adminAssistant/turnsFromMessages.js.map +1 -0
  113. package/features/adminUsers/account/getCurrentUser/GetCurrentUserGateway.d.ts +11 -0
  114. package/features/adminUsers/account/getCurrentUser/GetCurrentUserGateway.js +44 -0
  115. package/features/adminUsers/account/getCurrentUser/GetCurrentUserGateway.js.map +1 -0
  116. package/features/adminUsers/account/getCurrentUser/GetCurrentUserUseCase.d.ts +10 -0
  117. package/features/adminUsers/account/getCurrentUser/GetCurrentUserUseCase.js +19 -0
  118. package/features/adminUsers/account/getCurrentUser/GetCurrentUserUseCase.js.map +1 -0
  119. package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserGateway.d.ts +16 -0
  120. package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserGateway.js +5 -0
  121. package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserGateway.js.map +1 -0
  122. package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserUseCase.d.ts +10 -0
  123. package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserUseCase.js +5 -0
  124. package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserUseCase.js.map +1 -0
  125. package/features/adminUsers/account/getCurrentUser/abstractions/index.d.ts +6 -0
  126. package/features/adminUsers/account/getCurrentUser/abstractions/index.js +2 -0
  127. package/features/adminUsers/account/getCurrentUser/feature.d.ts +3 -0
  128. package/features/adminUsers/account/getCurrentUser/feature.js +19 -0
  129. package/features/adminUsers/account/getCurrentUser/feature.js.map +1 -0
  130. package/features/adminUsers/account/getCurrentUser/index.d.ts +1 -0
  131. package/features/adminUsers/account/getCurrentUser/index.js +1 -0
  132. package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserGateway.d.ts +11 -0
  133. package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserGateway.js +48 -0
  134. package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserGateway.js.map +1 -0
  135. package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserUseCase.d.ts +10 -0
  136. package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserUseCase.js +19 -0
  137. package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserUseCase.js.map +1 -0
  138. package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserGateway.d.ts +26 -0
  139. package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserGateway.js +5 -0
  140. package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserGateway.js.map +1 -0
  141. package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserUseCase.d.ts +13 -0
  142. package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserUseCase.js +5 -0
  143. package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserUseCase.js.map +1 -0
  144. package/features/adminUsers/account/updateCurrentUser/abstractions/index.d.ts +8 -0
  145. package/features/adminUsers/account/updateCurrentUser/abstractions/index.js +2 -0
  146. package/features/adminUsers/account/updateCurrentUser/feature.d.ts +3 -0
  147. package/features/adminUsers/account/updateCurrentUser/feature.js +19 -0
  148. package/features/adminUsers/account/updateCurrentUser/feature.js.map +1 -0
  149. package/features/adminUsers/account/updateCurrentUser/index.d.ts +1 -0
  150. package/features/adminUsers/account/updateCurrentUser/index.js +1 -0
  151. package/features/adminUsers/passwordPolicy/RulesPasswordPolicy.d.ts +6 -0
  152. package/features/adminUsers/passwordPolicy/RulesPasswordPolicy.js +22 -0
  153. package/features/adminUsers/passwordPolicy/RulesPasswordPolicy.js.map +1 -0
  154. package/features/adminUsers/passwordPolicy/abstractions.d.ts +20 -0
  155. package/features/adminUsers/passwordPolicy/abstractions.js +5 -0
  156. package/features/adminUsers/passwordPolicy/abstractions.js.map +1 -0
  157. package/features/adminUsers/passwordPolicy/feature.d.ts +8 -0
  158. package/features/adminUsers/passwordPolicy/feature.js +18 -0
  159. package/features/adminUsers/passwordPolicy/feature.js.map +1 -0
  160. package/features/adminUsers/passwordPolicy/index.d.ts +3 -0
  161. package/features/adminUsers/passwordPolicy/index.js +3 -0
  162. package/features/adminUsers/passwordPolicy/readPasswordPolicyRules.d.ts +10 -0
  163. package/features/adminUsers/passwordPolicy/readPasswordPolicyRules.js +11 -0
  164. package/features/adminUsers/passwordPolicy/readPasswordPolicyRules.js.map +1 -0
  165. package/features/adminUsers/permissions/abstractions.d.ts +17 -0
  166. package/features/adminUsers/permissions/abstractions.js +6 -0
  167. package/features/adminUsers/permissions/abstractions.js.map +1 -0
  168. package/features/adminUsers/permissions/feature.d.ts +14 -0
  169. package/features/adminUsers/permissions/feature.js +7 -0
  170. package/features/adminUsers/permissions/feature.js.map +1 -0
  171. package/features/adminUsers/permissionsSchema.d.ts +10 -0
  172. package/features/adminUsers/permissionsSchema.js +18 -0
  173. package/features/adminUsers/permissionsSchema.js.map +1 -0
  174. package/features/adminUsers/users/createUser/CreateUserGateway.d.ts +11 -0
  175. package/features/adminUsers/users/createUser/CreateUserGateway.js +49 -0
  176. package/features/adminUsers/users/createUser/CreateUserGateway.js.map +1 -0
  177. package/features/adminUsers/users/createUser/CreateUserUseCase.d.ts +10 -0
  178. package/features/adminUsers/users/createUser/CreateUserUseCase.js +18 -0
  179. package/features/adminUsers/users/createUser/CreateUserUseCase.js.map +1 -0
  180. package/features/adminUsers/users/createUser/abstractions/CreateUserGateway.d.ts +21 -0
  181. package/features/adminUsers/users/createUser/abstractions/CreateUserGateway.js +5 -0
  182. package/features/adminUsers/users/createUser/abstractions/CreateUserGateway.js.map +1 -0
  183. package/features/adminUsers/users/createUser/abstractions/CreateUserUseCase.d.ts +14 -0
  184. package/features/adminUsers/users/createUser/abstractions/CreateUserUseCase.js +5 -0
  185. package/features/adminUsers/users/createUser/abstractions/CreateUserUseCase.js.map +1 -0
  186. package/features/adminUsers/users/createUser/abstractions/index.d.ts +2 -0
  187. package/features/adminUsers/users/createUser/abstractions/index.js +2 -0
  188. package/features/adminUsers/users/createUser/feature.d.ts +3 -0
  189. package/features/adminUsers/users/createUser/feature.js +19 -0
  190. package/features/adminUsers/users/createUser/feature.js.map +1 -0
  191. package/features/adminUsers/users/createUser/index.d.ts +2 -0
  192. package/features/adminUsers/users/createUser/index.js +2 -0
  193. package/features/adminUsers/users/deleteUser/DeleteUserGateway.d.ts +11 -0
  194. package/features/adminUsers/users/deleteUser/DeleteUserGateway.js +40 -0
  195. package/features/adminUsers/users/deleteUser/DeleteUserGateway.js.map +1 -0
  196. package/features/adminUsers/users/deleteUser/DeleteUserUseCase.d.ts +10 -0
  197. package/features/adminUsers/users/deleteUser/DeleteUserUseCase.js +18 -0
  198. package/features/adminUsers/users/deleteUser/DeleteUserUseCase.js.map +1 -0
  199. package/features/adminUsers/users/deleteUser/abstractions/DeleteUserGateway.d.ts +11 -0
  200. package/features/adminUsers/users/deleteUser/abstractions/DeleteUserGateway.js +5 -0
  201. package/features/adminUsers/users/deleteUser/abstractions/DeleteUserGateway.js.map +1 -0
  202. package/features/adminUsers/users/deleteUser/abstractions/DeleteUserUseCase.d.ts +11 -0
  203. package/features/adminUsers/users/deleteUser/abstractions/DeleteUserUseCase.js +5 -0
  204. package/features/adminUsers/users/deleteUser/abstractions/DeleteUserUseCase.js.map +1 -0
  205. package/features/adminUsers/users/deleteUser/abstractions/index.d.ts +2 -0
  206. package/features/adminUsers/users/deleteUser/abstractions/index.js +2 -0
  207. package/features/adminUsers/users/deleteUser/feature.d.ts +3 -0
  208. package/features/adminUsers/users/deleteUser/feature.js +19 -0
  209. package/features/adminUsers/users/deleteUser/feature.js.map +1 -0
  210. package/features/adminUsers/users/deleteUser/index.d.ts +2 -0
  211. package/features/adminUsers/users/deleteUser/index.js +2 -0
  212. package/features/adminUsers/users/getUser/GetUserGateway.d.ts +11 -0
  213. package/features/adminUsers/users/getUser/GetUserGateway.js +57 -0
  214. package/features/adminUsers/users/getUser/GetUserGateway.js.map +1 -0
  215. package/features/adminUsers/users/getUser/GetUserUseCase.d.ts +10 -0
  216. package/features/adminUsers/users/getUser/GetUserUseCase.js +18 -0
  217. package/features/adminUsers/users/getUser/GetUserUseCase.js.map +1 -0
  218. package/features/adminUsers/users/getUser/abstractions/GetUserGateway.d.ts +32 -0
  219. package/features/adminUsers/users/getUser/abstractions/GetUserGateway.js +5 -0
  220. package/features/adminUsers/users/getUser/abstractions/GetUserGateway.js.map +1 -0
  221. package/features/adminUsers/users/getUser/abstractions/GetUserUseCase.d.ts +14 -0
  222. package/features/adminUsers/users/getUser/abstractions/GetUserUseCase.js +5 -0
  223. package/features/adminUsers/users/getUser/abstractions/GetUserUseCase.js.map +1 -0
  224. package/features/adminUsers/users/getUser/abstractions/index.d.ts +2 -0
  225. package/features/adminUsers/users/getUser/abstractions/index.js +2 -0
  226. package/features/adminUsers/users/getUser/feature.d.ts +3 -0
  227. package/features/adminUsers/users/getUser/feature.js +19 -0
  228. package/features/adminUsers/users/getUser/feature.js.map +1 -0
  229. package/features/adminUsers/users/getUser/index.d.ts +2 -0
  230. package/features/adminUsers/users/getUser/index.js +2 -0
  231. package/features/adminUsers/users/listUsers/ListUsersGateway.d.ts +11 -0
  232. package/features/adminUsers/users/listUsers/ListUsersGateway.js +39 -0
  233. package/features/adminUsers/users/listUsers/ListUsersGateway.js.map +1 -0
  234. package/features/adminUsers/users/listUsers/ListUsersUseCase.d.ts +10 -0
  235. package/features/adminUsers/users/listUsers/ListUsersUseCase.js +18 -0
  236. package/features/adminUsers/users/listUsers/ListUsersUseCase.js.map +1 -0
  237. package/features/adminUsers/users/listUsers/abstractions/ListUsersGateway.d.ts +17 -0
  238. package/features/adminUsers/users/listUsers/abstractions/ListUsersGateway.js +5 -0
  239. package/features/adminUsers/users/listUsers/abstractions/ListUsersGateway.js.map +1 -0
  240. package/features/adminUsers/users/listUsers/abstractions/ListUsersUseCase.d.ts +10 -0
  241. package/features/adminUsers/users/listUsers/abstractions/ListUsersUseCase.js +5 -0
  242. package/features/adminUsers/users/listUsers/abstractions/ListUsersUseCase.js.map +1 -0
  243. package/features/adminUsers/users/listUsers/abstractions/index.d.ts +2 -0
  244. package/features/adminUsers/users/listUsers/abstractions/index.js +2 -0
  245. package/features/adminUsers/users/listUsers/feature.d.ts +3 -0
  246. package/features/adminUsers/users/listUsers/feature.js +19 -0
  247. package/features/adminUsers/users/listUsers/feature.js.map +1 -0
  248. package/features/adminUsers/users/listUsers/index.d.ts +2 -0
  249. package/features/adminUsers/users/listUsers/index.js +2 -0
  250. package/features/adminUsers/users/updateUser/UpdateUserGateway.d.ts +11 -0
  251. package/features/adminUsers/users/updateUser/UpdateUserGateway.js +59 -0
  252. package/features/adminUsers/users/updateUser/UpdateUserGateway.js.map +1 -0
  253. package/features/adminUsers/users/updateUser/UpdateUserUseCase.d.ts +10 -0
  254. package/features/adminUsers/users/updateUser/UpdateUserUseCase.js +18 -0
  255. package/features/adminUsers/users/updateUser/UpdateUserUseCase.js.map +1 -0
  256. package/features/adminUsers/users/updateUser/abstractions/UpdateUserGateway.d.ts +33 -0
  257. package/features/adminUsers/users/updateUser/abstractions/UpdateUserGateway.js +5 -0
  258. package/features/adminUsers/users/updateUser/abstractions/UpdateUserGateway.js.map +1 -0
  259. package/features/adminUsers/users/updateUser/abstractions/UpdateUserUseCase.d.ts +15 -0
  260. package/features/adminUsers/users/updateUser/abstractions/UpdateUserUseCase.js +5 -0
  261. package/features/adminUsers/users/updateUser/abstractions/UpdateUserUseCase.js.map +1 -0
  262. package/features/adminUsers/users/updateUser/abstractions/index.d.ts +2 -0
  263. package/features/adminUsers/users/updateUser/abstractions/index.js +2 -0
  264. package/features/adminUsers/users/updateUser/feature.d.ts +3 -0
  265. package/features/adminUsers/users/updateUser/feature.js +19 -0
  266. package/features/adminUsers/users/updateUser/feature.js.map +1 -0
  267. package/features/adminUsers/users/updateUser/index.d.ts +2 -0
  268. package/features/adminUsers/users/updateUser/index.js +2 -0
  269. package/features/aiChats/AiChatSaveError.d.ts +6 -0
  270. package/features/aiChats/AiChatSaveError.js +8 -0
  271. package/features/aiChats/AiChatSaveError.js.map +1 -0
  272. package/features/aiChats/AiChatsGateway.d.ts +18 -0
  273. package/features/aiChats/AiChatsGateway.js +132 -0
  274. package/features/aiChats/AiChatsGateway.js.map +1 -0
  275. package/features/aiChats/AiChatsRepository.d.ts +36 -0
  276. package/features/aiChats/AiChatsRepository.js +110 -0
  277. package/features/aiChats/AiChatsRepository.js.map +1 -0
  278. package/features/aiChats/AiChatsRequestError.d.ts +9 -0
  279. package/features/aiChats/AiChatsRequestError.js +8 -0
  280. package/features/aiChats/AiChatsRequestError.js.map +1 -0
  281. package/features/aiChats/abstractions.d.ts +76 -0
  282. package/features/aiChats/abstractions.js +6 -0
  283. package/features/aiChats/abstractions.js.map +1 -0
  284. package/features/aiChats/feature.d.ts +3 -0
  285. package/features/aiChats/feature.js +19 -0
  286. package/features/aiChats/feature.js.map +1 -0
  287. package/features/aiChats/index.d.ts +9 -0
  288. package/features/aiChats/index.js +3 -0
  289. package/features/aiChats/messageOf.d.ts +2 -0
  290. package/features/aiChats/messageOf.js +7 -0
  291. package/features/aiChats/messageOf.js.map +1 -0
  292. package/features/aiSettings/abstractions.d.ts +16 -0
  293. package/features/aiSettings/abstractions.js +5 -0
  294. package/features/aiSettings/abstractions.js.map +1 -0
  295. package/features/aiSettings/index.d.ts +2 -0
  296. package/features/aiSettings/index.js +1 -0
  297. package/features/assumePermissions/ApiStreamClientDecorator.d.ts +16 -0
  298. package/features/assumePermissions/ApiStreamClientDecorator.js +29 -0
  299. package/features/assumePermissions/ApiStreamClientDecorator.js.map +1 -0
  300. package/features/assumePermissions/AssumePermissionsContext.d.ts +17 -0
  301. package/features/assumePermissions/AssumePermissionsContext.js +32 -0
  302. package/features/assumePermissions/AssumePermissionsContext.js.map +1 -0
  303. package/features/assumePermissions/AssumePermissionsUseCase.d.ts +33 -0
  304. package/features/assumePermissions/AssumePermissionsUseCase.js +48 -0
  305. package/features/assumePermissions/AssumePermissionsUseCase.js.map +1 -0
  306. package/features/assumePermissions/GraphQLClientDecorator.d.ts +16 -0
  307. package/features/assumePermissions/GraphQLClientDecorator.js +29 -0
  308. package/features/assumePermissions/GraphQLClientDecorator.js.map +1 -0
  309. package/features/assumePermissions/ListAssumableTargetsGateway.d.ts +13 -0
  310. package/features/assumePermissions/ListAssumableTargetsGateway.js +74 -0
  311. package/features/assumePermissions/ListAssumableTargetsGateway.js.map +1 -0
  312. package/features/assumePermissions/ListAssumableTargetsUseCase.d.ts +16 -0
  313. package/features/assumePermissions/ListAssumableTargetsUseCase.js +38 -0
  314. package/features/assumePermissions/ListAssumableTargetsUseCase.js.map +1 -0
  315. package/features/assumePermissions/LogInUseCaseDecorator.d.ts +33 -0
  316. package/features/assumePermissions/LogInUseCaseDecorator.js +36 -0
  317. package/features/assumePermissions/LogInUseCaseDecorator.js.map +1 -0
  318. package/features/assumePermissions/LogOutUseCaseDecorator.d.ts +16 -0
  319. package/features/assumePermissions/LogOutUseCaseDecorator.js +21 -0
  320. package/features/assumePermissions/LogOutUseCaseDecorator.js.map +1 -0
  321. package/features/assumePermissions/abstractions.d.ts +78 -0
  322. package/features/assumePermissions/abstractions.js +8 -0
  323. package/features/assumePermissions/abstractions.js.map +1 -0
  324. package/features/assumePermissions/assumePermissionsHeader.d.ts +3 -0
  325. package/features/assumePermissions/assumePermissionsHeader.js +7 -0
  326. package/features/assumePermissions/assumePermissionsHeader.js.map +1 -0
  327. package/features/assumePermissions/feature.d.ts +4 -0
  328. package/features/assumePermissions/feature.js +32 -0
  329. package/features/assumePermissions/feature.js.map +1 -0
  330. package/features/assumePermissions/index.d.ts +4 -0
  331. package/features/assumePermissions/index.js +2 -0
  332. package/features/banners/Banners.d.ts +15 -0
  333. package/features/banners/Banners.js +39 -0
  334. package/features/banners/Banners.js.map +1 -0
  335. package/features/banners/abstractions.d.ts +34 -0
  336. package/features/banners/abstractions.js +5 -0
  337. package/features/banners/abstractions.js.map +1 -0
  338. package/features/banners/feature.d.ts +3 -0
  339. package/features/banners/feature.js +17 -0
  340. package/features/banners/feature.js.map +1 -0
  341. package/features/banners/index.d.ts +2 -0
  342. package/features/banners/index.js +2 -0
  343. package/features/dateFormatter/formatUtcOffset.d.ts +1 -0
  344. package/features/dateFormatter/formatUtcOffset.js +11 -0
  345. package/features/dateFormatter/formatUtcOffset.js.map +1 -0
  346. package/features/debugger/DebugSessionsRepository.d.ts +35 -0
  347. package/features/debugger/DebugSessionsRepository.js +57 -0
  348. package/features/debugger/DebugSessionsRepository.js.map +1 -0
  349. package/features/debugger/GraphQLExtensionsDebugHandler.d.ts +17 -0
  350. package/features/debugger/GraphQLExtensionsDebugHandler.js +21 -0
  351. package/features/debugger/GraphQLExtensionsDebugHandler.js.map +1 -0
  352. package/features/debugger/GraphQLExtensionsDebugHandler.test.d.ts +1 -0
  353. package/features/debugger/GraphQLExtensionsDebugHandler.test.js +112 -0
  354. package/features/debugger/GraphQLExtensionsDebugHandler.test.js.map +1 -0
  355. package/features/debugger/abstractions.d.ts +50 -0
  356. package/features/debugger/abstractions.js +5 -0
  357. package/features/debugger/abstractions.js.map +1 -0
  358. package/features/debugger/constants.d.ts +1 -0
  359. package/features/debugger/constants.js +4 -0
  360. package/features/debugger/constants.js.map +1 -0
  361. package/features/debugger/feature.d.ts +3 -0
  362. package/features/debugger/feature.js +19 -0
  363. package/features/debugger/feature.js.map +1 -0
  364. package/features/debugger/index.d.ts +3 -0
  365. package/features/debugger/index.js +3 -0
  366. package/features/formModel/AccessControlRuleEvaluator.d.ts +12 -0
  367. package/features/formModel/AccessControlRuleEvaluator.js +30 -0
  368. package/features/formModel/AccessControlRuleEvaluator.js.map +1 -0
  369. package/features/formModel/AccessControlRuleEvaluator.test.d.ts +1 -0
  370. package/features/formModel/AccessControlRuleEvaluator.test.js +219 -0
  371. package/features/formModel/AccessControlRuleEvaluator.test.js.map +1 -0
  372. package/features/formModel/ConditionRuleEvaluator.js +34 -4
  373. package/features/formModel/ConditionRuleEvaluator.js.map +1 -1
  374. package/features/formModel/Field.d.ts +14 -1
  375. package/features/formModel/Field.js +41 -5
  376. package/features/formModel/Field.js.map +1 -1
  377. package/features/formModel/FieldBuilder.d.ts +3 -3
  378. package/features/formModel/FieldBuilder.js +2 -1
  379. package/features/formModel/FieldBuilder.js.map +1 -1
  380. package/features/formModel/FieldBuilder.test.js +158 -1
  381. package/features/formModel/FieldBuilder.test.js.map +1 -1
  382. package/features/formModel/FocusManager.js +10 -3
  383. package/features/formModel/FocusManager.js.map +1 -1
  384. package/features/formModel/FormErrors.js +1 -1
  385. package/features/formModel/FormErrors.js.map +1 -1
  386. package/features/formModel/FormModel.d.ts +2 -0
  387. package/features/formModel/FormModel.js +32 -9
  388. package/features/formModel/FormModel.js.map +1 -1
  389. package/features/formModel/FormModel.test.js +835 -4
  390. package/features/formModel/FormModel.test.js.map +1 -1
  391. package/features/formModel/ObjectField.d.ts +12 -1
  392. package/features/formModel/ObjectField.js +70 -20
  393. package/features/formModel/ObjectField.js.map +1 -1
  394. package/features/formModel/Rules.test.js +224 -16
  395. package/features/formModel/Rules.test.js.map +1 -1
  396. package/features/formModel/abstractions.d.ts +56 -4
  397. package/features/formModel/abstractions.js +2 -1
  398. package/features/formModel/abstractions.js.map +1 -1
  399. package/features/formModel/createFieldRenderer.d.ts +42 -0
  400. package/features/formModel/createFieldRenderer.js +33 -10
  401. package/features/formModel/createFieldRenderer.js.map +1 -1
  402. package/features/formModel/feature.js +2 -0
  403. package/features/formModel/feature.js.map +1 -1
  404. package/features/formModel/fieldTypes/DateTimeFieldType.d.ts +67 -4
  405. package/features/formModel/fieldTypes/DateTimeFieldType.js +88 -22
  406. package/features/formModel/fieldTypes/DateTimeFieldType.js.map +1 -1
  407. package/features/formModel/fieldTypes/ObjectFieldType.d.ts +3 -1
  408. package/features/formModel/fieldTypes/ObjectFieldType.js +23 -1
  409. package/features/formModel/fieldTypes/ObjectFieldType.js.map +1 -1
  410. package/features/formModel/fieldTypes/dateLimits.d.ts +37 -0
  411. package/features/formModel/fieldTypes/dateLimits.js +64 -0
  412. package/features/formModel/fieldTypes/dateLimits.js.map +1 -0
  413. package/features/formModel/fieldTypes/dateLimits.test.d.ts +1 -0
  414. package/features/formModel/fieldTypes/dateLimits.test.js +60 -0
  415. package/features/formModel/fieldTypes/dateLimits.test.js.map +1 -0
  416. package/features/formModel/hasSubtreeFocusRequest.d.ts +12 -0
  417. package/features/formModel/hasSubtreeFocusRequest.js +15 -0
  418. package/features/formModel/hasSubtreeFocusRequest.js.map +1 -0
  419. package/features/formModel/index.d.ts +3 -2
  420. package/features/formModel/index.js +2 -1
  421. package/features/formModel/jsonSchema/JsonSchema.d.ts +18 -0
  422. package/features/formModel/jsonSchema/JsonSchema.js +0 -0
  423. package/features/formModel/jsonSchema/JsonSchemaFieldOptions.d.ts +4 -0
  424. package/features/formModel/jsonSchema/JsonSchemaFieldOptions.js +0 -0
  425. package/features/formModel/jsonSchema/JsonSchemaIssue.d.ts +4 -0
  426. package/features/formModel/jsonSchema/JsonSchemaIssue.js +0 -0
  427. package/features/formModel/jsonSchema/JsonSchemaValidationResult.d.ts +5 -0
  428. package/features/formModel/jsonSchema/JsonSchemaValidationResult.js +0 -0
  429. package/features/formModel/jsonSchema/JsonSchemaValidator.d.ts +4 -0
  430. package/features/formModel/jsonSchema/JsonSchemaValidator.js +0 -0
  431. package/features/formModel/jsonSchema/PlainObject.d.ts +1 -0
  432. package/features/formModel/jsonSchema/PlainObject.js +0 -0
  433. package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.d.ts +5 -0
  434. package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.js +154 -0
  435. package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.js.map +1 -0
  436. package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.test.d.ts +1 -0
  437. package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.test.js +643 -0
  438. package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.test.js.map +1 -0
  439. package/features/formModel/jsonSchema/createJsonSchemaValidator.d.ts +3 -0
  440. package/features/formModel/jsonSchema/createJsonSchemaValidator.js +40 -0
  441. package/features/formModel/jsonSchema/createJsonSchemaValidator.js.map +1 -0
  442. package/features/formModel/jsonSchema/createJsonSchemaValidator.test.d.ts +1 -0
  443. package/features/formModel/jsonSchema/createJsonSchemaValidator.test.js +141 -0
  444. package/features/formModel/jsonSchema/createJsonSchemaValidator.test.js.map +1 -0
  445. package/features/formModel/jsonSchema/formDataToJsonSchemaValue.d.ts +3 -0
  446. package/features/formModel/jsonSchema/formDataToJsonSchemaValue.js +52 -0
  447. package/features/formModel/jsonSchema/formDataToJsonSchemaValue.js.map +1 -0
  448. package/features/formModel/jsonSchema/formDataToJsonSchemaValue.test.d.ts +1 -0
  449. package/features/formModel/jsonSchema/formDataToJsonSchemaValue.test.js +250 -0
  450. package/features/formModel/jsonSchema/formDataToJsonSchemaValue.test.js.map +1 -0
  451. package/features/formModel/jsonSchema/getJsonSchemaKind.d.ts +3 -0
  452. package/features/formModel/jsonSchema/getJsonSchemaKind.js +31 -0
  453. package/features/formModel/jsonSchema/getJsonSchemaKind.js.map +1 -0
  454. package/features/formModel/jsonSchema/getJsonSchemaKind.test.d.ts +1 -0
  455. package/features/formModel/jsonSchema/getJsonSchemaKind.test.js +123 -0
  456. package/features/formModel/jsonSchema/getJsonSchemaKind.test.js.map +1 -0
  457. package/features/formModel/jsonSchema/isPlainObject.d.ts +2 -0
  458. package/features/formModel/jsonSchema/isPlainObject.js +4 -0
  459. package/features/formModel/jsonSchema/isPlainObject.js.map +1 -0
  460. package/features/formModel/jsonSchema/jsonSchemaValueToFormData.d.ts +3 -0
  461. package/features/formModel/jsonSchema/jsonSchemaValueToFormData.js +30 -0
  462. package/features/formModel/jsonSchema/jsonSchemaValueToFormData.js.map +1 -0
  463. package/features/formModel/jsonSchema/jsonSchemaValueToFormData.test.d.ts +1 -0
  464. package/features/formModel/jsonSchema/jsonSchemaValueToFormData.test.js +207 -0
  465. package/features/formModel/jsonSchema/jsonSchemaValueToFormData.test.js.map +1 -0
  466. package/features/formModel/jsonSchema/normalizeJsonSchema.d.ts +2 -0
  467. package/features/formModel/jsonSchema/normalizeJsonSchema.js +10 -0
  468. package/features/formModel/jsonSchema/normalizeJsonSchema.js.map +1 -0
  469. package/features/formModel/renderers.d.ts +1 -0
  470. package/features/formModel/renderers.js +1 -0
  471. package/features/notifications/Notifications.d.ts +1 -0
  472. package/features/notifications/Notifications.js +3 -0
  473. package/features/notifications/Notifications.js.map +1 -1
  474. package/features/notifications/Notifications.test.d.ts +1 -0
  475. package/features/notifications/Notifications.test.js +106 -0
  476. package/features/notifications/Notifications.test.js.map +1 -0
  477. package/features/notifications/NotificationsRenderer.d.ts +2 -1
  478. package/features/notifications/NotificationsRenderer.js +23 -4
  479. package/features/notifications/NotificationsRenderer.js.map +1 -1
  480. package/features/notifications/NotificationsRenderer.test.d.ts +1 -0
  481. package/features/notifications/NotificationsRenderer.test.js +261 -0
  482. package/features/notifications/NotificationsRenderer.test.js.map +1 -0
  483. package/features/notifications/abstractions.d.ts +13 -2
  484. package/features/notifications/abstractions.js.map +1 -1
  485. package/features/security/LogIn/LogInUseCase.d.ts +0 -1
  486. package/features/security/LogIn/LogInUseCase.js +2 -5
  487. package/features/security/LogIn/LogInUseCase.js.map +1 -1
  488. package/features/security/LogIn/hasAppPermissions.d.ts +2 -0
  489. package/features/security/LogIn/hasAppPermissions.js +8 -0
  490. package/features/security/LogIn/hasAppPermissions.js.map +1 -0
  491. package/features/wcp/ReactLicense.d.ts +6 -1
  492. package/features/wcp/ReactLicense.js +17 -2
  493. package/features/wcp/ReactLicense.js.map +1 -1
  494. package/features/wcp/WcpGateway.js +4 -0
  495. package/features/wcp/WcpGateway.js.map +1 -1
  496. package/hooks/useHotkeys.js +6 -4
  497. package/hooks/useHotkeys.js.map +1 -1
  498. package/index.d.ts +27 -3
  499. package/index.js +23 -6
  500. package/modules/AccessManagementExtension.js +3 -1
  501. package/modules/AccessManagementExtension.js.map +1 -1
  502. package/modules/DebuggerExtension.d.ts +2 -0
  503. package/modules/DebuggerExtension.js +55 -0
  504. package/modules/DebuggerExtension.js.map +1 -0
  505. package/package.json +41 -41
  506. package/presentation/accessManagement/apiKeys/ApiKeysPresenter.js +1 -2
  507. package/presentation/accessManagement/apiKeys/ApiKeysPresenter.js.map +1 -1
  508. package/presentation/accessManagement/roles/RolesPresenter.js +1 -2
  509. package/presentation/accessManagement/roles/RolesPresenter.js.map +1 -1
  510. package/presentation/accessManagement/roles/components/RolesDataList.d.ts +10 -0
  511. package/presentation/accessManagement/roles/components/RolesDataList.js +146 -0
  512. package/presentation/accessManagement/roles/components/RolesDataList.js.map +1 -0
  513. package/presentation/accessManagement/roles/components/RolesForm.d.ts +13 -0
  514. package/presentation/accessManagement/roles/components/RolesForm.js +114 -0
  515. package/presentation/accessManagement/roles/components/RolesForm.js.map +1 -0
  516. package/presentation/accessManagement/roles/components/RolesView.js +6 -216
  517. package/presentation/accessManagement/roles/components/RolesView.js.map +1 -1
  518. package/presentation/accessManagement/teams/TeamsPresenter.js +1 -2
  519. package/presentation/accessManagement/teams/TeamsPresenter.js.map +1 -1
  520. package/presentation/accessManagement/teams/components/TeamsDataList.d.ts +10 -0
  521. package/presentation/accessManagement/teams/components/TeamsDataList.js +146 -0
  522. package/presentation/accessManagement/teams/components/TeamsDataList.js.map +1 -0
  523. package/presentation/accessManagement/teams/components/TeamsForm.d.ts +13 -0
  524. package/presentation/accessManagement/teams/components/TeamsForm.js +96 -0
  525. package/presentation/accessManagement/teams/components/TeamsForm.js.map +1 -0
  526. package/presentation/accessManagement/teams/components/TeamsView.js +6 -198
  527. package/presentation/accessManagement/teams/components/TeamsView.js.map +1 -1
  528. package/presentation/adminUsers/AdminUsers.d.ts +10 -0
  529. package/presentation/adminUsers/AdminUsers.js +77 -0
  530. package/presentation/adminUsers/AdminUsers.js.map +1 -0
  531. package/presentation/adminUsers/SecurityPermission.d.ts +2 -0
  532. package/presentation/adminUsers/SecurityPermission.js +15 -0
  533. package/presentation/adminUsers/SecurityPermission.js.map +1 -0
  534. package/presentation/adminUsers/UserItem.d.ts +10 -0
  535. package/presentation/adminUsers/UserItem.js +0 -0
  536. package/presentation/adminUsers/components/AvatarImage/AvatarImage.d.ts +3 -0
  537. package/presentation/adminUsers/components/AvatarImage/AvatarImage.js +31 -0
  538. package/presentation/adminUsers/components/AvatarImage/AvatarImage.js.map +1 -0
  539. package/presentation/adminUsers/components/AvatarImage/AvatarImagePreview.d.ts +10 -0
  540. package/presentation/adminUsers/components/AvatarImage/AvatarImagePreview.js +53 -0
  541. package/presentation/adminUsers/components/AvatarImage/AvatarImagePreview.js.map +1 -0
  542. package/presentation/adminUsers/components/AvatarImage/AvatarImageTrigger.d.ts +7 -0
  543. package/presentation/adminUsers/components/AvatarImage/AvatarImageTrigger.js +28 -0
  544. package/presentation/adminUsers/components/AvatarImage/AvatarImageTrigger.js.map +1 -0
  545. package/presentation/adminUsers/components/AvatarImage/index.d.ts +1 -0
  546. package/presentation/adminUsers/components/AvatarImage/index.js +1 -0
  547. package/presentation/adminUsers/routes.d.ts +10 -0
  548. package/presentation/adminUsers/routes.js +20 -0
  549. package/presentation/adminUsers/routes.js.map +1 -0
  550. package/presentation/adminUsers/userMenu/AccountDetails.d.ts +6 -0
  551. package/presentation/adminUsers/userMenu/AccountDetails.js +20 -0
  552. package/presentation/adminUsers/userMenu/AccountDetails.js.map +1 -0
  553. package/presentation/adminUsers/userMenu/useIsDefaultTenant.d.ts +1 -0
  554. package/presentation/adminUsers/userMenu/useIsDefaultTenant.js +9 -0
  555. package/presentation/adminUsers/userMenu/useIsDefaultTenant.js.map +1 -0
  556. package/presentation/adminUsers/views/Account/Account.d.ts +2 -0
  557. package/presentation/adminUsers/views/Account/Account.js +137 -0
  558. package/presentation/adminUsers/views/Account/Account.js.map +1 -0
  559. package/presentation/adminUsers/views/Account/index.d.ts +1 -0
  560. package/presentation/adminUsers/views/Account/index.js +1 -0
  561. package/presentation/adminUsers/views/Users/UsersDataList.d.ts +3 -0
  562. package/presentation/adminUsers/views/Users/UsersDataList.js +180 -0
  563. package/presentation/adminUsers/views/Users/UsersDataList.js.map +1 -0
  564. package/presentation/adminUsers/views/Users/UsersForm.d.ts +5 -0
  565. package/presentation/adminUsers/views/Users/UsersForm.js +175 -0
  566. package/presentation/adminUsers/views/Users/UsersForm.js.map +1 -0
  567. package/presentation/adminUsers/views/Users/UsersView.d.ts +2 -0
  568. package/presentation/adminUsers/views/Users/UsersView.js +15 -0
  569. package/presentation/adminUsers/views/Users/UsersView.js.map +1 -0
  570. package/presentation/adminUsers/views/Users/components/DeleteAction.d.ts +7 -0
  571. package/presentation/adminUsers/views/Users/components/DeleteAction.js +29 -0
  572. package/presentation/adminUsers/views/Users/components/DeleteAction.js.map +1 -0
  573. package/presentation/adminUsers/views/Users/hooks/useUserForm.d.ts +27 -0
  574. package/presentation/adminUsers/views/Users/hooks/useUserForm.js +101 -0
  575. package/presentation/adminUsers/views/Users/hooks/useUserForm.js.map +1 -0
  576. package/presentation/adminUsers/views/Users/search.js +21 -0
  577. package/presentation/adminUsers/views/Users/search.js.map +1 -0
  578. package/presentation/adminUsers/views/Users/search.svg +20 -0
  579. package/presentation/adminUsers/views/utils.d.ts +3 -0
  580. package/presentation/adminUsers/views/utils.js +12 -0
  581. package/presentation/adminUsers/views/utils.js.map +1 -0
  582. package/presentation/aiChats/AiChatsPanelPresenter.d.ts +28 -0
  583. package/presentation/aiChats/AiChatsPanelPresenter.js +132 -0
  584. package/presentation/aiChats/AiChatsPanelPresenter.js.map +1 -0
  585. package/presentation/aiChats/abstractions.d.ts +69 -0
  586. package/presentation/aiChats/abstractions.js +5 -0
  587. package/presentation/aiChats/abstractions.js.map +1 -0
  588. package/presentation/aiChats/feature.d.ts +3 -0
  589. package/presentation/aiChats/feature.js +17 -0
  590. package/presentation/aiChats/feature.js.map +1 -0
  591. package/presentation/aiChats/index.d.ts +2 -0
  592. package/presentation/aiChats/index.js +2 -0
  593. package/presentation/assumePermissions/AssumePermissionsPresenter.d.ts +36 -0
  594. package/presentation/assumePermissions/AssumePermissionsPresenter.js +153 -0
  595. package/presentation/assumePermissions/AssumePermissionsPresenter.js.map +1 -0
  596. package/presentation/assumePermissions/abstractions.d.ts +30 -0
  597. package/presentation/assumePermissions/abstractions.js +5 -0
  598. package/presentation/assumePermissions/abstractions.js.map +1 -0
  599. package/presentation/assumePermissions/components/AssumePermissionsButton.d.ts +14 -0
  600. package/presentation/assumePermissions/components/AssumePermissionsButton.js +42 -0
  601. package/presentation/assumePermissions/components/AssumePermissionsButton.js.map +1 -0
  602. package/presentation/assumePermissions/components/AssumedPermissionsBanner.d.ts +11 -0
  603. package/presentation/assumePermissions/components/AssumedPermissionsBanner.js +25 -0
  604. package/presentation/assumePermissions/components/AssumedPermissionsBanner.js.map +1 -0
  605. package/presentation/assumePermissions/components/AssumedPermissionsSelector.d.ts +2 -0
  606. package/presentation/assumePermissions/components/AssumedPermissionsSelector.js +68 -0
  607. package/presentation/assumePermissions/components/AssumedPermissionsSelector.js.map +1 -0
  608. package/presentation/assumePermissions/feature.d.ts +3 -0
  609. package/presentation/assumePermissions/feature.js +17 -0
  610. package/presentation/assumePermissions/feature.js.map +1 -0
  611. package/presentation/assumePermissions/index.d.ts +4 -0
  612. package/presentation/assumePermissions/index.js +4 -0
  613. package/presentation/banners/BannersPresenter.d.ts +14 -0
  614. package/presentation/banners/BannersPresenter.js +60 -0
  615. package/presentation/banners/BannersPresenter.js.map +1 -0
  616. package/presentation/banners/abstractions.d.ts +24 -0
  617. package/presentation/banners/abstractions.js +5 -0
  618. package/presentation/banners/abstractions.js.map +1 -0
  619. package/presentation/banners/components/Banner.d.ts +10 -0
  620. package/presentation/banners/components/Banner.js +32 -0
  621. package/presentation/banners/components/Banner.js.map +1 -0
  622. package/presentation/banners/components/BannerBar.d.ts +11 -0
  623. package/presentation/banners/components/BannerBar.js +51 -0
  624. package/presentation/banners/components/BannerBar.js.map +1 -0
  625. package/presentation/banners/feature.d.ts +3 -0
  626. package/presentation/banners/feature.js +17 -0
  627. package/presentation/banners/feature.js.map +1 -0
  628. package/presentation/banners/index.d.ts +6 -0
  629. package/presentation/banners/index.js +4 -0
  630. package/presentation/banners/useBanner.d.ts +10 -0
  631. package/presentation/banners/useBanner.js +15 -0
  632. package/presentation/banners/useBanner.js.map +1 -0
  633. package/presentation/commandPalette/CommandPalettePresenter.js +3 -1
  634. package/presentation/commandPalette/CommandPalettePresenter.js.map +1 -1
  635. package/presentation/commandPalette/abstractions.d.ts +5 -0
  636. package/presentation/commandPalette/abstractions.js.map +1 -1
  637. package/presentation/commandPalette/commands/AiChatsCommand.d.ts +24 -0
  638. package/presentation/commandPalette/commands/AiChatsCommand.js +41 -0
  639. package/presentation/commandPalette/commands/AiChatsCommand.js.map +1 -0
  640. package/presentation/commandPalette/commands/AskAiCommand.d.ts +1 -0
  641. package/presentation/commandPalette/commands/AskAiCommand.js +3 -2
  642. package/presentation/commandPalette/commands/AskAiCommand.js.map +1 -1
  643. package/presentation/commandPalette/commands/feature.js +2 -0
  644. package/presentation/commandPalette/commands/feature.js.map +1 -1
  645. package/presentation/createReactiveComponent.d.ts +1 -0
  646. package/presentation/createReactiveComponent.js +1 -0
  647. package/presentation/debugger/DebuggerPresenter.d.ts +14 -0
  648. package/presentation/debugger/DebuggerPresenter.js +45 -0
  649. package/presentation/debugger/DebuggerPresenter.js.map +1 -0
  650. package/presentation/debugger/abstractions.d.ts +17 -0
  651. package/presentation/debugger/abstractions.js +5 -0
  652. package/presentation/debugger/abstractions.js.map +1 -0
  653. package/presentation/debugger/components/DebuggerIndicator.d.ts +2 -0
  654. package/presentation/debugger/components/DebuggerIndicator.js +45 -0
  655. package/presentation/debugger/components/DebuggerIndicator.js.map +1 -0
  656. package/presentation/debugger/components/DebuggerView.d.ts +4 -0
  657. package/presentation/debugger/components/DebuggerView.js +44 -0
  658. package/presentation/debugger/components/DebuggerView.js.map +1 -0
  659. package/presentation/debugger/downloadJson.d.ts +7 -0
  660. package/presentation/debugger/downloadJson.js +17 -0
  661. package/presentation/debugger/downloadJson.js.map +1 -0
  662. package/presentation/debugger/feature.d.ts +3 -0
  663. package/presentation/debugger/feature.js +17 -0
  664. package/presentation/debugger/feature.js.map +1 -0
  665. package/presentation/debugger/routes.d.ts +4 -0
  666. package/presentation/debugger/routes.js +10 -0
  667. package/presentation/debugger/routes.js.map +1 -0
  668. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep.js +4 -3
  669. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep.js.map +1 -1
  670. package/presentation/installation/components/SystemInstaller/steps/FinishSetup/handleStartUsing.js.map +1 -1
  671. package/presentation/installation/presenters/SystemInstaller/SystemInstallerPresenter.js.map +1 -1
  672. package/presentation/listPresenter/FolderAwareDataSource.d.ts +5 -0
  673. package/presentation/listPresenter/FolderAwareDataSource.js +4 -3
  674. package/presentation/listPresenter/FolderAwareDataSource.js.map +1 -1
  675. package/presentation/listPresenter/QueryMatcher.d.ts +28 -5
  676. package/presentation/listPresenter/QueryMatcher.js +72 -2
  677. package/presentation/listPresenter/QueryMatcher.js.map +1 -1
  678. package/presentation/listPresenter/QueryMatcher.test.d.ts +1 -0
  679. package/presentation/listPresenter/QueryMatcher.test.js +345 -0
  680. package/presentation/listPresenter/QueryMatcher.test.js.map +1 -0
  681. package/presentation/trashBin/TrashBinPresenter.js +3 -1
  682. package/presentation/trashBin/TrashBinPresenter.js.map +1 -1
  683. package/presentation/trashBin/TrashBinPresenter.test.d.ts +1 -0
  684. package/presentation/trashBin/TrashBinPresenter.test.js +91 -0
  685. package/presentation/trashBin/TrashBinPresenter.test.js.map +1 -0
  686. package/presentation/trashBin/abstractions.d.ts +1 -1
  687. package/presentation/trashBin/abstractions.js.map +1 -1
  688. package/presentation/trashBin/components/BulkActions/DeleteItems.js +5 -1
  689. package/presentation/trashBin/components/BulkActions/DeleteItems.js.map +1 -1
  690. package/presentation/trashBin/components/BulkActions/DeleteItems.test.d.ts +1 -0
  691. package/presentation/trashBin/components/BulkActions/DeleteItems.test.js +100 -0
  692. package/presentation/trashBin/components/BulkActions/DeleteItems.test.js.map +1 -0
  693. package/presentation/trashBin/hooks/useDeleteTrashBinItem.js +2 -1
  694. package/presentation/trashBin/hooks/useDeleteTrashBinItem.js.map +1 -1
  695. package/presentation/trashBin/hooks/useDeleteTrashBinItem.test.d.ts +1 -0
  696. package/presentation/trashBin/hooks/useDeleteTrashBinItem.test.js +67 -0
  697. package/presentation/trashBin/hooks/useDeleteTrashBinItem.test.js.map +1 -0
  698. package/static/svg/search.43fa797c.svg +20 -0
  699. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker.js +0 -68
  700. package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker.js.map +0 -1
  701. package/features/aiChat/AiChatGateway.js.map +0 -1
  702. package/features/aiChat/AiChatPresenter.d.ts +0 -32
  703. package/features/aiChat/AiChatPresenter.js +0 -220
  704. package/features/aiChat/AiChatPresenter.js.map +0 -1
  705. package/features/aiChat/abstractions.d.ts +0 -124
  706. package/features/aiChat/abstractions.js +0 -6
  707. package/features/aiChat/abstractions.js.map +0 -1
  708. package/features/aiChat/feature.d.ts +0 -3
  709. package/features/aiChat/feature.js +0 -19
  710. package/features/aiChat/feature.js.map +0 -1
  711. package/features/aiChat/index.d.ts +0 -6
  712. package/features/aiChat/index.js +0 -3
  713. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/createPasswordValidator.d.ts +0 -8
  714. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/createPasswordValidator.js +0 -17
  715. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/createPasswordValidator.js.map +0 -1
  716. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/usePasswordValidator.d.ts +0 -1
  717. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/usePasswordValidator.js +0 -16
  718. package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/usePasswordValidator.js.map +0 -1
@@ -0,0 +1,31 @@
1
+ const isNumberType = (type)=>"number" === type || "integer" === type;
2
+ const hasEnumValues = (schema)=>Array.isArray(schema.enum) && schema.enum.length > 0;
3
+ const hasEnumOfType = (schema, valueType)=>{
4
+ if (!Array.isArray(schema.enum) || 0 === schema.enum.length) return false;
5
+ return schema.enum.every((value)=>typeof value === valueType);
6
+ };
7
+ const getArrayKind = (schema)=>{
8
+ const items = schema.items;
9
+ if (!items || "object" != typeof items) return "json";
10
+ if ("string" === items.type && !hasEnumValues(items)) return "stringList";
11
+ if ("object" === items.type && items.properties && "object" == typeof items.properties) return "objectList";
12
+ return "json";
13
+ };
14
+ const getJsonSchemaKind = (schema)=>{
15
+ if (!schema || "object" != typeof schema) return "json";
16
+ if ("string" === schema.type) {
17
+ if (hasEnumValues(schema)) return hasEnumOfType(schema, "string") ? "enum" : "json";
18
+ return "string";
19
+ }
20
+ if (isNumberType(schema.type)) {
21
+ if (hasEnumValues(schema)) return hasEnumOfType(schema, "number") ? "enum" : "json";
22
+ return "number";
23
+ }
24
+ if ("boolean" === schema.type) return "boolean";
25
+ if ("object" === schema.type && schema.properties && "object" == typeof schema.properties) return "object";
26
+ if ("array" === schema.type) return getArrayKind(schema);
27
+ return "json";
28
+ };
29
+ export { getJsonSchemaKind };
30
+
31
+ //# sourceMappingURL=getJsonSchemaKind.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/formModel/jsonSchema/getJsonSchemaKind.js","sources":["../../../../src/features/formModel/jsonSchema/getJsonSchemaKind.ts"],"sourcesContent":["import type { JsonSchema } from \"./JsonSchema.js\";\n\nexport type JsonSchemaKind =\n | \"string\"\n | \"enum\"\n | \"number\"\n | \"boolean\"\n | \"object\"\n | \"stringList\"\n | \"objectList\"\n | \"json\";\n\nconst isNumberType = (type: unknown): boolean => {\n return type === \"number\" || type === \"integer\";\n};\n\nconst hasEnumValues = (schema: JsonSchema): boolean => {\n return Array.isArray(schema.enum) && schema.enum.length > 0;\n};\n\nconst hasEnumOfType = (schema: JsonSchema, valueType: string): boolean => {\n if (!Array.isArray(schema.enum) || schema.enum.length === 0) {\n return false;\n }\n return schema.enum.every(value => typeof value === valueType);\n};\n\nconst getArrayKind = (schema: JsonSchema): JsonSchemaKind => {\n const items = schema.items;\n if (!items || typeof items !== \"object\") {\n return \"json\";\n }\n if (items.type === \"string\" && !hasEnumValues(items)) {\n return \"stringList\";\n }\n if (items.type === \"object\" && items.properties && typeof items.properties === \"object\") {\n return \"objectList\";\n }\n return \"json\";\n};\n\n/*\n * How the adapter renders a property: one of the supported shapes, or `json` (a JSON text field)\n * for everything else. A schema that is not an object returns `json`, so a malformed property\n * never crashes the builder.\n */\nexport const getJsonSchemaKind = (schema: JsonSchema): JsonSchemaKind => {\n if (!schema || typeof schema !== \"object\") {\n return \"json\";\n }\n if (schema.type === \"string\") {\n if (hasEnumValues(schema)) {\n return hasEnumOfType(schema, \"string\") ? \"enum\" : \"json\";\n }\n return \"string\";\n }\n if (isNumberType(schema.type)) {\n if (hasEnumValues(schema)) {\n return hasEnumOfType(schema, \"number\") ? \"enum\" : \"json\";\n }\n return \"number\";\n }\n if (schema.type === \"boolean\") {\n return \"boolean\";\n }\n if (schema.type === \"object\" && schema.properties && typeof schema.properties === \"object\") {\n return \"object\";\n }\n if (schema.type === \"array\") {\n return getArrayKind(schema);\n }\n return \"json\";\n};\n"],"names":["isNumberType","type","hasEnumValues","schema","Array","hasEnumOfType","valueType","value","getArrayKind","items","getJsonSchemaKind"],"mappings":"AAYA,MAAMA,eAAe,CAACC,OACXA,AAAS,aAATA,QAAqBA,AAAS,cAATA;AAGhC,MAAMC,gBAAgB,CAACC,SACZC,MAAM,OAAO,CAACD,OAAO,IAAI,KAAKA,OAAO,IAAI,CAAC,MAAM,GAAG;AAG9D,MAAME,gBAAgB,CAACF,QAAoBG;IACvC,IAAI,CAACF,MAAM,OAAO,CAACD,OAAO,IAAI,KAAKA,AAAuB,MAAvBA,OAAO,IAAI,CAAC,MAAM,EACjD,OAAO;IAEX,OAAOA,OAAO,IAAI,CAAC,KAAK,CAACI,CAAAA,QAAS,OAAOA,UAAUD;AACvD;AAEA,MAAME,eAAe,CAACL;IAClB,MAAMM,QAAQN,OAAO,KAAK;IAC1B,IAAI,CAACM,SAAS,AAAiB,YAAjB,OAAOA,OACjB,OAAO;IAEX,IAAIA,AAAe,aAAfA,MAAM,IAAI,IAAiB,CAACP,cAAcO,QAC1C,OAAO;IAEX,IAAIA,AAAe,aAAfA,MAAM,IAAI,IAAiBA,MAAM,UAAU,IAAI,AAA4B,YAA5B,OAAOA,MAAM,UAAU,EACtE,OAAO;IAEX,OAAO;AACX;AAOO,MAAMC,oBAAoB,CAACP;IAC9B,IAAI,CAACA,UAAU,AAAkB,YAAlB,OAAOA,QAClB,OAAO;IAEX,IAAIA,AAAgB,aAAhBA,OAAO,IAAI,EAAe;QAC1B,IAAID,cAAcC,SACd,OAAOE,cAAcF,QAAQ,YAAY,SAAS;QAEtD,OAAO;IACX;IACA,IAAIH,aAAaG,OAAO,IAAI,GAAG;QAC3B,IAAID,cAAcC,SACd,OAAOE,cAAcF,QAAQ,YAAY,SAAS;QAEtD,OAAO;IACX;IACA,IAAIA,AAAgB,cAAhBA,OAAO,IAAI,EACX,OAAO;IAEX,IAAIA,AAAgB,aAAhBA,OAAO,IAAI,IAAiBA,OAAO,UAAU,IAAI,AAA6B,YAA7B,OAAOA,OAAO,UAAU,EACzE,OAAO;IAEX,IAAIA,AAAgB,YAAhBA,OAAO,IAAI,EACX,OAAOK,aAAaL;IAExB,OAAO;AACX"}
@@ -0,0 +1,123 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { getJsonSchemaKind } from "./getJsonSchemaKind.js";
3
+ describe("getJsonSchemaKind", ()=>{
4
+ it("maps the scalar types", ()=>{
5
+ expect(getJsonSchemaKind({
6
+ type: "string"
7
+ })).toBe("string");
8
+ expect(getJsonSchemaKind({
9
+ type: "number"
10
+ })).toBe("number");
11
+ expect(getJsonSchemaKind({
12
+ type: "integer"
13
+ })).toBe("number");
14
+ expect(getJsonSchemaKind({
15
+ type: "boolean"
16
+ })).toBe("boolean");
17
+ });
18
+ it("maps a string or number enum to enum", ()=>{
19
+ expect(getJsonSchemaKind({
20
+ type: "string",
21
+ enum: [
22
+ "a",
23
+ "b"
24
+ ]
25
+ })).toBe("enum");
26
+ expect(getJsonSchemaKind({
27
+ type: "integer",
28
+ enum: [
29
+ 1,
30
+ 2
31
+ ]
32
+ })).toBe("enum");
33
+ });
34
+ it("falls back to json for an enum whose values do not match the type or that is empty", ()=>{
35
+ expect(getJsonSchemaKind({
36
+ type: "string",
37
+ enum: [
38
+ "a",
39
+ 1
40
+ ]
41
+ })).toBe("json");
42
+ expect(getJsonSchemaKind({
43
+ type: "number",
44
+ enum: [
45
+ "a"
46
+ ]
47
+ })).toBe("json");
48
+ expect(getJsonSchemaKind({
49
+ type: "string",
50
+ enum: []
51
+ })).toBe("string");
52
+ });
53
+ it("maps an object with properties to object", ()=>{
54
+ expect(getJsonSchemaKind({
55
+ type: "object",
56
+ properties: {}
57
+ })).toBe("object");
58
+ });
59
+ it("maps an array of strings to stringList and an array of objects to objectList", ()=>{
60
+ expect(getJsonSchemaKind({
61
+ type: "array",
62
+ items: {
63
+ type: "string"
64
+ }
65
+ })).toBe("stringList");
66
+ expect(getJsonSchemaKind({
67
+ type: "array",
68
+ items: {
69
+ type: "object",
70
+ properties: {}
71
+ }
72
+ })).toBe("objectList");
73
+ });
74
+ it("falls back to json for everything else", ()=>{
75
+ const schemas = [
76
+ {},
77
+ {
78
+ type: "null"
79
+ },
80
+ {
81
+ type: "object"
82
+ },
83
+ {
84
+ type: "array"
85
+ },
86
+ {
87
+ type: "array",
88
+ items: {
89
+ type: "number"
90
+ }
91
+ },
92
+ {
93
+ type: "array",
94
+ items: {
95
+ type: "string",
96
+ enum: [
97
+ "a"
98
+ ]
99
+ }
100
+ },
101
+ {
102
+ anyOf: [
103
+ {
104
+ type: "string"
105
+ },
106
+ {
107
+ type: "null"
108
+ }
109
+ ]
110
+ },
111
+ {
112
+ const: "x"
113
+ }
114
+ ];
115
+ for (const schema of schemas)expect(getJsonSchemaKind(schema)).toBe("json");
116
+ });
117
+ it("returns json for a value that is not a schema object", ()=>{
118
+ expect(getJsonSchemaKind(null)).toBe("json");
119
+ expect(getJsonSchemaKind("string")).toBe("json");
120
+ });
121
+ });
122
+
123
+ //# sourceMappingURL=getJsonSchemaKind.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/formModel/jsonSchema/getJsonSchemaKind.test.js","sources":["../../../../src/features/formModel/jsonSchema/getJsonSchemaKind.test.ts"],"sourcesContent":["import { describe } from \"vitest\";\nimport { expect } from \"vitest\";\nimport { it } from \"vitest\";\nimport type { JsonSchema } from \"./JsonSchema.js\";\nimport { getJsonSchemaKind } from \"./getJsonSchemaKind.js\";\n\ndescribe(\"getJsonSchemaKind\", () => {\n it(\"maps the scalar types\", () => {\n expect(getJsonSchemaKind({ type: \"string\" })).toBe(\"string\");\n expect(getJsonSchemaKind({ type: \"number\" })).toBe(\"number\");\n expect(getJsonSchemaKind({ type: \"integer\" })).toBe(\"number\");\n expect(getJsonSchemaKind({ type: \"boolean\" })).toBe(\"boolean\");\n });\n\n it(\"maps a string or number enum to enum\", () => {\n expect(getJsonSchemaKind({ type: \"string\", enum: [\"a\", \"b\"] })).toBe(\"enum\");\n expect(getJsonSchemaKind({ type: \"integer\", enum: [1, 2] })).toBe(\"enum\");\n });\n\n it(\"falls back to json for an enum whose values do not match the type or that is empty\", () => {\n expect(getJsonSchemaKind({ type: \"string\", enum: [\"a\", 1] })).toBe(\"json\");\n expect(getJsonSchemaKind({ type: \"number\", enum: [\"a\"] })).toBe(\"json\");\n expect(getJsonSchemaKind({ type: \"string\", enum: [] })).toBe(\"string\");\n });\n\n it(\"maps an object with properties to object\", () => {\n expect(getJsonSchemaKind({ type: \"object\", properties: {} })).toBe(\"object\");\n });\n\n it(\"maps an array of strings to stringList and an array of objects to objectList\", () => {\n expect(getJsonSchemaKind({ type: \"array\", items: { type: \"string\" } })).toBe(\"stringList\");\n expect(\n getJsonSchemaKind({ type: \"array\", items: { type: \"object\", properties: {} } })\n ).toBe(\"objectList\");\n });\n\n it(\"falls back to json for everything else\", () => {\n const schemas: JsonSchema[] = [\n {},\n { type: \"null\" },\n { type: \"object\" },\n { type: \"array\" },\n { type: \"array\", items: { type: \"number\" } },\n { type: \"array\", items: { type: \"string\", enum: [\"a\"] } },\n { anyOf: [{ type: \"string\" }, { type: \"null\" }] },\n { const: \"x\" }\n ];\n\n for (const schema of schemas) {\n expect(getJsonSchemaKind(schema)).toBe(\"json\");\n }\n });\n\n it(\"returns json for a value that is not a schema object\", () => {\n expect(getJsonSchemaKind(null as unknown as JsonSchema)).toBe(\"json\");\n expect(getJsonSchemaKind(\"string\" as unknown as JsonSchema)).toBe(\"json\");\n });\n});\n"],"names":["describe","it","expect","getJsonSchemaKind","schemas","schema"],"mappings":";;AAMAA,SAAS,qBAAqB;IAC1BC,GAAG,yBAAyB;QACxBC,OAAOC,kBAAkB;YAAE,MAAM;QAAS,IAAI,IAAI,CAAC;QACnDD,OAAOC,kBAAkB;YAAE,MAAM;QAAS,IAAI,IAAI,CAAC;QACnDD,OAAOC,kBAAkB;YAAE,MAAM;QAAU,IAAI,IAAI,CAAC;QACpDD,OAAOC,kBAAkB;YAAE,MAAM;QAAU,IAAI,IAAI,CAAC;IACxD;IAEAF,GAAG,wCAAwC;QACvCC,OAAOC,kBAAkB;YAAE,MAAM;YAAU,MAAM;gBAAC;gBAAK;aAAI;QAAC,IAAI,IAAI,CAAC;QACrED,OAAOC,kBAAkB;YAAE,MAAM;YAAW,MAAM;gBAAC;gBAAG;aAAE;QAAC,IAAI,IAAI,CAAC;IACtE;IAEAF,GAAG,sFAAsF;QACrFC,OAAOC,kBAAkB;YAAE,MAAM;YAAU,MAAM;gBAAC;gBAAK;aAAE;QAAC,IAAI,IAAI,CAAC;QACnED,OAAOC,kBAAkB;YAAE,MAAM;YAAU,MAAM;gBAAC;aAAI;QAAC,IAAI,IAAI,CAAC;QAChED,OAAOC,kBAAkB;YAAE,MAAM;YAAU,MAAM,EAAE;QAAC,IAAI,IAAI,CAAC;IACjE;IAEAF,GAAG,4CAA4C;QAC3CC,OAAOC,kBAAkB;YAAE,MAAM;YAAU,YAAY,CAAC;QAAE,IAAI,IAAI,CAAC;IACvE;IAEAF,GAAG,gFAAgF;QAC/EC,OAAOC,kBAAkB;YAAE,MAAM;YAAS,OAAO;gBAAE,MAAM;YAAS;QAAE,IAAI,IAAI,CAAC;QAC7ED,OACIC,kBAAkB;YAAE,MAAM;YAAS,OAAO;gBAAE,MAAM;gBAAU,YAAY,CAAC;YAAE;QAAE,IAC/E,IAAI,CAAC;IACX;IAEAF,GAAG,0CAA0C;QACzC,MAAMG,UAAwB;YAC1B,CAAC;YACD;gBAAE,MAAM;YAAO;YACf;gBAAE,MAAM;YAAS;YACjB;gBAAE,MAAM;YAAQ;YAChB;gBAAE,MAAM;gBAAS,OAAO;oBAAE,MAAM;gBAAS;YAAE;YAC3C;gBAAE,MAAM;gBAAS,OAAO;oBAAE,MAAM;oBAAU,MAAM;wBAAC;qBAAI;gBAAC;YAAE;YACxD;gBAAE,OAAO;oBAAC;wBAAE,MAAM;oBAAS;oBAAG;wBAAE,MAAM;oBAAO;iBAAE;YAAC;YAChD;gBAAE,OAAO;YAAI;SAChB;QAED,KAAK,MAAMC,UAAUD,QACjBF,OAAOC,kBAAkBE,SAAS,IAAI,CAAC;IAE/C;IAEAJ,GAAG,wDAAwD;QACvDC,OAAOC,kBAAkB,OAAgC,IAAI,CAAC;QAC9DD,OAAOC,kBAAkB,WAAoC,IAAI,CAAC;IACtE;AACJ"}
@@ -0,0 +1,2 @@
1
+ import type { PlainObject } from "./PlainObject.js";
2
+ export declare const isPlainObject: (value: unknown) => value is PlainObject;
@@ -0,0 +1,4 @@
1
+ const isPlainObject = (value)=>"object" == typeof value && null !== value && !Array.isArray(value);
2
+ export { isPlainObject };
3
+
4
+ //# sourceMappingURL=isPlainObject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/formModel/jsonSchema/isPlainObject.js","sources":["../../../../src/features/formModel/jsonSchema/isPlainObject.ts"],"sourcesContent":["import type { PlainObject } from \"./PlainObject.js\";\n\nexport const isPlainObject = (value: unknown): value is PlainObject => {\n return typeof value === \"object\" && value !== null && !Array.isArray(value);\n};\n"],"names":["isPlainObject","value","Array"],"mappings":"AAEO,MAAMA,gBAAgB,CAACC,QACnB,AAAiB,YAAjB,OAAOA,SAAsBA,AAAU,SAAVA,SAAkB,CAACC,MAAM,OAAO,CAACD"}
@@ -0,0 +1,3 @@
1
+ import type { JsonSchema } from "./JsonSchema.js";
2
+ import type { PlainObject } from "./PlainObject.js";
3
+ export declare const jsonSchemaValueToFormData: (schema: JsonSchema, value: unknown) => PlainObject;
@@ -0,0 +1,30 @@
1
+ import { getJsonSchemaKind } from "./getJsonSchemaKind.js";
2
+ import { normalizeJsonSchema } from "./normalizeJsonSchema.js";
3
+ import { isPlainObject } from "./isPlainObject.js";
4
+ const toFormValue = (schema, value)=>{
5
+ const kind = getJsonSchemaKind(schema);
6
+ const input = void 0 === value ? schema.default : value;
7
+ if ("object" === kind) return jsonSchemaValueToFormData(schema, input);
8
+ if ("objectList" === kind) {
9
+ const items = Array.isArray(input) ? input : [];
10
+ const itemSchema = normalizeJsonSchema(schema.items);
11
+ return items.map((item)=>jsonSchemaValueToFormData(itemSchema, item));
12
+ }
13
+ if ("stringList" === kind) return Array.isArray(input) ? input : [];
14
+ if ("json" === kind) return void 0 === input ? null : JSON.stringify(input, null, 2);
15
+ return void 0 === input ? null : input;
16
+ };
17
+ const jsonSchemaValueToFormData = (schema, value)=>{
18
+ const data = {};
19
+ if ("object" !== getJsonSchemaKind(schema)) return data;
20
+ const source = isPlainObject(value) ? value : {};
21
+ const properties = schema.properties ?? {};
22
+ for (const [name, property] of Object.entries(properties)){
23
+ const propertySchema = normalizeJsonSchema(property);
24
+ data[name] = toFormValue(propertySchema, source[name]);
25
+ }
26
+ return data;
27
+ };
28
+ export { jsonSchemaValueToFormData };
29
+
30
+ //# sourceMappingURL=jsonSchemaValueToFormData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/formModel/jsonSchema/jsonSchemaValueToFormData.js","sources":["../../../../src/features/formModel/jsonSchema/jsonSchemaValueToFormData.ts"],"sourcesContent":["import type { JsonSchema } from \"./JsonSchema.js\";\nimport { getJsonSchemaKind } from \"./getJsonSchemaKind.js\";\nimport { normalizeJsonSchema } from \"./normalizeJsonSchema.js\";\nimport { isPlainObject } from \"./isPlainObject.js\";\nimport type { PlainObject } from \"./PlainObject.js\";\n\nconst toFormValue = (schema: JsonSchema, value: unknown): unknown => {\n const kind = getJsonSchemaKind(schema);\n const input = value === undefined ? schema.default : value;\n\n if (kind === \"object\") {\n return jsonSchemaValueToFormData(schema, input);\n }\n if (kind === \"objectList\") {\n const items = Array.isArray(input) ? input : [];\n const itemSchema = normalizeJsonSchema(schema.items);\n return items.map(item => jsonSchemaValueToFormData(itemSchema, item));\n }\n if (kind === \"stringList\") {\n return Array.isArray(input) ? input : [];\n }\n if (kind === \"json\") {\n return input === undefined ? null : JSON.stringify(input, null, 2);\n }\n return input === undefined ? null : input;\n};\n\n/*\n * Converts a stored value into form data for the fields `buildFieldsFromJsonSchema` builds\n * (R271): every property is present (its default, else `null`, `[]` for a list), a nested object\n * and each list item become form data too, and a JSON text field holds the stringified value.\n */\nexport const jsonSchemaValueToFormData = (schema: JsonSchema, value: unknown): PlainObject => {\n const data: PlainObject = {};\n if (getJsonSchemaKind(schema) !== \"object\") {\n return data;\n }\n\n const source: PlainObject = isPlainObject(value) ? value : {};\n const properties = schema.properties ?? {};\n\n for (const [name, property] of Object.entries(properties)) {\n const propertySchema = normalizeJsonSchema(property);\n data[name] = toFormValue(propertySchema, source[name]);\n }\n\n return data;\n};\n"],"names":["toFormValue","schema","value","kind","getJsonSchemaKind","input","undefined","jsonSchemaValueToFormData","items","Array","itemSchema","normalizeJsonSchema","item","JSON","data","source","isPlainObject","properties","name","property","Object","propertySchema"],"mappings":";;;AAMA,MAAMA,cAAc,CAACC,QAAoBC;IACrC,MAAMC,OAAOC,kBAAkBH;IAC/B,MAAMI,QAAQH,AAAUI,WAAVJ,QAAsBD,OAAO,OAAO,GAAGC;IAErD,IAAIC,AAAS,aAATA,MACA,OAAOI,0BAA0BN,QAAQI;IAE7C,IAAIF,AAAS,iBAATA,MAAuB;QACvB,MAAMK,QAAQC,MAAM,OAAO,CAACJ,SAASA,QAAQ,EAAE;QAC/C,MAAMK,aAAaC,oBAAoBV,OAAO,KAAK;QACnD,OAAOO,MAAM,GAAG,CAACI,CAAAA,OAAQL,0BAA0BG,YAAYE;IACnE;IACA,IAAIT,AAAS,iBAATA,MACA,OAAOM,MAAM,OAAO,CAACJ,SAASA,QAAQ,EAAE;IAE5C,IAAIF,AAAS,WAATA,MACA,OAAOE,AAAUC,WAAVD,QAAsB,OAAOQ,KAAK,SAAS,CAACR,OAAO,MAAM;IAEpE,OAAOA,AAAUC,WAAVD,QAAsB,OAAOA;AACxC;AAOO,MAAME,4BAA4B,CAACN,QAAoBC;IAC1D,MAAMY,OAAoB,CAAC;IAC3B,IAAIV,AAA8B,aAA9BA,kBAAkBH,SAClB,OAAOa;IAGX,MAAMC,SAAsBC,cAAcd,SAASA,QAAQ,CAAC;IAC5D,MAAMe,aAAahB,OAAO,UAAU,IAAI,CAAC;IAEzC,KAAK,MAAM,CAACiB,MAAMC,SAAS,IAAIC,OAAO,OAAO,CAACH,YAAa;QACvD,MAAMI,iBAAiBV,oBAAoBQ;QAC3CL,IAAI,CAACI,KAAK,GAAGlB,YAAYqB,gBAAgBN,MAAM,CAACG,KAAK;IACzD;IAEA,OAAOJ;AACX"}
@@ -0,0 +1,207 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { jsonSchemaValueToFormData } from "./jsonSchemaValueToFormData.js";
3
+ const SCHEMA = {
4
+ type: "object",
5
+ properties: {
6
+ url: {
7
+ type: "string"
8
+ },
9
+ method: {
10
+ type: "string",
11
+ enum: [
12
+ "GET",
13
+ "POST"
14
+ ],
15
+ default: "POST"
16
+ },
17
+ timeout: {
18
+ type: "integer"
19
+ },
20
+ enabled: {
21
+ type: "boolean"
22
+ },
23
+ labels: {
24
+ type: "array",
25
+ items: {
26
+ type: "string"
27
+ }
28
+ },
29
+ auth: {
30
+ type: "object",
31
+ properties: {
32
+ user: {
33
+ type: "string"
34
+ },
35
+ retries: {
36
+ type: "integer",
37
+ default: 3
38
+ }
39
+ }
40
+ },
41
+ headers: {
42
+ type: "array",
43
+ items: {
44
+ type: "object",
45
+ properties: {
46
+ name: {
47
+ type: "string"
48
+ },
49
+ value: {
50
+ type: "string"
51
+ }
52
+ }
53
+ }
54
+ },
55
+ payload: {}
56
+ }
57
+ };
58
+ describe("jsonSchemaValueToFormData", ()=>{
59
+ it("fills every property of an empty value with its default, null or an empty list", ()=>{
60
+ expect(jsonSchemaValueToFormData(SCHEMA, {})).toEqual({
61
+ url: null,
62
+ method: "POST",
63
+ timeout: null,
64
+ enabled: null,
65
+ labels: [],
66
+ auth: {
67
+ user: null,
68
+ retries: 3
69
+ },
70
+ headers: [],
71
+ payload: null
72
+ });
73
+ });
74
+ it("keeps the stored scalars, lists and nested values", ()=>{
75
+ const stored = {
76
+ url: "https://a.test",
77
+ method: "GET",
78
+ timeout: 30,
79
+ enabled: false,
80
+ labels: [
81
+ "a",
82
+ "b"
83
+ ],
84
+ auth: {
85
+ user: "ana"
86
+ },
87
+ headers: [
88
+ {
89
+ name: "X-Id",
90
+ value: "1"
91
+ },
92
+ {
93
+ name: "X-Team"
94
+ }
95
+ ]
96
+ };
97
+ expect(jsonSchemaValueToFormData(SCHEMA, stored)).toEqual({
98
+ url: "https://a.test",
99
+ method: "GET",
100
+ timeout: 30,
101
+ enabled: false,
102
+ labels: [
103
+ "a",
104
+ "b"
105
+ ],
106
+ auth: {
107
+ user: "ana",
108
+ retries: 3
109
+ },
110
+ headers: [
111
+ {
112
+ name: "X-Id",
113
+ value: "1"
114
+ },
115
+ {
116
+ name: "X-Team",
117
+ value: null
118
+ }
119
+ ],
120
+ payload: null
121
+ });
122
+ });
123
+ it("stringifies the value of a JSON field with two spaces of indent", ()=>{
124
+ const data = jsonSchemaValueToFormData(SCHEMA, {
125
+ payload: {
126
+ a: [
127
+ 1,
128
+ 2
129
+ ]
130
+ }
131
+ });
132
+ expect(data.payload).toBe('{\n "a": [\n 1,\n 2\n ]\n}');
133
+ });
134
+ it("stringifies a JSON field's default when nothing is stored", ()=>{
135
+ const schema = {
136
+ type: "object",
137
+ properties: {
138
+ payload: {
139
+ default: {
140
+ a: 1
141
+ }
142
+ }
143
+ }
144
+ };
145
+ expect(jsonSchemaValueToFormData(schema, {}).payload).toBe('{\n "a": 1\n}');
146
+ });
147
+ it("uses a default object when the nested object is not stored", ()=>{
148
+ const schema = {
149
+ type: "object",
150
+ properties: {
151
+ auth: {
152
+ type: "object",
153
+ properties: {
154
+ user: {
155
+ type: "string"
156
+ }
157
+ },
158
+ default: {
159
+ user: "bot"
160
+ }
161
+ }
162
+ }
163
+ };
164
+ expect(jsonSchemaValueToFormData(schema, {})).toEqual({
165
+ auth: {
166
+ user: "bot"
167
+ }
168
+ });
169
+ });
170
+ it("treats a value that is not an object, or a wrong list value, as empty", ()=>{
171
+ expect(jsonSchemaValueToFormData(SCHEMA, null).labels).toEqual([]);
172
+ expect(jsonSchemaValueToFormData(SCHEMA, "text").labels).toEqual([]);
173
+ expect(jsonSchemaValueToFormData(SCHEMA, [
174
+ 1
175
+ ]).headers).toEqual([]);
176
+ expect(jsonSchemaValueToFormData(SCHEMA, {
177
+ labels: "a",
178
+ headers: "b"
179
+ })).toMatchObject({
180
+ labels: [],
181
+ headers: []
182
+ });
183
+ });
184
+ it("returns no data for a schema that is not an object", ()=>{
185
+ expect(jsonSchemaValueToFormData({
186
+ type: "string"
187
+ }, "x")).toEqual({});
188
+ expect(jsonSchemaValueToFormData({}, {
189
+ a: 1
190
+ })).toEqual({});
191
+ });
192
+ it("does not crash on a property that is not a schema", ()=>{
193
+ const properties = {
194
+ broken: null
195
+ };
196
+ expect(jsonSchemaValueToFormData({
197
+ type: "object",
198
+ properties
199
+ }, {
200
+ broken: 1
201
+ })).toEqual({
202
+ broken: "1"
203
+ });
204
+ });
205
+ });
206
+
207
+ //# sourceMappingURL=jsonSchemaValueToFormData.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/formModel/jsonSchema/jsonSchemaValueToFormData.test.js","sources":["../../../../src/features/formModel/jsonSchema/jsonSchemaValueToFormData.test.ts"],"sourcesContent":["import { describe } from \"vitest\";\nimport { expect } from \"vitest\";\nimport { it } from \"vitest\";\nimport type { JsonSchema } from \"./JsonSchema.js\";\nimport { jsonSchemaValueToFormData } from \"./jsonSchemaValueToFormData.js\";\n\nconst SCHEMA: JsonSchema = {\n type: \"object\",\n properties: {\n url: { type: \"string\" },\n method: { type: \"string\", enum: [\"GET\", \"POST\"], default: \"POST\" },\n timeout: { type: \"integer\" },\n enabled: { type: \"boolean\" },\n labels: { type: \"array\", items: { type: \"string\" } },\n auth: {\n type: \"object\",\n properties: { user: { type: \"string\" }, retries: { type: \"integer\", default: 3 } }\n },\n headers: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: { name: { type: \"string\" }, value: { type: \"string\" } }\n }\n },\n payload: {}\n }\n};\n\ndescribe(\"jsonSchemaValueToFormData\", () => {\n it(\"fills every property of an empty value with its default, null or an empty list\", () => {\n expect(jsonSchemaValueToFormData(SCHEMA, {})).toEqual({\n url: null,\n method: \"POST\",\n timeout: null,\n enabled: null,\n labels: [],\n auth: { user: null, retries: 3 },\n headers: [],\n payload: null\n });\n });\n\n it(\"keeps the stored scalars, lists and nested values\", () => {\n const stored = {\n url: \"https://a.test\",\n method: \"GET\",\n timeout: 30,\n enabled: false,\n labels: [\"a\", \"b\"],\n auth: { user: \"ana\" },\n headers: [{ name: \"X-Id\", value: \"1\" }, { name: \"X-Team\" }]\n };\n\n expect(jsonSchemaValueToFormData(SCHEMA, stored)).toEqual({\n url: \"https://a.test\",\n method: \"GET\",\n timeout: 30,\n enabled: false,\n labels: [\"a\", \"b\"],\n auth: { user: \"ana\", retries: 3 },\n headers: [\n { name: \"X-Id\", value: \"1\" },\n { name: \"X-Team\", value: null }\n ],\n payload: null\n });\n });\n\n it(\"stringifies the value of a JSON field with two spaces of indent\", () => {\n const data = jsonSchemaValueToFormData(SCHEMA, { payload: { a: [1, 2] } });\n\n expect(data.payload).toBe('{\\n \"a\": [\\n 1,\\n 2\\n ]\\n}');\n });\n\n it(\"stringifies a JSON field's default when nothing is stored\", () => {\n const schema: JsonSchema = {\n type: \"object\",\n properties: { payload: { default: { a: 1 } } }\n };\n\n expect(jsonSchemaValueToFormData(schema, {}).payload).toBe('{\\n \"a\": 1\\n}');\n });\n\n it(\"uses a default object when the nested object is not stored\", () => {\n const schema: JsonSchema = {\n type: \"object\",\n properties: {\n auth: {\n type: \"object\",\n properties: { user: { type: \"string\" } },\n default: { user: \"bot\" }\n }\n }\n };\n\n expect(jsonSchemaValueToFormData(schema, {})).toEqual({ auth: { user: \"bot\" } });\n });\n\n it(\"treats a value that is not an object, or a wrong list value, as empty\", () => {\n expect(jsonSchemaValueToFormData(SCHEMA, null).labels).toEqual([]);\n expect(jsonSchemaValueToFormData(SCHEMA, \"text\").labels).toEqual([]);\n expect(jsonSchemaValueToFormData(SCHEMA, [1]).headers).toEqual([]);\n expect(jsonSchemaValueToFormData(SCHEMA, { labels: \"a\", headers: \"b\" })).toMatchObject({\n labels: [],\n headers: []\n });\n });\n\n it(\"returns no data for a schema that is not an object\", () => {\n expect(jsonSchemaValueToFormData({ type: \"string\" }, \"x\")).toEqual({});\n expect(jsonSchemaValueToFormData({}, { a: 1 })).toEqual({});\n });\n\n it(\"does not crash on a property that is not a schema\", () => {\n const properties = { broken: null } as unknown as Record<string, JsonSchema>;\n\n expect(jsonSchemaValueToFormData({ type: \"object\", properties }, { broken: 1 })).toEqual({\n broken: \"1\"\n });\n });\n});\n"],"names":["SCHEMA","describe","it","expect","jsonSchemaValueToFormData","stored","data","schema","properties"],"mappings":";;AAMA,MAAMA,SAAqB;IACvB,MAAM;IACN,YAAY;QACR,KAAK;YAAE,MAAM;QAAS;QACtB,QAAQ;YAAE,MAAM;YAAU,MAAM;gBAAC;gBAAO;aAAO;YAAE,SAAS;QAAO;QACjE,SAAS;YAAE,MAAM;QAAU;QAC3B,SAAS;YAAE,MAAM;QAAU;QAC3B,QAAQ;YAAE,MAAM;YAAS,OAAO;gBAAE,MAAM;YAAS;QAAE;QACnD,MAAM;YACF,MAAM;YACN,YAAY;gBAAE,MAAM;oBAAE,MAAM;gBAAS;gBAAG,SAAS;oBAAE,MAAM;oBAAW,SAAS;gBAAE;YAAE;QACrF;QACA,SAAS;YACL,MAAM;YACN,OAAO;gBACH,MAAM;gBACN,YAAY;oBAAE,MAAM;wBAAE,MAAM;oBAAS;oBAAG,OAAO;wBAAE,MAAM;oBAAS;gBAAE;YACtE;QACJ;QACA,SAAS,CAAC;IACd;AACJ;AAEAC,SAAS,6BAA6B;IAClCC,GAAG,kFAAkF;QACjFC,OAAOC,0BAA0BJ,QAAQ,CAAC,IAAI,OAAO,CAAC;YAClD,KAAK;YACL,QAAQ;YACR,SAAS;YACT,SAAS;YACT,QAAQ,EAAE;YACV,MAAM;gBAAE,MAAM;gBAAM,SAAS;YAAE;YAC/B,SAAS,EAAE;YACX,SAAS;QACb;IACJ;IAEAE,GAAG,qDAAqD;QACpD,MAAMG,SAAS;YACX,KAAK;YACL,QAAQ;YACR,SAAS;YACT,SAAS;YACT,QAAQ;gBAAC;gBAAK;aAAI;YAClB,MAAM;gBAAE,MAAM;YAAM;YACpB,SAAS;gBAAC;oBAAE,MAAM;oBAAQ,OAAO;gBAAI;gBAAG;oBAAE,MAAM;gBAAS;aAAE;QAC/D;QAEAF,OAAOC,0BAA0BJ,QAAQK,SAAS,OAAO,CAAC;YACtD,KAAK;YACL,QAAQ;YACR,SAAS;YACT,SAAS;YACT,QAAQ;gBAAC;gBAAK;aAAI;YAClB,MAAM;gBAAE,MAAM;gBAAO,SAAS;YAAE;YAChC,SAAS;gBACL;oBAAE,MAAM;oBAAQ,OAAO;gBAAI;gBAC3B;oBAAE,MAAM;oBAAU,OAAO;gBAAK;aACjC;YACD,SAAS;QACb;IACJ;IAEAH,GAAG,mEAAmE;QAClE,MAAMI,OAAOF,0BAA0BJ,QAAQ;YAAE,SAAS;gBAAE,GAAG;oBAAC;oBAAG;iBAAE;YAAC;QAAE;QAExEG,OAAOG,KAAK,OAAO,EAAE,IAAI,CAAC;IAC9B;IAEAJ,GAAG,6DAA6D;QAC5D,MAAMK,SAAqB;YACvB,MAAM;YACN,YAAY;gBAAE,SAAS;oBAAE,SAAS;wBAAE,GAAG;oBAAE;gBAAE;YAAE;QACjD;QAEAJ,OAAOC,0BAA0BG,QAAQ,CAAC,GAAG,OAAO,EAAE,IAAI,CAAC;IAC/D;IAEAL,GAAG,8DAA8D;QAC7D,MAAMK,SAAqB;YACvB,MAAM;YACN,YAAY;gBACR,MAAM;oBACF,MAAM;oBACN,YAAY;wBAAE,MAAM;4BAAE,MAAM;wBAAS;oBAAE;oBACvC,SAAS;wBAAE,MAAM;oBAAM;gBAC3B;YACJ;QACJ;QAEAJ,OAAOC,0BAA0BG,QAAQ,CAAC,IAAI,OAAO,CAAC;YAAE,MAAM;gBAAE,MAAM;YAAM;QAAE;IAClF;IAEAL,GAAG,yEAAyE;QACxEC,OAAOC,0BAA0BJ,QAAQ,MAAM,MAAM,EAAE,OAAO,CAAC,EAAE;QACjEG,OAAOC,0BAA0BJ,QAAQ,QAAQ,MAAM,EAAE,OAAO,CAAC,EAAE;QACnEG,OAAOC,0BAA0BJ,QAAQ;YAAC;SAAE,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;QACjEG,OAAOC,0BAA0BJ,QAAQ;YAAE,QAAQ;YAAK,SAAS;QAAI,IAAI,aAAa,CAAC;YACnF,QAAQ,EAAE;YACV,SAAS,EAAE;QACf;IACJ;IAEAE,GAAG,sDAAsD;QACrDC,OAAOC,0BAA0B;YAAE,MAAM;QAAS,GAAG,MAAM,OAAO,CAAC,CAAC;QACpED,OAAOC,0BAA0B,CAAC,GAAG;YAAE,GAAG;QAAE,IAAI,OAAO,CAAC,CAAC;IAC7D;IAEAF,GAAG,qDAAqD;QACpD,MAAMM,aAAa;YAAE,QAAQ;QAAK;QAElCL,OAAOC,0BAA0B;YAAE,MAAM;YAAUI;QAAW,GAAG;YAAE,QAAQ;QAAE,IAAI,OAAO,CAAC;YACrF,QAAQ;QACZ;IACJ;AACJ"}
@@ -0,0 +1,2 @@
1
+ import type { JsonSchema } from "./JsonSchema.js";
2
+ export declare const normalizeJsonSchema: (schema: unknown) => JsonSchema;
@@ -0,0 +1,10 @@
1
+ const normalizeJsonSchema = (schema)=>{
2
+ if ("object" == typeof schema && null !== schema && !Array.isArray(schema)) {
3
+ const normalized = schema;
4
+ return normalized;
5
+ }
6
+ return {};
7
+ };
8
+ export { normalizeJsonSchema };
9
+
10
+ //# sourceMappingURL=normalizeJsonSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/formModel/jsonSchema/normalizeJsonSchema.js","sources":["../../../../src/features/formModel/jsonSchema/normalizeJsonSchema.ts"],"sourcesContent":["import type { JsonSchema } from \"./JsonSchema.js\";\n\n/*\n * A schema value that is not an object (a stored `null`, a boolean schema) has no keywords the\n * adapter can read, so it becomes the empty schema, which renders as a JSON text field.\n */\nexport const normalizeJsonSchema = (schema: unknown): JsonSchema => {\n if (typeof schema === \"object\" && schema !== null && !Array.isArray(schema)) {\n const normalized = schema as JsonSchema;\n return normalized;\n }\n return {};\n};\n"],"names":["normalizeJsonSchema","schema","Array","normalized"],"mappings":"AAMO,MAAMA,sBAAsB,CAACC;IAChC,IAAI,AAAkB,YAAlB,OAAOA,UAAuBA,AAAW,SAAXA,UAAmB,CAACC,MAAM,OAAO,CAACD,SAAS;QACzE,MAAME,aAAaF;QACnB,OAAOE;IACX;IACA,OAAO,CAAC;AACZ"}
@@ -16,6 +16,7 @@ import "../../base/Base/FieldRenderers/RadioButtonsRenderer.js";
16
16
  import "../../base/Base/FieldRenderers/CheckboxesRenderer.js";
17
17
  import "../../base/Base/FieldRenderers/DateTimeRenderer.js";
18
18
  import "../../base/Base/FieldRenderers/DateTimeInputsRenderer.js";
19
+ import "../../base/Base/FieldRenderers/BirthdayInputRenderer.js";
19
20
  import "../../base/Base/FieldRenderers/HiddenRenderer.js";
20
21
  import "../../base/Base/FieldRenderers/FilePickerRenderer.js";
21
22
  import "../../base/Base/FieldRenderers/CodeEditorRenderer.js";
@@ -16,6 +16,7 @@ import "../../base/Base/FieldRenderers/RadioButtonsRenderer.js";
16
16
  import "../../base/Base/FieldRenderers/CheckboxesRenderer.js";
17
17
  import "../../base/Base/FieldRenderers/DateTimeRenderer.js";
18
18
  import "../../base/Base/FieldRenderers/DateTimeInputsRenderer.js";
19
+ import "../../base/Base/FieldRenderers/BirthdayInputRenderer.js";
19
20
  import "../../base/Base/FieldRenderers/HiddenRenderer.js";
20
21
  import "../../base/Base/FieldRenderers/FilePickerRenderer.js";
21
22
  import "../../base/Base/FieldRenderers/CodeEditorRenderer.js";
@@ -6,6 +6,7 @@ declare class NotificationsImpl implements Abstraction.Interface {
6
6
  notify(input: INotificationInput): void;
7
7
  success(input: INotificationInput): void;
8
8
  warning(input: INotificationInput): void;
9
+ error(input: INotificationInput): void;
9
10
  getNotifications(): INotification[];
10
11
  remove(id: string): void;
11
12
  private push;
@@ -15,6 +15,9 @@ class NotificationsImpl {
15
15
  warning(input) {
16
16
  this.push(input, "warning");
17
17
  }
18
+ error(input) {
19
+ this.push(input, "error");
20
+ }
18
21
  getNotifications() {
19
22
  return this.notifications;
20
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"features/notifications/Notifications.js","sources":["../../../src/features/notifications/Notifications.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport {\n Notifications as Abstraction,\n type INotification,\n type INotificationInput,\n type NotificationVariant\n} from \"./abstractions.js\";\n\nclass NotificationsImpl implements Abstraction.Interface {\n private notifications: INotification[] = [];\n private counter = 0;\n\n constructor() {\n makeAutoObservable(this);\n }\n\n notify(input: INotificationInput): void {\n this.push(input, \"default\");\n }\n\n success(input: INotificationInput): void {\n this.push(input, \"success\");\n }\n\n warning(input: INotificationInput): void {\n this.push(input, \"warning\");\n }\n\n getNotifications(): INotification[] {\n return this.notifications;\n }\n\n remove(id: string): void {\n this.notifications = this.notifications.filter(notification => notification.id !== id);\n }\n\n private push(input: INotificationInput, variant: NotificationVariant): void {\n this.counter++;\n this.notifications.push({ id: `notification-${this.counter}`, variant, ...input });\n }\n}\n\nexport const Notifications = Abstraction.createImplementation({\n implementation: NotificationsImpl,\n dependencies: []\n});\n"],"names":["NotificationsImpl","makeAutoObservable","input","id","notification","variant","Notifications","Abstraction"],"mappings":";;AAQA,MAAMA;IAIF,aAAc;aAHN,aAAa,GAAoB,EAAE;aACnC,OAAO,GAAG;QAGdC,mBAAmB,IAAI;IAC3B;IAEA,OAAOC,KAAyB,EAAQ;QACpC,IAAI,CAAC,IAAI,CAACA,OAAO;IACrB;IAEA,QAAQA,KAAyB,EAAQ;QACrC,IAAI,CAAC,IAAI,CAACA,OAAO;IACrB;IAEA,QAAQA,KAAyB,EAAQ;QACrC,IAAI,CAAC,IAAI,CAACA,OAAO;IACrB;IAEA,mBAAoC;QAChC,OAAO,IAAI,CAAC,aAAa;IAC7B;IAEA,OAAOC,EAAU,EAAQ;QACrB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAACC,CAAAA,eAAgBA,aAAa,EAAE,KAAKD;IACvF;IAEQ,KAAKD,KAAyB,EAAEG,OAA4B,EAAQ;QACxE,IAAI,CAAC,OAAO;QACZ,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,EAAE;YAAEA;YAAS,GAAGH,KAAK;QAAC;IACpF;AACJ;AAEO,MAAMI,8BAAgBC,cAAAA,oBAAgC,CAAC;IAC1D,gBAAgBP;IAChB,cAAc,EAAE;AACpB"}
1
+ {"version":3,"file":"features/notifications/Notifications.js","sources":["../../../src/features/notifications/Notifications.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport {\n Notifications as Abstraction,\n type INotification,\n type INotificationInput,\n type NotificationVariant\n} from \"./abstractions.js\";\n\nclass NotificationsImpl implements Abstraction.Interface {\n private notifications: INotification[] = [];\n private counter = 0;\n\n constructor() {\n makeAutoObservable(this);\n }\n\n notify(input: INotificationInput): void {\n this.push(input, \"default\");\n }\n\n success(input: INotificationInput): void {\n this.push(input, \"success\");\n }\n\n warning(input: INotificationInput): void {\n this.push(input, \"warning\");\n }\n\n error(input: INotificationInput): void {\n this.push(input, \"error\");\n }\n\n getNotifications(): INotification[] {\n return this.notifications;\n }\n\n remove(id: string): void {\n this.notifications = this.notifications.filter(notification => notification.id !== id);\n }\n\n private push(input: INotificationInput, variant: NotificationVariant): void {\n this.counter++;\n this.notifications.push({ id: `notification-${this.counter}`, variant, ...input });\n }\n}\n\nexport const Notifications = Abstraction.createImplementation({\n implementation: NotificationsImpl,\n dependencies: []\n});\n"],"names":["NotificationsImpl","makeAutoObservable","input","id","notification","variant","Notifications","Abstraction"],"mappings":";;AAQA,MAAMA;IAIF,aAAc;aAHN,aAAa,GAAoB,EAAE;aACnC,OAAO,GAAG;QAGdC,mBAAmB,IAAI;IAC3B;IAEA,OAAOC,KAAyB,EAAQ;QACpC,IAAI,CAAC,IAAI,CAACA,OAAO;IACrB;IAEA,QAAQA,KAAyB,EAAQ;QACrC,IAAI,CAAC,IAAI,CAACA,OAAO;IACrB;IAEA,QAAQA,KAAyB,EAAQ;QACrC,IAAI,CAAC,IAAI,CAACA,OAAO;IACrB;IAEA,MAAMA,KAAyB,EAAQ;QACnC,IAAI,CAAC,IAAI,CAACA,OAAO;IACrB;IAEA,mBAAoC;QAChC,OAAO,IAAI,CAAC,aAAa;IAC7B;IAEA,OAAOC,EAAU,EAAQ;QACrB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAACC,CAAAA,eAAgBA,aAAa,EAAE,KAAKD;IACvF;IAEQ,KAAKD,KAAyB,EAAEG,OAA4B,EAAQ;QACxE,IAAI,CAAC,OAAO;QACZ,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,EAAE;YAAEA;YAAS,GAAGH,KAAK;QAAC;IACpF;AACJ;AAEO,MAAMI,8BAAgBC,cAAAA,oBAAgC,CAAC;IAC1D,gBAAgBP;IAChB,cAAc,EAAE;AACpB"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,106 @@
1
+ import { beforeEach, describe, expect, it } from "vitest";
2
+ import { Container } from "@webiny/di";
3
+ import { NotificationsFeature } from "./feature.js";
4
+ import { Notifications } from "./abstractions.js";
5
+ const createNotifications = ()=>{
6
+ const container = new Container();
7
+ NotificationsFeature.register(container);
8
+ return container.resolve(Notifications);
9
+ };
10
+ describe("Notifications", ()=>{
11
+ let notifications;
12
+ beforeEach(()=>{
13
+ notifications = createNotifications();
14
+ });
15
+ it("queues a plain notification with exactly its own fields", ()=>{
16
+ notifications.notify({
17
+ title: "Saved",
18
+ description: "All good."
19
+ });
20
+ expect(notifications.getNotifications()).toEqual([
21
+ {
22
+ id: "notification-1",
23
+ variant: "default",
24
+ title: "Saved",
25
+ description: "All good."
26
+ }
27
+ ]);
28
+ });
29
+ it("queues success and warning notifications with their variant", ()=>{
30
+ notifications.success({
31
+ title: "Done"
32
+ });
33
+ notifications.warning({
34
+ title: "Careful"
35
+ });
36
+ const queued = notifications.getNotifications();
37
+ expect(queued.map((item)=>item.variant)).toEqual([
38
+ "success",
39
+ "warning"
40
+ ]);
41
+ expect(queued.map((item)=>item.id)).toEqual([
42
+ "notification-1",
43
+ "notification-2"
44
+ ]);
45
+ });
46
+ it("queues an error notification with the error variant", ()=>{
47
+ notifications.error({
48
+ title: "Failed",
49
+ description: "Try again."
50
+ });
51
+ expect(notifications.getNotifications()).toEqual([
52
+ {
53
+ id: "notification-1",
54
+ variant: "error",
55
+ title: "Failed",
56
+ description: "Try again."
57
+ }
58
+ ]);
59
+ });
60
+ it("keeps link, duration, position and dismissible on the queued notification", ()=>{
61
+ notifications.success({
62
+ title: "Requested",
63
+ description: "Spring launch",
64
+ link: {
65
+ label: "Open Content Reviews",
66
+ url: "/cms/content-reviews"
67
+ },
68
+ duration: 8000,
69
+ position: "bottom-right",
70
+ dismissible: true
71
+ });
72
+ expect(notifications.getNotifications()).toEqual([
73
+ {
74
+ id: "notification-1",
75
+ variant: "success",
76
+ title: "Requested",
77
+ description: "Spring launch",
78
+ link: {
79
+ label: "Open Content Reviews",
80
+ url: "/cms/content-reviews"
81
+ },
82
+ duration: 8000,
83
+ position: "bottom-right",
84
+ dismissible: true
85
+ }
86
+ ]);
87
+ });
88
+ it("removes a notification by id and leaves the others", ()=>{
89
+ notifications.notify({
90
+ title: "One"
91
+ });
92
+ notifications.error({
93
+ title: "Two"
94
+ });
95
+ notifications.warning({
96
+ title: "Three"
97
+ });
98
+ notifications.remove("notification-2");
99
+ expect(notifications.getNotifications().map((item)=>item.title)).toEqual([
100
+ "One",
101
+ "Three"
102
+ ]);
103
+ });
104
+ });
105
+
106
+ //# sourceMappingURL=Notifications.test.js.map