@authup/client-web-kit 1.0.0-beta.35 → 1.0.0-beta.37
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/components/entities/client/AClientForm.vue.d.ts +29 -5
- package/dist/components/entities/client/AClientForm.vue.d.ts.map +1 -1
- package/dist/components/entities/client-permission/AClientPermissionAssignment.vue.d.ts +87 -0
- package/dist/components/entities/client-permission/AClientPermissionAssignment.vue.d.ts.map +1 -0
- package/dist/components/entities/client-permission/AClientPermissionAssignments.vue.d.ts +178 -0
- package/dist/components/entities/client-permission/AClientPermissionAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/client-permission/index.d.ts +2 -2
- package/dist/components/entities/client-permission/index.d.ts.map +1 -1
- package/dist/components/entities/client-role/AClientRoleAssignment.vue.d.ts +56 -0
- package/dist/components/entities/client-role/AClientRoleAssignment.vue.d.ts.map +1 -0
- package/dist/components/entities/client-role/AClientRoleAssignments.vue.d.ts +155 -0
- package/dist/components/entities/client-role/AClientRoleAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/client-role/index.d.ts +2 -2
- package/dist/components/entities/client-role/index.d.ts.map +1 -1
- package/dist/components/entities/client-scope/AClientScopeAssignment.vue.d.ts +56 -0
- package/dist/components/entities/client-scope/AClientScopeAssignment.vue.d.ts.map +1 -0
- package/dist/components/entities/client-scope/AClientScopeAssignments.vue.d.ts +148 -0
- package/dist/components/entities/client-scope/AClientScopeAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/client-scope/index.d.ts +2 -2
- package/dist/components/entities/client-scope/index.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderIcon.vue.d.ts +47 -0
- package/dist/components/entities/identity-provider/AIdentityProviderIcon.vue.d.ts.map +1 -0
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2EndpointFields.vue.d.ts +200 -0
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2EndpointFields.vue.d.ts.map +1 -0
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2Form.d.ts +1 -1
- package/dist/components/entities/identity-provider/index.d.ts +1 -1
- package/dist/components/entities/identity-provider/index.d.ts.map +1 -1
- package/dist/components/entities/identity-provider-role/AIdentityProviderRoleAssignment.vue.d.ts +260 -0
- package/dist/components/entities/identity-provider-role/AIdentityProviderRoleAssignment.vue.d.ts.map +1 -0
- package/dist/components/entities/identity-provider-role/AIdentityProviderRoleAssignments.vue.d.ts +350 -0
- package/dist/components/entities/identity-provider-role/AIdentityProviderRoleAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/identity-provider-role/index.d.ts +2 -2
- package/dist/components/entities/identity-provider-role/index.d.ts.map +1 -1
- package/dist/components/entities/permission-client/APermissionClientAssignments.vue.d.ts +178 -0
- package/dist/components/entities/permission-client/APermissionClientAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/permission-client/index.d.ts +1 -1
- package/dist/components/entities/permission-client/index.d.ts.map +1 -1
- package/dist/components/entities/permission-policy/APermissionPolicyAssignment.vue.d.ts +56 -0
- package/dist/components/entities/permission-policy/APermissionPolicyAssignment.vue.d.ts.map +1 -0
- package/dist/components/entities/permission-policy/APermissionPolicyAssignments.vue.d.ts +357 -0
- package/dist/components/entities/permission-policy/APermissionPolicyAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/permission-policy/index.d.ts +2 -2
- package/dist/components/entities/permission-policy/index.d.ts.map +1 -1
- package/dist/components/entities/permission-policy-binding/APermissionPolicyBindingButton.d.ts.map +1 -1
- package/dist/components/entities/permission-robot/APermissionRobotAssignments.vue.d.ts +178 -0
- package/dist/components/entities/permission-robot/APermissionRobotAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/permission-robot/index.d.ts +1 -1
- package/dist/components/entities/permission-robot/index.d.ts.map +1 -1
- package/dist/components/entities/permission-role/APermissionRoleAssignments.vue.d.ts +178 -0
- package/dist/components/entities/permission-role/APermissionRoleAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/permission-role/index.d.ts +1 -1
- package/dist/components/entities/permission-role/index.d.ts.map +1 -1
- package/dist/components/entities/permission-user/APermissionUserAssignments.vue.d.ts +178 -0
- package/dist/components/entities/permission-user/APermissionUserAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/permission-user/index.d.ts +1 -1
- package/dist/components/entities/permission-user/index.d.ts.map +1 -1
- package/dist/components/entities/policy/APolicyDetailNav.vue.d.ts +18 -0
- package/dist/components/entities/policy/APolicyDetailNav.vue.d.ts.map +1 -0
- package/dist/components/entities/policy/APolicyInlineInfo.vue.d.ts +49 -0
- package/dist/components/entities/policy/APolicyInlineInfo.vue.d.ts.map +1 -0
- package/dist/components/entities/policy/{APolicyPicker.d.ts → APolicyPicker.vue.d.ts} +4 -2
- package/dist/components/entities/policy/APolicyPicker.vue.d.ts.map +1 -0
- package/dist/components/entities/policy/APolicySummary.vue.d.ts +30 -0
- package/dist/components/entities/policy/APolicySummary.vue.d.ts.map +1 -0
- package/dist/components/entities/policy/APolicyTypeBadge.vue.d.ts +16 -0
- package/dist/components/entities/policy/APolicyTypeBadge.vue.d.ts.map +1 -0
- package/dist/components/entities/policy/attribute-names/AAttributeNamesPolicyForm.vue.d.ts +28 -4
- package/dist/components/entities/policy/attribute-names/AAttributeNamesPolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/composite/ACompositePolicyForm.vue.d.ts +12 -12
- package/dist/components/entities/policy/identity/AIdentityPolicyForm.vue.d.ts +28 -4
- package/dist/components/entities/policy/identity/AIdentityPolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/index.d.ts +4 -0
- package/dist/components/entities/policy/index.d.ts.map +1 -1
- package/dist/components/entities/policy/realm-match/ARealmMatchPolicyForm.vue.d.ts +28 -4
- package/dist/components/entities/policy/realm-match/ARealmMatchPolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/robot-permission/ARobotPermissionAssignment.vue.d.ts +87 -0
- package/dist/components/entities/robot-permission/ARobotPermissionAssignment.vue.d.ts.map +1 -0
- package/dist/components/entities/robot-permission/ARobotPermissionAssignments.vue.d.ts +178 -0
- package/dist/components/entities/robot-permission/ARobotPermissionAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/robot-permission/index.d.ts +2 -2
- package/dist/components/entities/robot-permission/index.d.ts.map +1 -1
- package/dist/components/entities/robot-role/ARobotRoleAssignment.vue.d.ts +56 -0
- package/dist/components/entities/robot-role/ARobotRoleAssignment.vue.d.ts.map +1 -0
- package/dist/components/entities/robot-role/ARobotRoleAssignments.vue.d.ts +148 -0
- package/dist/components/entities/robot-role/ARobotRoleAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/robot-role/index.d.ts +2 -2
- package/dist/components/entities/robot-role/index.d.ts.map +1 -1
- package/dist/components/entities/role-client/ARoleClientAssignments.vue.d.ts +144 -0
- package/dist/components/entities/role-client/ARoleClientAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/role-client/index.d.ts +1 -1
- package/dist/components/entities/role-client/index.d.ts.map +1 -1
- package/dist/components/entities/role-permission/ARolePermissionAssignment.vue.d.ts +87 -0
- package/dist/components/entities/role-permission/ARolePermissionAssignment.vue.d.ts.map +1 -0
- package/dist/components/entities/role-permission/ARolePermissionAssignments.vue.d.ts +178 -0
- package/dist/components/entities/role-permission/ARolePermissionAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/role-permission/index.d.ts +2 -2
- package/dist/components/entities/role-permission/index.d.ts.map +1 -1
- package/dist/components/entities/role-robot/ARoleRobotAssignments.vue.d.ts +144 -0
- package/dist/components/entities/role-robot/ARoleRobotAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/role-robot/index.d.ts +1 -1
- package/dist/components/entities/role-robot/index.d.ts.map +1 -1
- package/dist/components/entities/role-user/ARoleUserAssignments.vue.d.ts +148 -0
- package/dist/components/entities/role-user/ARoleUserAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/role-user/index.d.ts +1 -1
- package/dist/components/entities/role-user/index.d.ts.map +1 -1
- package/dist/components/entities/scope-client/AScopeClientAssignments.vue.d.ts +148 -0
- package/dist/components/entities/scope-client/AScopeClientAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/scope-client/index.d.ts +1 -1
- package/dist/components/entities/scope-client/index.d.ts.map +1 -1
- package/dist/components/entities/user-permission/AUserPermissionAssignment.vue.d.ts +87 -0
- package/dist/components/entities/user-permission/AUserPermissionAssignment.vue.d.ts.map +1 -0
- package/dist/components/entities/user-permission/AUserPermissionAssignments.vue.d.ts +178 -0
- package/dist/components/entities/user-permission/AUserPermissionAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/user-permission/index.d.ts +2 -2
- package/dist/components/entities/user-permission/index.d.ts.map +1 -1
- package/dist/components/entities/user-role/AUserRoleAssignment.vue.d.ts +56 -0
- package/dist/components/entities/user-role/AUserRoleAssignment.vue.d.ts.map +1 -0
- package/dist/components/entities/user-role/AUserRoleAssignments.vue.d.ts +148 -0
- package/dist/components/entities/user-role/AUserRoleAssignments.vue.d.ts.map +1 -0
- package/dist/components/entities/user-role/index.d.ts +2 -2
- package/dist/components/entities/user-role/index.d.ts.map +1 -1
- package/dist/components/utility/entity/record/module.d.ts.map +1 -1
- package/dist/components/utility/entity/record/types.d.ts +1 -0
- package/dist/components/utility/entity/record/types.d.ts.map +1 -1
- package/dist/components/utility/form-input-list/AFormInputList.vue.d.ts +28 -4
- package/dist/components/utility/form-input-list/AFormInputList.vue.d.ts.map +1 -1
- package/dist/components/utility/toggle-button/AToggleButton.vue.d.ts +26 -0
- package/dist/components/utility/toggle-button/AToggleButton.vue.d.ts.map +1 -0
- package/dist/components/utility/toggle-button/index.d.ts +1 -0
- package/dist/components/utility/toggle-button/index.d.ts.map +1 -1
- package/dist/components/utility/translation/ATranslationDefault.vue.d.ts +43 -0
- package/dist/components/utility/translation/ATranslationDefault.vue.d.ts.map +1 -0
- package/dist/components/utility/translation/index.d.ts +1 -1
- package/dist/components/utility/translation/index.d.ts.map +1 -1
- package/dist/components/workflows/Login.vue.d.ts +33 -2
- package/dist/components/workflows/Login.vue.d.ts.map +1 -1
- package/dist/components/workflows/authorize/Authorize.vue.d.ts +33 -2
- package/dist/components/workflows/authorize/Authorize.vue.d.ts.map +1 -1
- package/dist/index.mjs +2117 -1212
- package/dist/index.mjs.map +1 -1
- package/package.json +16 -16
- package/dist/components/entities/client-permission/AClientPermissionAssignment.d.ts +0 -18
- package/dist/components/entities/client-permission/AClientPermissionAssignment.d.ts.map +0 -1
- package/dist/components/entities/client-permission/AClientPermissionAssignments.d.ts +0 -15
- package/dist/components/entities/client-permission/AClientPermissionAssignments.d.ts.map +0 -1
- package/dist/components/entities/client-role/AClientRoleAssignment.d.ts +0 -18
- package/dist/components/entities/client-role/AClientRoleAssignment.d.ts.map +0 -1
- package/dist/components/entities/client-role/AClientRoleAssignments.d.ts +0 -11
- package/dist/components/entities/client-role/AClientRoleAssignments.d.ts.map +0 -1
- package/dist/components/entities/client-scope/AClientScopeAssignment.d.ts +0 -17
- package/dist/components/entities/client-scope/AClientScopeAssignment.d.ts.map +0 -1
- package/dist/components/entities/client-scope/AClientScopeAssignments.d.ts +0 -14
- package/dist/components/entities/client-scope/AClientScopeAssignments.d.ts.map +0 -1
- package/dist/components/entities/identity-provider/AIdentityProviderIcon.d.ts +0 -14
- package/dist/components/entities/identity-provider/AIdentityProviderIcon.d.ts.map +0 -1
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2EndpointFields.d.ts +0 -24
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2EndpointFields.d.ts.map +0 -1
- package/dist/components/entities/identity-provider-role/AIdentityProviderRoleAssignment.d.ts +0 -31
- package/dist/components/entities/identity-provider-role/AIdentityProviderRoleAssignment.d.ts.map +0 -1
- package/dist/components/entities/identity-provider-role/AIdentityProviderRoleAssignments.d.ts +0 -15
- package/dist/components/entities/identity-provider-role/AIdentityProviderRoleAssignments.d.ts.map +0 -1
- package/dist/components/entities/permission-client/APermissionClientAssignments.d.ts +0 -15
- package/dist/components/entities/permission-client/APermissionClientAssignments.d.ts.map +0 -1
- package/dist/components/entities/permission-policy/APermissionPolicyAssignment.d.ts +0 -29
- package/dist/components/entities/permission-policy/APermissionPolicyAssignment.d.ts.map +0 -1
- package/dist/components/entities/permission-policy/APermissionPolicyAssignments.d.ts +0 -15
- package/dist/components/entities/permission-policy/APermissionPolicyAssignments.d.ts.map +0 -1
- package/dist/components/entities/permission-robot/APermissionRobotAssignments.d.ts +0 -15
- package/dist/components/entities/permission-robot/APermissionRobotAssignments.d.ts.map +0 -1
- package/dist/components/entities/permission-role/APermissionRoleAssignments.d.ts +0 -15
- package/dist/components/entities/permission-role/APermissionRoleAssignments.d.ts.map +0 -1
- package/dist/components/entities/permission-user/APermissionUserAssignments.d.ts +0 -15
- package/dist/components/entities/permission-user/APermissionUserAssignments.d.ts.map +0 -1
- package/dist/components/entities/policy/APolicyPicker.d.ts.map +0 -1
- package/dist/components/entities/robot-permission/ARobotPermissionAssignment.d.ts +0 -18
- package/dist/components/entities/robot-permission/ARobotPermissionAssignment.d.ts.map +0 -1
- package/dist/components/entities/robot-permission/ARobotPermissionAssignments.d.ts +0 -15
- package/dist/components/entities/robot-permission/ARobotPermissionAssignments.d.ts.map +0 -1
- package/dist/components/entities/robot-role/ARobotRoleAssignment.d.ts +0 -18
- package/dist/components/entities/robot-role/ARobotRoleAssignment.d.ts.map +0 -1
- package/dist/components/entities/robot-role/ARobotRoleAssignments.d.ts +0 -9
- package/dist/components/entities/robot-role/ARobotRoleAssignments.d.ts.map +0 -1
- package/dist/components/entities/role-client/ARoleClientAssignments.d.ts +0 -9
- package/dist/components/entities/role-client/ARoleClientAssignments.d.ts.map +0 -1
- package/dist/components/entities/role-permission/ARolePermissionAssignment.d.ts +0 -17
- package/dist/components/entities/role-permission/ARolePermissionAssignment.d.ts.map +0 -1
- package/dist/components/entities/role-permission/ARolePermissionAssignments.d.ts +0 -14
- package/dist/components/entities/role-permission/ARolePermissionAssignments.d.ts.map +0 -1
- package/dist/components/entities/role-robot/ARoleRobotAssignments.d.ts +0 -9
- package/dist/components/entities/role-robot/ARoleRobotAssignments.d.ts.map +0 -1
- package/dist/components/entities/role-user/ARoleUserAssignments.d.ts +0 -9
- package/dist/components/entities/role-user/ARoleUserAssignments.d.ts.map +0 -1
- package/dist/components/entities/scope-client/AScopeClientAssignments.d.ts +0 -15
- package/dist/components/entities/scope-client/AScopeClientAssignments.d.ts.map +0 -1
- package/dist/components/entities/user-permission/AUserPermissionAssignment.d.ts +0 -17
- package/dist/components/entities/user-permission/AUserPermissionAssignment.d.ts.map +0 -1
- package/dist/components/entities/user-permission/AUserPermissionAssignments.d.ts +0 -14
- package/dist/components/entities/user-permission/AUserPermissionAssignments.d.ts.map +0 -1
- package/dist/components/entities/user-role/AUserRoleAssignment.d.ts +0 -18
- package/dist/components/entities/user-role/AUserRoleAssignment.d.ts.map +0 -1
- package/dist/components/entities/user-role/AUserRoleAssignments.d.ts +0 -9
- package/dist/components/entities/user-role/AUserRoleAssignments.d.ts.map +0 -1
- package/dist/components/utility/translation/ATranslationDefault.d.ts +0 -16
- package/dist/components/utility/translation/ATranslationDefault.d.ts.map +0 -1
package/dist/index.mjs
CHANGED
|
@@ -2,7 +2,7 @@ import installFormControl, { VCFormGroup, VCFormInput, VCFormInputCheckbox, VCFo
|
|
|
2
2
|
import { installStoreManager } from "@vuecs/form-controls/core";
|
|
3
3
|
import installPagination, { buildPagination } from "@vuecs/pagination";
|
|
4
4
|
import { EntityDefaultEventName, EntityType, IdentityProviderPreset, IdentityProviderProtocol, REALM_MASTER_NAME, buildEntityChannelName, buildUserFakeEmail, getIdentityProviderProtocolForPreset, isUserFakeEmail } from "@authup/core-kit";
|
|
5
|
-
import { Fragment, Suspense, Teleport, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, getCurrentInstance, h, hasInjectionContext, inject as inject$1, isReactive, isRef, mergeProps, nextTick, normalizeClass, onMounted, onUnmounted, openBlock, provide as provide$1, reactive, ref, renderList, renderSlot, resolveComponent, resolveDynamicComponent, toDisplayString, toRaw, toRef, unref, watch, withCtx, withModifiers } from "vue";
|
|
5
|
+
import { Fragment, Suspense, Teleport, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createTextVNode, createVNode, defineComponent, getCurrentInstance, guardReactiveProps, h, hasInjectionContext, inject as inject$1, isReactive, isRef, mergeProps, nextTick, normalizeClass, normalizeProps, onMounted, onUnmounted, openBlock, provide as provide$1, reactive, ref, renderList, renderSlot, resolveComponent, resolveDynamicComponent, toDisplayString, toRaw, toRef, unref, watch, withCtx, withModifiers } from "vue";
|
|
6
6
|
import { IVuelidate, getSeverity, install as install$1, useTranslationsForBaseValidation as useTranslationsForBaseValidation$1, useTranslationsForNestedValidations } from "@ilingo/vuelidate";
|
|
7
7
|
import useVuelidate from "@vuelidate/core";
|
|
8
8
|
import { email, helpers, maxLength, maxValue, minLength, minValue, numeric, required, sameAs, url } from "@vuelidate/validators";
|
|
@@ -77,8 +77,8 @@ var _plugin_vue_export_helper_default = (sfc, props) => {
|
|
|
77
77
|
};
|
|
78
78
|
//#endregion
|
|
79
79
|
//#region src/components/utility/form-input-list/AFormInputListItem.vue
|
|
80
|
-
const _hoisted_1$
|
|
81
|
-
function _sfc_render$
|
|
80
|
+
const _hoisted_1$24 = ["disabled"];
|
|
81
|
+
function _sfc_render$53(_ctx, _cache, $props, $setup, $data, $options) {
|
|
82
82
|
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
83
83
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
84
84
|
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
@@ -97,7 +97,7 @@ function _sfc_render$17(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
97
97
|
type: "button",
|
|
98
98
|
class: "btn btn-xs btn-warning",
|
|
99
99
|
onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.handleDeleted && _ctx.handleDeleted(...args), ["prevent"]))
|
|
100
|
-
}, [..._cache[2] || (_cache[2] = [createElementVNode("i", { class: "fa fa-minus" }, null, -1)])], 8, _hoisted_1$
|
|
100
|
+
}, [..._cache[2] || (_cache[2] = [createElementVNode("i", { class: "fa fa-minus" }, null, -1)])], 8, _hoisted_1$24)]),
|
|
101
101
|
_: 1
|
|
102
102
|
}, 8, ["modelValue", "onChange"])]),
|
|
103
103
|
_: 1
|
|
@@ -105,7 +105,7 @@ function _sfc_render$17(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
105
105
|
_: 1
|
|
106
106
|
}, 8, ["validation"]);
|
|
107
107
|
}
|
|
108
|
-
var AFormInputListItem_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AFormInputListItem_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
108
|
+
var AFormInputListItem_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AFormInputListItem_vue_vue_type_script_lang_default, [["render", _sfc_render$53]]);
|
|
109
109
|
//#endregion
|
|
110
110
|
//#region src/core/inject.ts
|
|
111
111
|
function inject(key, instance) {
|
|
@@ -245,24 +245,24 @@ function createStore(context) {
|
|
|
245
245
|
const accessToken = ref(null);
|
|
246
246
|
const setAccessToken = (input) => {
|
|
247
247
|
accessToken.value = input;
|
|
248
|
-
context.dispatcher.emit(
|
|
248
|
+
context.dispatcher.emit("accessTokenUpdated", input);
|
|
249
249
|
};
|
|
250
250
|
const accessTokenExpireDate = ref(null);
|
|
251
251
|
const setAccessTokenExpireDate = (input) => {
|
|
252
252
|
if (typeof input === "number" || typeof input === "string") accessTokenExpireDate.value = new Date(input);
|
|
253
253
|
else accessTokenExpireDate.value = input;
|
|
254
|
-
context.dispatcher.emit(
|
|
254
|
+
context.dispatcher.emit("accessTokenExpireDateUpdated", accessTokenExpireDate.value);
|
|
255
255
|
};
|
|
256
256
|
const refreshToken = ref(null);
|
|
257
257
|
const setRefreshToken = (input) => {
|
|
258
258
|
refreshToken.value = input;
|
|
259
|
-
context.dispatcher.emit(
|
|
259
|
+
context.dispatcher.emit("refreshTokenUpdated", input);
|
|
260
260
|
};
|
|
261
261
|
const user = ref(null);
|
|
262
262
|
const userId = computed(() => user.value ? user.value.id : null);
|
|
263
263
|
const setUser = (input) => {
|
|
264
264
|
user.value = input;
|
|
265
|
-
context.dispatcher.emit(
|
|
265
|
+
context.dispatcher.emit("userUpdated", input);
|
|
266
266
|
};
|
|
267
267
|
const realm = ref(null);
|
|
268
268
|
const realmId = computed(() => realm.value ? realm.value.id : void 0);
|
|
@@ -273,14 +273,14 @@ function createStore(context) {
|
|
|
273
273
|
});
|
|
274
274
|
const setRealm = (input) => {
|
|
275
275
|
realm.value = input;
|
|
276
|
-
context.dispatcher.emit(
|
|
276
|
+
context.dispatcher.emit("realmUpdated", input);
|
|
277
277
|
};
|
|
278
278
|
const realmManagement = ref(null);
|
|
279
279
|
const realmManagementId = computed(() => realmManagement.value ? realmManagement.value.id : realmId.value);
|
|
280
280
|
const realmManagementName = computed(() => realmManagement.value ? realmManagement.value.name : realmName.value);
|
|
281
281
|
const setRealmManagement = (input) => {
|
|
282
282
|
realmManagement.value = input;
|
|
283
|
-
context.dispatcher.emit(
|
|
283
|
+
context.dispatcher.emit("realmManagementUpdated", input);
|
|
284
284
|
};
|
|
285
285
|
const permissionProvider = new PermissionMemoryProvider();
|
|
286
286
|
const permissionEvaluator = new PermissionEvaluator({
|
|
@@ -356,7 +356,7 @@ function createStore(context) {
|
|
|
356
356
|
}
|
|
357
357
|
});
|
|
358
358
|
const resolveInternal = async () => {
|
|
359
|
-
context.dispatcher.emit(
|
|
359
|
+
context.dispatcher.emit("resolving");
|
|
360
360
|
try {
|
|
361
361
|
if (!accessToken.value && refreshToken.value) await refreshSession();
|
|
362
362
|
if (accessToken.value) {
|
|
@@ -370,12 +370,12 @@ function createStore(context) {
|
|
|
370
370
|
await resolveUser();
|
|
371
371
|
} else throw e;
|
|
372
372
|
}
|
|
373
|
-
context.dispatcher.emit(
|
|
373
|
+
context.dispatcher.emit("resolved");
|
|
374
374
|
};
|
|
375
375
|
const resolve = createPromiseShareWrapperFn(resolveInternal);
|
|
376
376
|
const loggedIn = computed(() => !!accessToken.value);
|
|
377
377
|
const login = async (ctx) => {
|
|
378
|
-
context.dispatcher.emit(
|
|
378
|
+
context.dispatcher.emit("loggingIn");
|
|
379
379
|
applyTokenGrantResponse(await client.token.createWithPassword({
|
|
380
380
|
username: ctx.name,
|
|
381
381
|
password: ctx.password,
|
|
@@ -383,7 +383,7 @@ function createStore(context) {
|
|
|
383
383
|
}));
|
|
384
384
|
await resolveToken();
|
|
385
385
|
await resolveUser();
|
|
386
|
-
context.dispatcher.emit(
|
|
386
|
+
context.dispatcher.emit("loggedIn");
|
|
387
387
|
};
|
|
388
388
|
const exchangeAuthorizationCode = async (code) => {
|
|
389
389
|
const response = await client.token.createWithAuthorizationCode({ code });
|
|
@@ -393,9 +393,9 @@ function createStore(context) {
|
|
|
393
393
|
await resolveUser();
|
|
394
394
|
};
|
|
395
395
|
const logout = async () => {
|
|
396
|
-
context.dispatcher.emit(
|
|
396
|
+
context.dispatcher.emit("loggingOut");
|
|
397
397
|
await cleanup();
|
|
398
|
-
context.dispatcher.emit(
|
|
398
|
+
context.dispatcher.emit("loggedOut");
|
|
399
399
|
};
|
|
400
400
|
return {
|
|
401
401
|
cookiesRead,
|
|
@@ -503,29 +503,29 @@ function installStore(app, options = {}) {
|
|
|
503
503
|
if (!store.accessTokenExpireDate) return;
|
|
504
504
|
return Math.floor(Math.max(1e3, (/* @__PURE__ */ new Date(`${store.accessTokenExpireDate}`)).getTime() - Date.now()) / 1e3);
|
|
505
505
|
};
|
|
506
|
-
storeDispatcher.on(
|
|
506
|
+
storeDispatcher.on("accessTokenExpireDateUpdated", (input) => {
|
|
507
507
|
if (input) cookieSet(CookieName.ACCESS_TOKEN_EXPIRE_DATE, input, { maxAge: maxAgeFn() });
|
|
508
508
|
else cookieUnset(CookieName.ACCESS_TOKEN_EXPIRE_DATE, {});
|
|
509
509
|
});
|
|
510
|
-
storeDispatcher.on(
|
|
510
|
+
storeDispatcher.on("accessTokenUpdated", (input) => {
|
|
511
511
|
if (input) {
|
|
512
512
|
const maxAge = maxAgeFn();
|
|
513
513
|
cookieSet(CookieName.ACCESS_TOKEN, input, { maxAge });
|
|
514
514
|
} else cookieUnset(CookieName.ACCESS_TOKEN, {});
|
|
515
515
|
});
|
|
516
|
-
storeDispatcher.on(
|
|
516
|
+
storeDispatcher.on("refreshTokenUpdated", (input) => {
|
|
517
517
|
if (input) cookieSet(CookieName.REFRESH_TOKEN, input, {});
|
|
518
518
|
else cookieUnset(CookieName.REFRESH_TOKEN, {});
|
|
519
519
|
});
|
|
520
|
-
storeDispatcher.on(
|
|
520
|
+
storeDispatcher.on("userUpdated", (input) => {
|
|
521
521
|
if (input) cookieSet(CookieName.USER, input, {});
|
|
522
522
|
else cookieUnset(CookieName.USER, {});
|
|
523
523
|
});
|
|
524
|
-
storeDispatcher.on(
|
|
524
|
+
storeDispatcher.on("realmUpdated", (input) => {
|
|
525
525
|
if (input) cookieSet(CookieName.REALM, input, {});
|
|
526
526
|
else cookieUnset(CookieName.REALM, {});
|
|
527
527
|
});
|
|
528
|
-
storeDispatcher.on(
|
|
528
|
+
storeDispatcher.on("realmManagementUpdated", (input) => {
|
|
529
529
|
if (input) cookieSet(CookieName.REALM_MANAGEMENT, input, {});
|
|
530
530
|
else cookieUnset(CookieName.REALM_MANAGEMENT, {});
|
|
531
531
|
});
|
|
@@ -586,8 +586,8 @@ function installHTTPClientAuthenticationHook(app, options = {}) {
|
|
|
586
586
|
hook.setTimer(expiresIn);
|
|
587
587
|
}
|
|
588
588
|
};
|
|
589
|
-
storeDispatcher.on(
|
|
590
|
-
storeDispatcher.on(
|
|
589
|
+
storeDispatcher.on("accessTokenUpdated", () => handleAccessTokenEvent());
|
|
590
|
+
storeDispatcher.on("accessTokenExpireDateUpdated", () => handleAccessTokenExpireDateEvent());
|
|
591
591
|
handleAccessTokenEvent();
|
|
592
592
|
handleAccessTokenExpireDateEvent();
|
|
593
593
|
provideHTTPClientAuthenticationHook(hook, app);
|
|
@@ -721,48 +721,48 @@ function useTranslationsForGroup(group, elements) {
|
|
|
721
721
|
//#endregion
|
|
722
722
|
//#region src/core/translator/de/client.ts
|
|
723
723
|
const TranslatorTranslationClientGerman = {
|
|
724
|
-
[
|
|
725
|
-
[
|
|
726
|
-
[
|
|
727
|
-
[
|
|
728
|
-
[
|
|
729
|
-
[
|
|
724
|
+
["nameHint"]: "Etwas, das Benutzer erkennen und vertrauen werden",
|
|
725
|
+
["descriptionHint"]: "Dies wird allen Benutzern dieser Anwendung angezeigt",
|
|
726
|
+
["redirectURIHint"]: "URI-Muster, zu dem ein Browser nach einem erfolgreichen Login weiterleiten kann",
|
|
727
|
+
["isConfidential"]: "Ist vertraulich?",
|
|
728
|
+
["isActive"]: "Ist aktiv?",
|
|
729
|
+
["hashSecret"]: "Geheimnis hashen?"
|
|
730
730
|
};
|
|
731
731
|
//#endregion
|
|
732
732
|
//#region src/core/translator/de/default.ts
|
|
733
733
|
const TranslatorTranslationDefaultGerman = {
|
|
734
|
-
[
|
|
735
|
-
[
|
|
736
|
-
[
|
|
737
|
-
[
|
|
738
|
-
[
|
|
739
|
-
[
|
|
740
|
-
[
|
|
741
|
-
[
|
|
742
|
-
[
|
|
743
|
-
[
|
|
744
|
-
[
|
|
745
|
-
[
|
|
746
|
-
[
|
|
747
|
-
[
|
|
748
|
-
[
|
|
749
|
-
[
|
|
750
|
-
[
|
|
751
|
-
[
|
|
752
|
-
[
|
|
753
|
-
[
|
|
754
|
-
[
|
|
755
|
-
[
|
|
756
|
-
[
|
|
757
|
-
[
|
|
758
|
-
[
|
|
759
|
-
[
|
|
760
|
-
[
|
|
761
|
-
[
|
|
762
|
-
[
|
|
763
|
-
[
|
|
764
|
-
[
|
|
765
|
-
[
|
|
734
|
+
["add"]: "hinzufügen",
|
|
735
|
+
["create"]: "erstellen",
|
|
736
|
+
["delete"]: "löschen",
|
|
737
|
+
["generate"]: "generieren",
|
|
738
|
+
["update"]: "aktualisieren",
|
|
739
|
+
["active"]: "aktiv",
|
|
740
|
+
["inactive"]: "inaktiv",
|
|
741
|
+
["locked"]: "gesperrt",
|
|
742
|
+
["notLocked"]: "nicht gesperrt",
|
|
743
|
+
["valueIsRegex"]: "Wert ist regex pattern?",
|
|
744
|
+
["client"]: "Client",
|
|
745
|
+
["clients"]: "Clients",
|
|
746
|
+
["clientScopes"]: "Client-Bereiche",
|
|
747
|
+
["displayName"]: "Anzeigename",
|
|
748
|
+
["email"]: "E-Mail",
|
|
749
|
+
["externalId"]: "externe ID",
|
|
750
|
+
["hashed"]: "gehasht",
|
|
751
|
+
["overview"]: "Überblick",
|
|
752
|
+
["identityProviders"]: "Identitätsanbieter",
|
|
753
|
+
["name"]: "Name",
|
|
754
|
+
["decisionStrategy"]: "Entscheidungsstrategie",
|
|
755
|
+
["description"]: "Beschreibung",
|
|
756
|
+
["permissions"]: "Berechtigungen",
|
|
757
|
+
["policy"]: "Richtlinie",
|
|
758
|
+
["policies"]: "Richtlinien",
|
|
759
|
+
["realm"]: "Organisation",
|
|
760
|
+
["realms"]: "Organisationen",
|
|
761
|
+
["roles"]: "Rollen",
|
|
762
|
+
["scopes"]: "Bereiche",
|
|
763
|
+
["secret"]: "Geheimnis",
|
|
764
|
+
["redirectUris"]: "Weiterleitungs-URIs",
|
|
765
|
+
["users"]: "Benutzer"
|
|
766
766
|
};
|
|
767
767
|
//#endregion
|
|
768
768
|
//#region src/core/vuelidate.ts
|
|
@@ -772,8 +772,8 @@ let VuelidateCustomRuleKey = /* @__PURE__ */ function(VuelidateCustomRuleKey) {
|
|
|
772
772
|
return VuelidateCustomRuleKey;
|
|
773
773
|
}({});
|
|
774
774
|
const VuelidateCustomRule = {
|
|
775
|
-
[
|
|
776
|
-
[
|
|
775
|
+
["alphaNumHyphenUnderscore"]: helpers.regex(/^[a-z0-9-_]*$/),
|
|
776
|
+
["alphaUpperNumHyphenUnderscoreDot"]: helpers.regex(/^[a-zA-Z0-9-_.]*$/)
|
|
777
777
|
};
|
|
778
778
|
function getVuelidateSeverity(vuelidate) {
|
|
779
779
|
return getSeverity(vuelidate);
|
|
@@ -789,83 +789,83 @@ function extractVuelidateResultsFromChild(vuelidate, child, keys) {
|
|
|
789
789
|
//#endregion
|
|
790
790
|
//#region src/core/translator/de/vuelidate.ts
|
|
791
791
|
const TranslatorTranslationVuelidateGerman = {
|
|
792
|
-
[
|
|
793
|
-
[
|
|
792
|
+
["alphaNumHyphenUnderscore"]: "Der Eingabewert darf nur aus folgenden Zeichen bestehen: [0-9a-z-_]+",
|
|
793
|
+
["alphaUpperNumHyphenUnderscoreDot"]: "Der Eingabewert darf nur aus folgenden Zeichen bestehen: [0-9a-zA-Z-_.]+"
|
|
794
794
|
};
|
|
795
795
|
//#endregion
|
|
796
796
|
//#region src/core/translator/de/vuecs.ts
|
|
797
|
-
const TranslatorTranslationVuecsGerman = { [
|
|
797
|
+
const TranslatorTranslationVuecsGerman = { ["noMore"]: "Keine weiteren {{name}} verfügbar" };
|
|
798
798
|
//#endregion
|
|
799
799
|
//#region src/core/translator/en/client.ts
|
|
800
800
|
const TranslatorTranslationClientEnglish = {
|
|
801
|
-
[
|
|
802
|
-
[
|
|
803
|
-
[
|
|
804
|
-
[
|
|
805
|
-
[
|
|
806
|
-
[
|
|
801
|
+
["nameHint"]: "Something users will recognize and trust",
|
|
802
|
+
["descriptionHint"]: "Displayed to all users of this application",
|
|
803
|
+
["redirectURIHint"]: "URI pattern a browser can redirect to after a successful login",
|
|
804
|
+
["isConfidential"]: "Is confidential?",
|
|
805
|
+
["isActive"]: "Is active?",
|
|
806
|
+
["hashSecret"]: "Hash secret?"
|
|
807
807
|
};
|
|
808
808
|
//#endregion
|
|
809
809
|
//#region src/core/translator/en/default.ts
|
|
810
810
|
const TranslatorTranslationDefaultEnglish = {
|
|
811
|
-
[
|
|
812
|
-
[
|
|
813
|
-
[
|
|
814
|
-
[
|
|
815
|
-
[
|
|
816
|
-
[
|
|
817
|
-
[
|
|
818
|
-
[
|
|
819
|
-
[
|
|
820
|
-
[
|
|
821
|
-
[
|
|
822
|
-
[
|
|
823
|
-
[
|
|
824
|
-
[
|
|
825
|
-
[
|
|
826
|
-
[
|
|
827
|
-
[
|
|
828
|
-
[
|
|
829
|
-
[
|
|
830
|
-
[
|
|
831
|
-
[
|
|
832
|
-
[
|
|
833
|
-
[
|
|
834
|
-
[
|
|
835
|
-
[
|
|
836
|
-
[
|
|
837
|
-
[
|
|
838
|
-
[
|
|
839
|
-
[
|
|
840
|
-
[
|
|
841
|
-
[
|
|
842
|
-
[
|
|
811
|
+
["add"]: "add",
|
|
812
|
+
["create"]: "create",
|
|
813
|
+
["delete"]: "delete",
|
|
814
|
+
["generate"]: "generate",
|
|
815
|
+
["update"]: "update",
|
|
816
|
+
["active"]: "active",
|
|
817
|
+
["inactive"]: "inactive",
|
|
818
|
+
["locked"]: "locked",
|
|
819
|
+
["notLocked"]: "not locked",
|
|
820
|
+
["valueIsRegex"]: "Value is regex pattern?",
|
|
821
|
+
["client"]: "update",
|
|
822
|
+
["clients"]: "clients",
|
|
823
|
+
["clientScopes"]: "client scopes",
|
|
824
|
+
["displayName"]: "display name",
|
|
825
|
+
["email"]: "email",
|
|
826
|
+
["externalId"]: "external id",
|
|
827
|
+
["hashed"]: "hashed",
|
|
828
|
+
["overview"]: "overview",
|
|
829
|
+
["identityProviders"]: "identity providers",
|
|
830
|
+
["name"]: "name",
|
|
831
|
+
["decisionStrategy"]: "decision strategy",
|
|
832
|
+
["description"]: "description",
|
|
833
|
+
["policy"]: "policy",
|
|
834
|
+
["policies"]: "policies",
|
|
835
|
+
["permissions"]: "permissions",
|
|
836
|
+
["realm"]: "realm",
|
|
837
|
+
["realms"]: "realms",
|
|
838
|
+
["roles"]: "roles",
|
|
839
|
+
["scopes"]: "scopes",
|
|
840
|
+
["secret"]: "secret",
|
|
841
|
+
["redirectUris"]: "redirect uri(s)",
|
|
842
|
+
["users"]: "users"
|
|
843
843
|
};
|
|
844
844
|
//#endregion
|
|
845
845
|
//#region src/core/translator/en/vuelidate.ts
|
|
846
846
|
const TranslatorTranslationVuelidateEnglish = {
|
|
847
|
-
[
|
|
848
|
-
[
|
|
847
|
+
["alphaNumHyphenUnderscore"]: "The input value is only allowed to consist of the following characters: [0-9a-z-_]+",
|
|
848
|
+
["alphaUpperNumHyphenUnderscoreDot"]: "The input value is only allowed to consist of the following characters: [0-9a-zA-Z-_.]+"
|
|
849
849
|
};
|
|
850
850
|
//#endregion
|
|
851
851
|
//#region src/core/translator/en/vuecs.ts
|
|
852
|
-
const TranslatorTranslationVuecsEnglish = { [
|
|
852
|
+
const TranslatorTranslationVuecsEnglish = { ["noMore"]: "No more {{name}} available" };
|
|
853
853
|
//#endregion
|
|
854
854
|
//#region src/core/translator/install.ts
|
|
855
855
|
function installTranslator(app, options = {}) {
|
|
856
856
|
install$1(app, {
|
|
857
857
|
store: new MemoryStore({ data: {
|
|
858
858
|
de: {
|
|
859
|
-
[
|
|
860
|
-
[
|
|
861
|
-
[
|
|
862
|
-
[
|
|
859
|
+
["authupClient"]: TranslatorTranslationClientGerman,
|
|
860
|
+
["default"]: TranslatorTranslationDefaultGerman,
|
|
861
|
+
["vuecs"]: TranslatorTranslationVuecsGerman,
|
|
862
|
+
["vuelidate"]: TranslatorTranslationVuelidateGerman
|
|
863
863
|
},
|
|
864
864
|
en: {
|
|
865
|
-
[
|
|
866
|
-
[
|
|
867
|
-
[
|
|
868
|
-
[
|
|
865
|
+
["authupClient"]: TranslatorTranslationClientEnglish,
|
|
866
|
+
["default"]: TranslatorTranslationDefaultEnglish,
|
|
867
|
+
["vuecs"]: TranslatorTranslationVuecsEnglish,
|
|
868
|
+
["vuelidate"]: TranslatorTranslationVuelidateEnglish
|
|
869
869
|
}
|
|
870
870
|
} }),
|
|
871
871
|
locale: options.locale
|
|
@@ -875,13 +875,13 @@ function installTranslator(app, options = {}) {
|
|
|
875
875
|
//#region src/core/form/submit.ts
|
|
876
876
|
function createFormSubmitTranslations() {
|
|
877
877
|
const updateText = useTranslation({
|
|
878
|
-
group:
|
|
879
|
-
key:
|
|
878
|
+
group: "default",
|
|
879
|
+
key: "update"
|
|
880
880
|
});
|
|
881
881
|
return {
|
|
882
882
|
createText: useTranslation({
|
|
883
|
-
group:
|
|
884
|
-
key:
|
|
883
|
+
group: "default",
|
|
884
|
+
key: "create"
|
|
885
885
|
}),
|
|
886
886
|
updateText
|
|
887
887
|
};
|
|
@@ -1023,45 +1023,52 @@ function normalizeSlot(name, scope = {}, $slots = {}) {
|
|
|
1023
1023
|
return [];
|
|
1024
1024
|
}
|
|
1025
1025
|
//#endregion
|
|
1026
|
-
//#region src/components/utility/translation/
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1026
|
+
//#region src/components/utility/translation/ATranslationDefault.vue?vue&type=script&lang.ts
|
|
1027
|
+
var ATranslationDefault_vue_vue_type_script_lang_default = defineComponent({
|
|
1028
|
+
components: { ATranslation: defineComponent({
|
|
1029
|
+
props: {
|
|
1030
|
+
group: {
|
|
1031
|
+
type: String,
|
|
1032
|
+
required: true
|
|
1033
|
+
},
|
|
1034
|
+
name: {
|
|
1035
|
+
type: String,
|
|
1036
|
+
required: true
|
|
1037
|
+
}
|
|
1032
1038
|
},
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1039
|
+
setup(props, { slots }) {
|
|
1040
|
+
const translation = useTranslation({
|
|
1041
|
+
group: props.group,
|
|
1042
|
+
key: props.name
|
|
1043
|
+
});
|
|
1044
|
+
return () => {
|
|
1045
|
+
if (hasNormalizedSlot(SlotName.DEFAULT, slots)) return normalizeSlot(SlotName.DEFAULT, { data: translation.value }, slots);
|
|
1046
|
+
return [translation.value];
|
|
1047
|
+
};
|
|
1036
1048
|
}
|
|
1037
|
-
},
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
return
|
|
1044
|
-
if (hasNormalizedSlot(SlotName.DEFAULT, slots)) return normalizeSlot(SlotName.DEFAULT, { data: translation.value }, slots);
|
|
1045
|
-
return [translation.value];
|
|
1046
|
-
};
|
|
1049
|
+
}) },
|
|
1050
|
+
props: { name: {
|
|
1051
|
+
type: String,
|
|
1052
|
+
required: true
|
|
1053
|
+
} },
|
|
1054
|
+
setup() {
|
|
1055
|
+
return { TranslatorTranslationGroup };
|
|
1047
1056
|
}
|
|
1048
1057
|
});
|
|
1049
1058
|
//#endregion
|
|
1059
|
+
//#region src/components/utility/translation/ATranslationDefault.vue
|
|
1060
|
+
function _sfc_render$52(_ctx, _cache, $props, $setup, $data, $options) {
|
|
1061
|
+
const _component_ATranslation = resolveComponent("ATranslation");
|
|
1062
|
+
return openBlock(), createBlock(_component_ATranslation, {
|
|
1063
|
+
group: _ctx.TranslatorTranslationGroup.DEFAULT,
|
|
1064
|
+
name: _ctx.name
|
|
1065
|
+
}, null, 8, ["group", "name"]);
|
|
1066
|
+
}
|
|
1067
|
+
//#endregion
|
|
1050
1068
|
//#region src/components/utility/form-input-list/AFormInputList.vue?vue&type=script&lang.ts
|
|
1051
1069
|
var AFormInputList_vue_vue_type_script_lang_default = defineComponent({
|
|
1052
1070
|
components: {
|
|
1053
|
-
ATranslationDefault:
|
|
1054
|
-
props: { name: {
|
|
1055
|
-
type: String,
|
|
1056
|
-
required: true
|
|
1057
|
-
} },
|
|
1058
|
-
setup(props) {
|
|
1059
|
-
return () => h(ATranslation, {
|
|
1060
|
-
group: TranslatorTranslationGroup.DEFAULT,
|
|
1061
|
-
name: props.name
|
|
1062
|
-
});
|
|
1063
|
-
}
|
|
1064
|
-
}),
|
|
1071
|
+
ATranslationDefault: /* @__PURE__ */ _plugin_vue_export_helper_default(ATranslationDefault_vue_vue_type_script_lang_default, [["render", _sfc_render$52]]),
|
|
1065
1072
|
AFormInputListItem: AFormInputListItem_default
|
|
1066
1073
|
},
|
|
1067
1074
|
props: {
|
|
@@ -1123,16 +1130,16 @@ var AFormInputList_vue_vue_type_script_lang_default = defineComponent({
|
|
|
1123
1130
|
});
|
|
1124
1131
|
//#endregion
|
|
1125
1132
|
//#region src/components/utility/form-input-list/AFormInputList.vue
|
|
1126
|
-
const _hoisted_1$
|
|
1127
|
-
const _hoisted_2$
|
|
1128
|
-
const _hoisted_3$
|
|
1129
|
-
const _hoisted_4$
|
|
1130
|
-
const _hoisted_5$
|
|
1131
|
-
const _hoisted_6$
|
|
1132
|
-
function _sfc_render$
|
|
1133
|
+
const _hoisted_1$23 = { class: "d-flex flex-column gap-2" };
|
|
1134
|
+
const _hoisted_2$14 = { class: "d-flex flex-row" };
|
|
1135
|
+
const _hoisted_3$12 = { class: "align-self-end" };
|
|
1136
|
+
const _hoisted_4$10 = { class: "ms-auto" };
|
|
1137
|
+
const _hoisted_5$7 = ["disabled"];
|
|
1138
|
+
const _hoisted_6$6 = { class: "d-flex flex-column gap-1" };
|
|
1139
|
+
function _sfc_render$51(_ctx, _cache, $props, $setup, $data, $options) {
|
|
1133
1140
|
const _component_ATranslationDefault = resolveComponent("ATranslationDefault");
|
|
1134
1141
|
const _component_AFormInputListItem = resolveComponent("AFormInputListItem");
|
|
1135
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1142
|
+
return openBlock(), createElementBlock("div", _hoisted_1$23, [createElementVNode("div", _hoisted_2$14, [createElementVNode("div", _hoisted_3$12, [renderSlot(_ctx.$slots, "label", {}, () => [_cache[1] || (_cache[1] = createTextVNode(" Names ", -1))])]), createElementVNode("div", _hoisted_4$10, [createElementVNode("button", {
|
|
1136
1143
|
class: "btn btn-xs btn-primary",
|
|
1137
1144
|
type: "button",
|
|
1138
1145
|
disabled: !_ctx.canAdd,
|
|
@@ -1141,7 +1148,7 @@ function _sfc_render$16(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
1141
1148
|
_cache[2] || (_cache[2] = createElementVNode("i", { class: "fa fa-plus" }, null, -1)),
|
|
1142
1149
|
_cache[3] || (_cache[3] = createTextVNode()),
|
|
1143
1150
|
createVNode(_component_ATranslationDefault, { name: "add" })
|
|
1144
|
-
], 8, _hoisted_5$
|
|
1151
|
+
], 8, _hoisted_5$7)])]), createElementVNode("div", _hoisted_6$6, [_ctx.items.length === 0 ? renderSlot(_ctx.$slots, "noItems", { key: 0 }, () => [_cache[4] || (_cache[4] = createElementVNode("div", { class: "alert alert-sm alert-info" }, " The form list has no items yet ", -1))]) : createCommentVNode("v-if", true), (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.items, (item) => {
|
|
1145
1152
|
return renderSlot(_ctx.$slots, "default", {
|
|
1146
1153
|
key: item.id,
|
|
1147
1154
|
item,
|
|
@@ -1165,7 +1172,7 @@ function _sfc_render$16(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
1165
1172
|
]))]);
|
|
1166
1173
|
}), 128))])]);
|
|
1167
1174
|
}
|
|
1168
|
-
var AFormInputList_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AFormInputList_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
1175
|
+
var AFormInputList_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AFormInputList_vue_vue_type_script_lang_default, [["render", _sfc_render$51]]);
|
|
1169
1176
|
//#endregion
|
|
1170
1177
|
//#region src/components/utility/pagination/module.ts
|
|
1171
1178
|
function buildPagination$1(ctx) {
|
|
@@ -1789,6 +1796,18 @@ function create(ctx) {
|
|
|
1789
1796
|
throw error.value;
|
|
1790
1797
|
}
|
|
1791
1798
|
};
|
|
1799
|
+
if (ctx.query) {
|
|
1800
|
+
const queryFn = ctx.query;
|
|
1801
|
+
let initialized = false;
|
|
1802
|
+
watch(() => JSON.stringify(queryFn()), () => {
|
|
1803
|
+
if (!initialized) {
|
|
1804
|
+
initialized = true;
|
|
1805
|
+
return;
|
|
1806
|
+
}
|
|
1807
|
+
entity.value = void 0;
|
|
1808
|
+
resolve({ query: queryFn() });
|
|
1809
|
+
}, { immediate: true });
|
|
1810
|
+
}
|
|
1792
1811
|
const manager = {
|
|
1793
1812
|
resolve,
|
|
1794
1813
|
resolveOrFail,
|
|
@@ -1822,6 +1841,52 @@ function defineEntityManager(ctx) {
|
|
|
1822
1841
|
return create(ctx);
|
|
1823
1842
|
}
|
|
1824
1843
|
//#endregion
|
|
1844
|
+
//#region src/components/utility/toggle-button/AToggleButton.vue?vue&type=script&lang.ts
|
|
1845
|
+
var AToggleButton_vue_vue_type_script_lang_default = defineComponent({
|
|
1846
|
+
props: {
|
|
1847
|
+
value: {
|
|
1848
|
+
type: Boolean,
|
|
1849
|
+
required: true
|
|
1850
|
+
},
|
|
1851
|
+
isBusy: {
|
|
1852
|
+
type: Boolean,
|
|
1853
|
+
required: true
|
|
1854
|
+
}
|
|
1855
|
+
},
|
|
1856
|
+
emits: ["changed"],
|
|
1857
|
+
setup(props, { emit }) {
|
|
1858
|
+
const handleClick = (e) => {
|
|
1859
|
+
e.preventDefault();
|
|
1860
|
+
emit("changed", !props.value);
|
|
1861
|
+
};
|
|
1862
|
+
return { handleClick };
|
|
1863
|
+
}
|
|
1864
|
+
});
|
|
1865
|
+
//#endregion
|
|
1866
|
+
//#region src/components/utility/toggle-button/AToggleButton.vue
|
|
1867
|
+
const _hoisted_1$22 = ["aria-label", "disabled"];
|
|
1868
|
+
function _sfc_render$50(_ctx, _cache, $props, $setup, $data, $options) {
|
|
1869
|
+
return openBlock(), createElementBlock("button", {
|
|
1870
|
+
type: "button",
|
|
1871
|
+
"aria-label": _ctx.isBusy ? "Processing" : _ctx.value ? "Remove" : "Add",
|
|
1872
|
+
class: normalizeClass(["btn btn-xs", {
|
|
1873
|
+
"btn-dark": _ctx.isBusy,
|
|
1874
|
+
"btn-success": !_ctx.isBusy && !_ctx.value,
|
|
1875
|
+
"btn-danger": !_ctx.isBusy && _ctx.value
|
|
1876
|
+
}]),
|
|
1877
|
+
disabled: _ctx.isBusy,
|
|
1878
|
+
onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
|
|
1879
|
+
}, [createElementVNode("i", {
|
|
1880
|
+
"aria-hidden": "true",
|
|
1881
|
+
class: normalizeClass(["fa", {
|
|
1882
|
+
"fa-question": _ctx.isBusy,
|
|
1883
|
+
"fa-plus": !_ctx.isBusy && !_ctx.value,
|
|
1884
|
+
"fa-minus": !_ctx.isBusy && _ctx.value
|
|
1885
|
+
}])
|
|
1886
|
+
}, null, 2)], 10, _hoisted_1$22);
|
|
1887
|
+
}
|
|
1888
|
+
var AToggleButton_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AToggleButton_vue_vue_type_script_lang_default, [["render", _sfc_render$50]]);
|
|
1889
|
+
//#endregion
|
|
1825
1890
|
//#region src/components/utility/toggle-button/module.ts
|
|
1826
1891
|
function renderToggleButton(options) {
|
|
1827
1892
|
return h("button", {
|
|
@@ -1842,13 +1907,6 @@ function renderToggleButton(options) {
|
|
|
1842
1907
|
}] })]);
|
|
1843
1908
|
}
|
|
1844
1909
|
//#endregion
|
|
1845
|
-
//#region src/components/utility/search/constants.ts
|
|
1846
|
-
let ListSearchSlotName = /* @__PURE__ */ function(ListSearchSlotName) {
|
|
1847
|
-
ListSearchSlotName["DEFAULT"] = "default";
|
|
1848
|
-
ListSearchSlotName["ICON"] = "icon";
|
|
1849
|
-
return ListSearchSlotName;
|
|
1850
|
-
}({});
|
|
1851
|
-
//#endregion
|
|
1852
1910
|
//#region src/components/utility/search/module.ts
|
|
1853
1911
|
function debounce(func, timeout = 200) {
|
|
1854
1912
|
let timer;
|
|
@@ -1863,7 +1921,7 @@ function buildListSearch(ctx) {
|
|
|
1863
1921
|
ctx.icon = ctx.icon ?? true;
|
|
1864
1922
|
ctx.iconClass = ctx.iconClass || "fa fa-search";
|
|
1865
1923
|
ctx.iconPosition = ctx.iconPosition ?? "start";
|
|
1866
|
-
if (hasNormalizedSlot(
|
|
1924
|
+
if (hasNormalizedSlot("default", ctx.slots)) return normalizeSlot("default", {
|
|
1867
1925
|
load: ctx.load,
|
|
1868
1926
|
busy: ctx.busy,
|
|
1869
1927
|
icon: ctx.icon,
|
|
@@ -1871,7 +1929,7 @@ function buildListSearch(ctx) {
|
|
|
1871
1929
|
iconPosition: ctx.iconPosition
|
|
1872
1930
|
}, ctx.slots);
|
|
1873
1931
|
let iconContent;
|
|
1874
|
-
if (hasNormalizedSlot(
|
|
1932
|
+
if (hasNormalizedSlot("icon")) iconContent = normalizeSlot("icon", {}, ctx.slots);
|
|
1875
1933
|
const options = {};
|
|
1876
1934
|
if (ctx.icon) if (ctx.iconPosition === "start") {
|
|
1877
1935
|
options.groupPrepend = true;
|
|
@@ -1995,12 +2053,6 @@ function defineEntityPicker({ props, setup, component }) {
|
|
|
1995
2053
|
}
|
|
1996
2054
|
//#endregion
|
|
1997
2055
|
//#region src/components/utility/entity/AEntityDelete.ts
|
|
1998
|
-
var ElementType = /* @__PURE__ */ function(ElementType) {
|
|
1999
|
-
ElementType["BUTTON"] = "button";
|
|
2000
|
-
ElementType["LINK"] = "link";
|
|
2001
|
-
ElementType["DROP_DOWN_ITEM"] = "dropDownItem";
|
|
2002
|
-
return ElementType;
|
|
2003
|
-
}(ElementType || {});
|
|
2004
2056
|
const AEntityDelete = defineComponent({
|
|
2005
2057
|
props: {
|
|
2006
2058
|
elementIcon: {
|
|
@@ -2013,7 +2065,7 @@ const AEntityDelete = defineComponent({
|
|
|
2013
2065
|
},
|
|
2014
2066
|
elementType: {
|
|
2015
2067
|
type: String,
|
|
2016
|
-
default:
|
|
2068
|
+
default: "button"
|
|
2017
2069
|
},
|
|
2018
2070
|
entityId: {
|
|
2019
2071
|
type: String,
|
|
@@ -2046,17 +2098,17 @@ const AEntityDelete = defineComponent({
|
|
|
2046
2098
|
}
|
|
2047
2099
|
});
|
|
2048
2100
|
const translation = useTranslation({
|
|
2049
|
-
group:
|
|
2050
|
-
key:
|
|
2101
|
+
group: "default",
|
|
2102
|
+
key: "delete"
|
|
2051
2103
|
});
|
|
2052
2104
|
const render = () => {
|
|
2053
2105
|
let tag = "button";
|
|
2054
2106
|
const data = {};
|
|
2055
2107
|
switch (props.elementType) {
|
|
2056
|
-
case
|
|
2108
|
+
case "link":
|
|
2057
2109
|
tag = "a";
|
|
2058
2110
|
break;
|
|
2059
|
-
case
|
|
2111
|
+
case "dropDownItem":
|
|
2060
2112
|
if (instance && typeof instance.appContext.app.component("BDropdownItem") !== "undefined") tag = resolveDynamicComponent("BDropdownItem");
|
|
2061
2113
|
break;
|
|
2062
2114
|
}
|
|
@@ -2076,20 +2128,13 @@ const AEntityDelete = defineComponent({
|
|
|
2076
2128
|
}
|
|
2077
2129
|
});
|
|
2078
2130
|
//#endregion
|
|
2079
|
-
//#region src/components/utility/title/constants.ts
|
|
2080
|
-
let TitleSlotName = /* @__PURE__ */ function(TitleSlotName) {
|
|
2081
|
-
TitleSlotName["DEFAULT"] = "default";
|
|
2082
|
-
TitleSlotName["ICON"] = "icon";
|
|
2083
|
-
return TitleSlotName;
|
|
2084
|
-
}({});
|
|
2085
|
-
//#endregion
|
|
2086
2131
|
//#region src/components/utility/title/module.ts
|
|
2087
2132
|
function buildTitle(ctx) {
|
|
2088
2133
|
ctx.tag = ctx.tag || "h6";
|
|
2089
2134
|
ctx.icon = ctx.icon ?? true;
|
|
2090
2135
|
ctx.iconClass = ctx.iconClass || "fa-solid fa-list";
|
|
2091
2136
|
ctx.iconPosition = ctx.iconPosition ?? "start";
|
|
2092
|
-
if (hasNormalizedSlot(
|
|
2137
|
+
if (hasNormalizedSlot("default", ctx.slots)) return normalizeSlot("default", {
|
|
2093
2138
|
tag: ctx.tag,
|
|
2094
2139
|
icon: ctx.icon,
|
|
2095
2140
|
iconClass: ctx.iconClass,
|
|
@@ -2098,7 +2143,7 @@ function buildTitle(ctx) {
|
|
|
2098
2143
|
let icon;
|
|
2099
2144
|
if (ctx.icon) {
|
|
2100
2145
|
let iconContent;
|
|
2101
|
-
if (hasNormalizedSlot(
|
|
2146
|
+
if (hasNormalizedSlot("icon")) iconContent = normalizeSlot("icon", {}, ctx.slots);
|
|
2102
2147
|
if (iconContent) icon = iconContent;
|
|
2103
2148
|
else icon = h("i", { class: [ctx.iconClass, "pe-1"] });
|
|
2104
2149
|
}
|
|
@@ -2123,8 +2168,8 @@ const ATitle = defineComponent({
|
|
|
2123
2168
|
slots: Object,
|
|
2124
2169
|
setup(props, { slots }) {
|
|
2125
2170
|
const translation = useTranslation({
|
|
2126
|
-
group:
|
|
2127
|
-
key:
|
|
2171
|
+
group: "default",
|
|
2172
|
+
key: "overview"
|
|
2128
2173
|
});
|
|
2129
2174
|
return () => buildTitle({
|
|
2130
2175
|
slots,
|
|
@@ -2290,7 +2335,7 @@ const ARealmForm = defineComponent({
|
|
|
2290
2335
|
required,
|
|
2291
2336
|
minLength: minLength(3),
|
|
2292
2337
|
maxLength: maxLength(128),
|
|
2293
|
-
[
|
|
2338
|
+
["alphaUpperNumHyphenUnderscoreDot"]: VuelidateCustomRule["alphaUpperNumHyphenUnderscoreDot"]
|
|
2294
2339
|
},
|
|
2295
2340
|
display_name: {
|
|
2296
2341
|
minLength: minLength(3),
|
|
@@ -2329,12 +2374,12 @@ const ARealmForm = defineComponent({
|
|
|
2329
2374
|
};
|
|
2330
2375
|
const translationsValidation = useTranslationsForNestedValidation($v.value);
|
|
2331
2376
|
const translationsSubmit = createFormSubmitTranslations();
|
|
2332
|
-
const translationsDefault = useTranslationsForGroup(
|
|
2333
|
-
{ key:
|
|
2334
|
-
{ key:
|
|
2335
|
-
{ key:
|
|
2336
|
-
{ key:
|
|
2337
|
-
{ key:
|
|
2377
|
+
const translationsDefault = useTranslationsForGroup("default", [
|
|
2378
|
+
{ key: "generate" },
|
|
2379
|
+
{ key: "name" },
|
|
2380
|
+
{ key: "displayName" },
|
|
2381
|
+
{ key: "description" },
|
|
2382
|
+
{ key: "realm" }
|
|
2338
2383
|
]);
|
|
2339
2384
|
const render = () => {
|
|
2340
2385
|
const children = [];
|
|
@@ -2342,7 +2387,7 @@ const ARealmForm = defineComponent({
|
|
|
2342
2387
|
validationMessages: translationsValidation.name.value,
|
|
2343
2388
|
validationSeverity: getVuelidateSeverity($v.value.name),
|
|
2344
2389
|
label: true,
|
|
2345
|
-
labelContent: translationsDefault[
|
|
2390
|
+
labelContent: translationsDefault["name"].value,
|
|
2346
2391
|
content: buildFormInput({
|
|
2347
2392
|
value: $v.value.name.$model,
|
|
2348
2393
|
onChange(input) {
|
|
@@ -2363,13 +2408,13 @@ const ARealmForm = defineComponent({
|
|
|
2363
2408
|
}, [
|
|
2364
2409
|
h("i", { class: "fa fa-wrench" }),
|
|
2365
2410
|
" ",
|
|
2366
|
-
translationsDefault[
|
|
2411
|
+
translationsDefault["generate"].value
|
|
2367
2412
|
])])]);
|
|
2368
2413
|
children.push(buildFormGroup({
|
|
2369
2414
|
validationMessages: translationsValidation.display_name.value,
|
|
2370
2415
|
validationSeverity: getVuelidateSeverity($v.value.display_name),
|
|
2371
2416
|
label: true,
|
|
2372
|
-
labelContent: translationsDefault[
|
|
2417
|
+
labelContent: translationsDefault["displayName"].value,
|
|
2373
2418
|
content: buildFormInput({
|
|
2374
2419
|
value: $v.value.display_name.$model,
|
|
2375
2420
|
onChange(input) {
|
|
@@ -2381,7 +2426,7 @@ const ARealmForm = defineComponent({
|
|
|
2381
2426
|
validationMessages: translationsValidation.description.value,
|
|
2382
2427
|
validationSeverity: getVuelidateSeverity($v.value.description),
|
|
2383
2428
|
label: true,
|
|
2384
|
-
labelContent: translationsDefault[
|
|
2429
|
+
labelContent: translationsDefault["description"].value,
|
|
2385
2430
|
content: buildFormTextarea({
|
|
2386
2431
|
value: $v.value.description.$model,
|
|
2387
2432
|
onChange(input) {
|
|
@@ -2416,14 +2461,13 @@ const ARealms = defineComponent({
|
|
|
2416
2461
|
props,
|
|
2417
2462
|
setup: ctx
|
|
2418
2463
|
});
|
|
2419
|
-
const translationsName = useTranslation({
|
|
2420
|
-
group: TranslatorTranslationGroup.VUECS,
|
|
2421
|
-
key: TranslatorTranslationDefaultKey.REALMS
|
|
2422
|
-
});
|
|
2423
2464
|
const translation = useTranslation({
|
|
2424
|
-
group:
|
|
2425
|
-
key:
|
|
2426
|
-
data: { name:
|
|
2465
|
+
group: "vuecs",
|
|
2466
|
+
key: "noMore",
|
|
2467
|
+
data: { name: useTranslation({
|
|
2468
|
+
group: "vuecs",
|
|
2469
|
+
key: "realms"
|
|
2470
|
+
}) }
|
|
2427
2471
|
});
|
|
2428
2472
|
return () => render({ noMore: { content: translation.value } });
|
|
2429
2473
|
}
|
|
@@ -2485,7 +2529,7 @@ var AClientForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
2485
2529
|
active: { required },
|
|
2486
2530
|
name: {
|
|
2487
2531
|
required,
|
|
2488
|
-
[
|
|
2532
|
+
["alphaUpperNumHyphenUnderscoreDot"]: VuelidateCustomRule["alphaUpperNumHyphenUnderscoreDot"],
|
|
2489
2533
|
minLength: minLength(3),
|
|
2490
2534
|
maxLength: maxLength(256)
|
|
2491
2535
|
},
|
|
@@ -2544,22 +2588,22 @@ var AClientForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
2544
2588
|
await manager.createOrUpdate(form);
|
|
2545
2589
|
assignFormProperties(form, manager.data.value);
|
|
2546
2590
|
};
|
|
2547
|
-
const translationsClient = useTranslationsForGroup(
|
|
2548
|
-
{ key:
|
|
2549
|
-
{ key:
|
|
2550
|
-
{ key:
|
|
2551
|
-
{ key:
|
|
2552
|
-
{ key:
|
|
2553
|
-
{ key:
|
|
2591
|
+
const translationsClient = useTranslationsForGroup("authupClient", [
|
|
2592
|
+
{ key: "nameHint" },
|
|
2593
|
+
{ key: "descriptionHint" },
|
|
2594
|
+
{ key: "redirectURIHint" },
|
|
2595
|
+
{ key: "isConfidential" },
|
|
2596
|
+
{ key: "isActive" },
|
|
2597
|
+
{ key: "hashSecret" }
|
|
2554
2598
|
]);
|
|
2555
|
-
const translationsDefault = useTranslationsForGroup(
|
|
2556
|
-
{ key:
|
|
2557
|
-
{ key:
|
|
2558
|
-
{ key:
|
|
2559
|
-
{ key:
|
|
2560
|
-
{ key:
|
|
2561
|
-
{ key:
|
|
2562
|
-
{ key:
|
|
2599
|
+
const translationsDefault = useTranslationsForGroup("default", [
|
|
2600
|
+
{ key: "generate" },
|
|
2601
|
+
{ key: "name" },
|
|
2602
|
+
{ key: "displayName" },
|
|
2603
|
+
{ key: "description" },
|
|
2604
|
+
{ key: "realm" },
|
|
2605
|
+
{ key: "redirectUris" },
|
|
2606
|
+
{ key: "secret" }
|
|
2563
2607
|
]);
|
|
2564
2608
|
const redirectUris = computed(() => vuelidate.value.redirect_uri.$model ? vuelidate.value.redirect_uri.$model.split(",") : []);
|
|
2565
2609
|
return {
|
|
@@ -2579,18 +2623,18 @@ var AClientForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
2579
2623
|
});
|
|
2580
2624
|
//#endregion
|
|
2581
2625
|
//#region src/components/entities/client/AClientForm.vue
|
|
2582
|
-
const _hoisted_1$
|
|
2583
|
-
const _hoisted_2$
|
|
2584
|
-
const _hoisted_3$
|
|
2626
|
+
const _hoisted_1$21 = { class: "row" };
|
|
2627
|
+
const _hoisted_2$13 = { class: "col" };
|
|
2628
|
+
const _hoisted_3$11 = {
|
|
2585
2629
|
key: 0,
|
|
2586
2630
|
class: "text-danger font-weight-bold"
|
|
2587
2631
|
};
|
|
2588
|
-
const _hoisted_4$
|
|
2589
|
-
const _hoisted_5$
|
|
2590
|
-
const _hoisted_6$
|
|
2591
|
-
const _hoisted_7$
|
|
2632
|
+
const _hoisted_4$9 = { class: "row" };
|
|
2633
|
+
const _hoisted_5$6 = { class: "col" };
|
|
2634
|
+
const _hoisted_6$5 = { class: "col" };
|
|
2635
|
+
const _hoisted_7$2 = { class: "col" };
|
|
2592
2636
|
const _hoisted_8$1 = { class: "col" };
|
|
2593
|
-
function _sfc_render$
|
|
2637
|
+
function _sfc_render$49(_ctx, _cache, $props, $setup, $data, $options) {
|
|
2594
2638
|
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
2595
2639
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
2596
2640
|
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
@@ -2599,7 +2643,7 @@ function _sfc_render$15(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
2599
2643
|
const _component_AFormInputList = resolveComponent("AFormInputList");
|
|
2600
2644
|
const _component_VCFormTextarea = resolveComponent("VCFormTextarea");
|
|
2601
2645
|
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
2602
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
2646
|
+
return openBlock(), createElementBlock("div", _hoisted_1$21, [createElementVNode("div", _hoisted_2$13, [
|
|
2603
2647
|
_ctx.data ? (openBlock(), createBlock(_component_VCFormGroup, { key: 0 }, {
|
|
2604
2648
|
label: withCtx(() => [..._cache[10] || (_cache[10] = [createTextVNode(" ID ", -1)])]),
|
|
2605
2649
|
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
@@ -2645,7 +2689,7 @@ function _sfc_render$15(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
2645
2689
|
"validation-messages": props.data,
|
|
2646
2690
|
"validation-severity": props.severity
|
|
2647
2691
|
}, {
|
|
2648
|
-
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.secret) + " ", 1), _ctx.isSecretHashed ? (openBlock(), createElementBlock("span", _hoisted_3$
|
|
2692
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.secret) + " ", 1), _ctx.isSecretHashed ? (openBlock(), createElementBlock("span", _hoisted_3$11, [..._cache[11] || (_cache[11] = [createElementVNode("i", { class: "fa fa-exclamation-triangle" }, null, -1)])])) : createCommentVNode("v-if", true)]),
|
|
2649
2693
|
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
2650
2694
|
modelValue: _ctx.vuelidate.secret.$model,
|
|
2651
2695
|
"onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => _ctx.vuelidate.secret.$model = $event),
|
|
@@ -2662,8 +2706,8 @@ function _sfc_render$15(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
2662
2706
|
}, 8, ["validation-messages", "validation-severity"])]),
|
|
2663
2707
|
_: 1
|
|
2664
2708
|
}, 8, ["validation"]),
|
|
2665
|
-
createElementVNode("div", _hoisted_4$
|
|
2666
|
-
createElementVNode("div", _hoisted_5$
|
|
2709
|
+
createElementVNode("div", _hoisted_4$9, [
|
|
2710
|
+
createElementVNode("div", _hoisted_5$6, [createVNode(_component_IVuelidate, { validation: _ctx.vuelidate.is_confidential }, {
|
|
2667
2711
|
default: withCtx((props) => [createVNode(_component_VCFormGroup, {
|
|
2668
2712
|
"validation-messages": props.data,
|
|
2669
2713
|
"validation-severity": props.severity
|
|
@@ -2679,7 +2723,7 @@ function _sfc_render$15(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
2679
2723
|
}, 8, ["validation-messages", "validation-severity"])]),
|
|
2680
2724
|
_: 1
|
|
2681
2725
|
}, 8, ["validation"])]),
|
|
2682
|
-
createElementVNode("div", _hoisted_6$
|
|
2726
|
+
createElementVNode("div", _hoisted_6$5, [createVNode(_component_IVuelidate, { validation: _ctx.vuelidate.secret_hashed }, {
|
|
2683
2727
|
default: withCtx((props) => [createVNode(_component_VCFormGroup, {
|
|
2684
2728
|
"validation-messages": props.data,
|
|
2685
2729
|
"validation-severity": props.severity
|
|
@@ -2695,7 +2739,7 @@ function _sfc_render$15(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
2695
2739
|
}, 8, ["validation-messages", "validation-severity"])]),
|
|
2696
2740
|
_: 1
|
|
2697
2741
|
}, 8, ["validation"])]),
|
|
2698
|
-
createElementVNode("div", _hoisted_7$
|
|
2742
|
+
createElementVNode("div", _hoisted_7$2, [createVNode(_component_IVuelidate, { validation: _ctx.vuelidate.active }, {
|
|
2699
2743
|
default: withCtx((props) => [createVNode(_component_VCFormGroup, {
|
|
2700
2744
|
"validation-messages": props.data,
|
|
2701
2745
|
"validation-severity": props.severity
|
|
@@ -2773,7 +2817,7 @@ function _sfc_render$15(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
2773
2817
|
])])
|
|
2774
2818
|
])]);
|
|
2775
2819
|
}
|
|
2776
|
-
var AClientForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AClientForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
2820
|
+
var AClientForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AClientForm_vue_vue_type_script_lang_default, [["render", _sfc_render$49]]);
|
|
2777
2821
|
//#endregion
|
|
2778
2822
|
//#region src/components/entities/client/AClients.ts
|
|
2779
2823
|
const AClients = defineComponent({
|
|
@@ -2786,14 +2830,13 @@ const AClients = defineComponent({
|
|
|
2786
2830
|
props,
|
|
2787
2831
|
setup: ctx
|
|
2788
2832
|
});
|
|
2789
|
-
const translationName = useTranslation({
|
|
2790
|
-
group: TranslatorTranslationGroup.DEFAULT,
|
|
2791
|
-
key: TranslatorTranslationDefaultKey.CLIENTS
|
|
2792
|
-
});
|
|
2793
2833
|
const translation = useTranslation({
|
|
2794
|
-
group:
|
|
2795
|
-
key:
|
|
2796
|
-
data: { name:
|
|
2834
|
+
group: "vuecs",
|
|
2835
|
+
key: "noMore",
|
|
2836
|
+
data: { name: useTranslation({
|
|
2837
|
+
group: "default",
|
|
2838
|
+
key: "clients"
|
|
2839
|
+
}) }
|
|
2797
2840
|
});
|
|
2798
2841
|
return () => render({ noMore: { content: translation.value } });
|
|
2799
2842
|
}
|
|
@@ -2814,206 +2857,6 @@ const AClientPicker = defineComponent({
|
|
|
2814
2857
|
}
|
|
2815
2858
|
});
|
|
2816
2859
|
//#endregion
|
|
2817
|
-
//#region src/components/entities/policy/APolicies.ts
|
|
2818
|
-
const APolicies = defineComponent({
|
|
2819
|
-
props: defineEntityCollectionVProps(),
|
|
2820
|
-
emits: defineEntityCollectionVEmitOptions(),
|
|
2821
|
-
slots: Object,
|
|
2822
|
-
setup(props, setup) {
|
|
2823
|
-
const { render } = defineEntityCollectionManager({
|
|
2824
|
-
type: `${EntityType.POLICY}`,
|
|
2825
|
-
props,
|
|
2826
|
-
setup
|
|
2827
|
-
});
|
|
2828
|
-
const translationName = useTranslation({
|
|
2829
|
-
group: TranslatorTranslationGroup.DEFAULT,
|
|
2830
|
-
key: TranslatorTranslationDefaultKey.POLICIES
|
|
2831
|
-
});
|
|
2832
|
-
const translation = useTranslation({
|
|
2833
|
-
group: TranslatorTranslationGroup.VUECS,
|
|
2834
|
-
key: TranslatorTranslationVuecsKey.NO_MORE,
|
|
2835
|
-
data: { name: translationName }
|
|
2836
|
-
});
|
|
2837
|
-
return () => render({ noMore: { content: translation.value } });
|
|
2838
|
-
}
|
|
2839
|
-
});
|
|
2840
|
-
//#endregion
|
|
2841
|
-
//#region src/components/entities/permission-policy-binding/APermissionPolicyBindingButton.ts
|
|
2842
|
-
const APermissionPolicyBindingButton = defineComponent({
|
|
2843
|
-
props: {
|
|
2844
|
-
entityType: {
|
|
2845
|
-
type: String,
|
|
2846
|
-
required: true
|
|
2847
|
-
},
|
|
2848
|
-
entity: {
|
|
2849
|
-
type: Object,
|
|
2850
|
-
required: true
|
|
2851
|
-
}
|
|
2852
|
-
},
|
|
2853
|
-
emits: ["updated", "failed"],
|
|
2854
|
-
setup(props, { emit }) {
|
|
2855
|
-
const client = injectHTTPClient();
|
|
2856
|
-
const modalOpen = ref(false);
|
|
2857
|
-
const busy = ref(false);
|
|
2858
|
-
const currentPolicyId = ref(props.entity.policy_id);
|
|
2859
|
-
watch(toRef(props, "entity"), (val) => {
|
|
2860
|
-
currentPolicyId.value = val.policy_id;
|
|
2861
|
-
}, { deep: true });
|
|
2862
|
-
const handleKeydown = (e) => {
|
|
2863
|
-
if (e.key === "Escape" && modalOpen.value) modalOpen.value = false;
|
|
2864
|
-
};
|
|
2865
|
-
onMounted(() => {
|
|
2866
|
-
document.addEventListener("keydown", handleKeydown);
|
|
2867
|
-
});
|
|
2868
|
-
onUnmounted(() => {
|
|
2869
|
-
document.removeEventListener("keydown", handleKeydown);
|
|
2870
|
-
});
|
|
2871
|
-
const handlePolicySelect = async (policyId) => {
|
|
2872
|
-
if (busy.value) return;
|
|
2873
|
-
const api = hasOwnProperty(client, props.entityType) ? client[props.entityType] : void 0;
|
|
2874
|
-
if (!api || !api.update) return;
|
|
2875
|
-
busy.value = true;
|
|
2876
|
-
try {
|
|
2877
|
-
const response = await api.update(props.entity.id, { policy_id: policyId });
|
|
2878
|
-
currentPolicyId.value = policyId;
|
|
2879
|
-
emit("updated", response);
|
|
2880
|
-
} catch (e) {
|
|
2881
|
-
if (e instanceof Error) emit("failed", e);
|
|
2882
|
-
} finally {
|
|
2883
|
-
busy.value = false;
|
|
2884
|
-
}
|
|
2885
|
-
};
|
|
2886
|
-
const modalTitleId = `policy-modal-title-${props.entity.id}`;
|
|
2887
|
-
return () => {
|
|
2888
|
-
const children = [];
|
|
2889
|
-
children.push(h("button", {
|
|
2890
|
-
class: ["btn btn-xs", {
|
|
2891
|
-
"btn-dark": busy.value,
|
|
2892
|
-
"btn-primary": !busy.value && currentPolicyId.value,
|
|
2893
|
-
"btn-secondary": !busy.value && !currentPolicyId.value
|
|
2894
|
-
}],
|
|
2895
|
-
disabled: busy.value,
|
|
2896
|
-
onClick(e) {
|
|
2897
|
-
e.preventDefault();
|
|
2898
|
-
modalOpen.value = true;
|
|
2899
|
-
}
|
|
2900
|
-
}, [h("i", { class: "fa fa-cog" })]));
|
|
2901
|
-
if (modalOpen.value) {
|
|
2902
|
-
const backdrop = h("div", {
|
|
2903
|
-
class: "modal-backdrop fade show",
|
|
2904
|
-
onClick() {
|
|
2905
|
-
modalOpen.value = false;
|
|
2906
|
-
}
|
|
2907
|
-
});
|
|
2908
|
-
const modal = h("div", {
|
|
2909
|
-
class: "modal fade show d-block",
|
|
2910
|
-
tabindex: "-1",
|
|
2911
|
-
role: "dialog",
|
|
2912
|
-
"aria-modal": "true",
|
|
2913
|
-
"aria-labelledby": modalTitleId
|
|
2914
|
-
}, [h("div", {
|
|
2915
|
-
class: "modal-dialog",
|
|
2916
|
-
role: "document",
|
|
2917
|
-
onClick(e) {
|
|
2918
|
-
e.stopPropagation();
|
|
2919
|
-
}
|
|
2920
|
-
}, [h("div", { class: "modal-content" }, [
|
|
2921
|
-
h("div", { class: "modal-header" }, [h("h5", {
|
|
2922
|
-
class: "modal-title",
|
|
2923
|
-
id: modalTitleId
|
|
2924
|
-
}, "Junction Policy"), h("button", {
|
|
2925
|
-
type: "button",
|
|
2926
|
-
class: "btn-close",
|
|
2927
|
-
"aria-label": "Close",
|
|
2928
|
-
onClick() {
|
|
2929
|
-
modalOpen.value = false;
|
|
2930
|
-
}
|
|
2931
|
-
})]),
|
|
2932
|
-
h("div", { class: "modal-body" }, [h(APolicies, { query: { filters: { parent_id: null } } }, { [SlotName.ITEM_ACTIONS]: (slotProps) => {
|
|
2933
|
-
const isSelected = currentPolicyId.value === slotProps.data.id;
|
|
2934
|
-
return h("button", {
|
|
2935
|
-
class: ["btn btn-xs", {
|
|
2936
|
-
"btn-dark": busy.value,
|
|
2937
|
-
"btn-success": !busy.value && isSelected,
|
|
2938
|
-
"btn-secondary": !busy.value && !isSelected
|
|
2939
|
-
}],
|
|
2940
|
-
disabled: busy.value,
|
|
2941
|
-
onClick(e) {
|
|
2942
|
-
e.preventDefault();
|
|
2943
|
-
if (isSelected) handlePolicySelect(null);
|
|
2944
|
-
else handlePolicySelect(slotProps.data.id);
|
|
2945
|
-
}
|
|
2946
|
-
}, [h("i", { class: ["fa", {
|
|
2947
|
-
"fa-check": isSelected,
|
|
2948
|
-
"fa-plus": !isSelected
|
|
2949
|
-
}] })]);
|
|
2950
|
-
} })]),
|
|
2951
|
-
h("div", { class: "modal-footer" }, [currentPolicyId.value ? h("button", {
|
|
2952
|
-
type: "button",
|
|
2953
|
-
class: "btn btn-warning btn-xs",
|
|
2954
|
-
disabled: busy.value,
|
|
2955
|
-
onClick() {
|
|
2956
|
-
handlePolicySelect(null);
|
|
2957
|
-
}
|
|
2958
|
-
}, "Reset") : void 0, h("button", {
|
|
2959
|
-
type: "button",
|
|
2960
|
-
class: "btn btn-secondary btn-xs",
|
|
2961
|
-
onClick() {
|
|
2962
|
-
modalOpen.value = false;
|
|
2963
|
-
}
|
|
2964
|
-
}, "Close")])
|
|
2965
|
-
])])]);
|
|
2966
|
-
children.push(h(Teleport, { to: "body" }, [backdrop, modal]));
|
|
2967
|
-
}
|
|
2968
|
-
return h("span", children);
|
|
2969
|
-
};
|
|
2970
|
-
}
|
|
2971
|
-
});
|
|
2972
|
-
//#endregion
|
|
2973
|
-
//#region src/components/entities/client-permission/AClientPermissionAssignment.ts
|
|
2974
|
-
const AClientPermissionAssignment = defineComponent({
|
|
2975
|
-
props: {
|
|
2976
|
-
clientId: String,
|
|
2977
|
-
permissionId: String
|
|
2978
|
-
},
|
|
2979
|
-
emits: defineEntityVEmitOptions(),
|
|
2980
|
-
async setup(props, setup) {
|
|
2981
|
-
const manager = defineEntityManager({
|
|
2982
|
-
type: `${EntityType.CLIENT_PERMISSION}`,
|
|
2983
|
-
setup,
|
|
2984
|
-
socket: { processEvent(event) {
|
|
2985
|
-
return event.data.permission_id === props.permissionId && event.data.client_id === props.clientId;
|
|
2986
|
-
} }
|
|
2987
|
-
});
|
|
2988
|
-
await manager.resolve({ query: { filters: {
|
|
2989
|
-
client_id: props.clientId,
|
|
2990
|
-
permission_id: props.permissionId
|
|
2991
|
-
} } });
|
|
2992
|
-
return () => {
|
|
2993
|
-
const children = [renderToggleButton({
|
|
2994
|
-
changed: (value) => {
|
|
2995
|
-
if (value) return manager.create({
|
|
2996
|
-
client_id: props.clientId,
|
|
2997
|
-
permission_id: props.permissionId
|
|
2998
|
-
});
|
|
2999
|
-
return manager.delete();
|
|
3000
|
-
},
|
|
3001
|
-
value: !!manager.data.value,
|
|
3002
|
-
isBusy: manager.busy.value
|
|
3003
|
-
})];
|
|
3004
|
-
if (manager.data.value) children.push(h(APermissionPolicyBindingButton, {
|
|
3005
|
-
entityType: EntityType.CLIENT_PERMISSION,
|
|
3006
|
-
entity: manager.data.value,
|
|
3007
|
-
key: manager.data.value.id,
|
|
3008
|
-
onUpdated: (entity) => {
|
|
3009
|
-
manager.updated(entity);
|
|
3010
|
-
}
|
|
3011
|
-
}));
|
|
3012
|
-
return h("span", { class: "d-flex gap-1" }, children);
|
|
3013
|
-
};
|
|
3014
|
-
}
|
|
3015
|
-
});
|
|
3016
|
-
//#endregion
|
|
3017
2860
|
//#region src/components/entities/permission/APermission.ts
|
|
3018
2861
|
const APermission = defineComponent({
|
|
3019
2862
|
props: defineEntityVProps(),
|
|
@@ -3088,7 +2931,7 @@ const APermissionForm = defineComponent({
|
|
|
3088
2931
|
required,
|
|
3089
2932
|
minLength: minLength(3),
|
|
3090
2933
|
maxLength: maxLength(128),
|
|
3091
|
-
[
|
|
2934
|
+
["alphaUpperNumHyphenUnderscoreDot"]: VuelidateCustomRule["alphaUpperNumHyphenUnderscoreDot"]
|
|
3092
2935
|
},
|
|
3093
2936
|
display_name: {
|
|
3094
2937
|
minLength: minLength(3),
|
|
@@ -3134,12 +2977,12 @@ const APermissionForm = defineComponent({
|
|
|
3134
2977
|
};
|
|
3135
2978
|
const translationsValidation = useTranslationsForNestedValidation($v.value);
|
|
3136
2979
|
const translationsSubmit = createFormSubmitTranslations();
|
|
3137
|
-
const translationsDefault = useTranslationsForGroup(
|
|
3138
|
-
{ key:
|
|
3139
|
-
{ key:
|
|
3140
|
-
{ key:
|
|
3141
|
-
{ key:
|
|
3142
|
-
{ key:
|
|
2980
|
+
const translationsDefault = useTranslationsForGroup("default", [
|
|
2981
|
+
{ key: "name" },
|
|
2982
|
+
{ key: "displayName" },
|
|
2983
|
+
{ key: "description" },
|
|
2984
|
+
{ key: "decisionStrategy" },
|
|
2985
|
+
{ key: "realm" }
|
|
3143
2986
|
]);
|
|
3144
2987
|
const render = () => {
|
|
3145
2988
|
const children = [];
|
|
@@ -3147,7 +2990,7 @@ const APermissionForm = defineComponent({
|
|
|
3147
2990
|
validationMessages: translationsValidation.name.value,
|
|
3148
2991
|
validationSeverity: getVuelidateSeverity($v.value.name),
|
|
3149
2992
|
label: true,
|
|
3150
|
-
labelContent: translationsDefault[
|
|
2993
|
+
labelContent: translationsDefault["name"].value,
|
|
3151
2994
|
content: buildFormInput({
|
|
3152
2995
|
value: $v.value.name.$model,
|
|
3153
2996
|
onChange(input) {
|
|
@@ -3160,7 +3003,7 @@ const APermissionForm = defineComponent({
|
|
|
3160
3003
|
validationMessages: translationsValidation.display_name.value,
|
|
3161
3004
|
validationSeverity: getVuelidateSeverity($v.value.display_name),
|
|
3162
3005
|
label: true,
|
|
3163
|
-
labelContent: translationsDefault[
|
|
3006
|
+
labelContent: translationsDefault["displayName"].value,
|
|
3164
3007
|
content: buildFormInput({
|
|
3165
3008
|
value: $v.value.display_name.$model,
|
|
3166
3009
|
onChange(input) {
|
|
@@ -3172,7 +3015,7 @@ const APermissionForm = defineComponent({
|
|
|
3172
3015
|
validationMessages: translationsValidation.description.value,
|
|
3173
3016
|
validationSeverity: getVuelidateSeverity($v.value.description),
|
|
3174
3017
|
label: true,
|
|
3175
|
-
labelContent: translationsDefault[
|
|
3018
|
+
labelContent: translationsDefault["description"].value,
|
|
3176
3019
|
content: buildFormTextarea({
|
|
3177
3020
|
value: $v.value.description.$model,
|
|
3178
3021
|
onChange(input) {
|
|
@@ -3185,7 +3028,7 @@ const APermissionForm = defineComponent({
|
|
|
3185
3028
|
validationMessages: translationsValidation.decision_strategy.value,
|
|
3186
3029
|
validationSeverity: getVuelidateSeverity($v.value.decision_strategy),
|
|
3187
3030
|
label: true,
|
|
3188
|
-
labelContent: translationsDefault[
|
|
3031
|
+
labelContent: translationsDefault["decisionStrategy"].value,
|
|
3189
3032
|
content: [buildFormSelect({
|
|
3190
3033
|
value: $v.value.decision_strategy.$model,
|
|
3191
3034
|
onChange(input) {
|
|
@@ -3200,7 +3043,7 @@ const APermissionForm = defineComponent({
|
|
|
3200
3043
|
validationMessages: translationsValidation.realm_id.value,
|
|
3201
3044
|
validationSeverity: getVuelidateSeverity($v.value.realm_id),
|
|
3202
3045
|
label: true,
|
|
3203
|
-
labelContent: translationsDefault[
|
|
3046
|
+
labelContent: translationsDefault["realm"].value,
|
|
3204
3047
|
content: h(ARealmPicker, {
|
|
3205
3048
|
value: $v.value.realm_id.$model,
|
|
3206
3049
|
multiple: false,
|
|
@@ -3235,42 +3078,460 @@ const APermissions = defineComponent({
|
|
|
3235
3078
|
props,
|
|
3236
3079
|
setup
|
|
3237
3080
|
});
|
|
3238
|
-
const
|
|
3239
|
-
group:
|
|
3240
|
-
key:
|
|
3081
|
+
const translation = useTranslation({
|
|
3082
|
+
group: "vuecs",
|
|
3083
|
+
key: "noMore",
|
|
3084
|
+
data: { name: useTranslation({
|
|
3085
|
+
group: "default",
|
|
3086
|
+
key: "permissions"
|
|
3087
|
+
}) }
|
|
3088
|
+
});
|
|
3089
|
+
return () => render({ noMore: { content: translation.value } });
|
|
3090
|
+
}
|
|
3091
|
+
});
|
|
3092
|
+
//#endregion
|
|
3093
|
+
//#region src/components/entities/policy/APolicies.ts
|
|
3094
|
+
const APolicies = defineComponent({
|
|
3095
|
+
props: defineEntityCollectionVProps(),
|
|
3096
|
+
emits: defineEntityCollectionVEmitOptions(),
|
|
3097
|
+
slots: Object,
|
|
3098
|
+
setup(props, setup) {
|
|
3099
|
+
const { render } = defineEntityCollectionManager({
|
|
3100
|
+
type: `${EntityType.POLICY}`,
|
|
3101
|
+
props,
|
|
3102
|
+
setup
|
|
3241
3103
|
});
|
|
3242
3104
|
const translation = useTranslation({
|
|
3243
|
-
group:
|
|
3244
|
-
key:
|
|
3245
|
-
data: { name:
|
|
3105
|
+
group: "vuecs",
|
|
3106
|
+
key: "noMore",
|
|
3107
|
+
data: { name: useTranslation({
|
|
3108
|
+
group: "default",
|
|
3109
|
+
key: "policies"
|
|
3110
|
+
}) }
|
|
3246
3111
|
});
|
|
3247
3112
|
return () => render({ noMore: { content: translation.value } });
|
|
3248
3113
|
}
|
|
3249
3114
|
});
|
|
3250
3115
|
//#endregion
|
|
3251
|
-
//#region src/components/entities/
|
|
3252
|
-
const
|
|
3253
|
-
|
|
3116
|
+
//#region src/components/entities/policy/APolicyTypeBadge.vue?vue&type=script&lang.ts
|
|
3117
|
+
const typeLabels = {
|
|
3118
|
+
[BuiltInPolicyType.COMPOSITE]: "Composite",
|
|
3119
|
+
[BuiltInPolicyType.DATE]: "Date",
|
|
3120
|
+
[BuiltInPolicyType.TIME]: "Time",
|
|
3121
|
+
[BuiltInPolicyType.ATTRIBUTE_NAMES]: "Attr Names",
|
|
3122
|
+
[BuiltInPolicyType.ATTRIBUTES]: "Attributes",
|
|
3123
|
+
[BuiltInPolicyType.REALM_MATCH]: "Realm Match",
|
|
3124
|
+
[BuiltInPolicyType.IDENTITY]: "Identity",
|
|
3125
|
+
[BuiltInPolicyType.PERMISSION_BINDING]: "Perm Binding"
|
|
3126
|
+
};
|
|
3127
|
+
var APolicyTypeBadge_vue_vue_type_script_lang_default = defineComponent({
|
|
3128
|
+
props: { type: {
|
|
3254
3129
|
type: String,
|
|
3255
3130
|
required: true
|
|
3256
3131
|
} },
|
|
3257
|
-
setup(
|
|
3258
|
-
return
|
|
3259
|
-
[SlotName.ITEM_ACTIONS]: (slotProps) => h(AClientPermissionAssignment, {
|
|
3260
|
-
clientInd: props.entityId,
|
|
3261
|
-
permissionId: slotProps.data.id,
|
|
3262
|
-
key: slotProps.data.id
|
|
3263
|
-
}),
|
|
3264
|
-
...slots
|
|
3265
|
-
});
|
|
3132
|
+
setup() {
|
|
3133
|
+
return { typeLabels };
|
|
3266
3134
|
}
|
|
3267
3135
|
});
|
|
3268
3136
|
//#endregion
|
|
3269
|
-
//#region src/components/entities/
|
|
3270
|
-
const
|
|
3137
|
+
//#region src/components/entities/policy/APolicyTypeBadge.vue
|
|
3138
|
+
const _hoisted_1$20 = { class: "badge bg-info" };
|
|
3139
|
+
function _sfc_render$48(_ctx, _cache, $props, $setup, $data, $options) {
|
|
3140
|
+
return openBlock(), createElementBlock("span", _hoisted_1$20, toDisplayString(_ctx.typeLabels[_ctx.type] || _ctx.type), 1);
|
|
3141
|
+
}
|
|
3142
|
+
var APolicyTypeBadge_default = /* @__PURE__ */ _plugin_vue_export_helper_default(APolicyTypeBadge_vue_vue_type_script_lang_default, [["render", _sfc_render$48]]);
|
|
3143
|
+
//#endregion
|
|
3144
|
+
//#region src/components/entities/policy/APolicyDetailNav.vue?vue&type=script&lang.ts
|
|
3145
|
+
var APolicyDetailNav_vue_vue_type_script_lang_default = defineComponent({
|
|
3146
|
+
props: { policyId: {
|
|
3147
|
+
type: String,
|
|
3148
|
+
required: true
|
|
3149
|
+
} },
|
|
3150
|
+
emits: ["click"],
|
|
3151
|
+
setup(props, { emit }) {
|
|
3152
|
+
const handleClick = (e) => {
|
|
3153
|
+
e.preventDefault();
|
|
3154
|
+
emit("click", props.policyId);
|
|
3155
|
+
};
|
|
3156
|
+
return { handleClick };
|
|
3157
|
+
}
|
|
3158
|
+
});
|
|
3159
|
+
//#endregion
|
|
3160
|
+
//#region src/components/entities/policy/APolicyDetailNav.vue
|
|
3161
|
+
function _sfc_render$47(_ctx, _cache, $props, $setup, $data, $options) {
|
|
3162
|
+
return openBlock(), createElementBlock("button", {
|
|
3163
|
+
type: "button",
|
|
3164
|
+
class: "btn btn-xs btn-outline-info",
|
|
3165
|
+
title: "View policy details",
|
|
3166
|
+
"aria-label": "View policy details",
|
|
3167
|
+
onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
|
|
3168
|
+
}, [..._cache[1] || (_cache[1] = [createElementVNode("i", { class: "fa fa-eye" }, null, -1)])]);
|
|
3169
|
+
}
|
|
3170
|
+
var APolicyDetailNav_default = /* @__PURE__ */ _plugin_vue_export_helper_default(APolicyDetailNav_vue_vue_type_script_lang_default, [["render", _sfc_render$47]]);
|
|
3171
|
+
//#endregion
|
|
3172
|
+
//#region src/components/entities/policy/APolicyInlineInfo.vue?vue&type=script&lang.ts
|
|
3173
|
+
var APolicyInlineInfo_vue_vue_type_script_lang_default = defineComponent({
|
|
3174
|
+
components: {
|
|
3175
|
+
APolicyTypeBadge: APolicyTypeBadge_default,
|
|
3176
|
+
APolicyDetailNav: APolicyDetailNav_default
|
|
3177
|
+
},
|
|
3271
3178
|
props: { entity: {
|
|
3272
3179
|
type: Object,
|
|
3273
|
-
|
|
3180
|
+
required: true
|
|
3181
|
+
} },
|
|
3182
|
+
emits: ["detail"],
|
|
3183
|
+
setup(props, { emit }) {
|
|
3184
|
+
const handleDetail = () => {
|
|
3185
|
+
emit("detail", props.entity);
|
|
3186
|
+
};
|
|
3187
|
+
return { handleDetail };
|
|
3188
|
+
}
|
|
3189
|
+
});
|
|
3190
|
+
//#endregion
|
|
3191
|
+
//#region src/components/entities/policy/APolicyInlineInfo.vue
|
|
3192
|
+
const _hoisted_1$19 = {
|
|
3193
|
+
key: 0,
|
|
3194
|
+
class: "badge bg-warning"
|
|
3195
|
+
};
|
|
3196
|
+
function _sfc_render$46(_ctx, _cache, $props, $setup, $data, $options) {
|
|
3197
|
+
const _component_APolicyTypeBadge = resolveComponent("APolicyTypeBadge");
|
|
3198
|
+
const _component_APolicyDetailNav = resolveComponent("APolicyDetailNav");
|
|
3199
|
+
return openBlock(), createElementBlock(Fragment, null, [
|
|
3200
|
+
createVNode(_component_APolicyTypeBadge, { type: _ctx.entity.type }, null, 8, ["type"]),
|
|
3201
|
+
_ctx.entity.invert ? (openBlock(), createElementBlock("span", _hoisted_1$19, "Inverted")) : createCommentVNode("v-if", true),
|
|
3202
|
+
createVNode(_component_APolicyDetailNav, {
|
|
3203
|
+
"policy-id": _ctx.entity.id,
|
|
3204
|
+
onClick: _ctx.handleDetail
|
|
3205
|
+
}, null, 8, ["policy-id", "onClick"])
|
|
3206
|
+
], 64);
|
|
3207
|
+
}
|
|
3208
|
+
var APolicyInlineInfo_default = /* @__PURE__ */ _plugin_vue_export_helper_default(APolicyInlineInfo_vue_vue_type_script_lang_default, [["render", _sfc_render$46]]);
|
|
3209
|
+
//#endregion
|
|
3210
|
+
//#region src/components/entities/policy/APolicySummary.vue?vue&type=script&lang.ts
|
|
3211
|
+
var APolicySummary_vue_vue_type_script_lang_default = defineComponent({
|
|
3212
|
+
components: { APolicyTypeBadge: APolicyTypeBadge_default },
|
|
3213
|
+
props: { entity: {
|
|
3214
|
+
type: Object,
|
|
3215
|
+
required: true
|
|
3216
|
+
} }
|
|
3217
|
+
});
|
|
3218
|
+
//#endregion
|
|
3219
|
+
//#region src/components/entities/policy/APolicySummary.vue
|
|
3220
|
+
const _hoisted_1$18 = { class: "d-flex flex-row gap-2 mb-2" };
|
|
3221
|
+
const _hoisted_2$12 = { class: "d-flex flex-row gap-2 mb-2" };
|
|
3222
|
+
const _hoisted_3$10 = {
|
|
3223
|
+
key: 0,
|
|
3224
|
+
class: "d-flex flex-row gap-2 mb-2"
|
|
3225
|
+
};
|
|
3226
|
+
const _hoisted_4$8 = {
|
|
3227
|
+
key: 1,
|
|
3228
|
+
class: "d-flex flex-row gap-2 mb-2"
|
|
3229
|
+
};
|
|
3230
|
+
const _hoisted_5$5 = {
|
|
3231
|
+
key: 2,
|
|
3232
|
+
class: "d-flex flex-row gap-2 mb-2"
|
|
3233
|
+
};
|
|
3234
|
+
const _hoisted_6$4 = {
|
|
3235
|
+
key: 3,
|
|
3236
|
+
class: "d-flex flex-row gap-2 mb-2"
|
|
3237
|
+
};
|
|
3238
|
+
function _sfc_render$45(_ctx, _cache, $props, $setup, $data, $options) {
|
|
3239
|
+
const _component_APolicyTypeBadge = resolveComponent("APolicyTypeBadge");
|
|
3240
|
+
return openBlock(), createElementBlock("div", null, [
|
|
3241
|
+
createElementVNode("div", _hoisted_1$18, [_cache[0] || (_cache[0] = createElementVNode("strong", { style: { "min-width": "120px" } }, "Name", -1)), createElementVNode("div", null, toDisplayString(_ctx.entity.name), 1)]),
|
|
3242
|
+
createElementVNode("div", _hoisted_2$12, [_cache[1] || (_cache[1] = createElementVNode("strong", { style: { "min-width": "120px" } }, "Type", -1)), createElementVNode("div", null, [createVNode(_component_APolicyTypeBadge, { type: _ctx.entity.type }, null, 8, ["type"])])]),
|
|
3243
|
+
_ctx.entity.display_name ? (openBlock(), createElementBlock("div", _hoisted_3$10, [_cache[2] || (_cache[2] = createElementVNode("strong", { style: { "min-width": "120px" } }, "Display Name", -1)), createElementVNode("div", null, toDisplayString(_ctx.entity.display_name), 1)])) : createCommentVNode("v-if", true),
|
|
3244
|
+
_ctx.entity.description ? (openBlock(), createElementBlock("div", _hoisted_4$8, [_cache[3] || (_cache[3] = createElementVNode("strong", { style: { "min-width": "120px" } }, "Description", -1)), createElementVNode("div", null, toDisplayString(_ctx.entity.description), 1)])) : createCommentVNode("v-if", true),
|
|
3245
|
+
_ctx.entity.invert ? (openBlock(), createElementBlock("div", _hoisted_5$5, [..._cache[4] || (_cache[4] = [createElementVNode("strong", { style: { "min-width": "120px" } }, "Invert", -1), createElementVNode("div", null, [createElementVNode("span", { class: "badge bg-warning" }, "Yes")], -1)])])) : createCommentVNode("v-if", true),
|
|
3246
|
+
_ctx.entity.built_in ? (openBlock(), createElementBlock("div", _hoisted_6$4, [..._cache[5] || (_cache[5] = [createElementVNode("strong", { style: { "min-width": "120px" } }, "Built-in", -1), createElementVNode("div", null, [createElementVNode("span", { class: "badge bg-secondary" }, "Yes")], -1)])])) : createCommentVNode("v-if", true)
|
|
3247
|
+
]);
|
|
3248
|
+
}
|
|
3249
|
+
var APolicySummary_default = /* @__PURE__ */ _plugin_vue_export_helper_default(APolicySummary_vue_vue_type_script_lang_default, [["render", _sfc_render$45]]);
|
|
3250
|
+
//#endregion
|
|
3251
|
+
//#region src/components/entities/permission-policy-binding/APermissionPolicyBindingButton.ts
|
|
3252
|
+
const APermissionPolicyBindingButton = defineComponent({
|
|
3253
|
+
props: {
|
|
3254
|
+
entityType: {
|
|
3255
|
+
type: String,
|
|
3256
|
+
required: true
|
|
3257
|
+
},
|
|
3258
|
+
entity: {
|
|
3259
|
+
type: Object,
|
|
3260
|
+
required: true
|
|
3261
|
+
}
|
|
3262
|
+
},
|
|
3263
|
+
emits: ["updated", "failed"],
|
|
3264
|
+
setup(props, { emit }) {
|
|
3265
|
+
const client = injectHTTPClient();
|
|
3266
|
+
const modalOpen = ref(false);
|
|
3267
|
+
const busy = ref(false);
|
|
3268
|
+
const currentPolicyId = ref(props.entity.policy_id);
|
|
3269
|
+
const detailPolicy = ref(null);
|
|
3270
|
+
watch(toRef(props, "entity"), (val) => {
|
|
3271
|
+
currentPolicyId.value = val.policy_id;
|
|
3272
|
+
}, { deep: true });
|
|
3273
|
+
const handleKeydown = (e) => {
|
|
3274
|
+
if (e.key === "Escape") {
|
|
3275
|
+
if (detailPolicy.value) detailPolicy.value = null;
|
|
3276
|
+
else if (modalOpen.value) modalOpen.value = false;
|
|
3277
|
+
}
|
|
3278
|
+
};
|
|
3279
|
+
onMounted(() => {
|
|
3280
|
+
document.addEventListener("keydown", handleKeydown);
|
|
3281
|
+
});
|
|
3282
|
+
onUnmounted(() => {
|
|
3283
|
+
document.removeEventListener("keydown", handleKeydown);
|
|
3284
|
+
});
|
|
3285
|
+
const handlePolicySelect = async (policyId) => {
|
|
3286
|
+
if (busy.value) return;
|
|
3287
|
+
const api = hasOwnProperty(client, props.entityType) ? client[props.entityType] : void 0;
|
|
3288
|
+
if (!api || !api.update) return;
|
|
3289
|
+
busy.value = true;
|
|
3290
|
+
try {
|
|
3291
|
+
const response = await api.update(props.entity.id, { policy_id: policyId });
|
|
3292
|
+
currentPolicyId.value = policyId;
|
|
3293
|
+
emit("updated", response);
|
|
3294
|
+
} catch (e) {
|
|
3295
|
+
if (e instanceof Error) emit("failed", e);
|
|
3296
|
+
} finally {
|
|
3297
|
+
busy.value = false;
|
|
3298
|
+
}
|
|
3299
|
+
};
|
|
3300
|
+
const modalTitleId = `policy-modal-title-${props.entity.id}`;
|
|
3301
|
+
return () => {
|
|
3302
|
+
const children = [];
|
|
3303
|
+
children.push(h("button", {
|
|
3304
|
+
class: ["btn btn-xs", {
|
|
3305
|
+
"btn-dark": busy.value,
|
|
3306
|
+
"btn-primary": !busy.value && currentPolicyId.value,
|
|
3307
|
+
"btn-secondary": !busy.value && !currentPolicyId.value
|
|
3308
|
+
}],
|
|
3309
|
+
disabled: busy.value,
|
|
3310
|
+
onClick(e) {
|
|
3311
|
+
e.preventDefault();
|
|
3312
|
+
modalOpen.value = true;
|
|
3313
|
+
}
|
|
3314
|
+
}, [h("i", { class: "fa fa-cog" })]));
|
|
3315
|
+
if (modalOpen.value) {
|
|
3316
|
+
const backdrop = h("div", {
|
|
3317
|
+
class: "modal-backdrop fade show",
|
|
3318
|
+
onClick() {
|
|
3319
|
+
if (detailPolicy.value) detailPolicy.value = null;
|
|
3320
|
+
else modalOpen.value = false;
|
|
3321
|
+
}
|
|
3322
|
+
});
|
|
3323
|
+
let modalTitle;
|
|
3324
|
+
let modalBody;
|
|
3325
|
+
let modalFooter;
|
|
3326
|
+
if (detailPolicy.value) {
|
|
3327
|
+
const policy = detailPolicy.value;
|
|
3328
|
+
modalTitle = policy.name;
|
|
3329
|
+
modalBody = h(APolicySummary_default, { entity: policy });
|
|
3330
|
+
modalFooter = [h("button", {
|
|
3331
|
+
type: "button",
|
|
3332
|
+
class: "btn btn-outline-secondary btn-xs",
|
|
3333
|
+
onClick() {
|
|
3334
|
+
detailPolicy.value = null;
|
|
3335
|
+
}
|
|
3336
|
+
}, [h("i", { class: "fa fa-arrow-left me-1" }), "Back"])];
|
|
3337
|
+
} else {
|
|
3338
|
+
modalTitle = "Junction Policy";
|
|
3339
|
+
modalBody = h(APolicies, { query: { filters: { parent_id: null } } }, { [SlotName.ITEM]: (slotProps) => {
|
|
3340
|
+
const isSelected = currentPolicyId.value === slotProps.data.id;
|
|
3341
|
+
return [
|
|
3342
|
+
h("div", [slotProps.data.name]),
|
|
3343
|
+
h(APolicyInlineInfo_default, {
|
|
3344
|
+
entity: slotProps.data,
|
|
3345
|
+
onDetail: (policy) => {
|
|
3346
|
+
detailPolicy.value = policy;
|
|
3347
|
+
}
|
|
3348
|
+
}),
|
|
3349
|
+
h("div", { class: "ms-auto" }, [h("button", {
|
|
3350
|
+
class: ["btn btn-xs", {
|
|
3351
|
+
"btn-dark": busy.value,
|
|
3352
|
+
"btn-success": !busy.value && isSelected,
|
|
3353
|
+
"btn-secondary": !busy.value && !isSelected
|
|
3354
|
+
}],
|
|
3355
|
+
disabled: busy.value,
|
|
3356
|
+
onClick(e) {
|
|
3357
|
+
e.preventDefault();
|
|
3358
|
+
if (isSelected) handlePolicySelect(null);
|
|
3359
|
+
else handlePolicySelect(slotProps.data.id);
|
|
3360
|
+
}
|
|
3361
|
+
}, [h("i", { class: ["fa", {
|
|
3362
|
+
"fa-check": isSelected,
|
|
3363
|
+
"fa-plus": !isSelected
|
|
3364
|
+
}] })])])
|
|
3365
|
+
];
|
|
3366
|
+
} });
|
|
3367
|
+
modalFooter = [currentPolicyId.value ? h("button", {
|
|
3368
|
+
type: "button",
|
|
3369
|
+
class: "btn btn-warning btn-xs",
|
|
3370
|
+
disabled: busy.value,
|
|
3371
|
+
onClick() {
|
|
3372
|
+
handlePolicySelect(null);
|
|
3373
|
+
}
|
|
3374
|
+
}, "Reset") : void 0, h("button", {
|
|
3375
|
+
type: "button",
|
|
3376
|
+
class: "btn btn-secondary btn-xs",
|
|
3377
|
+
onClick() {
|
|
3378
|
+
modalOpen.value = false;
|
|
3379
|
+
}
|
|
3380
|
+
}, "Close")];
|
|
3381
|
+
}
|
|
3382
|
+
const modal = h("div", {
|
|
3383
|
+
class: "modal fade show d-block",
|
|
3384
|
+
tabindex: "-1",
|
|
3385
|
+
role: "dialog",
|
|
3386
|
+
"aria-modal": "true",
|
|
3387
|
+
"aria-labelledby": modalTitleId
|
|
3388
|
+
}, [h("div", {
|
|
3389
|
+
class: "modal-dialog",
|
|
3390
|
+
role: "document",
|
|
3391
|
+
onClick(e) {
|
|
3392
|
+
e.stopPropagation();
|
|
3393
|
+
}
|
|
3394
|
+
}, [h("div", { class: "modal-content" }, [
|
|
3395
|
+
h("div", { class: "modal-header" }, [h("h5", {
|
|
3396
|
+
class: "modal-title",
|
|
3397
|
+
id: modalTitleId
|
|
3398
|
+
}, modalTitle), h("button", {
|
|
3399
|
+
type: "button",
|
|
3400
|
+
class: "btn-close",
|
|
3401
|
+
"aria-label": "Close",
|
|
3402
|
+
onClick() {
|
|
3403
|
+
if (detailPolicy.value) detailPolicy.value = null;
|
|
3404
|
+
else modalOpen.value = false;
|
|
3405
|
+
}
|
|
3406
|
+
})]),
|
|
3407
|
+
h("div", { class: "modal-body" }, [modalBody]),
|
|
3408
|
+
h("div", { class: "modal-footer" }, modalFooter)
|
|
3409
|
+
])])]);
|
|
3410
|
+
children.push(h(Teleport, { to: "body" }, [backdrop, modal]));
|
|
3411
|
+
}
|
|
3412
|
+
return h("span", children);
|
|
3413
|
+
};
|
|
3414
|
+
}
|
|
3415
|
+
});
|
|
3416
|
+
//#endregion
|
|
3417
|
+
//#region src/components/entities/client-permission/AClientPermissionAssignment.vue?vue&type=script&lang.ts
|
|
3418
|
+
var AClientPermissionAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
3419
|
+
components: {
|
|
3420
|
+
AToggleButton: AToggleButton_default,
|
|
3421
|
+
APermissionPolicyBindingButton
|
|
3422
|
+
},
|
|
3423
|
+
props: {
|
|
3424
|
+
clientId: {
|
|
3425
|
+
type: String,
|
|
3426
|
+
required: true
|
|
3427
|
+
},
|
|
3428
|
+
permissionId: {
|
|
3429
|
+
type: String,
|
|
3430
|
+
required: true
|
|
3431
|
+
}
|
|
3432
|
+
},
|
|
3433
|
+
emits: defineEntityVEmitOptions(),
|
|
3434
|
+
async setup(props, setup) {
|
|
3435
|
+
const manager = defineEntityManager({
|
|
3436
|
+
type: `${EntityType.CLIENT_PERMISSION}`,
|
|
3437
|
+
setup,
|
|
3438
|
+
query: () => ({ filters: {
|
|
3439
|
+
client_id: props.clientId,
|
|
3440
|
+
permission_id: props.permissionId
|
|
3441
|
+
} }),
|
|
3442
|
+
socket: { processEvent(event) {
|
|
3443
|
+
return event.data.permission_id === props.permissionId && event.data.client_id === props.clientId;
|
|
3444
|
+
} }
|
|
3445
|
+
});
|
|
3446
|
+
await manager.resolve({ query: { filters: {
|
|
3447
|
+
client_id: props.clientId,
|
|
3448
|
+
permission_id: props.permissionId
|
|
3449
|
+
} } });
|
|
3450
|
+
const handleChanged = (value) => {
|
|
3451
|
+
if (value) return manager.create({
|
|
3452
|
+
client_id: props.clientId,
|
|
3453
|
+
permission_id: props.permissionId
|
|
3454
|
+
});
|
|
3455
|
+
return manager.delete();
|
|
3456
|
+
};
|
|
3457
|
+
const handleUpdated = (entity) => {
|
|
3458
|
+
manager.updated(entity);
|
|
3459
|
+
};
|
|
3460
|
+
return {
|
|
3461
|
+
manager,
|
|
3462
|
+
handleChanged,
|
|
3463
|
+
handleUpdated,
|
|
3464
|
+
EntityType
|
|
3465
|
+
};
|
|
3466
|
+
}
|
|
3467
|
+
});
|
|
3468
|
+
//#endregion
|
|
3469
|
+
//#region src/components/entities/client-permission/AClientPermissionAssignment.vue
|
|
3470
|
+
const _hoisted_1$17 = { class: "d-flex gap-1" };
|
|
3471
|
+
function _sfc_render$44(_ctx, _cache, $props, $setup, $data, $options) {
|
|
3472
|
+
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
3473
|
+
const _component_APermissionPolicyBindingButton = resolveComponent("APermissionPolicyBindingButton");
|
|
3474
|
+
return openBlock(), createElementBlock("span", _hoisted_1$17, [createVNode(_component_AToggleButton, {
|
|
3475
|
+
value: !!_ctx.manager.data.value,
|
|
3476
|
+
"is-busy": _ctx.manager.busy.value,
|
|
3477
|
+
onChanged: _ctx.handleChanged
|
|
3478
|
+
}, null, 8, [
|
|
3479
|
+
"value",
|
|
3480
|
+
"is-busy",
|
|
3481
|
+
"onChanged"
|
|
3482
|
+
]), _ctx.manager.data.value ? (openBlock(), createBlock(_component_APermissionPolicyBindingButton, {
|
|
3483
|
+
key: _ctx.manager.data.value.id,
|
|
3484
|
+
"entity-type": _ctx.EntityType.CLIENT_PERMISSION,
|
|
3485
|
+
entity: _ctx.manager.data.value,
|
|
3486
|
+
onUpdated: _ctx.handleUpdated
|
|
3487
|
+
}, null, 8, [
|
|
3488
|
+
"entity-type",
|
|
3489
|
+
"entity",
|
|
3490
|
+
"onUpdated"
|
|
3491
|
+
])) : createCommentVNode("v-if", true)]);
|
|
3492
|
+
}
|
|
3493
|
+
var AClientPermissionAssignment_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AClientPermissionAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$44]]);
|
|
3494
|
+
//#endregion
|
|
3495
|
+
//#region src/components/entities/client-permission/AClientPermissionAssignments.vue?vue&type=script&lang.ts
|
|
3496
|
+
var AClientPermissionAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
3497
|
+
components: {
|
|
3498
|
+
APermissions,
|
|
3499
|
+
AClientPermissionAssignment: AClientPermissionAssignment_default
|
|
3500
|
+
},
|
|
3501
|
+
props: { entityId: {
|
|
3502
|
+
type: String,
|
|
3503
|
+
required: true
|
|
3504
|
+
} },
|
|
3505
|
+
setup(props, { slots }) {
|
|
3506
|
+
return { forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "itemActions"))) };
|
|
3507
|
+
}
|
|
3508
|
+
});
|
|
3509
|
+
//#endregion
|
|
3510
|
+
//#region src/components/entities/client-permission/AClientPermissionAssignments.vue
|
|
3511
|
+
function _sfc_render$43(_ctx, _cache, $props, $setup, $data, $options) {
|
|
3512
|
+
const _component_AClientPermissionAssignment = resolveComponent("AClientPermissionAssignment");
|
|
3513
|
+
const _component_APermissions = resolveComponent("APermissions");
|
|
3514
|
+
return openBlock(), createBlock(_component_APermissions, null, createSlots({
|
|
3515
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_AClientPermissionAssignment, {
|
|
3516
|
+
key: data.id,
|
|
3517
|
+
"client-id": _ctx.entityId,
|
|
3518
|
+
"permission-id": data.id
|
|
3519
|
+
}, null, 8, ["client-id", "permission-id"]))]),
|
|
3520
|
+
_: 2
|
|
3521
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
3522
|
+
return {
|
|
3523
|
+
name,
|
|
3524
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
3525
|
+
};
|
|
3526
|
+
})]), 1024);
|
|
3527
|
+
}
|
|
3528
|
+
var AClientPermissionAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AClientPermissionAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$43]]);
|
|
3529
|
+
//#endregion
|
|
3530
|
+
//#region src/components/entities/role/ARoleForm.ts
|
|
3531
|
+
const ARoleForm = defineComponent({
|
|
3532
|
+
props: { entity: {
|
|
3533
|
+
type: Object,
|
|
3534
|
+
default: void 0
|
|
3274
3535
|
} },
|
|
3275
3536
|
emits: defineEntityVEmitOptions(),
|
|
3276
3537
|
setup(props, ctx) {
|
|
@@ -3286,7 +3547,7 @@ const ARoleForm = defineComponent({
|
|
|
3286
3547
|
required,
|
|
3287
3548
|
minLength: minLength(3),
|
|
3288
3549
|
maxLength: maxLength(30),
|
|
3289
|
-
[
|
|
3550
|
+
["alphaUpperNumHyphenUnderscoreDot"]: VuelidateCustomRule["alphaUpperNumHyphenUnderscoreDot"]
|
|
3290
3551
|
},
|
|
3291
3552
|
display_name: {
|
|
3292
3553
|
minLength: minLength(3),
|
|
@@ -3326,11 +3587,11 @@ const ARoleForm = defineComponent({
|
|
|
3326
3587
|
};
|
|
3327
3588
|
const translationsValidation = useTranslationsForNestedValidation($v.value);
|
|
3328
3589
|
const translationsSubmit = createFormSubmitTranslations();
|
|
3329
|
-
const translationsDefault = useTranslationsForGroup(
|
|
3330
|
-
{ key:
|
|
3331
|
-
{ key:
|
|
3332
|
-
{ key:
|
|
3333
|
-
{ key:
|
|
3590
|
+
const translationsDefault = useTranslationsForGroup("default", [
|
|
3591
|
+
{ key: "name" },
|
|
3592
|
+
{ key: "displayName" },
|
|
3593
|
+
{ key: "description" },
|
|
3594
|
+
{ key: "realm" }
|
|
3334
3595
|
]);
|
|
3335
3596
|
const render = () => {
|
|
3336
3597
|
const children = [];
|
|
@@ -3338,7 +3599,7 @@ const ARoleForm = defineComponent({
|
|
|
3338
3599
|
validationMessages: translationsValidation.name.value,
|
|
3339
3600
|
validationSeverity: getVuelidateSeverity($v.value.name),
|
|
3340
3601
|
label: true,
|
|
3341
|
-
labelContent: translationsDefault[
|
|
3602
|
+
labelContent: translationsDefault["name"].value,
|
|
3342
3603
|
content: buildFormInput({
|
|
3343
3604
|
value: $v.value.name.$model,
|
|
3344
3605
|
onChange(input) {
|
|
@@ -3350,7 +3611,7 @@ const ARoleForm = defineComponent({
|
|
|
3350
3611
|
validationMessages: translationsValidation.display_name.value,
|
|
3351
3612
|
validationSeverity: getVuelidateSeverity($v.value.display_name),
|
|
3352
3613
|
label: true,
|
|
3353
|
-
labelContent: translationsDefault[
|
|
3614
|
+
labelContent: translationsDefault["displayName"].value,
|
|
3354
3615
|
content: buildFormInput({
|
|
3355
3616
|
value: $v.value.display_name.$model,
|
|
3356
3617
|
onChange(input) {
|
|
@@ -3362,7 +3623,7 @@ const ARoleForm = defineComponent({
|
|
|
3362
3623
|
validationMessages: translationsValidation.description.value,
|
|
3363
3624
|
validationSeverity: getVuelidateSeverity($v.value.description),
|
|
3364
3625
|
label: true,
|
|
3365
|
-
labelContent: translationsDefault[
|
|
3626
|
+
labelContent: translationsDefault["description"].value,
|
|
3366
3627
|
content: buildFormTextarea({
|
|
3367
3628
|
value: $v.value.description.$model,
|
|
3368
3629
|
onChange(input) {
|
|
@@ -3375,7 +3636,7 @@ const ARoleForm = defineComponent({
|
|
|
3375
3636
|
validationMessages: translationsValidation.realm_id.value,
|
|
3376
3637
|
validationSeverity: getVuelidateSeverity($v.value.realm_id),
|
|
3377
3638
|
label: true,
|
|
3378
|
-
labelContent: translationsDefault[
|
|
3639
|
+
labelContent: translationsDefault["realm"].value,
|
|
3379
3640
|
content: h(ARealmPicker, {
|
|
3380
3641
|
value: $v.value.realm_id.$model,
|
|
3381
3642
|
onChange: (input) => {
|
|
@@ -3409,14 +3670,13 @@ const ARoles = defineComponent({
|
|
|
3409
3670
|
props,
|
|
3410
3671
|
setup: ctx
|
|
3411
3672
|
});
|
|
3412
|
-
const translationName = useTranslation({
|
|
3413
|
-
group: TranslatorTranslationGroup.VUECS,
|
|
3414
|
-
key: TranslatorTranslationDefaultKey.ROLES
|
|
3415
|
-
});
|
|
3416
3673
|
const translation = useTranslation({
|
|
3417
|
-
group:
|
|
3418
|
-
key:
|
|
3419
|
-
data: { name:
|
|
3674
|
+
group: "vuecs",
|
|
3675
|
+
key: "noMore",
|
|
3676
|
+
data: { name: useTranslation({
|
|
3677
|
+
group: "vuecs",
|
|
3678
|
+
key: "roles"
|
|
3679
|
+
}) }
|
|
3420
3680
|
});
|
|
3421
3681
|
return () => render({ noMore: { content: translation.value } });
|
|
3422
3682
|
}
|
|
@@ -3442,17 +3702,28 @@ const ARole = defineComponent({
|
|
|
3442
3702
|
}
|
|
3443
3703
|
});
|
|
3444
3704
|
//#endregion
|
|
3445
|
-
//#region src/components/entities/client-role/AClientRoleAssignment.ts
|
|
3446
|
-
|
|
3705
|
+
//#region src/components/entities/client-role/AClientRoleAssignment.vue?vue&type=script&lang.ts
|
|
3706
|
+
var AClientRoleAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
3707
|
+
components: { AToggleButton: AToggleButton_default },
|
|
3447
3708
|
props: {
|
|
3448
|
-
roleId:
|
|
3449
|
-
|
|
3709
|
+
roleId: {
|
|
3710
|
+
type: String,
|
|
3711
|
+
required: true
|
|
3712
|
+
},
|
|
3713
|
+
clientId: {
|
|
3714
|
+
type: String,
|
|
3715
|
+
required: true
|
|
3716
|
+
}
|
|
3450
3717
|
},
|
|
3451
3718
|
emits: defineEntityVEmitOptions(),
|
|
3452
3719
|
async setup(props, setup) {
|
|
3453
3720
|
const manager = defineEntityManager({
|
|
3454
3721
|
type: `${EntityType.CLIENT_ROLE}`,
|
|
3455
3722
|
setup,
|
|
3723
|
+
query: () => ({ filters: {
|
|
3724
|
+
client_id: props.clientId,
|
|
3725
|
+
role_id: props.roleId
|
|
3726
|
+
} }),
|
|
3456
3727
|
socket: { processEvent(event) {
|
|
3457
3728
|
return event.data.client_id === props.clientId && event.data.role_id === props.roleId;
|
|
3458
3729
|
} }
|
|
@@ -3461,38 +3732,76 @@ const AClientRoleAssignment = defineComponent({
|
|
|
3461
3732
|
client_id: props.clientId,
|
|
3462
3733
|
role_id: props.roleId
|
|
3463
3734
|
} } });
|
|
3464
|
-
|
|
3465
|
-
|
|
3466
|
-
|
|
3467
|
-
|
|
3468
|
-
|
|
3469
|
-
|
|
3470
|
-
|
|
3471
|
-
|
|
3472
|
-
|
|
3473
|
-
|
|
3474
|
-
}
|
|
3735
|
+
const handleChanged = (value) => {
|
|
3736
|
+
if (value) return manager.create({
|
|
3737
|
+
client_id: props.clientId,
|
|
3738
|
+
role_id: props.roleId
|
|
3739
|
+
});
|
|
3740
|
+
return manager.delete();
|
|
3741
|
+
};
|
|
3742
|
+
return {
|
|
3743
|
+
manager,
|
|
3744
|
+
handleChanged
|
|
3745
|
+
};
|
|
3475
3746
|
}
|
|
3476
3747
|
});
|
|
3477
3748
|
//#endregion
|
|
3478
|
-
//#region src/components/entities/client-role/
|
|
3479
|
-
|
|
3749
|
+
//#region src/components/entities/client-role/AClientRoleAssignment.vue
|
|
3750
|
+
function _sfc_render$42(_ctx, _cache, $props, $setup, $data, $options) {
|
|
3751
|
+
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
3752
|
+
return openBlock(), createBlock(_component_AToggleButton, {
|
|
3753
|
+
value: !!_ctx.manager.data.value,
|
|
3754
|
+
"is-busy": _ctx.manager.busy.value,
|
|
3755
|
+
onChanged: _ctx.handleChanged
|
|
3756
|
+
}, null, 8, [
|
|
3757
|
+
"value",
|
|
3758
|
+
"is-busy",
|
|
3759
|
+
"onChanged"
|
|
3760
|
+
]);
|
|
3761
|
+
}
|
|
3762
|
+
var AClientRoleAssignment_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AClientRoleAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$42]]);
|
|
3763
|
+
//#endregion
|
|
3764
|
+
//#region src/components/entities/client-role/AClientRoleAssignments.vue?vue&type=script&lang.ts
|
|
3765
|
+
var AClientRoleAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
3766
|
+
components: {
|
|
3767
|
+
ARoles,
|
|
3768
|
+
AClientRoleAssignment: AClientRoleAssignment_default
|
|
3769
|
+
},
|
|
3480
3770
|
props: {
|
|
3481
|
-
entityId:
|
|
3771
|
+
entityId: {
|
|
3772
|
+
type: String,
|
|
3773
|
+
required: true
|
|
3774
|
+
},
|
|
3482
3775
|
realmId: String
|
|
3483
3776
|
},
|
|
3484
3777
|
setup(props, { slots }) {
|
|
3485
|
-
return
|
|
3486
|
-
|
|
3487
|
-
|
|
3488
|
-
|
|
3489
|
-
key: slotProps.data.id
|
|
3490
|
-
}),
|
|
3491
|
-
...slots
|
|
3492
|
-
});
|
|
3778
|
+
return {
|
|
3779
|
+
query: computed(() => ({ filters: { realm_id: [...props.realmId ? [props.realmId] : [], null] } })),
|
|
3780
|
+
forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "itemActions")))
|
|
3781
|
+
};
|
|
3493
3782
|
}
|
|
3494
3783
|
});
|
|
3495
3784
|
//#endregion
|
|
3785
|
+
//#region src/components/entities/client-role/AClientRoleAssignments.vue
|
|
3786
|
+
function _sfc_render$41(_ctx, _cache, $props, $setup, $data, $options) {
|
|
3787
|
+
const _component_AClientRoleAssignment = resolveComponent("AClientRoleAssignment");
|
|
3788
|
+
const _component_ARoles = resolveComponent("ARoles");
|
|
3789
|
+
return openBlock(), createBlock(_component_ARoles, { query: _ctx.query }, createSlots({
|
|
3790
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_AClientRoleAssignment, {
|
|
3791
|
+
key: data.id,
|
|
3792
|
+
"client-id": _ctx.entityId,
|
|
3793
|
+
"role-id": data.id
|
|
3794
|
+
}, null, 8, ["client-id", "role-id"]))]),
|
|
3795
|
+
_: 2
|
|
3796
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
3797
|
+
return {
|
|
3798
|
+
name,
|
|
3799
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
3800
|
+
};
|
|
3801
|
+
})]), 1032, ["query"]);
|
|
3802
|
+
}
|
|
3803
|
+
var AClientRoleAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AClientRoleAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$41]]);
|
|
3804
|
+
//#endregion
|
|
3496
3805
|
//#region src/components/entities/client-scope/AClientScope.ts
|
|
3497
3806
|
const AClientScope = defineComponent({
|
|
3498
3807
|
props: defineEntityVProps(),
|
|
@@ -3524,14 +3833,13 @@ const AClientScopes = defineComponent({
|
|
|
3524
3833
|
props,
|
|
3525
3834
|
setup: ctx
|
|
3526
3835
|
});
|
|
3527
|
-
const translationClientScopes = useTranslation({
|
|
3528
|
-
group: TranslatorTranslationGroup.DEFAULT,
|
|
3529
|
-
key: TranslatorTranslationDefaultKey.CLIENT_SCOPES
|
|
3530
|
-
});
|
|
3531
3836
|
const translation = useTranslation({
|
|
3532
|
-
group:
|
|
3533
|
-
key:
|
|
3534
|
-
data: { name:
|
|
3837
|
+
group: "vuecs",
|
|
3838
|
+
key: "noMore",
|
|
3839
|
+
data: { name: useTranslation({
|
|
3840
|
+
group: "default",
|
|
3841
|
+
key: "clientScopes"
|
|
3842
|
+
}) }
|
|
3535
3843
|
});
|
|
3536
3844
|
return () => render({ noMore: { content: translation.value } });
|
|
3537
3845
|
}
|
|
@@ -3558,7 +3866,7 @@ const AScopeForm = defineComponent({
|
|
|
3558
3866
|
const $v = useVuelidate({
|
|
3559
3867
|
name: {
|
|
3560
3868
|
required,
|
|
3561
|
-
[
|
|
3869
|
+
["alphaUpperNumHyphenUnderscoreDot"]: VuelidateCustomRule["alphaUpperNumHyphenUnderscoreDot"],
|
|
3562
3870
|
minLength: minLength(3),
|
|
3563
3871
|
maxLength: maxLength(256)
|
|
3564
3872
|
},
|
|
@@ -3605,11 +3913,11 @@ const AScopeForm = defineComponent({
|
|
|
3605
3913
|
};
|
|
3606
3914
|
const translationsValidation = useTranslationsForNestedValidation($v.value);
|
|
3607
3915
|
const translationsSubmit = createFormSubmitTranslations();
|
|
3608
|
-
const translationsDefault = useTranslationsForGroup(
|
|
3609
|
-
{ key:
|
|
3610
|
-
{ key:
|
|
3611
|
-
{ key:
|
|
3612
|
-
{ key:
|
|
3916
|
+
const translationsDefault = useTranslationsForGroup("default", [
|
|
3917
|
+
{ key: "name" },
|
|
3918
|
+
{ key: "displayName" },
|
|
3919
|
+
{ key: "description" },
|
|
3920
|
+
{ key: "realm" }
|
|
3613
3921
|
]);
|
|
3614
3922
|
return () => {
|
|
3615
3923
|
const children = [
|
|
@@ -3617,7 +3925,7 @@ const AScopeForm = defineComponent({
|
|
|
3617
3925
|
validationMessages: translationsValidation.name.value,
|
|
3618
3926
|
validationSeverity: getVuelidateSeverity($v.value.name),
|
|
3619
3927
|
label: true,
|
|
3620
|
-
labelContent: translationsDefault[
|
|
3928
|
+
labelContent: translationsDefault["name"].value,
|
|
3621
3929
|
content: buildFormInput({
|
|
3622
3930
|
value: $v.value.name.$model,
|
|
3623
3931
|
onChange(input) {
|
|
@@ -3630,7 +3938,7 @@ const AScopeForm = defineComponent({
|
|
|
3630
3938
|
validationMessages: translationsValidation.display_name.value,
|
|
3631
3939
|
validationSeverity: getVuelidateSeverity($v.value.display_name),
|
|
3632
3940
|
label: true,
|
|
3633
|
-
labelContent: translationsDefault[
|
|
3941
|
+
labelContent: translationsDefault["displayName"].value,
|
|
3634
3942
|
content: buildFormInput({
|
|
3635
3943
|
value: $v.value.display_name.$model,
|
|
3636
3944
|
onChange(input) {
|
|
@@ -3642,7 +3950,7 @@ const AScopeForm = defineComponent({
|
|
|
3642
3950
|
validationMessages: translationsValidation.description.value,
|
|
3643
3951
|
validationSeverity: getVuelidateSeverity($v.value.description),
|
|
3644
3952
|
label: true,
|
|
3645
|
-
labelContent: translationsDefault[
|
|
3953
|
+
labelContent: translationsDefault["description"].value,
|
|
3646
3954
|
content: buildFormTextarea({
|
|
3647
3955
|
value: $v.value.description.$model,
|
|
3648
3956
|
onChange(input) {
|
|
@@ -3656,7 +3964,7 @@ const AScopeForm = defineComponent({
|
|
|
3656
3964
|
validationMessages: translationsValidation.realm_id.value,
|
|
3657
3965
|
validationSeverity: getVuelidateSeverity($v.value.realm_id),
|
|
3658
3966
|
label: true,
|
|
3659
|
-
labelContent: translationsDefault[
|
|
3967
|
+
labelContent: translationsDefault["realm"].value,
|
|
3660
3968
|
content: h(ARealmPicker, {
|
|
3661
3969
|
value: $v.value.realm_id.$model,
|
|
3662
3970
|
onChange: (input) => {
|
|
@@ -3689,14 +3997,13 @@ const AScopes = defineComponent({
|
|
|
3689
3997
|
props,
|
|
3690
3998
|
setup: ctx
|
|
3691
3999
|
});
|
|
3692
|
-
const translationName = useTranslation({
|
|
3693
|
-
group: TranslatorTranslationGroup.DEFAULT,
|
|
3694
|
-
key: TranslatorTranslationDefaultKey.SCOPES
|
|
3695
|
-
});
|
|
3696
4000
|
const translation = useTranslation({
|
|
3697
|
-
group:
|
|
3698
|
-
key:
|
|
3699
|
-
data: { name:
|
|
4001
|
+
group: "vuecs",
|
|
4002
|
+
key: "noMore",
|
|
4003
|
+
data: { name: useTranslation({
|
|
4004
|
+
group: "default",
|
|
4005
|
+
key: "scopes"
|
|
4006
|
+
}) }
|
|
3700
4007
|
});
|
|
3701
4008
|
return () => render({ noMore: { content: translation.value } });
|
|
3702
4009
|
}
|
|
@@ -3722,17 +4029,28 @@ const AScope = defineComponent({
|
|
|
3722
4029
|
}
|
|
3723
4030
|
});
|
|
3724
4031
|
//#endregion
|
|
3725
|
-
//#region src/components/entities/client-scope/AClientScopeAssignment.ts
|
|
3726
|
-
|
|
4032
|
+
//#region src/components/entities/client-scope/AClientScopeAssignment.vue?vue&type=script&lang.ts
|
|
4033
|
+
var AClientScopeAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
4034
|
+
components: { AToggleButton: AToggleButton_default },
|
|
3727
4035
|
props: {
|
|
3728
|
-
clientId:
|
|
3729
|
-
|
|
4036
|
+
clientId: {
|
|
4037
|
+
type: String,
|
|
4038
|
+
required: true
|
|
4039
|
+
},
|
|
4040
|
+
scopeId: {
|
|
4041
|
+
type: String,
|
|
4042
|
+
required: true
|
|
4043
|
+
}
|
|
3730
4044
|
},
|
|
3731
4045
|
emits: defineEntityVEmitOptions(),
|
|
3732
4046
|
async setup(props, setup) {
|
|
3733
4047
|
const manager = defineEntityManager({
|
|
3734
4048
|
type: `${EntityType.CLIENT_SCOPE}`,
|
|
3735
4049
|
setup,
|
|
4050
|
+
query: () => ({ filters: {
|
|
4051
|
+
client_id: props.clientId,
|
|
4052
|
+
scope_id: props.scopeId
|
|
4053
|
+
} }),
|
|
3736
4054
|
socket: { processEvent(event) {
|
|
3737
4055
|
return event.data.client_id === props.clientId && event.data.scope_id === props.scopeId;
|
|
3738
4056
|
} }
|
|
@@ -3741,38 +4059,70 @@ const AClientScopeAssignment = defineComponent({
|
|
|
3741
4059
|
client_id: props.clientId,
|
|
3742
4060
|
scope_id: props.scopeId
|
|
3743
4061
|
} } });
|
|
3744
|
-
|
|
3745
|
-
|
|
3746
|
-
|
|
3747
|
-
|
|
3748
|
-
|
|
3749
|
-
|
|
3750
|
-
|
|
3751
|
-
|
|
3752
|
-
|
|
3753
|
-
|
|
3754
|
-
}
|
|
4062
|
+
const handleChanged = (value) => {
|
|
4063
|
+
if (value) return manager.create({
|
|
4064
|
+
client_id: props.clientId,
|
|
4065
|
+
scope_id: props.scopeId
|
|
4066
|
+
});
|
|
4067
|
+
return manager.delete();
|
|
4068
|
+
};
|
|
4069
|
+
return {
|
|
4070
|
+
manager,
|
|
4071
|
+
handleChanged
|
|
4072
|
+
};
|
|
3755
4073
|
}
|
|
3756
4074
|
});
|
|
3757
4075
|
//#endregion
|
|
3758
|
-
//#region src/components/entities/client-scope/
|
|
3759
|
-
|
|
4076
|
+
//#region src/components/entities/client-scope/AClientScopeAssignment.vue
|
|
4077
|
+
function _sfc_render$40(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4078
|
+
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
4079
|
+
return openBlock(), createBlock(_component_AToggleButton, {
|
|
4080
|
+
value: !!_ctx.manager.data.value,
|
|
4081
|
+
"is-busy": _ctx.manager.busy.value,
|
|
4082
|
+
onChanged: _ctx.handleChanged
|
|
4083
|
+
}, null, 8, [
|
|
4084
|
+
"value",
|
|
4085
|
+
"is-busy",
|
|
4086
|
+
"onChanged"
|
|
4087
|
+
]);
|
|
4088
|
+
}
|
|
4089
|
+
var AClientScopeAssignment_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AClientScopeAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$40]]);
|
|
4090
|
+
//#endregion
|
|
4091
|
+
//#region src/components/entities/client-scope/AClientScopeAssignments.vue?vue&type=script&lang.ts
|
|
4092
|
+
var AClientScopeAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
4093
|
+
components: {
|
|
4094
|
+
AScopes,
|
|
4095
|
+
AClientScopeAssignment: AClientScopeAssignment_default
|
|
4096
|
+
},
|
|
3760
4097
|
props: { entityId: {
|
|
3761
4098
|
type: String,
|
|
3762
4099
|
required: true
|
|
3763
4100
|
} },
|
|
3764
4101
|
setup(props, { slots }) {
|
|
3765
|
-
return () =>
|
|
3766
|
-
[SlotName.ITEM_ACTIONS]: (slotProps) => h(AClientScopeAssignment, {
|
|
3767
|
-
clientId: props.entityId,
|
|
3768
|
-
scopeId: slotProps.data.id,
|
|
3769
|
-
key: slotProps.data.id
|
|
3770
|
-
}),
|
|
3771
|
-
...slots
|
|
3772
|
-
});
|
|
4102
|
+
return { forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "itemActions"))) };
|
|
3773
4103
|
}
|
|
3774
4104
|
});
|
|
3775
4105
|
//#endregion
|
|
4106
|
+
//#region src/components/entities/client-scope/AClientScopeAssignments.vue
|
|
4107
|
+
function _sfc_render$39(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4108
|
+
const _component_AClientScopeAssignment = resolveComponent("AClientScopeAssignment");
|
|
4109
|
+
const _component_AScopes = resolveComponent("AScopes");
|
|
4110
|
+
return openBlock(), createBlock(_component_AScopes, null, createSlots({
|
|
4111
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_AClientScopeAssignment, {
|
|
4112
|
+
key: data.id,
|
|
4113
|
+
"client-id": _ctx.entityId,
|
|
4114
|
+
"scope-id": data.id
|
|
4115
|
+
}, null, 8, ["client-id", "scope-id"]))]),
|
|
4116
|
+
_: 2
|
|
4117
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
4118
|
+
return {
|
|
4119
|
+
name,
|
|
4120
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
4121
|
+
};
|
|
4122
|
+
})]), 1024);
|
|
4123
|
+
}
|
|
4124
|
+
var AClientScopeAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AClientScopeAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$39]]);
|
|
4125
|
+
//#endregion
|
|
3776
4126
|
//#region src/components/entities/identity-provider/AIdentityProvider.ts
|
|
3777
4127
|
const AIdentityProvider = defineComponent({
|
|
3778
4128
|
props: defineEntityVProps(),
|
|
@@ -3808,7 +4158,7 @@ const AIdentityProviderBasicFields = defineComponent({
|
|
|
3808
4158
|
required,
|
|
3809
4159
|
minLength: minLength(3),
|
|
3810
4160
|
maxLength: maxLength(128),
|
|
3811
|
-
[
|
|
4161
|
+
["alphaUpperNumHyphenUnderscoreDot"]: VuelidateCustomRule["alphaUpperNumHyphenUnderscoreDot"]
|
|
3812
4162
|
},
|
|
3813
4163
|
display_name: {
|
|
3814
4164
|
minLength: minLength(3),
|
|
@@ -3833,10 +4183,10 @@ const AIdentityProviderBasicFields = defineComponent({
|
|
|
3833
4183
|
setup.expose({ assign });
|
|
3834
4184
|
onChange(useUpdatedAt(props.entity), () => assign(props.entity));
|
|
3835
4185
|
assign(props.entity);
|
|
3836
|
-
const translationsDefault = useTranslationsForGroup(
|
|
3837
|
-
{ key:
|
|
3838
|
-
{ key:
|
|
3839
|
-
{ key:
|
|
4186
|
+
const translationsDefault = useTranslationsForGroup("default", [
|
|
4187
|
+
{ key: "displayName" },
|
|
4188
|
+
{ key: "name" },
|
|
4189
|
+
{ key: "description" }
|
|
3840
4190
|
]);
|
|
3841
4191
|
const translationsValidation = useTranslationsForNestedValidation($v.value);
|
|
3842
4192
|
return () => {
|
|
@@ -3845,7 +4195,7 @@ const AIdentityProviderBasicFields = defineComponent({
|
|
|
3845
4195
|
validationMessages: translationsValidation.name.value,
|
|
3846
4196
|
validationSeverity: getVuelidateSeverity($v.value.name),
|
|
3847
4197
|
label: true,
|
|
3848
|
-
labelContent: translationsDefault[
|
|
4198
|
+
labelContent: translationsDefault["name"].value,
|
|
3849
4199
|
content: buildFormInput({
|
|
3850
4200
|
value: $v.value.name.$model,
|
|
3851
4201
|
onChange(input) {
|
|
@@ -3869,7 +4219,7 @@ const AIdentityProviderBasicFields = defineComponent({
|
|
|
3869
4219
|
validationMessages: translationsValidation.display_name.value,
|
|
3870
4220
|
validationSeverity: getVuelidateSeverity($v.value.display_name),
|
|
3871
4221
|
label: true,
|
|
3872
|
-
labelContent: translationsDefault[
|
|
4222
|
+
labelContent: translationsDefault["displayName"].value,
|
|
3873
4223
|
content: buildFormInput({
|
|
3874
4224
|
value: $v.value.display_name.$model,
|
|
3875
4225
|
onChange(input) {
|
|
@@ -4449,15 +4799,15 @@ var AIdentityProviderPicker_vue_vue_type_script_lang_default = defineComponent({
|
|
|
4449
4799
|
});
|
|
4450
4800
|
//#endregion
|
|
4451
4801
|
//#region src/components/entities/identity-provider/AIdentityProviderPicker.vue
|
|
4452
|
-
const _hoisted_1$
|
|
4453
|
-
const _hoisted_2$
|
|
4454
|
-
const _hoisted_3$
|
|
4455
|
-
const _hoisted_4$
|
|
4456
|
-
const _hoisted_5$
|
|
4457
|
-
function _sfc_render$
|
|
4802
|
+
const _hoisted_1$16 = { class: "d-flex flex-column gap-2" };
|
|
4803
|
+
const _hoisted_2$11 = { class: "d-flex flex-row gap-2 flex-wrap" };
|
|
4804
|
+
const _hoisted_3$9 = ["onClick"];
|
|
4805
|
+
const _hoisted_4$7 = { class: "d-flex flex-row gap-2 flex-wrap" };
|
|
4806
|
+
const _hoisted_5$4 = ["onClick"];
|
|
4807
|
+
function _sfc_render$38(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4458
4808
|
const _component_AIdentityProviderProtocol = resolveComponent("AIdentityProviderProtocol");
|
|
4459
4809
|
const _component_AIdentityProviderPreset = resolveComponent("AIdentityProviderPreset");
|
|
4460
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
4810
|
+
return openBlock(), createElementBlock("div", _hoisted_1$16, [createElementVNode("div", null, [_cache[0] || (_cache[0] = createElementVNode("h6", null, "Protocols", -1)), createElementVNode("div", _hoisted_2$11, [(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.protocols, (item, key) => {
|
|
4461
4811
|
return openBlock(), createBlock(_component_AIdentityProviderProtocol, {
|
|
4462
4812
|
key,
|
|
4463
4813
|
id: item
|
|
@@ -4465,10 +4815,10 @@ function _sfc_render$14(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4465
4815
|
default: withCtx((props) => [createElementVNode("div", {
|
|
4466
4816
|
class: normalizeClass([{ "active": item === _ctx.protocol && !_ctx.preset }, "d-flex flex-column gap-1 text-center identity-provider-picker-item"]),
|
|
4467
4817
|
onClick: withModifiers(($event) => _ctx.pickProtocol(item), ["prevent"])
|
|
4468
|
-
}, [createElementVNode("div", null, [createElementVNode("i", { class: normalizeClass(["fa-2x", props.icon]) }, null, 2)]), createElementVNode("div", null, toDisplayString(props.name), 1)], 10, _hoisted_3$
|
|
4818
|
+
}, [createElementVNode("div", null, [createElementVNode("i", { class: normalizeClass(["fa-2x", props.icon]) }, null, 2)]), createElementVNode("div", null, toDisplayString(props.name), 1)], 10, _hoisted_3$9)]),
|
|
4469
4819
|
_: 2
|
|
4470
4820
|
}, 1032, ["id"]);
|
|
4471
|
-
}), 128))])]), createElementVNode("div", null, [_cache[1] || (_cache[1] = createElementVNode("h6", null, "Presets", -1)), createElementVNode("div", _hoisted_4$
|
|
4821
|
+
}), 128))])]), createElementVNode("div", null, [_cache[1] || (_cache[1] = createElementVNode("h6", null, "Presets", -1)), createElementVNode("div", _hoisted_4$7, [(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.presets, (item, key) => {
|
|
4472
4822
|
return openBlock(), createBlock(_component_AIdentityProviderPreset, {
|
|
4473
4823
|
key,
|
|
4474
4824
|
id: item
|
|
@@ -4476,12 +4826,12 @@ function _sfc_render$14(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4476
4826
|
default: withCtx((props) => [createElementVNode("div", {
|
|
4477
4827
|
class: normalizeClass([{ "active": item === _ctx.preset }, "d-flex flex-column gap-1 text-center identity-provider-picker-item"]),
|
|
4478
4828
|
onClick: withModifiers(($event) => _ctx.pickPreset(item), ["prevent"])
|
|
4479
|
-
}, [createElementVNode("div", null, [createElementVNode("i", { class: normalizeClass(["fa-2x", props.icon]) }, null, 2)]), createElementVNode("div", null, toDisplayString(props.name), 1)], 10, _hoisted_5$
|
|
4829
|
+
}, [createElementVNode("div", null, [createElementVNode("i", { class: normalizeClass(["fa-2x", props.icon]) }, null, 2)]), createElementVNode("div", null, toDisplayString(props.name), 1)], 10, _hoisted_5$4)]),
|
|
4480
4830
|
_: 2
|
|
4481
4831
|
}, 1032, ["id"]);
|
|
4482
4832
|
}), 128))])])]);
|
|
4483
4833
|
}
|
|
4484
|
-
var AIdentityProviderPicker_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AIdentityProviderPicker_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
4834
|
+
var AIdentityProviderPicker_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AIdentityProviderPicker_vue_vue_type_script_lang_default, [["render", _sfc_render$38], ["__scopeId", "data-v-cb0d0718"]]);
|
|
4485
4835
|
//#endregion
|
|
4486
4836
|
//#region src/components/entities/identity-provider/AIdentityProviderOAuth2ClientFields.ts
|
|
4487
4837
|
const AIdentityProviderOAuth2ClientFields = defineComponent({
|
|
@@ -4535,69 +4885,71 @@ const AIdentityProviderOAuth2ClientFields = defineComponent({
|
|
|
4535
4885
|
}
|
|
4536
4886
|
});
|
|
4537
4887
|
//#endregion
|
|
4538
|
-
//#region src/components/entities/identity-provider/
|
|
4539
|
-
|
|
4540
|
-
|
|
4541
|
-
|
|
4542
|
-
|
|
4543
|
-
|
|
4544
|
-
|
|
4545
|
-
|
|
4546
|
-
|
|
4547
|
-
|
|
4548
|
-
|
|
4549
|
-
|
|
4550
|
-
|
|
4551
|
-
const
|
|
4552
|
-
|
|
4553
|
-
|
|
4554
|
-
|
|
4555
|
-
|
|
4556
|
-
|
|
4557
|
-
|
|
4558
|
-
|
|
4559
|
-
message.value = `Lookup failed with: ${e.message}`;
|
|
4560
|
-
setup.emit("failed", e);
|
|
4561
|
-
}
|
|
4562
|
-
} finally {
|
|
4563
|
-
busy.value = false;
|
|
4564
|
-
}
|
|
4565
|
-
};
|
|
4566
|
-
const validationMessages = useTranslationsForBaseValidation($v.value.url);
|
|
4567
|
-
return () => {
|
|
4568
|
-
let messageNode;
|
|
4569
|
-
if (message.value) messageNode = h("div", { class: "alert alert-sm alert-warning" }, message.value);
|
|
4570
|
-
return [
|
|
4571
|
-
buildFormGroup({
|
|
4572
|
-
validationMessages: validationMessages.value,
|
|
4573
|
-
validationSeverity: getVuelidateSeverity($v.value.url),
|
|
4574
|
-
labelContent: "Discovery",
|
|
4575
|
-
content: buildFormInput({
|
|
4576
|
-
class: { "is-valid": lookupValid.value },
|
|
4577
|
-
props: { placeholder: "https://example.com/.well-known/openid-configuration" },
|
|
4578
|
-
value: $v.value.url.$model,
|
|
4579
|
-
onChange(input) {
|
|
4580
|
-
$v.value.url.$model = input;
|
|
4888
|
+
//#region src/components/entities/identity-provider/AIdentityProviderOAuth2EndpointFields.vue?vue&type=script&lang.ts
|
|
4889
|
+
var AIdentityProviderOAuth2EndpointFields_vue_vue_type_script_lang_default = defineComponent({
|
|
4890
|
+
components: {
|
|
4891
|
+
VCFormGroup,
|
|
4892
|
+
VCFormInput,
|
|
4893
|
+
AIdentityProviderOAuth2Discovery: defineComponent({
|
|
4894
|
+
emits: ["lookup", "failed"],
|
|
4895
|
+
setup(_, setup) {
|
|
4896
|
+
const busy = ref(false);
|
|
4897
|
+
const form = reactive({ url: "" });
|
|
4898
|
+
const $v = useVuelidate({ url: { url } }, form);
|
|
4899
|
+
const lookupValid = ref(false);
|
|
4900
|
+
const message = ref(null);
|
|
4901
|
+
const apiClient = new Client();
|
|
4902
|
+
const lookup = async () => {
|
|
4903
|
+
if (busy.value || $v.value.url.$invalid) return;
|
|
4904
|
+
try {
|
|
4905
|
+
const response = await apiClient.get(form.url);
|
|
4906
|
+
if (isOpenIDProviderMetadata(response.data)) {
|
|
4907
|
+
setup.emit("lookup", response.data);
|
|
4908
|
+
lookupValid.value = true;
|
|
4581
4909
|
}
|
|
4582
|
-
})
|
|
4583
|
-
|
|
4584
|
-
|
|
4585
|
-
|
|
4586
|
-
|
|
4587
|
-
|
|
4588
|
-
|
|
4589
|
-
|
|
4590
|
-
$event.preventDefault();
|
|
4591
|
-
return lookup();
|
|
4910
|
+
} catch (e) {
|
|
4911
|
+
lookupValid.value = false;
|
|
4912
|
+
if (e instanceof Error) {
|
|
4913
|
+
message.value = `Lookup failed with: ${e.message}`;
|
|
4914
|
+
setup.emit("failed", e);
|
|
4915
|
+
}
|
|
4916
|
+
} finally {
|
|
4917
|
+
busy.value = false;
|
|
4592
4918
|
}
|
|
4593
|
-
}
|
|
4594
|
-
|
|
4595
|
-
|
|
4596
|
-
|
|
4597
|
-
});
|
|
4598
|
-
|
|
4599
|
-
|
|
4600
|
-
|
|
4919
|
+
};
|
|
4920
|
+
const validationMessages = useTranslationsForBaseValidation($v.value.url);
|
|
4921
|
+
return () => {
|
|
4922
|
+
let messageNode;
|
|
4923
|
+
if (message.value) messageNode = h("div", { class: "alert alert-sm alert-warning" }, message.value);
|
|
4924
|
+
return [
|
|
4925
|
+
buildFormGroup({
|
|
4926
|
+
validationMessages: validationMessages.value,
|
|
4927
|
+
validationSeverity: getVuelidateSeverity($v.value.url),
|
|
4928
|
+
labelContent: "Discovery",
|
|
4929
|
+
content: buildFormInput({
|
|
4930
|
+
class: { "is-valid": lookupValid.value },
|
|
4931
|
+
props: { placeholder: "https://example.com/.well-known/openid-configuration" },
|
|
4932
|
+
value: $v.value.url.$model,
|
|
4933
|
+
onChange(input) {
|
|
4934
|
+
$v.value.url.$model = input;
|
|
4935
|
+
}
|
|
4936
|
+
})
|
|
4937
|
+
}),
|
|
4938
|
+
messageNode,
|
|
4939
|
+
h("button", {
|
|
4940
|
+
type: "button",
|
|
4941
|
+
class: "btn btn-xs btn-primary mb-1",
|
|
4942
|
+
disabled: !form.url || $v.value.$invalid,
|
|
4943
|
+
onClick($event) {
|
|
4944
|
+
$event.preventDefault();
|
|
4945
|
+
return lookup();
|
|
4946
|
+
}
|
|
4947
|
+
}, [h("i", { class: "fa fa-search pe-1" }), "Lookup"])
|
|
4948
|
+
];
|
|
4949
|
+
};
|
|
4950
|
+
}
|
|
4951
|
+
})
|
|
4952
|
+
},
|
|
4601
4953
|
props: {
|
|
4602
4954
|
entity: { type: Object },
|
|
4603
4955
|
discovery: {
|
|
@@ -4624,64 +4976,81 @@ const AIdentityProviderOAuth2EndpointFields = defineComponent({
|
|
|
4624
4976
|
user_info_url: { url }
|
|
4625
4977
|
}, form, { $registerAs: "endpoint" });
|
|
4626
4978
|
function init() {
|
|
4979
|
+
form.token_url = "";
|
|
4980
|
+
form.authorize_url = "";
|
|
4981
|
+
form.user_info_url = "";
|
|
4627
4982
|
if (!props.entity) return;
|
|
4628
4983
|
assignFormProperties(form, props.entity);
|
|
4629
4984
|
}
|
|
4630
4985
|
onChange(useUpdatedAt(props.entity), () => init());
|
|
4631
4986
|
init();
|
|
4632
4987
|
const validationMessages = useTranslationsForNestedValidation($v.value);
|
|
4633
|
-
|
|
4634
|
-
|
|
4635
|
-
|
|
4636
|
-
|
|
4637
|
-
|
|
4638
|
-
|
|
4639
|
-
|
|
4640
|
-
|
|
4641
|
-
|
|
4642
|
-
validationMessages: validationMessages.token_url.value,
|
|
4643
|
-
validationSeverity: getVuelidateSeverity($v.value.token_url),
|
|
4644
|
-
label: true,
|
|
4645
|
-
labelContent: "Token",
|
|
4646
|
-
content: buildFormInput({
|
|
4647
|
-
value: $v.value.token_url.$model,
|
|
4648
|
-
onChange(input) {
|
|
4649
|
-
$v.value.token_url.$model = input;
|
|
4650
|
-
},
|
|
4651
|
-
props: { placeholder: "https://..." }
|
|
4652
|
-
})
|
|
4653
|
-
}),
|
|
4654
|
-
buildFormGroup({
|
|
4655
|
-
validationMessages: validationMessages.authorize_url.value,
|
|
4656
|
-
validationSeverity: getVuelidateSeverity($v.value.authorize_url),
|
|
4657
|
-
label: true,
|
|
4658
|
-
labelContent: "Authorize",
|
|
4659
|
-
content: buildFormInput({
|
|
4660
|
-
value: $v.value.authorize_url.$model,
|
|
4661
|
-
onChange(input) {
|
|
4662
|
-
$v.value.authorize_url.$model = input;
|
|
4663
|
-
},
|
|
4664
|
-
props: { placeholder: "https://..." }
|
|
4665
|
-
})
|
|
4666
|
-
}),
|
|
4667
|
-
buildFormGroup({
|
|
4668
|
-
validationMessages: validationMessages.user_info_url.value,
|
|
4669
|
-
validationSeverity: getVuelidateSeverity($v.value.user_info_url),
|
|
4670
|
-
label: true,
|
|
4671
|
-
labelContent: "UserInfo",
|
|
4672
|
-
content: buildFormInput({
|
|
4673
|
-
value: $v.value.user_info_url.$model,
|
|
4674
|
-
onChange(input) {
|
|
4675
|
-
$v.value.user_info_url.$model = input;
|
|
4676
|
-
},
|
|
4677
|
-
props: { placeholder: "https://..." }
|
|
4678
|
-
})
|
|
4679
|
-
})
|
|
4680
|
-
];
|
|
4988
|
+
const handleDiscoveryLookup = (data) => {
|
|
4989
|
+
form.authorize_url = data.authorization_endpoint;
|
|
4990
|
+
form.token_url = data.token_endpoint;
|
|
4991
|
+
};
|
|
4992
|
+
return {
|
|
4993
|
+
$v,
|
|
4994
|
+
validationMessages,
|
|
4995
|
+
handleDiscoveryLookup,
|
|
4996
|
+
getVuelidateSeverity
|
|
4681
4997
|
};
|
|
4682
4998
|
}
|
|
4683
4999
|
});
|
|
4684
5000
|
//#endregion
|
|
5001
|
+
//#region src/components/entities/identity-provider/AIdentityProviderOAuth2EndpointFields.vue
|
|
5002
|
+
function _sfc_render$37(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5003
|
+
const _component_AIdentityProviderOAuth2Discovery = resolveComponent("AIdentityProviderOAuth2Discovery");
|
|
5004
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
5005
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
5006
|
+
return openBlock(), createElementBlock(Fragment, null, [
|
|
5007
|
+
_ctx.discovery ? (openBlock(), createBlock(_component_AIdentityProviderOAuth2Discovery, {
|
|
5008
|
+
key: 0,
|
|
5009
|
+
onLookup: _ctx.handleDiscoveryLookup
|
|
5010
|
+
}, null, 8, ["onLookup"])) : createCommentVNode("v-if", true),
|
|
5011
|
+
createVNode(_component_VCFormGroup, {
|
|
5012
|
+
label: true,
|
|
5013
|
+
"validation-messages": _ctx.validationMessages.token_url.value,
|
|
5014
|
+
"validation-severity": _ctx.getVuelidateSeverity(_ctx.$v.token_url)
|
|
5015
|
+
}, {
|
|
5016
|
+
label: withCtx(() => [..._cache[3] || (_cache[3] = [createTextVNode(" Token ", -1)])]),
|
|
5017
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
5018
|
+
modelValue: _ctx.$v.token_url.$model,
|
|
5019
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.$v.token_url.$model = $event),
|
|
5020
|
+
placeholder: "https://..."
|
|
5021
|
+
}, null, 8, ["modelValue"])]),
|
|
5022
|
+
_: 1
|
|
5023
|
+
}, 8, ["validation-messages", "validation-severity"]),
|
|
5024
|
+
createVNode(_component_VCFormGroup, {
|
|
5025
|
+
label: true,
|
|
5026
|
+
"validation-messages": _ctx.validationMessages.authorize_url.value,
|
|
5027
|
+
"validation-severity": _ctx.getVuelidateSeverity(_ctx.$v.authorize_url)
|
|
5028
|
+
}, {
|
|
5029
|
+
label: withCtx(() => [..._cache[4] || (_cache[4] = [createTextVNode(" Authorize ", -1)])]),
|
|
5030
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
5031
|
+
modelValue: _ctx.$v.authorize_url.$model,
|
|
5032
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => _ctx.$v.authorize_url.$model = $event),
|
|
5033
|
+
placeholder: "https://..."
|
|
5034
|
+
}, null, 8, ["modelValue"])]),
|
|
5035
|
+
_: 1
|
|
5036
|
+
}, 8, ["validation-messages", "validation-severity"]),
|
|
5037
|
+
createVNode(_component_VCFormGroup, {
|
|
5038
|
+
label: true,
|
|
5039
|
+
"validation-messages": _ctx.validationMessages.user_info_url.value,
|
|
5040
|
+
"validation-severity": _ctx.getVuelidateSeverity(_ctx.$v.user_info_url)
|
|
5041
|
+
}, {
|
|
5042
|
+
label: withCtx(() => [..._cache[5] || (_cache[5] = [createTextVNode(" UserInfo ", -1)])]),
|
|
5043
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
5044
|
+
modelValue: _ctx.$v.user_info_url.$model,
|
|
5045
|
+
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => _ctx.$v.user_info_url.$model = $event),
|
|
5046
|
+
placeholder: "https://..."
|
|
5047
|
+
}, null, 8, ["modelValue"])]),
|
|
5048
|
+
_: 1
|
|
5049
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
5050
|
+
], 64);
|
|
5051
|
+
}
|
|
5052
|
+
var AIdentityProviderOAuth2EndpointFields_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AIdentityProviderOAuth2EndpointFields_vue_vue_type_script_lang_default, [["render", _sfc_render$37]]);
|
|
5053
|
+
//#endregion
|
|
4685
5054
|
//#region src/components/entities/identity-provider/AIdentityProviderOAuth2Form.ts
|
|
4686
5055
|
const AIdentityProviderOAuth2Form = defineComponent({
|
|
4687
5056
|
components: {
|
|
@@ -4808,7 +5177,7 @@ const AIdentityProviderOAuth2Form = defineComponent({
|
|
|
4808
5177
|
h("i", { class: "fa-solid fa-vihara" }),
|
|
4809
5178
|
" ",
|
|
4810
5179
|
"Endpoints"
|
|
4811
|
-
]), h(
|
|
5180
|
+
]), h(AIdentityProviderOAuth2EndpointFields_default, {
|
|
4812
5181
|
entity: manager.data.value,
|
|
4813
5182
|
discovery: protocol.value === IdentityProviderProtocol.OIDC
|
|
4814
5183
|
})];
|
|
@@ -4929,38 +5298,58 @@ const AIdentityProviders = defineComponent({
|
|
|
4929
5298
|
props,
|
|
4930
5299
|
setup: ctx
|
|
4931
5300
|
});
|
|
4932
|
-
const translationName = useTranslation({
|
|
4933
|
-
group: TranslatorTranslationGroup.DEFAULT,
|
|
4934
|
-
key: TranslatorTranslationDefaultKey.IDENTITY_PROVIDERS
|
|
4935
|
-
});
|
|
4936
5301
|
const translation = useTranslation({
|
|
4937
|
-
group:
|
|
4938
|
-
key:
|
|
4939
|
-
data: { name:
|
|
5302
|
+
group: "vuecs",
|
|
5303
|
+
key: "noMore",
|
|
5304
|
+
data: { name: useTranslation({
|
|
5305
|
+
group: "default",
|
|
5306
|
+
key: "identityProviders"
|
|
5307
|
+
}) }
|
|
4940
5308
|
});
|
|
4941
5309
|
return () => render({ noMore: { content: translation.value } });
|
|
4942
5310
|
}
|
|
4943
5311
|
});
|
|
4944
5312
|
//#endregion
|
|
4945
|
-
//#region src/components/entities/identity-provider/AIdentityProviderIcon.ts
|
|
4946
|
-
|
|
5313
|
+
//#region src/components/entities/identity-provider/AIdentityProviderIcon.vue?vue&type=script&lang.ts
|
|
5314
|
+
var AIdentityProviderIcon_vue_vue_type_script_lang_default = defineComponent({
|
|
5315
|
+
components: {
|
|
5316
|
+
AIdentityProviderPreset,
|
|
5317
|
+
AIdentityProviderProtocol
|
|
5318
|
+
},
|
|
5319
|
+
inheritAttrs: false,
|
|
4947
5320
|
props: { entity: {
|
|
4948
5321
|
type: Object,
|
|
4949
5322
|
required: true
|
|
4950
|
-
} }
|
|
4951
|
-
setup(props, setup) {
|
|
4952
|
-
if (props.entity.preset) {
|
|
4953
|
-
const { preset } = props.entity;
|
|
4954
|
-
return () => h(AIdentityProviderPreset, { id: preset }, { default: (item) => h("i", { class: [item.icon, setup.attrs.class] }) });
|
|
4955
|
-
}
|
|
4956
|
-
if (!props.entity.protocol) return () => null;
|
|
4957
|
-
const { protocol } = props.entity;
|
|
4958
|
-
return () => h(AIdentityProviderProtocol, { id: protocol }, { default: (item) => h("i", { class: [item.icon, setup.attrs.class] }) });
|
|
4959
|
-
}
|
|
5323
|
+
} }
|
|
4960
5324
|
});
|
|
4961
5325
|
//#endregion
|
|
4962
|
-
//#region src/components/entities/identity-provider
|
|
4963
|
-
|
|
5326
|
+
//#region src/components/entities/identity-provider/AIdentityProviderIcon.vue
|
|
5327
|
+
function _sfc_render$36(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5328
|
+
const _component_AIdentityProviderPreset = resolveComponent("AIdentityProviderPreset");
|
|
5329
|
+
const _component_AIdentityProviderProtocol = resolveComponent("AIdentityProviderProtocol");
|
|
5330
|
+
return _ctx.entity.preset ? (openBlock(), createBlock(_component_AIdentityProviderPreset, {
|
|
5331
|
+
key: 0,
|
|
5332
|
+
id: _ctx.entity.preset
|
|
5333
|
+
}, {
|
|
5334
|
+
default: withCtx((item) => [createElementVNode("i", { class: normalizeClass([item.icon, _ctx.$attrs.class]) }, null, 2)]),
|
|
5335
|
+
_: 1
|
|
5336
|
+
}, 8, ["id"])) : _ctx.entity.protocol ? (openBlock(), createBlock(_component_AIdentityProviderProtocol, {
|
|
5337
|
+
key: 1,
|
|
5338
|
+
id: _ctx.entity.protocol
|
|
5339
|
+
}, {
|
|
5340
|
+
default: withCtx((item) => [createElementVNode("i", { class: normalizeClass([item.icon, _ctx.$attrs.class]) }, null, 2)]),
|
|
5341
|
+
_: 1
|
|
5342
|
+
}, 8, ["id"])) : createCommentVNode("v-if", true);
|
|
5343
|
+
}
|
|
5344
|
+
var AIdentityProviderIcon_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AIdentityProviderIcon_vue_vue_type_script_lang_default, [["render", _sfc_render$36]]);
|
|
5345
|
+
//#endregion
|
|
5346
|
+
//#region src/components/entities/identity-provider-role/AIdentityProviderRoleAssignment.vue?vue&type=script&lang.ts
|
|
5347
|
+
var AIdentityProviderRoleAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
5348
|
+
components: {
|
|
5349
|
+
VCFormGroup,
|
|
5350
|
+
VCFormInput,
|
|
5351
|
+
VCFormInputCheckbox
|
|
5352
|
+
},
|
|
4964
5353
|
props: {
|
|
4965
5354
|
role: {
|
|
4966
5355
|
type: Object,
|
|
@@ -4994,7 +5383,7 @@ const AIdentityProviderRoleAssignment = defineComponent({
|
|
|
4994
5383
|
value_is_regex: {}
|
|
4995
5384
|
}, form);
|
|
4996
5385
|
const validationMessages = useTranslationsForNestedValidation($v.value);
|
|
4997
|
-
const translationsDefault = useTranslationsForGroup(
|
|
5386
|
+
const translationsDefault = useTranslationsForGroup("default", [{ key: "valueIsRegex" }]);
|
|
4998
5387
|
const manager = defineEntityManager({
|
|
4999
5388
|
type: `${EntityType.IDENTITY_PROVIDER_ROLE_MAPPING}`,
|
|
5000
5389
|
setup,
|
|
@@ -5007,120 +5396,154 @@ const AIdentityProviderRoleAssignment = defineComponent({
|
|
|
5007
5396
|
provider_id: props.entityId
|
|
5008
5397
|
} } });
|
|
5009
5398
|
if (manager.data.value) assignFormProperties(form, manager.data.value);
|
|
5010
|
-
const
|
|
5011
|
-
|
|
5012
|
-
|
|
5013
|
-
|
|
5014
|
-
|
|
5015
|
-
|
|
5016
|
-
|
|
5017
|
-
}
|
|
5018
|
-
|
|
5019
|
-
|
|
5020
|
-
|
|
5021
|
-
|
|
5022
|
-
|
|
5023
|
-
|
|
5024
|
-
|
|
5025
|
-
|
|
5026
|
-
|
|
5027
|
-
|
|
5028
|
-
|
|
5029
|
-
|
|
5030
|
-
|
|
5031
|
-
|
|
5032
|
-
|
|
5033
|
-
"btn-dark": !!manager.data.value
|
|
5034
|
-
}],
|
|
5035
|
-
onClick($event) {
|
|
5036
|
-
$event.preventDefault();
|
|
5037
|
-
if (manager.data.value) return manager.update(form);
|
|
5038
|
-
return manager.create({
|
|
5039
|
-
...form,
|
|
5040
|
-
provider_id: props.entityId,
|
|
5041
|
-
role_id: props.role.id
|
|
5042
|
-
});
|
|
5043
|
-
}
|
|
5044
|
-
}, [h("i", { class: ["fa", {
|
|
5045
|
-
"fa-plus": !manager.data.value,
|
|
5046
|
-
"fa-save": manager.data.value
|
|
5047
|
-
}] })]), dropAction]);
|
|
5048
|
-
const listBar = h("div", { class: "d-flex flex-row" }, [
|
|
5049
|
-
h("div", { class: "me-2" }, [displayButton]),
|
|
5050
|
-
h("div", [h("h6", {
|
|
5051
|
-
class: "mb-0",
|
|
5052
|
-
onClick($event) {
|
|
5053
|
-
$event.preventDefault();
|
|
5054
|
-
toggleDisplay.call(null);
|
|
5055
|
-
}
|
|
5056
|
-
}, [props.role.name])]),
|
|
5057
|
-
itemActions
|
|
5058
|
-
]);
|
|
5059
|
-
let renderForm = [];
|
|
5060
|
-
if (display.value) renderForm = [h("div", { class: "mt-2" }, [
|
|
5061
|
-
buildFormGroup({
|
|
5062
|
-
label: true,
|
|
5063
|
-
labelContent: "Name",
|
|
5064
|
-
validationMessages: validationMessages.name.value,
|
|
5065
|
-
validationSeverity: getVuelidateSeverity($v.value.name),
|
|
5066
|
-
content: buildFormInput({
|
|
5067
|
-
value: $v.value.name.$model,
|
|
5068
|
-
onChange(input) {
|
|
5069
|
-
$v.value.name.$model = input;
|
|
5070
|
-
}
|
|
5071
|
-
})
|
|
5072
|
-
}),
|
|
5073
|
-
buildFormGroup({
|
|
5074
|
-
label: true,
|
|
5075
|
-
labelContent: "Value",
|
|
5076
|
-
validationMessages: validationMessages.value.value,
|
|
5077
|
-
validationSeverity: getVuelidateSeverity($v.value.value),
|
|
5078
|
-
content: buildFormInput({
|
|
5079
|
-
value: $v.value.value.$model,
|
|
5080
|
-
onChange(input) {
|
|
5081
|
-
$v.value.value.$model = input;
|
|
5082
|
-
}
|
|
5083
|
-
})
|
|
5084
|
-
}),
|
|
5085
|
-
buildFormGroup({
|
|
5086
|
-
validationMessages: validationMessages.value_is_regex.value,
|
|
5087
|
-
validationSeverity: getVuelidateSeverity($v.value.value_is_regex),
|
|
5088
|
-
label: true,
|
|
5089
|
-
labelContent: "Regex",
|
|
5090
|
-
content: buildFormInputCheckbox({
|
|
5091
|
-
groupClass: "form-switch",
|
|
5092
|
-
labelContent: translationsDefault.valueIsRegex.value,
|
|
5093
|
-
value: $v.value.value_is_regex.$model,
|
|
5094
|
-
onChange(input) {
|
|
5095
|
-
$v.value.value_is_regex.$model = input;
|
|
5096
|
-
}
|
|
5097
|
-
})
|
|
5098
|
-
})
|
|
5099
|
-
])];
|
|
5100
|
-
return h("div", { class: "list-item flex-column" }, [listBar, renderForm]);
|
|
5399
|
+
const handleSaveOrCreate = (e) => {
|
|
5400
|
+
e.preventDefault();
|
|
5401
|
+
if (manager.data.value) return manager.update(form);
|
|
5402
|
+
return manager.create({
|
|
5403
|
+
...form,
|
|
5404
|
+
provider_id: props.entityId,
|
|
5405
|
+
role_id: props.role.id
|
|
5406
|
+
});
|
|
5407
|
+
};
|
|
5408
|
+
const handleDelete = (e) => {
|
|
5409
|
+
e.preventDefault();
|
|
5410
|
+
return manager.delete();
|
|
5411
|
+
};
|
|
5412
|
+
return {
|
|
5413
|
+
display,
|
|
5414
|
+
toggleDisplay,
|
|
5415
|
+
$v,
|
|
5416
|
+
validationMessages,
|
|
5417
|
+
translationsDefault,
|
|
5418
|
+
manager,
|
|
5419
|
+
handleSaveOrCreate,
|
|
5420
|
+
handleDelete,
|
|
5421
|
+
getVuelidateSeverity
|
|
5101
5422
|
};
|
|
5102
|
-
return () => render();
|
|
5103
5423
|
}
|
|
5104
5424
|
});
|
|
5105
5425
|
//#endregion
|
|
5106
|
-
//#region src/components/entities/identity-provider-role/
|
|
5107
|
-
const
|
|
5426
|
+
//#region src/components/entities/identity-provider-role/AIdentityProviderRoleAssignment.vue
|
|
5427
|
+
const _hoisted_1$15 = { class: "list-item flex-column" };
|
|
5428
|
+
const _hoisted_2$10 = { class: "d-flex flex-row" };
|
|
5429
|
+
const _hoisted_3$8 = { class: "me-2" };
|
|
5430
|
+
const _hoisted_4$6 = { class: "ms-auto" };
|
|
5431
|
+
const _hoisted_5$3 = ["disabled"];
|
|
5432
|
+
const _hoisted_6$3 = {
|
|
5433
|
+
key: 0,
|
|
5434
|
+
class: "mt-2"
|
|
5435
|
+
};
|
|
5436
|
+
function _sfc_render$35(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5437
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
5438
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
5439
|
+
const _component_VCFormInputCheckbox = resolveComponent("VCFormInputCheckbox");
|
|
5440
|
+
return openBlock(), createElementBlock("div", _hoisted_1$15, [createElementVNode("div", _hoisted_2$10, [
|
|
5441
|
+
createElementVNode("div", _hoisted_3$8, [createElementVNode("button", {
|
|
5442
|
+
class: "btn btn-xs btn-dark",
|
|
5443
|
+
onClick: _cache[0] || (_cache[0] = withModifiers(($event) => _ctx.toggleDisplay(), ["prevent"]))
|
|
5444
|
+
}, [createElementVNode("i", { class: normalizeClass(["fa", {
|
|
5445
|
+
"fa-chevron-down": !_ctx.display,
|
|
5446
|
+
"fa-chevron-up": _ctx.display
|
|
5447
|
+
}]) }, null, 2)])]),
|
|
5448
|
+
createElementVNode("div", null, [createElementVNode("h6", {
|
|
5449
|
+
class: "mb-0",
|
|
5450
|
+
onClick: _cache[1] || (_cache[1] = withModifiers(($event) => _ctx.toggleDisplay(), ["prevent"]))
|
|
5451
|
+
}, toDisplayString(_ctx.role.name), 1)]),
|
|
5452
|
+
createElementVNode("div", _hoisted_4$6, [createElementVNode("button", {
|
|
5453
|
+
class: normalizeClass(["btn btn-xs", {
|
|
5454
|
+
"btn-primary": !_ctx.manager.data.value,
|
|
5455
|
+
"btn-dark": !!_ctx.manager.data.value
|
|
5456
|
+
}]),
|
|
5457
|
+
onClick: _cache[2] || (_cache[2] = (...args) => _ctx.handleSaveOrCreate && _ctx.handleSaveOrCreate(...args))
|
|
5458
|
+
}, [createElementVNode("i", { class: normalizeClass(["fa", {
|
|
5459
|
+
"fa-plus": !_ctx.manager.data.value,
|
|
5460
|
+
"fa-save": _ctx.manager.data.value
|
|
5461
|
+
}]) }, null, 2)], 2), _ctx.manager.data.value ? (openBlock(), createElementBlock("button", {
|
|
5462
|
+
key: 0,
|
|
5463
|
+
class: "btn btn-xs btn-danger ms-1",
|
|
5464
|
+
disabled: _ctx.manager.busy.value,
|
|
5465
|
+
onClick: _cache[3] || (_cache[3] = (...args) => _ctx.handleDelete && _ctx.handleDelete(...args))
|
|
5466
|
+
}, [..._cache[7] || (_cache[7] = [createElementVNode("i", { class: "fa fa-trash" }, null, -1)])], 8, _hoisted_5$3)) : createCommentVNode("v-if", true)])
|
|
5467
|
+
]), _ctx.display ? (openBlock(), createElementBlock("div", _hoisted_6$3, [
|
|
5468
|
+
createVNode(_component_VCFormGroup, {
|
|
5469
|
+
label: true,
|
|
5470
|
+
"validation-messages": _ctx.validationMessages.name.value,
|
|
5471
|
+
"validation-severity": _ctx.getVuelidateSeverity(_ctx.$v.name)
|
|
5472
|
+
}, {
|
|
5473
|
+
label: withCtx(() => [..._cache[8] || (_cache[8] = [createTextVNode(" Name ", -1)])]),
|
|
5474
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
5475
|
+
modelValue: _ctx.$v.name.$model,
|
|
5476
|
+
"onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => _ctx.$v.name.$model = $event)
|
|
5477
|
+
}, null, 8, ["modelValue"])]),
|
|
5478
|
+
_: 1
|
|
5479
|
+
}, 8, ["validation-messages", "validation-severity"]),
|
|
5480
|
+
createVNode(_component_VCFormGroup, {
|
|
5481
|
+
label: true,
|
|
5482
|
+
"validation-messages": _ctx.validationMessages.value.value,
|
|
5483
|
+
"validation-severity": _ctx.getVuelidateSeverity(_ctx.$v.value)
|
|
5484
|
+
}, {
|
|
5485
|
+
label: withCtx(() => [..._cache[9] || (_cache[9] = [createTextVNode(" Value ", -1)])]),
|
|
5486
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
5487
|
+
modelValue: _ctx.$v.value.$model,
|
|
5488
|
+
"onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => _ctx.$v.value.$model = $event)
|
|
5489
|
+
}, null, 8, ["modelValue"])]),
|
|
5490
|
+
_: 1
|
|
5491
|
+
}, 8, ["validation-messages", "validation-severity"]),
|
|
5492
|
+
createVNode(_component_VCFormGroup, {
|
|
5493
|
+
label: true,
|
|
5494
|
+
"validation-messages": _ctx.validationMessages.value_is_regex.value,
|
|
5495
|
+
"validation-severity": _ctx.getVuelidateSeverity(_ctx.$v.value_is_regex)
|
|
5496
|
+
}, {
|
|
5497
|
+
label: withCtx(() => [..._cache[10] || (_cache[10] = [createTextVNode(" Regex ", -1)])]),
|
|
5498
|
+
default: withCtx(() => [createVNode(_component_VCFormInputCheckbox, {
|
|
5499
|
+
modelValue: _ctx.$v.value_is_regex.$model,
|
|
5500
|
+
"onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => _ctx.$v.value_is_regex.$model = $event),
|
|
5501
|
+
"group-class": "form-switch",
|
|
5502
|
+
"label-content": _ctx.translationsDefault.valueIsRegex.value
|
|
5503
|
+
}, null, 8, ["modelValue", "label-content"])]),
|
|
5504
|
+
_: 1
|
|
5505
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
5506
|
+
])) : createCommentVNode("v-if", true)]);
|
|
5507
|
+
}
|
|
5508
|
+
var AIdentityProviderRoleAssignment_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AIdentityProviderRoleAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$35]]);
|
|
5509
|
+
//#endregion
|
|
5510
|
+
//#region src/components/entities/identity-provider-role/AIdentityProviderRoleAssignments.vue?vue&type=script&lang.ts
|
|
5511
|
+
var AIdentityProviderRoleAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
5512
|
+
components: {
|
|
5513
|
+
ARoles,
|
|
5514
|
+
AIdentityProviderRoleAssignment: AIdentityProviderRoleAssignment_default
|
|
5515
|
+
},
|
|
5108
5516
|
props: { entityId: {
|
|
5109
5517
|
type: String,
|
|
5110
5518
|
required: true
|
|
5111
5519
|
} },
|
|
5112
5520
|
setup(props, { slots }) {
|
|
5113
|
-
return () =>
|
|
5114
|
-
[SlotName.BODY]: (slotProps) => slotProps.data.map((item) => h(AIdentityProviderRoleAssignment, {
|
|
5115
|
-
key: item.id,
|
|
5116
|
-
entityId: props.entityId,
|
|
5117
|
-
role: item
|
|
5118
|
-
})),
|
|
5119
|
-
...slots
|
|
5120
|
-
});
|
|
5521
|
+
return { forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "body"))) };
|
|
5121
5522
|
}
|
|
5122
5523
|
});
|
|
5123
5524
|
//#endregion
|
|
5525
|
+
//#region src/components/entities/identity-provider-role/AIdentityProviderRoleAssignments.vue
|
|
5526
|
+
function _sfc_render$34(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5527
|
+
const _component_AIdentityProviderRoleAssignment = resolveComponent("AIdentityProviderRoleAssignment");
|
|
5528
|
+
const _component_ARoles = resolveComponent("ARoles");
|
|
5529
|
+
return openBlock(), createBlock(_component_ARoles, { "header-title": false }, createSlots({
|
|
5530
|
+
body: withCtx((slotProps) => [(openBlock(true), createElementBlock(Fragment, null, renderList(slotProps.data, (item) => {
|
|
5531
|
+
return openBlock(), createBlock(_component_AIdentityProviderRoleAssignment, {
|
|
5532
|
+
key: item.id,
|
|
5533
|
+
"entity-id": _ctx.entityId,
|
|
5534
|
+
role: item
|
|
5535
|
+
}, null, 8, ["entity-id", "role"]);
|
|
5536
|
+
}), 128))]),
|
|
5537
|
+
_: 2
|
|
5538
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
5539
|
+
return {
|
|
5540
|
+
name,
|
|
5541
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
5542
|
+
};
|
|
5543
|
+
})]), 1024);
|
|
5544
|
+
}
|
|
5545
|
+
var AIdentityProviderRoleAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AIdentityProviderRoleAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$34]]);
|
|
5546
|
+
//#endregion
|
|
5124
5547
|
//#region src/components/entities/policy/attribute-names/AAttributeNamesPolicyForm.vue?vue&type=script&lang.ts
|
|
5125
5548
|
var AAttributeNamesPolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
5126
5549
|
components: { AFormInputList: AFormInputList_default },
|
|
@@ -5147,7 +5570,7 @@ var AAttributeNamesPolicyForm_vue_vue_type_script_lang_default = defineComponent
|
|
|
5147
5570
|
});
|
|
5148
5571
|
//#endregion
|
|
5149
5572
|
//#region src/components/entities/policy/attribute-names/AAttributeNamesPolicyForm.vue
|
|
5150
|
-
function _sfc_render$
|
|
5573
|
+
function _sfc_render$33(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5151
5574
|
const _component_AFormInputList = resolveComponent("AFormInputList");
|
|
5152
5575
|
return openBlock(), createBlock(_component_AFormInputList, {
|
|
5153
5576
|
names: _ctx.vuelidate.names.$model,
|
|
@@ -5155,7 +5578,7 @@ function _sfc_render$13(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5155
5578
|
onChanged: _ctx.handleUpdated
|
|
5156
5579
|
}, null, 8, ["names", "onChanged"]);
|
|
5157
5580
|
}
|
|
5158
|
-
var AAttributeNamesPolicyForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AAttributeNamesPolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
5581
|
+
var AAttributeNamesPolicyForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AAttributeNamesPolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$33]]);
|
|
5159
5582
|
//#endregion
|
|
5160
5583
|
//#region src/components/entities/policy/APolicyParentAssignment.ts
|
|
5161
5584
|
const APolicyParentAssignment = defineComponent({
|
|
@@ -5310,8 +5733,8 @@ var ACompositePolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
5310
5733
|
});
|
|
5311
5734
|
//#endregion
|
|
5312
5735
|
//#region src/components/entities/policy/composite/ACompositePolicyForm.vue
|
|
5313
|
-
const _hoisted_1$
|
|
5314
|
-
function _sfc_render$
|
|
5736
|
+
const _hoisted_1$14 = { class: "alert alert-sm alert-info mt-1 mb-0" };
|
|
5737
|
+
function _sfc_render$32(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5315
5738
|
const _component_VCFormSelect = resolveComponent("VCFormSelect");
|
|
5316
5739
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
5317
5740
|
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
@@ -5333,7 +5756,7 @@ function _sfc_render$12(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5333
5756
|
"modelValue",
|
|
5334
5757
|
"options",
|
|
5335
5758
|
"onChange"
|
|
5336
|
-
]), createElementVNode("div", _hoisted_1$
|
|
5759
|
+
]), createElementVNode("div", _hoisted_1$14, toDisplayString(_ctx.decisionStrategyHint), 1)]),
|
|
5337
5760
|
_: 1
|
|
5338
5761
|
}, 8, ["validation-messages", "validation-severity"])]),
|
|
5339
5762
|
_: 1
|
|
@@ -5359,7 +5782,7 @@ function _sfc_render$12(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5359
5782
|
_: 1
|
|
5360
5783
|
}, 8, ["validation"])]);
|
|
5361
5784
|
}
|
|
5362
|
-
var ACompositePolicyForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ACompositePolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
5785
|
+
var ACompositePolicyForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ACompositePolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$32]]);
|
|
5363
5786
|
//#endregion
|
|
5364
5787
|
//#region src/components/entities/policy/date/ADatePolicyForm.vue?vue&type=script&lang.ts
|
|
5365
5788
|
var ADatePolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -5399,7 +5822,7 @@ var ADatePolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
5399
5822
|
});
|
|
5400
5823
|
//#endregion
|
|
5401
5824
|
//#region src/components/entities/policy/date/ADatePolicyForm.vue
|
|
5402
|
-
function _sfc_render$
|
|
5825
|
+
function _sfc_render$31(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5403
5826
|
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
5404
5827
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
5405
5828
|
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
@@ -5435,7 +5858,7 @@ function _sfc_render$11(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5435
5858
|
_: 1
|
|
5436
5859
|
}, 8, ["validation"])]);
|
|
5437
5860
|
}
|
|
5438
|
-
var ADatePolicyForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ADatePolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
5861
|
+
var ADatePolicyForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ADatePolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$31]]);
|
|
5439
5862
|
//#endregion
|
|
5440
5863
|
//#region src/components/entities/policy/identity/AIdentityPolicyForm.vue?vue&type=script&lang.ts
|
|
5441
5864
|
var AIdentityPolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -5463,7 +5886,7 @@ var AIdentityPolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
5463
5886
|
});
|
|
5464
5887
|
//#endregion
|
|
5465
5888
|
//#region src/components/entities/policy/identity/AIdentityPolicyForm.vue
|
|
5466
|
-
function _sfc_render$
|
|
5889
|
+
function _sfc_render$30(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5467
5890
|
const _component_AFormInputList = resolveComponent("AFormInputList");
|
|
5468
5891
|
return openBlock(), createBlock(_component_AFormInputList, {
|
|
5469
5892
|
names: _ctx.vuelidate.types.$model,
|
|
@@ -5474,7 +5897,7 @@ function _sfc_render$10(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5474
5897
|
_: 1
|
|
5475
5898
|
}, 8, ["names", "onChanged"]);
|
|
5476
5899
|
}
|
|
5477
|
-
var AIdentityPolicyForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AIdentityPolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
5900
|
+
var AIdentityPolicyForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AIdentityPolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$30]]);
|
|
5478
5901
|
//#endregion
|
|
5479
5902
|
//#region src/components/entities/policy/realm-match/ARealmMatchPolicyForm.vue?vue&type=script&lang.ts
|
|
5480
5903
|
var ARealmMatchPolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -5526,18 +5949,18 @@ var ARealmMatchPolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
5526
5949
|
});
|
|
5527
5950
|
//#endregion
|
|
5528
5951
|
//#region src/components/entities/policy/realm-match/ARealmMatchPolicyForm.vue
|
|
5529
|
-
const _hoisted_1$
|
|
5530
|
-
const _hoisted_2$
|
|
5531
|
-
const _hoisted_3$
|
|
5532
|
-
const _hoisted_4$
|
|
5533
|
-
const _hoisted_5$
|
|
5534
|
-
const _hoisted_6$
|
|
5535
|
-
function _sfc_render$
|
|
5952
|
+
const _hoisted_1$13 = { class: "row" };
|
|
5953
|
+
const _hoisted_2$9 = { class: "col-7" };
|
|
5954
|
+
const _hoisted_3$7 = { class: "col-5" };
|
|
5955
|
+
const _hoisted_4$5 = ["for"];
|
|
5956
|
+
const _hoisted_5$2 = ["for"];
|
|
5957
|
+
const _hoisted_6$2 = ["for"];
|
|
5958
|
+
function _sfc_render$29(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5536
5959
|
const _component_AFormInputList = resolveComponent("AFormInputList");
|
|
5537
5960
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
5538
5961
|
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
5539
5962
|
const _component_VCFormInputCheckbox = resolveComponent("VCFormInputCheckbox");
|
|
5540
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
5963
|
+
return openBlock(), createElementBlock("div", _hoisted_1$13, [createElementVNode("div", _hoisted_2$9, [createVNode(_component_IVuelidate, { validation: _ctx.vuelidate.attribute_name }, {
|
|
5541
5964
|
default: withCtx((props) => [createVNode(_component_VCFormGroup, {
|
|
5542
5965
|
"validation-messages": props.data,
|
|
5543
5966
|
"validation-severity": props.severity
|
|
@@ -5549,7 +5972,7 @@ function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5549
5972
|
_: 1
|
|
5550
5973
|
}, 8, ["validation-messages", "validation-severity"])]),
|
|
5551
5974
|
_: 1
|
|
5552
|
-
}, 8, ["validation"])]), createElementVNode("div", _hoisted_3$
|
|
5975
|
+
}, 8, ["validation"])]), createElementVNode("div", _hoisted_3$7, [
|
|
5553
5976
|
createVNode(_component_IVuelidate, { validation: _ctx.vuelidate.attribute_name_strict }, {
|
|
5554
5977
|
default: withCtx((props) => [createVNode(_component_VCFormGroup, {
|
|
5555
5978
|
"validation-messages": props.data,
|
|
@@ -5562,7 +5985,7 @@ function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5562
5985
|
label: true,
|
|
5563
5986
|
onChange: _ctx.handleUpdated
|
|
5564
5987
|
}, {
|
|
5565
|
-
label: withCtx((iProps) => [createElementVNode("label", { for: iProps.id }, " Only match if the attribute is strict equal to the name? ", 8, _hoisted_4$
|
|
5988
|
+
label: withCtx((iProps) => [createElementVNode("label", { for: iProps.id }, " Only match if the attribute is strict equal to the name? ", 8, _hoisted_4$5)]),
|
|
5566
5989
|
_: 1
|
|
5567
5990
|
}, 8, ["modelValue", "onChange"])]),
|
|
5568
5991
|
_: 1
|
|
@@ -5585,7 +6008,7 @@ function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5585
6008
|
createTextVNode(" Determines if resources with null realm-id/name value should match all identity realms.", -1),
|
|
5586
6009
|
createElementVNode("br", null, null, -1),
|
|
5587
6010
|
createTextVNode(" If true, any identity realm can access resources with null realm-id/name values. ", -1)
|
|
5588
|
-
])], 8, _hoisted_5$
|
|
6011
|
+
])], 8, _hoisted_5$2)]),
|
|
5589
6012
|
_: 1
|
|
5590
6013
|
}, 8, ["modelValue", "onChange"])]),
|
|
5591
6014
|
_: 1
|
|
@@ -5608,7 +6031,7 @@ function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5608
6031
|
createTextVNode(" Specifies whether the master realm of an identity should match all realm-id/name attributes, including null.", -1),
|
|
5609
6032
|
createElementVNode("br", null, null, -1),
|
|
5610
6033
|
createTextVNode(" If true, the master realm can access any resource regardless of its realm value. ", -1)
|
|
5611
|
-
])], 8, _hoisted_6$
|
|
6034
|
+
])], 8, _hoisted_6$2)]),
|
|
5612
6035
|
_: 1
|
|
5613
6036
|
}, 8, ["modelValue", "onChange"])]),
|
|
5614
6037
|
_: 1
|
|
@@ -5617,7 +6040,7 @@ function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5617
6040
|
}, 8, ["validation"])
|
|
5618
6041
|
])]);
|
|
5619
6042
|
}
|
|
5620
|
-
var ARealmMatchPolicyForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ARealmMatchPolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
6043
|
+
var ARealmMatchPolicyForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ARealmMatchPolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$29]]);
|
|
5621
6044
|
//#endregion
|
|
5622
6045
|
//#region src/components/entities/policy/time/ATimePolicyForm.vue?vue&type=script&lang.ts
|
|
5623
6046
|
var ATimePolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -5692,20 +6115,20 @@ var ATimePolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
5692
6115
|
});
|
|
5693
6116
|
//#endregion
|
|
5694
6117
|
//#region src/components/entities/policy/time/ATimePolicyForm.vue
|
|
5695
|
-
const _hoisted_1$
|
|
5696
|
-
const _hoisted_2$
|
|
6118
|
+
const _hoisted_1$12 = { class: "row" };
|
|
6119
|
+
const _hoisted_2$8 = {
|
|
5697
6120
|
key: 0,
|
|
5698
6121
|
class: "col"
|
|
5699
6122
|
};
|
|
5700
|
-
const _hoisted_3$
|
|
6123
|
+
const _hoisted_3$6 = {
|
|
5701
6124
|
key: 1,
|
|
5702
6125
|
class: "col"
|
|
5703
6126
|
};
|
|
5704
|
-
const _hoisted_4$
|
|
6127
|
+
const _hoisted_4$4 = {
|
|
5705
6128
|
key: 2,
|
|
5706
6129
|
class: "col"
|
|
5707
6130
|
};
|
|
5708
|
-
function _sfc_render$
|
|
6131
|
+
function _sfc_render$28(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5709
6132
|
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
5710
6133
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
5711
6134
|
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
@@ -5763,8 +6186,8 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5763
6186
|
}, 8, ["validation-messages", "validation-severity"])]),
|
|
5764
6187
|
_: 1
|
|
5765
6188
|
}, 8, ["validation"]),
|
|
5766
|
-
createElementVNode("div", _hoisted_1$
|
|
5767
|
-
_ctx.displayIntervalForDayOfWeek ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
6189
|
+
createElementVNode("div", _hoisted_1$12, [
|
|
6190
|
+
_ctx.displayIntervalForDayOfWeek ? (openBlock(), createElementBlock("div", _hoisted_2$8, [createVNode(_component_IVuelidate, { validation: _ctx.vuelidate.day_of_week }, {
|
|
5768
6191
|
default: withCtx((props) => [createVNode(_component_VCFormGroup, {
|
|
5769
6192
|
"validation-messages": props.data,
|
|
5770
6193
|
"validation-severity": props.severity
|
|
@@ -5781,7 +6204,7 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5781
6204
|
}, 8, ["validation-messages", "validation-severity"])]),
|
|
5782
6205
|
_: 1
|
|
5783
6206
|
}, 8, ["validation"])])) : createCommentVNode("v-if", true),
|
|
5784
|
-
_ctx.displayIntervalForDayOfMonth ? (openBlock(), createElementBlock("div", _hoisted_3$
|
|
6207
|
+
_ctx.displayIntervalForDayOfMonth ? (openBlock(), createElementBlock("div", _hoisted_3$6, [createVNode(_component_IVuelidate, { validation: _ctx.vuelidate.day_of_month }, {
|
|
5785
6208
|
default: withCtx((props) => [createVNode(_component_VCFormGroup, {
|
|
5786
6209
|
"validation-messages": props.data,
|
|
5787
6210
|
"validation-severity": props.severity
|
|
@@ -5798,7 +6221,7 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5798
6221
|
}, 8, ["validation-messages", "validation-severity"])]),
|
|
5799
6222
|
_: 1
|
|
5800
6223
|
}, 8, ["validation"])])) : createCommentVNode("v-if", true),
|
|
5801
|
-
_ctx.displayIntervalForDayOfYear ? (openBlock(), createElementBlock("div", _hoisted_4$
|
|
6224
|
+
_ctx.displayIntervalForDayOfYear ? (openBlock(), createElementBlock("div", _hoisted_4$4, [createVNode(_component_IVuelidate, { validation: _ctx.vuelidate.day_of_year }, {
|
|
5802
6225
|
default: withCtx((props) => [createVNode(_component_VCFormGroup, {
|
|
5803
6226
|
"validation-messages": props.data,
|
|
5804
6227
|
"validation-severity": props.severity
|
|
@@ -5818,7 +6241,7 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5818
6241
|
])
|
|
5819
6242
|
]);
|
|
5820
6243
|
}
|
|
5821
|
-
var ATimePolicyForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ATimePolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
6244
|
+
var ATimePolicyForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ATimePolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$28]]);
|
|
5822
6245
|
//#endregion
|
|
5823
6246
|
//#region src/components/entities/policy/APolicy.ts
|
|
5824
6247
|
const APolicy = defineComponent({
|
|
@@ -5876,19 +6299,19 @@ var APolicyTypePicker_vue_vue_type_script_lang_default = defineComponent({
|
|
|
5876
6299
|
});
|
|
5877
6300
|
//#endregion
|
|
5878
6301
|
//#region src/components/entities/policy/APolicyTypePicker.vue
|
|
5879
|
-
const _hoisted_1$
|
|
5880
|
-
const _hoisted_2$
|
|
5881
|
-
const _hoisted_3$
|
|
5882
|
-
function _sfc_render$
|
|
5883
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
6302
|
+
const _hoisted_1$11 = { class: "d-flex flex-column gap-2" };
|
|
6303
|
+
const _hoisted_2$7 = { class: "d-flex flex-row gap-2 flex-wrap" };
|
|
6304
|
+
const _hoisted_3$5 = ["onClick"];
|
|
6305
|
+
function _sfc_render$27(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6306
|
+
return openBlock(), createElementBlock("div", _hoisted_1$11, [createElementVNode("div", null, [_cache[0] || (_cache[0] = createElementVNode("h6", null, "Type", -1)), createElementVNode("div", _hoisted_2$7, [(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.options, (item, key) => {
|
|
5884
6307
|
return openBlock(), createElementBlock("div", {
|
|
5885
6308
|
key,
|
|
5886
6309
|
class: normalizeClass([{ "active": item.id === _ctx.option }, "d-flex flex-column gap-1 text-center a-picker-item"]),
|
|
5887
6310
|
onClick: withModifiers(($event) => _ctx.pick(`${item.id}`), ["prevent"])
|
|
5888
|
-
}, [createElementVNode("div", null, toDisplayString(item.value), 1)], 10, _hoisted_3$
|
|
6311
|
+
}, [createElementVNode("div", null, toDisplayString(item.value), 1)], 10, _hoisted_3$5);
|
|
5889
6312
|
}), 128))])])]);
|
|
5890
6313
|
}
|
|
5891
|
-
var APolicyTypePicker_default = /* @__PURE__ */ _plugin_vue_export_helper_default(APolicyTypePicker_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
6314
|
+
var APolicyTypePicker_default = /* @__PURE__ */ _plugin_vue_export_helper_default(APolicyTypePicker_vue_vue_type_script_lang_default, [["render", _sfc_render$27], ["__scopeId", "data-v-51b5a9d2"]]);
|
|
5892
6315
|
//#endregion
|
|
5893
6316
|
//#region src/components/entities/policy/APolicyBasicForm.vue?vue&type=script&lang.ts
|
|
5894
6317
|
var APolicyBasicForm_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -5960,21 +6383,21 @@ var APolicyBasicForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
5960
6383
|
});
|
|
5961
6384
|
//#endregion
|
|
5962
6385
|
//#region src/components/entities/policy/APolicyBasicForm.vue
|
|
5963
|
-
const _hoisted_1$
|
|
5964
|
-
const _hoisted_2$
|
|
5965
|
-
const _hoisted_3$
|
|
5966
|
-
const _hoisted_4$
|
|
6386
|
+
const _hoisted_1$10 = { class: "row" };
|
|
6387
|
+
const _hoisted_2$6 = { class: "col" };
|
|
6388
|
+
const _hoisted_3$4 = ["for"];
|
|
6389
|
+
const _hoisted_4$3 = {
|
|
5967
6390
|
key: 0,
|
|
5968
6391
|
class: "col"
|
|
5969
6392
|
};
|
|
5970
|
-
function _sfc_render$
|
|
6393
|
+
function _sfc_render$26(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5971
6394
|
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
5972
6395
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
5973
6396
|
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
5974
6397
|
const _component_VCFormTextarea = resolveComponent("VCFormTextarea");
|
|
5975
6398
|
const _component_VCFormInputCheckbox = resolveComponent("VCFormInputCheckbox");
|
|
5976
6399
|
const _component_ARealmPicker = resolveComponent("ARealmPicker");
|
|
5977
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
6400
|
+
return openBlock(), createElementBlock("div", _hoisted_1$10, [createElementVNode("div", _hoisted_2$6, [
|
|
5978
6401
|
createVNode(_component_IVuelidate, { validation: _ctx.vuelidate.name }, {
|
|
5979
6402
|
default: withCtx((props) => [createVNode(_component_VCFormGroup, {
|
|
5980
6403
|
"validation-messages": props.data,
|
|
@@ -6033,14 +6456,14 @@ function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6033
6456
|
label: true,
|
|
6034
6457
|
onChange: _ctx.handleUpdated
|
|
6035
6458
|
}, {
|
|
6036
|
-
label: withCtx((iProps) => [createElementVNode("label", { for: iProps.id }, " Invert? ", 8, _hoisted_3$
|
|
6459
|
+
label: withCtx((iProps) => [createElementVNode("label", { for: iProps.id }, " Invert? ", 8, _hoisted_3$4)]),
|
|
6037
6460
|
_: 1
|
|
6038
6461
|
}, 8, ["modelValue", "onChange"])]),
|
|
6039
6462
|
_: 1
|
|
6040
6463
|
}, 8, ["validation-messages", "validation-severity"])]),
|
|
6041
6464
|
_: 1
|
|
6042
6465
|
}, 8, ["validation"])
|
|
6043
|
-
]), !_ctx.realmId && !_ctx.isEditing ? (openBlock(), createElementBlock("div", _hoisted_4$
|
|
6466
|
+
]), !_ctx.realmId && !_ctx.isEditing ? (openBlock(), createElementBlock("div", _hoisted_4$3, [createVNode(_component_IVuelidate, { validation: _ctx.vuelidate.invert }, {
|
|
6044
6467
|
default: withCtx((props) => [createVNode(_component_VCFormGroup, {
|
|
6045
6468
|
"validation-messages": props.data,
|
|
6046
6469
|
"validation-severity": props.severity
|
|
@@ -6063,7 +6486,7 @@ var APolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
6063
6486
|
components: {
|
|
6064
6487
|
AFormSubmit,
|
|
6065
6488
|
APolicyTypePicker: APolicyTypePicker_default,
|
|
6066
|
-
APolicyBasicForm: /* @__PURE__ */ _plugin_vue_export_helper_default(APolicyBasicForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
6489
|
+
APolicyBasicForm: /* @__PURE__ */ _plugin_vue_export_helper_default(APolicyBasicForm_vue_vue_type_script_lang_default, [["render", _sfc_render$26]])
|
|
6067
6490
|
},
|
|
6068
6491
|
props: {
|
|
6069
6492
|
entity: { type: Object },
|
|
@@ -6116,11 +6539,11 @@ var APolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
6116
6539
|
});
|
|
6117
6540
|
//#endregion
|
|
6118
6541
|
//#region src/components/entities/policy/APolicyForm.vue
|
|
6119
|
-
const _hoisted_1$
|
|
6120
|
-
function _sfc_render$
|
|
6542
|
+
const _hoisted_1$9 = { class: "d-flex flex-column" };
|
|
6543
|
+
function _sfc_render$25(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6121
6544
|
const _component_APolicyBasicForm = resolveComponent("APolicyBasicForm");
|
|
6122
6545
|
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
6123
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
6546
|
+
return openBlock(), createElementBlock("div", _hoisted_1$9, [
|
|
6124
6547
|
_cache[0] || (_cache[0] = createElementVNode("h6", null, "General", -1)),
|
|
6125
6548
|
createVNode(_component_APolicyBasicForm, { entity: _ctx.data }, null, 8, ["entity"]),
|
|
6126
6549
|
_ctx.typeComputed ? renderSlot(_ctx.$slots, "default", {
|
|
@@ -6143,28 +6566,46 @@ function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6143
6566
|
])])
|
|
6144
6567
|
]);
|
|
6145
6568
|
}
|
|
6146
|
-
var APolicyForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(APolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
6569
|
+
var APolicyForm_default = /* @__PURE__ */ _plugin_vue_export_helper_default(APolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$25]]);
|
|
6147
6570
|
//#endregion
|
|
6148
|
-
//#region src/components/entities/permission-client/APermissionClientAssignments.ts
|
|
6149
|
-
|
|
6571
|
+
//#region src/components/entities/permission-client/APermissionClientAssignments.vue?vue&type=script&lang.ts
|
|
6572
|
+
var APermissionClientAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
6573
|
+
components: {
|
|
6574
|
+
AClients,
|
|
6575
|
+
AClientPermissionAssignment: AClientPermissionAssignment_default
|
|
6576
|
+
},
|
|
6150
6577
|
props: { entityId: {
|
|
6151
6578
|
type: String,
|
|
6152
6579
|
required: true
|
|
6153
6580
|
} },
|
|
6154
6581
|
setup(props, { slots }) {
|
|
6155
|
-
return () =>
|
|
6156
|
-
[SlotName.ITEM_ACTIONS]: (slotProps) => h(AClientPermissionAssignment, {
|
|
6157
|
-
permissionId: props.entityId,
|
|
6158
|
-
clientId: slotProps.data.id,
|
|
6159
|
-
key: slotProps.data.id
|
|
6160
|
-
}),
|
|
6161
|
-
...slots
|
|
6162
|
-
});
|
|
6582
|
+
return { forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "itemActions"))) };
|
|
6163
6583
|
}
|
|
6164
6584
|
});
|
|
6165
6585
|
//#endregion
|
|
6166
|
-
//#region src/components/entities/permission-
|
|
6167
|
-
|
|
6586
|
+
//#region src/components/entities/permission-client/APermissionClientAssignments.vue
|
|
6587
|
+
function _sfc_render$24(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6588
|
+
const _component_AClientPermissionAssignment = resolveComponent("AClientPermissionAssignment");
|
|
6589
|
+
const _component_AClients = resolveComponent("AClients");
|
|
6590
|
+
return openBlock(), createBlock(_component_AClients, null, createSlots({
|
|
6591
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_AClientPermissionAssignment, {
|
|
6592
|
+
key: data.id,
|
|
6593
|
+
"permission-id": _ctx.entityId,
|
|
6594
|
+
"client-id": data.id
|
|
6595
|
+
}, null, 8, ["permission-id", "client-id"]))]),
|
|
6596
|
+
_: 2
|
|
6597
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
6598
|
+
return {
|
|
6599
|
+
name,
|
|
6600
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
6601
|
+
};
|
|
6602
|
+
})]), 1024);
|
|
6603
|
+
}
|
|
6604
|
+
var APermissionClientAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(APermissionClientAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$24]]);
|
|
6605
|
+
//#endregion
|
|
6606
|
+
//#region src/components/entities/permission-policy/APermissionPolicyAssignment.vue?vue&type=script&lang.ts
|
|
6607
|
+
var APermissionPolicyAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
6608
|
+
components: { AToggleButton: AToggleButton_default },
|
|
6168
6609
|
props: {
|
|
6169
6610
|
permissionId: {
|
|
6170
6611
|
type: String,
|
|
@@ -6180,6 +6621,10 @@ const APermissionPolicyAssignment = defineComponent({
|
|
|
6180
6621
|
const manager = defineEntityManager({
|
|
6181
6622
|
type: `${EntityType.PERMISSION_POLICY}`,
|
|
6182
6623
|
setup,
|
|
6624
|
+
query: () => ({ filters: {
|
|
6625
|
+
permission_id: props.permissionId,
|
|
6626
|
+
policy_id: props.policyId
|
|
6627
|
+
} }),
|
|
6183
6628
|
socket: { processEvent(event) {
|
|
6184
6629
|
return event.data.permission_id === props.permissionId && event.data.policy_id === props.policyId;
|
|
6185
6630
|
} }
|
|
@@ -6188,49 +6633,158 @@ const APermissionPolicyAssignment = defineComponent({
|
|
|
6188
6633
|
permission_id: props.permissionId,
|
|
6189
6634
|
policy_id: props.policyId
|
|
6190
6635
|
} } });
|
|
6191
|
-
|
|
6192
|
-
|
|
6193
|
-
|
|
6194
|
-
|
|
6195
|
-
|
|
6196
|
-
|
|
6197
|
-
|
|
6198
|
-
|
|
6199
|
-
|
|
6200
|
-
|
|
6201
|
-
}
|
|
6636
|
+
const handleChanged = (value) => {
|
|
6637
|
+
if (value) return manager.create({
|
|
6638
|
+
permission_id: props.permissionId,
|
|
6639
|
+
policy_id: props.policyId
|
|
6640
|
+
});
|
|
6641
|
+
return manager.delete();
|
|
6642
|
+
};
|
|
6643
|
+
return {
|
|
6644
|
+
manager,
|
|
6645
|
+
handleChanged
|
|
6646
|
+
};
|
|
6202
6647
|
}
|
|
6203
6648
|
});
|
|
6204
6649
|
//#endregion
|
|
6205
|
-
//#region src/components/entities/permission-policy/
|
|
6206
|
-
|
|
6650
|
+
//#region src/components/entities/permission-policy/APermissionPolicyAssignment.vue
|
|
6651
|
+
function _sfc_render$23(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6652
|
+
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
6653
|
+
return openBlock(), createBlock(_component_AToggleButton, {
|
|
6654
|
+
value: !!_ctx.manager.data.value,
|
|
6655
|
+
"is-busy": _ctx.manager.busy.value,
|
|
6656
|
+
onChanged: _ctx.handleChanged
|
|
6657
|
+
}, null, 8, [
|
|
6658
|
+
"value",
|
|
6659
|
+
"is-busy",
|
|
6660
|
+
"onChanged"
|
|
6661
|
+
]);
|
|
6662
|
+
}
|
|
6663
|
+
var APermissionPolicyAssignment_default = /* @__PURE__ */ _plugin_vue_export_helper_default(APermissionPolicyAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$23]]);
|
|
6664
|
+
//#endregion
|
|
6665
|
+
//#region src/components/entities/permission-policy/APermissionPolicyAssignments.vue?vue&type=script&lang.ts
|
|
6666
|
+
var APermissionPolicyAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
6667
|
+
components: {
|
|
6668
|
+
APolicies,
|
|
6669
|
+
APermissionPolicyAssignment: APermissionPolicyAssignment_default,
|
|
6670
|
+
APolicyInlineInfo: APolicyInlineInfo_default,
|
|
6671
|
+
APolicySummary: APolicySummary_default
|
|
6672
|
+
},
|
|
6207
6673
|
props: { entityId: {
|
|
6208
6674
|
type: String,
|
|
6209
6675
|
required: true
|
|
6210
6676
|
} },
|
|
6211
6677
|
setup(props, { slots }) {
|
|
6212
|
-
|
|
6213
|
-
|
|
6214
|
-
|
|
6215
|
-
|
|
6216
|
-
|
|
6217
|
-
|
|
6218
|
-
|
|
6678
|
+
const detailPolicy = ref(null);
|
|
6679
|
+
const handleKeydown = (e) => {
|
|
6680
|
+
if (e.key === "Escape" && detailPolicy.value) detailPolicy.value = null;
|
|
6681
|
+
};
|
|
6682
|
+
onMounted(() => {
|
|
6683
|
+
document.addEventListener("keydown", handleKeydown);
|
|
6684
|
+
});
|
|
6685
|
+
onUnmounted(() => {
|
|
6686
|
+
document.removeEventListener("keydown", handleKeydown);
|
|
6219
6687
|
});
|
|
6688
|
+
return {
|
|
6689
|
+
detailPolicy,
|
|
6690
|
+
forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "item")))
|
|
6691
|
+
};
|
|
6220
6692
|
}
|
|
6221
6693
|
});
|
|
6222
6694
|
//#endregion
|
|
6223
|
-
//#region src/components/entities/
|
|
6224
|
-
const
|
|
6695
|
+
//#region src/components/entities/permission-policy/APermissionPolicyAssignments.vue
|
|
6696
|
+
const _hoisted_1$8 = { class: "ms-auto" };
|
|
6697
|
+
const _hoisted_2$5 = ["aria-labelledby"];
|
|
6698
|
+
const _hoisted_3$3 = { class: "modal-content" };
|
|
6699
|
+
const _hoisted_4$2 = { class: "modal-header" };
|
|
6700
|
+
const _hoisted_5$1 = ["id"];
|
|
6701
|
+
const _hoisted_6$1 = { class: "modal-body" };
|
|
6702
|
+
const _hoisted_7$1 = { class: "modal-footer" };
|
|
6703
|
+
function _sfc_render$22(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6704
|
+
const _component_APolicyInlineInfo = resolveComponent("APolicyInlineInfo");
|
|
6705
|
+
const _component_APermissionPolicyAssignment = resolveComponent("APermissionPolicyAssignment");
|
|
6706
|
+
const _component_APolicies = resolveComponent("APolicies");
|
|
6707
|
+
const _component_APolicySummary = resolveComponent("APolicySummary");
|
|
6708
|
+
return openBlock(), createElementBlock("div", null, [createVNode(_component_APolicies, { query: { filters: { parent_id: null } } }, createSlots({
|
|
6709
|
+
item: withCtx(({ data }) => [
|
|
6710
|
+
createElementVNode("div", null, toDisplayString(data.name), 1),
|
|
6711
|
+
createVNode(_component_APolicyInlineInfo, {
|
|
6712
|
+
entity: data,
|
|
6713
|
+
onDetail: _cache[0] || (_cache[0] = ($event) => _ctx.detailPolicy = $event)
|
|
6714
|
+
}, null, 8, ["entity"]),
|
|
6715
|
+
createElementVNode("div", _hoisted_1$8, [(openBlock(), createBlock(_component_APermissionPolicyAssignment, {
|
|
6716
|
+
key: data.id,
|
|
6717
|
+
"permission-id": _ctx.entityId,
|
|
6718
|
+
"policy-id": data.id
|
|
6719
|
+
}, null, 8, ["permission-id", "policy-id"]))])
|
|
6720
|
+
]),
|
|
6721
|
+
_: 2
|
|
6722
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
6723
|
+
return {
|
|
6724
|
+
name,
|
|
6725
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
6726
|
+
};
|
|
6727
|
+
})]), 1024), _ctx.detailPolicy ? (openBlock(), createBlock(Teleport, {
|
|
6728
|
+
key: 0,
|
|
6729
|
+
to: "body"
|
|
6730
|
+
}, [createElementVNode("div", {
|
|
6731
|
+
class: "modal-backdrop fade show",
|
|
6732
|
+
onClick: _cache[1] || (_cache[1] = ($event) => _ctx.detailPolicy = null)
|
|
6733
|
+
}), createElementVNode("div", {
|
|
6734
|
+
class: "modal fade show d-block",
|
|
6735
|
+
tabindex: "-1",
|
|
6736
|
+
role: "dialog",
|
|
6737
|
+
"aria-modal": "true",
|
|
6738
|
+
"aria-labelledby": `policy-detail-modal-${_ctx.detailPolicy.id}`
|
|
6739
|
+
}, [createElementVNode("div", {
|
|
6740
|
+
class: "modal-dialog",
|
|
6741
|
+
role: "document",
|
|
6742
|
+
onClick: _cache[4] || (_cache[4] = withModifiers(() => {}, ["stop"]))
|
|
6743
|
+
}, [createElementVNode("div", _hoisted_3$3, [
|
|
6744
|
+
createElementVNode("div", _hoisted_4$2, [createElementVNode("h5", {
|
|
6745
|
+
id: `policy-detail-modal-${_ctx.detailPolicy.id}`,
|
|
6746
|
+
class: "modal-title"
|
|
6747
|
+
}, toDisplayString(_ctx.detailPolicy.name), 9, _hoisted_5$1), createElementVNode("button", {
|
|
6748
|
+
type: "button",
|
|
6749
|
+
class: "btn-close",
|
|
6750
|
+
"aria-label": "Close",
|
|
6751
|
+
onClick: _cache[2] || (_cache[2] = ($event) => _ctx.detailPolicy = null)
|
|
6752
|
+
})]),
|
|
6753
|
+
createElementVNode("div", _hoisted_6$1, [createVNode(_component_APolicySummary, { entity: _ctx.detailPolicy }, null, 8, ["entity"])]),
|
|
6754
|
+
createElementVNode("div", _hoisted_7$1, [createElementVNode("button", {
|
|
6755
|
+
type: "button",
|
|
6756
|
+
class: "btn btn-secondary btn-xs",
|
|
6757
|
+
onClick: _cache[3] || (_cache[3] = ($event) => _ctx.detailPolicy = null)
|
|
6758
|
+
}, " Close ")])
|
|
6759
|
+
])])], 8, _hoisted_2$5)])) : createCommentVNode("v-if", true)]);
|
|
6760
|
+
}
|
|
6761
|
+
var APermissionPolicyAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(APermissionPolicyAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$22]]);
|
|
6762
|
+
//#endregion
|
|
6763
|
+
//#region src/components/entities/robot-permission/ARobotPermissionAssignment.vue?vue&type=script&lang.ts
|
|
6764
|
+
var ARobotPermissionAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
6765
|
+
components: {
|
|
6766
|
+
AToggleButton: AToggleButton_default,
|
|
6767
|
+
APermissionPolicyBindingButton
|
|
6768
|
+
},
|
|
6225
6769
|
props: {
|
|
6226
|
-
robotId:
|
|
6227
|
-
|
|
6770
|
+
robotId: {
|
|
6771
|
+
type: String,
|
|
6772
|
+
required: true
|
|
6773
|
+
},
|
|
6774
|
+
permissionId: {
|
|
6775
|
+
type: String,
|
|
6776
|
+
required: true
|
|
6777
|
+
}
|
|
6228
6778
|
},
|
|
6229
6779
|
emits: defineEntityVEmitOptions(),
|
|
6230
6780
|
async setup(props, setup) {
|
|
6231
6781
|
const manager = defineEntityManager({
|
|
6232
6782
|
type: `${EntityType.ROBOT_PERMISSION}`,
|
|
6233
6783
|
setup,
|
|
6784
|
+
query: () => ({ filters: {
|
|
6785
|
+
robot_id: props.robotId,
|
|
6786
|
+
permission_id: props.permissionId
|
|
6787
|
+
} }),
|
|
6234
6788
|
socket: { processEvent(event) {
|
|
6235
6789
|
return event.data.permission_id === props.permissionId && event.data.robot_id === props.robotId;
|
|
6236
6790
|
} }
|
|
@@ -6239,31 +6793,51 @@ const ARobotPermissionAssignment = defineComponent({
|
|
|
6239
6793
|
robot_id: props.robotId,
|
|
6240
6794
|
permission_id: props.permissionId
|
|
6241
6795
|
} } });
|
|
6242
|
-
|
|
6243
|
-
|
|
6244
|
-
|
|
6245
|
-
|
|
6246
|
-
|
|
6247
|
-
|
|
6248
|
-
|
|
6249
|
-
|
|
6250
|
-
|
|
6251
|
-
|
|
6252
|
-
|
|
6253
|
-
|
|
6254
|
-
|
|
6255
|
-
|
|
6256
|
-
|
|
6257
|
-
key: manager.data.value.id,
|
|
6258
|
-
onUpdated: (entity) => {
|
|
6259
|
-
manager.updated(entity);
|
|
6260
|
-
}
|
|
6261
|
-
}));
|
|
6262
|
-
return h("span", { class: "d-flex gap-1" }, children);
|
|
6796
|
+
const handleChanged = (value) => {
|
|
6797
|
+
if (value) return manager.create({
|
|
6798
|
+
robot_id: props.robotId,
|
|
6799
|
+
permission_id: props.permissionId
|
|
6800
|
+
});
|
|
6801
|
+
return manager.delete();
|
|
6802
|
+
};
|
|
6803
|
+
const handleUpdated = (entity) => {
|
|
6804
|
+
manager.updated(entity);
|
|
6805
|
+
};
|
|
6806
|
+
return {
|
|
6807
|
+
manager,
|
|
6808
|
+
handleChanged,
|
|
6809
|
+
handleUpdated,
|
|
6810
|
+
EntityType
|
|
6263
6811
|
};
|
|
6264
6812
|
}
|
|
6265
6813
|
});
|
|
6266
6814
|
//#endregion
|
|
6815
|
+
//#region src/components/entities/robot-permission/ARobotPermissionAssignment.vue
|
|
6816
|
+
const _hoisted_1$7 = { class: "d-flex gap-1" };
|
|
6817
|
+
function _sfc_render$21(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6818
|
+
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
6819
|
+
const _component_APermissionPolicyBindingButton = resolveComponent("APermissionPolicyBindingButton");
|
|
6820
|
+
return openBlock(), createElementBlock("span", _hoisted_1$7, [createVNode(_component_AToggleButton, {
|
|
6821
|
+
value: !!_ctx.manager.data.value,
|
|
6822
|
+
"is-busy": _ctx.manager.busy.value,
|
|
6823
|
+
onChanged: _ctx.handleChanged
|
|
6824
|
+
}, null, 8, [
|
|
6825
|
+
"value",
|
|
6826
|
+
"is-busy",
|
|
6827
|
+
"onChanged"
|
|
6828
|
+
]), _ctx.manager.data.value ? (openBlock(), createBlock(_component_APermissionPolicyBindingButton, {
|
|
6829
|
+
key: _ctx.manager.data.value.id,
|
|
6830
|
+
"entity-type": _ctx.EntityType.ROBOT_PERMISSION,
|
|
6831
|
+
entity: _ctx.manager.data.value,
|
|
6832
|
+
onUpdated: _ctx.handleUpdated
|
|
6833
|
+
}, null, 8, [
|
|
6834
|
+
"entity-type",
|
|
6835
|
+
"entity",
|
|
6836
|
+
"onUpdated"
|
|
6837
|
+
])) : createCommentVNode("v-if", true)]);
|
|
6838
|
+
}
|
|
6839
|
+
var ARobotPermissionAssignment_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ARobotPermissionAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$21]]);
|
|
6840
|
+
//#endregion
|
|
6267
6841
|
//#region src/components/entities/robot/ARobot.ts
|
|
6268
6842
|
const ARobot = defineComponent({
|
|
6269
6843
|
props: defineEntityVProps(),
|
|
@@ -6311,7 +6885,7 @@ const ARobotForm = defineComponent({
|
|
|
6311
6885
|
});
|
|
6312
6886
|
const $v = useVuelidate({
|
|
6313
6887
|
name: {
|
|
6314
|
-
[
|
|
6888
|
+
["alphaUpperNumHyphenUnderscoreDot"]: VuelidateCustomRule["alphaUpperNumHyphenUnderscoreDot"],
|
|
6315
6889
|
minLength: minLength(3),
|
|
6316
6890
|
maxLength: maxLength(128)
|
|
6317
6891
|
},
|
|
@@ -6360,20 +6934,20 @@ const ARobotForm = defineComponent({
|
|
|
6360
6934
|
};
|
|
6361
6935
|
const translationsValidation = useTranslationsForNestedValidation($v.value);
|
|
6362
6936
|
const translationsSubmit = createFormSubmitTranslations();
|
|
6363
|
-
const translationsDefault = useTranslationsForGroup(
|
|
6364
|
-
{ key:
|
|
6365
|
-
{ key:
|
|
6366
|
-
{ key:
|
|
6367
|
-
{ key:
|
|
6368
|
-
{ key:
|
|
6369
|
-
{ key:
|
|
6937
|
+
const translationsDefault = useTranslationsForGroup("default", [
|
|
6938
|
+
{ key: "generate" },
|
|
6939
|
+
{ key: "hashed" },
|
|
6940
|
+
{ key: "name" },
|
|
6941
|
+
{ key: "displayName" },
|
|
6942
|
+
{ key: "description" },
|
|
6943
|
+
{ key: "secret" }
|
|
6370
6944
|
]);
|
|
6371
6945
|
const render = () => {
|
|
6372
6946
|
const name = buildFormGroup({
|
|
6373
6947
|
validationMessages: translationsValidation.name.value,
|
|
6374
6948
|
validationSeverity: getVuelidateSeverity($v.value.name),
|
|
6375
6949
|
label: true,
|
|
6376
|
-
labelContent: translationsDefault[
|
|
6950
|
+
labelContent: translationsDefault["name"].value,
|
|
6377
6951
|
content: buildFormInput({
|
|
6378
6952
|
value: $v.value.name.$model,
|
|
6379
6953
|
onChange(input) {
|
|
@@ -6386,7 +6960,7 @@ const ARobotForm = defineComponent({
|
|
|
6386
6960
|
validationMessages: translationsValidation.display_name.value,
|
|
6387
6961
|
validationSeverity: getVuelidateSeverity($v.value.display_name),
|
|
6388
6962
|
label: true,
|
|
6389
|
-
labelContent: translationsDefault[
|
|
6963
|
+
labelContent: translationsDefault["displayName"].value,
|
|
6390
6964
|
content: buildFormInput({
|
|
6391
6965
|
value: $v.value.display_name.$model,
|
|
6392
6966
|
onChange(input) {
|
|
@@ -6407,8 +6981,8 @@ const ARobotForm = defineComponent({
|
|
|
6407
6981
|
validationMessages: translationsValidation.secret.value,
|
|
6408
6982
|
validationSeverity: getVuelidateSeverity($v.value.secret),
|
|
6409
6983
|
label: true,
|
|
6410
|
-
labelContent: [translationsDefault[
|
|
6411
|
-
translationsDefault[
|
|
6984
|
+
labelContent: [translationsDefault["secret"].value, isSecretHashed.value ? h("span", { class: "text-danger font-weight-bold ps-1" }, [
|
|
6985
|
+
translationsDefault["hashed"].value,
|
|
6412
6986
|
" ",
|
|
6413
6987
|
h("i", { class: "fa fa-exclamation-triangle ps-1" })
|
|
6414
6988
|
]) : ""],
|
|
@@ -6428,7 +7002,7 @@ const ARobotForm = defineComponent({
|
|
|
6428
7002
|
}, [
|
|
6429
7003
|
h("i", { class: "fa fa-wrench" }),
|
|
6430
7004
|
" ",
|
|
6431
|
-
translationsDefault[
|
|
7005
|
+
translationsDefault["generate"].value
|
|
6432
7006
|
])]);
|
|
6433
7007
|
const submitForm = buildFormSubmitWithTranslations({
|
|
6434
7008
|
busy: busy.value,
|
|
@@ -6474,48 +7048,78 @@ const ARobots = defineComponent({
|
|
|
6474
7048
|
props,
|
|
6475
7049
|
setup: ctx
|
|
6476
7050
|
});
|
|
6477
|
-
const translationName = useTranslation({
|
|
6478
|
-
group: TranslatorTranslationGroup.VUECS,
|
|
6479
|
-
key: TranslatorTranslationDefaultKey.ROBOTS
|
|
6480
|
-
});
|
|
6481
7051
|
const translation = useTranslation({
|
|
6482
|
-
group:
|
|
6483
|
-
key:
|
|
6484
|
-
data: { name:
|
|
7052
|
+
group: "vuecs",
|
|
7053
|
+
key: "noMore",
|
|
7054
|
+
data: { name: useTranslation({
|
|
7055
|
+
group: "vuecs",
|
|
7056
|
+
key: "robots"
|
|
7057
|
+
}) }
|
|
6485
7058
|
});
|
|
6486
7059
|
return () => render({ noMore: { content: translation.value } });
|
|
6487
7060
|
}
|
|
6488
7061
|
});
|
|
6489
7062
|
//#endregion
|
|
6490
|
-
//#region src/components/entities/permission-robot/APermissionRobotAssignments.ts
|
|
6491
|
-
|
|
7063
|
+
//#region src/components/entities/permission-robot/APermissionRobotAssignments.vue?vue&type=script&lang.ts
|
|
7064
|
+
var APermissionRobotAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
7065
|
+
components: {
|
|
7066
|
+
ARobots,
|
|
7067
|
+
ARobotPermissionAssignment: ARobotPermissionAssignment_default
|
|
7068
|
+
},
|
|
6492
7069
|
props: { entityId: {
|
|
6493
7070
|
type: String,
|
|
6494
7071
|
required: true
|
|
6495
7072
|
} },
|
|
6496
7073
|
setup(props, { slots }) {
|
|
6497
|
-
return () =>
|
|
6498
|
-
[SlotName.ITEM_ACTIONS]: (slotProps) => h(ARobotPermissionAssignment, {
|
|
6499
|
-
permissionId: props.entityId,
|
|
6500
|
-
robotId: slotProps.data.id,
|
|
6501
|
-
key: slotProps.data.id
|
|
6502
|
-
}),
|
|
6503
|
-
...slots
|
|
6504
|
-
});
|
|
7074
|
+
return { forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "itemActions"))) };
|
|
6505
7075
|
}
|
|
6506
7076
|
});
|
|
6507
7077
|
//#endregion
|
|
6508
|
-
//#region src/components/entities/
|
|
6509
|
-
|
|
7078
|
+
//#region src/components/entities/permission-robot/APermissionRobotAssignments.vue
|
|
7079
|
+
function _sfc_render$20(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7080
|
+
const _component_ARobotPermissionAssignment = resolveComponent("ARobotPermissionAssignment");
|
|
7081
|
+
const _component_ARobots = resolveComponent("ARobots");
|
|
7082
|
+
return openBlock(), createBlock(_component_ARobots, null, createSlots({
|
|
7083
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_ARobotPermissionAssignment, {
|
|
7084
|
+
key: data.id,
|
|
7085
|
+
"permission-id": _ctx.entityId,
|
|
7086
|
+
"robot-id": data.id
|
|
7087
|
+
}, null, 8, ["permission-id", "robot-id"]))]),
|
|
7088
|
+
_: 2
|
|
7089
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
7090
|
+
return {
|
|
7091
|
+
name,
|
|
7092
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
7093
|
+
};
|
|
7094
|
+
})]), 1024);
|
|
7095
|
+
}
|
|
7096
|
+
var APermissionRobotAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(APermissionRobotAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$20]]);
|
|
7097
|
+
//#endregion
|
|
7098
|
+
//#region src/components/entities/role-permission/ARolePermissionAssignment.vue?vue&type=script&lang.ts
|
|
7099
|
+
var ARolePermissionAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
7100
|
+
components: {
|
|
7101
|
+
AToggleButton: AToggleButton_default,
|
|
7102
|
+
APermissionPolicyBindingButton
|
|
7103
|
+
},
|
|
6510
7104
|
props: {
|
|
6511
|
-
roleId:
|
|
6512
|
-
|
|
7105
|
+
roleId: {
|
|
7106
|
+
type: String,
|
|
7107
|
+
required: true
|
|
7108
|
+
},
|
|
7109
|
+
permissionId: {
|
|
7110
|
+
type: String,
|
|
7111
|
+
required: true
|
|
7112
|
+
}
|
|
6513
7113
|
},
|
|
6514
7114
|
emits: defineEntityVEmitOptions(),
|
|
6515
7115
|
async setup(props, setup) {
|
|
6516
7116
|
const manager = defineEntityManager({
|
|
6517
7117
|
type: `${EntityType.ROLE_PERMISSION}`,
|
|
6518
7118
|
setup,
|
|
7119
|
+
query: () => ({ filters: {
|
|
7120
|
+
role_id: props.roleId,
|
|
7121
|
+
permission_id: props.permissionId
|
|
7122
|
+
} }),
|
|
6519
7123
|
socket: { processEvent(event) {
|
|
6520
7124
|
return event.data.role_id === props.roleId && event.data.permission_id === props.permissionId;
|
|
6521
7125
|
} }
|
|
@@ -6524,78 +7128,146 @@ const ARolePermissionAssignment = defineComponent({
|
|
|
6524
7128
|
role_id: props.roleId,
|
|
6525
7129
|
permission_id: props.permissionId
|
|
6526
7130
|
} } });
|
|
6527
|
-
|
|
6528
|
-
|
|
6529
|
-
|
|
6530
|
-
|
|
6531
|
-
|
|
6532
|
-
|
|
6533
|
-
|
|
6534
|
-
|
|
6535
|
-
|
|
6536
|
-
|
|
6537
|
-
|
|
6538
|
-
|
|
6539
|
-
|
|
6540
|
-
|
|
6541
|
-
|
|
6542
|
-
key: manager.data.value.id,
|
|
6543
|
-
onUpdated: (entity) => {
|
|
6544
|
-
manager.updated(entity);
|
|
6545
|
-
}
|
|
6546
|
-
}));
|
|
6547
|
-
return h("span", { class: "d-flex gap-1" }, children);
|
|
7131
|
+
const handleChanged = (value) => {
|
|
7132
|
+
if (value) return manager.create({
|
|
7133
|
+
role_id: props.roleId,
|
|
7134
|
+
permission_id: props.permissionId
|
|
7135
|
+
});
|
|
7136
|
+
return manager.delete();
|
|
7137
|
+
};
|
|
7138
|
+
const handleUpdated = (entity) => {
|
|
7139
|
+
manager.updated(entity);
|
|
7140
|
+
};
|
|
7141
|
+
return {
|
|
7142
|
+
manager,
|
|
7143
|
+
handleChanged,
|
|
7144
|
+
handleUpdated,
|
|
7145
|
+
EntityType
|
|
6548
7146
|
};
|
|
6549
7147
|
}
|
|
6550
7148
|
});
|
|
6551
7149
|
//#endregion
|
|
6552
|
-
//#region src/components/entities/role-permission/
|
|
6553
|
-
const
|
|
7150
|
+
//#region src/components/entities/role-permission/ARolePermissionAssignment.vue
|
|
7151
|
+
const _hoisted_1$6 = { class: "d-flex gap-1" };
|
|
7152
|
+
function _sfc_render$19(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7153
|
+
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
7154
|
+
const _component_APermissionPolicyBindingButton = resolveComponent("APermissionPolicyBindingButton");
|
|
7155
|
+
return openBlock(), createElementBlock("span", _hoisted_1$6, [createVNode(_component_AToggleButton, {
|
|
7156
|
+
value: !!_ctx.manager.data.value,
|
|
7157
|
+
"is-busy": _ctx.manager.busy.value,
|
|
7158
|
+
onChanged: _ctx.handleChanged
|
|
7159
|
+
}, null, 8, [
|
|
7160
|
+
"value",
|
|
7161
|
+
"is-busy",
|
|
7162
|
+
"onChanged"
|
|
7163
|
+
]), _ctx.manager.data.value ? (openBlock(), createBlock(_component_APermissionPolicyBindingButton, {
|
|
7164
|
+
key: _ctx.manager.data.value.id,
|
|
7165
|
+
"entity-type": _ctx.EntityType.ROLE_PERMISSION,
|
|
7166
|
+
entity: _ctx.manager.data.value,
|
|
7167
|
+
onUpdated: _ctx.handleUpdated
|
|
7168
|
+
}, null, 8, [
|
|
7169
|
+
"entity-type",
|
|
7170
|
+
"entity",
|
|
7171
|
+
"onUpdated"
|
|
7172
|
+
])) : createCommentVNode("v-if", true)]);
|
|
7173
|
+
}
|
|
7174
|
+
var ARolePermissionAssignment_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ARolePermissionAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$19]]);
|
|
7175
|
+
//#endregion
|
|
7176
|
+
//#region src/components/entities/role-permission/ARolePermissionAssignments.vue?vue&type=script&lang.ts
|
|
7177
|
+
var ARolePermissionAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
7178
|
+
components: {
|
|
7179
|
+
APermissions,
|
|
7180
|
+
ARolePermissionAssignment: ARolePermissionAssignment_default
|
|
7181
|
+
},
|
|
6554
7182
|
props: { entityId: {
|
|
6555
7183
|
type: String,
|
|
6556
7184
|
required: true
|
|
6557
7185
|
} },
|
|
6558
7186
|
setup(props, { slots }) {
|
|
6559
|
-
return () =>
|
|
6560
|
-
[SlotName.ITEM_ACTIONS]: (slotProps) => h(ARolePermissionAssignment, {
|
|
6561
|
-
roleId: props.entityId,
|
|
6562
|
-
permissionId: slotProps.data.id,
|
|
6563
|
-
key: slotProps.data.id
|
|
6564
|
-
}),
|
|
6565
|
-
...slots
|
|
6566
|
-
});
|
|
7187
|
+
return { forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "itemActions"))) };
|
|
6567
7188
|
}
|
|
6568
7189
|
});
|
|
6569
7190
|
//#endregion
|
|
6570
|
-
//#region src/components/entities/permission
|
|
6571
|
-
|
|
7191
|
+
//#region src/components/entities/role-permission/ARolePermissionAssignments.vue
|
|
7192
|
+
function _sfc_render$18(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7193
|
+
const _component_ARolePermissionAssignment = resolveComponent("ARolePermissionAssignment");
|
|
7194
|
+
const _component_APermissions = resolveComponent("APermissions");
|
|
7195
|
+
return openBlock(), createBlock(_component_APermissions, null, createSlots({
|
|
7196
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_ARolePermissionAssignment, {
|
|
7197
|
+
key: data.id,
|
|
7198
|
+
"role-id": _ctx.entityId,
|
|
7199
|
+
"permission-id": data.id
|
|
7200
|
+
}, null, 8, ["role-id", "permission-id"]))]),
|
|
7201
|
+
_: 2
|
|
7202
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
7203
|
+
return {
|
|
7204
|
+
name,
|
|
7205
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
7206
|
+
};
|
|
7207
|
+
})]), 1024);
|
|
7208
|
+
}
|
|
7209
|
+
var ARolePermissionAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ARolePermissionAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$18]]);
|
|
7210
|
+
//#endregion
|
|
7211
|
+
//#region src/components/entities/permission-role/APermissionRoleAssignments.vue?vue&type=script&lang.ts
|
|
7212
|
+
var APermissionRoleAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
7213
|
+
components: {
|
|
7214
|
+
ARoles,
|
|
7215
|
+
ARolePermissionAssignment: ARolePermissionAssignment_default
|
|
7216
|
+
},
|
|
6572
7217
|
props: { entityId: {
|
|
6573
7218
|
type: String,
|
|
6574
7219
|
required: true
|
|
6575
7220
|
} },
|
|
6576
7221
|
setup(props, { slots }) {
|
|
6577
|
-
return () =>
|
|
6578
|
-
[SlotName.ITEM_ACTIONS]: (slotProps) => h(ARolePermissionAssignment, {
|
|
6579
|
-
permissionId: props.entityId,
|
|
6580
|
-
roleId: slotProps.data.id,
|
|
6581
|
-
key: slotProps.data.id
|
|
6582
|
-
}),
|
|
6583
|
-
...slots
|
|
6584
|
-
});
|
|
7222
|
+
return { forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "itemActions"))) };
|
|
6585
7223
|
}
|
|
6586
7224
|
});
|
|
6587
7225
|
//#endregion
|
|
6588
|
-
//#region src/components/entities/
|
|
6589
|
-
|
|
7226
|
+
//#region src/components/entities/permission-role/APermissionRoleAssignments.vue
|
|
7227
|
+
function _sfc_render$17(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7228
|
+
const _component_ARolePermissionAssignment = resolveComponent("ARolePermissionAssignment");
|
|
7229
|
+
const _component_ARoles = resolveComponent("ARoles");
|
|
7230
|
+
return openBlock(), createBlock(_component_ARoles, null, createSlots({
|
|
7231
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_ARolePermissionAssignment, {
|
|
7232
|
+
key: data.id,
|
|
7233
|
+
"permission-id": _ctx.entityId,
|
|
7234
|
+
"role-id": data.id
|
|
7235
|
+
}, null, 8, ["permission-id", "role-id"]))]),
|
|
7236
|
+
_: 2
|
|
7237
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
7238
|
+
return {
|
|
7239
|
+
name,
|
|
7240
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
7241
|
+
};
|
|
7242
|
+
})]), 1024);
|
|
7243
|
+
}
|
|
7244
|
+
var APermissionRoleAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(APermissionRoleAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$17]]);
|
|
7245
|
+
//#endregion
|
|
7246
|
+
//#region src/components/entities/user-permission/AUserPermissionAssignment.vue?vue&type=script&lang.ts
|
|
7247
|
+
var AUserPermissionAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
7248
|
+
components: {
|
|
7249
|
+
AToggleButton: AToggleButton_default,
|
|
7250
|
+
APermissionPolicyBindingButton
|
|
7251
|
+
},
|
|
6590
7252
|
props: {
|
|
6591
|
-
userId:
|
|
6592
|
-
|
|
7253
|
+
userId: {
|
|
7254
|
+
type: String,
|
|
7255
|
+
required: true
|
|
7256
|
+
},
|
|
7257
|
+
permissionId: {
|
|
7258
|
+
type: String,
|
|
7259
|
+
required: true
|
|
7260
|
+
}
|
|
6593
7261
|
},
|
|
6594
7262
|
emits: defineEntityVEmitOptions(),
|
|
6595
7263
|
async setup(props, setup) {
|
|
6596
7264
|
const manager = defineEntityManager({
|
|
6597
7265
|
type: `${EntityType.USER_PERMISSION}`,
|
|
6598
7266
|
setup,
|
|
7267
|
+
query: () => ({ filters: {
|
|
7268
|
+
user_id: props.userId,
|
|
7269
|
+
permission_id: props.permissionId
|
|
7270
|
+
} }),
|
|
6599
7271
|
socket: { processEvent(event) {
|
|
6600
7272
|
return event.data.permission_id === props.permissionId && event.data.user_id === props.userId;
|
|
6601
7273
|
} }
|
|
@@ -6604,49 +7276,86 @@ const AUserPermissionAssignment = defineComponent({
|
|
|
6604
7276
|
user_id: props.userId,
|
|
6605
7277
|
permission_id: props.permissionId
|
|
6606
7278
|
} } });
|
|
6607
|
-
|
|
6608
|
-
|
|
6609
|
-
|
|
6610
|
-
|
|
6611
|
-
|
|
6612
|
-
|
|
6613
|
-
|
|
6614
|
-
|
|
6615
|
-
|
|
6616
|
-
|
|
6617
|
-
|
|
6618
|
-
|
|
6619
|
-
|
|
6620
|
-
|
|
6621
|
-
|
|
6622
|
-
key: manager.data.value.id,
|
|
6623
|
-
onUpdated: (entity) => {
|
|
6624
|
-
manager.updated(entity);
|
|
6625
|
-
}
|
|
6626
|
-
}));
|
|
6627
|
-
return h("span", { class: "d-flex gap-1" }, children);
|
|
7279
|
+
const handleChanged = (value) => {
|
|
7280
|
+
if (value) return manager.create({
|
|
7281
|
+
user_id: props.userId,
|
|
7282
|
+
permission_id: props.permissionId
|
|
7283
|
+
});
|
|
7284
|
+
return manager.delete();
|
|
7285
|
+
};
|
|
7286
|
+
const handleUpdated = (entity) => {
|
|
7287
|
+
manager.updated(entity);
|
|
7288
|
+
};
|
|
7289
|
+
return {
|
|
7290
|
+
manager,
|
|
7291
|
+
handleChanged,
|
|
7292
|
+
handleUpdated,
|
|
7293
|
+
EntityType
|
|
6628
7294
|
};
|
|
6629
7295
|
}
|
|
6630
7296
|
});
|
|
6631
7297
|
//#endregion
|
|
6632
|
-
//#region src/components/entities/user-permission/
|
|
6633
|
-
const
|
|
7298
|
+
//#region src/components/entities/user-permission/AUserPermissionAssignment.vue
|
|
7299
|
+
const _hoisted_1$5 = { class: "d-flex gap-1" };
|
|
7300
|
+
function _sfc_render$16(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7301
|
+
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
7302
|
+
const _component_APermissionPolicyBindingButton = resolveComponent("APermissionPolicyBindingButton");
|
|
7303
|
+
return openBlock(), createElementBlock("span", _hoisted_1$5, [createVNode(_component_AToggleButton, {
|
|
7304
|
+
value: !!_ctx.manager.data.value,
|
|
7305
|
+
"is-busy": _ctx.manager.busy.value,
|
|
7306
|
+
onChanged: _ctx.handleChanged
|
|
7307
|
+
}, null, 8, [
|
|
7308
|
+
"value",
|
|
7309
|
+
"is-busy",
|
|
7310
|
+
"onChanged"
|
|
7311
|
+
]), _ctx.manager.data.value ? (openBlock(), createBlock(_component_APermissionPolicyBindingButton, {
|
|
7312
|
+
key: _ctx.manager.data.value.id,
|
|
7313
|
+
"entity-type": _ctx.EntityType.USER_PERMISSION,
|
|
7314
|
+
entity: _ctx.manager.data.value,
|
|
7315
|
+
onUpdated: _ctx.handleUpdated
|
|
7316
|
+
}, null, 8, [
|
|
7317
|
+
"entity-type",
|
|
7318
|
+
"entity",
|
|
7319
|
+
"onUpdated"
|
|
7320
|
+
])) : createCommentVNode("v-if", true)]);
|
|
7321
|
+
}
|
|
7322
|
+
var AUserPermissionAssignment_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AUserPermissionAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$16]]);
|
|
7323
|
+
//#endregion
|
|
7324
|
+
//#region src/components/entities/user-permission/AUserPermissionAssignments.vue?vue&type=script&lang.ts
|
|
7325
|
+
var AUserPermissionAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
7326
|
+
components: {
|
|
7327
|
+
APermissions,
|
|
7328
|
+
AUserPermissionAssignment: AUserPermissionAssignment_default
|
|
7329
|
+
},
|
|
6634
7330
|
props: { entityId: {
|
|
6635
7331
|
type: String,
|
|
6636
7332
|
required: true
|
|
6637
7333
|
} },
|
|
6638
7334
|
setup(props, { slots }) {
|
|
6639
|
-
return () =>
|
|
6640
|
-
[SlotName.ITEM_ACTIONS]: (slotProps) => h(AUserPermissionAssignment, {
|
|
6641
|
-
userId: props.entityId,
|
|
6642
|
-
permissionId: slotProps.data.id,
|
|
6643
|
-
key: slotProps.data.id
|
|
6644
|
-
}),
|
|
6645
|
-
...slots
|
|
6646
|
-
});
|
|
7335
|
+
return { forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "itemActions"))) };
|
|
6647
7336
|
}
|
|
6648
7337
|
});
|
|
6649
7338
|
//#endregion
|
|
7339
|
+
//#region src/components/entities/user-permission/AUserPermissionAssignments.vue
|
|
7340
|
+
function _sfc_render$15(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7341
|
+
const _component_AUserPermissionAssignment = resolveComponent("AUserPermissionAssignment");
|
|
7342
|
+
const _component_APermissions = resolveComponent("APermissions");
|
|
7343
|
+
return openBlock(), createBlock(_component_APermissions, null, createSlots({
|
|
7344
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_AUserPermissionAssignment, {
|
|
7345
|
+
key: data.id,
|
|
7346
|
+
"user-id": _ctx.entityId,
|
|
7347
|
+
"permission-id": data.id
|
|
7348
|
+
}, null, 8, ["user-id", "permission-id"]))]),
|
|
7349
|
+
_: 2
|
|
7350
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
7351
|
+
return {
|
|
7352
|
+
name,
|
|
7353
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
7354
|
+
};
|
|
7355
|
+
})]), 1024);
|
|
7356
|
+
}
|
|
7357
|
+
var AUserPermissionAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AUserPermissionAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$15]]);
|
|
7358
|
+
//#endregion
|
|
6650
7359
|
//#region src/components/entities/user/AUser.ts
|
|
6651
7360
|
const AUser = defineComponent({
|
|
6652
7361
|
props: defineEntityVProps(),
|
|
@@ -6697,7 +7406,7 @@ const AUserForm = defineComponent({
|
|
|
6697
7406
|
const $v = useVuelidate({
|
|
6698
7407
|
active: {},
|
|
6699
7408
|
name: {
|
|
6700
|
-
[
|
|
7409
|
+
["alphaUpperNumHyphenUnderscoreDot"]: VuelidateCustomRule["alphaUpperNumHyphenUnderscoreDot"],
|
|
6701
7410
|
required,
|
|
6702
7411
|
minLength: minLength(3),
|
|
6703
7412
|
maxLength: maxLength(128)
|
|
@@ -6741,22 +7450,22 @@ const AUserForm = defineComponent({
|
|
|
6741
7450
|
};
|
|
6742
7451
|
const translationsValidation = useTranslationsForNestedValidation($v.value);
|
|
6743
7452
|
const translationsSubmit = createFormSubmitTranslations();
|
|
6744
|
-
const translationsDefault = useTranslationsForGroup(
|
|
6745
|
-
{ key:
|
|
6746
|
-
{ key:
|
|
6747
|
-
{ key:
|
|
6748
|
-
{ key:
|
|
6749
|
-
{ key:
|
|
6750
|
-
{ key:
|
|
6751
|
-
{ key:
|
|
6752
|
-
{ key:
|
|
7453
|
+
const translationsDefault = useTranslationsForGroup("default", [
|
|
7454
|
+
{ key: "active" },
|
|
7455
|
+
{ key: "inactive" },
|
|
7456
|
+
{ key: "displayName" },
|
|
7457
|
+
{ key: "email" },
|
|
7458
|
+
{ key: "locked" },
|
|
7459
|
+
{ key: "notLocked" },
|
|
7460
|
+
{ key: "name" },
|
|
7461
|
+
{ key: "description" }
|
|
6753
7462
|
]);
|
|
6754
7463
|
const render = () => {
|
|
6755
7464
|
const name = buildFormGroup({
|
|
6756
7465
|
validationMessages: translationsValidation.name.value,
|
|
6757
7466
|
validationSeverity: getVuelidateSeverity($v.value.name),
|
|
6758
7467
|
label: true,
|
|
6759
|
-
labelContent: translationsDefault[
|
|
7468
|
+
labelContent: translationsDefault["name"].value,
|
|
6760
7469
|
content: buildFormInput({
|
|
6761
7470
|
value: $v.value.name.$model,
|
|
6762
7471
|
onChange(input) {
|
|
@@ -6770,7 +7479,7 @@ const AUserForm = defineComponent({
|
|
|
6770
7479
|
validationMessages: translationsValidation.display_name.value,
|
|
6771
7480
|
validationSeverity: getVuelidateSeverity($v.value.display_name),
|
|
6772
7481
|
label: true,
|
|
6773
|
-
labelContent: translationsDefault[
|
|
7482
|
+
labelContent: translationsDefault["displayName"].value,
|
|
6774
7483
|
content: buildFormInput({
|
|
6775
7484
|
value: $v.value.display_name.$model,
|
|
6776
7485
|
onChange(input) {
|
|
@@ -6782,7 +7491,7 @@ const AUserForm = defineComponent({
|
|
|
6782
7491
|
validationMessages: translationsValidation.email.value,
|
|
6783
7492
|
validationSeverity: getVuelidateSeverity($v.value.email),
|
|
6784
7493
|
label: true,
|
|
6785
|
-
labelContent: translationsDefault[
|
|
7494
|
+
labelContent: translationsDefault["email"].value,
|
|
6786
7495
|
content: buildFormInput({
|
|
6787
7496
|
value: $v.value.email.$model,
|
|
6788
7497
|
props: {
|
|
@@ -6802,7 +7511,7 @@ const AUserForm = defineComponent({
|
|
|
6802
7511
|
labelContent: h("span", { class: {
|
|
6803
7512
|
"text-warning": !form.name_locked,
|
|
6804
7513
|
"text-success": form.name_locked
|
|
6805
|
-
} }, [form.name_locked ? translationsDefault[
|
|
7514
|
+
} }, [form.name_locked ? translationsDefault["locked"].value : translationsDefault["notLocked"].value]),
|
|
6806
7515
|
value: form.name_locked,
|
|
6807
7516
|
onChange(input) {
|
|
6808
7517
|
form.name_locked = input;
|
|
@@ -6813,7 +7522,7 @@ const AUserForm = defineComponent({
|
|
|
6813
7522
|
labelContent: h("span", { class: {
|
|
6814
7523
|
"text-danger": !form.active,
|
|
6815
7524
|
"text-success": form.active
|
|
6816
|
-
} }, [form.active ? translationsDefault[
|
|
7525
|
+
} }, [form.active ? translationsDefault["active"].value : translationsDefault["inactive"].value]),
|
|
6817
7526
|
value: form.active,
|
|
6818
7527
|
onChange(input) {
|
|
6819
7528
|
form.active = input;
|
|
@@ -6863,14 +7572,13 @@ const AUsers = defineComponent({
|
|
|
6863
7572
|
props,
|
|
6864
7573
|
setup: ctx
|
|
6865
7574
|
});
|
|
6866
|
-
const translationName = useTranslation({
|
|
6867
|
-
group: TranslatorTranslationGroup.DEFAULT,
|
|
6868
|
-
key: TranslatorTranslationDefaultKey.USERS
|
|
6869
|
-
});
|
|
6870
7575
|
const translation = useTranslation({
|
|
6871
|
-
group:
|
|
6872
|
-
key:
|
|
6873
|
-
data: { name:
|
|
7576
|
+
group: "vuecs",
|
|
7577
|
+
key: "noMore",
|
|
7578
|
+
data: { name: useTranslation({
|
|
7579
|
+
group: "default",
|
|
7580
|
+
key: "users"
|
|
7581
|
+
}) }
|
|
6874
7582
|
});
|
|
6875
7583
|
return () => render({ noMore: { content: translation.value } });
|
|
6876
7584
|
}
|
|
@@ -6979,53 +7687,98 @@ const AUserPasswordForm = defineComponent({
|
|
|
6979
7687
|
}
|
|
6980
7688
|
});
|
|
6981
7689
|
//#endregion
|
|
6982
|
-
//#region src/components/entities/permission-user/APermissionUserAssignments.ts
|
|
6983
|
-
|
|
7690
|
+
//#region src/components/entities/permission-user/APermissionUserAssignments.vue?vue&type=script&lang.ts
|
|
7691
|
+
var APermissionUserAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
7692
|
+
components: {
|
|
7693
|
+
AUsers,
|
|
7694
|
+
AUserPermissionAssignment: AUserPermissionAssignment_default
|
|
7695
|
+
},
|
|
6984
7696
|
props: { entityId: {
|
|
6985
7697
|
type: String,
|
|
6986
7698
|
required: true
|
|
6987
7699
|
} },
|
|
6988
7700
|
setup(props, { slots }) {
|
|
6989
|
-
return () =>
|
|
6990
|
-
[SlotName.ITEM_ACTIONS]: (slotProps) => h(AUserPermissionAssignment, {
|
|
6991
|
-
permissionId: props.entityId,
|
|
6992
|
-
userId: slotProps.data.id,
|
|
6993
|
-
key: slotProps.data.id
|
|
6994
|
-
}),
|
|
6995
|
-
...slots
|
|
6996
|
-
});
|
|
7701
|
+
return { forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "itemActions"))) };
|
|
6997
7702
|
}
|
|
6998
7703
|
});
|
|
6999
7704
|
//#endregion
|
|
7000
|
-
//#region src/components/entities/
|
|
7001
|
-
|
|
7705
|
+
//#region src/components/entities/permission-user/APermissionUserAssignments.vue
|
|
7706
|
+
function _sfc_render$14(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7707
|
+
const _component_AUserPermissionAssignment = resolveComponent("AUserPermissionAssignment");
|
|
7708
|
+
const _component_AUsers = resolveComponent("AUsers");
|
|
7709
|
+
return openBlock(), createBlock(_component_AUsers, null, createSlots({
|
|
7710
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_AUserPermissionAssignment, {
|
|
7711
|
+
key: data.id,
|
|
7712
|
+
"permission-id": _ctx.entityId,
|
|
7713
|
+
"user-id": data.id
|
|
7714
|
+
}, null, 8, ["permission-id", "user-id"]))]),
|
|
7715
|
+
_: 2
|
|
7716
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
7717
|
+
return {
|
|
7718
|
+
name,
|
|
7719
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
7720
|
+
};
|
|
7721
|
+
})]), 1024);
|
|
7722
|
+
}
|
|
7723
|
+
var APermissionUserAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(APermissionUserAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$14]]);
|
|
7724
|
+
//#endregion
|
|
7725
|
+
//#region src/components/entities/robot-permission/ARobotPermissionAssignments.vue?vue&type=script&lang.ts
|
|
7726
|
+
var ARobotPermissionAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
7727
|
+
components: {
|
|
7728
|
+
APermissions,
|
|
7729
|
+
ARobotPermissionAssignment: ARobotPermissionAssignment_default
|
|
7730
|
+
},
|
|
7002
7731
|
props: { entityId: {
|
|
7003
7732
|
type: String,
|
|
7004
7733
|
required: true
|
|
7005
7734
|
} },
|
|
7006
7735
|
setup(props, { slots }) {
|
|
7007
|
-
return () =>
|
|
7008
|
-
[SlotName.ITEM_ACTIONS]: (slotProps) => h(ARobotPermissionAssignment, {
|
|
7009
|
-
robotId: props.entityId,
|
|
7010
|
-
permissionId: slotProps.data.id,
|
|
7011
|
-
key: slotProps.data.id
|
|
7012
|
-
}),
|
|
7013
|
-
...slots
|
|
7014
|
-
});
|
|
7736
|
+
return { forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "itemActions"))) };
|
|
7015
7737
|
}
|
|
7016
7738
|
});
|
|
7017
7739
|
//#endregion
|
|
7018
|
-
//#region src/components/entities/robot-
|
|
7019
|
-
|
|
7740
|
+
//#region src/components/entities/robot-permission/ARobotPermissionAssignments.vue
|
|
7741
|
+
function _sfc_render$13(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7742
|
+
const _component_ARobotPermissionAssignment = resolveComponent("ARobotPermissionAssignment");
|
|
7743
|
+
const _component_APermissions = resolveComponent("APermissions");
|
|
7744
|
+
return openBlock(), createBlock(_component_APermissions, null, createSlots({
|
|
7745
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_ARobotPermissionAssignment, {
|
|
7746
|
+
key: data.id,
|
|
7747
|
+
"robot-id": _ctx.entityId,
|
|
7748
|
+
"permission-id": data.id
|
|
7749
|
+
}, null, 8, ["robot-id", "permission-id"]))]),
|
|
7750
|
+
_: 2
|
|
7751
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
7752
|
+
return {
|
|
7753
|
+
name,
|
|
7754
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
7755
|
+
};
|
|
7756
|
+
})]), 1024);
|
|
7757
|
+
}
|
|
7758
|
+
var ARobotPermissionAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ARobotPermissionAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$13]]);
|
|
7759
|
+
//#endregion
|
|
7760
|
+
//#region src/components/entities/robot-role/ARobotRoleAssignment.vue?vue&type=script&lang.ts
|
|
7761
|
+
var ARobotRoleAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
7762
|
+
components: { AToggleButton: AToggleButton_default },
|
|
7020
7763
|
props: {
|
|
7021
|
-
roleId:
|
|
7022
|
-
|
|
7764
|
+
roleId: {
|
|
7765
|
+
type: String,
|
|
7766
|
+
required: true
|
|
7767
|
+
},
|
|
7768
|
+
robotId: {
|
|
7769
|
+
type: String,
|
|
7770
|
+
required: true
|
|
7771
|
+
}
|
|
7023
7772
|
},
|
|
7024
7773
|
emits: defineEntityVEmitOptions(),
|
|
7025
7774
|
async setup(props, setup) {
|
|
7026
7775
|
const manager = defineEntityManager({
|
|
7027
7776
|
type: `${EntityType.ROBOT_ROLE}`,
|
|
7028
7777
|
setup,
|
|
7778
|
+
query: () => ({ filters: {
|
|
7779
|
+
robot_id: props.robotId,
|
|
7780
|
+
role_id: props.roleId
|
|
7781
|
+
} }),
|
|
7029
7782
|
socket: { processEvent(event) {
|
|
7030
7783
|
return event.data.robot_id === props.robotId && event.data.role_id === props.roleId;
|
|
7031
7784
|
} }
|
|
@@ -7034,70 +7787,146 @@ const ARobotRoleAssignment = defineComponent({
|
|
|
7034
7787
|
robot_id: props.robotId,
|
|
7035
7788
|
role_id: props.roleId
|
|
7036
7789
|
} } });
|
|
7037
|
-
|
|
7038
|
-
|
|
7039
|
-
|
|
7040
|
-
|
|
7041
|
-
|
|
7042
|
-
|
|
7043
|
-
|
|
7044
|
-
|
|
7045
|
-
|
|
7046
|
-
|
|
7047
|
-
}
|
|
7790
|
+
const handleChanged = (value) => {
|
|
7791
|
+
if (value) return manager.create({
|
|
7792
|
+
robot_id: props.robotId,
|
|
7793
|
+
role_id: props.roleId
|
|
7794
|
+
});
|
|
7795
|
+
return manager.delete();
|
|
7796
|
+
};
|
|
7797
|
+
return {
|
|
7798
|
+
manager,
|
|
7799
|
+
handleChanged
|
|
7800
|
+
};
|
|
7048
7801
|
}
|
|
7049
7802
|
});
|
|
7050
7803
|
//#endregion
|
|
7051
|
-
//#region src/components/entities/robot-role/
|
|
7052
|
-
|
|
7053
|
-
|
|
7804
|
+
//#region src/components/entities/robot-role/ARobotRoleAssignment.vue
|
|
7805
|
+
function _sfc_render$12(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7806
|
+
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
7807
|
+
return openBlock(), createBlock(_component_AToggleButton, {
|
|
7808
|
+
value: !!_ctx.manager.data.value,
|
|
7809
|
+
"is-busy": _ctx.manager.busy.value,
|
|
7810
|
+
onChanged: _ctx.handleChanged
|
|
7811
|
+
}, null, 8, [
|
|
7812
|
+
"value",
|
|
7813
|
+
"is-busy",
|
|
7814
|
+
"onChanged"
|
|
7815
|
+
]);
|
|
7816
|
+
}
|
|
7817
|
+
var ARobotRoleAssignment_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ARobotRoleAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$12]]);
|
|
7818
|
+
//#endregion
|
|
7819
|
+
//#region src/components/entities/robot-role/ARobotRoleAssignments.vue?vue&type=script&lang.ts
|
|
7820
|
+
var ARobotRoleAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
7821
|
+
components: {
|
|
7822
|
+
ARoles,
|
|
7823
|
+
ARobotRoleAssignment: ARobotRoleAssignment_default
|
|
7824
|
+
},
|
|
7825
|
+
props: { entityId: {
|
|
7826
|
+
type: String,
|
|
7827
|
+
required: true
|
|
7828
|
+
} },
|
|
7054
7829
|
setup(props, { slots }) {
|
|
7055
|
-
return () =>
|
|
7056
|
-
[SlotName.ITEM_ACTIONS]: (slotProps) => h(ARobotRoleAssignment, {
|
|
7057
|
-
robotId: props.entityId,
|
|
7058
|
-
roleId: slotProps.data.id,
|
|
7059
|
-
key: slotProps.data.id
|
|
7060
|
-
}),
|
|
7061
|
-
...slots
|
|
7062
|
-
});
|
|
7830
|
+
return { forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "itemActions"))) };
|
|
7063
7831
|
}
|
|
7064
7832
|
});
|
|
7065
7833
|
//#endregion
|
|
7066
|
-
//#region src/components/entities/role
|
|
7067
|
-
|
|
7068
|
-
|
|
7069
|
-
|
|
7070
|
-
|
|
7071
|
-
|
|
7072
|
-
|
|
7073
|
-
|
|
7074
|
-
|
|
7075
|
-
|
|
7834
|
+
//#region src/components/entities/robot-role/ARobotRoleAssignments.vue
|
|
7835
|
+
function _sfc_render$11(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7836
|
+
const _component_ARobotRoleAssignment = resolveComponent("ARobotRoleAssignment");
|
|
7837
|
+
const _component_ARoles = resolveComponent("ARoles");
|
|
7838
|
+
return openBlock(), createBlock(_component_ARoles, null, createSlots({
|
|
7839
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_ARobotRoleAssignment, {
|
|
7840
|
+
key: data.id,
|
|
7841
|
+
"robot-id": _ctx.entityId,
|
|
7842
|
+
"role-id": data.id
|
|
7843
|
+
}, null, 8, ["robot-id", "role-id"]))]),
|
|
7844
|
+
_: 2
|
|
7845
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
7846
|
+
return {
|
|
7847
|
+
name,
|
|
7848
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
7849
|
+
};
|
|
7850
|
+
})]), 1024);
|
|
7851
|
+
}
|
|
7852
|
+
var ARobotRoleAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ARobotRoleAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$11]]);
|
|
7853
|
+
//#endregion
|
|
7854
|
+
//#region src/components/entities/role-client/ARoleClientAssignments.vue?vue&type=script&lang.ts
|
|
7855
|
+
var ARoleClientAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
7856
|
+
components: {
|
|
7857
|
+
AClients,
|
|
7858
|
+
AClientRoleAssignment: AClientRoleAssignment_default
|
|
7859
|
+
},
|
|
7860
|
+
props: { entityId: {
|
|
7861
|
+
type: String,
|
|
7862
|
+
required: true
|
|
7863
|
+
} }
|
|
7076
7864
|
});
|
|
7077
7865
|
//#endregion
|
|
7078
|
-
//#region src/components/entities/role-
|
|
7079
|
-
|
|
7080
|
-
|
|
7081
|
-
|
|
7082
|
-
|
|
7083
|
-
|
|
7084
|
-
|
|
7085
|
-
|
|
7086
|
-
|
|
7087
|
-
|
|
7866
|
+
//#region src/components/entities/role-client/ARoleClientAssignments.vue
|
|
7867
|
+
function _sfc_render$10(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7868
|
+
const _component_AClientRoleAssignment = resolveComponent("AClientRoleAssignment");
|
|
7869
|
+
const _component_AClients = resolveComponent("AClients");
|
|
7870
|
+
return openBlock(), createBlock(_component_AClients, null, {
|
|
7871
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_AClientRoleAssignment, {
|
|
7872
|
+
key: data.id,
|
|
7873
|
+
"role-id": _ctx.entityId,
|
|
7874
|
+
"client-id": data.id
|
|
7875
|
+
}, null, 8, ["role-id", "client-id"]))]),
|
|
7876
|
+
_: 1
|
|
7877
|
+
});
|
|
7878
|
+
}
|
|
7879
|
+
var ARoleClientAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ARoleClientAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$10]]);
|
|
7880
|
+
//#endregion
|
|
7881
|
+
//#region src/components/entities/role-robot/ARoleRobotAssignments.vue?vue&type=script&lang.ts
|
|
7882
|
+
var ARoleRobotAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
7883
|
+
components: {
|
|
7884
|
+
ARobots,
|
|
7885
|
+
ARobotRoleAssignment: ARobotRoleAssignment_default
|
|
7886
|
+
},
|
|
7887
|
+
props: { entityId: {
|
|
7888
|
+
type: String,
|
|
7889
|
+
required: true
|
|
7890
|
+
} }
|
|
7088
7891
|
});
|
|
7089
7892
|
//#endregion
|
|
7090
|
-
//#region src/components/entities/
|
|
7091
|
-
|
|
7893
|
+
//#region src/components/entities/role-robot/ARoleRobotAssignments.vue
|
|
7894
|
+
function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7895
|
+
const _component_ARobotRoleAssignment = resolveComponent("ARobotRoleAssignment");
|
|
7896
|
+
const _component_ARobots = resolveComponent("ARobots");
|
|
7897
|
+
return openBlock(), createBlock(_component_ARobots, null, {
|
|
7898
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_ARobotRoleAssignment, {
|
|
7899
|
+
key: data.id,
|
|
7900
|
+
"role-id": _ctx.entityId,
|
|
7901
|
+
"robot-id": data.id
|
|
7902
|
+
}, null, 8, ["role-id", "robot-id"]))]),
|
|
7903
|
+
_: 1
|
|
7904
|
+
});
|
|
7905
|
+
}
|
|
7906
|
+
var ARoleRobotAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ARoleRobotAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$9]]);
|
|
7907
|
+
//#endregion
|
|
7908
|
+
//#region src/components/entities/user-role/AUserRoleAssignment.vue?vue&type=script&lang.ts
|
|
7909
|
+
var AUserRoleAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
7910
|
+
components: { AToggleButton: AToggleButton_default },
|
|
7092
7911
|
props: {
|
|
7093
|
-
roleId:
|
|
7094
|
-
|
|
7912
|
+
roleId: {
|
|
7913
|
+
type: String,
|
|
7914
|
+
required: true
|
|
7915
|
+
},
|
|
7916
|
+
userId: {
|
|
7917
|
+
type: String,
|
|
7918
|
+
required: true
|
|
7919
|
+
}
|
|
7095
7920
|
},
|
|
7096
7921
|
emits: defineEntityVEmitOptions(),
|
|
7097
7922
|
async setup(props, setup) {
|
|
7098
7923
|
const manager = defineEntityManager({
|
|
7099
7924
|
type: `${EntityType.USER_ROLE}`,
|
|
7100
7925
|
setup,
|
|
7926
|
+
query: () => ({ filters: {
|
|
7927
|
+
user_id: props.userId,
|
|
7928
|
+
role_id: props.roleId
|
|
7929
|
+
} }),
|
|
7101
7930
|
socket: { processEvent(event) {
|
|
7102
7931
|
return event.data.role_id === props.roleId && event.data.user_id === props.userId;
|
|
7103
7932
|
} }
|
|
@@ -7106,81 +7935,153 @@ const AUserRoleAssignment = defineComponent({
|
|
|
7106
7935
|
user_id: props.userId,
|
|
7107
7936
|
role_id: props.roleId
|
|
7108
7937
|
} } });
|
|
7109
|
-
|
|
7110
|
-
|
|
7111
|
-
|
|
7112
|
-
|
|
7113
|
-
|
|
7114
|
-
|
|
7115
|
-
|
|
7116
|
-
|
|
7117
|
-
|
|
7118
|
-
|
|
7119
|
-
}
|
|
7938
|
+
const handleChanged = (value) => {
|
|
7939
|
+
if (value) return manager.create({
|
|
7940
|
+
user_id: props.userId,
|
|
7941
|
+
role_id: props.roleId
|
|
7942
|
+
});
|
|
7943
|
+
return manager.delete();
|
|
7944
|
+
};
|
|
7945
|
+
return {
|
|
7946
|
+
manager,
|
|
7947
|
+
handleChanged
|
|
7948
|
+
};
|
|
7120
7949
|
}
|
|
7121
7950
|
});
|
|
7122
7951
|
//#endregion
|
|
7123
|
-
//#region src/components/entities/user-role/
|
|
7124
|
-
|
|
7125
|
-
|
|
7952
|
+
//#region src/components/entities/user-role/AUserRoleAssignment.vue
|
|
7953
|
+
function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7954
|
+
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
7955
|
+
return openBlock(), createBlock(_component_AToggleButton, {
|
|
7956
|
+
value: !!_ctx.manager.data.value,
|
|
7957
|
+
"is-busy": _ctx.manager.busy.value,
|
|
7958
|
+
onChanged: _ctx.handleChanged
|
|
7959
|
+
}, null, 8, [
|
|
7960
|
+
"value",
|
|
7961
|
+
"is-busy",
|
|
7962
|
+
"onChanged"
|
|
7963
|
+
]);
|
|
7964
|
+
}
|
|
7965
|
+
var AUserRoleAssignment_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AUserRoleAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$8]]);
|
|
7966
|
+
//#endregion
|
|
7967
|
+
//#region src/components/entities/user-role/AUserRoleAssignments.vue?vue&type=script&lang.ts
|
|
7968
|
+
var AUserRoleAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
7969
|
+
components: {
|
|
7970
|
+
ARoles,
|
|
7971
|
+
AUserRoleAssignment: AUserRoleAssignment_default
|
|
7972
|
+
},
|
|
7973
|
+
props: { entityId: {
|
|
7974
|
+
type: String,
|
|
7975
|
+
required: true
|
|
7976
|
+
} },
|
|
7126
7977
|
setup(props, { slots }) {
|
|
7127
|
-
return () =>
|
|
7128
|
-
[SlotName.ITEM_ACTIONS]: (slotProps) => h(AUserRoleAssignment, {
|
|
7129
|
-
userId: props.entityId,
|
|
7130
|
-
roleId: slotProps.data.id,
|
|
7131
|
-
key: slotProps.data.id
|
|
7132
|
-
}),
|
|
7133
|
-
...slots
|
|
7134
|
-
});
|
|
7978
|
+
return { forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "itemActions"))) };
|
|
7135
7979
|
}
|
|
7136
7980
|
});
|
|
7137
7981
|
//#endregion
|
|
7138
|
-
//#region src/components/entities/role
|
|
7139
|
-
|
|
7140
|
-
|
|
7982
|
+
//#region src/components/entities/user-role/AUserRoleAssignments.vue
|
|
7983
|
+
function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7984
|
+
const _component_AUserRoleAssignment = resolveComponent("AUserRoleAssignment");
|
|
7985
|
+
const _component_ARoles = resolveComponent("ARoles");
|
|
7986
|
+
return openBlock(), createBlock(_component_ARoles, null, createSlots({
|
|
7987
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_AUserRoleAssignment, {
|
|
7988
|
+
key: data.id,
|
|
7989
|
+
"user-id": _ctx.entityId,
|
|
7990
|
+
"role-id": data.id
|
|
7991
|
+
}, null, 8, ["user-id", "role-id"]))]),
|
|
7992
|
+
_: 2
|
|
7993
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
7994
|
+
return {
|
|
7995
|
+
name,
|
|
7996
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
7997
|
+
};
|
|
7998
|
+
})]), 1024);
|
|
7999
|
+
}
|
|
8000
|
+
var AUserRoleAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AUserRoleAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$7]]);
|
|
8001
|
+
//#endregion
|
|
8002
|
+
//#region src/components/entities/role-user/ARoleUserAssignments.vue?vue&type=script&lang.ts
|
|
8003
|
+
var ARoleUserAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
8004
|
+
components: {
|
|
8005
|
+
AUsers,
|
|
8006
|
+
AUserRoleAssignment: AUserRoleAssignment_default
|
|
8007
|
+
},
|
|
8008
|
+
props: { entityId: {
|
|
8009
|
+
type: String,
|
|
8010
|
+
required: true
|
|
8011
|
+
} },
|
|
7141
8012
|
setup(props, { slots }) {
|
|
7142
|
-
return () =>
|
|
7143
|
-
[SlotName.ITEM_ACTIONS]: (slotProps) => h(AUserRoleAssignment, {
|
|
7144
|
-
roleId: props.entityId,
|
|
7145
|
-
userId: slotProps.data.id,
|
|
7146
|
-
key: slotProps.data.id
|
|
7147
|
-
}),
|
|
7148
|
-
...slots
|
|
7149
|
-
});
|
|
8013
|
+
return { forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "itemActions"))) };
|
|
7150
8014
|
}
|
|
7151
8015
|
});
|
|
7152
8016
|
//#endregion
|
|
7153
|
-
//#region src/components/entities/
|
|
7154
|
-
|
|
8017
|
+
//#region src/components/entities/role-user/ARoleUserAssignments.vue
|
|
8018
|
+
function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8019
|
+
const _component_AUserRoleAssignment = resolveComponent("AUserRoleAssignment");
|
|
8020
|
+
const _component_AUsers = resolveComponent("AUsers");
|
|
8021
|
+
return openBlock(), createBlock(_component_AUsers, null, createSlots({
|
|
8022
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_AUserRoleAssignment, {
|
|
8023
|
+
key: data.id,
|
|
8024
|
+
"role-id": _ctx.entityId,
|
|
8025
|
+
"user-id": data.id
|
|
8026
|
+
}, null, 8, ["role-id", "user-id"]))]),
|
|
8027
|
+
_: 2
|
|
8028
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
8029
|
+
return {
|
|
8030
|
+
name,
|
|
8031
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
8032
|
+
};
|
|
8033
|
+
})]), 1024);
|
|
8034
|
+
}
|
|
8035
|
+
var ARoleUserAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ARoleUserAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$6]]);
|
|
8036
|
+
//#endregion
|
|
8037
|
+
//#region src/components/entities/scope-client/AScopeClientAssignments.vue?vue&type=script&lang.ts
|
|
8038
|
+
var AScopeClientAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
8039
|
+
components: {
|
|
8040
|
+
AClients,
|
|
8041
|
+
AClientScopeAssignment: AClientScopeAssignment_default
|
|
8042
|
+
},
|
|
7155
8043
|
props: { entityId: {
|
|
7156
8044
|
type: String,
|
|
7157
8045
|
required: true
|
|
7158
8046
|
} },
|
|
7159
8047
|
setup(props, { slots }) {
|
|
7160
|
-
return () =>
|
|
7161
|
-
[SlotName.ITEM_ACTIONS]: (slotProps) => h(AClientScopeAssignment, {
|
|
7162
|
-
scopeId: props.entityId,
|
|
7163
|
-
clientId: slotProps.data.id,
|
|
7164
|
-
key: slotProps.data.id
|
|
7165
|
-
}),
|
|
7166
|
-
...slots
|
|
7167
|
-
});
|
|
8048
|
+
return { forwardedSlots: computed(() => Object.fromEntries(Object.entries(slots).filter(([name]) => name !== "itemActions"))) };
|
|
7168
8049
|
}
|
|
7169
8050
|
});
|
|
7170
8051
|
//#endregion
|
|
8052
|
+
//#region src/components/entities/scope-client/AScopeClientAssignments.vue
|
|
8053
|
+
function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8054
|
+
const _component_AClientScopeAssignment = resolveComponent("AClientScopeAssignment");
|
|
8055
|
+
const _component_AClients = resolveComponent("AClients");
|
|
8056
|
+
return openBlock(), createBlock(_component_AClients, null, createSlots({
|
|
8057
|
+
itemActions: withCtx(({ data }) => [(openBlock(), createBlock(_component_AClientScopeAssignment, {
|
|
8058
|
+
key: data.id,
|
|
8059
|
+
"scope-id": _ctx.entityId,
|
|
8060
|
+
"client-id": data.id
|
|
8061
|
+
}, null, 8, ["scope-id", "client-id"]))]),
|
|
8062
|
+
_: 2
|
|
8063
|
+
}, [renderList(_ctx.forwardedSlots, (_, name) => {
|
|
8064
|
+
return {
|
|
8065
|
+
name,
|
|
8066
|
+
fn: withCtx((slotData) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData ?? {})))])
|
|
8067
|
+
};
|
|
8068
|
+
})]), 1024);
|
|
8069
|
+
}
|
|
8070
|
+
var AScopeClientAssignments_default = /* @__PURE__ */ _plugin_vue_export_helper_default(AScopeClientAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$5]]);
|
|
8071
|
+
//#endregion
|
|
7171
8072
|
//#region src/components/entities/index.ts
|
|
7172
8073
|
var entities_exports = /* @__PURE__ */ __exportAll({
|
|
7173
8074
|
AAttributeNamesPolicyForm: () => AAttributeNamesPolicyForm_default,
|
|
7174
8075
|
AClient: () => AClient,
|
|
7175
8076
|
AClientForm: () => AClientForm_default,
|
|
7176
|
-
AClientPermissionAssignment: () =>
|
|
7177
|
-
AClientPermissionAssignments: () =>
|
|
8077
|
+
AClientPermissionAssignment: () => AClientPermissionAssignment_default,
|
|
8078
|
+
AClientPermissionAssignments: () => AClientPermissionAssignments_default,
|
|
7178
8079
|
AClientPicker: () => AClientPicker,
|
|
7179
|
-
AClientRoleAssignment: () =>
|
|
7180
|
-
AClientRoleAssignments: () =>
|
|
8080
|
+
AClientRoleAssignment: () => AClientRoleAssignment_default,
|
|
8081
|
+
AClientRoleAssignments: () => AClientRoleAssignments_default,
|
|
7181
8082
|
AClientScope: () => AClientScope,
|
|
7182
|
-
AClientScopeAssignment: () =>
|
|
7183
|
-
AClientScopeAssignments: () =>
|
|
8083
|
+
AClientScopeAssignment: () => AClientScopeAssignment_default,
|
|
8084
|
+
AClientScopeAssignments: () => AClientScopeAssignments_default,
|
|
7184
8085
|
AClientScopes: () => AClientScopes,
|
|
7185
8086
|
AClients: () => AClients,
|
|
7186
8087
|
ACompositePolicyForm: () => ACompositePolicyForm_default,
|
|
@@ -7188,28 +8089,32 @@ var entities_exports = /* @__PURE__ */ __exportAll({
|
|
|
7188
8089
|
AIdentityPolicyForm: () => AIdentityPolicyForm_default,
|
|
7189
8090
|
AIdentityProvider: () => AIdentityProvider,
|
|
7190
8091
|
AIdentityProviderForm: () => AIdentityProviderForm,
|
|
7191
|
-
AIdentityProviderIcon: () =>
|
|
8092
|
+
AIdentityProviderIcon: () => AIdentityProviderIcon_default,
|
|
7192
8093
|
AIdentityProviderLdapForm: () => AIdentityProviderLdapForm,
|
|
7193
8094
|
AIdentityProviderOAuth2Form: () => AIdentityProviderOAuth2Form,
|
|
7194
8095
|
AIdentityProviderPreset: () => AIdentityProviderPreset,
|
|
7195
8096
|
AIdentityProviderProtocol: () => AIdentityProviderProtocol,
|
|
7196
|
-
AIdentityProviderRoleAssignment: () =>
|
|
7197
|
-
AIdentityProviderRoleAssignments: () =>
|
|
8097
|
+
AIdentityProviderRoleAssignment: () => AIdentityProviderRoleAssignment_default,
|
|
8098
|
+
AIdentityProviderRoleAssignments: () => AIdentityProviderRoleAssignments_default,
|
|
7198
8099
|
AIdentityProviders: () => AIdentityProviders,
|
|
7199
8100
|
APermission: () => APermission,
|
|
7200
8101
|
APermissionCheck: () => APermissionCheck,
|
|
7201
|
-
APermissionClientAssignments: () =>
|
|
8102
|
+
APermissionClientAssignments: () => APermissionClientAssignments_default,
|
|
7202
8103
|
APermissionForm: () => APermissionForm,
|
|
7203
|
-
APermissionPolicyAssignment: () =>
|
|
7204
|
-
APermissionPolicyAssignments: () =>
|
|
8104
|
+
APermissionPolicyAssignment: () => APermissionPolicyAssignment_default,
|
|
8105
|
+
APermissionPolicyAssignments: () => APermissionPolicyAssignments_default,
|
|
7205
8106
|
APermissionPolicyBindingButton: () => APermissionPolicyBindingButton,
|
|
7206
|
-
APermissionRobotAssignments: () =>
|
|
7207
|
-
APermissionRoleAssignments: () =>
|
|
7208
|
-
APermissionUserAssignments: () =>
|
|
8107
|
+
APermissionRobotAssignments: () => APermissionRobotAssignments_default,
|
|
8108
|
+
APermissionRoleAssignments: () => APermissionRoleAssignments_default,
|
|
8109
|
+
APermissionUserAssignments: () => APermissionUserAssignments_default,
|
|
7209
8110
|
APermissions: () => APermissions,
|
|
7210
8111
|
APolicies: () => APolicies,
|
|
7211
8112
|
APolicy: () => APolicy,
|
|
8113
|
+
APolicyDetailNav: () => APolicyDetailNav_default,
|
|
7212
8114
|
APolicyForm: () => APolicyForm_default,
|
|
8115
|
+
APolicyInlineInfo: () => APolicyInlineInfo_default,
|
|
8116
|
+
APolicySummary: () => APolicySummary_default,
|
|
8117
|
+
APolicyTypeBadge: () => APolicyTypeBadge_default,
|
|
7213
8118
|
APolicyTypePicker: () => APolicyTypePicker_default,
|
|
7214
8119
|
ARealm: () => ARealm,
|
|
7215
8120
|
ARealmForm: () => ARealmForm,
|
|
@@ -7218,31 +8123,31 @@ var entities_exports = /* @__PURE__ */ __exportAll({
|
|
|
7218
8123
|
ARealms: () => ARealms,
|
|
7219
8124
|
ARobot: () => ARobot,
|
|
7220
8125
|
ARobotForm: () => ARobotForm,
|
|
7221
|
-
ARobotPermissionAssignment: () =>
|
|
7222
|
-
ARobotPermissionAssignments: () =>
|
|
7223
|
-
ARobotRoleAssignment: () =>
|
|
7224
|
-
ARobotRoleAssignments: () =>
|
|
8126
|
+
ARobotPermissionAssignment: () => ARobotPermissionAssignment_default,
|
|
8127
|
+
ARobotPermissionAssignments: () => ARobotPermissionAssignments_default,
|
|
8128
|
+
ARobotRoleAssignment: () => ARobotRoleAssignment_default,
|
|
8129
|
+
ARobotRoleAssignments: () => ARobotRoleAssignments_default,
|
|
7225
8130
|
ARobots: () => ARobots,
|
|
7226
8131
|
ARole: () => ARole,
|
|
7227
|
-
ARoleClientAssignments: () =>
|
|
8132
|
+
ARoleClientAssignments: () => ARoleClientAssignments_default,
|
|
7228
8133
|
ARoleForm: () => ARoleForm,
|
|
7229
|
-
ARolePermissionAssignment: () =>
|
|
7230
|
-
ARolePermissionAssignments: () =>
|
|
7231
|
-
ARoleRobotAssignments: () =>
|
|
7232
|
-
ARoleUserAssignments: () =>
|
|
8134
|
+
ARolePermissionAssignment: () => ARolePermissionAssignment_default,
|
|
8135
|
+
ARolePermissionAssignments: () => ARolePermissionAssignments_default,
|
|
8136
|
+
ARoleRobotAssignments: () => ARoleRobotAssignments_default,
|
|
8137
|
+
ARoleUserAssignments: () => ARoleUserAssignments_default,
|
|
7233
8138
|
ARoles: () => ARoles,
|
|
7234
8139
|
AScope: () => AScope,
|
|
7235
|
-
AScopeClientAssignments: () =>
|
|
8140
|
+
AScopeClientAssignments: () => AScopeClientAssignments_default,
|
|
7236
8141
|
AScopeForm: () => AScopeForm,
|
|
7237
8142
|
AScopes: () => AScopes,
|
|
7238
8143
|
ATimePolicyForm: () => ATimePolicyForm_default,
|
|
7239
8144
|
AUser: () => AUser,
|
|
7240
8145
|
AUserForm: () => AUserForm,
|
|
7241
8146
|
AUserPasswordForm: () => AUserPasswordForm,
|
|
7242
|
-
AUserPermissionAssignment: () =>
|
|
7243
|
-
AUserPermissionAssignments: () =>
|
|
7244
|
-
AUserRoleAssignment: () =>
|
|
7245
|
-
AUserRoleAssignments: () =>
|
|
8147
|
+
AUserPermissionAssignment: () => AUserPermissionAssignment_default,
|
|
8148
|
+
AUserPermissionAssignments: () => AUserPermissionAssignments_default,
|
|
8149
|
+
AUserRoleAssignment: () => AUserRoleAssignment_default,
|
|
8150
|
+
AUserRoleAssignments: () => AUserRoleAssignments_default,
|
|
7246
8151
|
AUsers: () => AUsers
|
|
7247
8152
|
});
|
|
7248
8153
|
//#endregion
|
|
@@ -7296,7 +8201,7 @@ var Login_vue_vue_type_script_lang_default = defineComponent({
|
|
|
7296
8201
|
ATitle,
|
|
7297
8202
|
IVuelidate,
|
|
7298
8203
|
AIdentityProviders,
|
|
7299
|
-
AIdentityProviderIcon
|
|
8204
|
+
AIdentityProviderIcon: AIdentityProviderIcon_default
|
|
7300
8205
|
},
|
|
7301
8206
|
props: { codeRequest: { type: Object } },
|
|
7302
8207
|
emits: ["done", "failed"],
|
|
@@ -7737,6 +8642,6 @@ var Authorize_default = defineComponent({
|
|
|
7737
8642
|
//#region src/index.ts
|
|
7738
8643
|
var src_default = { install };
|
|
7739
8644
|
//#endregion
|
|
7740
|
-
export { AAttributeNamesPolicyForm_default as AAttributeNamesPolicyForm, Authorize_default as AAuthorize, AuthorizeText_default as AAuthorizeText, AClient, AClientForm_default as AClientForm, AClientPermissionAssignment, AClientPermissionAssignments, AClientPicker, AClientRoleAssignment, AClientRoleAssignments, AClientScope, AClientScopeAssignment, AClientScopeAssignments, AClientScopes, AClients, ACompositePolicyForm_default as ACompositePolicyForm, ADatePolicyForm_default as ADatePolicyForm, AEntityDelete, AFormInputList_default as AFormInputList, AFormInputListItem_default as AFormInputListItem, AFormSubmit, AIdentityPolicyForm_default as AIdentityPolicyForm, AIdentityProvider, AIdentityProviderForm, AIdentityProviderIcon, AIdentityProviderLdapForm, AIdentityProviderOAuth2Form, AIdentityProviderPreset, AIdentityProviderProtocol, AIdentityProviderRoleAssignment, AIdentityProviderRoleAssignments, AIdentityProviders, Login_default as ALogin, APagination, APermission, APermissionCheck, APermissionClientAssignments, APermissionForm, APermissionPolicyAssignment, APermissionPolicyAssignments, APermissionPolicyBindingButton, APermissionRobotAssignments, APermissionRoleAssignments, APermissionUserAssignments, APermissions, APolicies, APolicy, APolicyForm_default as APolicyForm, APolicyTypePicker_default as APolicyTypePicker, ARealm, ARealmForm, ARealmMatchPolicyForm_default as ARealmMatchPolicyForm, ARealmPicker, ARealms, ARobot, ARobotForm, ARobotPermissionAssignment, ARobotPermissionAssignments, ARobotRoleAssignment, ARobotRoleAssignments, ARobots, ARole, ARoleClientAssignments, ARoleForm, ARolePermissionAssignment, ARolePermissionAssignments, ARoleRobotAssignments, ARoleUserAssignments, ARoles, AScope, AScopeClientAssignments, AScopeForm, AScopes, ASearch, ATimePolicyForm_default as ATimePolicyForm, ATitle, AUser, AUserForm, AUserPasswordForm, AUserPermissionAssignment, AUserPermissionAssignments, AUserRoleAssignment, AUserRoleAssignments, AUsers, EntityRecordError, HTTPClientSymbol, LanguageSwitcherDropdown, ListHandlers, STORE_ID, SocketClientSymbol, StoreDispatcherEventName, TranslatorTranslationClientKey, TranslatorTranslationDefaultKey, TranslatorTranslationGroup, TranslatorTranslationVuecsKey, VuelidateCustomRule, VuelidateCustomRuleKey, assignFormProperties, buildEntityVSlotProps, buildFormSubmitWithTranslations, createFormSubmitTranslations, createPermissionCheckerReactiveFn, createStore, createStoreDispatcher, src_default as default, defineEntityCollectionManager, defineEntityCollectionVEmitOptions, defineEntityCollectionVProps, defineEntityManager, defineEntityPicker, defineEntityPickerVEmitOptions, defineEntityPickerVProps, defineEntitySocketManager, defineEntityVEmitOptions, defineEntityVProps, extractVuelidateResultsFromChild, getVuelidateSeverity, hasHTTPClient, hasHTTPClientAuthenticationHook, hasNormalizedSlot, hasStoreFactory, inject, injectHTTPClient, injectHTTPClientAuthenticationHook, injectSocketManager, injectStore, injectStoreDispatcher, injectStoreFactory, injectTranslatorLocale, install, installHTTPClient, installHTTPClientAuthenticationHook, installSocketManager, installStore, installTranslator, isQuerySortedDescByDate, isSocketManagerUsable, mergeEntityCollectionRenderOptions, normalizeSlot, onChange, provide, provideHTTPClient, provideHTTPClientAuthenticationHook, provideSocketManager, provideStoreDispatcher, provideStoreFactory, renderToggleButton, storeToRefs, useIsEditing, usePermissionCheck, useTranslation, useTranslationsForBaseValidation, useTranslationsForGroup, useTranslationsForNestedValidation, useUpdatedAt, wrapFnWithBusyState };
|
|
8645
|
+
export { AAttributeNamesPolicyForm_default as AAttributeNamesPolicyForm, Authorize_default as AAuthorize, AuthorizeText_default as AAuthorizeText, AClient, AClientForm_default as AClientForm, AClientPermissionAssignment_default as AClientPermissionAssignment, AClientPermissionAssignments_default as AClientPermissionAssignments, AClientPicker, AClientRoleAssignment_default as AClientRoleAssignment, AClientRoleAssignments_default as AClientRoleAssignments, AClientScope, AClientScopeAssignment_default as AClientScopeAssignment, AClientScopeAssignments_default as AClientScopeAssignments, AClientScopes, AClients, ACompositePolicyForm_default as ACompositePolicyForm, ADatePolicyForm_default as ADatePolicyForm, AEntityDelete, AFormInputList_default as AFormInputList, AFormInputListItem_default as AFormInputListItem, AFormSubmit, AIdentityPolicyForm_default as AIdentityPolicyForm, AIdentityProvider, AIdentityProviderForm, AIdentityProviderIcon_default as AIdentityProviderIcon, AIdentityProviderLdapForm, AIdentityProviderOAuth2Form, AIdentityProviderPreset, AIdentityProviderProtocol, AIdentityProviderRoleAssignment_default as AIdentityProviderRoleAssignment, AIdentityProviderRoleAssignments_default as AIdentityProviderRoleAssignments, AIdentityProviders, Login_default as ALogin, APagination, APermission, APermissionCheck, APermissionClientAssignments_default as APermissionClientAssignments, APermissionForm, APermissionPolicyAssignment_default as APermissionPolicyAssignment, APermissionPolicyAssignments_default as APermissionPolicyAssignments, APermissionPolicyBindingButton, APermissionRobotAssignments_default as APermissionRobotAssignments, APermissionRoleAssignments_default as APermissionRoleAssignments, APermissionUserAssignments_default as APermissionUserAssignments, APermissions, APolicies, APolicy, APolicyDetailNav_default as APolicyDetailNav, APolicyForm_default as APolicyForm, APolicyInlineInfo_default as APolicyInlineInfo, APolicySummary_default as APolicySummary, APolicyTypeBadge_default as APolicyTypeBadge, APolicyTypePicker_default as APolicyTypePicker, ARealm, ARealmForm, ARealmMatchPolicyForm_default as ARealmMatchPolicyForm, ARealmPicker, ARealms, ARobot, ARobotForm, ARobotPermissionAssignment_default as ARobotPermissionAssignment, ARobotPermissionAssignments_default as ARobotPermissionAssignments, ARobotRoleAssignment_default as ARobotRoleAssignment, ARobotRoleAssignments_default as ARobotRoleAssignments, ARobots, ARole, ARoleClientAssignments_default as ARoleClientAssignments, ARoleForm, ARolePermissionAssignment_default as ARolePermissionAssignment, ARolePermissionAssignments_default as ARolePermissionAssignments, ARoleRobotAssignments_default as ARoleRobotAssignments, ARoleUserAssignments_default as ARoleUserAssignments, ARoles, AScope, AScopeClientAssignments_default as AScopeClientAssignments, AScopeForm, AScopes, ASearch, ATimePolicyForm_default as ATimePolicyForm, ATitle, AToggleButton_default as AToggleButton, AUser, AUserForm, AUserPasswordForm, AUserPermissionAssignment_default as AUserPermissionAssignment, AUserPermissionAssignments_default as AUserPermissionAssignments, AUserRoleAssignment_default as AUserRoleAssignment, AUserRoleAssignments_default as AUserRoleAssignments, AUsers, EntityRecordError, HTTPClientSymbol, LanguageSwitcherDropdown, ListHandlers, STORE_ID, SocketClientSymbol, StoreDispatcherEventName, TranslatorTranslationClientKey, TranslatorTranslationDefaultKey, TranslatorTranslationGroup, TranslatorTranslationVuecsKey, VuelidateCustomRule, VuelidateCustomRuleKey, assignFormProperties, buildEntityVSlotProps, buildFormSubmitWithTranslations, createFormSubmitTranslations, createPermissionCheckerReactiveFn, createStore, createStoreDispatcher, src_default as default, defineEntityCollectionManager, defineEntityCollectionVEmitOptions, defineEntityCollectionVProps, defineEntityManager, defineEntityPicker, defineEntityPickerVEmitOptions, defineEntityPickerVProps, defineEntitySocketManager, defineEntityVEmitOptions, defineEntityVProps, extractVuelidateResultsFromChild, getVuelidateSeverity, hasHTTPClient, hasHTTPClientAuthenticationHook, hasNormalizedSlot, hasStoreFactory, inject, injectHTTPClient, injectHTTPClientAuthenticationHook, injectSocketManager, injectStore, injectStoreDispatcher, injectStoreFactory, injectTranslatorLocale, install, installHTTPClient, installHTTPClientAuthenticationHook, installSocketManager, installStore, installTranslator, isQuerySortedDescByDate, isSocketManagerUsable, mergeEntityCollectionRenderOptions, normalizeSlot, onChange, provide, provideHTTPClient, provideHTTPClientAuthenticationHook, provideSocketManager, provideStoreDispatcher, provideStoreFactory, renderToggleButton, storeToRefs, useIsEditing, usePermissionCheck, useTranslation, useTranslationsForBaseValidation, useTranslationsForGroup, useTranslationsForNestedValidation, useUpdatedAt, wrapFnWithBusyState };
|
|
7741
8646
|
|
|
7742
8647
|
//# sourceMappingURL=index.mjs.map
|