@anzusystems/common-admin 2.0.0-rc.1 → 2.0.0-rc.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 (1593) hide show
  1. package/README.md +5 -1
  2. package/dist/AnzuSystemsCommonAdmin.d.ts +51 -32
  3. package/dist/AnzuSystemsCommonAdmin.js +7 -8
  4. package/dist/AnzuSystemsCommonAdmin.js.map +1 -1
  5. package/dist/_virtual/_plugin-vue_export-helper.js +1 -2
  6. package/dist/_virtual/_rolldown/runtime.js +1 -2
  7. package/dist/assets/dam-meta-icons/2k.js +1 -2
  8. package/dist/assets/dam-meta-icons/4k.js +1 -2
  9. package/dist/assets/dam-meta-icons/8k.js +1 -2
  10. package/dist/assets/dam-meta-icons/fhd.js +1 -2
  11. package/dist/assets/dam-meta-icons/low.js +1 -2
  12. package/dist/assets/dam-meta-icons/qhd.js +1 -2
  13. package/dist/assets/dam-meta-icons/rss.js +1 -2
  14. package/dist/assets/dam-meta-icons/slot.js +1 -2
  15. package/dist/assets/dam-meta-icons/tts.js +1 -2
  16. package/dist/assets/image/placeholder16x9.js +1 -2
  17. package/dist/common-admin.css +1 -1
  18. package/dist/common-admin.js +299 -297
  19. package/dist/domains/anzuUser/api/anzuUserApi.d.ts +9 -12
  20. package/dist/domains/anzuUser/api/anzuUserApi.js +9 -10
  21. package/dist/domains/anzuUser/api/anzuUserApi.js.map +1 -1
  22. package/dist/domains/anzuUser/components/AAnzuUserDatatable.js +1 -2
  23. package/dist/domains/anzuUser/components/AAnzuUserDatatable.js.map +1 -1
  24. package/dist/domains/anzuUser/components/AAnzuUserDatatable.vue.d.ts +38 -44
  25. package/dist/domains/anzuUser/components/AAnzuUserDatatable.vue_vue_type_script_setup_true_lang.js +46 -47
  26. package/dist/domains/anzuUser/components/AAnzuUserDatatable.vue_vue_type_script_setup_true_lang.js.map +1 -1
  27. package/dist/domains/anzuUser/components/AAnzuUserFilter.js +1 -2
  28. package/dist/domains/anzuUser/components/AAnzuUserFilter.js.map +1 -1
  29. package/dist/domains/anzuUser/components/AAnzuUserFilter.vue.d.ts +12 -13
  30. package/dist/domains/anzuUser/components/AAnzuUserFilter.vue_vue_type_script_setup_true_lang.js +16 -17
  31. package/dist/domains/anzuUser/components/AAnzuUserFilter.vue_vue_type_script_setup_true_lang.js.map +1 -1
  32. package/dist/domains/anzuUser/components/AAnzuUserForm.js +1 -2
  33. package/dist/domains/anzuUser/components/AAnzuUserForm.js.map +1 -1
  34. package/dist/domains/anzuUser/components/AAnzuUserForm.vue.d.ts +18 -20
  35. package/dist/domains/anzuUser/components/AAnzuUserForm.vue_vue_type_script_setup_true_lang.js +45 -46
  36. package/dist/domains/anzuUser/components/AAnzuUserForm.vue_vue_type_script_setup_true_lang.js.map +1 -1
  37. package/dist/domains/anzuUser/components/AAnzuUserRoleAutocomplete.js +1 -2
  38. package/dist/domains/anzuUser/components/AAnzuUserRoleAutocomplete.js.map +1 -1
  39. package/dist/domains/anzuUser/components/AAnzuUserRoleAutocomplete.vue_vue_type_script_setup_true_lang.js +1 -2
  40. package/dist/domains/anzuUser/components/AAnzuUserRoleAutocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
  41. package/dist/domains/anzuUser/components/AUserBulkActionDialog.js +1 -2
  42. package/dist/domains/anzuUser/components/AUserBulkActionDialog.js.map +1 -1
  43. package/dist/domains/anzuUser/components/AUserBulkActionDialog.vue_vue_type_script_setup_true_lang.js +88 -89
  44. package/dist/domains/anzuUser/components/AUserBulkActionDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
  45. package/dist/domains/anzuUser/components/AUserCopyPermissionsDialog.js +1 -2
  46. package/dist/domains/anzuUser/components/AUserCopyPermissionsDialog.js.map +1 -1
  47. package/dist/domains/anzuUser/components/AUserCopyPermissionsDialog.vue.d.ts +2 -3
  48. package/dist/domains/anzuUser/components/AUserCopyPermissionsDialog.vue_vue_type_script_setup_true_lang.js +13 -14
  49. package/dist/domains/anzuUser/components/AUserCopyPermissionsDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
  50. package/dist/domains/anzuUser/components/AUserCreateInSystemButton.js +1 -2
  51. package/dist/domains/anzuUser/components/AUserCreateInSystemButton.js.map +1 -1
  52. package/dist/domains/anzuUser/components/AUserCreateInSystemButton.vue.d.ts +9 -15
  53. package/dist/domains/anzuUser/components/AUserCreateInSystemButton.vue_vue_type_script_setup_true_lang.js +19 -20
  54. package/dist/domains/anzuUser/components/AUserCreateInSystemButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
  55. package/dist/domains/anzuUser/components/AUserEnabledSwitch.js +1 -2
  56. package/dist/domains/anzuUser/components/AUserEnabledSwitch.js.map +1 -1
  57. package/dist/domains/anzuUser/components/AUserEnabledSwitch.vue.d.ts +8 -7
  58. package/dist/domains/anzuUser/components/AUserEnabledSwitch.vue_vue_type_script_setup_true_lang.js +1 -2
  59. package/dist/domains/anzuUser/components/AUserEnabledSwitch.vue_vue_type_script_setup_true_lang.js.map +1 -1
  60. package/dist/domains/anzuUser/components/AUserManageButton.js +1 -2
  61. package/dist/domains/anzuUser/components/AUserManageButton.js.map +1 -1
  62. package/dist/domains/anzuUser/components/AUserManageButton.vue.d.ts +0 -1
  63. package/dist/domains/anzuUser/components/AUserManageButton.vue_vue_type_script_setup_true_lang.js +1 -2
  64. package/dist/domains/anzuUser/components/AUserManageButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
  65. package/dist/domains/anzuUser/components/AUserMetadataForm.js +1 -2
  66. package/dist/domains/anzuUser/components/AUserMetadataForm.js.map +1 -1
  67. package/dist/domains/anzuUser/components/AUserMetadataForm.vue.d.ts +8 -9
  68. package/dist/domains/anzuUser/components/AUserMetadataForm.vue_vue_type_script_setup_true_lang.js +21 -22
  69. package/dist/domains/anzuUser/components/AUserMetadataForm.vue_vue_type_script_setup_true_lang.js.map +1 -1
  70. package/dist/domains/anzuUser/components/AUserMetadataRepairDialog.js +1 -2
  71. package/dist/domains/anzuUser/components/AUserMetadataRepairDialog.js.map +1 -1
  72. package/dist/domains/anzuUser/components/AUserMetadataRepairDialog.vue_vue_type_script_setup_true_lang.js +59 -60
  73. package/dist/domains/anzuUser/components/AUserMetadataRepairDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
  74. package/dist/domains/anzuUser/components/AUserOtherSystemsTable.js +1 -2
  75. package/dist/domains/anzuUser/components/AUserOtherSystemsTable.js.map +1 -1
  76. package/dist/domains/anzuUser/components/AUserOtherSystemsTable.vue.d.ts +1 -2
  77. package/dist/domains/anzuUser/components/AUserOtherSystemsTable.vue_vue_type_script_setup_true_lang.js +1 -2
  78. package/dist/domains/anzuUser/components/AUserOtherSystemsTable.vue_vue_type_script_setup_true_lang.js.map +1 -1
  79. package/dist/domains/anzuUser/components/AUserSystemOverview.js +1 -2
  80. package/dist/domains/anzuUser/components/AUserSystemOverview.js.map +1 -1
  81. package/dist/domains/anzuUser/components/AUserSystemOverview.vue_vue_type_script_setup_true_lang.js +231 -232
  82. package/dist/domains/anzuUser/components/AUserSystemOverview.vue_vue_type_script_setup_true_lang.js.map +1 -1
  83. package/dist/domains/anzuUser/components/AUserSystemPanel.js +1 -2
  84. package/dist/domains/anzuUser/components/AUserSystemPanel.js.map +1 -1
  85. package/dist/domains/anzuUser/components/AUserSystemPanel.vue.d.ts +2 -2
  86. package/dist/domains/anzuUser/components/AUserSystemPanel.vue_vue_type_script_setup_true_lang.js +16 -17
  87. package/dist/domains/anzuUser/components/AUserSystemPanel.vue_vue_type_script_setup_true_lang.js.map +1 -1
  88. package/dist/domains/anzuUser/components/AUserSystemStatusChip.js +1 -2
  89. package/dist/domains/anzuUser/components/AUserSystemStatusChip.js.map +1 -1
  90. package/dist/domains/anzuUser/components/AUserSystemStatusChip.vue_vue_type_script_setup_true_lang.js +1 -2
  91. package/dist/domains/anzuUser/components/AUserSystemStatusChip.vue_vue_type_script_setup_true_lang.js.map +1 -1
  92. package/dist/domains/anzuUser/components/AUserTabsShell.js +1 -2
  93. package/dist/domains/anzuUser/components/AUserTabsShell.js.map +1 -1
  94. package/dist/domains/anzuUser/components/AUserTabsShell.vue.d.ts +17 -22
  95. package/dist/domains/anzuUser/components/AUserTabsShell.vue_vue_type_script_setup_true_lang.js +67 -68
  96. package/dist/domains/anzuUser/components/AUserTabsShell.vue_vue_type_script_setup_true_lang.js.map +1 -1
  97. package/dist/domains/anzuUser/composables/anzuUserActions.d.ts +11 -9
  98. package/dist/domains/anzuUser/composables/anzuUserActions.js +26 -23
  99. package/dist/domains/anzuUser/composables/anzuUserActions.js.map +1 -1
  100. package/dist/domains/anzuUser/composables/anzuUserValidations.d.ts +4 -6
  101. package/dist/domains/anzuUser/composables/anzuUserValidations.js +1 -2
  102. package/dist/domains/anzuUser/composables/anzuUserValidations.js.map +1 -1
  103. package/dist/domains/anzuUser/composables/cachedAnzuUsers.d.ts +3 -3
  104. package/dist/domains/anzuUser/composables/cachedAnzuUsers.js +1 -2
  105. package/dist/domains/anzuUser/composables/cachedAnzuUsers.js.map +1 -1
  106. package/dist/domains/anzuUser/composables/userCrossSystemSearch.d.ts +2 -4
  107. package/dist/domains/anzuUser/composables/userCrossSystemSearch.js +21 -22
  108. package/dist/domains/anzuUser/composables/userCrossSystemSearch.js.map +1 -1
  109. package/dist/domains/anzuUser/composables/userCrossSystemWrites.d.ts +5 -11
  110. package/dist/domains/anzuUser/composables/userCrossSystemWrites.js +46 -47
  111. package/dist/domains/anzuUser/composables/userCrossSystemWrites.js.map +1 -1
  112. package/dist/domains/anzuUser/composables/userSystemDescriptor.d.ts +33 -57
  113. package/dist/domains/anzuUser/composables/userSystemDescriptor.js +1 -2
  114. package/dist/domains/anzuUser/composables/userSystemDescriptor.js.map +1 -1
  115. package/dist/domains/anzuUser/composables/userSystemProbe.d.ts +7 -27
  116. package/dist/domains/anzuUser/composables/userSystemProbe.js +22 -23
  117. package/dist/domains/anzuUser/composables/userSystemProbe.js.map +1 -1
  118. package/dist/domains/anzuUser/factory/AnzuUserFactory.js +6 -7
  119. package/dist/domains/anzuUser/filter/anzuUserFilter.d.ts +6 -16
  120. package/dist/domains/anzuUser/filter/anzuUserFilter.js +1 -2
  121. package/dist/domains/anzuUser/filter/anzuUserFilter.js.map +1 -1
  122. package/dist/domains/anzuUser/store/anzuUserStore.d.ts +1 -5
  123. package/dist/domains/anzuUser/store/anzuUserStore.js +1 -2
  124. package/dist/domains/anzuUser/store/anzuUserStore.js.map +1 -1
  125. package/dist/domains/anzuUser/store/userCrossSystemStore.d.ts +3 -14
  126. package/dist/domains/anzuUser/store/userCrossSystemStore.js +1 -2
  127. package/dist/domains/anzuUser/store/userCrossSystemStore.js.map +1 -1
  128. package/dist/domains/anzuUser/utils/userMetadataDiff.d.ts +7 -19
  129. package/dist/domains/anzuUser/utils/userMetadataDiff.js +1 -2
  130. package/dist/domains/anzuUser/utils/userMetadataDiff.js.map +1 -1
  131. package/dist/domains/anzuUser/utils/userSystemState.d.ts +12 -30
  132. package/dist/domains/anzuUser/utils/userSystemState.js +1 -2
  133. package/dist/domains/anzuUser/utils/userSystemState.js.map +1 -1
  134. package/dist/domains/anzuUser/utils/userTabs.d.ts +1 -3
  135. package/dist/domains/anzuUser/utils/userTabs.js +1 -2
  136. package/dist/domains/anzuUser/utils/userTabs.js.map +1 -1
  137. package/dist/domains/api/composables/defineApiClient.d.ts +4 -8
  138. package/dist/domains/api/composables/defineApiClient.js +1 -2
  139. package/dist/domains/api/composables/defineApiClient.js.map +1 -1
  140. package/dist/domains/api/composables/pagination.js +10 -11
  141. package/dist/domains/api/composables/request.d.ts +18 -48
  142. package/dist/domains/api/composables/request.js +1 -2
  143. package/dist/domains/api/composables/request.js.map +1 -1
  144. package/dist/domains/api/composables/useApiFetchByIds.d.ts +7 -21
  145. package/dist/domains/api/composables/useApiFetchByIds.js +29 -30
  146. package/dist/domains/api/composables/useApiFetchByIds.js.map +1 -1
  147. package/dist/domains/api/composables/useApiFetchItems.d.ts +18 -57
  148. package/dist/domains/api/composables/useApiFetchItems.js +15 -16
  149. package/dist/domains/api/composables/useApiFetchItems.js.map +1 -1
  150. package/dist/domains/api/composables/useApiFetchList.d.ts +7 -23
  151. package/dist/domains/api/composables/useApiFetchList.js +35 -36
  152. package/dist/domains/api/composables/useApiFetchList.js.map +1 -1
  153. package/dist/domains/api/composables/useApiFetchListBatch.d.ts +5 -22
  154. package/dist/domains/api/composables/useApiFetchListBatch.js +36 -37
  155. package/dist/domains/api/composables/useApiFetchListBatch.js.map +1 -1
  156. package/dist/domains/api/composables/useApiQueryBuilder.js +12 -13
  157. package/dist/domains/api/composables/useApiQueryBuilder.js.map +1 -1
  158. package/dist/domains/api/composables/useApiRequest.d.ts +16 -39
  159. package/dist/domains/api/composables/useApiRequest.js +21 -22
  160. package/dist/domains/api/composables/useApiRequest.js.map +1 -1
  161. package/dist/domains/api/types/SortOrder.js +1 -2
  162. package/dist/domains/api/utils/apiErrors.d.ts +28 -55
  163. package/dist/domains/api/utils/apiErrors.js +20 -21
  164. package/dist/domains/api/utils/apiErrors.js.map +1 -1
  165. package/dist/domains/api/utils/apiHelper.js +4 -5
  166. package/dist/domains/api/utils/listBody.d.ts +22 -43
  167. package/dist/domains/api/utils/listBody.js +9 -10
  168. package/dist/domains/api/utils/listBody.js.map +1 -1
  169. package/dist/domains/api/utils/response.js +1 -2
  170. package/dist/domains/auth/components/Acl.js +1 -2
  171. package/dist/domains/auth/components/Acl.js.map +1 -1
  172. package/dist/domains/auth/components/Acl.vue_vue_type_script_setup_true_lang.js +1 -2
  173. package/dist/domains/auth/components/Acl.vue_vue_type_script_setup_true_lang.js.map +1 -1
  174. package/dist/domains/auth/composables/aclAllowed.d.ts +2 -3
  175. package/dist/domains/auth/composables/aclAllowed.js +6 -7
  176. package/dist/domains/auth/composables/aclAllowed.js.map +1 -1
  177. package/dist/domains/auth/composables/defineAuth.js +40 -41
  178. package/dist/domains/auth/composables/defineAuth.js.map +1 -1
  179. package/dist/domains/auth/composables/refreshSession.d.ts +10 -13
  180. package/dist/domains/auth/composables/refreshSession.js +14 -15
  181. package/dist/domains/auth/composables/refreshSession.js.map +1 -1
  182. package/dist/domains/auth/store/authStore.js +1 -2
  183. package/dist/domains/auth/valueObject/Grant.js +1 -2
  184. package/dist/domains/cached/components/ACachedChip.js +1 -2
  185. package/dist/domains/cached/components/ACachedChip.js.map +1 -1
  186. package/dist/domains/cached/components/ACachedChip.vue.d.ts +13 -11
  187. package/dist/domains/cached/components/ACachedChip.vue_vue_type_script_setup_true_lang.js +7 -8
  188. package/dist/domains/cached/components/ACachedChip.vue_vue_type_script_setup_true_lang.js.map +1 -1
  189. package/dist/domains/cached/components/ACachedUserChip.js +4 -5
  190. package/dist/domains/cached/components/ACachedUserChip.js.map +1 -1
  191. package/dist/domains/cached/components/ACachedUserChip.vue.d.ts +3 -3
  192. package/dist/domains/cached/components/ACachedUserChip.vue_vue_type_script_setup_true_lang.js +8 -9
  193. package/dist/domains/cached/components/ACachedUserChip.vue_vue_type_script_setup_true_lang.js.map +1 -1
  194. package/dist/domains/cached/composables/createCachedChip.js +1 -2
  195. package/dist/domains/cached/composables/createUserAndTimeTrackingFields.d.ts +9 -9
  196. package/dist/domains/cached/composables/createUserAndTimeTrackingFields.js +1 -2
  197. package/dist/domains/cached/composables/createUserAndTimeTrackingFields.js.map +1 -1
  198. package/dist/domains/cached/composables/defineCached.d.ts +13 -11
  199. package/dist/domains/cached/composables/defineCached.js +19 -20
  200. package/dist/domains/cached/composables/defineCached.js.map +1 -1
  201. package/dist/domains/cached/composables/useCachedItem.d.ts +7 -8
  202. package/dist/domains/cached/composables/useCachedItem.js +1 -2
  203. package/dist/domains/cached/composables/useCachedItem.js.map +1 -1
  204. package/dist/domains/collab/components/ACollabCountdown.js +1 -2
  205. package/dist/domains/collab/components/ACollabCountdown.vue_vue_type_script_setup_true_lang.js +1 -2
  206. package/dist/domains/collab/components/ACollabLockedByUser.js +1 -2
  207. package/dist/domains/collab/components/ACollabLockedByUser.js.map +1 -1
  208. package/dist/domains/collab/components/ACollabLockedByUser.vue_vue_type_script_setup_true_lang.js +8 -9
  209. package/dist/domains/collab/components/ACollabLockedByUser.vue_vue_type_script_setup_true_lang.js.map +1 -1
  210. package/dist/domains/collab/components/ACollabManagement.js +1 -2
  211. package/dist/domains/collab/components/ACollabManagement.vue_vue_type_script_setup_true_lang.js +168 -169
  212. package/dist/domains/collab/components/ACollabManagement.vue_vue_type_script_setup_true_lang.js.map +1 -1
  213. package/dist/domains/collab/composables/collabAnyDataChange.js +38 -39
  214. package/dist/domains/collab/composables/collabAnyDataChange.js.map +1 -1
  215. package/dist/domains/collab/composables/collabCurrentUserId.js +1 -2
  216. package/dist/domains/collab/composables/collabEventBus.js +1 -2
  217. package/dist/domains/collab/composables/collabField.d.ts +5 -3
  218. package/dist/domains/collab/composables/collabField.js +37 -38
  219. package/dist/domains/collab/composables/collabField.js.map +1 -1
  220. package/dist/domains/collab/composables/collabHelpers.js +1 -2
  221. package/dist/domains/collab/composables/collabInit.js +65 -62
  222. package/dist/domains/collab/composables/collabInit.js.map +1 -1
  223. package/dist/domains/collab/composables/collabRecovery.d.ts +49 -0
  224. package/dist/domains/collab/composables/collabRecovery.js +99 -0
  225. package/dist/domains/collab/composables/collabRecovery.js.map +1 -0
  226. package/dist/domains/collab/composables/collabRoom.js +125 -126
  227. package/dist/domains/collab/composables/collabRoom.js.map +1 -1
  228. package/dist/domains/collab/composables/collabState.d.ts +11 -4
  229. package/dist/domains/collab/composables/collabState.js +38 -30
  230. package/dist/domains/collab/composables/collabState.js.map +1 -1
  231. package/dist/domains/collab/composables/commonAdminCollabOptions.d.ts +4 -2
  232. package/dist/domains/collab/composables/commonAdminCollabOptions.js +5 -6
  233. package/dist/domains/collab/types/Collab.d.ts +31 -5
  234. package/dist/domains/collab/types/Collab.js +24 -13
  235. package/dist/domains/collab/types/Collab.js.map +1 -1
  236. package/dist/domains/customDataForm/components/ACustomDataForm.js +1 -2
  237. package/dist/domains/customDataForm/components/ACustomDataForm.js.map +1 -1
  238. package/dist/domains/customDataForm/components/ACustomDataForm.vue.d.ts +7 -5
  239. package/dist/domains/customDataForm/components/ACustomDataForm.vue_vue_type_script_setup_true_lang.js +26 -27
  240. package/dist/domains/customDataForm/components/ACustomDataForm.vue_vue_type_script_setup_true_lang.js.map +1 -1
  241. package/dist/domains/customDataForm/components/ACustomDataFormElement.js +1 -2
  242. package/dist/domains/customDataForm/components/ACustomDataFormElement.js.map +1 -1
  243. package/dist/domains/customDataForm/components/ACustomDataFormElement.vue_vue_type_script_setup_true_lang.js +25 -26
  244. package/dist/domains/customDataForm/components/ACustomDataFormElement.vue_vue_type_script_setup_true_lang.js.map +1 -1
  245. package/dist/domains/customDataForm/components/ACustomDataFormHiddenPart.js +1 -2
  246. package/dist/domains/customDataForm/components/ACustomDataFormHiddenPart.js.map +1 -1
  247. package/dist/domains/customDataForm/components/ACustomDataFormHiddenPart.vue.d.ts +5 -3
  248. package/dist/domains/customDataForm/components/ACustomDataFormHiddenPart.vue_vue_type_script_setup_true_lang.js +1 -2
  249. package/dist/domains/customDataForm/components/ACustomDataFormHiddenPart.vue_vue_type_script_setup_true_lang.js.map +1 -1
  250. package/dist/domains/customDataForm/composables/useCustomDataForm.js +1 -2
  251. package/dist/domains/customDataForm/composables/useCustomDataForm.js.map +1 -1
  252. package/dist/domains/customDataForm/types/CustomDataForm.d.ts +4 -1
  253. package/dist/domains/customDataForm/types/CustomDataFormElementTypes.js +1 -2
  254. package/dist/domains/dam/api/damAssetApi.d.ts +7 -7
  255. package/dist/domains/dam/api/damAssetApi.js +36 -37
  256. package/dist/domains/dam/api/damAssetApi.js.map +1 -1
  257. package/dist/domains/dam/api/damAssetLicenceApi.d.ts +1 -1
  258. package/dist/domains/dam/api/damAssetLicenceApi.js +1 -2
  259. package/dist/domains/dam/api/damAssetLicenceApi.js.map +1 -1
  260. package/dist/domains/dam/api/damConstants.js +1 -2
  261. package/dist/domains/dam/api/damConstants.js.map +1 -1
  262. package/dist/domains/dam/api/damEndPoints.js +1 -2
  263. package/dist/domains/dam/api/damEndPoints.js.map +1 -1
  264. package/dist/domains/dam/api/damImageApi.js +60 -61
  265. package/dist/domains/dam/api/damImageApi.js.map +1 -1
  266. package/dist/domains/dam/api/damImageRoiApi.js +15 -16
  267. package/dist/domains/dam/api/damfetchAssetListByFileIdsMultipleLicences.js +10 -11
  268. package/dist/domains/dam/api/uploadApi.js +1 -2
  269. package/dist/domains/dam/api/uploadApi.js.map +1 -1
  270. package/dist/domains/dam/assetDetail/components/AColorBox.js +1 -2
  271. package/dist/domains/dam/assetDetail/components/AColorBox.vue_vue_type_script_setup_true_lang.js +1 -2
  272. package/dist/domains/dam/assetDetail/components/AssetCustomMetadataForm.js +1 -2
  273. package/dist/domains/dam/assetDetail/components/AssetCustomMetadataForm.js.map +1 -1
  274. package/dist/domains/dam/assetDetail/components/AssetCustomMetadataForm.vue.d.ts +7 -5
  275. package/dist/domains/dam/assetDetail/components/AssetCustomMetadataForm.vue_vue_type_script_setup_true_lang.js +18 -19
  276. package/dist/domains/dam/assetDetail/components/AssetCustomMetadataForm.vue_vue_type_script_setup_true_lang.js.map +1 -1
  277. package/dist/domains/dam/assetDetail/components/AssetDetailDialog.js +1 -2
  278. package/dist/domains/dam/assetDetail/components/AssetDetailDialog.js.map +1 -1
  279. package/dist/domains/dam/assetDetail/components/AssetDetailDialog.vue_vue_type_script_setup_true_lang.js +20 -21
  280. package/dist/domains/dam/assetDetail/components/AssetDetailDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
  281. package/dist/domains/dam/assetDetail/components/AssetDetailDialogFrame.js +1 -2
  282. package/dist/domains/dam/assetDetail/components/AssetDetailDialogFrame.js.map +1 -1
  283. package/dist/domains/dam/assetDetail/components/AssetDetailDialogFrame.vue.d.ts +1 -1
  284. package/dist/domains/dam/assetDetail/components/AssetDetailDialogFrame.vue_vue_type_script_setup_true_lang.js +26 -27
  285. package/dist/domains/dam/assetDetail/components/AssetDetailDialogFrame.vue_vue_type_script_setup_true_lang.js.map +1 -1
  286. package/dist/domains/dam/assetDetail/components/AssetDetailDialogLoader.js +1 -2
  287. package/dist/domains/dam/assetDetail/components/AssetDetailDialogLoader.vue_vue_type_script_setup_true_lang.js +1 -2
  288. package/dist/domains/dam/assetDetail/components/AssetDetailDialogSidebar.js +1 -2
  289. package/dist/domains/dam/assetDetail/components/AssetDetailDialogSidebar.vue_vue_type_script_setup_true_lang.js +10 -11
  290. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarActionsTeleportTarget.js +1 -2
  291. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarActionsTeleportTarget.vue_vue_type_script_setup_true_lang.js +1 -2
  292. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarActionsWrapper.js +1 -2
  293. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarActionsWrapper.vue.d.ts +5 -3
  294. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarActionsWrapper.vue_vue_type_script_setup_true_lang.js +1 -2
  295. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarFrame.js +1 -2
  296. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarFrame.js.map +1 -1
  297. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarFrame.vue_vue_type_script_setup_true_lang.js +14 -15
  298. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarFrame.vue_vue_type_script_setup_true_lang.js.map +1 -1
  299. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarMetadata.js +1 -2
  300. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarMetadata.js.map +1 -1
  301. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarMetadata.vue_vue_type_script_setup_true_lang.js +26 -27
  302. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarMetadata.vue_vue_type_script_setup_true_lang.js.map +1 -1
  303. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarROI.js +1 -2
  304. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarROI.js.map +1 -1
  305. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarROI.vue_vue_type_script_setup_true_lang.js +25 -26
  306. package/dist/domains/dam/assetDetail/components/AssetDetailSidebarROI.vue_vue_type_script_setup_true_lang.js.map +1 -1
  307. package/dist/domains/dam/assetDetail/components/AssetFileFailReasonChip.js +1 -2
  308. package/dist/domains/dam/assetDetail/components/AssetFileFailReasonChip.vue_vue_type_script_setup_true_lang.js +5 -6
  309. package/dist/domains/dam/assetDetail/components/AssetFileInfoPanel.js +1 -2
  310. package/dist/domains/dam/assetDetail/components/AssetFileInfoPanel.js.map +1 -1
  311. package/dist/domains/dam/assetDetail/components/AssetFileInfoPanel.vue.d.ts +6 -2
  312. package/dist/domains/dam/assetDetail/components/AssetFileInfoPanel.vue_vue_type_script_setup_true_lang.js +96 -70
  313. package/dist/domains/dam/assetDetail/components/AssetFileInfoPanel.vue_vue_type_script_setup_true_lang.js.map +1 -1
  314. package/dist/domains/dam/assetDetail/components/AssetFileRotate.js +1 -2
  315. package/dist/domains/dam/assetDetail/components/AssetFileRotate.vue_vue_type_script_setup_true_lang.js +5 -6
  316. package/dist/domains/dam/assetDetail/components/AssetImage.js +1 -2
  317. package/dist/domains/dam/assetDetail/components/AssetImage.js.map +1 -1
  318. package/dist/domains/dam/assetDetail/components/AssetImage.vue.d.ts +8 -1
  319. package/dist/domains/dam/assetDetail/components/AssetImage.vue_vue_type_script_setup_true_lang.js +30 -17
  320. package/dist/domains/dam/assetDetail/components/AssetImage.vue_vue_type_script_setup_true_lang.js.map +1 -1
  321. package/dist/domains/dam/assetDetail/components/AssetImageMetaIcons.js +1 -2
  322. package/dist/domains/dam/assetDetail/components/AssetImageMetaIcons.js.map +1 -1
  323. package/dist/domains/dam/assetDetail/components/AssetImageMetaIcons.vue.d.ts +9 -2
  324. package/dist/domains/dam/assetDetail/components/AssetImageMetaIcons.vue_vue_type_script_setup_true_lang.js +56 -29
  325. package/dist/domains/dam/assetDetail/components/AssetImageMetaIcons.vue_vue_type_script_setup_true_lang.js.map +1 -1
  326. package/dist/domains/dam/assetDetail/components/AssetInfobox.js +1 -2
  327. package/dist/domains/dam/assetDetail/components/AssetInfobox.js.map +1 -1
  328. package/dist/domains/dam/assetDetail/components/AssetInfobox.vue_vue_type_script_setup_true_lang.js +8 -9
  329. package/dist/domains/dam/assetDetail/components/AssetInfobox.vue_vue_type_script_setup_true_lang.js.map +1 -1
  330. package/dist/domains/dam/assetDetail/components/AssetMetadata.js +1 -2
  331. package/dist/domains/dam/assetDetail/components/AssetMetadata.js.map +1 -1
  332. package/dist/domains/dam/assetDetail/components/AssetMetadata.vue_vue_type_script_setup_true_lang.js +88 -71
  333. package/dist/domains/dam/assetDetail/components/AssetMetadata.vue_vue_type_script_setup_true_lang.js.map +1 -1
  334. package/dist/domains/dam/assetDetail/components/AssetMetadataImageAttributes.js +1 -2
  335. package/dist/domains/dam/assetDetail/components/AssetMetadataImageAttributes.vue_vue_type_script_setup_true_lang.js +5 -6
  336. package/dist/domains/dam/assetDetail/components/AssetMetadataImageAttributes.vue_vue_type_script_setup_true_lang.js.map +1 -1
  337. package/dist/domains/dam/assetDetail/composables/assetDetailExtSystem.d.ts +5 -6
  338. package/dist/domains/dam/assetDetail/composables/assetDetailExtSystem.js +6 -7
  339. package/dist/domains/dam/assetDetail/composables/assetDetailExtSystem.js.map +1 -1
  340. package/dist/domains/dam/assetDetail/composables/assetDetailSidebarActionbar.js +1 -2
  341. package/dist/domains/dam/assetDetail/composables/assetDetailView.d.ts +10 -10
  342. package/dist/domains/dam/assetDetail/composables/assetDetailView.js +1 -2
  343. package/dist/domains/dam/assetDetail/composables/assetDetailView.js.map +1 -1
  344. package/dist/domains/dam/assetDetail/composables/assetFileFailReason.js +1 -2
  345. package/dist/domains/dam/assetDetail/composables/autoDeleteTimeLeft.d.ts +9 -0
  346. package/dist/domains/dam/assetDetail/composables/autoDeleteTimeLeft.js +18 -0
  347. package/dist/domains/dam/assetDetail/composables/autoDeleteTimeLeft.js.map +1 -0
  348. package/dist/domains/dam/assetDetail/store/assetDetailStore.d.ts +4 -2
  349. package/dist/domains/dam/assetDetail/store/assetDetailStore.js +1 -2
  350. package/dist/domains/dam/assetDetail/store/assetDetailStore.js.map +1 -1
  351. package/dist/domains/dam/assetDetail/utils/assetImageIconsConfig.js +1 -2
  352. package/dist/domains/dam/assetDetail/utils/assetMetadataMayStillChange.d.ts +4 -3
  353. package/dist/domains/dam/assetDetail/utils/assetMetadataMayStillChange.js +1 -2
  354. package/dist/domains/dam/assetDetail/utils/assetMetadataMayStillChange.js.map +1 -1
  355. package/dist/domains/dam/assetSelect/api/damPodcastApi.js +9 -10
  356. package/dist/domains/dam/assetSelect/api/damPodcastApi.js.map +1 -1
  357. package/dist/domains/dam/assetSelect/components/AAssetListInner.js +1 -2
  358. package/dist/domains/dam/assetSelect/components/AAssetListInner.js.map +1 -1
  359. package/dist/domains/dam/assetSelect/components/AAssetListInner.vue.d.ts +791 -787
  360. package/dist/domains/dam/assetSelect/components/AAssetListInner.vue_vue_type_script_setup_true_lang.js +148 -149
  361. package/dist/domains/dam/assetSelect/components/AAssetListInner.vue_vue_type_script_setup_true_lang.js.map +1 -1
  362. package/dist/domains/dam/assetSelect/components/AAssetSelect.js +1 -2
  363. package/dist/domains/dam/assetSelect/components/AAssetSelect.js.map +1 -1
  364. package/dist/domains/dam/assetSelect/components/AAssetSelect.vue.d.ts +396 -393
  365. package/dist/domains/dam/assetSelect/components/AAssetSelect.vue_vue_type_script_setup_true_lang.js +88 -89
  366. package/dist/domains/dam/assetSelect/components/AAssetSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
  367. package/dist/domains/dam/assetSelect/components/AAssetSelectMedia.js +1 -2
  368. package/dist/domains/dam/assetSelect/components/AAssetSelectMedia.js.map +1 -1
  369. package/dist/domains/dam/assetSelect/components/AAssetSelectMedia.vue.d.ts +14 -12
  370. package/dist/domains/dam/assetSelect/components/AAssetSelectMedia.vue_vue_type_script_setup_true_lang.js +110 -111
  371. package/dist/domains/dam/assetSelect/components/AAssetSelectMedia.vue_vue_type_script_setup_true_lang.js.map +1 -1
  372. package/dist/domains/dam/assetSelect/components/AssetDistributionServiceNameFilter.js +1 -2
  373. package/dist/domains/dam/assetSelect/components/AssetDistributionServiceNameFilter.js.map +1 -1
  374. package/dist/domains/dam/assetSelect/components/AssetDistributionServiceNameFilter.vue_vue_type_script_setup_true_lang.js +8 -9
  375. package/dist/domains/dam/assetSelect/components/AssetDistributionServiceNameFilter.vue_vue_type_script_setup_true_lang.js.map +1 -1
  376. package/dist/domains/dam/assetSelect/components/AssetImagePreview.js +1 -2
  377. package/dist/domains/dam/assetSelect/components/AssetImagePreview.js.map +1 -1
  378. package/dist/domains/dam/assetSelect/components/AssetImagePreview.vue.d.ts +3 -0
  379. package/dist/domains/dam/assetSelect/components/AssetImagePreview.vue_vue_type_script_setup_true_lang.js +29 -19
  380. package/dist/domains/dam/assetSelect/components/AssetImagePreview.vue_vue_type_script_setup_true_lang.js.map +1 -1
  381. package/dist/domains/dam/assetSelect/components/AssetSelectFilter.js +1 -2
  382. package/dist/domains/dam/assetSelect/components/AssetSelectFilter.vue_vue_type_script_setup_true_lang.js +16 -17
  383. package/dist/domains/dam/assetSelect/components/AssetSelectFilterForm.js +1 -2
  384. package/dist/domains/dam/assetSelect/components/AssetSelectFilterForm.vue_vue_type_script_setup_true_lang.js +30 -31
  385. package/dist/domains/dam/assetSelect/components/AssetSelectListBar.js +1 -2
  386. package/dist/domains/dam/assetSelect/components/AssetSelectListBar.js.map +1 -1
  387. package/dist/domains/dam/assetSelect/components/AssetSelectListBar.vue.d.ts +9 -7
  388. package/dist/domains/dam/assetSelect/components/AssetSelectListBar.vue_vue_type_script_setup_true_lang.js +40 -41
  389. package/dist/domains/dam/assetSelect/components/AssetSelectListBar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  390. package/dist/domains/dam/assetSelect/components/AssetSelectListTable.js +1 -2
  391. package/dist/domains/dam/assetSelect/components/AssetSelectListTable.vue_vue_type_script_setup_true_lang.js +10 -11
  392. package/dist/domains/dam/assetSelect/components/AssetSelectListTiles.js +1 -2
  393. package/dist/domains/dam/assetSelect/components/AssetSelectListTiles.vue_vue_type_script_setup_true_lang.js +11 -12
  394. package/dist/domains/dam/assetSelect/components/AssetSelectTableRowItem.js +1 -2
  395. package/dist/domains/dam/assetSelect/components/AssetSelectTableRowItem.js.map +1 -1
  396. package/dist/domains/dam/assetSelect/components/AssetSelectTableRowItem.vue_vue_type_script_setup_true_lang.js +19 -15
  397. package/dist/domains/dam/assetSelect/components/AssetSelectTableRowItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  398. package/dist/domains/dam/assetSelect/components/AssetSelectTilesItem.js +1 -2
  399. package/dist/domains/dam/assetSelect/components/AssetSelectTilesItem.js.map +1 -1
  400. package/dist/domains/dam/assetSelect/components/AssetSelectTilesItem.vue_vue_type_script_setup_true_lang.js +6 -5
  401. package/dist/domains/dam/assetSelect/components/AssetSelectTilesItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  402. package/dist/domains/dam/assetSelect/components/FilterPodcastRemoteAutocomplete.js +1 -2
  403. package/dist/domains/dam/assetSelect/components/FilterPodcastRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js +6 -7
  404. package/dist/domains/dam/assetSelect/composables/assetSelectFilterSidebar.js +1 -2
  405. package/dist/domains/dam/assetSelect/composables/assetSelectGridView.js +1 -2
  406. package/dist/domains/dam/assetSelect/composables/assetSelectItemActions.d.ts +2 -0
  407. package/dist/domains/dam/assetSelect/composables/assetSelectItemActions.js +38 -33
  408. package/dist/domains/dam/assetSelect/composables/assetSelectItemActions.js.map +1 -1
  409. package/dist/domains/dam/assetSelect/composables/assetSelectListActions.d.ts +4 -2
  410. package/dist/domains/dam/assetSelect/composables/assetSelectListActions.js +41 -42
  411. package/dist/domains/dam/assetSelect/composables/assetSelectListActions.js.map +1 -1
  412. package/dist/domains/dam/assetSelect/composables/podcastFilterAndActions.js +1 -2
  413. package/dist/domains/dam/assetSelect/filter/AssetFilter.js +5 -6
  414. package/dist/domains/dam/assetSelect/store/assetSelectStore.d.ts +8 -4
  415. package/dist/domains/dam/assetSelect/store/assetSelectStore.js +30 -31
  416. package/dist/domains/dam/assetSelect/store/assetSelectStore.js.map +1 -1
  417. package/dist/domains/dam/author/api/authorApi.js +18 -19
  418. package/dist/domains/dam/author/api/authorApi.js.map +1 -1
  419. package/dist/domains/dam/author/components/AuthorCreateButton.js +1 -2
  420. package/dist/domains/dam/author/components/AuthorCreateButton.js.map +1 -1
  421. package/dist/domains/dam/author/components/AuthorCreateButton.vue.d.ts +1 -1
  422. package/dist/domains/dam/author/components/AuthorCreateButton.vue_vue_type_script_setup_true_lang.js +86 -87
  423. package/dist/domains/dam/author/components/AuthorCreateButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
  424. package/dist/domains/dam/author/components/AuthorRemoteAutocompleteCachedAuthorChip.js +1 -2
  425. package/dist/domains/dam/author/components/AuthorRemoteAutocompleteCachedAuthorChip.js.map +1 -1
  426. package/dist/domains/dam/author/components/AuthorRemoteAutocompleteCachedAuthorChip.vue.d.ts +9 -6
  427. package/dist/domains/dam/author/components/AuthorRemoteAutocompleteCachedAuthorChip.vue_vue_type_script_setup_true_lang.js +8 -9
  428. package/dist/domains/dam/author/components/AuthorRemoteAutocompleteCachedAuthorChip.vue_vue_type_script_setup_true_lang.js.map +1 -1
  429. package/dist/domains/dam/author/components/AuthorRemoteAutocompleteCachedAuthorChipConflicts.js +1 -2
  430. package/dist/domains/dam/author/components/AuthorRemoteAutocompleteCachedAuthorChipConflicts.js.map +1 -1
  431. package/dist/domains/dam/author/components/AuthorRemoteAutocompleteCachedAuthorChipConflicts.vue_vue_type_script_setup_true_lang.js +5 -6
  432. package/dist/domains/dam/author/components/AuthorRemoteAutocompleteCachedAuthorChipConflicts.vue_vue_type_script_setup_true_lang.js.map +1 -1
  433. package/dist/domains/dam/author/components/AuthorRemoteAutocompleteWithCached.js +4 -5
  434. package/dist/domains/dam/author/components/AuthorRemoteAutocompleteWithCached.js.map +1 -1
  435. package/dist/domains/dam/author/components/AuthorRemoteAutocompleteWithCached.vue.d.ts +2 -2
  436. package/dist/domains/dam/author/components/AuthorRemoteAutocompleteWithCached.vue_vue_type_script_setup_true_lang.js +89 -90
  437. package/dist/domains/dam/author/components/AuthorRemoteAutocompleteWithCached.vue_vue_type_script_setup_true_lang.js.map +1 -1
  438. package/dist/domains/dam/author/components/DamAuthorFilterRemoteAutocomplete.js +1 -2
  439. package/dist/domains/dam/author/components/DamAuthorFilterRemoteAutocomplete.js.map +1 -1
  440. package/dist/domains/dam/author/components/DamAuthorFilterRemoteAutocomplete.vue.d.ts +1 -1
  441. package/dist/domains/dam/author/components/DamAuthorFilterRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js +9 -10
  442. package/dist/domains/dam/author/components/DamAuthorFilterRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
  443. package/dist/domains/dam/author/composables/authorActions.js +6 -7
  444. package/dist/domains/dam/author/composables/authorValidation.js +1 -2
  445. package/dist/domains/dam/author/composables/cachedAuthors.d.ts +5 -4
  446. package/dist/domains/dam/author/composables/cachedAuthors.js +13 -14
  447. package/dist/domains/dam/author/composables/cachedAuthors.js.map +1 -1
  448. package/dist/domains/dam/author/composables/cachedUsers.d.ts +5 -4
  449. package/dist/domains/dam/author/composables/cachedUsers.js +13 -14
  450. package/dist/domains/dam/author/composables/cachedUsers.js.map +1 -1
  451. package/dist/domains/dam/author/composables/damAuthorConfig.d.ts +2 -2
  452. package/dist/domains/dam/author/composables/damAuthorConfig.js +5 -6
  453. package/dist/domains/dam/author/composables/damAuthorConfig.js.map +1 -1
  454. package/dist/domains/dam/author/factory/AuthorFactory.js +8 -9
  455. package/dist/domains/dam/author/filter/AuthorFilter.js +5 -6
  456. package/dist/domains/dam/author/types/DamAuthorType.js +1 -2
  457. package/dist/domains/dam/components/DamAdminAssetLink.js +1 -2
  458. package/dist/domains/dam/components/DamAdminAssetLink.js.map +1 -1
  459. package/dist/domains/dam/components/DamAdminAssetLink.vue_vue_type_script_setup_true_lang.js +1 -2
  460. package/dist/domains/dam/components/DamAdminAssetLink.vue_vue_type_script_setup_true_lang.js.map +1 -1
  461. package/dist/domains/dam/composables/commonAdminCoreDamOptions.d.ts +13 -8
  462. package/dist/domains/dam/composables/commonAdminCoreDamOptions.js +59 -57
  463. package/dist/domains/dam/composables/commonAdminCoreDamOptions.js.map +1 -1
  464. package/dist/domains/dam/composables/damConfigName.d.ts +8 -9
  465. package/dist/domains/dam/composables/damConfigName.js +5 -6
  466. package/dist/domains/dam/composables/damConfigName.js.map +1 -1
  467. package/dist/domains/dam/composables/damNotifications.d.ts +9 -9
  468. package/dist/domains/dam/composables/damNotifications.js +9 -10
  469. package/dist/domains/dam/composables/damNotifications.js.map +1 -1
  470. package/dist/domains/dam/composables/damNotificationsConnection.d.ts +4 -4
  471. package/dist/domains/dam/composables/damNotificationsConnection.js +1 -2
  472. package/dist/domains/dam/composables/damNotificationsConnection.js.map +1 -1
  473. package/dist/domains/dam/composables/damNotificationsEventBus.d.ts +2 -2
  474. package/dist/domains/dam/composables/damNotificationsEventBus.js +1 -2
  475. package/dist/domains/dam/composables/damNotificationsEventBus.js.map +1 -1
  476. package/dist/domains/dam/composables/extSystemIdForCached.d.ts +5 -4
  477. package/dist/domains/dam/composables/extSystemIdForCached.js +1 -2
  478. package/dist/domains/dam/composables/extSystemIdForCached.js.map +1 -1
  479. package/dist/domains/dam/composables/uploadValidations.js +4 -5
  480. package/dist/domains/dam/config/api/damAssetCustomFormApi.js +7 -8
  481. package/dist/domains/dam/config/api/damAssetCustomFormApi.js.map +1 -1
  482. package/dist/domains/dam/config/api/damConfigApi.js +9 -10
  483. package/dist/domains/dam/config/api/damConfigApi.js.map +1 -1
  484. package/dist/domains/dam/config/composables/acceptTypeAndSizeHelper.js +1 -2
  485. package/dist/domains/dam/config/composables/damConfigState.d.ts +5 -5
  486. package/dist/domains/dam/config/composables/damConfigState.js +58 -59
  487. package/dist/domains/dam/config/composables/damConfigState.js.map +1 -1
  488. package/dist/domains/dam/config/store/damConfigStore.d.ts +5 -4
  489. package/dist/domains/dam/config/store/damConfigStore.js +1 -2
  490. package/dist/domains/dam/config/store/damConfigStore.js.map +1 -1
  491. package/dist/domains/dam/config/utils/damFilterUserAllowedUploadConfigs.d.ts +3 -1
  492. package/dist/domains/dam/config/utils/damFilterUserAllowedUploadConfigs.js +1 -2
  493. package/dist/domains/dam/config/utils/damFilterUserAllowedUploadConfigs.js.map +1 -1
  494. package/dist/domains/dam/cropper/components/ACropper.js +1 -2
  495. package/dist/domains/dam/cropper/components/ACropper.js.map +1 -1
  496. package/dist/domains/dam/cropper/components/ACropper.vue.d.ts +8 -16
  497. package/dist/domains/dam/cropper/components/ACropper.vue_vue_type_script_setup_true_lang.js +3 -4
  498. package/dist/domains/dam/cropper/components/ACropper.vue_vue_type_script_setup_true_lang.js.map +1 -1
  499. package/dist/domains/dam/cropper/components/DamAssetImageRoiSelect.js +1 -2
  500. package/dist/domains/dam/cropper/components/DamAssetImageRoiSelect.js.map +1 -1
  501. package/dist/domains/dam/cropper/components/DamAssetImageRoiSelect.vue_vue_type_script_setup_true_lang.js +23 -24
  502. package/dist/domains/dam/cropper/components/DamAssetImageRoiSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
  503. package/dist/domains/dam/cropper/components/DamAssetImageRoiSelectLazy.js +1 -2
  504. package/dist/domains/dam/cropper/components/DamAssetImageRoiSelectLazy.vue_vue_type_script_setup_true_lang.js +5 -6
  505. package/dist/domains/dam/cropper/store/imageRoiStore.d.ts +11 -14
  506. package/dist/domains/dam/cropper/store/imageRoiStore.js +1 -2
  507. package/dist/domains/dam/cropper/store/imageRoiStore.js.map +1 -1
  508. package/dist/domains/dam/cropper/utils/cropperGeometry.d.ts +24 -38
  509. package/dist/domains/dam/cropper/utils/cropperGeometry.js +2 -3
  510. package/dist/domains/dam/cropper/utils/cropperGeometry.js.map +1 -1
  511. package/dist/domains/dam/cropper/utils/cropperJsService.d.ts +3 -7
  512. package/dist/domains/dam/cropper/utils/cropperJsService.js +11 -5
  513. package/dist/domains/dam/cropper/utils/cropperJsService.js.map +1 -1
  514. package/dist/domains/dam/cropper/utils/cropperTypes.d.ts +3 -6
  515. package/dist/domains/dam/cropper/utils/damAssetImageRoiSelectLoader.d.ts +5 -5
  516. package/dist/domains/dam/cropper/utils/damAssetImageRoiSelectLoader.js +1 -2
  517. package/dist/domains/dam/cropper/utils/damAssetImageRoiSelectLoader.js.map +1 -1
  518. package/dist/domains/dam/imageWidget/components/AImageMediaWidget.js +1 -2
  519. package/dist/domains/dam/imageWidget/components/AImageMediaWidget.js.map +1 -1
  520. package/dist/domains/dam/imageWidget/components/AImageMediaWidget.vue_vue_type_script_setup_true_lang.js +46 -47
  521. package/dist/domains/dam/imageWidget/components/AImageMediaWidget.vue_vue_type_script_setup_true_lang.js.map +1 -1
  522. package/dist/domains/dam/imageWidget/components/AImagePublicInput.js +1 -2
  523. package/dist/domains/dam/imageWidget/components/AImagePublicInput.js.map +1 -1
  524. package/dist/domains/dam/imageWidget/components/AImagePublicInput.vue_vue_type_script_setup_true_lang.js +74 -75
  525. package/dist/domains/dam/imageWidget/components/AImagePublicInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
  526. package/dist/domains/dam/imageWidget/components/AImageWidget.js +1 -2
  527. package/dist/domains/dam/imageWidget/components/AImageWidget.js.map +1 -1
  528. package/dist/domains/dam/imageWidget/components/AImageWidget.vue_vue_type_script_setup_true_lang.js +39 -40
  529. package/dist/domains/dam/imageWidget/components/AImageWidget.vue_vue_type_script_setup_true_lang.js.map +1 -1
  530. package/dist/domains/dam/imageWidget/components/AImageWidgetMultiple.js +1 -2
  531. package/dist/domains/dam/imageWidget/components/AImageWidgetMultiple.js.map +1 -1
  532. package/dist/domains/dam/imageWidget/components/AImageWidgetMultiple.vue_vue_type_script_setup_true_lang.js +25 -26
  533. package/dist/domains/dam/imageWidget/components/AImageWidgetMultiple.vue_vue_type_script_setup_true_lang.js.map +1 -1
  534. package/dist/domains/dam/imageWidget/components/AImageWidgetMultipleSimple.js +1 -2
  535. package/dist/domains/dam/imageWidget/components/AImageWidgetMultipleSimple.vue_vue_type_script_setup_true_lang.js +13 -14
  536. package/dist/domains/dam/imageWidget/components/AImageWidgetSimple.js +4 -5
  537. package/dist/domains/dam/imageWidget/components/AImageWidgetSimple.js.map +1 -1
  538. package/dist/domains/dam/imageWidget/components/AImageWidgetSimple.vue.d.ts +43 -41
  539. package/dist/domains/dam/imageWidget/components/AImageWidgetSimple.vue_vue_type_script_setup_true_lang.js +17 -18
  540. package/dist/domains/dam/imageWidget/components/AMediaWidgetSimple.js +4 -5
  541. package/dist/domains/dam/imageWidget/components/AMediaWidgetSimple.js.map +1 -1
  542. package/dist/domains/dam/imageWidget/components/AMediaWidgetSimple.vue.d.ts +31 -29
  543. package/dist/domains/dam/imageWidget/components/AMediaWidgetSimple.vue_vue_type_script_setup_true_lang.js +21 -22
  544. package/dist/domains/dam/imageWidget/components/ImageDetailDialogMetadata.js +1 -2
  545. package/dist/domains/dam/imageWidget/components/ImageDetailDialogMetadata.js.map +1 -1
  546. package/dist/domains/dam/imageWidget/components/ImageDetailDialogMetadata.vue.d.ts +29 -27
  547. package/dist/domains/dam/imageWidget/components/ImageDetailDialogMetadata.vue_vue_type_script_setup_true_lang.js +59 -60
  548. package/dist/domains/dam/imageWidget/components/ImageDetailDialogMetadata.vue_vue_type_script_setup_true_lang.js.map +1 -1
  549. package/dist/domains/dam/imageWidget/components/ImageMassOperations.js +1 -2
  550. package/dist/domains/dam/imageWidget/components/ImageMassOperations.js.map +1 -1
  551. package/dist/domains/dam/imageWidget/components/ImageMassOperations.vue.d.ts +1 -1
  552. package/dist/domains/dam/imageWidget/components/ImageMassOperations.vue_vue_type_script_setup_true_lang.js +35 -36
  553. package/dist/domains/dam/imageWidget/components/ImageMassOperations.vue_vue_type_script_setup_true_lang.js.map +1 -1
  554. package/dist/domains/dam/imageWidget/components/ImageMediaWidgetInner.js +1 -2
  555. package/dist/domains/dam/imageWidget/components/ImageMediaWidgetInner.js.map +1 -1
  556. package/dist/domains/dam/imageWidget/components/ImageMediaWidgetInner.vue.d.ts +68 -66
  557. package/dist/domains/dam/imageWidget/components/ImageMediaWidgetInner.vue_vue_type_script_setup_true_lang.js +379 -380
  558. package/dist/domains/dam/imageWidget/components/ImageMediaWidgetInner.vue_vue_type_script_setup_true_lang.js.map +1 -1
  559. package/dist/domains/dam/imageWidget/components/ImageWidgetInner.js +1 -2
  560. package/dist/domains/dam/imageWidget/components/ImageWidgetInner.js.map +1 -1
  561. package/dist/domains/dam/imageWidget/components/ImageWidgetInner.vue.d.ts +403 -400
  562. package/dist/domains/dam/imageWidget/components/ImageWidgetInner.vue_vue_type_script_setup_true_lang.js +149 -150
  563. package/dist/domains/dam/imageWidget/components/ImageWidgetInner.vue_vue_type_script_setup_true_lang.js.map +1 -1
  564. package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleInner.js +1 -2
  565. package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleInner.js.map +1 -1
  566. package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleInner.vue.d.ts +385 -382
  567. package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleInner.vue_vue_type_script_setup_true_lang.js +79 -80
  568. package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleInner.vue_vue_type_script_setup_true_lang.js.map +1 -1
  569. package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleItem.js +1 -2
  570. package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleItem.js.map +1 -1
  571. package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleItem.vue_vue_type_script_setup_true_lang.js +23 -24
  572. package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  573. package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleLimitDialog.js +1 -2
  574. package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleLimitDialog.js.map +1 -1
  575. package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleLimitDialog.vue_vue_type_script_setup_true_lang.js +14 -15
  576. package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleLimitDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
  577. package/dist/domains/dam/imageWidget/components/MediaWidgetSimpleDialog.js +1 -2
  578. package/dist/domains/dam/imageWidget/components/MediaWidgetSimpleDialog.vue.d.ts +7 -5
  579. package/dist/domains/dam/imageWidget/components/MediaWidgetSimpleDialog.vue_vue_type_script_setup_true_lang.js +1 -2
  580. package/dist/domains/dam/imageWidget/composables/commonAdminImageOptions.js +10 -11
  581. package/dist/domains/dam/imageWidget/composables/commonAdminImageOptions.js.map +1 -1
  582. package/dist/domains/dam/imageWidget/composables/imageActions.js +1 -2
  583. package/dist/domains/dam/imageWidget/composables/imageApiCms.js +19 -20
  584. package/dist/domains/dam/imageWidget/composables/imageApiCms.js.map +1 -1
  585. package/dist/domains/dam/imageWidget/composables/imageDialogDamAuthors.d.ts +13 -14
  586. package/dist/domains/dam/imageWidget/composables/imageDialogDamAuthors.js +53 -54
  587. package/dist/domains/dam/imageWidget/composables/imageDialogDamAuthors.js.map +1 -1
  588. package/dist/domains/dam/imageWidget/composables/useImageMassOperations.js +15 -16
  589. package/dist/domains/dam/imageWidget/composables/useImageMassOperations.js.map +1 -1
  590. package/dist/domains/dam/imageWidget/store/imageMediaWidgetStore.js +1 -2
  591. package/dist/domains/dam/imageWidget/store/imageMediaWidgetStore.js.map +1 -1
  592. package/dist/domains/dam/imageWidget/store/imageStore.js +1 -2
  593. package/dist/domains/dam/imageWidget/store/imageStore.js.map +1 -1
  594. package/dist/domains/dam/imageWidget/utils/damImage.d.ts +5 -6
  595. package/dist/domains/dam/imageWidget/utils/damImage.js +1 -2
  596. package/dist/domains/dam/imageWidget/utils/damImage.js.map +1 -1
  597. package/dist/domains/dam/imageWidget/utils/fieldLockTurns.d.ts +1 -2
  598. package/dist/domains/dam/imageWidget/utils/fieldLockTurns.js +1 -2
  599. package/dist/domains/dam/imageWidget/utils/fieldLockTurns.js.map +1 -1
  600. package/dist/domains/dam/imageWidget/utils/imageSaves.d.ts +10 -14
  601. package/dist/domains/dam/imageWidget/utils/imageSaves.js +1 -2
  602. package/dist/domains/dam/imageWidget/utils/imageSaves.js.map +1 -1
  603. package/dist/domains/dam/imageWidget/utils/imageWidgetInkectionKeys.js +1 -2
  604. package/dist/domains/dam/imageWidget/utils/metadataToImageMap.js +1 -2
  605. package/dist/domains/dam/imageWidget/utils/metadataToImageMap.js.map +1 -1
  606. package/dist/domains/dam/imageWidget/utils/waitLimit.d.ts +4 -6
  607. package/dist/domains/dam/imageWidget/utils/waitLimit.js +4 -5
  608. package/dist/domains/dam/imageWidget/utils/waitLimit.js.map +1 -1
  609. package/dist/domains/dam/keyword/api/keywordApi.js +18 -19
  610. package/dist/domains/dam/keyword/api/keywordApi.js.map +1 -1
  611. package/dist/domains/dam/keyword/components/DamKeywordFilterRemoteAutocomplete.js +1 -2
  612. package/dist/domains/dam/keyword/components/DamKeywordFilterRemoteAutocomplete.js.map +1 -1
  613. package/dist/domains/dam/keyword/components/DamKeywordFilterRemoteAutocomplete.vue.d.ts +1 -1
  614. package/dist/domains/dam/keyword/components/DamKeywordFilterRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js +8 -9
  615. package/dist/domains/dam/keyword/components/DamKeywordFilterRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
  616. package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteCachedKeywordChip.js +1 -2
  617. package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteCachedKeywordChip.js.map +1 -1
  618. package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteCachedKeywordChip.vue.d.ts +8 -5
  619. package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteCachedKeywordChip.vue_vue_type_script_setup_true_lang.js +8 -9
  620. package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteCachedKeywordChip.vue_vue_type_script_setup_true_lang.js.map +1 -1
  621. package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteWithCached.js +4 -5
  622. package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteWithCached.js.map +1 -1
  623. package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteWithCached.vue.d.ts +2 -2
  624. package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteWithCached.vue_vue_type_script_setup_true_lang.js +93 -94
  625. package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteWithCached.vue_vue_type_script_setup_true_lang.js.map +1 -1
  626. package/dist/domains/dam/keyword/composables/cachedKeywords.d.ts +5 -4
  627. package/dist/domains/dam/keyword/composables/cachedKeywords.js +13 -14
  628. package/dist/domains/dam/keyword/composables/cachedKeywords.js.map +1 -1
  629. package/dist/domains/dam/keyword/composables/damKeywordConfig.d.ts +2 -2
  630. package/dist/domains/dam/keyword/composables/damKeywordConfig.js +5 -6
  631. package/dist/domains/dam/keyword/composables/damKeywordConfig.js.map +1 -1
  632. package/dist/domains/dam/keyword/composables/keywordActions.js +6 -7
  633. package/dist/domains/dam/keyword/factory/KeywordFactory.js +7 -8
  634. package/dist/domains/dam/keyword/factory/KeywordFactory.js.map +1 -1
  635. package/dist/domains/dam/keyword/filter/KeywordFilter.js +7 -8
  636. package/dist/domains/dam/types/Asset.d.ts +4 -2
  637. package/dist/domains/dam/types/Asset.js +1 -2
  638. package/dist/domains/dam/types/Asset.js.map +1 -1
  639. package/dist/domains/dam/types/AssetFile.d.ts +1 -1
  640. package/dist/domains/dam/types/AssetFile.js +1 -2
  641. package/dist/domains/dam/types/AssetFile.js.map +1 -1
  642. package/dist/domains/dam/types/AssetLicence.d.ts +7 -0
  643. package/dist/domains/dam/types/AssetSelect.js +1 -2
  644. package/dist/domains/dam/types/DamConfig.js +1 -2
  645. package/dist/domains/dam/types/MediaAware.js +1 -2
  646. package/dist/domains/dam/types/UploadQueue.d.ts +5 -4
  647. package/dist/domains/dam/types/UploadQueue.js +1 -2
  648. package/dist/domains/dam/types/UploadQueue.js.map +1 -1
  649. package/dist/domains/dam/uploadQueue/components/AssetCustomMetadataFormMassOperations.js +1 -2
  650. package/dist/domains/dam/uploadQueue/components/AssetCustomMetadataFormMassOperations.js.map +1 -1
  651. package/dist/domains/dam/uploadQueue/components/AssetCustomMetadataFormMassOperations.vue_vue_type_script_setup_true_lang.js +10 -11
  652. package/dist/domains/dam/uploadQueue/components/AssetCustomMetadataFormMassOperations.vue_vue_type_script_setup_true_lang.js.map +1 -1
  653. package/dist/domains/dam/uploadQueue/components/AssetQueueSelectedSidebar.js +1 -2
  654. package/dist/domains/dam/uploadQueue/components/AssetQueueSelectedSidebar.js.map +1 -1
  655. package/dist/domains/dam/uploadQueue/components/AssetQueueSelectedSidebar.vue.d.ts +2 -2
  656. package/dist/domains/dam/uploadQueue/components/AssetQueueSelectedSidebar.vue_vue_type_script_setup_true_lang.js +84 -85
  657. package/dist/domains/dam/uploadQueue/components/AssetQueueSelectedSidebar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  658. package/dist/domains/dam/uploadQueue/components/UploadQueueButtonStop.js +1 -2
  659. package/dist/domains/dam/uploadQueue/components/UploadQueueButtonStop.vue_vue_type_script_setup_true_lang.js +7 -8
  660. package/dist/domains/dam/uploadQueue/components/UploadQueueDialog.js +1 -2
  661. package/dist/domains/dam/uploadQueue/components/UploadQueueDialog.js.map +1 -1
  662. package/dist/domains/dam/uploadQueue/components/UploadQueueDialog.vue_vue_type_script_setup_true_lang.js +84 -85
  663. package/dist/domains/dam/uploadQueue/components/UploadQueueDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
  664. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingle.js +1 -2
  665. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingle.js.map +1 -1
  666. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingle.vue_vue_type_script_setup_true_lang.js +60 -61
  667. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingle.vue_vue_type_script_setup_true_lang.js.map +1 -1
  668. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebar.js +1 -2
  669. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebar.js.map +1 -1
  670. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebar.vue.d.ts +6 -4
  671. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebar.vue_vue_type_script_setup_true_lang.js +17 -18
  672. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  673. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebarMetadata.js +1 -2
  674. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebarMetadata.js.map +1 -1
  675. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebarMetadata.vue.d.ts +1 -1
  676. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebarMetadata.vue_vue_type_script_setup_true_lang.js +14 -15
  677. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebarMetadata.vue_vue_type_script_setup_true_lang.js.map +1 -1
  678. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebarMetadataContent.js +1 -2
  679. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebarMetadataContent.js.map +1 -1
  680. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebarMetadataContent.vue_vue_type_script_setup_true_lang.js +30 -31
  681. package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebarMetadataContent.vue_vue_type_script_setup_true_lang.js.map +1 -1
  682. package/dist/domains/dam/uploadQueue/components/UploadQueueEditable.js +1 -2
  683. package/dist/domains/dam/uploadQueue/components/UploadQueueEditable.js.map +1 -1
  684. package/dist/domains/dam/uploadQueue/components/UploadQueueEditable.vue.d.ts +6 -6
  685. package/dist/domains/dam/uploadQueue/components/UploadQueueEditable.vue_vue_type_script_setup_true_lang.js +28 -29
  686. package/dist/domains/dam/uploadQueue/components/UploadQueueEditable.vue_vue_type_script_setup_true_lang.js.map +1 -1
  687. package/dist/domains/dam/uploadQueue/components/UploadQueueItemEditable.js +1 -2
  688. package/dist/domains/dam/uploadQueue/components/UploadQueueItemEditable.js.map +1 -1
  689. package/dist/domains/dam/uploadQueue/components/UploadQueueItemEditable.vue.d.ts +13 -13
  690. package/dist/domains/dam/uploadQueue/components/UploadQueueItemEditable.vue_vue_type_script_setup_true_lang.js +109 -110
  691. package/dist/domains/dam/uploadQueue/components/UploadQueueItemEditable.vue_vue_type_script_setup_true_lang.js.map +1 -1
  692. package/dist/domains/dam/uploadQueue/components/UploadQueueItemErrorOverlay.js +1 -2
  693. package/dist/domains/dam/uploadQueue/components/UploadQueueItemErrorOverlay.vue_vue_type_script_setup_true_lang.js +1 -2
  694. package/dist/domains/dam/uploadQueue/components/uploadQueueBindings.d.ts +13 -13
  695. package/dist/domains/dam/uploadQueue/components/uploadQueueBindings.js +18 -19
  696. package/dist/domains/dam/uploadQueue/components/uploadQueueBindings.js.map +1 -1
  697. package/dist/domains/dam/uploadQueue/composables/assetSuggestions.js +1 -2
  698. package/dist/domains/dam/uploadQueue/composables/damUploadChunkSize.d.ts +2 -2
  699. package/dist/domains/dam/uploadQueue/composables/damUploadChunkSize.js +1 -2
  700. package/dist/domains/dam/uploadQueue/composables/damUploadChunkSize.js.map +1 -1
  701. package/dist/domains/dam/uploadQueue/composables/uploadMeter.d.ts +12 -12
  702. package/dist/domains/dam/uploadQueue/composables/uploadMeter.js +1 -2
  703. package/dist/domains/dam/uploadQueue/composables/uploadMeter.js.map +1 -1
  704. package/dist/domains/dam/uploadQueue/composables/uploadQueueItemRefresh.d.ts +5 -5
  705. package/dist/domains/dam/uploadQueue/composables/uploadQueueItemRefresh.js +21 -22
  706. package/dist/domains/dam/uploadQueue/composables/uploadQueueItemRefresh.js.map +1 -1
  707. package/dist/domains/dam/uploadQueue/composables/uploadQueueMassOperations.js +1 -2
  708. package/dist/domains/dam/uploadQueue/composables/uploadService.d.ts +2 -3
  709. package/dist/domains/dam/uploadQueue/composables/uploadService.js +40 -41
  710. package/dist/domains/dam/uploadQueue/composables/uploadService.js.map +1 -1
  711. package/dist/domains/dam/uploadQueue/composables/useUploadQueueDialog.d.ts +5 -4
  712. package/dist/domains/dam/uploadQueue/composables/useUploadQueueDialog.js +1 -2
  713. package/dist/domains/dam/uploadQueue/composables/useUploadQueueDialog.js.map +1 -1
  714. package/dist/domains/dam/uploadQueue/core/uploadQueueCore.d.ts +3 -2
  715. package/dist/domains/dam/uploadQueue/core/uploadQueueCore.js +55 -56
  716. package/dist/domains/dam/uploadQueue/core/uploadQueueCore.js.map +1 -1
  717. package/dist/domains/dam/uploadQueue/core/uploadQueueCoreTypes.d.ts +8 -5
  718. package/dist/domains/dam/uploadQueue/core/uploadQueueCoreTypes.js +1 -2
  719. package/dist/domains/dam/uploadQueue/core/uploadQueueCoreTypes.js.map +1 -1
  720. package/dist/domains/dam/uploadQueue/core/uploadQueueFill.d.ts +3 -3
  721. package/dist/domains/dam/uploadQueue/core/uploadQueueFill.js +1 -2
  722. package/dist/domains/dam/uploadQueue/core/uploadQueueFill.js.map +1 -1
  723. package/dist/domains/dam/uploadQueue/factory/UploadQueueItemFactory.js +1 -2
  724. package/dist/domains/dam/uploadQueue/presets/queuePresets.d.ts +8 -5
  725. package/dist/domains/dam/uploadQueue/presets/queuePresets.js +16 -17
  726. package/dist/domains/dam/uploadQueue/presets/queuePresets.js.map +1 -1
  727. package/dist/domains/dam/uploadQueue/presets/uploadPresets.d.ts +15 -13
  728. package/dist/domains/dam/uploadQueue/presets/uploadPresets.js +9 -10
  729. package/dist/domains/dam/uploadQueue/presets/uploadPresets.js.map +1 -1
  730. package/dist/domains/dam/uploadQueue/settlement/uploadPollSchedule.d.ts +7 -7
  731. package/dist/domains/dam/uploadQueue/settlement/uploadPollSchedule.js +1 -2
  732. package/dist/domains/dam/uploadQueue/settlement/uploadPollSchedule.js.map +1 -1
  733. package/dist/domains/dam/uploadQueue/settlement/uploadPoller.d.ts +4 -4
  734. package/dist/domains/dam/uploadQueue/settlement/uploadPoller.js +3 -4
  735. package/dist/domains/dam/uploadQueue/settlement/uploadPoller.js.map +1 -1
  736. package/dist/domains/dam/uploadQueue/settlement/uploadSettle.d.ts +28 -30
  737. package/dist/domains/dam/uploadQueue/settlement/uploadSettle.js +130 -131
  738. package/dist/domains/dam/uploadQueue/settlement/uploadSettle.js.map +1 -1
  739. package/dist/domains/dam/uploadQueue/settlement/uploadSettlement.d.ts +2 -2
  740. package/dist/domains/dam/uploadQueue/settlement/uploadSettlement.js +94 -95
  741. package/dist/domains/dam/uploadQueue/settlement/uploadSettlement.js.map +1 -1
  742. package/dist/domains/dam/uploadQueue/settlement/uploadSettlementRuntime.d.ts +2 -2
  743. package/dist/domains/dam/uploadQueue/settlement/uploadSettlementRuntime.js +1 -2
  744. package/dist/domains/dam/uploadQueue/settlement/uploadSettlementRuntime.js.map +1 -1
  745. package/dist/domains/dam/uploadQueue/settlement/uploadSettlementTypes.d.ts +63 -73
  746. package/dist/domains/dam/uploadQueue/settlement/uploadSettlementTypes.js +1 -2
  747. package/dist/domains/dam/uploadQueue/settlement/uploadSettlementTypes.js.map +1 -1
  748. package/dist/domains/dam/uploadQueue/store/uploadQueuesStore.d.ts +8 -9
  749. package/dist/domains/dam/uploadQueue/store/uploadQueuesStore.js +167 -168
  750. package/dist/domains/dam/uploadQueue/store/uploadQueuesStore.js.map +1 -1
  751. package/dist/domains/dam/uploadQueue/utils/mimeTypeHelper.js +1 -2
  752. package/dist/domains/dam/user/api/assetLicenceApi.d.ts +2 -1
  753. package/dist/domains/dam/user/api/assetLicenceApi.js +5 -6
  754. package/dist/domains/dam/user/api/assetLicenceApi.js.map +1 -1
  755. package/dist/domains/dam/user/api/assetLicenceGroupApi.js +1 -2
  756. package/dist/domains/dam/user/api/extSystemApi.js +1 -2
  757. package/dist/domains/dam/user/api/userApi.d.ts +2 -2
  758. package/dist/domains/dam/user/api/userApi.js +26 -27
  759. package/dist/domains/dam/user/api/userApi.js.map +1 -1
  760. package/dist/domains/dam/user/components/DamAssetLicenceGroupRemoteAutocomplete.js +1 -2
  761. package/dist/domains/dam/user/components/DamAssetLicenceGroupRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js +9 -10
  762. package/dist/domains/dam/user/components/DamAssetLicenceRemoteAutocomplete.js +1 -2
  763. package/dist/domains/dam/user/components/DamAssetLicenceRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js +10 -11
  764. package/dist/domains/dam/user/components/DamDistributionServiceSelect.js +1 -2
  765. package/dist/domains/dam/user/components/DamDistributionServiceSelect.js.map +1 -1
  766. package/dist/domains/dam/user/components/DamDistributionServiceSelect.vue.d.ts +1 -1
  767. package/dist/domains/dam/user/components/DamDistributionServiceSelect.vue_vue_type_script_setup_true_lang.js +4 -5
  768. package/dist/domains/dam/user/components/DamDistributionServiceSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
  769. package/dist/domains/dam/user/components/DamExtSystemRemoteAutocomplete.js +1 -2
  770. package/dist/domains/dam/user/components/DamExtSystemRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js +8 -9
  771. package/dist/domains/dam/user/components/DamExternalProviderAssetSelect.js +1 -2
  772. package/dist/domains/dam/user/components/DamExternalProviderAssetSelect.js.map +1 -1
  773. package/dist/domains/dam/user/components/DamExternalProviderAssetSelect.vue.d.ts +1 -1
  774. package/dist/domains/dam/user/components/DamExternalProviderAssetSelect.vue_vue_type_script_setup_true_lang.js +4 -5
  775. package/dist/domains/dam/user/components/DamExternalProviderAssetSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
  776. package/dist/domains/dam/user/components/DamUserFilterRemoteAutocomplete.js +1 -2
  777. package/dist/domains/dam/user/components/DamUserFilterRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js +9 -10
  778. package/dist/domains/dam/user/components/DamUserRemoteAutocomplete.js +1 -2
  779. package/dist/domains/dam/user/components/DamUserRemoteAutocomplete.js.map +1 -1
  780. package/dist/domains/dam/user/components/DamUserRemoteAutocomplete.vue.d.ts +1 -1
  781. package/dist/domains/dam/user/components/DamUserRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js +11 -12
  782. package/dist/domains/dam/user/components/DamUserRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
  783. package/dist/domains/dam/user/composables/assetLicenceActions.js +1 -2
  784. package/dist/domains/dam/user/composables/assetLicenceGroupActions.js +1 -2
  785. package/dist/domains/dam/user/composables/cachedAssetLicences.d.ts +17 -0
  786. package/dist/domains/dam/user/composables/cachedAssetLicences.js +35 -0
  787. package/dist/domains/dam/user/composables/cachedAssetLicences.js.map +1 -0
  788. package/dist/domains/dam/user/composables/damUserSelectActions.d.ts +1 -1
  789. package/dist/domains/dam/user/composables/damUserSelectActions.js +1 -2
  790. package/dist/domains/dam/user/composables/damUserSelectActions.js.map +1 -1
  791. package/dist/domains/dam/user/composables/extSystemActions.js +1 -2
  792. package/dist/domains/dam/user/filter/AssetLicenceFilter.js +7 -8
  793. package/dist/domains/dam/user/filter/AssetLicenceGroupFilter.js +7 -8
  794. package/dist/domains/dam/user/filter/DamUserFilter.js +1 -2
  795. package/dist/domains/dam/user/filter/ExtSystemFilter.js +7 -8
  796. package/dist/domains/dam/user/types/DamDistributionServiceType.d.ts +2 -2
  797. package/dist/domains/dam/user/types/DamDistributionServiceType.js +1 -2
  798. package/dist/domains/dam/user/types/DamDistributionServiceType.js.map +1 -1
  799. package/dist/domains/dam/user/types/DamExternalProviderAssetType.d.ts +1 -1
  800. package/dist/domains/dam/user/types/DamExternalProviderAssetType.js +1 -2
  801. package/dist/domains/dam/user/types/DamExternalProviderAssetType.js.map +1 -1
  802. package/dist/domains/filters/bookmarks/api/userAdminConfigApi.d.ts +1 -3
  803. package/dist/domains/filters/bookmarks/api/userAdminConfigApi.js +14 -15
  804. package/dist/domains/filters/bookmarks/api/userAdminConfigApi.js.map +1 -1
  805. package/dist/domains/filters/bookmarks/components/AFilterBookmarkButton.js +1 -2
  806. package/dist/domains/filters/bookmarks/components/AFilterBookmarkButton.vue_vue_type_script_setup_true_lang.js +1 -2
  807. package/dist/domains/filters/bookmarks/components/FilterBookmarkDialog.js +1 -2
  808. package/dist/domains/filters/bookmarks/components/FilterBookmarkDialog.js.map +1 -1
  809. package/dist/domains/filters/bookmarks/components/FilterBookmarkDialog.vue_vue_type_script_setup_true_lang.js +108 -109
  810. package/dist/domains/filters/bookmarks/components/FilterBookmarkDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
  811. package/dist/domains/filters/bookmarks/components/FilterBookmarks.js +1 -2
  812. package/dist/domains/filters/bookmarks/components/FilterBookmarks.vue_vue_type_script_setup_true_lang.js +65 -66
  813. package/dist/domains/filters/bookmarks/components/FilterBookmarks.vue_vue_type_script_setup_true_lang.js.map +1 -1
  814. package/dist/domains/filters/bookmarks/factory/UserAdminConfigFactory.js +7 -8
  815. package/dist/domains/filters/bookmarks/filter/UserAdminConfigFilter.js +1 -2
  816. package/dist/domains/filters/bookmarks/store/bookmarksStore.d.ts +3 -3
  817. package/dist/domains/filters/bookmarks/store/bookmarksStore.js +9 -10
  818. package/dist/domains/filters/bookmarks/store/bookmarksStore.js.map +1 -1
  819. package/dist/domains/filters/bookmarks/types/UserAdminConfig.js +1 -2
  820. package/dist/domains/filters/components/AFilterAdvancedButton.js +1 -2
  821. package/dist/domains/filters/components/AFilterAdvancedButton.vue_vue_type_script_setup_true_lang.js +1 -2
  822. package/dist/domains/filters/components/AFilterBooleanSelect.js +1 -2
  823. package/dist/domains/filters/components/AFilterBooleanSelect.vue_vue_type_script_setup_true_lang.js +1 -2
  824. package/dist/domains/filters/components/AFilterDatetimePicker.js +1 -2
  825. package/dist/domains/filters/components/AFilterDatetimePicker.js.map +1 -1
  826. package/dist/domains/filters/components/AFilterDatetimePicker.vue_vue_type_script_setup_true_lang.js +14 -15
  827. package/dist/domains/filters/components/AFilterDatetimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  828. package/dist/domains/filters/components/AFilterEmpty.js +1 -2
  829. package/dist/domains/filters/components/AFilterEmpty.vue_vue_type_script_setup_true_lang.js +1 -2
  830. package/dist/domains/filters/components/AFilterInteger.js +1 -2
  831. package/dist/domains/filters/components/AFilterInteger.js.map +1 -1
  832. package/dist/domains/filters/components/AFilterInteger.vue_vue_type_script_setup_true_lang.js +11 -12
  833. package/dist/domains/filters/components/AFilterInteger.vue_vue_type_script_setup_true_lang.js.map +1 -1
  834. package/dist/domains/filters/components/AFilterResetButton.js +1 -2
  835. package/dist/domains/filters/components/AFilterResetButton.vue_vue_type_script_setup_true_lang.js +1 -2
  836. package/dist/domains/filters/components/AFilterString.js +1 -2
  837. package/dist/domains/filters/components/AFilterString.js.map +1 -1
  838. package/dist/domains/filters/components/AFilterString.vue_vue_type_script_setup_true_lang.js +5 -6
  839. package/dist/domains/filters/components/AFilterString.vue_vue_type_script_setup_true_lang.js.map +1 -1
  840. package/dist/domains/filters/components/AFilterSubmitButton.js +1 -2
  841. package/dist/domains/filters/components/AFilterSubmitButton.vue_vue_type_script_setup_true_lang.js +1 -2
  842. package/dist/domains/filters/components/AFilterTimeInterval.js +4 -5
  843. package/dist/domains/filters/components/AFilterTimeInterval.js.map +1 -1
  844. package/dist/domains/filters/components/AFilterTimeInterval.vue.d.ts +5 -3
  845. package/dist/domains/filters/components/AFilterTimeInterval.vue_vue_type_script_setup_true_lang.js +91 -92
  846. package/dist/domains/filters/components/AFilterTimeInterval.vue_vue_type_script_setup_true_lang.js.map +1 -1
  847. package/dist/domains/filters/components/AFilterValueObjectOptionsSelect.js +1 -2
  848. package/dist/domains/filters/components/AFilterValueObjectOptionsSelect.js.map +1 -1
  849. package/dist/domains/filters/components/AFilterValueObjectOptionsSelect.vue_vue_type_script_setup_true_lang.js +16 -17
  850. package/dist/domains/filters/components/AFilterValueObjectOptionsSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
  851. package/dist/domains/filters/components/AFilterWrapper.js +1 -2
  852. package/dist/domains/filters/components/AFilterWrapper.js.map +1 -1
  853. package/dist/domains/filters/components/AFilterWrapper.vue.d.ts +17 -15
  854. package/dist/domains/filters/components/AFilterWrapper.vue_vue_type_script_setup_true_lang.js +95 -95
  855. package/dist/domains/filters/components/AFilterWrapper.vue_vue_type_script_setup_true_lang.js.map +1 -1
  856. package/dist/domains/filters/components/AFilterWrapperSidebar.js +1 -2
  857. package/dist/domains/filters/components/AFilterWrapperSidebar.vue.d.ts +5 -3
  858. package/dist/domains/filters/components/AFilterWrapperSidebar.vue_vue_type_script_setup_true_lang.js +7 -8
  859. package/dist/domains/filters/components/FilterDetailItem.js +1 -2
  860. package/dist/domains/filters/components/FilterDetailItem.vue_vue_type_script_setup_true_lang.js +10 -11
  861. package/dist/domains/filters/components/FilterDetailItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  862. package/dist/domains/filters/components/FiltersSelected.js +1 -2
  863. package/dist/domains/filters/components/FiltersSelected.js.map +1 -1
  864. package/dist/domains/filters/components/FiltersSelected.vue_vue_type_script_setup_true_lang.js +13 -14
  865. package/dist/domains/filters/components/FiltersSelected.vue_vue_type_script_setup_true_lang.js.map +1 -1
  866. package/dist/domains/filters/composables/filterFactory.d.ts +28 -9
  867. package/dist/domains/filters/composables/filterFactory.js +179 -162
  868. package/dist/domains/filters/composables/filterFactory.js.map +1 -1
  869. package/dist/domains/filters/composables/filterTimeIntervalTools.js +1 -2
  870. package/dist/domains/filters/datatable/components/ADatatableConfigButton.js +1 -2
  871. package/dist/domains/filters/datatable/components/ADatatableConfigButton.vue_vue_type_script_setup_true_lang.js +1 -2
  872. package/dist/domains/filters/datatable/components/ADatatableOrdering.js +1 -2
  873. package/dist/domains/filters/datatable/components/ADatatableOrdering.js.map +1 -1
  874. package/dist/domains/filters/datatable/components/ADatatableOrdering.vue_vue_type_script_setup_true_lang.js +25 -24
  875. package/dist/domains/filters/datatable/components/ADatatableOrdering.vue_vue_type_script_setup_true_lang.js.map +1 -1
  876. package/dist/domains/filters/datatable/components/ADatatablePagination.js +1 -2
  877. package/dist/domains/filters/datatable/components/ADatatablePagination.js.map +1 -1
  878. package/dist/domains/filters/datatable/components/ADatatablePagination.vue_vue_type_script_setup_true_lang.js +7 -10
  879. package/dist/domains/filters/datatable/components/ADatatablePagination.vue_vue_type_script_setup_true_lang.js.map +1 -1
  880. package/dist/domains/filters/datatable/composables/createDatatableColumnsConfig.js +13 -14
  881. package/dist/domains/filters/datatable/utils/datatable.js +1 -2
  882. package/dist/domains/filters/datatable/utils/datatableColumns.js +1 -2
  883. package/dist/domains/filters/utils/filterInjectionKeys.js +1 -2
  884. package/dist/domains/filters/utils/filterInjectionKeys.js.map +1 -1
  885. package/dist/domains/form/components/AFormDatetimePicker.js +1 -2
  886. package/dist/domains/form/components/AFormDatetimePicker.js.map +1 -1
  887. package/dist/domains/form/components/AFormDatetimePicker.vue.d.ts +7 -5
  888. package/dist/domains/form/components/AFormDatetimePicker.vue_vue_type_script_setup_true_lang.js +19 -20
  889. package/dist/domains/form/components/AFormDatetimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  890. package/dist/domains/form/components/AFormFlagDatetimePicker.js +1 -2
  891. package/dist/domains/form/components/AFormFlagDatetimePicker.js.map +1 -1
  892. package/dist/domains/form/components/AFormFlagDatetimePicker.vue.d.ts +7 -5
  893. package/dist/domains/form/components/AFormFlagDatetimePicker.vue_vue_type_script_setup_true_lang.js +23 -24
  894. package/dist/domains/form/components/AFormFlagDatetimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  895. package/dist/domains/form/components/AFormRemoteCheckbox.js +1 -2
  896. package/dist/domains/form/components/AFormRemoteCheckbox.vue_vue_type_script_setup_true_lang.js +9 -10
  897. package/dist/domains/form/components/AFormRemoteSwitch.js +1 -2
  898. package/dist/domains/form/components/AFormRemoteSwitch.vue_vue_type_script_setup_true_lang.js +9 -10
  899. package/dist/domains/form/components/AFormSwitch.js +1 -2
  900. package/dist/domains/form/components/AFormSwitch.vue.d.ts +7 -5
  901. package/dist/domains/form/components/AFormSwitch.vue_vue_type_script_setup_true_lang.js +12 -13
  902. package/dist/domains/form/components/AFormTextField.js +1 -2
  903. package/dist/domains/form/components/AFormTextField.js.map +1 -1
  904. package/dist/domains/form/components/AFormTextField.vue.d.ts +9 -7
  905. package/dist/domains/form/components/AFormTextField.vue_vue_type_script_setup_true_lang.js +14 -15
  906. package/dist/domains/form/components/AFormTextField.vue_vue_type_script_setup_true_lang.js.map +1 -1
  907. package/dist/domains/form/components/AFormTextarea.js +1 -2
  908. package/dist/domains/form/components/AFormTextarea.vue.d.ts +13 -11
  909. package/dist/domains/form/components/AFormTextarea.vue_vue_type_script_setup_true_lang.js +21 -22
  910. package/dist/domains/form/components/AFormTextarea.vue_vue_type_script_setup_true_lang.js.map +1 -1
  911. package/dist/domains/form/components/AFormValueObjectOptionsSelect.js +1 -2
  912. package/dist/domains/form/components/AFormValueObjectOptionsSelect.vue.d.ts +7 -5
  913. package/dist/domains/form/components/AFormValueObjectOptionsSelect.vue_vue_type_script_setup_true_lang.js +17 -18
  914. package/dist/domains/form/components/ASystemEntityScope.js +1 -2
  915. package/dist/domains/form/components/ASystemEntityScope.vue.d.ts +5 -3
  916. package/dist/domains/form/components/ASystemEntityScope.vue_vue_type_script_setup_true_lang.js +1 -2
  917. package/dist/domains/job/api/jobApi.js +9 -10
  918. package/dist/domains/job/api/jobApi.js.map +1 -1
  919. package/dist/domains/job/components/AJobBaseCreateForm.js +1 -2
  920. package/dist/domains/job/components/AJobBaseCreateForm.vue_vue_type_script_setup_true_lang.js +8 -9
  921. package/dist/domains/job/components/AJobDetailCommon.js +1 -2
  922. package/dist/domains/job/components/AJobDetailCommon.vue.d.ts +5 -3
  923. package/dist/domains/job/components/AJobDetailCommon.vue_vue_type_script_setup_true_lang.js +9 -10
  924. package/dist/domains/job/components/AJobDetailCommon.vue_vue_type_script_setup_true_lang.js.map +1 -1
  925. package/dist/domains/job/components/AJobPriorityChip.js +1 -2
  926. package/dist/domains/job/components/AJobPriorityChip.vue_vue_type_script_setup_true_lang.js +5 -6
  927. package/dist/domains/job/components/AJobStatusChip.js +1 -2
  928. package/dist/domains/job/components/AJobStatusChip.vue_vue_type_script_setup_true_lang.js +1 -2
  929. package/dist/domains/job/composables/jobPriority.js +1 -2
  930. package/dist/domains/job/factory/JobFactory.js +7 -8
  931. package/dist/domains/job/valueObject/JobBaseResource.js +1 -2
  932. package/dist/domains/job/valueObject/JobStatus.js +1 -2
  933. package/dist/domains/listEditor/components/AListEditor.js +1 -2
  934. package/dist/domains/listEditor/components/AListEditor.js.map +1 -1
  935. package/dist/domains/listEditor/components/AListEditor.vue_vue_type_script_setup_true_lang.js +10 -11
  936. package/dist/domains/listEditor/components/AListEditor.vue_vue_type_script_setup_true_lang.js.map +1 -1
  937. package/dist/domains/listEditor/components/ANestedSortableListEditor.js +1 -2
  938. package/dist/domains/listEditor/components/ANestedSortableListEditor.js.map +1 -1
  939. package/dist/domains/listEditor/components/ANestedSortableListEditor.vue.d.ts +2 -3
  940. package/dist/domains/listEditor/components/ANestedSortableListEditor.vue_vue_type_script_setup_true_lang.js +49 -50
  941. package/dist/domains/listEditor/components/ANestedSortableListEditor.vue_vue_type_script_setup_true_lang.js.map +1 -1
  942. package/dist/domains/listEditor/components/ASortableListEditor.js +1 -2
  943. package/dist/domains/listEditor/components/ASortableListEditor.js.map +1 -1
  944. package/dist/domains/listEditor/components/ASortableListEditor.vue.d.ts +2 -3
  945. package/dist/domains/listEditor/components/ASortableListEditor.vue_vue_type_script_setup_true_lang.js +51 -52
  946. package/dist/domains/listEditor/components/ASortableListEditor.vue_vue_type_script_setup_true_lang.js.map +1 -1
  947. package/dist/domains/listEditor/components/internal/LeChangeParentDialog.js +4 -5
  948. package/dist/domains/listEditor/components/internal/LeChangeParentDialog.js.map +1 -1
  949. package/dist/domains/listEditor/components/internal/LeChangeParentDialog.vue_vue_type_script_setup_true_lang.js +1 -2
  950. package/dist/domains/listEditor/components/internal/LeDeleteDialog.js +1 -2
  951. package/dist/domains/listEditor/components/internal/LeDeleteDialog.vue_vue_type_script_setup_true_lang.js +1 -2
  952. package/dist/domains/listEditor/components/internal/LeDragHandle.js +1 -2
  953. package/dist/domains/listEditor/components/internal/LeDragHandle.vue_vue_type_script_setup_true_lang.js +1 -2
  954. package/dist/domains/listEditor/components/internal/LeEmptyState.js +1 -2
  955. package/dist/domains/listEditor/components/internal/LeEmptyState.vue_vue_type_script_setup_true_lang.js +1 -2
  956. package/dist/domains/listEditor/components/internal/LeMoveToPositionDialog.js +1 -2
  957. package/dist/domains/listEditor/components/internal/LeMoveToPositionDialog.vue_vue_type_script_setup_true_lang.js +1 -2
  958. package/dist/domains/listEditor/components/internal/LeNestedRow.js +1 -2
  959. package/dist/domains/listEditor/components/internal/LeNestedRow.vue_vue_type_script_setup_true_lang.js +24 -25
  960. package/dist/domains/listEditor/components/internal/LeNestedRow.vue_vue_type_script_setup_true_lang.js.map +1 -1
  961. package/dist/domains/listEditor/components/internal/LeStatus.js +1 -2
  962. package/dist/domains/listEditor/components/internal/LeStatus.vue_vue_type_script_setup_true_lang.js +1 -2
  963. package/dist/domains/listEditor/components/internal/LeUnsavedLabel.js +1 -2
  964. package/dist/domains/listEditor/components/internal/LeUnsavedLabel.vue_vue_type_script_setup_true_lang.js +1 -2
  965. package/dist/domains/listEditor/components/internal/constants.js +1 -2
  966. package/dist/domains/listEditor/composables/useContainerWidth.js +1 -2
  967. package/dist/domains/listEditor/composables/useDeleteDialog.js +1 -2
  968. package/dist/domains/listEditor/composables/useDragInstruction.js +1 -2
  969. package/dist/domains/listEditor/composables/useInlineEditing.js +1 -2
  970. package/dist/domains/listEditor/composables/useIsTouchDevice.js +1 -2
  971. package/dist/domains/listEditor/composables/useKeyboardNav.js +2 -3
  972. package/dist/domains/listEditor/composables/useKeyboardNav.js.map +1 -1
  973. package/dist/domains/listEditor/composables/useListEditorController.d.ts +4 -5
  974. package/dist/domains/listEditor/composables/useListEditorController.js +16 -17
  975. package/dist/domains/listEditor/composables/useListEditorController.js.map +1 -1
  976. package/dist/domains/listEditor/composables/useListEditorScopeValidity.js +1 -2
  977. package/dist/domains/listEditor/composables/useListEditorStateScope.js +1 -2
  978. package/dist/domains/listEditor/composables/useNestedListEditor.d.ts +3 -4
  979. package/dist/domains/listEditor/composables/useNestedListEditor.js +1 -2
  980. package/dist/domains/listEditor/composables/useNestedListEditor.js.map +1 -1
  981. package/dist/domains/listEditor/composables/useNestedListEditorController.d.ts +5 -4
  982. package/dist/domains/listEditor/composables/useNestedListEditorController.js +19 -20
  983. package/dist/domains/listEditor/composables/useNestedListEditorController.js.map +1 -1
  984. package/dist/domains/listEditor/composables/useReorderMode.js +1 -2
  985. package/dist/domains/listEditor/composables/useReorderMode.js.map +1 -1
  986. package/dist/domains/listEditor/types/listEditorTypes.d.ts +2 -2
  987. package/dist/domains/listEditor/utils/listEditorLoader.d.ts +5 -5
  988. package/dist/domains/listEditor/utils/listEditorLoader.js +1 -2
  989. package/dist/domains/listEditor/utils/listEditorLoader.js.map +1 -1
  990. package/dist/domains/listEditor/utils/positions.js +1 -2
  991. package/dist/domains/listEditor/utils/resolveCompactText.js +1 -2
  992. package/dist/domains/listEditor/utils/resolveCompactText.js.map +1 -1
  993. package/dist/domains/listEditor/utils/revealInvalidRows.js +1 -2
  994. package/dist/domains/listEditor/utils/tempId.js +1 -2
  995. package/dist/domains/log/api/logApi.d.ts +2 -3
  996. package/dist/domains/log/api/logApi.js +6 -7
  997. package/dist/domains/log/api/logApi.js.map +1 -1
  998. package/dist/domains/log/components/ALogDatatable.js +1 -2
  999. package/dist/domains/log/components/ALogDatatable.js.map +1 -1
  1000. package/dist/domains/log/components/ALogDatatable.vue_vue_type_script_setup_true_lang.js +28 -29
  1001. package/dist/domains/log/components/ALogDatatable.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1002. package/dist/domains/log/components/ALogDetail.js +4 -5
  1003. package/dist/domains/log/components/ALogDetail.js.map +1 -1
  1004. package/dist/domains/log/components/ALogDetail.vue_vue_type_script_setup_true_lang.js +5 -6
  1005. package/dist/domains/log/components/ALogDetailView.js +1 -2
  1006. package/dist/domains/log/components/ALogDetailView.js.map +1 -1
  1007. package/dist/domains/log/components/ALogDetailView.vue.d.ts +1 -1
  1008. package/dist/domains/log/components/ALogDetailView.vue_vue_type_script_setup_true_lang.js +10 -11
  1009. package/dist/domains/log/components/ALogDetailView.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1010. package/dist/domains/log/components/ALogFilter.js +1 -2
  1011. package/dist/domains/log/components/ALogFilter.js.map +1 -1
  1012. package/dist/domains/log/components/ALogFilter.vue_vue_type_script_setup_true_lang.js +8 -9
  1013. package/dist/domains/log/components/ALogFilter.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1014. package/dist/domains/log/components/ALogLevelChip.js +1 -2
  1015. package/dist/domains/log/components/ALogLevelChip.vue_vue_type_script_setup_true_lang.js +1 -2
  1016. package/dist/domains/log/components/ALogListView.js +1 -2
  1017. package/dist/domains/log/components/ALogListView.js.map +1 -1
  1018. package/dist/domains/log/components/ALogListView.vue.d.ts +1 -1
  1019. package/dist/domains/log/components/ALogListView.vue_vue_type_script_setup_true_lang.js +1 -2
  1020. package/dist/domains/log/components/ALogListView.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1021. package/dist/domains/log/composables/logActions.d.ts +4 -5
  1022. package/dist/domains/log/composables/logActions.js +1 -2
  1023. package/dist/domains/log/composables/logActions.js.map +1 -1
  1024. package/dist/domains/log/composables/logType.d.ts +6 -7
  1025. package/dist/domains/log/composables/logType.js +1 -2
  1026. package/dist/domains/log/composables/logType.js.map +1 -1
  1027. package/dist/domains/log/filter/logFilter.d.ts +8 -11
  1028. package/dist/domains/log/filter/logFilter.js +16 -17
  1029. package/dist/domains/log/filter/logFilter.js.map +1 -1
  1030. package/dist/domains/log/valueObject/LogLevel.js +6 -7
  1031. package/dist/domains/log/valueObject/LogLevel.js.map +1 -1
  1032. package/dist/domains/permission/components/APermissionEditor.js +1 -2
  1033. package/dist/domains/permission/components/APermissionEditor.js.map +1 -1
  1034. package/dist/domains/permission/components/APermissionEditor.vue.d.ts +4 -4
  1035. package/dist/domains/permission/components/APermissionEditor.vue_vue_type_script_setup_true_lang.js +28 -29
  1036. package/dist/domains/permission/components/APermissionEditor.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1037. package/dist/domains/permission/components/APermissionGrantEditor.js +1 -2
  1038. package/dist/domains/permission/components/APermissionGrantEditor.vue_vue_type_script_setup_true_lang.js +1 -2
  1039. package/dist/domains/permission/components/APermissionValueChip.js +1 -2
  1040. package/dist/domains/permission/components/APermissionValueChip.vue_vue_type_script_setup_true_lang.js +1 -2
  1041. package/dist/domains/permission/composables/permissionActions.d.ts +3 -6
  1042. package/dist/domains/permission/composables/permissionActions.js +9 -10
  1043. package/dist/domains/permission/composables/permissionActions.js.map +1 -1
  1044. package/dist/domains/permission/config/api/permissionConfigApi.d.ts +2 -2
  1045. package/dist/domains/permission/config/api/permissionConfigApi.js +1 -2
  1046. package/dist/domains/permission/config/api/permissionConfigApi.js.map +1 -1
  1047. package/dist/domains/permission/config/composables/permissionConfigActions.d.ts +3 -7
  1048. package/dist/domains/permission/config/composables/permissionConfigActions.js +9 -10
  1049. package/dist/domains/permission/config/composables/permissionConfigActions.js.map +1 -1
  1050. package/dist/domains/permission/config/factory/PermissionConfigFactory.js +1 -2
  1051. package/dist/domains/permission/config/store/permissionConfigStore.d.ts +2 -4
  1052. package/dist/domains/permission/config/store/permissionConfigStore.js +1 -2
  1053. package/dist/domains/permission/config/store/permissionConfigStore.js.map +1 -1
  1054. package/dist/domains/permission/group/api/permissionGroupApi.d.ts +8 -10
  1055. package/dist/domains/permission/group/api/permissionGroupApi.js +5 -6
  1056. package/dist/domains/permission/group/api/permissionGroupApi.js.map +1 -1
  1057. package/dist/domains/permission/group/components/APermissionGroupDatatable.js +1 -2
  1058. package/dist/domains/permission/group/components/APermissionGroupDatatable.js.map +1 -1
  1059. package/dist/domains/permission/group/components/APermissionGroupDatatable.vue.d.ts +12 -10
  1060. package/dist/domains/permission/group/components/APermissionGroupDatatable.vue_vue_type_script_setup_true_lang.js +41 -42
  1061. package/dist/domains/permission/group/components/APermissionGroupDatatable.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1062. package/dist/domains/permission/group/components/APermissionGroupDetail.js +1 -2
  1063. package/dist/domains/permission/group/components/APermissionGroupDetail.js.map +1 -1
  1064. package/dist/domains/permission/group/components/APermissionGroupDetail.vue.d.ts +21 -22
  1065. package/dist/domains/permission/group/components/APermissionGroupDetail.vue_vue_type_script_setup_true_lang.js +13 -14
  1066. package/dist/domains/permission/group/components/APermissionGroupDetail.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1067. package/dist/domains/permission/group/components/APermissionGroupFilter.js +1 -2
  1068. package/dist/domains/permission/group/components/APermissionGroupFilter.vue_vue_type_script_setup_true_lang.js +11 -12
  1069. package/dist/domains/permission/group/components/APermissionGroupManage.js +1 -2
  1070. package/dist/domains/permission/group/components/APermissionGroupManage.js.map +1 -1
  1071. package/dist/domains/permission/group/components/APermissionGroupManage.vue.d.ts +21 -22
  1072. package/dist/domains/permission/group/components/APermissionGroupManage.vue_vue_type_script_setup_true_lang.js +8 -9
  1073. package/dist/domains/permission/group/components/APermissionGroupManage.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1074. package/dist/domains/permission/group/components/APermissionGroupRemoteAutocomplete.js +1 -2
  1075. package/dist/domains/permission/group/components/APermissionGroupRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js +7 -8
  1076. package/dist/domains/permission/group/composables/cachedPermissionGroups.js +1 -2
  1077. package/dist/domains/permission/group/composables/cachedPermissionGroups.js.map +1 -1
  1078. package/dist/domains/permission/group/composables/permissionGroupActions.d.ts +6 -8
  1079. package/dist/domains/permission/group/composables/permissionGroupActions.js +15 -16
  1080. package/dist/domains/permission/group/composables/permissionGroupActions.js.map +1 -1
  1081. package/dist/domains/permission/group/composables/permissionGroupValidations.d.ts +2 -3
  1082. package/dist/domains/permission/group/composables/permissionGroupValidations.js +1 -2
  1083. package/dist/domains/permission/group/composables/permissionGroupValidations.js.map +1 -1
  1084. package/dist/domains/permission/group/factory/PermissionGroupFactory.js +1 -2
  1085. package/dist/domains/permission/group/filter/permissionGroupFilter.d.ts +2 -3
  1086. package/dist/domains/permission/group/filter/permissionGroupFilter.js +1 -2
  1087. package/dist/domains/permission/group/filter/permissionGroupFilter.js.map +1 -1
  1088. package/dist/domains/permission/group/store/permissionGroupStore.d.ts +3 -6
  1089. package/dist/domains/permission/group/store/permissionGroupStore.js +1 -2
  1090. package/dist/domains/permission/group/store/permissionGroupStore.js.map +1 -1
  1091. package/dist/domains/permission/valueObject/GrantOrigin.js +1 -2
  1092. package/dist/domains/remoteAutocomplete/components/AFilterRemoteAutocomplete.js +1 -2
  1093. package/dist/domains/remoteAutocomplete/components/AFilterRemoteAutocomplete.js.map +1 -1
  1094. package/dist/domains/remoteAutocomplete/components/AFilterRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js +7 -8
  1095. package/dist/domains/remoteAutocomplete/components/AFilterRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1096. package/dist/domains/remoteAutocomplete/components/AFilterRemoteAutocompleteWithMinimal.js +1 -2
  1097. package/dist/domains/remoteAutocomplete/components/AFilterRemoteAutocompleteWithMinimal.js.map +1 -1
  1098. package/dist/domains/remoteAutocomplete/components/AFilterRemoteAutocompleteWithMinimal.vue_vue_type_script_setup_true_lang.js +9 -10
  1099. package/dist/domains/remoteAutocomplete/components/AFilterRemoteAutocompleteWithMinimal.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1100. package/dist/domains/remoteAutocomplete/components/AFormRemoteAutocomplete.js +1 -2
  1101. package/dist/domains/remoteAutocomplete/components/AFormRemoteAutocomplete.js.map +1 -1
  1102. package/dist/domains/remoteAutocomplete/components/AFormRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js +15 -16
  1103. package/dist/domains/remoteAutocomplete/components/AFormRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1104. package/dist/domains/remoteAutocomplete/components/AFormRemoteAutocompleteWithCached.js +1 -2
  1105. package/dist/domains/remoteAutocomplete/components/AFormRemoteAutocompleteWithCached.vue.d.ts +5 -3
  1106. package/dist/domains/remoteAutocomplete/components/AFormRemoteAutocompleteWithCached.vue_vue_type_script_setup_true_lang.js +27 -28
  1107. package/dist/domains/remoteAutocomplete/composables/createRemoteAutocomplete.d.ts +11 -13
  1108. package/dist/domains/remoteAutocomplete/composables/createRemoteAutocomplete.js +27 -28
  1109. package/dist/domains/remoteAutocomplete/composables/createRemoteAutocomplete.js.map +1 -1
  1110. package/dist/domains/subjectSelect/components/AFilterWrapperSubjectSelect.js +1 -2
  1111. package/dist/domains/subjectSelect/components/AFilterWrapperSubjectSelect.vue.d.ts +13 -11
  1112. package/dist/domains/subjectSelect/components/AFilterWrapperSubjectSelect.vue_vue_type_script_setup_true_lang.js +56 -57
  1113. package/dist/domains/subjectSelect/components/AFilterWrapperSubjectSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1114. package/dist/domains/subjectSelect/components/ASubjectSelect.js +1 -2
  1115. package/dist/domains/subjectSelect/components/ASubjectSelect.js.map +1 -1
  1116. package/dist/domains/subjectSelect/components/ASubjectSelect.vue_vue_type_script_setup_true_lang.js +82 -83
  1117. package/dist/domains/subjectSelect/components/ASubjectSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1118. package/dist/domains/subjectSelect/composables/useSubjectSelect.js +55 -54
  1119. package/dist/domains/subjectSelect/composables/useSubjectSelect.js.map +1 -1
  1120. package/dist/domains/subjectSelect/utils/selectStrategies.js +1 -2
  1121. package/dist/domains/system/appShell/components/AActionbar.js +1 -2
  1122. package/dist/domains/system/appShell/components/AActionbar.vue.d.ts +7 -5
  1123. package/dist/domains/system/appShell/components/AActionbar.vue_vue_type_script_setup_true_lang.js +1 -2
  1124. package/dist/domains/system/appShell/components/AActionbarTarget.js +1 -2
  1125. package/dist/domains/system/appShell/components/AActionbarTarget.vue_vue_type_script_setup_true_lang.js +1 -2
  1126. package/dist/domains/system/appShell/components/ALayoutLoader.js +1 -2
  1127. package/dist/domains/system/appShell/components/ALayoutLoader.vue_vue_type_script_setup_true_lang.js +1 -2
  1128. package/dist/domains/system/appShell/components/ALayoutSwitch.js +1 -2
  1129. package/dist/domains/system/appShell/components/ALayoutSwitch.js.map +1 -1
  1130. package/dist/domains/system/appShell/components/ALayoutSwitch.vue.d.ts +7 -5
  1131. package/dist/domains/system/appShell/components/ALayoutSwitch.vue_vue_type_script_setup_true_lang.js +1 -2
  1132. package/dist/domains/system/appShell/components/ALayoutSwitch.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1133. package/dist/domains/system/appShell/composables/teleportSlot.d.ts +0 -1
  1134. package/dist/domains/system/appShell/composables/teleportSlot.js +1 -2
  1135. package/dist/domains/system/appShell/composables/teleportSlot.js.map +1 -1
  1136. package/dist/domains/system/components/AAdminSwitcher.js +1 -2
  1137. package/dist/domains/system/components/AAdminSwitcher.vue_vue_type_script_setup_true_lang.js +1 -2
  1138. package/dist/domains/system/components/AAlerts.js +1 -2
  1139. package/dist/domains/system/components/AAlerts.js.map +1 -1
  1140. package/dist/domains/system/components/AAlerts.vue_vue_type_script_setup_true_lang.js +1 -2
  1141. package/dist/domains/system/components/AAlerts.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1142. package/dist/domains/system/components/ALanguageSelect.js +4 -5
  1143. package/dist/domains/system/components/ALanguageSelect.js.map +1 -1
  1144. package/dist/domains/system/components/ALanguageSelect.vue_vue_type_script_setup_true_lang.js +11 -12
  1145. package/dist/domains/system/components/AThemeSelect.js +1 -2
  1146. package/dist/domains/system/components/AThemeSelect.vue_vue_type_script_setup_true_lang.js +1 -2
  1147. package/dist/domains/system/composables/alerts.js +1 -2
  1148. package/dist/domains/system/composables/alerts.js.map +1 -1
  1149. package/dist/domains/system/composables/alertsQueue.js +1 -2
  1150. package/dist/domains/system/composables/breadcrumbs.d.ts +6 -6
  1151. package/dist/domains/system/composables/breadcrumbs.js +8 -9
  1152. package/dist/domains/system/composables/breadcrumbs.js.map +1 -1
  1153. package/dist/domains/system/composables/languageSettings.js +1 -2
  1154. package/dist/domains/system/composables/languageSettings.js.map +1 -1
  1155. package/dist/domains/system/composables/loginStatus.js +1 -2
  1156. package/dist/domains/system/composables/loginStatus.js.map +1 -1
  1157. package/dist/domains/system/composables/navigationError.d.ts +6 -8
  1158. package/dist/domains/system/composables/navigationError.js +1 -2
  1159. package/dist/domains/system/composables/navigationError.js.map +1 -1
  1160. package/dist/domains/system/composables/pageNavigation.d.ts +9 -10
  1161. package/dist/domains/system/composables/pageNavigation.js +1 -2
  1162. package/dist/domains/system/composables/pageNavigation.js.map +1 -1
  1163. package/dist/domains/system/composables/recordActions.d.ts +33 -0
  1164. package/dist/domains/system/composables/recordActions.js +32 -0
  1165. package/dist/domains/system/composables/recordActions.js.map +1 -0
  1166. package/dist/domains/system/composables/recordPage.d.ts +26 -31
  1167. package/dist/domains/system/composables/recordPage.js +71 -70
  1168. package/dist/domains/system/composables/recordPage.js.map +1 -1
  1169. package/dist/domains/system/composables/routeHistory.d.ts +4 -5
  1170. package/dist/domains/system/composables/routeHistory.js +34 -28
  1171. package/dist/domains/system/composables/routeHistory.js.map +1 -1
  1172. package/dist/domains/system/composables/sentry.js +1 -2
  1173. package/dist/domains/system/composables/sentry.js.map +1 -1
  1174. package/dist/domains/system/composables/themeSettings.js +1 -2
  1175. package/dist/domains/system/composables/useDebugFeatures.d.ts +3 -6
  1176. package/dist/domains/system/composables/useDebugFeatures.js +1 -2
  1177. package/dist/domains/system/composables/useDebugFeatures.js.map +1 -1
  1178. package/dist/domains/system/composables/useUnreleasedFeatures.js +1 -2
  1179. package/dist/domains/system/composables/useUserActivity.js +1 -2
  1180. package/dist/domains/system/flags/components/FlagCountry.js +1 -2
  1181. package/dist/domains/system/flags/components/FlagCountry.vue_vue_type_script_setup_true_lang.js +1 -2
  1182. package/dist/domains/system/flags/components/FlagEmpty.js +1 -2
  1183. package/dist/domains/system/flags/components/FlagEn.js +1 -2
  1184. package/dist/domains/system/flags/components/FlagSk.js +1 -2
  1185. package/dist/domains/system/store/datatablePageStore.d.ts +8 -1
  1186. package/dist/domains/system/store/datatablePageStore.js +11 -5
  1187. package/dist/domains/system/store/datatablePageStore.js.map +1 -1
  1188. package/dist/domains/system/systemBar/components/ASystemBar.js +1 -2
  1189. package/dist/domains/system/systemBar/components/ASystemBar.js.map +1 -1
  1190. package/dist/domains/system/systemBar/components/ASystemBar.vue_vue_type_script_setup_true_lang.js +13 -14
  1191. package/dist/domains/system/systemBar/components/ASystemBar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1192. package/dist/domains/system/systemBar/components/ASystemBarNewVersion.js +1 -2
  1193. package/dist/domains/system/systemBar/components/ASystemBarNewVersion.vue_vue_type_script_setup_true_lang.js +1 -2
  1194. package/dist/domains/system/systemBar/composables/systemBar.js +1 -2
  1195. package/dist/domains/system/systemBar/utils/appReload.d.ts +5 -5
  1196. package/dist/domains/system/systemBar/utils/appReload.js +7 -8
  1197. package/dist/domains/system/systemBar/utils/appReload.js.map +1 -1
  1198. package/dist/domains/system/systemBar/utils/pageReload.js +1 -2
  1199. package/dist/domains/ui/buttons/action/components/AActionCloseButtonHistory.js +1 -2
  1200. package/dist/domains/ui/buttons/action/components/AActionCloseButtonHistory.js.map +1 -1
  1201. package/dist/domains/ui/buttons/action/components/AActionCloseButtonHistory.vue.d.ts +2 -3
  1202. package/dist/domains/ui/buttons/action/components/AActionCloseButtonHistory.vue_vue_type_script_setup_true_lang.js +1 -2
  1203. package/dist/domains/ui/buttons/action/components/AActionCloseButtonHistory.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1204. package/dist/domains/ui/buttons/action/components/AActionCreateButton.js +1 -2
  1205. package/dist/domains/ui/buttons/action/components/AActionCreateButton.vue_vue_type_script_setup_true_lang.js +1 -2
  1206. package/dist/domains/ui/buttons/action/components/AActionDeleteButton.js +1 -2
  1207. package/dist/domains/ui/buttons/action/components/AActionDeleteButton.js.map +1 -1
  1208. package/dist/domains/ui/buttons/action/components/AActionDeleteButton.vue_vue_type_script_setup_true_lang.js +7 -8
  1209. package/dist/domains/ui/buttons/action/components/AActionDeleteButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1210. package/dist/domains/ui/buttons/action/components/AActionEditButton.js +1 -2
  1211. package/dist/domains/ui/buttons/action/components/AActionEditButton.vue_vue_type_script_setup_true_lang.js +5 -6
  1212. package/dist/domains/ui/buttons/action/components/AActionSaveAndCloseButton.js +1 -2
  1213. package/dist/domains/ui/buttons/action/components/AActionSaveAndCloseButton.vue_vue_type_script_setup_true_lang.js +8 -9
  1214. package/dist/domains/ui/buttons/action/components/AActionSaveButton.js +1 -2
  1215. package/dist/domains/ui/buttons/action/components/AActionSaveButton.vue_vue_type_script_setup_true_lang.js +5 -6
  1216. package/dist/domains/ui/buttons/components/ABtnSplit.js +1 -2
  1217. package/dist/domains/ui/buttons/components/ABtnSplit.vue.d.ts +9 -7
  1218. package/dist/domains/ui/buttons/components/ABtnSplit.vue_vue_type_script_setup_true_lang.js +1 -2
  1219. package/dist/domains/ui/buttons/table/components/ATableCopyIdButton.js +1 -2
  1220. package/dist/domains/ui/buttons/table/components/ATableCopyIdButton.vue_vue_type_script_setup_true_lang.js +8 -9
  1221. package/dist/domains/ui/buttons/table/components/ATableDetailButton.js +1 -2
  1222. package/dist/domains/ui/buttons/table/components/ATableDetailButton.vue_vue_type_script_setup_true_lang.js +4 -5
  1223. package/dist/domains/ui/buttons/table/components/ATableEditButton.js +1 -2
  1224. package/dist/domains/ui/buttons/table/components/ATableEditButton.vue_vue_type_script_setup_true_lang.js +4 -5
  1225. package/dist/domains/ui/components/AAnzuUserAvatar.js +1 -2
  1226. package/dist/domains/ui/components/AAnzuUserAvatar.vue_vue_type_script_setup_true_lang.js +1 -2
  1227. package/dist/domains/ui/components/AAvatarColorPicker.js +1 -2
  1228. package/dist/domains/ui/components/AAvatarColorPicker.js.map +1 -1
  1229. package/dist/domains/ui/components/AAvatarColorPicker.vue_vue_type_script_setup_true_lang.js +1 -2
  1230. package/dist/domains/ui/components/AAvatarColorPicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1231. package/dist/domains/ui/components/ABooleanSelect.js +1 -2
  1232. package/dist/domains/ui/components/ABooleanSelect.vue_vue_type_script_setup_true_lang.js +1 -2
  1233. package/dist/domains/ui/components/ABooleanValue.js +1 -2
  1234. package/dist/domains/ui/components/ABooleanValue.vue_vue_type_script_setup_true_lang.js +1 -2
  1235. package/dist/domains/ui/components/ACard.js +1 -2
  1236. package/dist/domains/ui/components/ACard.js.map +1 -1
  1237. package/dist/domains/ui/components/ACard.vue.d.ts +7 -3
  1238. package/dist/domains/ui/components/ACard.vue_vue_type_script_setup_true_lang.js +7 -4
  1239. package/dist/domains/ui/components/ACard.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1240. package/dist/domains/ui/components/ACardLoader.js +1 -2
  1241. package/dist/domains/ui/components/ACardLoader.js.map +1 -1
  1242. package/dist/domains/ui/components/ACardLoader.vue.d.ts +1 -0
  1243. package/dist/domains/ui/components/ACardLoader.vue_vue_type_script_setup_true_lang.js +14 -9
  1244. package/dist/domains/ui/components/ACardLoader.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1245. package/dist/domains/ui/components/AChipNoLink.js +1 -2
  1246. package/dist/domains/ui/components/AChipNoLink.vue.d.ts +5 -3
  1247. package/dist/domains/ui/components/AChipNoLink.vue_vue_type_script_setup_true_lang.js +1 -2
  1248. package/dist/domains/ui/components/ACopyText.js +1 -2
  1249. package/dist/domains/ui/components/ACopyText.vue.d.ts +9 -7
  1250. package/dist/domains/ui/components/ACopyText.vue_vue_type_script_setup_true_lang.js +7 -8
  1251. package/dist/domains/ui/components/ACreateDialog.js +1 -2
  1252. package/dist/domains/ui/components/ACreateDialog.js.map +1 -1
  1253. package/dist/domains/ui/components/ACreateDialog.vue.d.ts +11 -9
  1254. package/dist/domains/ui/components/ACreateDialog.vue_vue_type_script_setup_true_lang.js +16 -17
  1255. package/dist/domains/ui/components/ACreateDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1256. package/dist/domains/ui/components/ACurrentUserDropdown.js +1 -2
  1257. package/dist/domains/ui/components/ACurrentUserDropdown.vue_vue_type_script_setup_true_lang.js +1 -2
  1258. package/dist/domains/ui/components/ADialogToolbar.js +1 -2
  1259. package/dist/domains/ui/components/ADialogToolbar.vue.d.ts +5 -3
  1260. package/dist/domains/ui/components/ADialogToolbar.vue_vue_type_script_setup_true_lang.js +1 -2
  1261. package/dist/domains/ui/components/AIconGroup.js +1 -2
  1262. package/dist/domains/ui/components/AIconGroup.vue_vue_type_script_setup_true_lang.js +1 -2
  1263. package/dist/domains/ui/components/AProgress.js +1 -2
  1264. package/dist/domains/ui/components/AProgress.vue_vue_type_script_setup_true_lang.js +1 -2
  1265. package/dist/domains/ui/components/ARow.js +1 -2
  1266. package/dist/domains/ui/components/ARow.vue.d.ts +5 -3
  1267. package/dist/domains/ui/components/ARow.vue_vue_type_script_setup_true_lang.js +1 -2
  1268. package/dist/domains/ui/components/ATimeTrackingFields.js +1 -2
  1269. package/dist/domains/ui/components/ATimeTrackingFields.js.map +1 -1
  1270. package/dist/domains/ui/components/ATimeTrackingFields.vue_vue_type_script_setup_true_lang.js +6 -7
  1271. package/dist/domains/ui/components/ATimeTrackingFields.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1272. package/dist/domains/ui/components/AUserAndTimeTrackingFields.js +1 -2
  1273. package/dist/domains/ui/components/AUserAndTimeTrackingFields.js.map +1 -1
  1274. package/dist/domains/ui/components/AUserAndTimeTrackingFields.vue.d.ts +3 -5
  1275. package/dist/domains/ui/components/AUserAndTimeTrackingFields.vue_vue_type_script_setup_true_lang.js +12 -13
  1276. package/dist/domains/ui/components/AUserAndTimeTrackingFields.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1277. package/dist/domains/ui/datetime/components/ADatetime.js +1 -2
  1278. package/dist/domains/ui/datetime/components/ADatetime.vue_vue_type_script_setup_true_lang.js +1 -2
  1279. package/dist/domains/ui/datetime/components/ADatetimePicker.js +4 -5
  1280. package/dist/domains/ui/datetime/components/ADatetimePicker.js.map +1 -1
  1281. package/dist/domains/ui/datetime/components/ADatetimePicker.vue.d.ts +5 -3
  1282. package/dist/domains/ui/datetime/components/ADatetimePicker.vue_vue_type_script_setup_true_lang.js +2 -3
  1283. package/dist/domains/ui/datetime/components/ADatetimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1284. package/dist/domains/ui/datetime/components/TimePicker.js +4 -5
  1285. package/dist/domains/ui/datetime/components/TimePicker.js.map +1 -1
  1286. package/dist/domains/ui/datetime/components/TimePicker.vue_vue_type_script_setup_true_lang.js +1 -2
  1287. package/dist/domains/ui/datetime/composables/remainingTime.js +1 -2
  1288. package/dist/domains/ui/file/components/AFileDropzone.js +1 -2
  1289. package/dist/domains/ui/file/components/AFileDropzone.js.map +1 -1
  1290. package/dist/domains/ui/file/components/AFileDropzone.vue.d.ts +1 -1
  1291. package/dist/domains/ui/file/components/AFileDropzone.vue_vue_type_script_setup_true_lang.js +6 -7
  1292. package/dist/domains/ui/file/components/AFileDropzone.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1293. package/dist/domains/ui/file/components/AFileInput.js +1 -2
  1294. package/dist/domains/ui/file/components/AFileInput.js.map +1 -1
  1295. package/dist/domains/ui/file/components/AFileInput.vue.d.ts +9 -7
  1296. package/dist/domains/ui/file/components/AFileInput.vue_vue_type_script_setup_true_lang.js +5 -6
  1297. package/dist/domains/ui/file/components/AFileInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1298. package/dist/domains/ui/file/components/AFileInputDialog.js +1 -2
  1299. package/dist/domains/ui/file/components/AFileInputDialog.js.map +1 -1
  1300. package/dist/domains/ui/file/components/AFileInputDialog.vue.d.ts +9 -7
  1301. package/dist/domains/ui/file/components/AFileInputDialog.vue_vue_type_script_setup_true_lang.js +7 -8
  1302. package/dist/domains/ui/file/components/AFileInputDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1303. package/dist/domains/ui/file/composables/dropzone.js +1 -2
  1304. package/dist/domains/ui/file/composables/dropzone.js.map +1 -1
  1305. package/dist/domains/ui/file/composables/formatAndSizeCheck.js +25 -26
  1306. package/dist/domains/ui/file/composables/formatAndSizeCheck.js.map +1 -1
  1307. package/dist/domains/ui/file/utils/fileType.js +1 -2
  1308. package/dist/domains/ui/view/components/AGenericView.js +1 -2
  1309. package/dist/domains/ui/view/components/AGenericView.vue.d.ts +7 -5
  1310. package/dist/domains/ui/view/components/AGenericView.vue_vue_type_script_setup_true_lang.js +1 -2
  1311. package/dist/domains/ui/view/components/ALoginView.js +4 -5
  1312. package/dist/domains/ui/view/components/ALoginView.js.map +1 -1
  1313. package/dist/domains/ui/view/components/ALoginView.vue.d.ts +5 -3
  1314. package/dist/domains/ui/view/components/ALoginView.vue_vue_type_script_setup_true_lang.js +1 -2
  1315. package/dist/domains/ui/view/components/ALoginView.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1316. package/dist/domains/ui/view/components/ALogoutView.js +1 -2
  1317. package/dist/domains/ui/view/components/ALogoutView.js.map +1 -1
  1318. package/dist/domains/ui/view/components/ALogoutView.vue_vue_type_script_setup_true_lang.js +1 -2
  1319. package/dist/domains/ui/view/components/ALogoutView.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1320. package/dist/domains/ui/view/components/ANotFoundView.js +1 -2
  1321. package/dist/domains/ui/view/components/ANotFoundView.js.map +1 -1
  1322. package/dist/domains/ui/view/components/ANotFoundView.vue_vue_type_script_setup_true_lang.js +1 -2
  1323. package/dist/domains/ui/view/components/ANotFoundView.vue_vue_type_script_setup_true_lang.js.map +1 -1
  1324. package/dist/domains/ui/view/components/AUnauthorizedView.js +1 -2
  1325. package/dist/domains/ui/view/components/AUnauthorizedView.vue_vue_type_script_setup_true_lang.js +1 -2
  1326. package/dist/domains/unsavedGuard/components/AUnsavedConfirmDialog.js +4 -5
  1327. package/dist/domains/unsavedGuard/components/AUnsavedConfirmDialog.js.map +1 -1
  1328. package/dist/domains/unsavedGuard/components/AUnsavedConfirmDialog.vue_vue_type_script_setup_true_lang.js +1 -2
  1329. package/dist/domains/unsavedGuard/composables/useUnsavedChangesGuard.d.ts +6 -7
  1330. package/dist/domains/unsavedGuard/composables/useUnsavedChangesGuard.js +1 -2
  1331. package/dist/domains/unsavedGuard/composables/useUnsavedChangesGuard.js.map +1 -1
  1332. package/dist/domains/unsavedGuard/composables/useUnsavedSection.js +1 -2
  1333. package/dist/lib.d.ts +6 -4
  1334. package/dist/locales/cs/common/alert.js +1 -2
  1335. package/dist/locales/cs/common/anzuUser.js +1 -2
  1336. package/dist/locales/cs/common/assetSelect.js +1 -2
  1337. package/dist/locales/cs/common/button.js +1 -2
  1338. package/dist/locales/cs/common/collab.js +1 -2
  1339. package/dist/locales/cs/common/confirmDialog.js +1 -2
  1340. package/dist/locales/cs/common/customForm.js +1 -2
  1341. package/dist/locales/cs/common/customFormElement.js +1 -2
  1342. package/dist/locales/cs/common/damImage.js +30 -2
  1343. package/dist/locales/cs/common/damImage.js.map +1 -1
  1344. package/dist/locales/cs/common/dayOfWeek.js +1 -2
  1345. package/dist/locales/cs/common/filter.js +1 -2
  1346. package/dist/locales/cs/common/job.js +1 -2
  1347. package/dist/locales/cs/common/linkDto.js +1 -2
  1348. package/dist/locales/cs/common/listItemDto.js +1 -2
  1349. package/dist/locales/cs/common/log.js +1 -2
  1350. package/dist/locales/cs/common/model.js +1 -2
  1351. package/dist/locales/cs/common/permission.js +1 -2
  1352. package/dist/locales/cs/common/permissionEditor.js +1 -2
  1353. package/dist/locales/cs/common/permissionGroup.js +1 -2
  1354. package/dist/locales/cs/common/routeSettings.js +1 -2
  1355. package/dist/locales/cs/common/sortable.js +1 -2
  1356. package/dist/locales/cs/common/subjectSelect.js +1 -2
  1357. package/dist/locales/cs/common/system.js +1 -2
  1358. package/dist/locales/cs/common/time.js +1 -2
  1359. package/dist/locales/cs/common/userSystem.js +1 -2
  1360. package/dist/locales/cs/error/apiDependencyExists.js +1 -2
  1361. package/dist/locales/cs/error/apiForbiddenOperation.js +1 -2
  1362. package/dist/locales/cs/error/apiTimedOut.js +1 -2
  1363. package/dist/locales/cs/error/apiValidation.js +1 -2
  1364. package/dist/locales/cs/error/jsValidation.js +1 -2
  1365. package/dist/locales/cs/vuetify.js +1 -2
  1366. package/dist/locales/cs.d.ts +3 -0
  1367. package/dist/locales/cs.js +1 -2
  1368. package/dist/locales/en/common/alert.js +1 -2
  1369. package/dist/locales/en/common/anzuUser.js +1 -2
  1370. package/dist/locales/en/common/assetSelect.js +1 -2
  1371. package/dist/locales/en/common/button.js +1 -2
  1372. package/dist/locales/en/common/collab.js +1 -2
  1373. package/dist/locales/en/common/confirmDialog.js +1 -2
  1374. package/dist/locales/en/common/customForm.js +1 -2
  1375. package/dist/locales/en/common/customFormElement.js +1 -2
  1376. package/dist/locales/en/common/damImage.js +30 -2
  1377. package/dist/locales/en/common/damImage.js.map +1 -1
  1378. package/dist/locales/en/common/dayOfWeek.js +1 -2
  1379. package/dist/locales/en/common/filter.js +1 -2
  1380. package/dist/locales/en/common/job.js +1 -2
  1381. package/dist/locales/en/common/linkDto.js +1 -2
  1382. package/dist/locales/en/common/listItemDto.js +1 -2
  1383. package/dist/locales/en/common/log.js +1 -2
  1384. package/dist/locales/en/common/model.js +1 -2
  1385. package/dist/locales/en/common/permission.js +1 -2
  1386. package/dist/locales/en/common/permissionEditor.js +1 -2
  1387. package/dist/locales/en/common/permissionGroup.js +1 -2
  1388. package/dist/locales/en/common/routeSettings.js +1 -2
  1389. package/dist/locales/en/common/sortable.js +1 -2
  1390. package/dist/locales/en/common/subjectSelect.js +1 -2
  1391. package/dist/locales/en/common/system.js +1 -2
  1392. package/dist/locales/en/common/time.js +1 -2
  1393. package/dist/locales/en/common/userSystem.js +1 -2
  1394. package/dist/locales/en/error/apiDependencyExists.js +1 -2
  1395. package/dist/locales/en/error/apiForbiddenOperation.js +1 -2
  1396. package/dist/locales/en/error/apiTimedOut.js +1 -2
  1397. package/dist/locales/en/error/apiValidation.js +1 -2
  1398. package/dist/locales/en/error/jsValidation.js +1 -2
  1399. package/dist/locales/en/vuetify.js +1 -2
  1400. package/dist/locales/en.d.ts +3 -0
  1401. package/dist/locales/en.js +1 -2
  1402. package/dist/locales/sk/common/alert.js +1 -2
  1403. package/dist/locales/sk/common/anzuUser.js +1 -2
  1404. package/dist/locales/sk/common/assetSelect.js +1 -2
  1405. package/dist/locales/sk/common/button.js +1 -2
  1406. package/dist/locales/sk/common/collab.js +1 -2
  1407. package/dist/locales/sk/common/confirmDialog.js +1 -2
  1408. package/dist/locales/sk/common/customForm.js +1 -2
  1409. package/dist/locales/sk/common/customFormElement.js +1 -2
  1410. package/dist/locales/sk/common/damImage.js +30 -2
  1411. package/dist/locales/sk/common/damImage.js.map +1 -1
  1412. package/dist/locales/sk/common/dayOfWeek.js +1 -2
  1413. package/dist/locales/sk/common/filter.js +1 -2
  1414. package/dist/locales/sk/common/job.js +1 -2
  1415. package/dist/locales/sk/common/linkDto.js +1 -2
  1416. package/dist/locales/sk/common/listItemDto.js +1 -2
  1417. package/dist/locales/sk/common/log.js +1 -2
  1418. package/dist/locales/sk/common/model.js +1 -2
  1419. package/dist/locales/sk/common/permission.js +1 -2
  1420. package/dist/locales/sk/common/permissionEditor.js +1 -2
  1421. package/dist/locales/sk/common/permissionGroup.js +1 -2
  1422. package/dist/locales/sk/common/routeSettings.js +1 -2
  1423. package/dist/locales/sk/common/sortable.js +1 -2
  1424. package/dist/locales/sk/common/subjectSelect.js +1 -2
  1425. package/dist/locales/sk/common/system.js +1 -2
  1426. package/dist/locales/sk/common/time.js +1 -2
  1427. package/dist/locales/sk/common/userSystem.js +1 -2
  1428. package/dist/locales/sk/error/apiDependencyExists.js +1 -2
  1429. package/dist/locales/sk/error/apiForbiddenOperation.js +1 -2
  1430. package/dist/locales/sk/error/apiTimedOut.js +1 -2
  1431. package/dist/locales/sk/error/apiValidation.js +1 -2
  1432. package/dist/locales/sk/error/jsValidation.js +1 -2
  1433. package/dist/locales/sk/vuetify.js +1 -2
  1434. package/dist/locales/sk.d.ts +3 -0
  1435. package/dist/locales/sk.js +1 -2
  1436. package/dist/plugins/commonVuetifyConfig.d.ts +4 -49
  1437. package/dist/plugins/commonVuetifyConfig.js +1 -2
  1438. package/dist/plugins/commonVuetifyConfig.js.map +1 -1
  1439. package/dist/plugins/i18n.d.ts +7 -5
  1440. package/dist/plugins/i18n.js +1 -2
  1441. package/dist/plugins/i18n.js.map +1 -1
  1442. package/dist/plugins/pluginOptions.d.ts +4 -2
  1443. package/dist/plugins/pluginOptions.js +1 -2
  1444. package/dist/plugins/pluginOptions.js.map +1 -1
  1445. package/dist/plugins/webfontloader.js +0 -1
  1446. package/dist/plugins/webfontloader.js.map +1 -1
  1447. package/dist/shared/commonConfig.js +0 -1
  1448. package/dist/shared/error/AnzuApiAxiosError.js +1 -2
  1449. package/dist/shared/error/AnzuApiCancelledError.d.ts +5 -8
  1450. package/dist/shared/error/AnzuApiCancelledError.js +1 -2
  1451. package/dist/shared/error/AnzuApiCancelledError.js.map +1 -1
  1452. package/dist/shared/error/AnzuApiDependencyExistsError.js +1 -2
  1453. package/dist/shared/error/AnzuApiForbiddenError.js +1 -2
  1454. package/dist/shared/error/AnzuApiForbiddenOperationError.js +1 -2
  1455. package/dist/shared/error/AnzuApiResponseCodeError.js +1 -2
  1456. package/dist/shared/error/AnzuApiTimeoutError.js +1 -2
  1457. package/dist/shared/error/AnzuApiValidationError.js +1 -2
  1458. package/dist/shared/error/AnzuError.d.ts +3 -5
  1459. package/dist/shared/error/AnzuError.js +1 -2
  1460. package/dist/shared/error/AnzuError.js.map +1 -1
  1461. package/dist/shared/error/AnzuFatalError.js +1 -2
  1462. package/dist/shared/error/AnzuNewVersionFetchError.js +1 -2
  1463. package/dist/shared/error/AuthUnavailableError.d.ts +3 -3
  1464. package/dist/shared/error/AuthUnavailableError.js +1 -2
  1465. package/dist/shared/error/AuthUnavailableError.js.map +1 -1
  1466. package/dist/shared/error/SessionExpiredError.js +1 -2
  1467. package/dist/shared/error/isInCauseChain.d.ts +2 -2
  1468. package/dist/shared/error/isInCauseChain.js +1 -2
  1469. package/dist/shared/error/isInCauseChain.js.map +1 -1
  1470. package/dist/shared/injectionKeys.js +1 -2
  1471. package/dist/shared/statusCodes.js +1 -2
  1472. package/dist/shared/types/CreatedByAware.js +1 -2
  1473. package/dist/shared/types/OwnerAware.js +1 -2
  1474. package/dist/shared/types/UserAndTimeTracking.d.ts +5 -5
  1475. package/dist/shared/types/Validation.d.ts +4 -5
  1476. package/dist/shared/types/common.d.ts +1 -3
  1477. package/dist/shared/types/globalComponents.d.ts +5 -6
  1478. package/dist/shared/types/utils.js +1 -2
  1479. package/dist/shared/utils/array.js +1 -2
  1480. package/dist/shared/utils/boolean.js +1 -2
  1481. package/dist/shared/utils/common.js +1 -2
  1482. package/dist/shared/utils/common.js.map +1 -1
  1483. package/dist/shared/utils/datetime.d.ts +0 -1
  1484. package/dist/shared/utils/datetime.js +0 -1
  1485. package/dist/shared/utils/datetime.js.map +1 -1
  1486. package/dist/shared/utils/datetimePickerValue.d.ts +4 -7
  1487. package/dist/shared/utils/datetimePickerValue.js +0 -1
  1488. package/dist/shared/utils/datetimePickerValue.js.map +1 -1
  1489. package/dist/shared/utils/development.d.ts +3 -3
  1490. package/dist/shared/utils/development.js +1 -2
  1491. package/dist/shared/utils/development.js.map +1 -1
  1492. package/dist/shared/utils/enum.js +1 -2
  1493. package/dist/shared/utils/envConfig.d.ts +4 -4
  1494. package/dist/shared/utils/envConfig.js +1 -2
  1495. package/dist/shared/utils/envConfig.js.map +1 -1
  1496. package/dist/shared/utils/event.js +1 -2
  1497. package/dist/shared/utils/file.js +1 -2
  1498. package/dist/shared/utils/generator.js +1 -2
  1499. package/dist/shared/utils/history.js +1 -2
  1500. package/dist/shared/utils/json.d.ts +1 -1
  1501. package/dist/shared/utils/json.js +1 -2
  1502. package/dist/shared/utils/json.js.map +1 -1
  1503. package/dist/shared/utils/number.js +1 -2
  1504. package/dist/shared/utils/object.js +1 -2
  1505. package/dist/shared/utils/string.js +1 -2
  1506. package/dist/shared/utils/userAndTimeTracking.d.ts +5 -7
  1507. package/dist/shared/utils/userAndTimeTracking.js +1 -2
  1508. package/dist/shared/utils/userAndTimeTracking.js.map +1 -1
  1509. package/dist/shared/validators/vuelidate/common/useValidateBetween.js +1 -2
  1510. package/dist/shared/validators/vuelidate/common/useValidateCompareDates.js +1 -2
  1511. package/dist/shared/validators/vuelidate/common/useValidateEmail.js +1 -2
  1512. package/dist/shared/validators/vuelidate/common/useValidateHexColor.d.ts +3 -5
  1513. package/dist/shared/validators/vuelidate/common/useValidateHexColor.js +1 -2
  1514. package/dist/shared/validators/vuelidate/common/useValidateHexColor.js.map +1 -1
  1515. package/dist/shared/validators/vuelidate/common/useValidateMaxLength.js +1 -2
  1516. package/dist/shared/validators/vuelidate/common/useValidateMaxValue.js +1 -2
  1517. package/dist/shared/validators/vuelidate/common/useValidateMinLength.js +1 -2
  1518. package/dist/shared/validators/vuelidate/common/useValidateMinValue.js +1 -2
  1519. package/dist/shared/validators/vuelidate/common/useValidateNumeric.js +1 -2
  1520. package/dist/shared/validators/vuelidate/common/useValidateRequired.js +1 -2
  1521. package/dist/shared/validators/vuelidate/common/useValidateRequiredIf.js +1 -2
  1522. package/dist/shared/validators/vuelidate/common/useValidateSlug.js +1 -2
  1523. package/dist/shared/validators/vuelidate/common/useValidateStringArrayItemLength.js +1 -2
  1524. package/dist/shared/validators/vuelidate/common/useValidateUrl.js +1 -2
  1525. package/dist/shared/validators/vuelidate/useValidate.js +1 -2
  1526. package/dist/testing/appShell.d.ts +11 -11
  1527. package/dist/testing/appShell.js +1 -2
  1528. package/dist/testing/appShell.js.map +1 -1
  1529. package/dist/testing/closeButtons.d.ts +9 -11
  1530. package/dist/testing/closeButtons.js +1 -2
  1531. package/dist/testing/closeButtons.js.map +1 -1
  1532. package/dist/testing/declaredDependencies.d.ts +7 -7
  1533. package/dist/testing/declaredDependencies.js +1 -2
  1534. package/dist/testing/declaredDependencies.js.map +1 -1
  1535. package/dist/testing/generatedRoutes.d.ts +6 -11
  1536. package/dist/testing/generatedRoutes.js +1 -2
  1537. package/dist/testing/generatedRoutes.js.map +1 -1
  1538. package/dist/testing/routeHistory.d.ts +5 -12
  1539. package/dist/testing/routeHistory.js +1 -2
  1540. package/dist/testing/routeHistory.js.map +1 -1
  1541. package/dist/testing/sortableLists.d.ts +16 -21
  1542. package/dist/testing/sortableLists.js +1 -2
  1543. package/dist/testing/sortableLists.js.map +1 -1
  1544. package/dist/testing/typedRouter.d.ts +0 -1
  1545. package/dist/testing/typedRouter.js +1 -2
  1546. package/dist/testing/typedRouter.js.map +1 -1
  1547. package/dist/vendor/@cropper/element/dist/element.esm.raw.js +2 -3
  1548. package/dist/vendor/@cropper/element/dist/element.esm.raw.js.map +1 -1
  1549. package/dist/vendor/@cropper/element-canvas/dist/element-canvas.esm.raw.js +51 -52
  1550. package/dist/vendor/@cropper/element-canvas/dist/element-canvas.esm.raw.js.map +1 -1
  1551. package/dist/vendor/@cropper/element-crosshair/dist/element-crosshair.esm.raw.js +5 -6
  1552. package/dist/vendor/@cropper/element-crosshair/dist/element-crosshair.esm.raw.js.map +1 -1
  1553. package/dist/vendor/@cropper/element-grid/dist/element-grid.esm.raw.js +5 -6
  1554. package/dist/vendor/@cropper/element-grid/dist/element-grid.esm.raw.js.map +1 -1
  1555. package/dist/vendor/@cropper/element-handle/dist/element-handle.esm.raw.js +6 -7
  1556. package/dist/vendor/@cropper/element-handle/dist/element-handle.esm.raw.js.map +1 -1
  1557. package/dist/vendor/@cropper/element-image/dist/element-image.esm.raw.js +119 -104
  1558. package/dist/vendor/@cropper/element-image/dist/element-image.esm.raw.js.map +1 -1
  1559. package/dist/vendor/@cropper/element-selection/dist/element-selection.esm.raw.js +231 -86
  1560. package/dist/vendor/@cropper/element-selection/dist/element-selection.esm.raw.js.map +1 -1
  1561. package/dist/vendor/@cropper/element-shade/dist/element-shade.esm.raw.js +29 -23
  1562. package/dist/vendor/@cropper/element-shade/dist/element-shade.esm.raw.js.map +1 -1
  1563. package/dist/vendor/@cropper/element-viewer/dist/element-viewer.esm.raw.js +21 -22
  1564. package/dist/vendor/@cropper/element-viewer/dist/element-viewer.esm.raw.js.map +1 -1
  1565. package/dist/vendor/@cropper/utils/dist/utils.esm.raw.js +90 -48
  1566. package/dist/vendor/@cropper/utils/dist/utils.esm.raw.js.map +1 -1
  1567. package/dist/vendor/{cropperjs2 → cropperjs}/dist/cropper.esm.raw.js +11 -12
  1568. package/dist/vendor/cropperjs/dist/cropper.esm.raw.js.map +1 -0
  1569. package/dist/vendor/rusha/dist/rusha.js +1 -2
  1570. package/dist/vendor/uuid/dist/rng.js +1 -2
  1571. package/dist/vendor/uuid/dist/stringify.js +1 -2
  1572. package/dist/vendor/uuid/dist/v1.js +7 -8
  1573. package/dist/vendor/uuid/dist/v4.js +5 -6
  1574. package/package.json +53 -43
  1575. package/src/e2e/conventions.d.mts +4 -0
  1576. package/src/e2e/conventions.mjs +15 -0
  1577. package/src/e2e/index.d.mts +8 -0
  1578. package/src/e2e/index.mjs +1 -0
  1579. package/src/e2e/routeWalk.d.mts +44 -0
  1580. package/src/e2e/routeWalk.mjs +617 -0
  1581. package/src/e2e/types.d.mts +161 -0
  1582. package/src/eslint/adminConfig.mjs +21 -28
  1583. package/src/eslint/globalComponentNames.mjs +3 -4
  1584. package/src/eslint/oxlint-admin.json +3 -0
  1585. package/src/eslint/oxlint.mjs +7 -20
  1586. package/src/eslint/plugin.d.mts +2 -4
  1587. package/src/eslint/plugin.mjs +18 -34
  1588. package/src/eslint/validRouteName.mjs +6 -7
  1589. package/src/vite/devWatch.mjs +30 -43
  1590. package/src/vite/index.d.mts +5 -5
  1591. package/src/vite/sentry.mjs +7 -12
  1592. package/src/vite/sourcemaps.mjs +4 -8
  1593. package/dist/vendor/cropperjs2/dist/cropper.esm.raw.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AFilterRemoteAutocompleteWithMinimal.vue_vue_type_script_setup_true_lang.js","names":["_openBlock","_createBlock","_component_VAutocomplete","_withCtx","_renderSlot","_createVNode","_component_VListItem","_mergeProps","_component_VChip","AFilterRemoteAutocompleteWithMinimal_vue_vue_type_script_setup_true_lang_default","__emit","props","__props","emit","submitResetCounter","inject","FilterSubmitResetCounterKey","filterSelected","FilterSelectedKey","filterConfig","FilterConfigKey","filterData","FilterDataKey","filterInnerConfig","FilterInnerConfigKey","filterInnerData","FilterInnerDataKey","componentName","getCurrentInstance","isUndefined","selected","ref","search","isFocused","autoFetchTimer","apiRequestCounter","useI18n","filterConfigCurrent","computed","onBlur","label","t","usePagination","isNull","fetchedItems","selectedItemsCache","allItems","final","finalRaw","value","cloneDeep","key","requestsRunning","loading","useAlerts","apiSearch","query","res","pagination","requestCounter","findLocalDataByValues","found","values","item","tryToLoadFromLocalData","count","foundItems","isArray","newValue","autoFetched","clearAutoFetchTimer","autoFetch","onFocus","onMouseEnter","singleItemSelectedTitle","onSearchUpdate","text","onSelectedUpdate","onClickClear","clearField","isEmptyValue","watchedValue","showValue","placeholderComputed","useFilterClearHelpers","clearOne","updateFilterSelected","watch","oldValue","isBoolean","isOneOf","watchDebounced","openBlock","createBlock","VAutocomplete","_cache","$event","withCtx","itemProps","itemItem","renderSlot","_ctx","createVNode","VListItem","mergeProps","chipProps","chipItem","VChip"],"sources":["../../../../src/domains/remoteAutocomplete/components/AFilterRemoteAutocompleteWithMinimal.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { watchDebounced } from '@vueuse/core'\nimport { computed, getCurrentInstance, inject, onBeforeUnmount, type Ref, ref, watch } from 'vue'\nimport type { ValueObjectOption } from '@/shared/types/ValueObject'\nimport { cloneDeep, isArray, isBoolean, isNull, isUndefined } from '@/shared/utils/common'\nimport { useI18n } from 'vue-i18n'\nimport type { DocId, IntegerId } from '@/shared/types/common'\nimport {\n FilterConfigKey,\n FilterDataKey,\n FilterInnerConfigKey,\n FilterInnerDataKey,\n FilterSelectedKey,\n FilterSubmitResetCounterKey,\n} from '@/domains/filters/utils/filterInjectionKeys'\nimport { type FilterConfig, type FilterData, useFilterClearHelpers } from '@/domains/filters/composables/filterFactory'\nimport { isOneOf } from '@/shared/utils/enum'\nimport type { DatatableSortBy } from '@/domains/filters/datatable/utils/datatableColumns'\nimport { type Pagination, usePagination } from '@/domains/api/composables/pagination'\nimport { useAlerts } from '@/domains/system/composables/alerts'\n\ntype FetchItemsMinimalByIdsType = ((ids: IntegerId[]) => Promise<any[]>) | ((ids: DocId[]) => Promise<any[]>)\n\ntype FetchItemsMinimalType = (\n pagination: Ref<Pagination>,\n filterData: FilterData,\n filterConfig: FilterConfig\n) => Promise<any[]>\n\nconst props = withDefaults(\n defineProps<{\n name: string\n fetchItemsMinimal: FetchItemsMinimalType\n fetchItemsMinimalByIds: FetchItemsMinimalByIdsType\n filterByField: string\n filterSortBy?: DatatableSortBy\n placeholder?: string | undefined\n prefetch?: 'hover' | 'focus' | 'mounted' | false\n searchMinChars?: number\n itemTitle?: string\n itemValue?: string\n }>(),\n {\n filterSortBy: null,\n placeholder: undefined,\n prefetch: false,\n searchMinChars: 2,\n itemTitle: 'name',\n itemValue: 'id',\n }\n)\nconst emit = defineEmits<{\n (e: 'change'): void\n}>()\n\nconst submitResetCounter = inject(FilterSubmitResetCounterKey)\nconst filterSelected = inject(FilterSelectedKey)\nconst filterConfig = inject(FilterConfigKey)\nconst filterData = inject(FilterDataKey)\nconst filterInnerConfig = inject(FilterInnerConfigKey)\nconst filterInnerData = inject(FilterInnerDataKey)\n\nconst componentName = getCurrentInstance()?.type.__name\n\nif (\n isUndefined(submitResetCounter) ||\n isUndefined(filterSelected) ||\n isUndefined(filterData) ||\n isUndefined(filterConfig) ||\n isUndefined(filterInnerConfig) ||\n isUndefined(filterInnerData)\n) {\n throw new Error(`[${componentName}] Incorrect provide/inject config.`)\n}\n\nif (\n // eslint-disable-next-line vue/no-setup-props-reactivity-loss\n isUndefined(filterConfig.fields[props.name]) ||\n // eslint-disable-next-line vue/no-setup-props-reactivity-loss\n isUndefined(filterData[props.name])\n) {\n throw new Error(\n `[${componentName}] Incorrect filter config. ` +\n `Name is '${props.name}' and available options are ${Object.keys(filterData).join(', ')}.`\n )\n}\n\nif (\n // eslint-disable-next-line vue/no-setup-props-reactivity-loss\n isUndefined(filterInnerConfig.fields[props.filterByField]) ||\n // eslint-disable-next-line vue/no-setup-props-reactivity-loss\n isUndefined(filterInnerData[props.filterByField])\n) {\n throw new Error(\n `[${componentName}] Incorrect filter inner config. ` +\n `FilterByField is '${props.filterByField}' and available options are ${Object.keys(filterInnerData).join(', ')}.`\n )\n}\n\nconst selected = ref<any>([])\nconst search = ref('')\nconst isFocused = ref(false)\nconst autoFetchTimer: Ref<ReturnType<typeof setTimeout> | undefined> = ref(undefined)\n\nconst apiRequestCounter = ref(0)\n\nconst { t } = useI18n()\n\n// The setup above throws unless the field is configured.\nconst filterConfigCurrent = computed(() => filterConfig.fields[props.name]!)\n\nconst onBlur = () => {\n isFocused.value = false\n}\n\nconst label = computed(() => {\n return filterConfigCurrent.value.titleT ? t(filterConfigCurrent.value.titleT) : undefined\n})\n\n// eslint-disable-next-line vue/no-setup-props-reactivity-loss\nconst { pagination } = usePagination(\n // eslint-disable-next-line vue/no-setup-props-reactivity-loss\n isNull(props.filterSortBy) ? null : props.filterSortBy.key,\n props.filterSortBy?.order\n)\nconst fetchedItems = ref<any[]>([])\nconst selectedItemsCache = ref<any[]>([])\n\nconst allItems = computed<ValueObjectOption<DocId | IntegerId>[]>(() => {\n const final = new Map()\n const finalRaw: Map<IntegerId | DocId, any> = new Map()\n selectedItemsCache.value.forEach((value) => {\n if (value.raw) {\n final.set(value.raw[props.itemValue], value.raw[props.itemTitle])\n finalRaw.set(value.raw[props.itemValue], cloneDeep(value.raw))\n } else {\n final.set(value[props.itemValue], value[props.itemTitle])\n finalRaw.set(value[props.itemValue], cloneDeep(value))\n }\n })\n fetchedItems.value.forEach((value) => {\n if (value.raw) {\n final.set(value.raw[props.itemValue], value.raw[props.itemTitle])\n finalRaw.set(value.raw[props.itemValue], cloneDeep(value.raw))\n } else {\n final.set(value[props.itemValue], value[props.itemTitle])\n finalRaw.set(value[props.itemValue], cloneDeep(value))\n }\n })\n return Array.from(final, ([key, value]) => {\n return { value: key, title: value, raw: finalRaw.get(key) }\n })\n})\n\n// The requests of the component on their way (items by their ids, a search, a prefetch): its spinner is on while\n// any of them runs, and goes off with the last. Each turned it off as it ended: a read by ids hid the spinner of a\n// search still running, and the reverse.\nconst requestsRunning = ref(0)\nconst loading = computed(() => requestsRunning.value > 0)\n\nconst { showErrorsDefault } = useAlerts()\n\nconst apiSearch = async (query: string, requestCounter: number) => {\n requestsRunning.value++\n filterInnerData[props.filterByField] = query\n try {\n const res = await props.fetchItemsMinimal(pagination, filterInnerData, filterInnerConfig)\n if (requestCounter === apiRequestCounter.value) fetchedItems.value = res\n } catch (e) {\n showErrorsDefault(e)\n } finally {\n requestsRunning.value--\n }\n}\n\nconst findLocalDataByValues = (values: Array<DocId | IntegerId>) => {\n const found = allItems.value.filter((item: ValueObjectOption<string | number>) => values.includes(item.value))\n return ([] as ValueObjectOption<string | number>[]).concat(found)\n}\n\nconst tryToLoadFromLocalData = async (newValue: string | number | Array<string | number>) => {\n let count = 1\n let foundItems: ValueObjectOption<string | number>[] = []\n if (isArray(newValue)) {\n count = newValue.length\n foundItems = findLocalDataByValues(newValue)\n } else {\n foundItems = findLocalDataByValues([newValue])\n }\n selectedItemsCache.value = foundItems\n return foundItems.length === count\n}\n\nconst autoFetched = ref(false)\n\nconst clearAutoFetchTimer = () => {\n clearTimeout(autoFetchTimer.value)\n autoFetchTimer.value = undefined\n}\n\nonBeforeUnmount(clearAutoFetchTimer)\n\nconst autoFetch = async () => {\n clearAutoFetchTimer()\n if (autoFetched.value === true) return\n autoFetched.value = true\n requestsRunning.value++\n try {\n const res = await props.fetchItemsMinimal(pagination, filterInnerData, filterInnerConfig)\n if (apiRequestCounter.value === 0) fetchedItems.value = res\n } catch (e) {\n showErrorsDefault(e)\n } finally {\n requestsRunning.value--\n }\n}\n\nconst onFocus = () => {\n isFocused.value = true\n if (props.prefetch === false) return\n clearAutoFetchTimer()\n autoFetch()\n}\n\nconst onMouseEnter = () => {\n if (props.prefetch === 'focus' || props.prefetch === false) return\n clearAutoFetchTimer()\n autoFetch()\n}\n\nconst singleItemSelectedTitle = computed(() => {\n if (!filterConfigCurrent.value.multiple && selectedItemsCache.value[0]) {\n return selectedItemsCache.value[0].title\n }\n return undefined\n})\n\n// The clear of the field empties the search with `null` first: an empty search. A field without focus at that\n// moment read its length and threw.\nconst onSearchUpdate = (query: string | null) => {\n const text = query ?? ''\n if (!filterConfigCurrent.value.multiple && !isFocused.value && text.length === 0) return // vuetify fix\n if (singleItemSelectedTitle.value === text) return\n search.value = text\n}\n\nconst onSelectedUpdate = (newValue: any) => {\n filterConfig.touched = true\n let final: null | string | number | string[] | number[] = null\n if (isArray(newValue)) {\n final = newValue.map((item: any) => item.value) as string[] | number[]\n } else if (!isNull(newValue)) {\n final = newValue.value\n }\n filterData[props.name] = final\n emit('change')\n}\n\n// The clear empties the filter in one go, with the model Vuetify has emptied, and asks for the list once, for an\n// empty search, through the counter of the searches. It asked with the search typed before, outside the counter,\n// wrote that answer whenever it came, and emptied the filter only after it. The list is there now: the auto-fetch\n// of an empty filter is not needed. A filter of one value cleared onto the default it held does not change for its\n// watcher: its value is shown again here.\nconst onClickClear = () => {\n clearField()\n clearAutoFetchTimer()\n autoFetched.value = true\n const value = filterData[props.name]\n if (!isEmptyValue(value) && value === watchedValue) showValue(value as string | number | Array<string | number>)\n apiRequestCounter.value++\n apiSearch('', apiRequestCounter.value)\n}\n\nconst placeholderComputed = computed(() => {\n if (!isUndefined(props.placeholder)) return props.placeholder\n if (filterConfigCurrent.value.variant === 'startsWith') return t('common.model.filterPlaceholder.startsWith')\n if (filterConfigCurrent.value.variant === 'eq') return t('common.model.filterPlaceholder.eq')\n if (filterConfigCurrent.value.variant === 'search') return t('common.model.filterPlaceholder.contains')\n return ''\n})\n\nconst { clearOne } = useFilterClearHelpers()\n\nconst clearField = () => {\n clearOne(props.name, filterData, filterConfig)\n filterSelected.value.delete(props.name)\n}\n\nconst updateFilterSelected = (\n newValue: ValueObjectOption<string | number> | ValueObjectOption<string | number>[] | null\n) => {\n filterSelected.value.delete(props.name)\n if ((isArray(newValue) && newValue.length === 0) || isNull(newValue)) {\n filterSelected.value.delete(props.name)\n return\n }\n if (isArray(newValue)) {\n filterSelected.value.set(\n props.name,\n newValue.map((item) => ({ title: item.title, value: item.value }))\n )\n return\n }\n filterSelected.value.set(props.name, [{ title: newValue.title, value: newValue.value }])\n}\n\nconst isEmptyValue = (value: unknown) => isNull(value) || isUndefined(value) || (isArray(value) && value.length === 0)\n\n/** The value of the filter its watcher (below) saw last. */\nlet watchedValue: unknown\n\n/** Puts a value of the filter into the field and the chips: from the items it has, or read by their ids. */\nconst showValue = async (newValue: string | number | Array<string | number>) => {\n const found = await tryToLoadFromLocalData(newValue)\n if (found) {\n selected.value = selectedItemsCache.value.map((item) => ({\n title: item.title,\n value: item.value,\n }))\n updateFilterSelected(selected.value)\n return\n }\n if (isArray(newValue)) {\n requestsRunning.value++\n try {\n selectedItemsCache.value = await props.fetchItemsMinimalByIds(newValue as Array<IntegerId & DocId>)\n selected.value = selectedItemsCache.value.map((item) => ({\n title: item.title,\n value: item.value,\n }))\n updateFilterSelected(selected.value)\n } catch (e) {\n showErrorsDefault(e)\n } finally {\n requestsRunning.value--\n }\n return\n }\n requestsRunning.value++\n try {\n selectedItemsCache.value = await props.fetchItemsMinimalByIds([newValue as DocId & IntegerId])\n selected.value = selectedItemsCache.value.map((item) => ({\n title: item.title,\n value: item.value,\n }))[0]\n updateFilterSelected(selected.value)\n } catch (e) {\n showErrorsDefault(e)\n } finally {\n requestsRunning.value--\n }\n}\n\nwatch(\n () => filterData[props.name],\n async (newValue, oldValue) => {\n watchedValue = newValue\n if (newValue === oldValue || isBoolean(newValue)) return\n if (isEmptyValue(newValue)) {\n selectedItemsCache.value = []\n if (filterConfigCurrent.value.multiple) {\n selected.value = []\n } else {\n selected.value = null\n }\n updateFilterSelected(selected.value)\n if (autoFetched.value === true || isOneOf(props.prefetch, ['hover', 'focus', false])) return\n // One pending auto-fetch at a time: a second empty value would otherwise orphan the first timer.\n clearAutoFetchTimer()\n autoFetchTimer.value = setTimeout(() => {\n autoFetch()\n }, 3000)\n return\n }\n await showValue(newValue as string | number | Array<string | number>)\n },\n { immediate: true }\n)\n\nwatchDebounced(\n search,\n (newValue: string | null, oldValue: string | null) => {\n const query = newValue ?? ''\n if (query.length < props.searchMinChars) return\n if (query !== (oldValue ?? '')) {\n apiRequestCounter.value++\n apiSearch(query, apiRequestCounter.value)\n }\n },\n { debounce: 300 }\n)\n</script>\n\n<template>\n <VAutocomplete\n v-model=\"selected\"\n :items=\"allItems\"\n no-filter\n :placeholder=\"placeholderComputed\"\n :multiple=\"filterConfigCurrent.multiple\"\n :clearable=\"!filterConfigCurrent.mandatory\"\n :label=\"label\"\n :chips=\"filterConfigCurrent.multiple\"\n :loading=\"loading\"\n hide-details\n return-object\n autocomplete=\"off\"\n @update:search=\"onSearchUpdate\"\n @update:model-value=\"onSelectedUpdate\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @mouseenter=\"onMouseEnter\"\n @click:clear=\"onClickClear\"\n >\n <!-- @vue-skip -->\n <template #item=\"{ props: itemProps, internalItem: itemItem }\">\n <slot\n name=\"item\"\n :item=\"itemItem\"\n :props=\"itemProps\"\n >\n <VListItem\n v-bind=\"itemProps\"\n :title=\"itemItem.raw.title\"\n :subtitle=\"itemItem.raw.subtitle\"\n />\n </slot>\n </template>\n <!-- @vue-skip -->\n <template #chip=\"{ props: chipProps, internalItem: chipItem }\">\n <slot\n name=\"chip\"\n :props=\"chipProps\"\n :item=\"chipItem\"\n >\n <VChip\n v-bind=\"chipProps\"\n close-label=\"common.button.remove\"\n :text=\"chipItem.title\"\n />\n </slot>\n </template>\n </VAutocomplete>\n</template>\n"],"mappings":"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"}
1
+ {"version":3,"file":"AFilterRemoteAutocompleteWithMinimal.vue_vue_type_script_setup_true_lang.js","names":["_openBlock","_createBlock","_component_VAutocomplete","_withCtx","_renderSlot","_createVNode","_component_VListItem","_mergeProps","_component_VChip","AFilterRemoteAutocompleteWithMinimal_vue_vue_type_script_setup_true_lang_default","__emit","props","__props","emit","submitResetCounter","inject","FilterSubmitResetCounterKey","filterSelected","FilterSelectedKey","filterConfig","FilterConfigKey","filterData","FilterDataKey","filterInnerConfig","FilterInnerConfigKey","filterInnerData","FilterInnerDataKey","componentName","getCurrentInstance","isUndefined","selected","ref","search","isFocused","autoFetchTimer","apiRequestCounter","useI18n","filterConfigCurrent","computed","onBlur","label","t","usePagination","isNull","fetchedItems","selectedItemsCache","allItems","final","finalRaw","value","cloneDeep","key","requestsRunning","loading","useAlerts","apiSearch","query","res","pagination","requestCounter","findLocalDataByValues","found","values","item","tryToLoadFromLocalData","count","foundItems","isArray","newValue","autoFetched","clearAutoFetchTimer","autoFetch","onFocus","onMouseEnter","singleItemSelectedTitle","onSearchUpdate","text","onSelectedUpdate","onClickClear","clearField","isEmptyValue","watchedValue","showValue","placeholderComputed","useFilterClearHelpers","clearOne","updateFilterSelected","watch","oldValue","isBoolean","isOneOf","watchDebounced","openBlock","createBlock","VAutocomplete","_cache","$event","withCtx","itemProps","itemItem","renderSlot","_ctx","createVNode","VListItem","mergeProps","chipProps","chipItem","VChip"],"sources":["../../../../src/domains/remoteAutocomplete/components/AFilterRemoteAutocompleteWithMinimal.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { watchDebounced } from '@vueuse/core'\nimport { computed, getCurrentInstance, inject, onBeforeUnmount, type Ref, ref, watch } from 'vue'\nimport type { ValueObjectOption } from '@/shared/types/ValueObject'\nimport { cloneDeep, isArray, isBoolean, isNull, isUndefined } from '@/shared/utils/common'\nimport { useI18n } from 'vue-i18n'\nimport type { DocId, IntegerId } from '@/shared/types/common'\nimport {\n FilterConfigKey,\n FilterDataKey,\n FilterInnerConfigKey,\n FilterInnerDataKey,\n FilterSelectedKey,\n FilterSubmitResetCounterKey,\n} from '@/domains/filters/utils/filterInjectionKeys'\nimport { type FilterConfig, type FilterData, useFilterClearHelpers } from '@/domains/filters/composables/filterFactory'\nimport { isOneOf } from '@/shared/utils/enum'\nimport type { DatatableSortBy } from '@/domains/filters/datatable/utils/datatableColumns'\nimport { type Pagination, usePagination } from '@/domains/api/composables/pagination'\nimport { useAlerts } from '@/domains/system/composables/alerts'\n\ntype FetchItemsMinimalByIdsType = ((ids: IntegerId[]) => Promise<any[]>) | ((ids: DocId[]) => Promise<any[]>)\n\ntype FetchItemsMinimalType = (\n pagination: Ref<Pagination>,\n filterData: FilterData,\n filterConfig: FilterConfig\n) => Promise<any[]>\n\nconst props = withDefaults(\n defineProps<{\n name: string\n fetchItemsMinimal: FetchItemsMinimalType\n fetchItemsMinimalByIds: FetchItemsMinimalByIdsType\n filterByField: string\n filterSortBy?: DatatableSortBy\n placeholder?: string | undefined\n prefetch?: 'hover' | 'focus' | 'mounted' | false\n searchMinChars?: number\n itemTitle?: string\n itemValue?: string\n }>(),\n {\n filterSortBy: null,\n placeholder: undefined,\n prefetch: false,\n searchMinChars: 2,\n itemTitle: 'name',\n itemValue: 'id',\n }\n)\nconst emit = defineEmits<{\n (e: 'change'): void\n}>()\n\nconst submitResetCounter = inject(FilterSubmitResetCounterKey)\nconst filterSelected = inject(FilterSelectedKey)\nconst filterConfig = inject(FilterConfigKey)\nconst filterData = inject(FilterDataKey)\nconst filterInnerConfig = inject(FilterInnerConfigKey)\nconst filterInnerData = inject(FilterInnerDataKey)\n\nconst componentName = getCurrentInstance()?.type.__name\n\nif (\n isUndefined(submitResetCounter) ||\n isUndefined(filterSelected) ||\n isUndefined(filterData) ||\n isUndefined(filterConfig) ||\n isUndefined(filterInnerConfig) ||\n isUndefined(filterInnerData)\n) {\n throw new Error(`[${componentName}] Incorrect provide/inject config.`)\n}\n\nif (\n // eslint-disable-next-line vue/no-setup-props-reactivity-loss\n isUndefined(filterConfig.fields[props.name]) ||\n // eslint-disable-next-line vue/no-setup-props-reactivity-loss\n isUndefined(filterData[props.name])\n) {\n throw new Error(\n `[${componentName}] Incorrect filter config. ` +\n `Name is '${props.name}' and available options are ${Object.keys(filterData).join(', ')}.`\n )\n}\n\nif (\n // eslint-disable-next-line vue/no-setup-props-reactivity-loss\n isUndefined(filterInnerConfig.fields[props.filterByField]) ||\n // eslint-disable-next-line vue/no-setup-props-reactivity-loss\n isUndefined(filterInnerData[props.filterByField])\n) {\n throw new Error(\n `[${componentName}] Incorrect filter inner config. ` +\n `FilterByField is '${props.filterByField}' and available options are ${Object.keys(filterInnerData).join(', ')}.`\n )\n}\n\nconst selected = ref<any>([])\nconst search = ref('')\nconst isFocused = ref(false)\nconst autoFetchTimer: Ref<ReturnType<typeof setTimeout> | undefined> = ref(undefined)\n\nconst apiRequestCounter = ref(0)\n\nconst { t } = useI18n()\n\n// The setup above throws unless the field is configured.\nconst filterConfigCurrent = computed(() => filterConfig.fields[props.name]!)\n\nconst onBlur = () => {\n isFocused.value = false\n}\n\nconst label = computed(() => {\n return filterConfigCurrent.value.titleT ? t(filterConfigCurrent.value.titleT) : undefined\n})\n\n// eslint-disable-next-line vue/no-setup-props-reactivity-loss\nconst { pagination } = usePagination(\n // eslint-disable-next-line vue/no-setup-props-reactivity-loss\n isNull(props.filterSortBy) ? null : props.filterSortBy.key,\n props.filterSortBy?.order\n)\nconst fetchedItems = ref<any[]>([])\nconst selectedItemsCache = ref<any[]>([])\n\nconst allItems = computed<ValueObjectOption<DocId | IntegerId>[]>(() => {\n const final = new Map()\n const finalRaw: Map<IntegerId | DocId, any> = new Map()\n selectedItemsCache.value.forEach((value) => {\n if (value.raw) {\n final.set(value.raw[props.itemValue], value.raw[props.itemTitle])\n finalRaw.set(value.raw[props.itemValue], cloneDeep(value.raw))\n } else {\n final.set(value[props.itemValue], value[props.itemTitle])\n finalRaw.set(value[props.itemValue], cloneDeep(value))\n }\n })\n fetchedItems.value.forEach((value) => {\n if (value.raw) {\n final.set(value.raw[props.itemValue], value.raw[props.itemTitle])\n finalRaw.set(value.raw[props.itemValue], cloneDeep(value.raw))\n } else {\n final.set(value[props.itemValue], value[props.itemTitle])\n finalRaw.set(value[props.itemValue], cloneDeep(value))\n }\n })\n return Array.from(final, ([key, value]) => {\n return { value: key, title: value, raw: finalRaw.get(key) }\n })\n})\n\n// Counts running requests (by ids, search, prefetch). The spinner stays on until the last one ends.\n// A single flag let a read by ids hide the spinner of a search still running, and the reverse.\nconst requestsRunning = ref(0)\nconst loading = computed(() => requestsRunning.value > 0)\n\nconst { showErrorsDefault } = useAlerts()\n\nconst apiSearch = async (query: string, requestCounter: number) => {\n requestsRunning.value++\n filterInnerData[props.filterByField] = query\n try {\n const res = await props.fetchItemsMinimal(pagination, filterInnerData, filterInnerConfig)\n if (requestCounter === apiRequestCounter.value) fetchedItems.value = res\n } catch (e) {\n showErrorsDefault(e)\n } finally {\n requestsRunning.value--\n }\n}\n\nconst findLocalDataByValues = (values: Array<DocId | IntegerId>) => {\n const found = allItems.value.filter((item: ValueObjectOption<string | number>) => values.includes(item.value))\n return ([] as ValueObjectOption<string | number>[]).concat(found)\n}\n\nconst tryToLoadFromLocalData = async (newValue: string | number | Array<string | number>) => {\n let count = 1\n let foundItems: ValueObjectOption<string | number>[] = []\n if (isArray(newValue)) {\n count = newValue.length\n foundItems = findLocalDataByValues(newValue)\n } else {\n foundItems = findLocalDataByValues([newValue])\n }\n selectedItemsCache.value = foundItems\n return foundItems.length === count\n}\n\nconst autoFetched = ref(false)\n\nconst clearAutoFetchTimer = () => {\n clearTimeout(autoFetchTimer.value)\n autoFetchTimer.value = undefined\n}\n\nonBeforeUnmount(clearAutoFetchTimer)\n\nconst autoFetch = async () => {\n clearAutoFetchTimer()\n if (autoFetched.value === true) return\n autoFetched.value = true\n requestsRunning.value++\n try {\n const res = await props.fetchItemsMinimal(pagination, filterInnerData, filterInnerConfig)\n if (apiRequestCounter.value === 0) fetchedItems.value = res\n } catch (e) {\n showErrorsDefault(e)\n } finally {\n requestsRunning.value--\n }\n}\n\nconst onFocus = () => {\n isFocused.value = true\n if (props.prefetch === false) return\n clearAutoFetchTimer()\n autoFetch()\n}\n\nconst onMouseEnter = () => {\n if (props.prefetch === 'focus' || props.prefetch === false) return\n clearAutoFetchTimer()\n autoFetch()\n}\n\nconst singleItemSelectedTitle = computed(() => {\n if (!filterConfigCurrent.value.multiple && selectedItemsCache.value[0]) {\n return selectedItemsCache.value[0].title\n }\n return undefined\n})\n\n// Clearing the field first emits a `null` search. Reading its length threw when the field had no focus.\nconst onSearchUpdate = (query: string | null) => {\n const text = query ?? ''\n if (!filterConfigCurrent.value.multiple && !isFocused.value && text.length === 0) return // vuetify fix\n if (singleItemSelectedTitle.value === text) return\n search.value = text\n}\n\nconst onSelectedUpdate = (newValue: any) => {\n filterConfig.touched = true\n let final: null | string | number | string[] | number[] = null\n if (isArray(newValue)) {\n final = newValue.map((item: any) => item.value) as string[] | number[]\n } else if (!isNull(newValue)) {\n final = newValue.value\n }\n filterData[props.name] = final\n emit('change')\n}\n\n// Clearing empties the filter in one step and fetches the list once for an empty search through the search counter.\n// So the auto-fetch for an empty filter is not needed. A single-value filter cleared\n// onto its default does not change for its watcher, so its value is shown again here.\nconst onClickClear = () => {\n clearField()\n clearAutoFetchTimer()\n autoFetched.value = true\n const value = filterData[props.name]\n if (!isEmptyValue(value) && value === watchedValue) showValue(value as string | number | Array<string | number>)\n apiRequestCounter.value++\n apiSearch('', apiRequestCounter.value)\n}\n\nconst placeholderComputed = computed(() => {\n if (!isUndefined(props.placeholder)) return props.placeholder\n if (filterConfigCurrent.value.variant === 'startsWith') return t('common.model.filterPlaceholder.startsWith')\n if (filterConfigCurrent.value.variant === 'eq') return t('common.model.filterPlaceholder.eq')\n if (filterConfigCurrent.value.variant === 'search') return t('common.model.filterPlaceholder.contains')\n return ''\n})\n\nconst { clearOne } = useFilterClearHelpers()\n\nconst clearField = () => {\n clearOne(props.name, filterData, filterConfig)\n filterSelected.value.delete(props.name)\n}\n\nconst updateFilterSelected = (\n newValue: ValueObjectOption<string | number> | ValueObjectOption<string | number>[] | null\n) => {\n filterSelected.value.delete(props.name)\n if ((isArray(newValue) && newValue.length === 0) || isNull(newValue)) {\n filterSelected.value.delete(props.name)\n return\n }\n if (isArray(newValue)) {\n filterSelected.value.set(\n props.name,\n newValue.map((item) => ({ title: item.title, value: item.value }))\n )\n return\n }\n filterSelected.value.set(props.name, [{ title: newValue.title, value: newValue.value }])\n}\n\nconst isEmptyValue = (value: unknown) => isNull(value) || isUndefined(value) || (isArray(value) && value.length === 0)\n\n/** The value of the filter its watcher (below) saw last. */\nlet watchedValue: unknown\n\n/** Puts a value of the filter into the field and the chips: from the items it has, or read by their ids. */\nconst showValue = async (newValue: string | number | Array<string | number>) => {\n const found = await tryToLoadFromLocalData(newValue)\n if (found) {\n selected.value = selectedItemsCache.value.map((item) => ({\n title: item.title,\n value: item.value,\n }))\n updateFilterSelected(selected.value)\n return\n }\n if (isArray(newValue)) {\n requestsRunning.value++\n try {\n selectedItemsCache.value = await props.fetchItemsMinimalByIds(newValue as Array<IntegerId & DocId>)\n selected.value = selectedItemsCache.value.map((item) => ({\n title: item.title,\n value: item.value,\n }))\n updateFilterSelected(selected.value)\n } catch (e) {\n showErrorsDefault(e)\n } finally {\n requestsRunning.value--\n }\n return\n }\n requestsRunning.value++\n try {\n selectedItemsCache.value = await props.fetchItemsMinimalByIds([newValue as DocId & IntegerId])\n selected.value = selectedItemsCache.value.map((item) => ({\n title: item.title,\n value: item.value,\n }))[0]\n updateFilterSelected(selected.value)\n } catch (e) {\n showErrorsDefault(e)\n } finally {\n requestsRunning.value--\n }\n}\n\nwatch(\n () => filterData[props.name],\n async (newValue, oldValue) => {\n watchedValue = newValue\n if (newValue === oldValue || isBoolean(newValue)) return\n if (isEmptyValue(newValue)) {\n selectedItemsCache.value = []\n if (filterConfigCurrent.value.multiple) {\n selected.value = []\n } else {\n selected.value = null\n }\n updateFilterSelected(selected.value)\n if (autoFetched.value === true || isOneOf(props.prefetch, ['hover', 'focus', false])) return\n // One pending auto-fetch at a time: a second empty value would otherwise orphan the first timer.\n clearAutoFetchTimer()\n autoFetchTimer.value = setTimeout(() => {\n autoFetch()\n }, 3000)\n return\n }\n await showValue(newValue as string | number | Array<string | number>)\n },\n { immediate: true }\n)\n\nwatchDebounced(\n search,\n (newValue: string | null, oldValue: string | null) => {\n const query = newValue ?? ''\n if (query.length < props.searchMinChars) return\n if (query !== (oldValue ?? '')) {\n apiRequestCounter.value++\n apiSearch(query, apiRequestCounter.value)\n }\n },\n { debounce: 300 }\n)\n</script>\n\n<template>\n <VAutocomplete\n v-model=\"selected\"\n :items=\"allItems\"\n no-filter\n :placeholder=\"placeholderComputed\"\n :multiple=\"filterConfigCurrent.multiple\"\n :clearable=\"!filterConfigCurrent.mandatory\"\n :label=\"label\"\n :chips=\"filterConfigCurrent.multiple\"\n :loading=\"loading\"\n hide-details\n return-object\n autocomplete=\"off\"\n @update:search=\"onSearchUpdate\"\n @update:model-value=\"onSelectedUpdate\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @mouseenter=\"onMouseEnter\"\n @click:clear=\"onClickClear\"\n >\n <!-- @vue-skip -->\n <template #item=\"{ props: itemProps, internalItem: itemItem }\">\n <slot\n name=\"item\"\n :item=\"itemItem\"\n :props=\"itemProps\"\n >\n <VListItem\n v-bind=\"itemProps\"\n :title=\"itemItem.raw.title\"\n :subtitle=\"itemItem.raw.subtitle\"\n />\n </slot>\n </template>\n <!-- @vue-skip -->\n <template #chip=\"{ props: chipProps, internalItem: chipItem }\">\n <slot\n name=\"chip\"\n :props=\"chipProps\"\n :item=\"chipItem\"\n >\n <VChip\n v-bind=\"chipProps\"\n close-label=\"common.button.remove\"\n :text=\"chipItem.title\"\n />\n </slot>\n </template>\n </VAutocomplete>\n</template>\n"],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import e from "./AFormRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js";
2
- //#region src/domains/remoteAutocomplete/components/AFormRemoteAutocomplete.vue
2
+ // src/domains/remoteAutocomplete/components/AFormRemoteAutocomplete.vue
3
3
  var t = e;
4
- //#endregion
5
4
  export { t as default };
6
5
 
7
6
  //# sourceMappingURL=AFormRemoteAutocomplete.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AFormRemoteAutocomplete.js","names":["_sfc_main","AFormRemoteAutocomplete_vue_vue_type_script_setup_true_lang_default","AFormRemoteAutocomplete_default"],"sources":["../../../../src/domains/remoteAutocomplete/components/AFormRemoteAutocomplete.vue"],"sourcesContent":["<script lang=\"ts\" setup generic=\"T extends string | number\">\nimport type { AFormFieldValidation } from '@/shared/types/Validation'\nimport { watchDebounced } from '@vueuse/core'\nimport { computed, getCurrentInstance, inject, type Ref, ref, watch, unref } from 'vue'\nimport type { ValueObjectOption } from '@/shared/types/ValueObject'\nimport { cloneDeep, isArray, isDefined, isEmpty, isNull, isUndefined } from '@/shared/utils/common'\nimport { SubjectScopeKey, SystemScopeKey } from '@/shared/injectionKeys'\nimport { stringSplitOnFirstOccurrence } from '@/shared/utils/string'\nimport { useI18n } from 'vue-i18n'\nimport type { DocId, IntegerId, IntegerIdNullable } from '@/shared/types/common'\nimport ACollabLockedByUser from '@/domains/collab/components/ACollabLockedByUser.vue'\nimport type { CollabComponentConfig, CollabFieldData } from '@/domains/collab/types/Collab'\nimport { useCollabField } from '@/domains/collab/composables/collabField'\nimport { useCommonAdminCollabOptions } from '@/domains/collab/composables/commonAdminCollabOptions'\nimport type { FilterConfig, FilterData } from '@/domains/filters/composables/filterFactory'\nimport { FilterInnerConfigKey, FilterInnerDataKey } from '@/domains/filters/utils/filterInjectionKeys'\nimport type { DatatableSortBy } from '@/domains/filters/datatable/utils/datatableColumns'\nimport { type Pagination, usePagination } from '@/domains/api/composables/pagination'\nimport { useAlerts } from '@/domains/system/composables/alerts'\n\ntype ModelValueType = T | T[] | null | undefined\n\nconst props = withDefaults(\n defineProps<{\n label?: string | undefined\n required?: boolean | undefined\n multiple?: boolean\n clearable?: boolean\n v?: AFormFieldValidation | null\n errorMessage?: string\n hideDetails?: boolean\n hideLabel?: boolean\n fetchItems: (\n pagination: Ref<Pagination>,\n filterData: FilterData,\n filterConfig: FilterConfig\n ) => Promise<ValueObjectOption<T>[]>\n fetchItemsByIds: (ids: T[]) => Promise<ValueObjectOption<T>[]>\n filterByField: string\n filterSortBy?: DatatableSortBy\n loading?: boolean\n collab?: CollabComponentConfig\n disabled?: boolean | undefined\n readonly?: boolean\n chips?: boolean\n closableChips?: boolean\n disableAutoSingleSelect?: boolean // auto select works only when modelValue is empty/null and prefetch is set to 'mounted'\n prefetch?: 'hover' | 'focus' | 'mounted' | false\n minSearchChars?: number\n minSearchText?: string | undefined\n }>(),\n {\n label: undefined,\n required: undefined,\n multiple: false,\n clearable: false,\n v: null,\n errorMessage: undefined,\n hideDetails: false,\n hideLabel: false,\n filterSortBy: null,\n loading: false,\n collab: undefined,\n disabled: undefined,\n chips: false,\n closableChips: false,\n disableAutoSingleSelect: false,\n prefetch: false,\n minSearchChars: 2,\n minSearchText: undefined,\n }\n)\nconst emit = defineEmits<{\n (e: 'searchChange', data: string): void\n (e: 'searchChangeDebounced', data: string): void\n (e: 'blur', data: ModelValueType): void\n (e: 'focus', data: ModelValueType): void\n (e: 'click:chipClose', data: ValueObjectOption<T>): void\n}>()\n\nconst SEARCH_DEBOUNCE_MS = 300\n\nconst filterInnerConfig = inject(FilterInnerConfigKey)\nconst filterInnerData = inject(FilterInnerDataKey)\n\nconst componentName = getCurrentInstance()?.type.__name\n\nif (isUndefined(filterInnerConfig) || isUndefined(filterInnerData)) {\n throw new Error(`[${componentName}] Incorrect provide/inject config.`)\n}\n// eslint-disable-next-line vue/no-setup-props-reactivity-loss\nconst filterByFieldProp = props.filterByField\n// eslint-disable-next-line vue/no-setup-props-reactivity-loss\nconst filterSortByProp = props.filterSortBy\n\nif (isUndefined(filterInnerConfig.fields[filterByFieldProp]) || isUndefined(filterInnerData[filterByFieldProp])) {\n throw new Error(\n `[${componentName}] Incorrect filter inner config. ` +\n `FilterByField is '${filterByFieldProp}' and available options are ${Object.keys(filterInnerData).join(', ')}.`\n )\n}\n\nconst modelValue = defineModel<ModelValueType>({\n required: true,\n set(newValue) {\n return isArray(newValue) ? cloneDeep(newValue) : newValue\n },\n})\n\nconst modelValueSelected = defineModel<ValueObjectOption<T> | ValueObjectOption<T>[] | null>('selected', {\n required: false,\n default: null,\n set(newValue) {\n return isArray(newValue) ? cloneDeep(newValue) : newValue\n },\n})\n\n// Collaboration\nconst { collabOptions } = useCommonAdminCollabOptions()\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst releaseFieldLock = ref((data: CollabFieldData) => {})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst changeFieldData = ref((data: CollabFieldData) => {})\nconst acquireFieldLock = ref(() => {})\nconst lockedByUserLocal = ref<IntegerIdNullable>(null)\n// eslint-disable-next-line vue/no-setup-props-reactivity-loss\nif (collabOptions.value.enabled && isDefined(props.collab)) {\n const { releaseCollabFieldLock, changeCollabFieldData, acquireCollabFieldLock, lockedByUser } = useCollabField(\n props.collab.room,\n props.collab.field,\n false,\n true\n )\n releaseFieldLock.value = releaseCollabFieldLock\n changeFieldData.value = changeCollabFieldData\n acquireFieldLock.value = acquireCollabFieldLock\n watch(\n lockedByUser,\n (newValue) => {\n lockedByUserLocal.value = newValue\n },\n { immediate: true }\n )\n}\n\nconst search = ref('')\nconst isFocused = ref(false)\nconst modelValueAutocomplete = ref<ValueObjectOption<T> | ValueObjectOption<T>[] | null>(null)\nconst apiRequestCounter = ref(0)\n\nconst { t } = useI18n()\n\nconst system = inject<string | undefined>(SystemScopeKey, undefined)\nconst subject = inject<string | undefined>(SubjectScopeKey, undefined)\n\nconst onBlur = () => {\n isFocused.value = false\n emit('blur', modelValue.value)\n props.v?.$touch()\n releaseFieldLock.value(modelValue.value)\n}\n\nconst errorMessageComputed = computed(() => {\n if (isDefined(props.errorMessage)) return [props.errorMessage]\n if (props.v?.$errors?.length) return props.v.$errors.map((item) => unref(item.$message))\n return []\n})\n\nconst labelComputed = computed(() => {\n if (isDefined(props.label)) return props.label\n if (isUndefined(system) || isUndefined(subject) || isUndefined(props.v?.$path)) return ''\n const { end: path } = stringSplitOnFirstOccurrence(props.v?.$path, '.')\n return t(system + '.' + subject + '.model.' + path)\n})\n\nconst requiredComputed = computed(() => {\n if (isDefined(props.required)) return props.required\n return (props.v?.required as { $params?: { type?: string } } | undefined)?.$params?.type === 'required'\n})\n\nconst disabledComputed = computed(() => {\n if (isDefined(props.disabled)) return props.disabled\n return !!lockedByUserLocal.value\n})\n\nconst { pagination } = usePagination(isNull(filterSortByProp) ? null : filterSortByProp.key, filterSortByProp?.order)\nconst fetchedItems = ref<ValueObjectOption<T>[]>([])\nconst selectedItemsCache = ref<ValueObjectOption<T>[]>([])\nconst isFirstLoad = ref(true)\nconst prefetchCompleted = ref(false)\n\nconst allItems = computed<ValueObjectOption<T>[]>(() => {\n const itemsMap = new Map<T, ValueObjectOption<T>>()\n const addToMap = (items: ValueObjectOption<T>[]) => {\n items.forEach((item) => {\n itemsMap.set(item.value, {\n value: item.value,\n title: item.title,\n subtitle: item.subtitle,\n } as ValueObjectOption<T>)\n })\n }\n\n addToMap(selectedItemsCache.value as ValueObjectOption<T>[])\n addToMap(fetchedItems.value as ValueObjectOption<T>[])\n\n return Array.from(itemsMap.values())\n})\n\n// The requests of the component on their way (items by their ids, a search, a prefetch): its spinner is on while\n// any of them runs, and goes off with the last. Each turned it off as it ended: a read by ids hid the spinner of a\n// search still running, and the reverse.\nconst requestsRunning = ref(0)\nconst loadingLocal = computed(() => requestsRunning.value > 0)\nconst loadingComputed = computed(() => {\n if (loadingLocal.value) return true\n return props.loading\n})\n\nconst resetToEmptyState = (value: ModelValueType) => {\n byIdsCounter++\n selectedItemsCache.value = []\n modelValueSelected.value = isArray(value) ? [] : null\n modelValueAutocomplete.value = isArray(value) ? [] : null\n}\n\nconst updateSelected = (value: T[] | T) => {\n const findItem = (id: T): ValueObjectOption<T> =>\n allItems.value.find((obj) => obj.value === id) ?? ({ title: `${id}`, value: id } as ValueObjectOption<T>)\n return isArray(value) ? value.map(findItem) : findItem(value)\n}\n\nlet byIdsCounter = 0\nconst loadListItems = async (ids: T[] | T) => {\n const requestId = ++byIdsCounter\n requestsRunning.value++\n\n try {\n const idsArray = isArray(ids) ? ids : [ids]\n const res = await props.fetchItemsByIds(idsArray)\n if (requestId !== byIdsCounter) return selectedItemsCache.value\n selectedItemsCache.value = res\n const selectedNewValue = updateSelected(ids)\n modelValueSelected.value = selectedNewValue\n modelValueAutocomplete.value = selectedNewValue\n return selectedItemsCache.value\n } catch (e) {\n // Mirror tryLoadModelValue: don't let a failed by-ids resolve become a generic global toast (QA 85050).\n showErrorsDefault(e)\n return undefined\n } finally {\n requestsRunning.value--\n }\n}\n\nconst tryLoadModelValue = async (tryLoadValue: ModelValueType, prefetch = false) => {\n const idsToFetch = isArray(tryLoadValue) ? tryLoadValue : [tryLoadValue]\n let fetchedData: ValueObjectOption<T>[]\n requestsRunning.value++\n try {\n fetchedData = await props.fetchItemsByIds(idsToFetch as Array<IntegerId & DocId>)\n } catch (e) {\n showErrorsDefault(e)\n return false\n } finally {\n // Over before the prefetch below, which bails out while a request of the component runs.\n requestsRunning.value--\n }\n if (!isArray(fetchedData) || fetchedData.length === 0) return false\n selectedItemsCache.value = fetchedData\n const value = props.multiple ? fetchedData.map((item) => item.value) : fetchedData[0]!.value\n modelValue.value = value\n if (prefetch) await tryAutoFetch('force', value)\n return true\n}\n\nconst { showErrorsDefault } = useAlerts()\n\nconst apiSearch = async (query: string, requestCounter: number) => {\n requestsRunning.value++\n filterInnerData[filterByFieldProp] = query\n try {\n const res = await props.fetchItems(pagination, filterInnerData, filterInnerConfig)\n if (requestCounter === apiRequestCounter.value) fetchedItems.value = res\n } catch (error) {\n showErrorsDefault(error)\n } finally {\n requestsRunning.value--\n }\n}\n\nconst tryAutoFetch = async (mode: 'focus' | 'hover' | 'mounted' | 'force', newValue: ModelValueType) => {\n if (loadingLocal.value) return\n if (mode !== 'force') {\n if (props.prefetch === false || props.prefetch !== mode || prefetchCompleted.value) return\n }\n\n requestsRunning.value++\n try {\n const res = await props.fetchItems(pagination, filterInnerData, filterInnerConfig)\n if (apiRequestCounter.value === 0) {\n fetchedItems.value = res\n if (\n !props.disableAutoSingleSelect &&\n mode === 'mounted' &&\n res.length === 1 &&\n (isNull(newValue) || isUndefined(newValue) || (isArray(newValue) && newValue.length === 0))\n ) {\n modelValue.value = props.multiple ? [res[0]!.value] : res[0]!.value\n }\n }\n prefetchCompleted.value = true\n } catch (e) {\n showErrorsDefault(e)\n } finally {\n requestsRunning.value--\n }\n}\n\nconst onFocus = async () => {\n isFocused.value = true\n acquireFieldLock.value()\n await tryAutoFetch('focus', modelValue.value)\n emit('focus', modelValue.value)\n}\n\nconst onMouseEnter = async () => {\n await tryAutoFetch('hover', modelValue.value)\n}\n\nconst singleItemSelectedTitle = computed(() => {\n if (!props.multiple && selectedItemsCache.value[0]) {\n return selectedItemsCache.value[0].title\n }\n return undefined\n})\n\n// The clear of the field empties the search with `null` first: an empty search. A field without focus at that\n// moment read its length and threw.\nconst onSearchUpdate = (query: string | null) => {\n const text = query ?? ''\n if (!props.multiple && !isFocused.value && text.length === 0) return // vuetify fix\n if (singleItemSelectedTitle.value === text) return\n search.value = text\n}\n\n// The clear empties the value at once and asks for the list once, for an empty search, through the counter of the\n// searches. It asked with the search typed before, outside the counter, wrote that answer whenever it came, and\n// emptied the value only after it.\nconst onClickClear = () => {\n modelValue.value = props.multiple ? [] : null\n apiRequestCounter.value++\n apiSearch('', apiRequestCounter.value)\n}\n\nconst onChipCloseClick = (closedItem: ValueObjectOption<T>) => {\n if (isArray(modelValue.value)) {\n modelValue.value = modelValue.value.filter((item) => item !== closedItem.value)\n return\n }\n if (closedItem.value === modelValue.value && props.clearable) {\n modelValue.value = null\n }\n}\n\nwatchDebounced(\n search,\n (newValue: string | null, oldValue: string | null) => {\n const query = newValue ?? ''\n if (query === (oldValue ?? '')) return\n if (query.length > 0 && query.length < props.minSearchChars) return\n if (query.length === 0 && props.prefetch === false) {\n fetchedItems.value = []\n return\n }\n apiRequestCounter.value++\n apiSearch(query, apiRequestCounter.value)\n emit('searchChangeDebounced', query)\n },\n { debounce: SEARCH_DEBOUNCE_MS }\n)\n\nwatch(search, (newValue, oldValue) => {\n if (newValue !== oldValue) {\n emit('searchChange', newValue)\n }\n})\n\nconst onAutocompleteModelUpdate = (newValue: ValueObjectOption<T> | readonly ValueObjectOption<T>[] | null) => {\n const cloned = cloneDeep(newValue) as ValueObjectOption<T> | ValueObjectOption<T>[] | null\n modelValueSelected.value = cloned\n if (isNull(cloned) || isUndefined(cloned)) {\n modelValue.value = null\n return\n }\n if (isArray(cloned)) {\n modelValue.value = cloned.map((item) => item.value)\n return\n }\n modelValue.value = cloned.value\n}\n\nconst noDataText = computed(() => {\n if (loadingLocal.value) {\n return '$vuetify.loading'\n }\n if (fetchedItems.value.length === 0 && search.value.length < props.minSearchChars) {\n return isUndefined(props.minSearchText)\n ? t('common.filter.filterMinChars', { min: props.minSearchChars })\n : props.minSearchText\n }\n return undefined\n})\n\nwatch(\n modelValue,\n async (newValue, oldValue) => {\n if (newValue === oldValue) return\n if (isFirstLoad.value) {\n isFirstLoad.value = false\n await tryAutoFetch('mounted', newValue)\n }\n if (collabOptions.value.enabled && isFocused.value) {\n changeFieldData.value(newValue)\n }\n if (isEmpty(newValue)) {\n resetToEmptyState(newValue)\n return\n }\n await loadListItems(newValue as T[] | T)\n },\n { immediate: true }\n)\n\ndefineExpose({\n tryLoadModelValue,\n})\n</script>\n\n<template>\n <VAutocomplete\n :model-value=\"modelValueAutocomplete as any\"\n :items=\"allItems\"\n no-filter\n :multiple=\"multiple\"\n :clearable=\"clearable\"\n :error-messages=\"errorMessageComputed\"\n :chips=\"chips || multiple || closableChips\"\n :hide-details=\"hideDetails\"\n :loading=\"loadingComputed\"\n :disabled=\"disabledComputed\"\n :readonly=\"readonly\"\n :no-data-text=\"noDataText\"\n return-object\n autocomplete=\"off\"\n :hide-selected=\"closableChips\"\n :closable-chips=\"closableChips && !loadingComputed && !disabledComputed && !readonly\"\n @update:search=\"onSearchUpdate\"\n @update:model-value=\"onAutocompleteModelUpdate\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @mouseenter=\"onMouseEnter\"\n @click:clear=\"onClickClear\"\n >\n <template #item=\"{ props: itemProps, internalItem }\">\n <VListItem\n v-bind=\"itemProps\"\n :title=\"internalItem.raw.title\"\n :subtitle=\"internalItem.raw.subtitle\"\n />\n </template>\n <template #chip=\"{ props: chipProps, internalItem }\">\n <VChip\n :closable=\"chipProps.closable as boolean\"\n close-label=\"common.button.remove\"\n size=\"small\"\n :text=\"`${internalItem.title} (${internalItem.raw.subtitle})`\"\n :disabled=\"internalItem.props.disabled\"\n @click:close=\"onChipCloseClick(internalItem.raw)\"\n >\n {{ internalItem.raw.title }}\n <span\n v-if=\"internalItem.raw.subtitle\"\n class=\"font-italic pl-1\"\n >\n ({{ internalItem.raw.subtitle }})\n </span>\n </VChip>\n </template>\n <template #label>\n <span\n v-if=\"!hideLabel\"\n :key=\"requiredComputed + ''\"\n >\n {{ labelComputed }}\n <span\n v-if=\"requiredComputed\"\n class=\"a-required-mark\"\n />\n </span>\n </template>\n <template\n v-if=\"lockedByUserLocal\"\n #append-inner\n >\n <slot\n name=\"locked\"\n :user-id=\"lockedByUserLocal\"\n >\n <ACollabLockedByUser\n v-if=\"collab\"\n :id=\"lockedByUserLocal\"\n :users=\"collab.cachedUsers\"\n />\n </slot>\n </template>\n <template\n v-if=\"$slots.append\"\n #append\n >\n <slot name=\"append\" />\n </template>\n </VAutocomplete>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"AFormRemoteAutocomplete.js","names":["_sfc_main","AFormRemoteAutocomplete_vue_vue_type_script_setup_true_lang_default","AFormRemoteAutocomplete_default"],"sources":["../../../../src/domains/remoteAutocomplete/components/AFormRemoteAutocomplete.vue"],"sourcesContent":["<script lang=\"ts\" setup generic=\"T extends string | number\">\nimport type { AFormFieldValidation } from '@/shared/types/Validation'\nimport { watchDebounced } from '@vueuse/core'\nimport { computed, getCurrentInstance, inject, type Ref, ref, watch, unref } from 'vue'\nimport type { ValueObjectOption } from '@/shared/types/ValueObject'\nimport { cloneDeep, isArray, isDefined, isEmpty, isNull, isUndefined } from '@/shared/utils/common'\nimport { SubjectScopeKey, SystemScopeKey } from '@/shared/injectionKeys'\nimport { stringSplitOnFirstOccurrence } from '@/shared/utils/string'\nimport { useI18n } from 'vue-i18n'\nimport type { DocId, IntegerId, IntegerIdNullable } from '@/shared/types/common'\nimport ACollabLockedByUser from '@/domains/collab/components/ACollabLockedByUser.vue'\nimport type { CollabComponentConfig, CollabFieldData } from '@/domains/collab/types/Collab'\nimport { useCollabField } from '@/domains/collab/composables/collabField'\nimport { useCommonAdminCollabOptions } from '@/domains/collab/composables/commonAdminCollabOptions'\nimport type { FilterConfig, FilterData } from '@/domains/filters/composables/filterFactory'\nimport { FilterInnerConfigKey, FilterInnerDataKey } from '@/domains/filters/utils/filterInjectionKeys'\nimport type { DatatableSortBy } from '@/domains/filters/datatable/utils/datatableColumns'\nimport { type Pagination, usePagination } from '@/domains/api/composables/pagination'\nimport { useAlerts } from '@/domains/system/composables/alerts'\n\ntype ModelValueType = T | T[] | null | undefined\n\nconst props = withDefaults(\n defineProps<{\n label?: string | undefined\n required?: boolean | undefined\n multiple?: boolean\n clearable?: boolean\n v?: AFormFieldValidation | null\n errorMessage?: string\n hideDetails?: boolean\n hideLabel?: boolean\n fetchItems: (\n pagination: Ref<Pagination>,\n filterData: FilterData,\n filterConfig: FilterConfig\n ) => Promise<ValueObjectOption<T>[]>\n fetchItemsByIds: (ids: T[]) => Promise<ValueObjectOption<T>[]>\n filterByField: string\n filterSortBy?: DatatableSortBy\n loading?: boolean\n collab?: CollabComponentConfig\n disabled?: boolean | undefined\n readonly?: boolean\n chips?: boolean\n closableChips?: boolean\n disableAutoSingleSelect?: boolean // auto select works only when modelValue is empty/null and prefetch is set to 'mounted'\n prefetch?: 'hover' | 'focus' | 'mounted' | false\n minSearchChars?: number\n minSearchText?: string | undefined\n }>(),\n {\n label: undefined,\n required: undefined,\n multiple: false,\n clearable: false,\n v: null,\n errorMessage: undefined,\n hideDetails: false,\n hideLabel: false,\n filterSortBy: null,\n loading: false,\n collab: undefined,\n disabled: undefined,\n chips: false,\n closableChips: false,\n disableAutoSingleSelect: false,\n prefetch: false,\n minSearchChars: 2,\n minSearchText: undefined,\n }\n)\nconst emit = defineEmits<{\n (e: 'searchChange', data: string): void\n (e: 'searchChangeDebounced', data: string): void\n (e: 'blur', data: ModelValueType): void\n (e: 'focus', data: ModelValueType): void\n (e: 'click:chipClose', data: ValueObjectOption<T>): void\n}>()\n\nconst SEARCH_DEBOUNCE_MS = 300\n\nconst filterInnerConfig = inject(FilterInnerConfigKey)\nconst filterInnerData = inject(FilterInnerDataKey)\n\nconst componentName = getCurrentInstance()?.type.__name\n\nif (isUndefined(filterInnerConfig) || isUndefined(filterInnerData)) {\n throw new Error(`[${componentName}] Incorrect provide/inject config.`)\n}\n// eslint-disable-next-line vue/no-setup-props-reactivity-loss\nconst filterByFieldProp = props.filterByField\n// eslint-disable-next-line vue/no-setup-props-reactivity-loss\nconst filterSortByProp = props.filterSortBy\n\nif (isUndefined(filterInnerConfig.fields[filterByFieldProp]) || isUndefined(filterInnerData[filterByFieldProp])) {\n throw new Error(\n `[${componentName}] Incorrect filter inner config. ` +\n `FilterByField is '${filterByFieldProp}' and available options are ${Object.keys(filterInnerData).join(', ')}.`\n )\n}\n\nconst modelValue = defineModel<ModelValueType>({\n required: true,\n set(newValue) {\n return isArray(newValue) ? cloneDeep(newValue) : newValue\n },\n})\n\nconst modelValueSelected = defineModel<ValueObjectOption<T> | ValueObjectOption<T>[] | null>('selected', {\n required: false,\n default: null,\n set(newValue) {\n return isArray(newValue) ? cloneDeep(newValue) : newValue\n },\n})\n\n// Collaboration\nconst { collabOptions } = useCommonAdminCollabOptions()\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst releaseFieldLock = ref((data: CollabFieldData) => {})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst changeFieldData = ref((data: CollabFieldData) => {})\nconst acquireFieldLock = ref(() => {})\nconst lockedByUserLocal = ref<IntegerIdNullable>(null)\n// eslint-disable-next-line vue/no-setup-props-reactivity-loss\nif (collabOptions.value.enabled && isDefined(props.collab)) {\n const { releaseCollabFieldLock, changeCollabFieldData, acquireCollabFieldLock, lockedByUser } = useCollabField(\n props.collab.room,\n props.collab.field,\n false,\n true\n )\n releaseFieldLock.value = releaseCollabFieldLock\n changeFieldData.value = changeCollabFieldData\n acquireFieldLock.value = acquireCollabFieldLock\n watch(\n lockedByUser,\n (newValue) => {\n lockedByUserLocal.value = newValue\n },\n { immediate: true }\n )\n}\n\nconst search = ref('')\nconst isFocused = ref(false)\nconst modelValueAutocomplete = ref<ValueObjectOption<T> | ValueObjectOption<T>[] | null>(null)\nconst apiRequestCounter = ref(0)\n\nconst { t } = useI18n()\n\nconst system = inject<string | undefined>(SystemScopeKey, undefined)\nconst subject = inject<string | undefined>(SubjectScopeKey, undefined)\n\nconst onBlur = () => {\n isFocused.value = false\n emit('blur', modelValue.value)\n props.v?.$touch()\n releaseFieldLock.value(modelValue.value)\n}\n\nconst errorMessageComputed = computed(() => {\n if (isDefined(props.errorMessage)) return [props.errorMessage]\n if (props.v?.$errors?.length) return props.v.$errors.map((item) => unref(item.$message))\n return []\n})\n\nconst labelComputed = computed(() => {\n if (isDefined(props.label)) return props.label\n if (isUndefined(system) || isUndefined(subject) || isUndefined(props.v?.$path)) return ''\n const { end: path } = stringSplitOnFirstOccurrence(props.v?.$path, '.')\n return t(system + '.' + subject + '.model.' + path)\n})\n\nconst requiredComputed = computed(() => {\n if (isDefined(props.required)) return props.required\n return (props.v?.required as { $params?: { type?: string } } | undefined)?.$params?.type === 'required'\n})\n\nconst disabledComputed = computed(() => {\n if (isDefined(props.disabled)) return props.disabled\n return !!lockedByUserLocal.value\n})\n\nconst { pagination } = usePagination(isNull(filterSortByProp) ? null : filterSortByProp.key, filterSortByProp?.order)\nconst fetchedItems = ref<ValueObjectOption<T>[]>([])\nconst selectedItemsCache = ref<ValueObjectOption<T>[]>([])\nconst isFirstLoad = ref(true)\nconst prefetchCompleted = ref(false)\n\nconst allItems = computed<ValueObjectOption<T>[]>(() => {\n const itemsMap = new Map<T, ValueObjectOption<T>>()\n const addToMap = (items: ValueObjectOption<T>[]) => {\n items.forEach((item) => {\n itemsMap.set(item.value, {\n value: item.value,\n title: item.title,\n subtitle: item.subtitle,\n } as ValueObjectOption<T>)\n })\n }\n\n addToMap(selectedItemsCache.value as ValueObjectOption<T>[])\n addToMap(fetchedItems.value as ValueObjectOption<T>[])\n\n return Array.from(itemsMap.values())\n})\n\n// Counts running requests (by ids, search, prefetch). The spinner stays on until the last one ends.\n// A single flag let a read by ids hide the spinner of a search still running, and the reverse.\nconst requestsRunning = ref(0)\nconst loadingLocal = computed(() => requestsRunning.value > 0)\nconst loadingComputed = computed(() => {\n if (loadingLocal.value) return true\n return props.loading\n})\n\nconst resetToEmptyState = (value: ModelValueType) => {\n byIdsCounter++\n selectedItemsCache.value = []\n modelValueSelected.value = isArray(value) ? [] : null\n modelValueAutocomplete.value = isArray(value) ? [] : null\n}\n\nconst updateSelected = (value: T[] | T) => {\n const findItem = (id: T): ValueObjectOption<T> =>\n allItems.value.find((obj) => obj.value === id) ?? ({ title: `${id}`, value: id } as ValueObjectOption<T>)\n return isArray(value) ? value.map(findItem) : findItem(value)\n}\n\nlet byIdsCounter = 0\nconst loadListItems = async (ids: T[] | T) => {\n const requestId = ++byIdsCounter\n requestsRunning.value++\n\n try {\n const idsArray = isArray(ids) ? ids : [ids]\n const res = await props.fetchItemsByIds(idsArray)\n if (requestId !== byIdsCounter) return selectedItemsCache.value\n selectedItemsCache.value = res\n const selectedNewValue = updateSelected(ids)\n modelValueSelected.value = selectedNewValue\n modelValueAutocomplete.value = selectedNewValue\n return selectedItemsCache.value\n } catch (e) {\n // Mirror tryLoadModelValue: don't let a failed by-ids resolve become a generic global toast (QA 85050).\n showErrorsDefault(e)\n return undefined\n } finally {\n requestsRunning.value--\n }\n}\n\nconst tryLoadModelValue = async (tryLoadValue: ModelValueType, prefetch = false) => {\n const idsToFetch = isArray(tryLoadValue) ? tryLoadValue : [tryLoadValue]\n let fetchedData: ValueObjectOption<T>[]\n requestsRunning.value++\n try {\n fetchedData = await props.fetchItemsByIds(idsToFetch as Array<IntegerId & DocId>)\n } catch (e) {\n showErrorsDefault(e)\n return false\n } finally {\n // Decremented before the prefetch below, which bails out while a request of the component runs.\n requestsRunning.value--\n }\n if (!isArray(fetchedData) || fetchedData.length === 0) return false\n selectedItemsCache.value = fetchedData\n const value = props.multiple ? fetchedData.map((item) => item.value) : fetchedData[0]!.value\n modelValue.value = value\n if (prefetch) await tryAutoFetch('force', value)\n return true\n}\n\nconst { showErrorsDefault } = useAlerts()\n\nconst apiSearch = async (query: string, requestCounter: number) => {\n requestsRunning.value++\n filterInnerData[filterByFieldProp] = query\n try {\n const res = await props.fetchItems(pagination, filterInnerData, filterInnerConfig)\n if (requestCounter === apiRequestCounter.value) fetchedItems.value = res\n } catch (error) {\n showErrorsDefault(error)\n } finally {\n requestsRunning.value--\n }\n}\n\nconst tryAutoFetch = async (mode: 'focus' | 'hover' | 'mounted' | 'force', newValue: ModelValueType) => {\n if (loadingLocal.value) return\n if (mode !== 'force') {\n if (props.prefetch === false || props.prefetch !== mode || prefetchCompleted.value) return\n }\n\n requestsRunning.value++\n try {\n const res = await props.fetchItems(pagination, filterInnerData, filterInnerConfig)\n if (apiRequestCounter.value === 0) {\n fetchedItems.value = res\n if (\n !props.disableAutoSingleSelect &&\n mode === 'mounted' &&\n res.length === 1 &&\n (isNull(newValue) || isUndefined(newValue) || (isArray(newValue) && newValue.length === 0))\n ) {\n modelValue.value = props.multiple ? [res[0]!.value] : res[0]!.value\n }\n }\n prefetchCompleted.value = true\n } catch (e) {\n showErrorsDefault(e)\n } finally {\n requestsRunning.value--\n }\n}\n\nconst onFocus = async () => {\n isFocused.value = true\n acquireFieldLock.value()\n await tryAutoFetch('focus', modelValue.value)\n emit('focus', modelValue.value)\n}\n\nconst onMouseEnter = async () => {\n await tryAutoFetch('hover', modelValue.value)\n}\n\nconst singleItemSelectedTitle = computed(() => {\n if (!props.multiple && selectedItemsCache.value[0]) {\n return selectedItemsCache.value[0].title\n }\n return undefined\n})\n\n// Clearing the field first emits a `null` search. Reading its length threw when the field had no focus.\nconst onSearchUpdate = (query: string | null) => {\n const text = query ?? ''\n if (!props.multiple && !isFocused.value && text.length === 0) return // vuetify fix\n if (singleItemSelectedTitle.value === text) return\n search.value = text\n}\n\n// Empties the value at once and fetches the list once for an empty search\n// through the search counter, so a stale answer cannot overwrite it.\nconst onClickClear = () => {\n modelValue.value = props.multiple ? [] : null\n apiRequestCounter.value++\n apiSearch('', apiRequestCounter.value)\n}\n\nconst onChipCloseClick = (closedItem: ValueObjectOption<T>) => {\n if (isArray(modelValue.value)) {\n modelValue.value = modelValue.value.filter((item) => item !== closedItem.value)\n return\n }\n if (closedItem.value === modelValue.value && props.clearable) {\n modelValue.value = null\n }\n}\n\nwatchDebounced(\n search,\n (newValue: string | null, oldValue: string | null) => {\n const query = newValue ?? ''\n if (query === (oldValue ?? '')) return\n if (query.length > 0 && query.length < props.minSearchChars) return\n if (query.length === 0 && props.prefetch === false) {\n fetchedItems.value = []\n return\n }\n apiRequestCounter.value++\n apiSearch(query, apiRequestCounter.value)\n emit('searchChangeDebounced', query)\n },\n { debounce: SEARCH_DEBOUNCE_MS }\n)\n\nwatch(search, (newValue, oldValue) => {\n if (newValue !== oldValue) {\n emit('searchChange', newValue)\n }\n})\n\nconst onAutocompleteModelUpdate = (newValue: ValueObjectOption<T> | readonly ValueObjectOption<T>[] | null) => {\n const cloned = cloneDeep(newValue) as ValueObjectOption<T> | ValueObjectOption<T>[] | null\n modelValueSelected.value = cloned\n if (isNull(cloned) || isUndefined(cloned)) {\n modelValue.value = null\n return\n }\n if (isArray(cloned)) {\n modelValue.value = cloned.map((item) => item.value)\n return\n }\n modelValue.value = cloned.value\n}\n\nconst noDataText = computed(() => {\n if (loadingLocal.value) {\n return '$vuetify.loading'\n }\n if (fetchedItems.value.length === 0 && search.value.length < props.minSearchChars) {\n return isUndefined(props.minSearchText)\n ? t('common.filter.filterMinChars', { min: props.minSearchChars })\n : props.minSearchText\n }\n return undefined\n})\n\nwatch(\n modelValue,\n async (newValue, oldValue) => {\n if (newValue === oldValue) return\n if (isFirstLoad.value) {\n isFirstLoad.value = false\n await tryAutoFetch('mounted', newValue)\n }\n if (collabOptions.value.enabled && isFocused.value) {\n changeFieldData.value(newValue)\n }\n if (isEmpty(newValue)) {\n resetToEmptyState(newValue)\n return\n }\n await loadListItems(newValue as T[] | T)\n },\n { immediate: true }\n)\n\ndefineExpose({\n tryLoadModelValue,\n})\n</script>\n\n<template>\n <VAutocomplete\n :model-value=\"modelValueAutocomplete as any\"\n :items=\"allItems\"\n no-filter\n :multiple=\"multiple\"\n :clearable=\"clearable\"\n :error-messages=\"errorMessageComputed\"\n :chips=\"chips || multiple || closableChips\"\n :hide-details=\"hideDetails\"\n :loading=\"loadingComputed\"\n :disabled=\"disabledComputed\"\n :readonly=\"readonly\"\n :no-data-text=\"noDataText\"\n return-object\n autocomplete=\"off\"\n :hide-selected=\"closableChips\"\n :closable-chips=\"closableChips && !loadingComputed && !disabledComputed && !readonly\"\n @update:search=\"onSearchUpdate\"\n @update:model-value=\"onAutocompleteModelUpdate\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @mouseenter=\"onMouseEnter\"\n @click:clear=\"onClickClear\"\n >\n <template #item=\"{ props: itemProps, internalItem }\">\n <VListItem\n v-bind=\"itemProps\"\n :title=\"internalItem.raw.title\"\n :subtitle=\"internalItem.raw.subtitle\"\n />\n </template>\n <template #chip=\"{ props: chipProps, internalItem }\">\n <VChip\n :closable=\"chipProps.closable as boolean\"\n close-label=\"common.button.remove\"\n size=\"small\"\n :text=\"`${internalItem.title} (${internalItem.raw.subtitle})`\"\n :disabled=\"internalItem.props.disabled\"\n @click:close=\"onChipCloseClick(internalItem.raw)\"\n >\n {{ internalItem.raw.title }}\n <span\n v-if=\"internalItem.raw.subtitle\"\n class=\"font-italic pl-1\"\n >\n ({{ internalItem.raw.subtitle }})\n </span>\n </VChip>\n </template>\n <template #label>\n <span\n v-if=\"!hideLabel\"\n :key=\"requiredComputed + ''\"\n >\n {{ labelComputed }}\n <span\n v-if=\"requiredComputed\"\n class=\"a-required-mark\"\n />\n </span>\n </template>\n <template\n v-if=\"lockedByUserLocal\"\n #append-inner\n >\n <slot\n name=\"locked\"\n :user-id=\"lockedByUserLocal\"\n >\n <ACollabLockedByUser\n v-if=\"collab\"\n :id=\"lockedByUserLocal\"\n :users=\"collab.cachedUsers\"\n />\n </slot>\n </template>\n <template\n v-if=\"$slots.append\"\n #append\n >\n <slot name=\"append\" />\n </template>\n </VAutocomplete>\n</template>\n"],"mappings":""}
@@ -1,19 +1,19 @@
1
1
  import { cloneDeep as e, isArray as t, isDefined as n, isEmpty as r, isNull as i, isUndefined as a } from "../../../shared/utils/common.js";
2
- import { stringSplitOnFirstOccurrence as ee } from "../../../shared/utils/string.js";
3
- import { SubjectScopeKey as te, SystemScopeKey as ne } from "../../../shared/injectionKeys.js";
2
+ import { SubjectScopeKey as ee, SystemScopeKey as te } from "../../../shared/injectionKeys.js";
3
+ import { stringSplitOnFirstOccurrence as ne } from "../../../shared/utils/string.js";
4
4
  import re from "../../collab/components/ACollabLockedByUser.js";
5
- import { useCommonAdminCollabOptions as ie } from "../../collab/composables/commonAdminCollabOptions.js";
6
- import { useCollabField as ae } from "../../collab/composables/collabField.js";
7
- import { useAlerts as oe } from "../../system/composables/alerts.js";
8
- import { FilterInnerConfigKey as se, FilterInnerDataKey as ce } from "../../filters/utils/filterInjectionKeys.js";
9
- import { usePagination as le } from "../../api/composables/pagination.js";
5
+ import { useCollabField as ie } from "../../collab/composables/collabField.js";
6
+ import { useCommonAdminCollabOptions as ae } from "../../collab/composables/commonAdminCollabOptions.js";
7
+ import { FilterInnerConfigKey as oe, FilterInnerDataKey as se } from "../../filters/utils/filterInjectionKeys.js";
8
+ import { usePagination as ce } from "../../api/composables/pagination.js";
9
+ import { useAlerts as le } from "../../system/composables/alerts.js";
10
10
  import { computed as o, createBlock as s, createCommentVNode as c, createElementBlock as l, createSlots as ue, createTextVNode as u, createVNode as de, defineComponent as d, getCurrentInstance as fe, inject as f, mergeModels as p, mergeProps as pe, openBlock as m, ref as h, renderSlot as g, toDisplayString as _, unref as me, useModel as v, watch as y, withCtx as b } from "vue";
11
11
  import { useI18n as he } from "vue-i18n";
12
12
  import { VChip as ge } from "vuetify/components/VChip";
13
13
  import { watchDebounced as _e } from "@vueuse/core";
14
14
  import { VListItem as ve } from "vuetify/components/VList";
15
15
  import { VAutocomplete as ye } from "vuetify/components/VAutocomplete";
16
- //#region src/domains/remoteAutocomplete/components/AFormRemoteAutocomplete.vue?vue&type=script&setup=true&lang.ts
16
+ // src/domains/remoteAutocomplete/components/AFormRemoteAutocomplete.vue?vue&type=script&setup=true&lang.ts
17
17
  var be = {
18
18
  key: 0,
19
19
  class: "font-italic pl-1"
@@ -95,7 +95,7 @@ var be = {
95
95
  "click:chipClose"
96
96
  ], ["update:modelValue", "update:selected"]),
97
97
  setup(d, { expose: p, emit: x }) {
98
- let S = d, C = x, w = f(se), T = f(ce), E = fe()?.type.__name;
98
+ let S = d, C = x, w = f(oe), T = f(se), E = fe()?.type.__name;
99
99
  if (a(w) || a(T)) throw Error(`[${E}] Incorrect provide/inject config.`);
100
100
  let D = S.filterByField, O = S.filterSortBy;
101
101
  if (a(w.fields[D]) || a(T[D])) throw Error(`[${E}] Incorrect filter inner config. FilterByField is '${D}' and available options are ${Object.keys(T).join(", ")}.`);
@@ -103,21 +103,21 @@ var be = {
103
103
  return t(n) ? e(n) : n;
104
104
  } }), A = v(d, "selected", { set(n) {
105
105
  return t(n) ? e(n) : n;
106
- } }), { collabOptions: j } = ie(), M = h((e) => {}), N = h((e) => {}), P = h(() => {}), F = h(null);
106
+ } }), { collabOptions: j } = ae(), M = h((e) => {}), N = h((e) => {}), P = h(() => {}), F = h(null);
107
107
  if (j.value.enabled && n(S.collab)) {
108
- let { releaseCollabFieldLock: e, changeCollabFieldData: t, acquireCollabFieldLock: n, lockedByUser: r } = ae(S.collab.room, S.collab.field, !1, !0);
108
+ let { releaseCollabFieldLock: e, changeCollabFieldData: t, acquireCollabFieldLock: n, lockedByUser: r } = ie(S.collab.room, S.collab.field, !1, !0);
109
109
  M.value = e, N.value = t, P.value = n, y(r, (e) => {
110
110
  F.value = e;
111
111
  }, { immediate: !0 });
112
112
  }
113
- let I = h(""), L = h(!1), R = h(null), z = h(0), { t: B } = he(), V = f(ne, void 0), H = f(te, void 0), Ce = () => {
113
+ let I = h(""), L = h(!1), R = h(null), z = h(0), { t: B } = he(), V = f(te, void 0), H = f(ee, void 0), Ce = () => {
114
114
  L.value = !1, C("blur", k.value), S.v?.$touch(), M.value(k.value);
115
115
  }, we = o(() => n(S.errorMessage) ? [S.errorMessage] : S.v?.$errors?.length ? S.v.$errors.map((e) => me(e.$message)) : []), Te = o(() => {
116
116
  if (n(S.label)) return S.label;
117
117
  if (a(V) || a(H) || a(S.v?.$path)) return "";
118
- let { end: e } = ee(S.v?.$path, ".");
118
+ let { end: e } = ne(S.v?.$path, ".");
119
119
  return B(V + "." + H + ".model." + e);
120
- }), U = o(() => n(S.required) ? S.required : (S.v?.required)?.$params?.type === "required"), W = o(() => n(S.disabled) ? S.disabled : !!F.value), { pagination: G } = le(i(O) ? null : O.key, O?.order), K = h([]), q = h([]), Ee = h(!0), De = h(!1), Oe = o(() => {
120
+ }), U = o(() => n(S.required) ? S.required : (S.v?.required)?.$params?.type === "required"), W = o(() => n(S.disabled) ? S.disabled : !!F.value), { pagination: G } = ce(i(O) ? null : O.key, O?.order), K = h([]), q = h([]), Ee = h(!0), De = h(!1), Oe = o(() => {
121
121
  let e = /* @__PURE__ */ new Map(), t = (t) => {
122
122
  t.forEach((t) => {
123
123
  e.set(t.value, {
@@ -165,7 +165,7 @@ var be = {
165
165
  q.value = i;
166
166
  let a = S.multiple ? i.map((e) => e.value) : i[0].value;
167
167
  return k.value = a, n && await $("force", a), !0;
168
- }, { showErrorsDefault: Z } = oe(), Q = async (e, t) => {
168
+ }, { showErrorsDefault: Z } = le(), Q = async (e, t) => {
169
169
  J.value++, T[D] = e;
170
170
  try {
171
171
  let e = await S.fetchItems(G, T, w);
@@ -291,7 +291,6 @@ var be = {
291
291
  ]));
292
292
  }
293
293
  });
294
- //#endregion
295
294
  export { x as default };
296
295
 
297
296
  //# sourceMappingURL=AFormRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AFormRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js","names":["$slots","_useModel","_openBlock","_createBlock","_component_VAutocomplete","_createSlots","_withCtx","_createVNode","_component_VListItem","_mergeProps","_component_VChip","_createTextVNode","_toDisplayString","_createElementBlock","_createCommentVNode","_renderSlot","ACollabLockedByUser","ACollabLockedByUser_default","_hoisted_1","_hoisted_2","SEARCH_DEBOUNCE_MS","AFormRemoteAutocomplete_vue_vue_type_script_setup_true_lang_default","\"modelValue\"","\"modelModifiers\"","\"selected\"","\"selectedModifiers\"","__expose","__emit","props","__props","emit","filterInnerConfig","inject","FilterInnerConfigKey","filterInnerData","FilterInnerDataKey","componentName","getCurrentInstance","isUndefined","filterByFieldProp","filterSortByProp","modelValue","useModel","isArray","newValue","cloneDeep","modelValueSelected","useCommonAdminCollabOptions","releaseFieldLock","ref","changeFieldData","acquireFieldLock","lockedByUserLocal","collabOptions","isDefined","useCollabField","releaseCollabFieldLock","changeCollabFieldData","acquireCollabFieldLock","watch","lockedByUser","search","isFocused","modelValueAutocomplete","apiRequestCounter","useI18n","system","SystemScopeKey","subject","SubjectScopeKey","onBlur","errorMessageComputed","computed","unref","item","labelComputed","path","stringSplitOnFirstOccurrence","t","requiredComputed","disabledComputed","usePagination","isNull","fetchedItems","selectedItemsCache","isFirstLoad","prefetchCompleted","allItems","itemsMap","addToMap","requestsRunning","loadingLocal","loadingComputed","resetToEmptyState","value","updateSelected","findItem","obj","id","byIdsCounter","loadListItems","requestId","idsArray","ids","res","selectedNewValue","tryLoadModelValue","idsToFetch","tryLoadValue","fetchedData","showErrorsDefault","prefetch","tryAutoFetch","useAlerts","apiSearch","query","pagination","requestCounter","error","mode","onFocus","onMouseEnter","singleItemSelectedTitle","onSearchUpdate","text","onClickClear","onChipCloseClick","closedItem","watchDebounced","oldValue","onAutocompleteModelUpdate","cloned","noDataText","isEmpty","openBlock","createBlock","VAutocomplete","createSlots","withCtx","itemProps","createVNode","VListItem","mergeProps","internalItem","chipProps","VChip","createTextVNode","toDisplayString","createElementBlock","createCommentVNode","renderSlot","_ctx"],"sources":["../../../../src/domains/remoteAutocomplete/components/AFormRemoteAutocomplete.vue"],"sourcesContent":["<script lang=\"ts\" setup generic=\"T extends string | number\">\nimport type { AFormFieldValidation } from '@/shared/types/Validation'\nimport { watchDebounced } from '@vueuse/core'\nimport { computed, getCurrentInstance, inject, type Ref, ref, watch, unref } from 'vue'\nimport type { ValueObjectOption } from '@/shared/types/ValueObject'\nimport { cloneDeep, isArray, isDefined, isEmpty, isNull, isUndefined } from '@/shared/utils/common'\nimport { SubjectScopeKey, SystemScopeKey } from '@/shared/injectionKeys'\nimport { stringSplitOnFirstOccurrence } from '@/shared/utils/string'\nimport { useI18n } from 'vue-i18n'\nimport type { DocId, IntegerId, IntegerIdNullable } from '@/shared/types/common'\nimport ACollabLockedByUser from '@/domains/collab/components/ACollabLockedByUser.vue'\nimport type { CollabComponentConfig, CollabFieldData } from '@/domains/collab/types/Collab'\nimport { useCollabField } from '@/domains/collab/composables/collabField'\nimport { useCommonAdminCollabOptions } from '@/domains/collab/composables/commonAdminCollabOptions'\nimport type { FilterConfig, FilterData } from '@/domains/filters/composables/filterFactory'\nimport { FilterInnerConfigKey, FilterInnerDataKey } from '@/domains/filters/utils/filterInjectionKeys'\nimport type { DatatableSortBy } from '@/domains/filters/datatable/utils/datatableColumns'\nimport { type Pagination, usePagination } from '@/domains/api/composables/pagination'\nimport { useAlerts } from '@/domains/system/composables/alerts'\n\ntype ModelValueType = T | T[] | null | undefined\n\nconst props = withDefaults(\n defineProps<{\n label?: string | undefined\n required?: boolean | undefined\n multiple?: boolean\n clearable?: boolean\n v?: AFormFieldValidation | null\n errorMessage?: string\n hideDetails?: boolean\n hideLabel?: boolean\n fetchItems: (\n pagination: Ref<Pagination>,\n filterData: FilterData,\n filterConfig: FilterConfig\n ) => Promise<ValueObjectOption<T>[]>\n fetchItemsByIds: (ids: T[]) => Promise<ValueObjectOption<T>[]>\n filterByField: string\n filterSortBy?: DatatableSortBy\n loading?: boolean\n collab?: CollabComponentConfig\n disabled?: boolean | undefined\n readonly?: boolean\n chips?: boolean\n closableChips?: boolean\n disableAutoSingleSelect?: boolean // auto select works only when modelValue is empty/null and prefetch is set to 'mounted'\n prefetch?: 'hover' | 'focus' | 'mounted' | false\n minSearchChars?: number\n minSearchText?: string | undefined\n }>(),\n {\n label: undefined,\n required: undefined,\n multiple: false,\n clearable: false,\n v: null,\n errorMessage: undefined,\n hideDetails: false,\n hideLabel: false,\n filterSortBy: null,\n loading: false,\n collab: undefined,\n disabled: undefined,\n chips: false,\n closableChips: false,\n disableAutoSingleSelect: false,\n prefetch: false,\n minSearchChars: 2,\n minSearchText: undefined,\n }\n)\nconst emit = defineEmits<{\n (e: 'searchChange', data: string): void\n (e: 'searchChangeDebounced', data: string): void\n (e: 'blur', data: ModelValueType): void\n (e: 'focus', data: ModelValueType): void\n (e: 'click:chipClose', data: ValueObjectOption<T>): void\n}>()\n\nconst SEARCH_DEBOUNCE_MS = 300\n\nconst filterInnerConfig = inject(FilterInnerConfigKey)\nconst filterInnerData = inject(FilterInnerDataKey)\n\nconst componentName = getCurrentInstance()?.type.__name\n\nif (isUndefined(filterInnerConfig) || isUndefined(filterInnerData)) {\n throw new Error(`[${componentName}] Incorrect provide/inject config.`)\n}\n// eslint-disable-next-line vue/no-setup-props-reactivity-loss\nconst filterByFieldProp = props.filterByField\n// eslint-disable-next-line vue/no-setup-props-reactivity-loss\nconst filterSortByProp = props.filterSortBy\n\nif (isUndefined(filterInnerConfig.fields[filterByFieldProp]) || isUndefined(filterInnerData[filterByFieldProp])) {\n throw new Error(\n `[${componentName}] Incorrect filter inner config. ` +\n `FilterByField is '${filterByFieldProp}' and available options are ${Object.keys(filterInnerData).join(', ')}.`\n )\n}\n\nconst modelValue = defineModel<ModelValueType>({\n required: true,\n set(newValue) {\n return isArray(newValue) ? cloneDeep(newValue) : newValue\n },\n})\n\nconst modelValueSelected = defineModel<ValueObjectOption<T> | ValueObjectOption<T>[] | null>('selected', {\n required: false,\n default: null,\n set(newValue) {\n return isArray(newValue) ? cloneDeep(newValue) : newValue\n },\n})\n\n// Collaboration\nconst { collabOptions } = useCommonAdminCollabOptions()\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst releaseFieldLock = ref((data: CollabFieldData) => {})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst changeFieldData = ref((data: CollabFieldData) => {})\nconst acquireFieldLock = ref(() => {})\nconst lockedByUserLocal = ref<IntegerIdNullable>(null)\n// eslint-disable-next-line vue/no-setup-props-reactivity-loss\nif (collabOptions.value.enabled && isDefined(props.collab)) {\n const { releaseCollabFieldLock, changeCollabFieldData, acquireCollabFieldLock, lockedByUser } = useCollabField(\n props.collab.room,\n props.collab.field,\n false,\n true\n )\n releaseFieldLock.value = releaseCollabFieldLock\n changeFieldData.value = changeCollabFieldData\n acquireFieldLock.value = acquireCollabFieldLock\n watch(\n lockedByUser,\n (newValue) => {\n lockedByUserLocal.value = newValue\n },\n { immediate: true }\n )\n}\n\nconst search = ref('')\nconst isFocused = ref(false)\nconst modelValueAutocomplete = ref<ValueObjectOption<T> | ValueObjectOption<T>[] | null>(null)\nconst apiRequestCounter = ref(0)\n\nconst { t } = useI18n()\n\nconst system = inject<string | undefined>(SystemScopeKey, undefined)\nconst subject = inject<string | undefined>(SubjectScopeKey, undefined)\n\nconst onBlur = () => {\n isFocused.value = false\n emit('blur', modelValue.value)\n props.v?.$touch()\n releaseFieldLock.value(modelValue.value)\n}\n\nconst errorMessageComputed = computed(() => {\n if (isDefined(props.errorMessage)) return [props.errorMessage]\n if (props.v?.$errors?.length) return props.v.$errors.map((item) => unref(item.$message))\n return []\n})\n\nconst labelComputed = computed(() => {\n if (isDefined(props.label)) return props.label\n if (isUndefined(system) || isUndefined(subject) || isUndefined(props.v?.$path)) return ''\n const { end: path } = stringSplitOnFirstOccurrence(props.v?.$path, '.')\n return t(system + '.' + subject + '.model.' + path)\n})\n\nconst requiredComputed = computed(() => {\n if (isDefined(props.required)) return props.required\n return (props.v?.required as { $params?: { type?: string } } | undefined)?.$params?.type === 'required'\n})\n\nconst disabledComputed = computed(() => {\n if (isDefined(props.disabled)) return props.disabled\n return !!lockedByUserLocal.value\n})\n\nconst { pagination } = usePagination(isNull(filterSortByProp) ? null : filterSortByProp.key, filterSortByProp?.order)\nconst fetchedItems = ref<ValueObjectOption<T>[]>([])\nconst selectedItemsCache = ref<ValueObjectOption<T>[]>([])\nconst isFirstLoad = ref(true)\nconst prefetchCompleted = ref(false)\n\nconst allItems = computed<ValueObjectOption<T>[]>(() => {\n const itemsMap = new Map<T, ValueObjectOption<T>>()\n const addToMap = (items: ValueObjectOption<T>[]) => {\n items.forEach((item) => {\n itemsMap.set(item.value, {\n value: item.value,\n title: item.title,\n subtitle: item.subtitle,\n } as ValueObjectOption<T>)\n })\n }\n\n addToMap(selectedItemsCache.value as ValueObjectOption<T>[])\n addToMap(fetchedItems.value as ValueObjectOption<T>[])\n\n return Array.from(itemsMap.values())\n})\n\n// The requests of the component on their way (items by their ids, a search, a prefetch): its spinner is on while\n// any of them runs, and goes off with the last. Each turned it off as it ended: a read by ids hid the spinner of a\n// search still running, and the reverse.\nconst requestsRunning = ref(0)\nconst loadingLocal = computed(() => requestsRunning.value > 0)\nconst loadingComputed = computed(() => {\n if (loadingLocal.value) return true\n return props.loading\n})\n\nconst resetToEmptyState = (value: ModelValueType) => {\n byIdsCounter++\n selectedItemsCache.value = []\n modelValueSelected.value = isArray(value) ? [] : null\n modelValueAutocomplete.value = isArray(value) ? [] : null\n}\n\nconst updateSelected = (value: T[] | T) => {\n const findItem = (id: T): ValueObjectOption<T> =>\n allItems.value.find((obj) => obj.value === id) ?? ({ title: `${id}`, value: id } as ValueObjectOption<T>)\n return isArray(value) ? value.map(findItem) : findItem(value)\n}\n\nlet byIdsCounter = 0\nconst loadListItems = async (ids: T[] | T) => {\n const requestId = ++byIdsCounter\n requestsRunning.value++\n\n try {\n const idsArray = isArray(ids) ? ids : [ids]\n const res = await props.fetchItemsByIds(idsArray)\n if (requestId !== byIdsCounter) return selectedItemsCache.value\n selectedItemsCache.value = res\n const selectedNewValue = updateSelected(ids)\n modelValueSelected.value = selectedNewValue\n modelValueAutocomplete.value = selectedNewValue\n return selectedItemsCache.value\n } catch (e) {\n // Mirror tryLoadModelValue: don't let a failed by-ids resolve become a generic global toast (QA 85050).\n showErrorsDefault(e)\n return undefined\n } finally {\n requestsRunning.value--\n }\n}\n\nconst tryLoadModelValue = async (tryLoadValue: ModelValueType, prefetch = false) => {\n const idsToFetch = isArray(tryLoadValue) ? tryLoadValue : [tryLoadValue]\n let fetchedData: ValueObjectOption<T>[]\n requestsRunning.value++\n try {\n fetchedData = await props.fetchItemsByIds(idsToFetch as Array<IntegerId & DocId>)\n } catch (e) {\n showErrorsDefault(e)\n return false\n } finally {\n // Over before the prefetch below, which bails out while a request of the component runs.\n requestsRunning.value--\n }\n if (!isArray(fetchedData) || fetchedData.length === 0) return false\n selectedItemsCache.value = fetchedData\n const value = props.multiple ? fetchedData.map((item) => item.value) : fetchedData[0]!.value\n modelValue.value = value\n if (prefetch) await tryAutoFetch('force', value)\n return true\n}\n\nconst { showErrorsDefault } = useAlerts()\n\nconst apiSearch = async (query: string, requestCounter: number) => {\n requestsRunning.value++\n filterInnerData[filterByFieldProp] = query\n try {\n const res = await props.fetchItems(pagination, filterInnerData, filterInnerConfig)\n if (requestCounter === apiRequestCounter.value) fetchedItems.value = res\n } catch (error) {\n showErrorsDefault(error)\n } finally {\n requestsRunning.value--\n }\n}\n\nconst tryAutoFetch = async (mode: 'focus' | 'hover' | 'mounted' | 'force', newValue: ModelValueType) => {\n if (loadingLocal.value) return\n if (mode !== 'force') {\n if (props.prefetch === false || props.prefetch !== mode || prefetchCompleted.value) return\n }\n\n requestsRunning.value++\n try {\n const res = await props.fetchItems(pagination, filterInnerData, filterInnerConfig)\n if (apiRequestCounter.value === 0) {\n fetchedItems.value = res\n if (\n !props.disableAutoSingleSelect &&\n mode === 'mounted' &&\n res.length === 1 &&\n (isNull(newValue) || isUndefined(newValue) || (isArray(newValue) && newValue.length === 0))\n ) {\n modelValue.value = props.multiple ? [res[0]!.value] : res[0]!.value\n }\n }\n prefetchCompleted.value = true\n } catch (e) {\n showErrorsDefault(e)\n } finally {\n requestsRunning.value--\n }\n}\n\nconst onFocus = async () => {\n isFocused.value = true\n acquireFieldLock.value()\n await tryAutoFetch('focus', modelValue.value)\n emit('focus', modelValue.value)\n}\n\nconst onMouseEnter = async () => {\n await tryAutoFetch('hover', modelValue.value)\n}\n\nconst singleItemSelectedTitle = computed(() => {\n if (!props.multiple && selectedItemsCache.value[0]) {\n return selectedItemsCache.value[0].title\n }\n return undefined\n})\n\n// The clear of the field empties the search with `null` first: an empty search. A field without focus at that\n// moment read its length and threw.\nconst onSearchUpdate = (query: string | null) => {\n const text = query ?? ''\n if (!props.multiple && !isFocused.value && text.length === 0) return // vuetify fix\n if (singleItemSelectedTitle.value === text) return\n search.value = text\n}\n\n// The clear empties the value at once and asks for the list once, for an empty search, through the counter of the\n// searches. It asked with the search typed before, outside the counter, wrote that answer whenever it came, and\n// emptied the value only after it.\nconst onClickClear = () => {\n modelValue.value = props.multiple ? [] : null\n apiRequestCounter.value++\n apiSearch('', apiRequestCounter.value)\n}\n\nconst onChipCloseClick = (closedItem: ValueObjectOption<T>) => {\n if (isArray(modelValue.value)) {\n modelValue.value = modelValue.value.filter((item) => item !== closedItem.value)\n return\n }\n if (closedItem.value === modelValue.value && props.clearable) {\n modelValue.value = null\n }\n}\n\nwatchDebounced(\n search,\n (newValue: string | null, oldValue: string | null) => {\n const query = newValue ?? ''\n if (query === (oldValue ?? '')) return\n if (query.length > 0 && query.length < props.minSearchChars) return\n if (query.length === 0 && props.prefetch === false) {\n fetchedItems.value = []\n return\n }\n apiRequestCounter.value++\n apiSearch(query, apiRequestCounter.value)\n emit('searchChangeDebounced', query)\n },\n { debounce: SEARCH_DEBOUNCE_MS }\n)\n\nwatch(search, (newValue, oldValue) => {\n if (newValue !== oldValue) {\n emit('searchChange', newValue)\n }\n})\n\nconst onAutocompleteModelUpdate = (newValue: ValueObjectOption<T> | readonly ValueObjectOption<T>[] | null) => {\n const cloned = cloneDeep(newValue) as ValueObjectOption<T> | ValueObjectOption<T>[] | null\n modelValueSelected.value = cloned\n if (isNull(cloned) || isUndefined(cloned)) {\n modelValue.value = null\n return\n }\n if (isArray(cloned)) {\n modelValue.value = cloned.map((item) => item.value)\n return\n }\n modelValue.value = cloned.value\n}\n\nconst noDataText = computed(() => {\n if (loadingLocal.value) {\n return '$vuetify.loading'\n }\n if (fetchedItems.value.length === 0 && search.value.length < props.minSearchChars) {\n return isUndefined(props.minSearchText)\n ? t('common.filter.filterMinChars', { min: props.minSearchChars })\n : props.minSearchText\n }\n return undefined\n})\n\nwatch(\n modelValue,\n async (newValue, oldValue) => {\n if (newValue === oldValue) return\n if (isFirstLoad.value) {\n isFirstLoad.value = false\n await tryAutoFetch('mounted', newValue)\n }\n if (collabOptions.value.enabled && isFocused.value) {\n changeFieldData.value(newValue)\n }\n if (isEmpty(newValue)) {\n resetToEmptyState(newValue)\n return\n }\n await loadListItems(newValue as T[] | T)\n },\n { immediate: true }\n)\n\ndefineExpose({\n tryLoadModelValue,\n})\n</script>\n\n<template>\n <VAutocomplete\n :model-value=\"modelValueAutocomplete as any\"\n :items=\"allItems\"\n no-filter\n :multiple=\"multiple\"\n :clearable=\"clearable\"\n :error-messages=\"errorMessageComputed\"\n :chips=\"chips || multiple || closableChips\"\n :hide-details=\"hideDetails\"\n :loading=\"loadingComputed\"\n :disabled=\"disabledComputed\"\n :readonly=\"readonly\"\n :no-data-text=\"noDataText\"\n return-object\n autocomplete=\"off\"\n :hide-selected=\"closableChips\"\n :closable-chips=\"closableChips && !loadingComputed && !disabledComputed && !readonly\"\n @update:search=\"onSearchUpdate\"\n @update:model-value=\"onAutocompleteModelUpdate\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @mouseenter=\"onMouseEnter\"\n @click:clear=\"onClickClear\"\n >\n <template #item=\"{ props: itemProps, internalItem }\">\n <VListItem\n v-bind=\"itemProps\"\n :title=\"internalItem.raw.title\"\n :subtitle=\"internalItem.raw.subtitle\"\n />\n </template>\n <template #chip=\"{ props: chipProps, internalItem }\">\n <VChip\n :closable=\"chipProps.closable as boolean\"\n close-label=\"common.button.remove\"\n size=\"small\"\n :text=\"`${internalItem.title} (${internalItem.raw.subtitle})`\"\n :disabled=\"internalItem.props.disabled\"\n @click:close=\"onChipCloseClick(internalItem.raw)\"\n >\n {{ internalItem.raw.title }}\n <span\n v-if=\"internalItem.raw.subtitle\"\n class=\"font-italic pl-1\"\n >\n ({{ internalItem.raw.subtitle }})\n </span>\n </VChip>\n </template>\n <template #label>\n <span\n v-if=\"!hideLabel\"\n :key=\"requiredComputed + ''\"\n >\n {{ labelComputed }}\n <span\n v-if=\"requiredComputed\"\n class=\"a-required-mark\"\n />\n </span>\n </template>\n <template\n v-if=\"lockedByUserLocal\"\n #append-inner\n >\n <slot\n name=\"locked\"\n :user-id=\"lockedByUserLocal\"\n >\n <ACollabLockedByUser\n v-if=\"collab\"\n :id=\"lockedByUserLocal\"\n :users=\"collab.cachedUsers\"\n />\n </slot>\n </template>\n <template\n v-if=\"$slots.append\"\n #append\n >\n <slot name=\"append\" />\n </template>\n </VAutocomplete>\n</template>\n"],"mappings":"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"}
1
+ {"version":3,"file":"AFormRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js","names":["$slots","_useModel","_openBlock","_createBlock","_component_VAutocomplete","_createSlots","_withCtx","_createVNode","_component_VListItem","_mergeProps","_component_VChip","_createTextVNode","_toDisplayString","_createElementBlock","_createCommentVNode","_renderSlot","ACollabLockedByUser","ACollabLockedByUser_default","_hoisted_1","_hoisted_2","SEARCH_DEBOUNCE_MS","AFormRemoteAutocomplete_vue_vue_type_script_setup_true_lang_default","\"modelValue\"","\"modelModifiers\"","\"selected\"","\"selectedModifiers\"","__expose","__emit","props","__props","emit","filterInnerConfig","inject","FilterInnerConfigKey","filterInnerData","FilterInnerDataKey","componentName","getCurrentInstance","isUndefined","filterByFieldProp","filterSortByProp","modelValue","useModel","isArray","newValue","cloneDeep","modelValueSelected","useCommonAdminCollabOptions","releaseFieldLock","ref","changeFieldData","acquireFieldLock","lockedByUserLocal","collabOptions","isDefined","useCollabField","releaseCollabFieldLock","changeCollabFieldData","acquireCollabFieldLock","watch","lockedByUser","search","isFocused","modelValueAutocomplete","apiRequestCounter","useI18n","system","SystemScopeKey","subject","SubjectScopeKey","onBlur","errorMessageComputed","computed","unref","item","labelComputed","path","stringSplitOnFirstOccurrence","t","requiredComputed","disabledComputed","usePagination","isNull","fetchedItems","selectedItemsCache","isFirstLoad","prefetchCompleted","allItems","itemsMap","addToMap","requestsRunning","loadingLocal","loadingComputed","resetToEmptyState","value","updateSelected","findItem","obj","id","byIdsCounter","loadListItems","requestId","idsArray","ids","res","selectedNewValue","tryLoadModelValue","idsToFetch","tryLoadValue","fetchedData","showErrorsDefault","prefetch","tryAutoFetch","useAlerts","apiSearch","query","pagination","requestCounter","error","mode","onFocus","onMouseEnter","singleItemSelectedTitle","onSearchUpdate","text","onClickClear","onChipCloseClick","closedItem","watchDebounced","oldValue","onAutocompleteModelUpdate","cloned","noDataText","isEmpty","openBlock","createBlock","VAutocomplete","createSlots","withCtx","itemProps","createVNode","VListItem","mergeProps","internalItem","chipProps","VChip","createTextVNode","toDisplayString","createElementBlock","createCommentVNode","renderSlot","_ctx"],"sources":["../../../../src/domains/remoteAutocomplete/components/AFormRemoteAutocomplete.vue"],"sourcesContent":["<script lang=\"ts\" setup generic=\"T extends string | number\">\nimport type { AFormFieldValidation } from '@/shared/types/Validation'\nimport { watchDebounced } from '@vueuse/core'\nimport { computed, getCurrentInstance, inject, type Ref, ref, watch, unref } from 'vue'\nimport type { ValueObjectOption } from '@/shared/types/ValueObject'\nimport { cloneDeep, isArray, isDefined, isEmpty, isNull, isUndefined } from '@/shared/utils/common'\nimport { SubjectScopeKey, SystemScopeKey } from '@/shared/injectionKeys'\nimport { stringSplitOnFirstOccurrence } from '@/shared/utils/string'\nimport { useI18n } from 'vue-i18n'\nimport type { DocId, IntegerId, IntegerIdNullable } from '@/shared/types/common'\nimport ACollabLockedByUser from '@/domains/collab/components/ACollabLockedByUser.vue'\nimport type { CollabComponentConfig, CollabFieldData } from '@/domains/collab/types/Collab'\nimport { useCollabField } from '@/domains/collab/composables/collabField'\nimport { useCommonAdminCollabOptions } from '@/domains/collab/composables/commonAdminCollabOptions'\nimport type { FilterConfig, FilterData } from '@/domains/filters/composables/filterFactory'\nimport { FilterInnerConfigKey, FilterInnerDataKey } from '@/domains/filters/utils/filterInjectionKeys'\nimport type { DatatableSortBy } from '@/domains/filters/datatable/utils/datatableColumns'\nimport { type Pagination, usePagination } from '@/domains/api/composables/pagination'\nimport { useAlerts } from '@/domains/system/composables/alerts'\n\ntype ModelValueType = T | T[] | null | undefined\n\nconst props = withDefaults(\n defineProps<{\n label?: string | undefined\n required?: boolean | undefined\n multiple?: boolean\n clearable?: boolean\n v?: AFormFieldValidation | null\n errorMessage?: string\n hideDetails?: boolean\n hideLabel?: boolean\n fetchItems: (\n pagination: Ref<Pagination>,\n filterData: FilterData,\n filterConfig: FilterConfig\n ) => Promise<ValueObjectOption<T>[]>\n fetchItemsByIds: (ids: T[]) => Promise<ValueObjectOption<T>[]>\n filterByField: string\n filterSortBy?: DatatableSortBy\n loading?: boolean\n collab?: CollabComponentConfig\n disabled?: boolean | undefined\n readonly?: boolean\n chips?: boolean\n closableChips?: boolean\n disableAutoSingleSelect?: boolean // auto select works only when modelValue is empty/null and prefetch is set to 'mounted'\n prefetch?: 'hover' | 'focus' | 'mounted' | false\n minSearchChars?: number\n minSearchText?: string | undefined\n }>(),\n {\n label: undefined,\n required: undefined,\n multiple: false,\n clearable: false,\n v: null,\n errorMessage: undefined,\n hideDetails: false,\n hideLabel: false,\n filterSortBy: null,\n loading: false,\n collab: undefined,\n disabled: undefined,\n chips: false,\n closableChips: false,\n disableAutoSingleSelect: false,\n prefetch: false,\n minSearchChars: 2,\n minSearchText: undefined,\n }\n)\nconst emit = defineEmits<{\n (e: 'searchChange', data: string): void\n (e: 'searchChangeDebounced', data: string): void\n (e: 'blur', data: ModelValueType): void\n (e: 'focus', data: ModelValueType): void\n (e: 'click:chipClose', data: ValueObjectOption<T>): void\n}>()\n\nconst SEARCH_DEBOUNCE_MS = 300\n\nconst filterInnerConfig = inject(FilterInnerConfigKey)\nconst filterInnerData = inject(FilterInnerDataKey)\n\nconst componentName = getCurrentInstance()?.type.__name\n\nif (isUndefined(filterInnerConfig) || isUndefined(filterInnerData)) {\n throw new Error(`[${componentName}] Incorrect provide/inject config.`)\n}\n// eslint-disable-next-line vue/no-setup-props-reactivity-loss\nconst filterByFieldProp = props.filterByField\n// eslint-disable-next-line vue/no-setup-props-reactivity-loss\nconst filterSortByProp = props.filterSortBy\n\nif (isUndefined(filterInnerConfig.fields[filterByFieldProp]) || isUndefined(filterInnerData[filterByFieldProp])) {\n throw new Error(\n `[${componentName}] Incorrect filter inner config. ` +\n `FilterByField is '${filterByFieldProp}' and available options are ${Object.keys(filterInnerData).join(', ')}.`\n )\n}\n\nconst modelValue = defineModel<ModelValueType>({\n required: true,\n set(newValue) {\n return isArray(newValue) ? cloneDeep(newValue) : newValue\n },\n})\n\nconst modelValueSelected = defineModel<ValueObjectOption<T> | ValueObjectOption<T>[] | null>('selected', {\n required: false,\n default: null,\n set(newValue) {\n return isArray(newValue) ? cloneDeep(newValue) : newValue\n },\n})\n\n// Collaboration\nconst { collabOptions } = useCommonAdminCollabOptions()\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst releaseFieldLock = ref((data: CollabFieldData) => {})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst changeFieldData = ref((data: CollabFieldData) => {})\nconst acquireFieldLock = ref(() => {})\nconst lockedByUserLocal = ref<IntegerIdNullable>(null)\n// eslint-disable-next-line vue/no-setup-props-reactivity-loss\nif (collabOptions.value.enabled && isDefined(props.collab)) {\n const { releaseCollabFieldLock, changeCollabFieldData, acquireCollabFieldLock, lockedByUser } = useCollabField(\n props.collab.room,\n props.collab.field,\n false,\n true\n )\n releaseFieldLock.value = releaseCollabFieldLock\n changeFieldData.value = changeCollabFieldData\n acquireFieldLock.value = acquireCollabFieldLock\n watch(\n lockedByUser,\n (newValue) => {\n lockedByUserLocal.value = newValue\n },\n { immediate: true }\n )\n}\n\nconst search = ref('')\nconst isFocused = ref(false)\nconst modelValueAutocomplete = ref<ValueObjectOption<T> | ValueObjectOption<T>[] | null>(null)\nconst apiRequestCounter = ref(0)\n\nconst { t } = useI18n()\n\nconst system = inject<string | undefined>(SystemScopeKey, undefined)\nconst subject = inject<string | undefined>(SubjectScopeKey, undefined)\n\nconst onBlur = () => {\n isFocused.value = false\n emit('blur', modelValue.value)\n props.v?.$touch()\n releaseFieldLock.value(modelValue.value)\n}\n\nconst errorMessageComputed = computed(() => {\n if (isDefined(props.errorMessage)) return [props.errorMessage]\n if (props.v?.$errors?.length) return props.v.$errors.map((item) => unref(item.$message))\n return []\n})\n\nconst labelComputed = computed(() => {\n if (isDefined(props.label)) return props.label\n if (isUndefined(system) || isUndefined(subject) || isUndefined(props.v?.$path)) return ''\n const { end: path } = stringSplitOnFirstOccurrence(props.v?.$path, '.')\n return t(system + '.' + subject + '.model.' + path)\n})\n\nconst requiredComputed = computed(() => {\n if (isDefined(props.required)) return props.required\n return (props.v?.required as { $params?: { type?: string } } | undefined)?.$params?.type === 'required'\n})\n\nconst disabledComputed = computed(() => {\n if (isDefined(props.disabled)) return props.disabled\n return !!lockedByUserLocal.value\n})\n\nconst { pagination } = usePagination(isNull(filterSortByProp) ? null : filterSortByProp.key, filterSortByProp?.order)\nconst fetchedItems = ref<ValueObjectOption<T>[]>([])\nconst selectedItemsCache = ref<ValueObjectOption<T>[]>([])\nconst isFirstLoad = ref(true)\nconst prefetchCompleted = ref(false)\n\nconst allItems = computed<ValueObjectOption<T>[]>(() => {\n const itemsMap = new Map<T, ValueObjectOption<T>>()\n const addToMap = (items: ValueObjectOption<T>[]) => {\n items.forEach((item) => {\n itemsMap.set(item.value, {\n value: item.value,\n title: item.title,\n subtitle: item.subtitle,\n } as ValueObjectOption<T>)\n })\n }\n\n addToMap(selectedItemsCache.value as ValueObjectOption<T>[])\n addToMap(fetchedItems.value as ValueObjectOption<T>[])\n\n return Array.from(itemsMap.values())\n})\n\n// Counts running requests (by ids, search, prefetch). The spinner stays on until the last one ends.\n// A single flag let a read by ids hide the spinner of a search still running, and the reverse.\nconst requestsRunning = ref(0)\nconst loadingLocal = computed(() => requestsRunning.value > 0)\nconst loadingComputed = computed(() => {\n if (loadingLocal.value) return true\n return props.loading\n})\n\nconst resetToEmptyState = (value: ModelValueType) => {\n byIdsCounter++\n selectedItemsCache.value = []\n modelValueSelected.value = isArray(value) ? [] : null\n modelValueAutocomplete.value = isArray(value) ? [] : null\n}\n\nconst updateSelected = (value: T[] | T) => {\n const findItem = (id: T): ValueObjectOption<T> =>\n allItems.value.find((obj) => obj.value === id) ?? ({ title: `${id}`, value: id } as ValueObjectOption<T>)\n return isArray(value) ? value.map(findItem) : findItem(value)\n}\n\nlet byIdsCounter = 0\nconst loadListItems = async (ids: T[] | T) => {\n const requestId = ++byIdsCounter\n requestsRunning.value++\n\n try {\n const idsArray = isArray(ids) ? ids : [ids]\n const res = await props.fetchItemsByIds(idsArray)\n if (requestId !== byIdsCounter) return selectedItemsCache.value\n selectedItemsCache.value = res\n const selectedNewValue = updateSelected(ids)\n modelValueSelected.value = selectedNewValue\n modelValueAutocomplete.value = selectedNewValue\n return selectedItemsCache.value\n } catch (e) {\n // Mirror tryLoadModelValue: don't let a failed by-ids resolve become a generic global toast (QA 85050).\n showErrorsDefault(e)\n return undefined\n } finally {\n requestsRunning.value--\n }\n}\n\nconst tryLoadModelValue = async (tryLoadValue: ModelValueType, prefetch = false) => {\n const idsToFetch = isArray(tryLoadValue) ? tryLoadValue : [tryLoadValue]\n let fetchedData: ValueObjectOption<T>[]\n requestsRunning.value++\n try {\n fetchedData = await props.fetchItemsByIds(idsToFetch as Array<IntegerId & DocId>)\n } catch (e) {\n showErrorsDefault(e)\n return false\n } finally {\n // Decremented before the prefetch below, which bails out while a request of the component runs.\n requestsRunning.value--\n }\n if (!isArray(fetchedData) || fetchedData.length === 0) return false\n selectedItemsCache.value = fetchedData\n const value = props.multiple ? fetchedData.map((item) => item.value) : fetchedData[0]!.value\n modelValue.value = value\n if (prefetch) await tryAutoFetch('force', value)\n return true\n}\n\nconst { showErrorsDefault } = useAlerts()\n\nconst apiSearch = async (query: string, requestCounter: number) => {\n requestsRunning.value++\n filterInnerData[filterByFieldProp] = query\n try {\n const res = await props.fetchItems(pagination, filterInnerData, filterInnerConfig)\n if (requestCounter === apiRequestCounter.value) fetchedItems.value = res\n } catch (error) {\n showErrorsDefault(error)\n } finally {\n requestsRunning.value--\n }\n}\n\nconst tryAutoFetch = async (mode: 'focus' | 'hover' | 'mounted' | 'force', newValue: ModelValueType) => {\n if (loadingLocal.value) return\n if (mode !== 'force') {\n if (props.prefetch === false || props.prefetch !== mode || prefetchCompleted.value) return\n }\n\n requestsRunning.value++\n try {\n const res = await props.fetchItems(pagination, filterInnerData, filterInnerConfig)\n if (apiRequestCounter.value === 0) {\n fetchedItems.value = res\n if (\n !props.disableAutoSingleSelect &&\n mode === 'mounted' &&\n res.length === 1 &&\n (isNull(newValue) || isUndefined(newValue) || (isArray(newValue) && newValue.length === 0))\n ) {\n modelValue.value = props.multiple ? [res[0]!.value] : res[0]!.value\n }\n }\n prefetchCompleted.value = true\n } catch (e) {\n showErrorsDefault(e)\n } finally {\n requestsRunning.value--\n }\n}\n\nconst onFocus = async () => {\n isFocused.value = true\n acquireFieldLock.value()\n await tryAutoFetch('focus', modelValue.value)\n emit('focus', modelValue.value)\n}\n\nconst onMouseEnter = async () => {\n await tryAutoFetch('hover', modelValue.value)\n}\n\nconst singleItemSelectedTitle = computed(() => {\n if (!props.multiple && selectedItemsCache.value[0]) {\n return selectedItemsCache.value[0].title\n }\n return undefined\n})\n\n// Clearing the field first emits a `null` search. Reading its length threw when the field had no focus.\nconst onSearchUpdate = (query: string | null) => {\n const text = query ?? ''\n if (!props.multiple && !isFocused.value && text.length === 0) return // vuetify fix\n if (singleItemSelectedTitle.value === text) return\n search.value = text\n}\n\n// Empties the value at once and fetches the list once for an empty search\n// through the search counter, so a stale answer cannot overwrite it.\nconst onClickClear = () => {\n modelValue.value = props.multiple ? [] : null\n apiRequestCounter.value++\n apiSearch('', apiRequestCounter.value)\n}\n\nconst onChipCloseClick = (closedItem: ValueObjectOption<T>) => {\n if (isArray(modelValue.value)) {\n modelValue.value = modelValue.value.filter((item) => item !== closedItem.value)\n return\n }\n if (closedItem.value === modelValue.value && props.clearable) {\n modelValue.value = null\n }\n}\n\nwatchDebounced(\n search,\n (newValue: string | null, oldValue: string | null) => {\n const query = newValue ?? ''\n if (query === (oldValue ?? '')) return\n if (query.length > 0 && query.length < props.minSearchChars) return\n if (query.length === 0 && props.prefetch === false) {\n fetchedItems.value = []\n return\n }\n apiRequestCounter.value++\n apiSearch(query, apiRequestCounter.value)\n emit('searchChangeDebounced', query)\n },\n { debounce: SEARCH_DEBOUNCE_MS }\n)\n\nwatch(search, (newValue, oldValue) => {\n if (newValue !== oldValue) {\n emit('searchChange', newValue)\n }\n})\n\nconst onAutocompleteModelUpdate = (newValue: ValueObjectOption<T> | readonly ValueObjectOption<T>[] | null) => {\n const cloned = cloneDeep(newValue) as ValueObjectOption<T> | ValueObjectOption<T>[] | null\n modelValueSelected.value = cloned\n if (isNull(cloned) || isUndefined(cloned)) {\n modelValue.value = null\n return\n }\n if (isArray(cloned)) {\n modelValue.value = cloned.map((item) => item.value)\n return\n }\n modelValue.value = cloned.value\n}\n\nconst noDataText = computed(() => {\n if (loadingLocal.value) {\n return '$vuetify.loading'\n }\n if (fetchedItems.value.length === 0 && search.value.length < props.minSearchChars) {\n return isUndefined(props.minSearchText)\n ? t('common.filter.filterMinChars', { min: props.minSearchChars })\n : props.minSearchText\n }\n return undefined\n})\n\nwatch(\n modelValue,\n async (newValue, oldValue) => {\n if (newValue === oldValue) return\n if (isFirstLoad.value) {\n isFirstLoad.value = false\n await tryAutoFetch('mounted', newValue)\n }\n if (collabOptions.value.enabled && isFocused.value) {\n changeFieldData.value(newValue)\n }\n if (isEmpty(newValue)) {\n resetToEmptyState(newValue)\n return\n }\n await loadListItems(newValue as T[] | T)\n },\n { immediate: true }\n)\n\ndefineExpose({\n tryLoadModelValue,\n})\n</script>\n\n<template>\n <VAutocomplete\n :model-value=\"modelValueAutocomplete as any\"\n :items=\"allItems\"\n no-filter\n :multiple=\"multiple\"\n :clearable=\"clearable\"\n :error-messages=\"errorMessageComputed\"\n :chips=\"chips || multiple || closableChips\"\n :hide-details=\"hideDetails\"\n :loading=\"loadingComputed\"\n :disabled=\"disabledComputed\"\n :readonly=\"readonly\"\n :no-data-text=\"noDataText\"\n return-object\n autocomplete=\"off\"\n :hide-selected=\"closableChips\"\n :closable-chips=\"closableChips && !loadingComputed && !disabledComputed && !readonly\"\n @update:search=\"onSearchUpdate\"\n @update:model-value=\"onAutocompleteModelUpdate\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @mouseenter=\"onMouseEnter\"\n @click:clear=\"onClickClear\"\n >\n <template #item=\"{ props: itemProps, internalItem }\">\n <VListItem\n v-bind=\"itemProps\"\n :title=\"internalItem.raw.title\"\n :subtitle=\"internalItem.raw.subtitle\"\n />\n </template>\n <template #chip=\"{ props: chipProps, internalItem }\">\n <VChip\n :closable=\"chipProps.closable as boolean\"\n close-label=\"common.button.remove\"\n size=\"small\"\n :text=\"`${internalItem.title} (${internalItem.raw.subtitle})`\"\n :disabled=\"internalItem.props.disabled\"\n @click:close=\"onChipCloseClick(internalItem.raw)\"\n >\n {{ internalItem.raw.title }}\n <span\n v-if=\"internalItem.raw.subtitle\"\n class=\"font-italic pl-1\"\n >\n ({{ internalItem.raw.subtitle }})\n </span>\n </VChip>\n </template>\n <template #label>\n <span\n v-if=\"!hideLabel\"\n :key=\"requiredComputed + ''\"\n >\n {{ labelComputed }}\n <span\n v-if=\"requiredComputed\"\n class=\"a-required-mark\"\n />\n </span>\n </template>\n <template\n v-if=\"lockedByUserLocal\"\n #append-inner\n >\n <slot\n name=\"locked\"\n :user-id=\"lockedByUserLocal\"\n >\n <ACollabLockedByUser\n v-if=\"collab\"\n :id=\"lockedByUserLocal\"\n :users=\"collab.cachedUsers\"\n />\n </slot>\n </template>\n <template\n v-if=\"$slots.append\"\n #append\n >\n <slot name=\"append\" />\n </template>\n </VAutocomplete>\n</template>\n"],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import e from "./AFormRemoteAutocompleteWithCached.vue_vue_type_script_setup_true_lang.js";
2
- //#region src/domains/remoteAutocomplete/components/AFormRemoteAutocompleteWithCached.vue
2
+ // src/domains/remoteAutocomplete/components/AFormRemoteAutocompleteWithCached.vue
3
3
  var t = e;
4
- //#endregion
5
4
  export { t as default };
6
5
 
7
6
  //# sourceMappingURL=AFormRemoteAutocompleteWithCached.js.map
@@ -35,10 +35,12 @@ type __VLS_ModelProps = {
35
35
  'fetchedItemsMinimal': Map<IntegerId | DocId, any>;
36
36
  };
37
37
  type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
38
- declare var __VLS_13: {};
39
- type __VLS_Slots = {} & {
40
- 'append-item'?: (props: typeof __VLS_13) => any;
38
+ declare const __VLS_template: () => {
39
+ __VLS_Slots: {
40
+ 'append-item'?: (props: {}) => any;
41
+ };
41
42
  };
43
+ type __VLS_Slots = ReturnType<typeof __VLS_template>['__VLS_Slots'];
42
44
  declare const __VLS_base: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
43
45
  "update:search": (value: string) => any;
44
46
  "update:loadingLocal": (value: boolean) => any;
@@ -1,16 +1,16 @@
1
- import { cloneDeep as e, isArray as t, isNull as n, isUndefined as r } from "../../../shared/utils/common.js";
2
- import { stringSplitOnFirstOccurrence as i } from "../../../shared/utils/string.js";
1
+ import { usePagination as e } from "../../api/composables/pagination.js";
2
+ import { cloneDeep as t, isArray as n, isNull as r, isUndefined as i } from "../../../shared/utils/common.js";
3
3
  import { SubjectScopeKey as a, SystemScopeKey as o } from "../../../shared/injectionKeys.js";
4
- import { useAlerts as s } from "../../system/composables/alerts.js";
4
+ import { stringSplitOnFirstOccurrence as s } from "../../../shared/utils/string.js";
5
5
  import { FilterInnerConfigKey as c, FilterInnerDataKey as l } from "../../filters/utils/filterInjectionKeys.js";
6
- import { usePagination as u } from "../../api/composables/pagination.js";
6
+ import { useAlerts as u } from "../../system/composables/alerts.js";
7
7
  import { computed as d, createBlock as f, createCommentVNode as p, createElementBlock as m, createSlots as h, createTextVNode as g, createVNode as _, defineComponent as v, getCurrentInstance as y, inject as b, mergeModels as x, mergeProps as S, openBlock as C, ref as w, renderSlot as T, toDisplayString as E, unref as D, useModel as O, watch as k, withCtx as A } from "vue";
8
8
  import { useI18n as ee } from "vue-i18n";
9
9
  import { VChip as te } from "vuetify/components/VChip";
10
10
  import { watchDebounced as ne } from "@vueuse/core";
11
11
  import { VListItem as re } from "vuetify/components/VList";
12
12
  import { VAutocomplete as j } from "vuetify/components/VAutocomplete";
13
- //#region src/domains/remoteAutocomplete/components/AFormRemoteAutocompleteWithCached.vue?vue&type=script&setup=true&lang.ts
13
+ // src/domains/remoteAutocomplete/components/AFormRemoteAutocompleteWithCached.vue?vue&type=script&setup=true&lang.ts
14
14
  var M = {
15
15
  key: 0,
16
16
  class: "a-required-mark"
@@ -77,30 +77,30 @@ var M = {
77
77
  ]),
78
78
  setup(v, { emit: x }) {
79
79
  let N = v, P = x, F = O(v, "search"), I = O(v, "loadingLocal"), L = O(v, "fetchedItemsMinimal"), R = b(c), z = b(l), B = y()?.type.__name;
80
- if (r(R) || r(z)) throw Error(`[${B}] Incorrect provide/inject config.`);
81
- if (r(R.fields[N.filterByField]) || r(z[N.filterByField])) throw Error(`[${B}] Incorrect filter inner config. FilterByField is '${N.filterByField}' and available options are ${Object.keys(z).join(", ")}.`);
80
+ if (i(R) || i(z)) throw Error(`[${B}] Incorrect provide/inject config.`);
81
+ if (i(R.fields[N.filterByField]) || i(z[N.filterByField])) throw Error(`[${B}] Incorrect filter inner config. FilterByField is '${N.filterByField}' and available options are ${Object.keys(z).join(", ")}.`);
82
82
  let { fetch: V, add: H, addManualMinimal: U } = N.useCached(), W = d(() => {
83
83
  if (I.value) return "$vuetify.loading";
84
- if (L.value.size === 0 && F.value.length < N.minSearchChars) return r(N.minSearchText) ? K("common.filter.filterMinChars", { min: N.minSearchChars }) : N.minSearchText;
84
+ if (L.value.size === 0 && F.value.length < N.minSearchChars) return i(N.minSearchText) ? K("common.filter.filterMinChars", { min: N.minSearchChars }) : N.minSearchText;
85
85
  }), G = d({
86
86
  get() {
87
87
  return N.modelValue;
88
88
  },
89
- set(t) {
90
- P("update:modelValue", e(t));
89
+ set(e) {
90
+ P("update:modelValue", t(e));
91
91
  }
92
- }), { t: K } = ee(), q = b(o, void 0), J = b(a, void 0), Y = w(!1), { pagination: ie } = u(n(N.filterSortBy) ? null : N.filterSortBy.key, N.filterSortBy?.order), ae = () => {
92
+ }), { t: K } = ee(), q = b(o, void 0), J = b(a, void 0), Y = w(!1), { pagination: ie } = e(r(N.filterSortBy) ? null : N.filterSortBy.key, N.filterSortBy?.order), ae = () => {
93
93
  Y.value = !0, P("focus", G.value);
94
94
  }, oe = () => {
95
95
  Y.value = !1, N.v?.$touch(), P("blur", G.value);
96
- }, se = d(() => r(N.errorMessage) ? N.v?.$errors?.length ? N.v.$errors.map((e) => D(e.$message)) : [] : [N.errorMessage]), ce = d(() => {
97
- if (!r(N.label)) return N.label;
98
- if (r(q) || r(J) || r(N.v?.$path)) return "";
99
- let { end: e } = i(N.v?.$path, ".");
96
+ }, se = d(() => i(N.errorMessage) ? N.v?.$errors?.length ? N.v.$errors.map((e) => D(e.$message)) : [] : [N.errorMessage]), ce = d(() => {
97
+ if (!i(N.label)) return N.label;
98
+ if (i(q) || i(J) || i(N.v?.$path)) return "";
99
+ let { end: e } = s(N.v?.$path, ".");
100
100
  return K(q + "." + J + ".model." + e);
101
- }), X = d(() => r(N.required) ? (N.v?.required)?.$params?.type === "required" : N.required), { showErrorsDefault: Z } = s(), Q = 0, $ = async (e) => {
101
+ }), X = d(() => i(N.required) ? (N.v?.required)?.$params?.type === "required" : N.required), { showErrorsDefault: Z } = u(), Q = 0, $ = async (e) => {
102
102
  let t = ++Q;
103
- if (n(e) || e.length < N.minSearchChars) L.value.clear(), I.value = !1;
103
+ if (r(e) || e.length < N.minSearchChars) L.value.clear(), I.value = !1;
104
104
  else {
105
105
  I.value = !0, z[N.filterByField] = e, L.value.clear();
106
106
  try {
@@ -116,18 +116,18 @@ var M = {
116
116
  }
117
117
  }
118
118
  }, le = d(() => {
119
- let n = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Map();
120
- return t(G.value) ? G.value.forEach((e) => {
121
- n.set(e, "");
122
- }) : G.value && n.set(G.value, ""), L.value.forEach((t) => {
123
- n.set(t[N.itemValue], t[N.itemTitle]), r.set(t[N.itemValue], e(t));
124
- }), Array.from(n, ([e, t]) => ({
119
+ let e = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Map();
120
+ return n(G.value) ? G.value.forEach((t) => {
121
+ e.set(t, "");
122
+ }) : G.value && e.set(G.value, ""), L.value.forEach((n) => {
123
+ e.set(n[N.itemValue], n[N.itemTitle]), r.set(n[N.itemValue], t(n));
124
+ }), Array.from(e, ([e, t]) => ({
125
125
  value: e,
126
126
  title: t,
127
127
  raw: r.get(e)
128
128
  }));
129
- }), ue = (t) => new Promise((n) => (L.value.forEach((n, r) => {
130
- t.has(r) && U(e(n));
129
+ }), ue = (e) => new Promise((n) => (L.value.forEach((n, r) => {
130
+ e.has(r) && U(t(n));
131
131
  }), n(!0))), de = () => {
132
132
  F.value = "", $(""), N.multiple ? G.value = [] : G.value = null;
133
133
  };
@@ -137,8 +137,8 @@ var M = {
137
137
  }, { debounce: 300 }), k(F, (e, t) => {
138
138
  e !== t && P("searchChange", e);
139
139
  }), k(G, async (e) => {
140
- if (n(e) || r(e) || t(e) && e.length === 0) return;
141
- let i = t(e) ? e : [e], a = new Set(i);
140
+ if (r(e) || i(e) || n(e) && e.length === 0) return;
141
+ let t = n(e) ? e : [e], a = new Set(t);
142
142
  await ue(a), a.size > 0 && (H(Array.from(a)), V());
143
143
  }, { immediate: !0 }), (e, t) => (C(), f(j, {
144
144
  modelValue: G.value,
@@ -188,7 +188,6 @@ var M = {
188
188
  ]));
189
189
  }
190
190
  });
191
- //#endregion
192
191
  export { N as default };
193
192
 
194
193
  //# sourceMappingURL=AFormRemoteAutocompleteWithCached.vue_vue_type_script_setup_true_lang.js.map