@anzusystems/common-admin 2.0.0-rc.5 → 2.0.0-rc.6
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.
- package/dist/AnzuSystemsCommonAdmin.d.ts +42 -32
- package/dist/AnzuSystemsCommonAdmin.js.map +1 -1
- package/dist/common-admin.css +1 -1
- package/dist/common-admin.js +282 -282
- package/dist/domains/anzuUser/api/anzuUserApi.d.ts +9 -12
- package/dist/domains/anzuUser/api/anzuUserApi.js.map +1 -1
- package/dist/domains/anzuUser/components/AAnzuUserDatatable.js.map +1 -1
- package/dist/domains/anzuUser/components/AAnzuUserDatatable.vue.d.ts +38 -44
- package/dist/domains/anzuUser/components/AAnzuUserDatatable.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AAnzuUserFilter.js.map +1 -1
- package/dist/domains/anzuUser/components/AAnzuUserFilter.vue.d.ts +12 -13
- package/dist/domains/anzuUser/components/AAnzuUserFilter.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AAnzuUserForm.js.map +1 -1
- package/dist/domains/anzuUser/components/AAnzuUserForm.vue.d.ts +18 -20
- package/dist/domains/anzuUser/components/AAnzuUserForm.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AAnzuUserRoleAutocomplete.js.map +1 -1
- package/dist/domains/anzuUser/components/AAnzuUserRoleAutocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserBulkActionDialog.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserBulkActionDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserCopyPermissionsDialog.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserCopyPermissionsDialog.vue.d.ts +2 -3
- package/dist/domains/anzuUser/components/AUserCopyPermissionsDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserCreateInSystemButton.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserCreateInSystemButton.vue.d.ts +9 -15
- package/dist/domains/anzuUser/components/AUserCreateInSystemButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserEnabledSwitch.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserEnabledSwitch.vue.d.ts +8 -7
- package/dist/domains/anzuUser/components/AUserEnabledSwitch.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserManageButton.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserManageButton.vue.d.ts +0 -1
- package/dist/domains/anzuUser/components/AUserManageButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserMetadataForm.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserMetadataForm.vue.d.ts +8 -9
- package/dist/domains/anzuUser/components/AUserMetadataForm.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserMetadataRepairDialog.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserMetadataRepairDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserOtherSystemsTable.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserOtherSystemsTable.vue.d.ts +1 -2
- package/dist/domains/anzuUser/components/AUserOtherSystemsTable.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserSystemOverview.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserSystemOverview.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserSystemPanel.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserSystemPanel.vue.d.ts +2 -2
- package/dist/domains/anzuUser/components/AUserSystemPanel.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserSystemStatusChip.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserSystemStatusChip.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserTabsShell.js.map +1 -1
- package/dist/domains/anzuUser/components/AUserTabsShell.vue.d.ts +17 -22
- package/dist/domains/anzuUser/components/AUserTabsShell.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/anzuUser/composables/anzuUserActions.d.ts +5 -9
- package/dist/domains/anzuUser/composables/anzuUserActions.js.map +1 -1
- package/dist/domains/anzuUser/composables/anzuUserValidations.d.ts +4 -6
- package/dist/domains/anzuUser/composables/anzuUserValidations.js.map +1 -1
- package/dist/domains/anzuUser/composables/cachedAnzuUsers.d.ts +3 -3
- package/dist/domains/anzuUser/composables/cachedAnzuUsers.js.map +1 -1
- package/dist/domains/anzuUser/composables/userCrossSystemSearch.d.ts +2 -4
- package/dist/domains/anzuUser/composables/userCrossSystemSearch.js.map +1 -1
- package/dist/domains/anzuUser/composables/userCrossSystemWrites.d.ts +5 -11
- package/dist/domains/anzuUser/composables/userCrossSystemWrites.js.map +1 -1
- package/dist/domains/anzuUser/composables/userSystemDescriptor.d.ts +33 -57
- package/dist/domains/anzuUser/composables/userSystemDescriptor.js.map +1 -1
- package/dist/domains/anzuUser/composables/userSystemProbe.d.ts +7 -27
- package/dist/domains/anzuUser/composables/userSystemProbe.js.map +1 -1
- package/dist/domains/anzuUser/filter/anzuUserFilter.d.ts +6 -16
- package/dist/domains/anzuUser/filter/anzuUserFilter.js.map +1 -1
- package/dist/domains/anzuUser/store/anzuUserStore.d.ts +1 -5
- package/dist/domains/anzuUser/store/anzuUserStore.js.map +1 -1
- package/dist/domains/anzuUser/store/userCrossSystemStore.d.ts +3 -14
- package/dist/domains/anzuUser/store/userCrossSystemStore.js.map +1 -1
- package/dist/domains/anzuUser/utils/userMetadataDiff.d.ts +7 -19
- package/dist/domains/anzuUser/utils/userMetadataDiff.js.map +1 -1
- package/dist/domains/anzuUser/utils/userSystemState.d.ts +12 -30
- package/dist/domains/anzuUser/utils/userSystemState.js.map +1 -1
- package/dist/domains/anzuUser/utils/userTabs.d.ts +1 -3
- package/dist/domains/anzuUser/utils/userTabs.js.map +1 -1
- package/dist/domains/api/composables/defineApiClient.d.ts +4 -8
- package/dist/domains/api/composables/defineApiClient.js.map +1 -1
- package/dist/domains/api/composables/request.d.ts +18 -48
- package/dist/domains/api/composables/request.js.map +1 -1
- package/dist/domains/api/composables/useApiFetchByIds.d.ts +7 -21
- package/dist/domains/api/composables/useApiFetchByIds.js.map +1 -1
- package/dist/domains/api/composables/useApiFetchItems.d.ts +18 -57
- package/dist/domains/api/composables/useApiFetchItems.js.map +1 -1
- package/dist/domains/api/composables/useApiFetchList.d.ts +7 -23
- package/dist/domains/api/composables/useApiFetchList.js.map +1 -1
- package/dist/domains/api/composables/useApiFetchListBatch.d.ts +5 -22
- package/dist/domains/api/composables/useApiFetchListBatch.js.map +1 -1
- package/dist/domains/api/composables/useApiQueryBuilder.js.map +1 -1
- package/dist/domains/api/composables/useApiRequest.d.ts +16 -39
- package/dist/domains/api/composables/useApiRequest.js.map +1 -1
- package/dist/domains/api/utils/apiErrors.d.ts +28 -55
- package/dist/domains/api/utils/apiErrors.js.map +1 -1
- package/dist/domains/api/utils/listBody.d.ts +22 -43
- package/dist/domains/api/utils/listBody.js.map +1 -1
- package/dist/domains/auth/components/Acl.js.map +1 -1
- package/dist/domains/auth/components/Acl.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/auth/composables/aclAllowed.d.ts +2 -3
- package/dist/domains/auth/composables/aclAllowed.js.map +1 -1
- package/dist/domains/auth/composables/defineAuth.js.map +1 -1
- package/dist/domains/auth/composables/refreshSession.d.ts +10 -13
- package/dist/domains/auth/composables/refreshSession.js.map +1 -1
- package/dist/domains/cached/components/ACachedChip.js.map +1 -1
- package/dist/domains/cached/components/ACachedChip.vue.d.ts +13 -11
- package/dist/domains/cached/components/ACachedChip.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/cached/components/ACachedUserChip.js +1 -1
- package/dist/domains/cached/components/ACachedUserChip.js.map +1 -1
- package/dist/domains/cached/components/ACachedUserChip.vue.d.ts +3 -3
- package/dist/domains/cached/components/ACachedUserChip.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/cached/composables/createUserAndTimeTrackingFields.d.ts +9 -9
- package/dist/domains/cached/composables/createUserAndTimeTrackingFields.js.map +1 -1
- package/dist/domains/cached/composables/defineCached.d.ts +13 -11
- package/dist/domains/cached/composables/defineCached.js.map +1 -1
- package/dist/domains/cached/composables/useCachedItem.d.ts +7 -8
- package/dist/domains/cached/composables/useCachedItem.js.map +1 -1
- package/dist/domains/collab/components/ACollabLockedByUser.js.map +1 -1
- package/dist/domains/collab/components/ACollabLockedByUser.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/collab/composables/collabAnyDataChange.js.map +1 -1
- package/dist/domains/collab/composables/collabField.d.ts +5 -3
- package/dist/domains/collab/composables/collabField.js.map +1 -1
- package/dist/domains/collab/composables/collabInit.js +58 -54
- package/dist/domains/collab/composables/collabInit.js.map +1 -1
- package/dist/domains/collab/composables/collabRecovery.d.ts +49 -0
- package/dist/domains/collab/composables/collabRecovery.js +99 -0
- package/dist/domains/collab/composables/collabRecovery.js.map +1 -0
- package/dist/domains/collab/composables/collabRoom.js +106 -106
- package/dist/domains/collab/composables/collabRoom.js.map +1 -1
- package/dist/domains/collab/composables/collabState.d.ts +11 -4
- package/dist/domains/collab/composables/collabState.js +34 -25
- package/dist/domains/collab/composables/collabState.js.map +1 -1
- package/dist/domains/collab/composables/commonAdminCollabOptions.d.ts +4 -2
- package/dist/domains/collab/types/Collab.d.ts +31 -5
- package/dist/domains/collab/types/Collab.js +23 -11
- package/dist/domains/collab/types/Collab.js.map +1 -1
- package/dist/domains/customDataForm/components/ACustomDataForm.js.map +1 -1
- package/dist/domains/customDataForm/components/ACustomDataForm.vue.d.ts +7 -5
- package/dist/domains/customDataForm/components/ACustomDataForm.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/customDataForm/components/ACustomDataFormElement.js.map +1 -1
- package/dist/domains/customDataForm/components/ACustomDataFormElement.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/customDataForm/components/ACustomDataFormHiddenPart.js.map +1 -1
- package/dist/domains/customDataForm/components/ACustomDataFormHiddenPart.vue.d.ts +5 -3
- package/dist/domains/customDataForm/components/ACustomDataFormHiddenPart.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/customDataForm/composables/useCustomDataForm.js.map +1 -1
- package/dist/domains/customDataForm/types/CustomDataForm.d.ts +4 -1
- package/dist/domains/dam/api/damAssetApi.d.ts +7 -7
- package/dist/domains/dam/api/damAssetApi.js.map +1 -1
- package/dist/domains/dam/api/damAssetLicenceApi.d.ts +1 -1
- package/dist/domains/dam/api/damAssetLicenceApi.js.map +1 -1
- package/dist/domains/dam/api/damConstants.js.map +1 -1
- package/dist/domains/dam/api/damEndPoints.js.map +1 -1
- package/dist/domains/dam/api/damImageApi.js.map +1 -1
- package/dist/domains/dam/api/uploadApi.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetCustomMetadataForm.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetCustomMetadataForm.vue.d.ts +7 -5
- package/dist/domains/dam/assetDetail/components/AssetCustomMetadataForm.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetDetailDialog.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetDetailDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetDetailDialogFrame.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetDetailDialogFrame.vue.d.ts +1 -1
- package/dist/domains/dam/assetDetail/components/AssetDetailDialogFrame.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetDetailSidebarActionsWrapper.vue.d.ts +5 -3
- package/dist/domains/dam/assetDetail/components/AssetDetailSidebarFrame.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetDetailSidebarFrame.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetDetailSidebarMetadata.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetDetailSidebarMetadata.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetDetailSidebarROI.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetDetailSidebarROI.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetFileInfoPanel.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetFileInfoPanel.vue.d.ts +1 -1
- package/dist/domains/dam/assetDetail/components/AssetFileInfoPanel.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetImage.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetImage.vue.d.ts +1 -1
- package/dist/domains/dam/assetDetail/components/AssetImage.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetImageMetaIcons.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetImageMetaIcons.vue.d.ts +2 -2
- package/dist/domains/dam/assetDetail/components/AssetImageMetaIcons.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetInfobox.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetInfobox.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetMetadata.js.map +1 -1
- package/dist/domains/dam/assetDetail/components/AssetMetadata.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetDetail/composables/assetDetailExtSystem.d.ts +5 -6
- package/dist/domains/dam/assetDetail/composables/assetDetailExtSystem.js.map +1 -1
- package/dist/domains/dam/assetDetail/composables/assetDetailView.d.ts +10 -10
- package/dist/domains/dam/assetDetail/composables/assetDetailView.js.map +1 -1
- package/dist/domains/dam/assetDetail/store/assetDetailStore.js.map +1 -1
- package/dist/domains/dam/assetDetail/utils/assetMetadataMayStillChange.d.ts +4 -3
- package/dist/domains/dam/assetDetail/utils/assetMetadataMayStillChange.js.map +1 -1
- package/dist/domains/dam/assetSelect/api/damPodcastApi.js.map +1 -1
- package/dist/domains/dam/assetSelect/components/AAssetListInner.js.map +1 -1
- package/dist/domains/dam/assetSelect/components/AAssetListInner.vue.d.ts +789 -787
- package/dist/domains/dam/assetSelect/components/AAssetListInner.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetSelect/components/AAssetSelect.js.map +1 -1
- package/dist/domains/dam/assetSelect/components/AAssetSelect.vue.d.ts +395 -393
- package/dist/domains/dam/assetSelect/components/AAssetSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetSelect/components/AAssetSelectMedia.js.map +1 -1
- package/dist/domains/dam/assetSelect/components/AAssetSelectMedia.vue.d.ts +14 -12
- package/dist/domains/dam/assetSelect/components/AAssetSelectMedia.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetSelect/components/AssetDistributionServiceNameFilter.js.map +1 -1
- package/dist/domains/dam/assetSelect/components/AssetDistributionServiceNameFilter.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetSelect/components/AssetSelectListBar.js.map +1 -1
- package/dist/domains/dam/assetSelect/components/AssetSelectListBar.vue.d.ts +9 -7
- package/dist/domains/dam/assetSelect/components/AssetSelectListBar.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetSelect/components/AssetSelectTableRowItem.js.map +1 -1
- package/dist/domains/dam/assetSelect/components/AssetSelectTableRowItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/assetSelect/composables/assetSelectListActions.js.map +1 -1
- package/dist/domains/dam/assetSelect/store/assetSelectStore.js.map +1 -1
- package/dist/domains/dam/author/api/authorApi.js.map +1 -1
- package/dist/domains/dam/author/components/AuthorCreateButton.js.map +1 -1
- package/dist/domains/dam/author/components/AuthorCreateButton.vue.d.ts +1 -1
- package/dist/domains/dam/author/components/AuthorCreateButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/author/components/AuthorRemoteAutocompleteCachedAuthorChip.js.map +1 -1
- package/dist/domains/dam/author/components/AuthorRemoteAutocompleteCachedAuthorChip.vue.d.ts +9 -6
- package/dist/domains/dam/author/components/AuthorRemoteAutocompleteCachedAuthorChip.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/author/components/AuthorRemoteAutocompleteCachedAuthorChipConflicts.js.map +1 -1
- package/dist/domains/dam/author/components/AuthorRemoteAutocompleteCachedAuthorChipConflicts.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/author/components/AuthorRemoteAutocompleteWithCached.js +1 -1
- package/dist/domains/dam/author/components/AuthorRemoteAutocompleteWithCached.js.map +1 -1
- package/dist/domains/dam/author/components/AuthorRemoteAutocompleteWithCached.vue.d.ts +2 -2
- package/dist/domains/dam/author/components/AuthorRemoteAutocompleteWithCached.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/author/components/DamAuthorFilterRemoteAutocomplete.js.map +1 -1
- package/dist/domains/dam/author/components/DamAuthorFilterRemoteAutocomplete.vue.d.ts +1 -1
- package/dist/domains/dam/author/components/DamAuthorFilterRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/author/composables/cachedAuthors.d.ts +5 -4
- package/dist/domains/dam/author/composables/cachedAuthors.js.map +1 -1
- package/dist/domains/dam/author/composables/cachedUsers.d.ts +5 -4
- package/dist/domains/dam/author/composables/cachedUsers.js.map +1 -1
- package/dist/domains/dam/author/composables/damAuthorConfig.d.ts +2 -2
- package/dist/domains/dam/author/composables/damAuthorConfig.js.map +1 -1
- package/dist/domains/dam/components/DamAdminAssetLink.js.map +1 -1
- package/dist/domains/dam/components/DamAdminAssetLink.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/composables/commonAdminCoreDamOptions.d.ts +10 -8
- package/dist/domains/dam/composables/commonAdminCoreDamOptions.js.map +1 -1
- package/dist/domains/dam/composables/damConfigName.d.ts +8 -9
- package/dist/domains/dam/composables/damConfigName.js.map +1 -1
- package/dist/domains/dam/composables/damNotifications.d.ts +9 -9
- package/dist/domains/dam/composables/damNotifications.js.map +1 -1
- package/dist/domains/dam/composables/damNotificationsConnection.d.ts +4 -4
- package/dist/domains/dam/composables/damNotificationsConnection.js.map +1 -1
- package/dist/domains/dam/composables/damNotificationsEventBus.d.ts +2 -2
- package/dist/domains/dam/composables/damNotificationsEventBus.js.map +1 -1
- package/dist/domains/dam/composables/extSystemIdForCached.d.ts +5 -4
- package/dist/domains/dam/composables/extSystemIdForCached.js.map +1 -1
- package/dist/domains/dam/config/api/damAssetCustomFormApi.js.map +1 -1
- package/dist/domains/dam/config/api/damConfigApi.js.map +1 -1
- package/dist/domains/dam/config/composables/damConfigState.d.ts +5 -5
- package/dist/domains/dam/config/composables/damConfigState.js.map +1 -1
- package/dist/domains/dam/config/store/damConfigStore.d.ts +5 -4
- package/dist/domains/dam/config/store/damConfigStore.js.map +1 -1
- package/dist/domains/dam/config/utils/damFilterUserAllowedUploadConfigs.d.ts +3 -1
- package/dist/domains/dam/config/utils/damFilterUserAllowedUploadConfigs.js.map +1 -1
- package/dist/domains/dam/cropper/components/ACropper.js.map +1 -1
- package/dist/domains/dam/cropper/components/ACropper.vue.d.ts +8 -16
- package/dist/domains/dam/cropper/components/ACropper.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/cropper/components/DamAssetImageRoiSelect.js.map +1 -1
- package/dist/domains/dam/cropper/components/DamAssetImageRoiSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/cropper/store/imageRoiStore.d.ts +9 -12
- package/dist/domains/dam/cropper/store/imageRoiStore.js.map +1 -1
- package/dist/domains/dam/cropper/utils/cropperGeometry.d.ts +24 -38
- package/dist/domains/dam/cropper/utils/cropperGeometry.js.map +1 -1
- package/dist/domains/dam/cropper/utils/cropperJsService.d.ts +3 -7
- package/dist/domains/dam/cropper/utils/cropperJsService.js +10 -3
- package/dist/domains/dam/cropper/utils/cropperJsService.js.map +1 -1
- package/dist/domains/dam/cropper/utils/cropperTypes.d.ts +3 -6
- package/dist/domains/dam/cropper/utils/damAssetImageRoiSelectLoader.d.ts +5 -5
- package/dist/domains/dam/cropper/utils/damAssetImageRoiSelectLoader.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/AImageMediaWidget.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/AImageMediaWidget.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/AImagePublicInput.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/AImagePublicInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/AImageWidget.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/AImageWidget.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/AImageWidgetMultiple.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/AImageWidgetMultiple.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/AImageWidgetSimple.vue.d.ts +43 -41
- package/dist/domains/dam/imageWidget/components/AMediaWidgetSimple.vue.d.ts +31 -29
- package/dist/domains/dam/imageWidget/components/ImageDetailDialogMetadata.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/ImageDetailDialogMetadata.vue.d.ts +29 -27
- package/dist/domains/dam/imageWidget/components/ImageDetailDialogMetadata.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/ImageMassOperations.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/ImageMassOperations.vue.d.ts +1 -1
- package/dist/domains/dam/imageWidget/components/ImageMassOperations.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/ImageMediaWidgetInner.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/ImageMediaWidgetInner.vue.d.ts +68 -66
- package/dist/domains/dam/imageWidget/components/ImageMediaWidgetInner.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/ImageWidgetInner.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/ImageWidgetInner.vue.d.ts +402 -400
- package/dist/domains/dam/imageWidget/components/ImageWidgetInner.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleInner.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleInner.vue.d.ts +384 -382
- package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleInner.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleItem.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleLimitDialog.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/ImageWidgetMultipleLimitDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/imageWidget/components/MediaWidgetSimpleDialog.vue.d.ts +7 -5
- package/dist/domains/dam/imageWidget/composables/commonAdminImageOptions.js.map +1 -1
- package/dist/domains/dam/imageWidget/composables/imageApiCms.js.map +1 -1
- package/dist/domains/dam/imageWidget/composables/imageDialogDamAuthors.d.ts +11 -13
- package/dist/domains/dam/imageWidget/composables/imageDialogDamAuthors.js.map +1 -1
- package/dist/domains/dam/imageWidget/composables/useImageMassOperations.js.map +1 -1
- package/dist/domains/dam/imageWidget/store/imageMediaWidgetStore.js.map +1 -1
- package/dist/domains/dam/imageWidget/store/imageStore.js.map +1 -1
- package/dist/domains/dam/imageWidget/utils/damImage.d.ts +5 -6
- package/dist/domains/dam/imageWidget/utils/damImage.js.map +1 -1
- package/dist/domains/dam/imageWidget/utils/fieldLockTurns.d.ts +1 -2
- package/dist/domains/dam/imageWidget/utils/fieldLockTurns.js.map +1 -1
- package/dist/domains/dam/imageWidget/utils/imageSaves.d.ts +10 -14
- package/dist/domains/dam/imageWidget/utils/imageSaves.js.map +1 -1
- package/dist/domains/dam/imageWidget/utils/metadataToImageMap.js.map +1 -1
- package/dist/domains/dam/imageWidget/utils/waitLimit.d.ts +4 -6
- package/dist/domains/dam/imageWidget/utils/waitLimit.js.map +1 -1
- package/dist/domains/dam/keyword/api/keywordApi.js.map +1 -1
- package/dist/domains/dam/keyword/components/DamKeywordFilterRemoteAutocomplete.js.map +1 -1
- package/dist/domains/dam/keyword/components/DamKeywordFilterRemoteAutocomplete.vue.d.ts +1 -1
- package/dist/domains/dam/keyword/components/DamKeywordFilterRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteCachedKeywordChip.js.map +1 -1
- package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteCachedKeywordChip.vue.d.ts +8 -5
- package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteCachedKeywordChip.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteWithCached.js +1 -1
- package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteWithCached.js.map +1 -1
- package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteWithCached.vue.d.ts +2 -2
- package/dist/domains/dam/keyword/components/KeywordRemoteAutocompleteWithCached.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/keyword/composables/cachedKeywords.d.ts +5 -4
- package/dist/domains/dam/keyword/composables/cachedKeywords.js.map +1 -1
- package/dist/domains/dam/keyword/composables/damKeywordConfig.d.ts +2 -2
- package/dist/domains/dam/keyword/composables/damKeywordConfig.js.map +1 -1
- package/dist/domains/dam/types/Asset.d.ts +1 -1
- package/dist/domains/dam/types/Asset.js.map +1 -1
- package/dist/domains/dam/types/UploadQueue.d.ts +5 -4
- package/dist/domains/dam/types/UploadQueue.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/AssetCustomMetadataFormMassOperations.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/AssetCustomMetadataFormMassOperations.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/AssetQueueSelectedSidebar.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/AssetQueueSelectedSidebar.vue.d.ts +2 -2
- package/dist/domains/dam/uploadQueue/components/AssetQueueSelectedSidebar.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueDialog.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingle.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingle.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebar.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebar.vue.d.ts +6 -4
- package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebar.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebarMetadata.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebarMetadata.vue.d.ts +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebarMetadata.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebarMetadataContent.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueDialogSingleSidebarMetadataContent.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueEditable.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueEditable.vue.d.ts +6 -6
- package/dist/domains/dam/uploadQueue/components/UploadQueueEditable.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueItemEditable.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/UploadQueueItemEditable.vue.d.ts +13 -13
- package/dist/domains/dam/uploadQueue/components/UploadQueueItemEditable.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/uploadQueue/components/uploadQueueBindings.d.ts +13 -13
- package/dist/domains/dam/uploadQueue/components/uploadQueueBindings.js.map +1 -1
- package/dist/domains/dam/uploadQueue/composables/damUploadChunkSize.d.ts +2 -2
- package/dist/domains/dam/uploadQueue/composables/damUploadChunkSize.js.map +1 -1
- package/dist/domains/dam/uploadQueue/composables/uploadMeter.d.ts +12 -12
- package/dist/domains/dam/uploadQueue/composables/uploadMeter.js.map +1 -1
- package/dist/domains/dam/uploadQueue/composables/uploadQueueItemRefresh.d.ts +5 -5
- package/dist/domains/dam/uploadQueue/composables/uploadQueueItemRefresh.js.map +1 -1
- package/dist/domains/dam/uploadQueue/composables/uploadService.d.ts +2 -3
- package/dist/domains/dam/uploadQueue/composables/uploadService.js.map +1 -1
- package/dist/domains/dam/uploadQueue/composables/useUploadQueueDialog.d.ts +5 -4
- package/dist/domains/dam/uploadQueue/composables/useUploadQueueDialog.js.map +1 -1
- package/dist/domains/dam/uploadQueue/core/uploadQueueCore.d.ts +3 -2
- package/dist/domains/dam/uploadQueue/core/uploadQueueCore.js.map +1 -1
- package/dist/domains/dam/uploadQueue/core/uploadQueueCoreTypes.d.ts +8 -5
- package/dist/domains/dam/uploadQueue/core/uploadQueueCoreTypes.js.map +1 -1
- package/dist/domains/dam/uploadQueue/core/uploadQueueFill.d.ts +3 -3
- package/dist/domains/dam/uploadQueue/core/uploadQueueFill.js.map +1 -1
- package/dist/domains/dam/uploadQueue/presets/queuePresets.d.ts +8 -5
- package/dist/domains/dam/uploadQueue/presets/queuePresets.js.map +1 -1
- package/dist/domains/dam/uploadQueue/presets/uploadPresets.d.ts +15 -13
- package/dist/domains/dam/uploadQueue/presets/uploadPresets.js.map +1 -1
- package/dist/domains/dam/uploadQueue/settlement/uploadPollSchedule.d.ts +7 -7
- package/dist/domains/dam/uploadQueue/settlement/uploadPollSchedule.js.map +1 -1
- package/dist/domains/dam/uploadQueue/settlement/uploadPoller.d.ts +4 -4
- package/dist/domains/dam/uploadQueue/settlement/uploadPoller.js.map +1 -1
- package/dist/domains/dam/uploadQueue/settlement/uploadSettle.d.ts +28 -30
- package/dist/domains/dam/uploadQueue/settlement/uploadSettle.js.map +1 -1
- package/dist/domains/dam/uploadQueue/settlement/uploadSettlement.d.ts +2 -2
- package/dist/domains/dam/uploadQueue/settlement/uploadSettlement.js.map +1 -1
- package/dist/domains/dam/uploadQueue/settlement/uploadSettlementRuntime.d.ts +2 -2
- package/dist/domains/dam/uploadQueue/settlement/uploadSettlementRuntime.js.map +1 -1
- package/dist/domains/dam/uploadQueue/settlement/uploadSettlementTypes.d.ts +63 -73
- package/dist/domains/dam/uploadQueue/settlement/uploadSettlementTypes.js.map +1 -1
- package/dist/domains/dam/uploadQueue/store/uploadQueuesStore.d.ts +8 -9
- package/dist/domains/dam/uploadQueue/store/uploadQueuesStore.js.map +1 -1
- package/dist/domains/dam/user/api/userApi.d.ts +2 -2
- package/dist/domains/dam/user/api/userApi.js.map +1 -1
- package/dist/domains/dam/user/components/DamDistributionServiceSelect.js.map +1 -1
- package/dist/domains/dam/user/components/DamDistributionServiceSelect.vue.d.ts +1 -1
- package/dist/domains/dam/user/components/DamDistributionServiceSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/user/components/DamExternalProviderAssetSelect.js.map +1 -1
- package/dist/domains/dam/user/components/DamExternalProviderAssetSelect.vue.d.ts +1 -1
- package/dist/domains/dam/user/components/DamExternalProviderAssetSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/user/components/DamUserRemoteAutocomplete.js.map +1 -1
- package/dist/domains/dam/user/components/DamUserRemoteAutocomplete.vue.d.ts +1 -1
- package/dist/domains/dam/user/components/DamUserRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/dam/user/composables/damUserSelectActions.d.ts +1 -1
- package/dist/domains/dam/user/composables/damUserSelectActions.js.map +1 -1
- package/dist/domains/dam/user/types/DamDistributionServiceType.d.ts +2 -2
- package/dist/domains/dam/user/types/DamDistributionServiceType.js.map +1 -1
- package/dist/domains/dam/user/types/DamExternalProviderAssetType.d.ts +1 -1
- package/dist/domains/dam/user/types/DamExternalProviderAssetType.js.map +1 -1
- package/dist/domains/filters/bookmarks/components/FilterBookmarkDialog.js.map +1 -1
- package/dist/domains/filters/bookmarks/components/FilterBookmarkDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/filters/bookmarks/store/bookmarksStore.d.ts +3 -3
- package/dist/domains/filters/bookmarks/store/bookmarksStore.js.map +1 -1
- package/dist/domains/filters/components/AFilterDatetimePicker.js.map +1 -1
- package/dist/domains/filters/components/AFilterDatetimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/filters/components/AFilterInteger.js.map +1 -1
- package/dist/domains/filters/components/AFilterInteger.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/filters/components/AFilterString.js.map +1 -1
- package/dist/domains/filters/components/AFilterString.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/filters/components/AFilterTimeInterval.js +1 -1
- package/dist/domains/filters/components/AFilterTimeInterval.js.map +1 -1
- package/dist/domains/filters/components/AFilterTimeInterval.vue.d.ts +5 -3
- package/dist/domains/filters/components/AFilterTimeInterval.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/filters/components/AFilterValueObjectOptionsSelect.js.map +1 -1
- package/dist/domains/filters/components/AFilterValueObjectOptionsSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/filters/components/AFilterWrapper.vue.d.ts +17 -15
- package/dist/domains/filters/components/AFilterWrapperSidebar.vue.d.ts +5 -3
- package/dist/domains/filters/components/FiltersSelected.js.map +1 -1
- package/dist/domains/filters/components/FiltersSelected.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/filters/composables/filterFactory.d.ts +16 -26
- package/dist/domains/filters/composables/filterFactory.js +38 -31
- package/dist/domains/filters/composables/filterFactory.js.map +1 -1
- package/dist/domains/filters/datatable/components/ADatatableOrdering.js.map +1 -1
- package/dist/domains/filters/datatable/components/ADatatableOrdering.vue_vue_type_script_setup_true_lang.js +3 -1
- package/dist/domains/filters/datatable/components/ADatatableOrdering.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/filters/datatable/components/ADatatablePagination.js.map +1 -1
- package/dist/domains/filters/datatable/components/ADatatablePagination.vue_vue_type_script_setup_true_lang.js +2 -4
- package/dist/domains/filters/datatable/components/ADatatablePagination.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/filters/utils/filterInjectionKeys.js.map +1 -1
- package/dist/domains/form/components/AFormDatetimePicker.js.map +1 -1
- package/dist/domains/form/components/AFormDatetimePicker.vue.d.ts +7 -5
- package/dist/domains/form/components/AFormDatetimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/form/components/AFormFlagDatetimePicker.js.map +1 -1
- package/dist/domains/form/components/AFormFlagDatetimePicker.vue.d.ts +7 -5
- package/dist/domains/form/components/AFormFlagDatetimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/form/components/AFormSwitch.vue.d.ts +7 -5
- package/dist/domains/form/components/AFormTextField.js.map +1 -1
- package/dist/domains/form/components/AFormTextField.vue.d.ts +9 -7
- package/dist/domains/form/components/AFormTextField.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/form/components/AFormTextarea.vue.d.ts +13 -11
- package/dist/domains/form/components/AFormValueObjectOptionsSelect.vue.d.ts +7 -5
- package/dist/domains/form/components/ASystemEntityScope.vue.d.ts +5 -3
- package/dist/domains/job/api/jobApi.js.map +1 -1
- package/dist/domains/job/components/AJobDetailCommon.vue.d.ts +5 -3
- package/dist/domains/listEditor/components/AListEditor.js.map +1 -1
- package/dist/domains/listEditor/components/AListEditor.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/listEditor/components/ANestedSortableListEditor.js.map +1 -1
- package/dist/domains/listEditor/components/ANestedSortableListEditor.vue.d.ts +2 -3
- package/dist/domains/listEditor/components/ANestedSortableListEditor.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/listEditor/components/ASortableListEditor.js.map +1 -1
- package/dist/domains/listEditor/components/ASortableListEditor.vue.d.ts +2 -3
- package/dist/domains/listEditor/components/ASortableListEditor.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/listEditor/composables/useListEditorController.d.ts +4 -5
- package/dist/domains/listEditor/composables/useListEditorController.js.map +1 -1
- package/dist/domains/listEditor/composables/useNestedListEditor.d.ts +3 -4
- package/dist/domains/listEditor/composables/useNestedListEditor.js.map +1 -1
- package/dist/domains/listEditor/composables/useNestedListEditorController.d.ts +5 -4
- package/dist/domains/listEditor/composables/useNestedListEditorController.js.map +1 -1
- package/dist/domains/listEditor/composables/useReorderMode.js.map +1 -1
- package/dist/domains/listEditor/types/listEditorTypes.d.ts +2 -2
- package/dist/domains/listEditor/utils/listEditorLoader.d.ts +5 -5
- package/dist/domains/listEditor/utils/listEditorLoader.js.map +1 -1
- package/dist/domains/listEditor/utils/resolveCompactText.js.map +1 -1
- package/dist/domains/log/api/logApi.d.ts +2 -3
- package/dist/domains/log/api/logApi.js.map +1 -1
- package/dist/domains/log/components/ALogDatatable.js.map +1 -1
- package/dist/domains/log/components/ALogDatatable.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/log/components/ALogDetailView.js.map +1 -1
- package/dist/domains/log/components/ALogDetailView.vue.d.ts +1 -1
- package/dist/domains/log/components/ALogDetailView.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/log/components/ALogFilter.js.map +1 -1
- package/dist/domains/log/components/ALogFilter.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/log/components/ALogListView.js.map +1 -1
- package/dist/domains/log/components/ALogListView.vue.d.ts +1 -1
- package/dist/domains/log/components/ALogListView.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/log/composables/logActions.d.ts +4 -5
- package/dist/domains/log/composables/logActions.js.map +1 -1
- package/dist/domains/log/composables/logType.d.ts +6 -7
- package/dist/domains/log/composables/logType.js.map +1 -1
- package/dist/domains/log/filter/logFilter.d.ts +8 -11
- package/dist/domains/log/filter/logFilter.js.map +1 -1
- package/dist/domains/permission/components/APermissionEditor.js.map +1 -1
- package/dist/domains/permission/components/APermissionEditor.vue.d.ts +4 -4
- package/dist/domains/permission/components/APermissionEditor.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/permission/composables/permissionActions.d.ts +3 -6
- package/dist/domains/permission/composables/permissionActions.js.map +1 -1
- package/dist/domains/permission/config/api/permissionConfigApi.d.ts +2 -2
- package/dist/domains/permission/config/api/permissionConfigApi.js.map +1 -1
- package/dist/domains/permission/config/composables/permissionConfigActions.d.ts +3 -7
- package/dist/domains/permission/config/composables/permissionConfigActions.js.map +1 -1
- package/dist/domains/permission/config/store/permissionConfigStore.d.ts +2 -4
- package/dist/domains/permission/config/store/permissionConfigStore.js.map +1 -1
- package/dist/domains/permission/group/api/permissionGroupApi.d.ts +8 -10
- package/dist/domains/permission/group/api/permissionGroupApi.js.map +1 -1
- package/dist/domains/permission/group/components/APermissionGroupDatatable.js.map +1 -1
- package/dist/domains/permission/group/components/APermissionGroupDatatable.vue.d.ts +12 -10
- package/dist/domains/permission/group/components/APermissionGroupDatatable.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/permission/group/components/APermissionGroupDetail.js.map +1 -1
- package/dist/domains/permission/group/components/APermissionGroupDetail.vue.d.ts +21 -22
- package/dist/domains/permission/group/components/APermissionGroupDetail.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/permission/group/components/APermissionGroupManage.js.map +1 -1
- package/dist/domains/permission/group/components/APermissionGroupManage.vue.d.ts +21 -22
- package/dist/domains/permission/group/components/APermissionGroupManage.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/permission/group/composables/cachedPermissionGroups.js.map +1 -1
- package/dist/domains/permission/group/composables/permissionGroupActions.d.ts +6 -8
- package/dist/domains/permission/group/composables/permissionGroupActions.js.map +1 -1
- package/dist/domains/permission/group/composables/permissionGroupValidations.d.ts +2 -3
- package/dist/domains/permission/group/composables/permissionGroupValidations.js.map +1 -1
- package/dist/domains/permission/group/filter/permissionGroupFilter.d.ts +2 -3
- package/dist/domains/permission/group/filter/permissionGroupFilter.js.map +1 -1
- package/dist/domains/permission/group/store/permissionGroupStore.d.ts +3 -6
- package/dist/domains/permission/group/store/permissionGroupStore.js.map +1 -1
- package/dist/domains/remoteAutocomplete/components/AFilterRemoteAutocomplete.js.map +1 -1
- package/dist/domains/remoteAutocomplete/components/AFilterRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/remoteAutocomplete/components/AFilterRemoteAutocompleteWithMinimal.js.map +1 -1
- package/dist/domains/remoteAutocomplete/components/AFilterRemoteAutocompleteWithMinimal.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/remoteAutocomplete/components/AFormRemoteAutocomplete.js.map +1 -1
- package/dist/domains/remoteAutocomplete/components/AFormRemoteAutocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/remoteAutocomplete/components/AFormRemoteAutocompleteWithCached.vue.d.ts +5 -3
- package/dist/domains/remoteAutocomplete/composables/createRemoteAutocomplete.d.ts +11 -13
- package/dist/domains/remoteAutocomplete/composables/createRemoteAutocomplete.js.map +1 -1
- package/dist/domains/subjectSelect/components/AFilterWrapperSubjectSelect.vue.d.ts +13 -11
- package/dist/domains/subjectSelect/components/ASubjectSelect.js.map +1 -1
- package/dist/domains/subjectSelect/components/ASubjectSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/subjectSelect/composables/useSubjectSelect.js +53 -51
- package/dist/domains/subjectSelect/composables/useSubjectSelect.js.map +1 -1
- package/dist/domains/system/appShell/components/AActionbar.vue.d.ts +7 -5
- package/dist/domains/system/appShell/components/ALayoutSwitch.js.map +1 -1
- package/dist/domains/system/appShell/components/ALayoutSwitch.vue.d.ts +7 -5
- package/dist/domains/system/appShell/components/ALayoutSwitch.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/system/appShell/composables/teleportSlot.d.ts +0 -1
- package/dist/domains/system/appShell/composables/teleportSlot.js.map +1 -1
- package/dist/domains/system/components/AAlerts.js.map +1 -1
- package/dist/domains/system/components/AAlerts.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/system/composables/alerts.js.map +1 -1
- package/dist/domains/system/composables/breadcrumbs.d.ts +3 -3
- package/dist/domains/system/composables/breadcrumbs.js.map +1 -1
- package/dist/domains/system/composables/languageSettings.js.map +1 -1
- package/dist/domains/system/composables/loginStatus.js.map +1 -1
- package/dist/domains/system/composables/navigationError.d.ts +6 -8
- package/dist/domains/system/composables/navigationError.js.map +1 -1
- package/dist/domains/system/composables/pageNavigation.d.ts +9 -10
- package/dist/domains/system/composables/pageNavigation.js.map +1 -1
- package/dist/domains/system/composables/recordActions.d.ts +14 -22
- package/dist/domains/system/composables/recordActions.js.map +1 -1
- package/dist/domains/system/composables/recordPage.d.ts +23 -38
- package/dist/domains/system/composables/recordPage.js.map +1 -1
- package/dist/domains/system/composables/routeHistory.d.ts +4 -5
- package/dist/domains/system/composables/routeHistory.js.map +1 -1
- package/dist/domains/system/composables/sentry.js.map +1 -1
- package/dist/domains/system/composables/useDebugFeatures.d.ts +3 -6
- package/dist/domains/system/composables/useDebugFeatures.js.map +1 -1
- package/dist/domains/system/store/datatablePageStore.d.ts +8 -1
- package/dist/domains/system/store/datatablePageStore.js +10 -3
- package/dist/domains/system/store/datatablePageStore.js.map +1 -1
- package/dist/domains/system/systemBar/components/ASystemBar.js.map +1 -1
- package/dist/domains/system/systemBar/components/ASystemBar.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/system/systemBar/utils/appReload.d.ts +5 -5
- package/dist/domains/system/systemBar/utils/appReload.js.map +1 -1
- package/dist/domains/ui/buttons/action/components/AActionCloseButtonHistory.js.map +1 -1
- package/dist/domains/ui/buttons/action/components/AActionCloseButtonHistory.vue.d.ts +2 -3
- package/dist/domains/ui/buttons/action/components/AActionCloseButtonHistory.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/ui/buttons/action/components/AActionDeleteButton.js.map +1 -1
- package/dist/domains/ui/buttons/action/components/AActionDeleteButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/ui/buttons/components/ABtnSplit.vue.d.ts +9 -7
- package/dist/domains/ui/components/AAvatarColorPicker.js.map +1 -1
- package/dist/domains/ui/components/AAvatarColorPicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/ui/components/ACard.js.map +1 -1
- package/dist/domains/ui/components/ACard.vue.d.ts +7 -3
- package/dist/domains/ui/components/ACard.vue_vue_type_script_setup_true_lang.js +6 -2
- package/dist/domains/ui/components/ACard.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/ui/components/ACardLoader.js.map +1 -1
- package/dist/domains/ui/components/ACardLoader.vue.d.ts +1 -0
- package/dist/domains/ui/components/ACardLoader.vue_vue_type_script_setup_true_lang.js +13 -7
- package/dist/domains/ui/components/ACardLoader.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/ui/components/AChipNoLink.vue.d.ts +5 -3
- package/dist/domains/ui/components/ACopyText.vue.d.ts +9 -7
- package/dist/domains/ui/components/ACreateDialog.js.map +1 -1
- package/dist/domains/ui/components/ACreateDialog.vue.d.ts +11 -9
- package/dist/domains/ui/components/ACreateDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/ui/components/ADialogToolbar.vue.d.ts +5 -3
- package/dist/domains/ui/components/ARow.vue.d.ts +5 -3
- package/dist/domains/ui/components/ATimeTrackingFields.js.map +1 -1
- package/dist/domains/ui/components/ATimeTrackingFields.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/ui/components/AUserAndTimeTrackingFields.js.map +1 -1
- package/dist/domains/ui/components/AUserAndTimeTrackingFields.vue.d.ts +3 -5
- package/dist/domains/ui/components/AUserAndTimeTrackingFields.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/ui/datetime/components/ADatetimePicker.js +1 -1
- package/dist/domains/ui/datetime/components/ADatetimePicker.js.map +1 -1
- package/dist/domains/ui/datetime/components/ADatetimePicker.vue.d.ts +5 -3
- package/dist/domains/ui/datetime/components/ADatetimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/ui/file/components/AFileDropzone.js.map +1 -1
- package/dist/domains/ui/file/components/AFileDropzone.vue.d.ts +1 -1
- package/dist/domains/ui/file/components/AFileDropzone.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/ui/file/components/AFileInput.js.map +1 -1
- package/dist/domains/ui/file/components/AFileInput.vue.d.ts +9 -7
- package/dist/domains/ui/file/components/AFileInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/ui/file/components/AFileInputDialog.js.map +1 -1
- package/dist/domains/ui/file/components/AFileInputDialog.vue.d.ts +9 -7
- package/dist/domains/ui/file/components/AFileInputDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/ui/file/composables/dropzone.js.map +1 -1
- package/dist/domains/ui/file/composables/formatAndSizeCheck.js.map +1 -1
- package/dist/domains/ui/view/components/AGenericView.vue.d.ts +7 -5
- package/dist/domains/ui/view/components/ALoginView.js +1 -1
- package/dist/domains/ui/view/components/ALoginView.js.map +1 -1
- package/dist/domains/ui/view/components/ALoginView.vue.d.ts +5 -3
- package/dist/domains/ui/view/components/ALoginView.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/ui/view/components/ALogoutView.js.map +1 -1
- package/dist/domains/ui/view/components/ALogoutView.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/ui/view/components/ANotFoundView.js.map +1 -1
- package/dist/domains/ui/view/components/ANotFoundView.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/domains/unsavedGuard/composables/useUnsavedChangesGuard.d.ts +6 -7
- package/dist/domains/unsavedGuard/composables/useUnsavedChangesGuard.js.map +1 -1
- package/dist/lib.d.ts +2 -2
- package/dist/plugins/commonVuetifyConfig.d.ts +3 -3
- package/dist/plugins/commonVuetifyConfig.js.map +1 -1
- package/dist/plugins/i18n.d.ts +4 -5
- package/dist/plugins/i18n.js.map +1 -1
- package/dist/plugins/pluginOptions.d.ts +4 -2
- package/dist/plugins/pluginOptions.js.map +1 -1
- package/dist/plugins/webfontloader.js.map +1 -1
- package/dist/shared/error/AnzuApiCancelledError.d.ts +5 -8
- package/dist/shared/error/AnzuApiCancelledError.js.map +1 -1
- package/dist/shared/error/AnzuError.d.ts +3 -5
- package/dist/shared/error/AnzuError.js.map +1 -1
- package/dist/shared/error/AuthUnavailableError.d.ts +3 -3
- package/dist/shared/error/AuthUnavailableError.js.map +1 -1
- package/dist/shared/error/isInCauseChain.d.ts +2 -2
- package/dist/shared/error/isInCauseChain.js.map +1 -1
- package/dist/shared/types/UserAndTimeTracking.d.ts +5 -5
- package/dist/shared/types/Validation.d.ts +4 -5
- package/dist/shared/types/common.d.ts +1 -3
- package/dist/shared/types/globalComponents.d.ts +5 -6
- package/dist/shared/utils/common.js.map +1 -1
- package/dist/shared/utils/datetime.d.ts +0 -1
- package/dist/shared/utils/datetime.js.map +1 -1
- package/dist/shared/utils/datetimePickerValue.d.ts +4 -7
- package/dist/shared/utils/datetimePickerValue.js.map +1 -1
- package/dist/shared/utils/development.d.ts +3 -3
- package/dist/shared/utils/development.js.map +1 -1
- package/dist/shared/utils/envConfig.d.ts +4 -4
- package/dist/shared/utils/envConfig.js.map +1 -1
- package/dist/shared/utils/json.d.ts +1 -1
- package/dist/shared/utils/json.js.map +1 -1
- package/dist/shared/utils/userAndTimeTracking.d.ts +5 -7
- package/dist/shared/utils/userAndTimeTracking.js.map +1 -1
- package/dist/shared/validators/vuelidate/common/useValidateHexColor.d.ts +3 -5
- package/dist/shared/validators/vuelidate/common/useValidateHexColor.js.map +1 -1
- package/dist/testing/appShell.d.ts +11 -11
- package/dist/testing/appShell.js.map +1 -1
- package/dist/testing/closeButtons.d.ts +9 -11
- package/dist/testing/closeButtons.js.map +1 -1
- package/dist/testing/declaredDependencies.d.ts +7 -7
- package/dist/testing/declaredDependencies.js.map +1 -1
- package/dist/testing/generatedRoutes.d.ts +6 -11
- package/dist/testing/generatedRoutes.js.map +1 -1
- package/dist/testing/routeHistory.d.ts +5 -12
- package/dist/testing/routeHistory.js.map +1 -1
- package/dist/testing/sortableLists.d.ts +16 -21
- package/dist/testing/sortableLists.js.map +1 -1
- package/dist/testing/typedRouter.d.ts +0 -1
- package/dist/testing/typedRouter.js.map +1 -1
- package/package.json +27 -27
- package/src/eslint/adminConfig.mjs +19 -27
- package/src/eslint/globalComponentNames.mjs +3 -4
- package/src/eslint/oxlint.mjs +7 -20
- package/src/eslint/plugin.d.mts +2 -4
- package/src/eslint/plugin.mjs +18 -34
- package/src/eslint/validRouteName.mjs +6 -7
- package/src/vite/devWatch.mjs +30 -43
- package/src/vite/index.d.mts +5 -5
- package/src/vite/sentry.mjs +7 -12
- package/src/vite/sourcemaps.mjs +4 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissionConfigStore.js","names":["usePermissionConfigStore","defineStore","usePermissionConfigFactory","entries","ref","emptyEntry","createPermissionConfig","getEntry","system","setLoading","entry","setConfig","resetSystem","reset"],"sources":["../../../../../src/domains/permission/config/store/permissionConfigStore.ts"],"sourcesContent":["import { acceptHMRUpdate, defineStore } from 'pinia'\nimport { ref } from 'vue'\nimport { usePermissionConfigFactory } from '@/domains/permission/config/factory/PermissionConfigFactory'\nimport type { PermissionConfig } from '@/domains/permission/config/types/PermissionConfig'\n\n/**\n * One entry per system.
|
|
1
|
+
{"version":3,"file":"permissionConfigStore.js","names":["usePermissionConfigStore","defineStore","usePermissionConfigFactory","entries","ref","emptyEntry","createPermissionConfig","getEntry","system","setLoading","entry","setConfig","resetSystem","reset"],"sources":["../../../../../src/domains/permission/config/store/permissionConfigStore.ts"],"sourcesContent":["import { acceptHMRUpdate, defineStore } from 'pinia'\nimport { ref } from 'vue'\nimport { usePermissionConfigFactory } from '@/domains/permission/config/factory/PermissionConfigFactory'\nimport type { PermissionConfig } from '@/domains/permission/config/types/PermissionConfig'\n\n/**\n * One entry per system. Shared `loading` and `initialized` flags break with parallel fetches.\n * The first fetch to finish would clear the flag for all, and a failure without `finally` would leave it set forever.\n */\nexport interface PermissionConfigEntry {\n config: PermissionConfig\n loading: boolean\n initialized: boolean\n}\n\nexport const usePermissionConfigStore = defineStore('commonAdminPermissionConfigStore', () => {\n const { createPermissionConfig } = usePermissionConfigFactory()\n\n const entries = ref(new Map<string, PermissionConfigEntry>())\n\n const emptyEntry = (): PermissionConfigEntry => ({\n config: createPermissionConfig(),\n loading: false,\n initialized: false,\n })\n\n /**\n * Never returns undefined, so a template can read `.config` before the first fetch.\n * The empty config is a fresh object per call. The editor writes into\n * it, so a shared constant would be shared across unanswered systems.\n */\n function getEntry(system: string): PermissionConfigEntry {\n return entries.value.get(system) ?? emptyEntry()\n }\n\n function setLoading(system: string, loading: boolean) {\n const entry = entries.value.get(system) ?? emptyEntry()\n entries.value.set(system, { ...entry, loading })\n }\n\n function setConfig(system: string, config: PermissionConfig) {\n const entry = entries.value.get(system) ?? emptyEntry()\n entries.value.set(system, { ...entry, config, initialized: true })\n }\n\n /** Drops one system, leaving the others loaded. Used when a system's client is swapped out. */\n function resetSystem(system: string) {\n entries.value.delete(system)\n }\n\n function reset() {\n entries.value = new Map()\n }\n\n return {\n entries,\n getEntry,\n setLoading,\n setConfig,\n resetSystem,\n reset,\n }\n})\n\nif (import.meta.hot) {\n import.meta.hot.accept(acceptHMRUpdate(usePermissionConfigStore, import.meta.hot))\n}\n"],"mappings":";;;;AAeA,IAAaA,IAA2BC,EAAY,0CAA0C;CAC5F,IAAM,EAAE,8BAA2BC,EAA2B,GAExDC,IAAUC,kBAAI,IAAI,IAAmC,CAAC,GAEtDC,WAA2C;EAC/C,QAAQC,EAAuB;EAC/B,SAAS;EACT,aAAa;CACf;CAOA,SAASC,EAAS,GAAuC;EACvD,OAAOJ,EAAQ,MAAM,IAAIK,CAAM,KAAKH,EAAW;CACjD;CAEA,SAASI,EAAW,GAAgB,GAAkB;EACpD,IAAMC,IAAQP,EAAQ,MAAM,IAAIK,CAAM,KAAKH,EAAW;EACtD,EAAQ,MAAM,IAAIG,GAAQ;GAAE,GAAGE;GAAO;EAAQ,CAAC;CACjD;CAEA,SAASC,EAAU,GAAgB,GAA0B;EAC3D,IAAMD,IAAQP,EAAQ,MAAM,IAAIK,CAAM,KAAKH,EAAW;EACtD,EAAQ,MAAM,IAAIG,GAAQ;GAAE,GAAGE;GAAO;GAAQ,aAAa;EAAK,CAAC;CACnE;CAGA,SAASE,EAAY,GAAgB;EACnC,EAAQ,MAAM,OAAOJ,CAAM;CAC7B;CAEA,SAASK,IAAQ;EACf,EAAQ,wBAAQ,IAAI,IAAI;CAC1B;CAEA,OAAO;EACL;EACA;EACA;EACA;EACA;EACA;CACF;AACF,CAAC"}
|
|
@@ -5,20 +5,18 @@ export declare const PERMISSION_GROUP_ENDPOINT = "/adm/v1/permission-group";
|
|
|
5
5
|
export interface PermissionGroupApiParams {
|
|
6
6
|
client: AxiosClientFn;
|
|
7
7
|
/**
|
|
8
|
-
* Both
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* one file that is told which system it is cannot have it.
|
|
8
|
+
* Both reach every `useApiRequest` built here, and both must be passed, not assumed.
|
|
9
|
+
* admin-cms declared `SYSTEM_COMMON` but sent `SYSTEM_CMS` on
|
|
10
|
+
* one of four calls, reporting two systems for one endpoint.
|
|
11
|
+
* One file that is told its system cannot have that bug.
|
|
13
12
|
*/
|
|
14
13
|
system: string;
|
|
15
14
|
entity?: string;
|
|
16
15
|
/**
|
|
17
|
-
* i18n scope for
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* contentHub passes its own pair to keep the keys it already has.
|
|
16
|
+
* i18n scope for server-side validation failures, separate from which backend answered.
|
|
17
|
+
* `AnzuApiValidationError` builds `<system>.<entity>.model.<field>` keys. For a component shared by
|
|
18
|
+
* nine backends the labels are the library's `common.*`; `weather.anzuUser.model.email` does not exist.
|
|
19
|
+
* Defaults to `common` plus the entity. contentHub passes its own pair to keep its existing keys.
|
|
22
20
|
*/
|
|
23
21
|
validationSystem?: string;
|
|
24
22
|
validationEntity?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissionGroupApi.js","names":["PERMISSION_GROUP_ENTITY","PERMISSION_GROUP_ENDPOINT","usePermissionGroupApi","entity","scope","useApiFetchByIds","endPoint","useApiFetchList","useApiRequest","useApiCommand"],"sources":["../../../../../src/domains/permission/group/api/permissionGroupApi.ts"],"sourcesContent":["import type { AxiosClientFn } from '@/domains/api/utils/client'\nimport { useApiCommand, useApiRequest } from '@/domains/api/composables/useApiRequest'\nimport { useApiFetchByIds } from '@/domains/api/composables/useApiFetchByIds'\nimport { useApiFetchList } from '@/domains/api/composables/useApiFetchList'\nimport type { PermissionGroup } from '@/domains/permission/group/types/PermissionGroup'\n\nexport const PERMISSION_GROUP_ENTITY = 'permissionGroup'\nexport const PERMISSION_GROUP_ENDPOINT = '/adm/v1/permission-group'\n\nexport interface PermissionGroupApiParams {\n client: AxiosClientFn\n /**\n * Both
|
|
1
|
+
{"version":3,"file":"permissionGroupApi.js","names":["PERMISSION_GROUP_ENTITY","PERMISSION_GROUP_ENDPOINT","usePermissionGroupApi","entity","scope","useApiFetchByIds","endPoint","useApiFetchList","useApiRequest","useApiCommand"],"sources":["../../../../../src/domains/permission/group/api/permissionGroupApi.ts"],"sourcesContent":["import type { AxiosClientFn } from '@/domains/api/utils/client'\nimport { useApiCommand, useApiRequest } from '@/domains/api/composables/useApiRequest'\nimport { useApiFetchByIds } from '@/domains/api/composables/useApiFetchByIds'\nimport { useApiFetchList } from '@/domains/api/composables/useApiFetchList'\nimport type { PermissionGroup } from '@/domains/permission/group/types/PermissionGroup'\n\nexport const PERMISSION_GROUP_ENTITY = 'permissionGroup'\nexport const PERMISSION_GROUP_ENDPOINT = '/adm/v1/permission-group'\n\nexport interface PermissionGroupApiParams {\n client: AxiosClientFn\n /**\n * Both reach every `useApiRequest` built here, and both must be passed, not assumed.\n * admin-cms declared `SYSTEM_COMMON` but sent `SYSTEM_CMS` on\n * one of four calls, reporting two systems for one endpoint.\n * One file that is told its system cannot have that bug.\n */\n system: string\n entity?: string\n /**\n * i18n scope for server-side validation failures, separate from which backend answered.\n * `AnzuApiValidationError` builds `<system>.<entity>.model.<field>` keys. For a component shared by\n * nine backends the labels are the library's `common.*`; `weather.anzuUser.model.email` does not exist.\n * Defaults to `common` plus the entity. contentHub passes its own pair to keep its existing keys.\n */\n validationSystem?: string\n validationEntity?: string\n endPoint?: string\n}\n\nexport const usePermissionGroupApi = ({\n client,\n system,\n entity = PERMISSION_GROUP_ENTITY,\n validationSystem = 'common',\n validationEntity = entity,\n endPoint = PERMISSION_GROUP_ENDPOINT,\n}: PermissionGroupApiParams) => {\n const scope = { validationSystem, validationEntity }\n const useFetchPermissionGroupListByIds = () =>\n useApiFetchByIds<PermissionGroup>({ client, system, entity, ...scope, urlTemplate: endPoint })\n\n const useFetchPermissionGroupList = () =>\n useApiFetchList<PermissionGroup>({ client, system, entity, ...scope, urlTemplate: endPoint })\n\n const useFetchPermissionGroup = () =>\n useApiRequest<PermissionGroup, null>({\n client,\n ...scope,\n method: 'GET',\n system,\n entity,\n urlTemplate: endPoint + '/:id',\n })\n\n const useCreatePermissionGroup = () =>\n useApiRequest<PermissionGroup, PermissionGroup>({\n client,\n ...scope,\n method: 'POST',\n system,\n entity,\n urlTemplate: endPoint,\n })\n\n const useUpdatePermissionGroup = () =>\n useApiRequest<PermissionGroup, PermissionGroup>({\n client,\n ...scope,\n method: 'PUT',\n system,\n entity,\n urlTemplate: endPoint + '/:id',\n })\n\n const useDeletePermissionGroup = () =>\n useApiCommand<null>({\n client,\n ...scope,\n method: 'DELETE',\n system,\n entity,\n urlTemplate: endPoint + '/:id',\n })\n\n return {\n useFetchPermissionGroupListByIds,\n useFetchPermissionGroupList,\n useFetchPermissionGroup,\n useCreatePermissionGroup,\n useUpdatePermissionGroup,\n useDeletePermissionGroup,\n }\n}\n"],"mappings":";;;;AAMA,IAAaA,IAA0B,mBAC1BC,IAA4B,4BAuB5BC,KAAyB,EACpC,WACA,WACA,YAASF,GACT,sBAAmB,UACnB,sBAAmBG,GACnB,cAAWF,QACmB;CAC9B,IAAMG,IAAQ;EAAE;EAAkB;CAAiB;CA+CnD,OAAO;EACL,wCA9CAC,EAAkC;GAAE;GAAQ;GAAQ;GAAQ,GAAGD;GAAO,aAAaE;EAAS,CAAC;EA+C7F,mCA5CAC,EAAiC;GAAE;GAAQ;GAAQ;GAAQ,GAAGH;GAAO,aAAaE;EAAS,CAAC;EA6C5F,+BA1CAE,EAAqC;GACnC;GACA,GAAGJ;GACH,QAAQ;GACR;GACA;GACA,aAAaE,IAAW;EAC1B,CAAC;EAoCD,gCAjCAE,EAAgD;GAC9C;GACA,GAAGJ;GACH,QAAQ;GACR;GACA;GACA,aAAaE;EACf,CAAC;EA2BD,gCAxBAE,EAAgD;GAC9C;GACA,GAAGJ;GACH,QAAQ;GACR;GACA;GACA,aAAaE,IAAW;EAC1B,CAAC;EAkBD,gCAfAG,EAAoB;GAClB;GACA,GAAGL;GACH,QAAQ;GACR;GACA;GACA,aAAaE,IAAW;EAC1B,CAAC;CASH;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"APermissionGroupDatatable.js","names":["_sfc_main","APermissionGroupDatatable_vue_vue_type_script_setup_true_lang_default","APermissionGroupDatatable_default"],"sources":["../../../../../src/domains/permission/group/components/APermissionGroupDatatable.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { onBeforeUnmount, onMounted, provide } from 'vue'\nimport type { RouteLocationRaw } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\nimport { useDebounceFn } from '@vueuse/core'\nimport ADatatableConfigButton from '@/domains/filters/datatable/components/ADatatableConfigButton.vue'\nimport ADatetime from '@/domains/ui/datetime/components/ADatetime.vue'\nimport ATableCopyIdButton from '@/domains/ui/buttons/table/components/ATableCopyIdButton.vue'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport ADatatableOrdering from '@/domains/filters/datatable/components/ADatatableOrdering.vue'\nimport ADatatablePagination from '@/domains/filters/datatable/components/ADatatablePagination.vue'\nimport { createDatatableColumnsConfig } from '@/domains/filters/datatable/composables/createDatatableColumnsConfig'\nimport { useFilterHelpers } from '@/domains/filters/composables/filterFactory'\nimport { DatatablePaginationKey, FilterConfigKey, FilterDataKey } from '@/domains/filters/utils/filterInjectionKeys'\nimport { usePagination } from '@/domains/api/composables/pagination'\nimport APermissionGroupFilter from '@/domains/permission/group/components/APermissionGroupFilter.vue'\nimport { usePermissionGroupActions } from '@/domains/permission/group/composables/permissionGroupActions'\nimport { PERMISSION_GROUP_ENTITY } from '@/domains/permission/group/api/permissionGroupApi'\nimport {\n permissionGroupFilterStorageKey,\n usePermissionGroupListFilter,\n} from '@/domains/permission/group/filter/permissionGroupFilter'\nimport { SORT_BY_ID } from '@/domains/filters/datatable/utils/datatableColumns'\nimport type { PermissionGroup } from '@/domains/permission/group/types/PermissionGroup'\n\ntype DatatableItem = PermissionGroup\n\nconst props = withDefaults(\n defineProps<{\n client: AxiosClientFn\n /** Backend identity: keys the filter store and the cache, and reaches every api call. */\n system: string\n entity?: string | undefined\n endPoint?: string | undefined\n /** Where a row and the detail button go. The library cannot know an app's typed route names. */\n detailRoute: (permissionGroup: PermissionGroup) => RouteLocationRaw\n editRoute: (permissionGroup: PermissionGroup) => RouteLocationRaw\n /** Already-evaluated ACL
|
|
1
|
+
{"version":3,"file":"APermissionGroupDatatable.js","names":["_sfc_main","APermissionGroupDatatable_vue_vue_type_script_setup_true_lang_default","APermissionGroupDatatable_default"],"sources":["../../../../../src/domains/permission/group/components/APermissionGroupDatatable.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { onBeforeUnmount, onMounted, provide } from 'vue'\nimport type { RouteLocationRaw } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\nimport { useDebounceFn } from '@vueuse/core'\nimport ADatatableConfigButton from '@/domains/filters/datatable/components/ADatatableConfigButton.vue'\nimport ADatetime from '@/domains/ui/datetime/components/ADatetime.vue'\nimport ATableCopyIdButton from '@/domains/ui/buttons/table/components/ATableCopyIdButton.vue'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport ADatatableOrdering from '@/domains/filters/datatable/components/ADatatableOrdering.vue'\nimport ADatatablePagination from '@/domains/filters/datatable/components/ADatatablePagination.vue'\nimport { createDatatableColumnsConfig } from '@/domains/filters/datatable/composables/createDatatableColumnsConfig'\nimport { useFilterHelpers } from '@/domains/filters/composables/filterFactory'\nimport { DatatablePaginationKey, FilterConfigKey, FilterDataKey } from '@/domains/filters/utils/filterInjectionKeys'\nimport { usePagination } from '@/domains/api/composables/pagination'\nimport APermissionGroupFilter from '@/domains/permission/group/components/APermissionGroupFilter.vue'\nimport { usePermissionGroupActions } from '@/domains/permission/group/composables/permissionGroupActions'\nimport { PERMISSION_GROUP_ENTITY } from '@/domains/permission/group/api/permissionGroupApi'\nimport {\n permissionGroupFilterStorageKey,\n usePermissionGroupListFilter,\n} from '@/domains/permission/group/filter/permissionGroupFilter'\nimport { SORT_BY_ID } from '@/domains/filters/datatable/utils/datatableColumns'\nimport type { PermissionGroup } from '@/domains/permission/group/types/PermissionGroup'\n\ntype DatatableItem = PermissionGroup\n\nconst props = withDefaults(\n defineProps<{\n client: AxiosClientFn\n /** Backend identity: keys the filter store and the cache, and reaches every api call. */\n system: string\n entity?: string | undefined\n endPoint?: string | undefined\n /** Where a row and the detail button go. The library cannot know an app's typed route names. */\n detailRoute: (permissionGroup: PermissionGroup) => RouteLocationRaw\n editRoute: (permissionGroup: PermissionGroup) => RouteLocationRaw\n /** Already-evaluated ACL, a boolean rather than an `AclValue`. */\n canUpdate?: boolean\n }>(),\n {\n entity: undefined,\n endPoint: undefined,\n canUpdate: false,\n }\n)\n\nconst emit = defineEmits<{\n (e: 'rowClick', permissionGroup: PermissionGroup): void\n}>()\n\n/* eslint-disable vue/no-setup-props-reactivity-loss */\nconst { t } = useI18n()\nconst { filterConfig, filterData } = usePermissionGroupListFilter(props.system)\nprovide(FilterConfigKey, filterConfig)\nprovide(FilterDataKey, filterData)\n\nconst {\n fetchPermissionGroupList,\n cancelPermissionGroupList,\n permissionGroupList,\n loadingPermissionGroupList,\n datatableHiddenColumns,\n} = usePermissionGroupActions({\n client: props.client,\n system: props.system,\n entity: props.entity,\n endPoint: props.endPoint,\n})\n\nconst { resetFilter, submitFilter, loadStoredFilters } = useFilterHelpers(filterData, filterConfig, {\n storeFiltersLocalStorage: permissionGroupFilterStorageKey(props.system),\n})\n\nconst { pagination } = usePagination(SORT_BY_ID)\nprovide(DatatablePaginationKey, pagination)\n\nconst { columnsVisible, columnsAll, columnsHidden } = createDatatableColumnsConfig(\n [\n { key: 'id' },\n { key: 'title' },\n { key: 'description' },\n { key: 'permissions' },\n { key: 'createdAt' },\n { key: 'modifiedAt' },\n ],\n datatableHiddenColumns,\n 'common',\n PERMISSION_GROUP_ENTITY,\n { storeColumnsLocalStorage: `table_common_permissionGroup_${props.system}` }\n)\n/* eslint-enable vue/no-setup-props-reactivity-loss */\n\nconst getList = useDebounceFn(async () => {\n await fetchPermissionGroupList(pagination, filterData, filterConfig)\n})\n\n// Named here, not inline in the template: the template would pass the unwrapped value of the `pagination` ref.\nconst submitFilterAction = () => submitFilter(pagination, getList)\nconst resetFilterAction = () => resetFilter(pagination, getList)\n\nconst onRowClick = (_event: unknown, { item }: { item: DatatableItem }) => {\n if (item.id) emit('rowClick', item)\n}\n\nonMounted(() => {\n loadStoredFilters(pagination, getList)\n})\n\nonBeforeUnmount(() => {\n // Order matters: a pending debounce would otherwise fire after the abort and start a request\n // nothing is left to receive.\n getList.cancel()\n cancelPermissionGroupList()\n})\n\ndefineExpose({\n refresh: getList,\n resetFilter: resetFilterAction,\n submitFilter: submitFilterAction,\n})\n</script>\n\n<template>\n <div>\n <APermissionGroupFilter\n @submit=\"submitFilterAction\"\n @reset=\"resetFilterAction\"\n />\n <div>\n <div class=\"d-flex align-center\">\n <VSpacer />\n <ADatatableOrdering\n variant=\"id\"\n @sort-by-change=\"submitFilterAction\"\n />\n <ADatatableConfigButton\n v-model:columns-hidden=\"columnsHidden\"\n :columns-all=\"columnsAll\"\n />\n </div>\n <VDataTableServer\n class=\"a-datatable\"\n :headers=\"columnsVisible\"\n :items=\"permissionGroupList\"\n :items-length=\"permissionGroupList.length\"\n :loading=\"loadingPermissionGroupList\"\n item-value=\"id\"\n @click:row=\"onRowClick\"\n >\n <template #item.permissions=\"{ item }: { item: DatatableItem }\">\n <VChip>{{ Object.keys(item.permissions).length }}</VChip>\n </template>\n <template #item.createdAt=\"{ item }: { item: DatatableItem }\">\n <ADatetime :date-time=\"item.createdAt\" />\n <!--\n The user chip is per app: its cache, its route, its own `_system`.\n An app without one leaves the slot empty, and then no line break is rendered.\n -->\n <template v-if=\"$slots.createdBy\">\n <br />\n <slot\n :id=\"item.createdBy\"\n name=\"createdBy\"\n />\n </template>\n </template>\n <template #item.modifiedAt=\"{ item }: { item: DatatableItem }\">\n <ADatetime :date-time=\"item.modifiedAt\" />\n <template v-if=\"$slots.modifiedBy\">\n <br />\n <slot\n :id=\"item.modifiedBy\"\n name=\"modifiedBy\"\n />\n </template>\n </template>\n <template #item.actions=\"{ item }: { item: DatatableItem }\">\n <div class=\"d-flex justify-end\">\n <ATableCopyIdButton :id=\"item.id\" />\n <!-- `:to` rather than a click handler, so middle-click and open-in-new-tab work. -->\n <VBtn\n :to=\"detailRoute(item)\"\n class=\"ml-1\"\n icon=\"mdi-information-outline\"\n :aria-label=\"t('common.button.detail')\"\n size=\"x-small\"\n variant=\"text\"\n />\n <VBtn\n v-if=\"canUpdate\"\n :to=\"editRoute(item)\"\n class=\"ml-1\"\n icon=\"mdi-pencil\"\n :aria-label=\"t('common.button.edit')\"\n size=\"x-small\"\n variant=\"text\"\n />\n </div>\n </template>\n <template #bottom>\n <ADatatablePagination @change=\"getList\" />\n </template>\n </VDataTableServer>\n </div>\n </div>\n</template>\n"],"mappings":""}
|
|
@@ -10,19 +10,21 @@ type __VLS_Props = {
|
|
|
10
10
|
/** Where a row and the detail button go. The library cannot know an app's typed route names. */
|
|
11
11
|
detailRoute: (permissionGroup: PermissionGroup) => RouteLocationRaw;
|
|
12
12
|
editRoute: (permissionGroup: PermissionGroup) => RouteLocationRaw;
|
|
13
|
-
/** Already-evaluated ACL
|
|
13
|
+
/** Already-evaluated ACL, a boolean rather than an `AclValue`. */
|
|
14
14
|
canUpdate?: boolean;
|
|
15
15
|
};
|
|
16
|
-
declare
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
16
|
+
declare const __VLS_template: () => {
|
|
17
|
+
__VLS_Slots: {
|
|
18
|
+
createdBy?: (props: {
|
|
19
|
+
id: import('../../../../lib').IntegerIdNullable;
|
|
20
|
+
}) => any;
|
|
21
|
+
} & {
|
|
22
|
+
modifiedBy?: (props: {
|
|
23
|
+
id: import('../../../../lib').IntegerIdNullable;
|
|
24
|
+
}) => any;
|
|
25
|
+
};
|
|
25
26
|
};
|
|
27
|
+
type __VLS_Slots = ReturnType<typeof __VLS_template>['__VLS_Slots'];
|
|
26
28
|
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {
|
|
27
29
|
refresh: import('@vueuse/shared').UseDebounceFnReturn<() => Promise<void>>;
|
|
28
30
|
resetFilter: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"APermissionGroupDatatable.vue_vue_type_script_setup_true_lang.js","names":["$slots","_openBlock","_createElementBlock","_createVNode","APermissionGroupFilter","_createElementVNode","_component_VSpacer","ADatatableOrdering","ADatatableConfigButton","_unref","_isRef","_component_VDataTableServer","_withCtx","_component_VChip","_createTextVNode","_toDisplayString","ADatetime","_Fragment","_renderSlot","_createCommentVNode","ATableCopyIdButton","_component_VBtn","_createBlock","ADatatablePagination","ADatatableConfigButton_default","ADatetime_default","ATableCopyIdButton_default","ADatatableOrdering_default","ADatatablePagination_default","APermissionGroupFilter_default","_hoisted_1","_hoisted_2","APermissionGroupDatatable_vue_vue_type_script_setup_true_lang_default","__expose","__emit","props","__props","emit","useI18n","usePermissionGroupListFilter","provide","FilterConfigKey","filterConfig","FilterDataKey","filterData","usePermissionGroupActions","useFilterHelpers","permissionGroupFilterStorageKey","usePagination","DatatablePaginationKey","pagination","createDatatableColumnsConfig","datatableHiddenColumns","PERMISSION_GROUP_ENTITY","getList","useDebounceFn","fetchPermissionGroupList","submitFilterAction","submitFilter","resetFilterAction","resetFilter","onRowClick","item","onMounted","onBeforeUnmount","cancelPermissionGroupList","openBlock","createElementBlock","createVNode","createElementVNode","VSpacer","unref","columnsHidden","_cache","isRef","$event","columnsAll","VDataTableServer","columnsVisible","permissionGroupList","loadingPermissionGroupList","withCtx","VChip","createTextVNode","toDisplayString","_ctx","Fragment","renderSlot","createCommentVNode","VBtn","t","createBlock"],"sources":["../../../../../src/domains/permission/group/components/APermissionGroupDatatable.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { onBeforeUnmount, onMounted, provide } from 'vue'\nimport type { RouteLocationRaw } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\nimport { useDebounceFn } from '@vueuse/core'\nimport ADatatableConfigButton from '@/domains/filters/datatable/components/ADatatableConfigButton.vue'\nimport ADatetime from '@/domains/ui/datetime/components/ADatetime.vue'\nimport ATableCopyIdButton from '@/domains/ui/buttons/table/components/ATableCopyIdButton.vue'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport ADatatableOrdering from '@/domains/filters/datatable/components/ADatatableOrdering.vue'\nimport ADatatablePagination from '@/domains/filters/datatable/components/ADatatablePagination.vue'\nimport { createDatatableColumnsConfig } from '@/domains/filters/datatable/composables/createDatatableColumnsConfig'\nimport { useFilterHelpers } from '@/domains/filters/composables/filterFactory'\nimport { DatatablePaginationKey, FilterConfigKey, FilterDataKey } from '@/domains/filters/utils/filterInjectionKeys'\nimport { usePagination } from '@/domains/api/composables/pagination'\nimport APermissionGroupFilter from '@/domains/permission/group/components/APermissionGroupFilter.vue'\nimport { usePermissionGroupActions } from '@/domains/permission/group/composables/permissionGroupActions'\nimport { PERMISSION_GROUP_ENTITY } from '@/domains/permission/group/api/permissionGroupApi'\nimport {\n permissionGroupFilterStorageKey,\n usePermissionGroupListFilter,\n} from '@/domains/permission/group/filter/permissionGroupFilter'\nimport { SORT_BY_ID } from '@/domains/filters/datatable/utils/datatableColumns'\nimport type { PermissionGroup } from '@/domains/permission/group/types/PermissionGroup'\n\ntype DatatableItem = PermissionGroup\n\nconst props = withDefaults(\n defineProps<{\n client: AxiosClientFn\n /** Backend identity: keys the filter store and the cache, and reaches every api call. */\n system: string\n entity?: string | undefined\n endPoint?: string | undefined\n /** Where a row and the detail button go. The library cannot know an app's typed route names. */\n detailRoute: (permissionGroup: PermissionGroup) => RouteLocationRaw\n editRoute: (permissionGroup: PermissionGroup) => RouteLocationRaw\n /** Already-evaluated ACL. A boolean, not an `AclValue`: see 5.1 of the plan. */\n canUpdate?: boolean\n }>(),\n {\n entity: undefined,\n endPoint: undefined,\n canUpdate: false,\n }\n)\n\nconst emit = defineEmits<{\n (e: 'rowClick', permissionGroup: PermissionGroup): void\n}>()\n\n/* eslint-disable vue/no-setup-props-reactivity-loss */\nconst { t } = useI18n()\nconst { filterConfig, filterData } = usePermissionGroupListFilter(props.system)\nprovide(FilterConfigKey, filterConfig)\nprovide(FilterDataKey, filterData)\n\nconst {\n fetchPermissionGroupList,\n cancelPermissionGroupList,\n permissionGroupList,\n loadingPermissionGroupList,\n datatableHiddenColumns,\n} = usePermissionGroupActions({\n client: props.client,\n system: props.system,\n entity: props.entity,\n endPoint: props.endPoint,\n})\n\nconst { resetFilter, submitFilter, loadStoredFilters } = useFilterHelpers(filterData, filterConfig, {\n storeFiltersLocalStorage: permissionGroupFilterStorageKey(props.system),\n})\n\nconst { pagination } = usePagination(SORT_BY_ID)\nprovide(DatatablePaginationKey, pagination)\n\nconst { columnsVisible, columnsAll, columnsHidden } = createDatatableColumnsConfig(\n [\n { key: 'id' },\n { key: 'title' },\n { key: 'description' },\n { key: 'permissions' },\n { key: 'createdAt' },\n { key: 'modifiedAt' },\n ],\n datatableHiddenColumns,\n 'common',\n PERMISSION_GROUP_ENTITY,\n { storeColumnsLocalStorage: `table_common_permissionGroup_${props.system}` }\n)\n/* eslint-enable vue/no-setup-props-reactivity-loss */\n\nconst getList = useDebounceFn(async () => {\n await fetchPermissionGroupList(pagination, filterData, filterConfig)\n})\n\n// Named here rather than called inline in the template: `pagination` is a ref, and the template\n// would hand these its unwrapped value.\nconst submitFilterAction = () => submitFilter(pagination, getList)\nconst resetFilterAction = () => resetFilter(pagination, getList)\n\nconst onRowClick = (_event: unknown, { item }: { item: DatatableItem }) => {\n if (item.id) emit('rowClick', item)\n}\n\nonMounted(() => {\n loadStoredFilters(pagination, getList)\n})\n\nonBeforeUnmount(() => {\n // Order matters: a pending debounce would otherwise fire after the abort and start a request\n // nothing is left to receive.\n getList.cancel()\n cancelPermissionGroupList()\n})\n\ndefineExpose({\n refresh: getList,\n resetFilter: resetFilterAction,\n submitFilter: submitFilterAction,\n})\n</script>\n\n<template>\n <div>\n <APermissionGroupFilter\n @submit=\"submitFilterAction\"\n @reset=\"resetFilterAction\"\n />\n <div>\n <div class=\"d-flex align-center\">\n <VSpacer />\n <ADatatableOrdering\n variant=\"id\"\n @sort-by-change=\"submitFilterAction\"\n />\n <ADatatableConfigButton\n v-model:columns-hidden=\"columnsHidden\"\n :columns-all=\"columnsAll\"\n />\n </div>\n <VDataTableServer\n class=\"a-datatable\"\n :headers=\"columnsVisible\"\n :items=\"permissionGroupList\"\n :items-length=\"permissionGroupList.length\"\n :loading=\"loadingPermissionGroupList\"\n item-value=\"id\"\n @click:row=\"onRowClick\"\n >\n <template #item.permissions=\"{ item }: { item: DatatableItem }\">\n <VChip>{{ Object.keys(item.permissions).length }}</VChip>\n </template>\n <template #item.createdAt=\"{ item }: { item: DatatableItem }\">\n <ADatetime :date-time=\"item.createdAt\" />\n <!-- The user chip is per app: its cache, its route, its own `_system`. An app without\n one leaves the slot empty, and then there is no line break either. -->\n <template v-if=\"$slots.createdBy\">\n <br />\n <slot\n :id=\"item.createdBy\"\n name=\"createdBy\"\n />\n </template>\n </template>\n <template #item.modifiedAt=\"{ item }: { item: DatatableItem }\">\n <ADatetime :date-time=\"item.modifiedAt\" />\n <template v-if=\"$slots.modifiedBy\">\n <br />\n <slot\n :id=\"item.modifiedBy\"\n name=\"modifiedBy\"\n />\n </template>\n </template>\n <template #item.actions=\"{ item }: { item: DatatableItem }\">\n <div class=\"d-flex justify-end\">\n <ATableCopyIdButton :id=\"item.id\" />\n <!--\n `:to` rather than a click handler, so middle-click and open-in-new-tab work on a list\n people open several rows from.\n -->\n <VBtn\n :to=\"detailRoute(item)\"\n class=\"ml-1\"\n icon=\"mdi-information-outline\"\n :aria-label=\"t('common.button.detail')\"\n size=\"x-small\"\n variant=\"text\"\n />\n <VBtn\n v-if=\"canUpdate\"\n :to=\"editRoute(item)\"\n class=\"ml-1\"\n icon=\"mdi-pencil\"\n :aria-label=\"t('common.button.edit')\"\n size=\"x-small\"\n variant=\"text\"\n />\n </div>\n </template>\n <template #bottom>\n <ADatatablePagination @change=\"getList\" />\n </template>\n </VDataTableServer>\n </div>\n </div>\n</template>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"APermissionGroupDatatable.vue_vue_type_script_setup_true_lang.js","names":["$slots","_openBlock","_createElementBlock","_createVNode","APermissionGroupFilter","_createElementVNode","_component_VSpacer","ADatatableOrdering","ADatatableConfigButton","_unref","_isRef","_component_VDataTableServer","_withCtx","_component_VChip","_createTextVNode","_toDisplayString","ADatetime","_Fragment","_renderSlot","_createCommentVNode","ATableCopyIdButton","_component_VBtn","_createBlock","ADatatablePagination","ADatatableConfigButton_default","ADatetime_default","ATableCopyIdButton_default","ADatatableOrdering_default","ADatatablePagination_default","APermissionGroupFilter_default","_hoisted_1","_hoisted_2","APermissionGroupDatatable_vue_vue_type_script_setup_true_lang_default","__expose","__emit","props","__props","emit","useI18n","usePermissionGroupListFilter","provide","FilterConfigKey","filterConfig","FilterDataKey","filterData","usePermissionGroupActions","useFilterHelpers","permissionGroupFilterStorageKey","usePagination","DatatablePaginationKey","pagination","createDatatableColumnsConfig","datatableHiddenColumns","PERMISSION_GROUP_ENTITY","getList","useDebounceFn","fetchPermissionGroupList","submitFilterAction","submitFilter","resetFilterAction","resetFilter","onRowClick","item","onMounted","onBeforeUnmount","cancelPermissionGroupList","openBlock","createElementBlock","createVNode","createElementVNode","VSpacer","unref","columnsHidden","_cache","isRef","$event","columnsAll","VDataTableServer","columnsVisible","permissionGroupList","loadingPermissionGroupList","withCtx","VChip","createTextVNode","toDisplayString","_ctx","Fragment","renderSlot","createCommentVNode","VBtn","t","createBlock"],"sources":["../../../../../src/domains/permission/group/components/APermissionGroupDatatable.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { onBeforeUnmount, onMounted, provide } from 'vue'\nimport type { RouteLocationRaw } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\nimport { useDebounceFn } from '@vueuse/core'\nimport ADatatableConfigButton from '@/domains/filters/datatable/components/ADatatableConfigButton.vue'\nimport ADatetime from '@/domains/ui/datetime/components/ADatetime.vue'\nimport ATableCopyIdButton from '@/domains/ui/buttons/table/components/ATableCopyIdButton.vue'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport ADatatableOrdering from '@/domains/filters/datatable/components/ADatatableOrdering.vue'\nimport ADatatablePagination from '@/domains/filters/datatable/components/ADatatablePagination.vue'\nimport { createDatatableColumnsConfig } from '@/domains/filters/datatable/composables/createDatatableColumnsConfig'\nimport { useFilterHelpers } from '@/domains/filters/composables/filterFactory'\nimport { DatatablePaginationKey, FilterConfigKey, FilterDataKey } from '@/domains/filters/utils/filterInjectionKeys'\nimport { usePagination } from '@/domains/api/composables/pagination'\nimport APermissionGroupFilter from '@/domains/permission/group/components/APermissionGroupFilter.vue'\nimport { usePermissionGroupActions } from '@/domains/permission/group/composables/permissionGroupActions'\nimport { PERMISSION_GROUP_ENTITY } from '@/domains/permission/group/api/permissionGroupApi'\nimport {\n permissionGroupFilterStorageKey,\n usePermissionGroupListFilter,\n} from '@/domains/permission/group/filter/permissionGroupFilter'\nimport { SORT_BY_ID } from '@/domains/filters/datatable/utils/datatableColumns'\nimport type { PermissionGroup } from '@/domains/permission/group/types/PermissionGroup'\n\ntype DatatableItem = PermissionGroup\n\nconst props = withDefaults(\n defineProps<{\n client: AxiosClientFn\n /** Backend identity: keys the filter store and the cache, and reaches every api call. */\n system: string\n entity?: string | undefined\n endPoint?: string | undefined\n /** Where a row and the detail button go. The library cannot know an app's typed route names. */\n detailRoute: (permissionGroup: PermissionGroup) => RouteLocationRaw\n editRoute: (permissionGroup: PermissionGroup) => RouteLocationRaw\n /** Already-evaluated ACL, a boolean rather than an `AclValue`. */\n canUpdate?: boolean\n }>(),\n {\n entity: undefined,\n endPoint: undefined,\n canUpdate: false,\n }\n)\n\nconst emit = defineEmits<{\n (e: 'rowClick', permissionGroup: PermissionGroup): void\n}>()\n\n/* eslint-disable vue/no-setup-props-reactivity-loss */\nconst { t } = useI18n()\nconst { filterConfig, filterData } = usePermissionGroupListFilter(props.system)\nprovide(FilterConfigKey, filterConfig)\nprovide(FilterDataKey, filterData)\n\nconst {\n fetchPermissionGroupList,\n cancelPermissionGroupList,\n permissionGroupList,\n loadingPermissionGroupList,\n datatableHiddenColumns,\n} = usePermissionGroupActions({\n client: props.client,\n system: props.system,\n entity: props.entity,\n endPoint: props.endPoint,\n})\n\nconst { resetFilter, submitFilter, loadStoredFilters } = useFilterHelpers(filterData, filterConfig, {\n storeFiltersLocalStorage: permissionGroupFilterStorageKey(props.system),\n})\n\nconst { pagination } = usePagination(SORT_BY_ID)\nprovide(DatatablePaginationKey, pagination)\n\nconst { columnsVisible, columnsAll, columnsHidden } = createDatatableColumnsConfig(\n [\n { key: 'id' },\n { key: 'title' },\n { key: 'description' },\n { key: 'permissions' },\n { key: 'createdAt' },\n { key: 'modifiedAt' },\n ],\n datatableHiddenColumns,\n 'common',\n PERMISSION_GROUP_ENTITY,\n { storeColumnsLocalStorage: `table_common_permissionGroup_${props.system}` }\n)\n/* eslint-enable vue/no-setup-props-reactivity-loss */\n\nconst getList = useDebounceFn(async () => {\n await fetchPermissionGroupList(pagination, filterData, filterConfig)\n})\n\n// Named here, not inline in the template: the template would pass the unwrapped value of the `pagination` ref.\nconst submitFilterAction = () => submitFilter(pagination, getList)\nconst resetFilterAction = () => resetFilter(pagination, getList)\n\nconst onRowClick = (_event: unknown, { item }: { item: DatatableItem }) => {\n if (item.id) emit('rowClick', item)\n}\n\nonMounted(() => {\n loadStoredFilters(pagination, getList)\n})\n\nonBeforeUnmount(() => {\n // Order matters: a pending debounce would otherwise fire after the abort and start a request\n // nothing is left to receive.\n getList.cancel()\n cancelPermissionGroupList()\n})\n\ndefineExpose({\n refresh: getList,\n resetFilter: resetFilterAction,\n submitFilter: submitFilterAction,\n})\n</script>\n\n<template>\n <div>\n <APermissionGroupFilter\n @submit=\"submitFilterAction\"\n @reset=\"resetFilterAction\"\n />\n <div>\n <div class=\"d-flex align-center\">\n <VSpacer />\n <ADatatableOrdering\n variant=\"id\"\n @sort-by-change=\"submitFilterAction\"\n />\n <ADatatableConfigButton\n v-model:columns-hidden=\"columnsHidden\"\n :columns-all=\"columnsAll\"\n />\n </div>\n <VDataTableServer\n class=\"a-datatable\"\n :headers=\"columnsVisible\"\n :items=\"permissionGroupList\"\n :items-length=\"permissionGroupList.length\"\n :loading=\"loadingPermissionGroupList\"\n item-value=\"id\"\n @click:row=\"onRowClick\"\n >\n <template #item.permissions=\"{ item }: { item: DatatableItem }\">\n <VChip>{{ Object.keys(item.permissions).length }}</VChip>\n </template>\n <template #item.createdAt=\"{ item }: { item: DatatableItem }\">\n <ADatetime :date-time=\"item.createdAt\" />\n <!--\n The user chip is per app: its cache, its route, its own `_system`.\n An app without one leaves the slot empty, and then no line break is rendered.\n -->\n <template v-if=\"$slots.createdBy\">\n <br />\n <slot\n :id=\"item.createdBy\"\n name=\"createdBy\"\n />\n </template>\n </template>\n <template #item.modifiedAt=\"{ item }: { item: DatatableItem }\">\n <ADatetime :date-time=\"item.modifiedAt\" />\n <template v-if=\"$slots.modifiedBy\">\n <br />\n <slot\n :id=\"item.modifiedBy\"\n name=\"modifiedBy\"\n />\n </template>\n </template>\n <template #item.actions=\"{ item }: { item: DatatableItem }\">\n <div class=\"d-flex justify-end\">\n <ATableCopyIdButton :id=\"item.id\" />\n <!-- `:to` rather than a click handler, so middle-click and open-in-new-tab work. -->\n <VBtn\n :to=\"detailRoute(item)\"\n class=\"ml-1\"\n icon=\"mdi-information-outline\"\n :aria-label=\"t('common.button.detail')\"\n size=\"x-small\"\n variant=\"text\"\n />\n <VBtn\n v-if=\"canUpdate\"\n :to=\"editRoute(item)\"\n class=\"ml-1\"\n icon=\"mdi-pencil\"\n :aria-label=\"t('common.button.edit')\"\n size=\"x-small\"\n variant=\"text\"\n />\n </div>\n </template>\n <template #bottom>\n <ADatatablePagination @change=\"getList\" />\n </template>\n </VDataTableServer>\n </div>\n </div>\n</template>\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"APermissionGroupDetail.js","names":["_sfc_main","APermissionGroupDetail_vue_vue_type_script_setup_true_lang_default","APermissionGroupDetail_default"],"sources":["../../../../../src/domains/permission/group/components/APermissionGroupDetail.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { storeToRefs } from 'pinia'\nimport { useI18n } from 'vue-i18n'\nimport ACopyText from '@/domains/ui/components/ACopyText.vue'\nimport ARow from '@/domains/ui/components/ARow.vue'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport APermissionEditor from '@/domains/permission/components/APermissionEditor.vue'\nimport { usePermissionGroupOneStore } from '@/domains/permission/group/store/permissionGroupStore'\n\ndefineProps<{\n client: AxiosClientFn\n system: string\n /**\n * Where the grants editor reads the permission config
|
|
1
|
+
{"version":3,"file":"APermissionGroupDetail.js","names":["_sfc_main","APermissionGroupDetail_vue_vue_type_script_setup_true_lang_default","APermissionGroupDetail_default"],"sources":["../../../../../src/domains/permission/group/components/APermissionGroupDetail.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { storeToRefs } from 'pinia'\nimport { useI18n } from 'vue-i18n'\nimport ACopyText from '@/domains/ui/components/ACopyText.vue'\nimport ARow from '@/domains/ui/components/ARow.vue'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport APermissionEditor from '@/domains/permission/components/APermissionEditor.vue'\nimport { usePermissionGroupOneStore } from '@/domains/permission/group/store/permissionGroupStore'\n\ndefineProps<{\n client: AxiosClientFn\n system: string\n /**\n * Where the grants editor reads the permission config. Defaults to `GET /adm/v1/permissions/config`.\n * Deliberately not named `endPoint`: a page once passed the permission-group endpoint as `endPoint`.\n * The editor then fetched the group list as config and crashed, and\n * the per-system config store left user pages broken until reload.\n */\n permissionConfigEndPoint?: string | undefined\n}>()\n\nconst { permissionGroup, loadingPermissionGroup } = storeToRefs(usePermissionGroupOneStore())\n\nconst { t } = useI18n()\n</script>\n\n<template>\n <VRow>\n <VCol\n cols=\"12\"\n sm=\"8\"\n >\n <VRow>\n <VCol cols=\"12\">\n <VCard :loading=\"loadingPermissionGroup\">\n <VCardText>\n <ARow\n :title=\"t('common.permissionGroup.model.title')\"\n :value=\"permissionGroup.title\"\n />\n <ARow\n :title=\"t('common.permissionGroup.model.description')\"\n :value=\"permissionGroup.description\"\n />\n </VCardText>\n </VCard>\n </VCol>\n </VRow>\n <VRow>\n <VCol cols=\"12\">\n <!--\n A group has no resolved permissions of its own. `resolvedPermissions`\n stays undefined so the origin column reads every grant as the group's own.\n -->\n <APermissionEditor\n v-model=\"permissionGroup.permissions\"\n :client=\"client\"\n :system=\"system\"\n :end-point=\"permissionConfigEndPoint\"\n readonly\n />\n </VCol>\n </VRow>\n </VCol>\n <VCol\n cols=\"12\"\n sm=\"4\"\n >\n <ARow :title=\"t('common.permissionGroup.model.id')\">\n <ACopyText :value=\"permissionGroup.id\" />\n </ARow>\n <!-- Created/modified by whom: each app resolves users against its own cache and routes. -->\n <slot\n name=\"tracking\"\n :permission-group=\"permissionGroup\"\n />\n </VCol>\n </VRow>\n</template>\n"],"mappings":""}
|
|
@@ -3,33 +3,32 @@ type __VLS_Props = {
|
|
|
3
3
|
client: AxiosClientFn;
|
|
4
4
|
system: string;
|
|
5
5
|
/**
|
|
6
|
-
* Where the grants editor reads the permission config
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* endpoint passed it here as `endPoint`, the editor fetched the group list as its config and
|
|
11
|
-
* crashed -- and, the config store being keyed by system, left that system's user pages broken
|
|
12
|
-
* until reload. A stray `end-point` now falls through as an attribute and changes nothing.
|
|
6
|
+
* Where the grants editor reads the permission config. Defaults to `GET /adm/v1/permissions/config`.
|
|
7
|
+
* Deliberately not named `endPoint`: a page once passed the permission-group endpoint as `endPoint`.
|
|
8
|
+
* The editor then fetched the group list as config and crashed, and
|
|
9
|
+
* the per-system config store left user pages broken until reload.
|
|
13
10
|
*/
|
|
14
11
|
permissionConfigEndPoint?: string | undefined;
|
|
15
12
|
};
|
|
16
|
-
declare
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
13
|
+
declare const __VLS_template: () => {
|
|
14
|
+
__VLS_Slots: {
|
|
15
|
+
tracking?: (props: {
|
|
16
|
+
permissionGroup: {
|
|
17
|
+
description: string;
|
|
18
|
+
_system: string;
|
|
19
|
+
_resourceName: "permissionGroup";
|
|
20
|
+
id: import('../../../../lib').IntegerId;
|
|
21
|
+
title: string;
|
|
22
|
+
permissions: import('../../../../lib').Permissions;
|
|
23
|
+
createdAt: import('../../../../lib').DatetimeUTC;
|
|
24
|
+
modifiedAt: import('../../../../lib').DatetimeUTC;
|
|
25
|
+
modifiedBy: import('../../../../lib').IntegerIdNullable;
|
|
26
|
+
createdBy: import('../../../../lib').IntegerIdNullable;
|
|
27
|
+
};
|
|
28
|
+
}) => any;
|
|
28
29
|
};
|
|
29
30
|
};
|
|
30
|
-
type __VLS_Slots =
|
|
31
|
-
tracking?: (props: typeof __VLS_81) => any;
|
|
32
|
-
};
|
|
31
|
+
type __VLS_Slots = ReturnType<typeof __VLS_template>['__VLS_Slots'];
|
|
33
32
|
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
34
33
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
35
34
|
declare const _default: typeof __VLS_export;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"APermissionGroupDetail.vue_vue_type_script_setup_true_lang.js","names":["_openBlock","_createBlock","_component_VRow","_withCtx","_createVNode","_component_VCol","_component_VCard","_unref","_component_VCardText","ARow","APermissionEditor","ACopyText","_renderSlot","ARow_default","ACopyText_default","APermissionEditor_default","APermissionGroupDetail_vue_vue_type_script_setup_true_lang_default","storeToRefs","usePermissionGroupOneStore","useI18n","openBlock","createBlock","VRow","withCtx","createVNode","VCol","VCard","unref","loadingPermissionGroup","VCardText","t","permissionGroup","_cache","$event","__props","renderSlot","_ctx"],"sources":["../../../../../src/domains/permission/group/components/APermissionGroupDetail.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { storeToRefs } from 'pinia'\nimport { useI18n } from 'vue-i18n'\nimport ACopyText from '@/domains/ui/components/ACopyText.vue'\nimport ARow from '@/domains/ui/components/ARow.vue'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport APermissionEditor from '@/domains/permission/components/APermissionEditor.vue'\nimport { usePermissionGroupOneStore } from '@/domains/permission/group/store/permissionGroupStore'\n\ndefineProps<{\n client: AxiosClientFn\n system: string\n /**\n * Where the grants editor reads the permission config
|
|
1
|
+
{"version":3,"file":"APermissionGroupDetail.vue_vue_type_script_setup_true_lang.js","names":["_openBlock","_createBlock","_component_VRow","_withCtx","_createVNode","_component_VCol","_component_VCard","_unref","_component_VCardText","ARow","APermissionEditor","ACopyText","_renderSlot","ARow_default","ACopyText_default","APermissionEditor_default","APermissionGroupDetail_vue_vue_type_script_setup_true_lang_default","storeToRefs","usePermissionGroupOneStore","useI18n","openBlock","createBlock","VRow","withCtx","createVNode","VCol","VCard","unref","loadingPermissionGroup","VCardText","t","permissionGroup","_cache","$event","__props","renderSlot","_ctx"],"sources":["../../../../../src/domains/permission/group/components/APermissionGroupDetail.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { storeToRefs } from 'pinia'\nimport { useI18n } from 'vue-i18n'\nimport ACopyText from '@/domains/ui/components/ACopyText.vue'\nimport ARow from '@/domains/ui/components/ARow.vue'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport APermissionEditor from '@/domains/permission/components/APermissionEditor.vue'\nimport { usePermissionGroupOneStore } from '@/domains/permission/group/store/permissionGroupStore'\n\ndefineProps<{\n client: AxiosClientFn\n system: string\n /**\n * Where the grants editor reads the permission config. Defaults to `GET /adm/v1/permissions/config`.\n * Deliberately not named `endPoint`: a page once passed the permission-group endpoint as `endPoint`.\n * The editor then fetched the group list as config and crashed, and\n * the per-system config store left user pages broken until reload.\n */\n permissionConfigEndPoint?: string | undefined\n}>()\n\nconst { permissionGroup, loadingPermissionGroup } = storeToRefs(usePermissionGroupOneStore())\n\nconst { t } = useI18n()\n</script>\n\n<template>\n <VRow>\n <VCol\n cols=\"12\"\n sm=\"8\"\n >\n <VRow>\n <VCol cols=\"12\">\n <VCard :loading=\"loadingPermissionGroup\">\n <VCardText>\n <ARow\n :title=\"t('common.permissionGroup.model.title')\"\n :value=\"permissionGroup.title\"\n />\n <ARow\n :title=\"t('common.permissionGroup.model.description')\"\n :value=\"permissionGroup.description\"\n />\n </VCardText>\n </VCard>\n </VCol>\n </VRow>\n <VRow>\n <VCol cols=\"12\">\n <!--\n A group has no resolved permissions of its own. `resolvedPermissions`\n stays undefined so the origin column reads every grant as the group's own.\n -->\n <APermissionEditor\n v-model=\"permissionGroup.permissions\"\n :client=\"client\"\n :system=\"system\"\n :end-point=\"permissionConfigEndPoint\"\n readonly\n />\n </VCol>\n </VRow>\n </VCol>\n <VCol\n cols=\"12\"\n sm=\"4\"\n >\n <ARow :title=\"t('common.permissionGroup.model.id')\">\n <ACopyText :value=\"permissionGroup.id\" />\n </ARow>\n <!-- Created/modified by whom: each app resolves users against its own cache and routes. -->\n <slot\n name=\"tracking\"\n :permission-group=\"permissionGroup\"\n />\n </VCol>\n </VRow>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;EAqBA,IAAM,EAAE,oBAAiB,8BAA2BiB,EAAYC,EAA2B,CAAC,GAEtF,EAAE,SAAMC,EAAQ;E,kBAIpBnB,EAAA,GAAAC,EAkDOC,GAAA,MAAA;GAjDL,SAAAC,QAmCO,CAnCPC,EAmCOC,GAAA;IAlCL,MAAK;IACL,IAAG;;IAEH,SAAAF,QAeO,CAfPC,EAeOF,GAAA,MAAA;KAdL,SAAAC,QAaO,CAbPC,EAaOC,GAAA,EAbD,MAAK,KAAI,GAAA;MACb,SAAAF,QAWQ,CAXRC,EAWQE,GAAA,EAXA,SAASC,EAAAqB,CAAA,EAAsB,GAAA;OACrC,SAAAzB,QASY,CATZC,EASYI,GAAA,MAAA;QARV,SAAAL,QAGE,CAHFC,EAGEK,GAAA;SAFC,OAAOF,EAAAuB,CAAA,CAAC,CAAA,oCAAA;SACR,OAAOvB,EAAAwB,CAAA,CAAe,CAAC;Q,iCAE1B3B,EAGEK,GAAA;SAFC,OAAOF,EAAAuB,CAAA,CAAC,CAAA,0CAAA;SACR,OAAOvB,EAAAwB,CAAA,CAAe,CAAC;;;;;;;;;I,IAMlC3B,EAcOF,GAAA,MAAA;KAbL,SAAAC,QAYO,CAZPC,EAYOC,GAAA,EAZD,MAAK,KAAI,GAAA;MAKb,SAAAF,QAME,CANFC,EAMEM,GAAA;OALS,YAAAH,EAAAwB,CAAA,CAAe,CAAC;OAAhB,uBAAA,AAAAC,EAAA,QAAA,MAAA,EAAAD,CAAA,CAAe,CAAC,cAAWE;OACnC,QAAQC,EAAA;OACR,QAAQA,EAAA;OACR,aAAWA,EAAA;OACZ,UAAA;;;;;;;;;;;;G,IAKR9B,EAYOC,GAAA;IAXL,MAAK;IACL,IAAG;;IAEH,SAAAF,QAEO,CAFPC,EAEOK,GAAA,EAFA,OAAOF,EAAAuB,CAAA,CAAC,CAAA,iCAAA,E;KACb,SAAA3B,QAAyC,CAAzCC,EAAyCO,GAAA,EAA7B,OAAOJ,EAAAwB,CAAA,CAAe,CAAC,G;;I,kBAGrCnB,EAGEwB,EAAA,QAAA,YAAA,EADC,iBAAkB7B,EAAAwB,CAAA,EAAe,CAAA,C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"APermissionGroupManage.js","names":["_sfc_main","APermissionGroupManage_vue_vue_type_script_setup_true_lang_default","APermissionGroupManage_default"],"sources":["../../../../../src/domains/permission/group/components/APermissionGroupManage.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { storeToRefs } from 'pinia'\nimport AFormTextField from '@/domains/form/components/AFormTextField.vue'\nimport ASystemEntityScope from '@/domains/form/components/ASystemEntityScope.vue'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport APermissionEditor from '@/domains/permission/components/APermissionEditor.vue'\nimport { usePermissionGroupValidation } from '@/domains/permission/group/composables/permissionGroupValidations'\nimport { PERMISSION_GROUP_ENTITY } from '@/domains/permission/group/api/permissionGroupApi'\nimport { usePermissionGroupOneStore } from '@/domains/permission/group/store/permissionGroupStore'\n\ndefineProps<{\n client: AxiosClientFn\n /** Backend identity for the permission config fetch, not the i18n namespace below. */\n system: string\n /**\n * Where the grants editor reads the permission config
|
|
1
|
+
{"version":3,"file":"APermissionGroupManage.js","names":["_sfc_main","APermissionGroupManage_vue_vue_type_script_setup_true_lang_default","APermissionGroupManage_default"],"sources":["../../../../../src/domains/permission/group/components/APermissionGroupManage.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { storeToRefs } from 'pinia'\nimport AFormTextField from '@/domains/form/components/AFormTextField.vue'\nimport ASystemEntityScope from '@/domains/form/components/ASystemEntityScope.vue'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport APermissionEditor from '@/domains/permission/components/APermissionEditor.vue'\nimport { usePermissionGroupValidation } from '@/domains/permission/group/composables/permissionGroupValidations'\nimport { PERMISSION_GROUP_ENTITY } from '@/domains/permission/group/api/permissionGroupApi'\nimport { usePermissionGroupOneStore } from '@/domains/permission/group/store/permissionGroupStore'\n\ndefineProps<{\n client: AxiosClientFn\n /** Backend identity for the permission config fetch, not the i18n namespace below. */\n system: string\n /**\n * Where the grants editor reads the permission config. Defaults to `GET /adm/v1/permissions/config`.\n * Deliberately not named `endPoint`: a page once passed the permission-group endpoint as `endPoint`.\n * The editor then fetched the group list as config and crashed, and\n * the per-system config store left user pages broken until reload.\n */\n permissionConfigEndPoint?: string | undefined\n}>()\n\nconst { permissionGroup } = storeToRefs(usePermissionGroupOneStore())\nconst { v$ } = usePermissionGroupValidation(permissionGroup)\n</script>\n\n<template>\n <!--\n `common` / `permissionGroup` is the library's translation\n namespace for the field labels, the same for every backend.\n The backend identity is passed in `system` above.\n -->\n <ASystemEntityScope\n system=\"common\"\n :subject=\"PERMISSION_GROUP_ENTITY\"\n >\n <VRow>\n <VCol cols=\"12\">\n <VCard>\n <VCardText>\n <AFormTextField\n v-model=\"permissionGroup.title\"\n :v=\"v$.permissionGroup.title\"\n data-cy=\"permissionGroup-title\"\n />\n <AFormTextField\n v-model=\"permissionGroup.description\"\n :v=\"v$.permissionGroup.description\"\n data-cy=\"permissionGroup-description\"\n />\n </VCardText>\n </VCard>\n </VCol>\n <VCol cols=\"12\">\n <APermissionEditor\n v-model=\"permissionGroup.permissions\"\n :client=\"client\"\n :system=\"system\"\n :end-point=\"permissionConfigEndPoint\"\n />\n </VCol>\n <VCol\n v-if=\"$slots.tracking\"\n cols=\"12\"\n >\n <!-- Created/modified by whom: each app resolves users against its own cache and routes. -->\n <slot\n name=\"tracking\"\n :permission-group=\"permissionGroup\"\n />\n </VCol>\n </VRow>\n </ASystemEntityScope>\n</template>\n"],"mappings":""}
|
|
@@ -4,33 +4,32 @@ type __VLS_Props = {
|
|
|
4
4
|
/** Backend identity for the permission config fetch, not the i18n namespace below. */
|
|
5
5
|
system: string;
|
|
6
6
|
/**
|
|
7
|
-
* Where the grants editor reads the permission config
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* endpoint passed it here as `endPoint`, the editor fetched the group list as its config and
|
|
12
|
-
* crashed -- and, the config store being keyed by system, left that system's user pages broken
|
|
13
|
-
* until reload. A stray `end-point` now falls through as an attribute and changes nothing.
|
|
7
|
+
* Where the grants editor reads the permission config. Defaults to `GET /adm/v1/permissions/config`.
|
|
8
|
+
* Deliberately not named `endPoint`: a page once passed the permission-group endpoint as `endPoint`.
|
|
9
|
+
* The editor then fetched the group list as config and crashed, and
|
|
10
|
+
* the per-system config store left user pages broken until reload.
|
|
14
11
|
*/
|
|
15
12
|
permissionConfigEndPoint?: string | undefined;
|
|
16
13
|
};
|
|
17
|
-
declare
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
14
|
+
declare const __VLS_template: () => {
|
|
15
|
+
__VLS_Slots: {
|
|
16
|
+
tracking?: (props: {
|
|
17
|
+
permissionGroup: {
|
|
18
|
+
description: string;
|
|
19
|
+
_system: string;
|
|
20
|
+
_resourceName: "permissionGroup";
|
|
21
|
+
id: import('../../../../lib').IntegerId;
|
|
22
|
+
title: string;
|
|
23
|
+
permissions: import('../../../../lib').Permissions;
|
|
24
|
+
createdAt: import('../../../../lib').DatetimeUTC;
|
|
25
|
+
modifiedAt: import('../../../../lib').DatetimeUTC;
|
|
26
|
+
modifiedBy: import('../../../../lib').IntegerIdNullable;
|
|
27
|
+
createdBy: import('../../../../lib').IntegerIdNullable;
|
|
28
|
+
};
|
|
29
|
+
}) => any;
|
|
29
30
|
};
|
|
30
31
|
};
|
|
31
|
-
type __VLS_Slots =
|
|
32
|
-
tracking?: (props: typeof __VLS_58) => any;
|
|
33
|
-
};
|
|
32
|
+
type __VLS_Slots = ReturnType<typeof __VLS_template>['__VLS_Slots'];
|
|
34
33
|
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
35
34
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
36
35
|
declare const _default: typeof __VLS_export;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"APermissionGroupManage.vue_vue_type_script_setup_true_lang.js","names":["$slots","_openBlock","_createBlock","ASystemEntityScope","_unref","_withCtx","_createVNode","_component_VRow","_component_VCol","_component_VCard","_component_VCardText","AFormTextField","APermissionEditor","_renderSlot","_createCommentVNode","AFormTextField_default","ASystemEntityScope_default","APermissionEditor_default","APermissionGroupManage_vue_vue_type_script_setup_true_lang_default","storeToRefs","usePermissionGroupOneStore","usePermissionGroupValidation","permissionGroup","openBlock","createBlock","unref","PERMISSION_GROUP_ENTITY","withCtx","createVNode","VRow","VCol","VCard","VCardText","_cache","$event","v$","__props","_ctx","renderSlot","createCommentVNode"],"sources":["../../../../../src/domains/permission/group/components/APermissionGroupManage.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { storeToRefs } from 'pinia'\nimport AFormTextField from '@/domains/form/components/AFormTextField.vue'\nimport ASystemEntityScope from '@/domains/form/components/ASystemEntityScope.vue'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport APermissionEditor from '@/domains/permission/components/APermissionEditor.vue'\nimport { usePermissionGroupValidation } from '@/domains/permission/group/composables/permissionGroupValidations'\nimport { PERMISSION_GROUP_ENTITY } from '@/domains/permission/group/api/permissionGroupApi'\nimport { usePermissionGroupOneStore } from '@/domains/permission/group/store/permissionGroupStore'\n\ndefineProps<{\n client: AxiosClientFn\n /** Backend identity for the permission config fetch, not the i18n namespace below. */\n system: string\n /**\n * Where the grants editor reads the permission config
|
|
1
|
+
{"version":3,"file":"APermissionGroupManage.vue_vue_type_script_setup_true_lang.js","names":["$slots","_openBlock","_createBlock","ASystemEntityScope","_unref","_withCtx","_createVNode","_component_VRow","_component_VCol","_component_VCard","_component_VCardText","AFormTextField","APermissionEditor","_renderSlot","_createCommentVNode","AFormTextField_default","ASystemEntityScope_default","APermissionEditor_default","APermissionGroupManage_vue_vue_type_script_setup_true_lang_default","storeToRefs","usePermissionGroupOneStore","usePermissionGroupValidation","permissionGroup","openBlock","createBlock","unref","PERMISSION_GROUP_ENTITY","withCtx","createVNode","VRow","VCol","VCard","VCardText","_cache","$event","v$","__props","_ctx","renderSlot","createCommentVNode"],"sources":["../../../../../src/domains/permission/group/components/APermissionGroupManage.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { storeToRefs } from 'pinia'\nimport AFormTextField from '@/domains/form/components/AFormTextField.vue'\nimport ASystemEntityScope from '@/domains/form/components/ASystemEntityScope.vue'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport APermissionEditor from '@/domains/permission/components/APermissionEditor.vue'\nimport { usePermissionGroupValidation } from '@/domains/permission/group/composables/permissionGroupValidations'\nimport { PERMISSION_GROUP_ENTITY } from '@/domains/permission/group/api/permissionGroupApi'\nimport { usePermissionGroupOneStore } from '@/domains/permission/group/store/permissionGroupStore'\n\ndefineProps<{\n client: AxiosClientFn\n /** Backend identity for the permission config fetch, not the i18n namespace below. */\n system: string\n /**\n * Where the grants editor reads the permission config. Defaults to `GET /adm/v1/permissions/config`.\n * Deliberately not named `endPoint`: a page once passed the permission-group endpoint as `endPoint`.\n * The editor then fetched the group list as config and crashed, and\n * the per-system config store left user pages broken until reload.\n */\n permissionConfigEndPoint?: string | undefined\n}>()\n\nconst { permissionGroup } = storeToRefs(usePermissionGroupOneStore())\nconst { v$ } = usePermissionGroupValidation(permissionGroup)\n</script>\n\n<template>\n <!--\n `common` / `permissionGroup` is the library's translation\n namespace for the field labels, the same for every backend.\n The backend identity is passed in `system` above.\n -->\n <ASystemEntityScope\n system=\"common\"\n :subject=\"PERMISSION_GROUP_ENTITY\"\n >\n <VRow>\n <VCol cols=\"12\">\n <VCard>\n <VCardText>\n <AFormTextField\n v-model=\"permissionGroup.title\"\n :v=\"v$.permissionGroup.title\"\n data-cy=\"permissionGroup-title\"\n />\n <AFormTextField\n v-model=\"permissionGroup.description\"\n :v=\"v$.permissionGroup.description\"\n data-cy=\"permissionGroup-description\"\n />\n </VCardText>\n </VCard>\n </VCol>\n <VCol cols=\"12\">\n <APermissionEditor\n v-model=\"permissionGroup.permissions\"\n :client=\"client\"\n :system=\"system\"\n :end-point=\"permissionConfigEndPoint\"\n />\n </VCol>\n <VCol\n v-if=\"$slots.tracking\"\n cols=\"12\"\n >\n <!-- Created/modified by whom: each app resolves users against its own cache and routes. -->\n <slot\n name=\"tracking\"\n :permission-group=\"permissionGroup\"\n />\n </VCol>\n </VRow>\n </ASystemEntityScope>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;EAuBA,IAAM,EAAE,uBAAoBmB,EAAYC,EAA2B,CAAC,GAC9D,EAAE,UAAOC,EAA6BC,CAAe;E,kBASzDrB,EAAA,GAAAC,EAwCqBC,GAAA;GAvCnB,QAAO;GACN,SAASC,EAAAsB,CAAA;;GAEV,SAAArB,QAmCO,CAnCPC,EAmCOC,GAAA,MAAA;IAlCL,SAAAF,QAeO;KAfPC,EAeOE,GAAA,EAfD,MAAK,KAAI,GAAA;MACb,SAAAH,QAaQ,CAbRC,EAaQG,GAAA,MAAA;OAZN,SAAAJ,QAWY,CAXZC,EAWYI,GAAA,MAAA;QAVV,SAAAL,QAIE,CAJFC,EAIEK,GAAA;SAHS,YAAAP,EAAAkB,CAAA,CAAe,CAAC;SAAhB,uBAAA,AAAAW,EAAA,QAAA,MAAA,EAAAX,CAAA,CAAe,CAAC,QAAKY;SAC7B,GAAG9B,EAAA+B,CAAA,CAAE,CAAC,gBAAgB;SACvB,WAAQ;Q,kCAEV7B,EAIEK,GAAA;SAHS,YAAAP,EAAAkB,CAAA,CAAe,CAAC;SAAhB,uBAAA,AAAAW,EAAA,QAAA,MAAA,EAAAX,CAAA,CAAe,CAAC,cAAWY;SACnC,GAAG9B,EAAA+B,CAAA,CAAE,CAAC,gBAAgB;SACvB,WAAQ;;;;;;;;KAKhB7B,EAOOE,GAAA,EAPD,MAAK,KAAI,GAAA;MACb,SAAAH,QAKE,CALFC,EAKEM,GAAA;OAJS,YAAAR,EAAAkB,CAAA,CAAe,CAAC;OAAhB,uBAAA,AAAAW,EAAA,QAAA,MAAA,EAAAX,CAAA,CAAe,CAAC,cAAWY;OACnC,QAAQE,EAAA;OACR,QAAQA,EAAA;OACR,aAAWA,EAAA;;;;;;;;;KAIRpC,EAAAA,OAAO,YADfC,EAAA,GAAAC,EASOM,GAAA;;MAPL,MAAK;;MAGL,SAAAH,QAGE,CAHFQ,EAGEwB,EAAA,QAAA,YAAA,EADC,iBAAkBjC,EAAAkB,CAAA,EAAe,CAAA,C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cachedPermissionGroups.js","names":["registries","mapFullToMinimal","permissionGroup","mapIdToMinimal","buildRegistry","usePermissionGroupApi","params","defineCached","useFetchPermissionGroupListByIds","execute","ids","useCachedPermissionGroups","resolved","registry","cache","toFetch","fetch","immediateFetch","add","addManual","addManualMinimal","has","get","isLoaded","clear"],"sources":["../../../../../src/domains/permission/group/composables/cachedPermissionGroups.ts"],"sourcesContent":["import { defineCached } from '@/domains/cached/composables/defineCached'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport {\n PERMISSION_GROUP_ENDPOINT,\n PERMISSION_GROUP_ENTITY,\n usePermissionGroupApi,\n} from '@/domains/permission/group/api/permissionGroupApi'\nimport type { IntegerId } from '@/shared/types/common'\nimport type { PermissionGroup, PermissionGroupMinimal } from '@/domains/permission/group/types/PermissionGroup'\n\nexport interface CachedPermissionGroupsParams {\n client: AxiosClientFn\n system: string\n entity?: string\n endPoint?: string\n}\n\ntype Registry = ReturnType<typeof buildRegistry>\n\n/**\n * One cache per system
|
|
1
|
+
{"version":3,"file":"cachedPermissionGroups.js","names":["registries","mapFullToMinimal","permissionGroup","mapIdToMinimal","buildRegistry","usePermissionGroupApi","params","defineCached","useFetchPermissionGroupListByIds","execute","ids","useCachedPermissionGroups","resolved","registry","cache","toFetch","fetch","immediateFetch","add","addManual","addManualMinimal","has","get","isLoaded","clear"],"sources":["../../../../../src/domains/permission/group/composables/cachedPermissionGroups.ts"],"sourcesContent":["import { defineCached } from '@/domains/cached/composables/defineCached'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport {\n PERMISSION_GROUP_ENDPOINT,\n PERMISSION_GROUP_ENTITY,\n usePermissionGroupApi,\n} from '@/domains/permission/group/api/permissionGroupApi'\nimport type { IntegerId } from '@/shared/types/common'\nimport type { PermissionGroup, PermissionGroupMinimal } from '@/domains/permission/group/types/PermissionGroup'\n\nexport interface CachedPermissionGroupsParams {\n client: AxiosClientFn\n system: string\n entity?: string\n endPoint?: string\n}\n\ntype Registry = ReturnType<typeof buildRegistry>\n\n/**\n * One cache per system. Permission group ids are per system: group 42 in weather and in blog are different rows.\n * A cache keyed by id alone shows the wrong title when a cross-system page renders chips for both.\n */\nconst registries = new Map<string, Registry>()\n\nconst mapFullToMinimal = (permissionGroup: PermissionGroup): PermissionGroupMinimal => ({\n id: permissionGroup.id,\n title: permissionGroup.title,\n permissions: permissionGroup.permissions,\n})\n\nconst mapIdToMinimal = (id: IntegerId): PermissionGroupMinimal => ({\n id,\n title: '',\n permissions: {},\n})\n\nconst buildRegistry = (params: Required<CachedPermissionGroupsParams>) => {\n const { useFetchPermissionGroupListByIds } = usePermissionGroupApi(params)\n\n return defineCached<IntegerId, PermissionGroup, PermissionGroupMinimal>(\n mapFullToMinimal,\n mapIdToMinimal,\n async (ids: IntegerId[]) => {\n const { execute } = useFetchPermissionGroupListByIds()\n return execute(ids)\n }\n )\n}\n\nexport const useCachedPermissionGroups = (params: CachedPermissionGroupsParams) => {\n const resolved = {\n client: params.client,\n system: params.system,\n entity: params.entity ?? PERMISSION_GROUP_ENTITY,\n endPoint: params.endPoint ?? PERMISSION_GROUP_ENDPOINT,\n }\n\n let registry = registries.get(resolved.system)\n if (!registry) {\n registry = buildRegistry(resolved)\n registries.set(resolved.system, registry)\n }\n\n const { cache, toFetch, fetch, immediateFetch, add, addManual, addManualMinimal, has, get, isLoaded, clear } =\n registry\n\n return {\n cachedPermissionGroups: cache,\n toFetchCachedPermissionGroups: toFetch,\n fetchCachedPermissionGroups: fetch,\n immediateFetchCachedPermissionGroups: immediateFetch,\n addToCachedPermissionGroups: add,\n addManualToCachedPermissionGroups: addManual,\n addManualMinimalToCachedPermissionGroups: addManualMinimal,\n hasCachedPermissionGroup: has,\n getCachedPermissionGroup: get,\n isLoadedCachedPermissionGroup: isLoaded,\n clearCachedPermissionGroups: clear,\n }\n}\n\n/** Test seam. Registries are module state and would otherwise leak between cases. */\nexport const resetCachedPermissionGroupRegistries = () => {\n registries.clear()\n}\n"],"mappings":";;;AAuBA,IAAMA,oBAAa,IAAI,IAAsB,GAEvCC,KAAoB,OAA8D;CACtF,IAAIC,EAAgB;CACpB,OAAOA,EAAgB;CACvB,aAAaA,EAAgB;AAC/B,IAEMC,KAAkB,OAA2C;CACjE;CACA,OAAO;CACP,aAAa,CAAC;AAChB,IAEMC,KAAiB,MAAmD;CACxE,IAAM,EAAE,wCAAqCC,EAAsBC,CAAM;CAEzE,OAAOC,EACLN,GACAE,GACA,OAAO,MAAqB;EAC1B,IAAM,EAAE,eAAYK,EAAiC;EACrD,OAAOC,EAAQC,CAAG;CACpB,CACF;AACF,GAEaC,KAA6B,MAAyC;CACjF,IAAMC,IAAW;EACf,QAAQN,EAAO;EACf,QAAQA,EAAO;EACf,QAAQA,EAAO,UAAA;EACf,UAAUA,EAAO,YAAA;CACnB,GAEIO,IAAWb,EAAW,IAAIY,EAAS,MAAM;CAC7C,AAAKC,MACH,IAAWT,EAAcQ,CAAQ,GACjCZ,EAAW,IAAIY,EAAS,QAAQC,CAAQ;CAG1C,IAAM,EAAE,UAAO,YAAS,UAAO,mBAAgB,QAAK,cAAW,qBAAkB,QAAK,QAAK,aAAU,aACnGA;CAEF,OAAO;EACL,wBAAwBC;EACxB,+BAA+BC;EAC/B,6BAA6BC;EAC7B,sCAAsCC;EACtC,6BAA6BC;EAC7B,mCAAmCC;EACnC,0CAA0CC;EAC1C,0BAA0BC;EAC1B,0BAA0BC;EAC1B,+BAA+BC;EAC/B,6BAA6BC;CAC/B;AACF"}
|
|
@@ -10,20 +10,18 @@ export interface PermissionGroupActionsParams {
|
|
|
10
10
|
system: string;
|
|
11
11
|
entity?: string;
|
|
12
12
|
/**
|
|
13
|
-
* i18n scope for
|
|
14
|
-
*
|
|
15
|
-
* the pair
|
|
16
|
-
* `
|
|
17
|
-
* system fields as well passes its own pair, and keeps the base keys beside them.
|
|
13
|
+
* i18n scope for server-side validation errors, separate from which backend answered.
|
|
14
|
+
* `AnzuApiValidationError` builds `<system>.<entity>.model.<field>`
|
|
15
|
+
* keys, so the pair must name the namespace of the labels.
|
|
16
|
+
* Defaults to `common` + `permissionGroup`. An admin whose form has extra system fields passes its own pair.
|
|
18
17
|
*/
|
|
19
18
|
validationSystem?: string;
|
|
20
19
|
validationEntity?: string;
|
|
21
20
|
endPoint?: string;
|
|
22
21
|
}
|
|
23
22
|
/**
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
* -- fine for one list on one backend, wrong for a library a page may instantiate twice.
|
|
23
|
+
* All state below is per instance. Module-scope loading flags and
|
|
24
|
+
* hidden columns would be shared when a page instantiates this twice.
|
|
27
25
|
*/
|
|
28
26
|
export declare const usePermissionGroupActions: (params: PermissionGroupActionsParams) => {
|
|
29
27
|
datatableHiddenColumns: Ref<string[], string[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissionGroupActions.js","names":["useVuelidate","fetchGeneration","usePermissionGroupActions","PERMISSION_GROUP_ENTITY","PERMISSION_GROUP_ENDPOINT","params","useAlerts","usePermissionGroupApi","executeList","abortList","useFetchPermissionGroupList","executeFetchByIds","useFetchPermissionGroupListByIds","datatableHiddenColumns","ref","permissionGroupList","loadingPermissionGroupList","listGeneration","fetchPermissionGroupList","token","items","pagination","filterData","filterConfig","error","showErrorsDefault","cancelPermissionGroupList","permissionGroupOneStore","usePermissionGroupOneStore","storeToRefs","fetchPermissionGroup","generation","useFetchPermissionGroup","res","execute","options","loadingDeletePermissionGroup","deletePermissionGroup","useDeletePermissionGroup","showRecordWas","v$","loadingUpdatePermissionGroup","updatePermissionGroup","showValidationError","AnzuFatalError","useUpdatePermissionGroup","syncUserAndTimeTracking","loadingCreatePermissionGroup","createPermissionGroup","useCreatePermissionGroup","created","useCachedPermissionGroups","permissionGroups","addManualToCachedPermissionGroups","item","ids"],"sources":["../../../../../src/domains/permission/group/composables/permissionGroupActions.ts"],"sourcesContent":["import { ref, type Ref } from 'vue'\nimport { storeToRefs } from 'pinia'\nimport useVuelidate from '@vuelidate/core'\nimport { useAlerts } from '@/domains/system/composables/alerts'\nimport { handleRecordLoadError } from '@/domains/system/composables/recordPage'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport type { FilterConfig, FilterData } from '@/domains/filters/composables/filterFactory'\nimport type { Pagination } from '@/domains/api/composables/pagination'\nimport { useCachedPermissionGroups } from '@/domains/permission/group/composables/cachedPermissionGroups'\nimport {\n PERMISSION_GROUP_ENDPOINT,\n PERMISSION_GROUP_ENTITY,\n usePermissionGroupApi,\n} from '@/domains/permission/group/api/permissionGroupApi'\nimport { usePermissionGroupOneStore } from '@/domains/permission/group/store/permissionGroupStore'\nimport type { IntegerId } from '@/shared/types/common'\nimport type { PermissionGroup } from '@/domains/permission/group/types/PermissionGroup'\nimport type { ValueObjectOption } from '@/shared/types/ValueObject'\nimport { AnzuFatalError } from '@/shared/error/AnzuFatalError'\nimport { syncUserAndTimeTracking } from '@/shared/utils/userAndTimeTracking'\n\n// The record store is shared by every page, and a request is not aborted when its page goes: only the\n// latest fetch may write the record, or reset it on failure. A store reset (a page's teardown, a create\n// page's mount) counts as newer too.\nlet fetchGeneration = 0\n\nexport interface PermissionGroupActionsParams {\n client: AxiosClientFn\n system: string\n entity?: string\n /**\n * i18n scope for a server-side validation failure, which is a different question from which\n * backend answered. `AnzuApiValidationError` builds `<system>.<entity>.model.<field>` keys, so\n * the pair has to name the namespace the *labels* live under. It defaults to `common` +\n * `permissionGroup`, which is where the shared form's own fields are; an admin whose form carries\n * system fields as well passes its own pair, and keeps the base keys beside them.\n */\n validationSystem?: string\n validationEntity?: string\n endPoint?: string\n}\n\n/**\n * Everything below is per instance. The admins kept `listLoading`, `detailLoading` and\n * `datatableHiddenColumns` at module scope, which is a single set of flags shared by every caller\n * -- fine for one list on one backend, wrong for a library a page may instantiate twice.\n */\nexport const usePermissionGroupActions = (params: PermissionGroupActionsParams) => {\n const { client, system, entity = PERMISSION_GROUP_ENTITY, endPoint = PERMISSION_GROUP_ENDPOINT } = params\n\n const { showValidationError, showRecordWas, showErrorsDefault } = useAlerts()\n const {\n useFetchPermissionGroupList,\n useFetchPermissionGroup,\n useDeletePermissionGroup,\n useUpdatePermissionGroup,\n useCreatePermissionGroup,\n useFetchPermissionGroupListByIds,\n } = usePermissionGroupApi({\n client,\n system,\n entity,\n validationSystem: params.validationSystem,\n validationEntity: params.validationEntity,\n endPoint,\n })\n\n const { execute: executeList, abort: abortList } = useFetchPermissionGroupList()\n const { execute: executeFetchByIds } = useFetchPermissionGroupListByIds()\n\n const datatableHiddenColumns = ref<Array<string>>([])\n const permissionGroupList = ref<PermissionGroup[]>([])\n const loadingPermissionGroupList = ref(false)\n\n // Same reason as in `useLogListActions`: axios rejects an aborted request with `CanceledError`,\n // which reaches the catch like any other failure. Without a token the user gets an error alert\n // for a navigation they performed themselves.\n let listGeneration = 0\n\n const fetchPermissionGroupList = async (\n pagination: Ref<Pagination>,\n filterData: FilterData<any>,\n filterConfig: FilterConfig<any>\n ) => {\n const token = ++listGeneration\n loadingPermissionGroupList.value = true\n try {\n const items = await executeList(pagination, filterData, filterConfig)\n if (token !== listGeneration) return\n permissionGroupList.value = items\n } catch (error) {\n if (token !== listGeneration) return\n permissionGroupList.value = []\n showErrorsDefault(error)\n } finally {\n if (token === listGeneration) loadingPermissionGroupList.value = false\n }\n }\n\n const cancelPermissionGroupList = () => {\n listGeneration++\n abortList()\n }\n\n const permissionGroupOneStore = usePermissionGroupOneStore()\n const { permissionGroup, loadingPermissionGroup } = storeToRefs(permissionGroupOneStore)\n\n /**\n * `true` once loaded, `false` when the page should leave (`handleRecordLoadError`), `undefined`\n * when a newer fetch took over or the request was stopped.\n */\n const fetchPermissionGroup = async (\n id: IntegerId,\n options: { signal?: AbortSignal } = {}\n ): Promise<boolean | undefined> => {\n const generation = ++fetchGeneration\n permissionGroupOneStore.setLoadingPermissionGroup(true)\n try {\n const { execute } = useFetchPermissionGroup()\n const res = await execute({ urlParams: { id }, signal: options.signal })\n if (generation !== fetchGeneration) return undefined\n permissionGroupOneStore.setPermissionGroup(res)\n return true\n } catch (error) {\n // A newer fetch owns the record now, possibly another page's: leave it alone.\n if (generation !== fetchGeneration) return undefined\n // Not the previous record: Save would PUT it back to its own id from a page opened for another.\n permissionGroupOneStore.reset()\n return handleRecordLoadError(error) ? false : undefined\n } finally {\n if (generation === fetchGeneration) permissionGroupOneStore.setLoadingPermissionGroup(false)\n }\n }\n\n const loadingDeletePermissionGroup = ref(false)\n /** Resolves true when the row is gone, so the caller can decide where to navigate. */\n const deletePermissionGroup = async (id: IntegerId): Promise<boolean> => {\n try {\n loadingDeletePermissionGroup.value = true\n const { execute } = useDeletePermissionGroup()\n await execute({ urlParams: { id } })\n showRecordWas('deleted')\n return true\n } catch (error) {\n showErrorsDefault(error)\n return false\n } finally {\n loadingDeletePermissionGroup.value = false\n }\n }\n\n const v$ = useVuelidate()\n\n const loadingUpdatePermissionGroup = ref(false)\n const updatePermissionGroup = async (): Promise<boolean> => {\n try {\n loadingUpdatePermissionGroup.value = true\n v$.value.$touch()\n if (v$.value.$invalid) {\n showValidationError()\n return false\n }\n const id = permissionGroupOneStore.permissionGroup.id\n // The factory's blank record has id 0: after a failed fetch there is nothing to update.\n if (!id) {\n throw new AnzuFatalError(undefined, '[usePermissionGroupActions] update called on a record with no id.')\n }\n const { execute } = useUpdatePermissionGroup()\n const res = await execute({\n urlParams: { id: permissionGroupOneStore.permissionGroup.id },\n body: permissionGroupOneStore.permissionGroup,\n })\n syncUserAndTimeTracking(permissionGroupOneStore.permissionGroup, res)\n showRecordWas('updated')\n return true\n } catch (error) {\n showErrorsDefault(error)\n return false\n } finally {\n loadingUpdatePermissionGroup.value = false\n }\n }\n\n const loadingCreatePermissionGroup = ref(false)\n /** Resolves the created row, so the caller can route to its detail; null on failure. */\n const createPermissionGroup = async (): Promise<PermissionGroup | null> => {\n try {\n loadingCreatePermissionGroup.value = true\n v$.value.$touch()\n if (v$.value.$invalid) {\n showValidationError()\n return null\n }\n const { execute } = useCreatePermissionGroup()\n const created = await execute({ body: permissionGroupOneStore.permissionGroup })\n showRecordWas('created')\n return created\n } catch (error) {\n showErrorsDefault(error)\n return null\n } finally {\n loadingCreatePermissionGroup.value = false\n }\n }\n\n const { addManualToCachedPermissionGroups } = useCachedPermissionGroups({ client, system, entity, endPoint })\n\n const fetchPermissionGroupOptions = async (\n pagination: Ref<Pagination>,\n filterData: FilterData<any>,\n filterConfig: FilterConfig<any>\n ): Promise<ValueObjectOption<IntegerId>[]> => {\n const permissionGroups = await executeList(pagination, filterData, filterConfig)\n permissionGroups.forEach((item) => addManualToCachedPermissionGroups(item))\n\n return permissionGroups.map((item) => ({ title: item.title, value: item.id }))\n }\n\n const fetchPermissionGroupOptionsByIds = async (ids: IntegerId[]): Promise<ValueObjectOption<IntegerId>[]> => {\n const permissionGroups = await executeFetchByIds(ids)\n permissionGroups.forEach((item) => addManualToCachedPermissionGroups(item))\n\n return permissionGroups.map((item) => ({ title: item.title, value: item.id }))\n }\n\n return {\n datatableHiddenColumns,\n permissionGroupList,\n loadingPermissionGroupList,\n fetchPermissionGroupList,\n cancelPermissionGroupList,\n permissionGroup,\n loadingPermissionGroup,\n fetchPermissionGroup,\n createPermissionGroup,\n updatePermissionGroup,\n deletePermissionGroup,\n loadingCreatePermissionGroup,\n loadingUpdatePermissionGroup,\n loadingDeletePermissionGroup,\n fetchPermissionGroupOptions,\n fetchPermissionGroupOptionsByIds,\n resetPermissionGroupStore: () => {\n fetchGeneration++\n permissionGroupOneStore.reset()\n },\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"permissionGroupActions.js","names":["useVuelidate","fetchGeneration","usePermissionGroupActions","PERMISSION_GROUP_ENTITY","PERMISSION_GROUP_ENDPOINT","params","useAlerts","usePermissionGroupApi","executeList","abortList","useFetchPermissionGroupList","executeFetchByIds","useFetchPermissionGroupListByIds","datatableHiddenColumns","ref","permissionGroupList","loadingPermissionGroupList","listGeneration","fetchPermissionGroupList","token","items","pagination","filterData","filterConfig","error","showErrorsDefault","cancelPermissionGroupList","permissionGroupOneStore","usePermissionGroupOneStore","storeToRefs","fetchPermissionGroup","generation","useFetchPermissionGroup","res","execute","options","loadingDeletePermissionGroup","deletePermissionGroup","useDeletePermissionGroup","showRecordWas","v$","loadingUpdatePermissionGroup","updatePermissionGroup","showValidationError","AnzuFatalError","useUpdatePermissionGroup","syncUserAndTimeTracking","loadingCreatePermissionGroup","createPermissionGroup","useCreatePermissionGroup","created","useCachedPermissionGroups","permissionGroups","addManualToCachedPermissionGroups","item","ids"],"sources":["../../../../../src/domains/permission/group/composables/permissionGroupActions.ts"],"sourcesContent":["import { ref, type Ref } from 'vue'\nimport { storeToRefs } from 'pinia'\nimport useVuelidate from '@vuelidate/core'\nimport { useAlerts } from '@/domains/system/composables/alerts'\nimport { handleRecordLoadError } from '@/domains/system/composables/recordPage'\nimport type { AxiosClientFn } from '@/domains/api/utils/client'\nimport type { FilterConfig, FilterData } from '@/domains/filters/composables/filterFactory'\nimport type { Pagination } from '@/domains/api/composables/pagination'\nimport { useCachedPermissionGroups } from '@/domains/permission/group/composables/cachedPermissionGroups'\nimport {\n PERMISSION_GROUP_ENDPOINT,\n PERMISSION_GROUP_ENTITY,\n usePermissionGroupApi,\n} from '@/domains/permission/group/api/permissionGroupApi'\nimport { usePermissionGroupOneStore } from '@/domains/permission/group/store/permissionGroupStore'\nimport type { IntegerId } from '@/shared/types/common'\nimport type { PermissionGroup } from '@/domains/permission/group/types/PermissionGroup'\nimport type { ValueObjectOption } from '@/shared/types/ValueObject'\nimport { AnzuFatalError } from '@/shared/error/AnzuFatalError'\nimport { syncUserAndTimeTracking } from '@/shared/utils/userAndTimeTracking'\n\n// The record store is shared by every page, and a request is not aborted when its page goes.\n// Only the latest fetch may write the record or reset it on failure. A\n// store reset (page teardown, create page mount) also counts as newer.\nlet fetchGeneration = 0\n\nexport interface PermissionGroupActionsParams {\n client: AxiosClientFn\n system: string\n entity?: string\n /**\n * i18n scope for server-side validation errors, separate from which backend answered.\n * `AnzuApiValidationError` builds `<system>.<entity>.model.<field>`\n * keys, so the pair must name the namespace of the labels.\n * Defaults to `common` + `permissionGroup`. An admin whose form has extra system fields passes its own pair.\n */\n validationSystem?: string\n validationEntity?: string\n endPoint?: string\n}\n\n/**\n * All state below is per instance. Module-scope loading flags and\n * hidden columns would be shared when a page instantiates this twice.\n */\nexport const usePermissionGroupActions = (params: PermissionGroupActionsParams) => {\n const { client, system, entity = PERMISSION_GROUP_ENTITY, endPoint = PERMISSION_GROUP_ENDPOINT } = params\n\n const { showValidationError, showRecordWas, showErrorsDefault } = useAlerts()\n const {\n useFetchPermissionGroupList,\n useFetchPermissionGroup,\n useDeletePermissionGroup,\n useUpdatePermissionGroup,\n useCreatePermissionGroup,\n useFetchPermissionGroupListByIds,\n } = usePermissionGroupApi({\n client,\n system,\n entity,\n validationSystem: params.validationSystem,\n validationEntity: params.validationEntity,\n endPoint,\n })\n\n const { execute: executeList, abort: abortList } = useFetchPermissionGroupList()\n const { execute: executeFetchByIds } = useFetchPermissionGroupListByIds()\n\n const datatableHiddenColumns = ref<Array<string>>([])\n const permissionGroupList = ref<PermissionGroup[]>([])\n const loadingPermissionGroupList = ref(false)\n\n // axios rejects an aborted request with `CanceledError`, which reaches the catch like any other failure.\n // Without the generation token the user gets an error alert for\n // their own navigation. Same reason as in `useLogListActions`.\n let listGeneration = 0\n\n const fetchPermissionGroupList = async (\n pagination: Ref<Pagination>,\n filterData: FilterData<any>,\n filterConfig: FilterConfig<any>\n ) => {\n const token = ++listGeneration\n loadingPermissionGroupList.value = true\n try {\n const items = await executeList(pagination, filterData, filterConfig)\n if (token !== listGeneration) return\n permissionGroupList.value = items\n } catch (error) {\n if (token !== listGeneration) return\n permissionGroupList.value = []\n showErrorsDefault(error)\n } finally {\n if (token === listGeneration) loadingPermissionGroupList.value = false\n }\n }\n\n const cancelPermissionGroupList = () => {\n listGeneration++\n abortList()\n }\n\n const permissionGroupOneStore = usePermissionGroupOneStore()\n const { permissionGroup, loadingPermissionGroup } = storeToRefs(permissionGroupOneStore)\n\n /**\n * `true` once loaded, `false` when the page should leave (`handleRecordLoadError`), `undefined`\n * when a newer fetch took over or the request was stopped.\n */\n const fetchPermissionGroup = async (\n id: IntegerId,\n options: { signal?: AbortSignal } = {}\n ): Promise<boolean | undefined> => {\n const generation = ++fetchGeneration\n permissionGroupOneStore.setLoadingPermissionGroup(true)\n try {\n const { execute } = useFetchPermissionGroup()\n const res = await execute({ urlParams: { id }, signal: options.signal })\n if (generation !== fetchGeneration) return undefined\n permissionGroupOneStore.setPermissionGroup(res)\n return true\n } catch (error) {\n // A newer fetch owns the record now, possibly another page's: leave it alone.\n if (generation !== fetchGeneration) return undefined\n // Not the previous record: Save would PUT it back to its own id from a page opened for another.\n permissionGroupOneStore.reset()\n return handleRecordLoadError(error) ? false : undefined\n } finally {\n if (generation === fetchGeneration) permissionGroupOneStore.setLoadingPermissionGroup(false)\n }\n }\n\n const loadingDeletePermissionGroup = ref(false)\n /** Resolves true when the row is gone, so the caller can decide where to navigate. */\n const deletePermissionGroup = async (id: IntegerId): Promise<boolean> => {\n try {\n loadingDeletePermissionGroup.value = true\n const { execute } = useDeletePermissionGroup()\n await execute({ urlParams: { id } })\n showRecordWas('deleted')\n return true\n } catch (error) {\n showErrorsDefault(error)\n return false\n } finally {\n loadingDeletePermissionGroup.value = false\n }\n }\n\n const v$ = useVuelidate()\n\n const loadingUpdatePermissionGroup = ref(false)\n const updatePermissionGroup = async (): Promise<boolean> => {\n try {\n loadingUpdatePermissionGroup.value = true\n v$.value.$touch()\n if (v$.value.$invalid) {\n showValidationError()\n return false\n }\n const id = permissionGroupOneStore.permissionGroup.id\n // The factory's blank record has id 0: after a failed fetch there is nothing to update.\n if (!id) {\n throw new AnzuFatalError(undefined, '[usePermissionGroupActions] update called on a record with no id.')\n }\n const { execute } = useUpdatePermissionGroup()\n const res = await execute({\n urlParams: { id: permissionGroupOneStore.permissionGroup.id },\n body: permissionGroupOneStore.permissionGroup,\n })\n syncUserAndTimeTracking(permissionGroupOneStore.permissionGroup, res)\n showRecordWas('updated')\n return true\n } catch (error) {\n showErrorsDefault(error)\n return false\n } finally {\n loadingUpdatePermissionGroup.value = false\n }\n }\n\n const loadingCreatePermissionGroup = ref(false)\n /** Resolves the created row, so the caller can route to its detail; null on failure. */\n const createPermissionGroup = async (): Promise<PermissionGroup | null> => {\n try {\n loadingCreatePermissionGroup.value = true\n v$.value.$touch()\n if (v$.value.$invalid) {\n showValidationError()\n return null\n }\n const { execute } = useCreatePermissionGroup()\n const created = await execute({ body: permissionGroupOneStore.permissionGroup })\n showRecordWas('created')\n return created\n } catch (error) {\n showErrorsDefault(error)\n return null\n } finally {\n loadingCreatePermissionGroup.value = false\n }\n }\n\n const { addManualToCachedPermissionGroups } = useCachedPermissionGroups({ client, system, entity, endPoint })\n\n const fetchPermissionGroupOptions = async (\n pagination: Ref<Pagination>,\n filterData: FilterData<any>,\n filterConfig: FilterConfig<any>\n ): Promise<ValueObjectOption<IntegerId>[]> => {\n const permissionGroups = await executeList(pagination, filterData, filterConfig)\n permissionGroups.forEach((item) => addManualToCachedPermissionGroups(item))\n\n return permissionGroups.map((item) => ({ title: item.title, value: item.id }))\n }\n\n const fetchPermissionGroupOptionsByIds = async (ids: IntegerId[]): Promise<ValueObjectOption<IntegerId>[]> => {\n const permissionGroups = await executeFetchByIds(ids)\n permissionGroups.forEach((item) => addManualToCachedPermissionGroups(item))\n\n return permissionGroups.map((item) => ({ title: item.title, value: item.id }))\n }\n\n return {\n datatableHiddenColumns,\n permissionGroupList,\n loadingPermissionGroupList,\n fetchPermissionGroupList,\n cancelPermissionGroupList,\n permissionGroup,\n loadingPermissionGroup,\n fetchPermissionGroup,\n createPermissionGroup,\n updatePermissionGroup,\n deletePermissionGroup,\n loadingCreatePermissionGroup,\n loadingUpdatePermissionGroup,\n loadingDeletePermissionGroup,\n fetchPermissionGroupOptions,\n fetchPermissionGroupOptionsByIds,\n resetPermissionGroupStore: () => {\n fetchGeneration++\n permissionGroupOneStore.reset()\n },\n }\n}\n"],"mappings":"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"}
|