@authup/client-web-kit 1.0.0-beta.44 → 1.0.0-beta.46
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 +276 -41
- package/dist/components/entities/client/AClientForm.vue.d.ts.map +1 -1
- package/dist/components/entities/client/AClients.d.ts.map +1 -1
- package/dist/components/entities/client-scope/AClientScopes.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderBasicFields.vue.d.ts +118 -323
- package/dist/components/entities/identity-provider/AIdentityProviderBasicFields.vue.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderForm.vue.d.ts +283 -3087
- package/dist/components/entities/identity-provider/AIdentityProviderForm.vue.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderLdapConnectionFields.vue.d.ts +3 -358
- package/dist/components/entities/identity-provider/AIdentityProviderLdapConnectionFields.vue.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderLdapCredentialsFields.vue.d.ts +3 -255
- package/dist/components/entities/identity-provider/AIdentityProviderLdapCredentialsFields.vue.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderLdapForm.vue.d.ts +146 -1554
- package/dist/components/entities/identity-provider/AIdentityProviderLdapForm.vue.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderLdapGroupFields.vue.d.ts +3 -258
- package/dist/components/entities/identity-provider/AIdentityProviderLdapGroupFields.vue.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderLdapUserFields.vue.d.ts +3 -257
- package/dist/components/entities/identity-provider/AIdentityProviderLdapUserFields.vue.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2ClientFields.vue.d.ts +3 -245
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2ClientFields.vue.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2Discovery.vue.d.ts +0 -237
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2Discovery.vue.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2EndpointFields.vue.d.ts +3 -3
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2EndpointFields.vue.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2Form.vue.d.ts +142 -1415
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2Form.vue.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviders.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/index.d.ts +3 -3
- package/dist/components/entities/identity-provider/index.d.ts.map +1 -1
- package/dist/components/entities/identity-provider-role/AIdentityProviderRoleAssignment.vue.d.ts +2 -1
- package/dist/components/entities/identity-provider-role/AIdentityProviderRoleAssignment.vue.d.ts.map +1 -1
- package/dist/components/entities/identity-provider-role/AIdentityProviderRoleAssignments.vue.d.ts +1 -1
- package/dist/components/entities/identity-provider-role/AIdentityProviderRoleAssignments.vue.d.ts.map +1 -1
- package/dist/components/entities/permission/APermissionForm.vue.d.ts +118 -478
- package/dist/components/entities/permission/APermissionForm.vue.d.ts.map +1 -1
- package/dist/components/entities/permission/APermissions.d.ts.map +1 -1
- package/dist/components/entities/permission/index.d.ts +1 -1
- package/dist/components/entities/permission/index.d.ts.map +1 -1
- package/dist/components/entities/permission-policy/APermissionPolicyAssignments.vue.d.ts +1 -0
- package/dist/components/entities/permission-policy/APermissionPolicyAssignments.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/APolicies.d.ts.map +1 -1
- package/dist/components/entities/policy/APolicyBasicForm.vue.d.ts +136 -0
- package/dist/components/entities/policy/APolicyBasicForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/APolicyDetailNav.vue.d.ts +1 -0
- package/dist/components/entities/policy/APolicyDetailNav.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/APolicyForm.vue.d.ts +136 -0
- package/dist/components/entities/policy/APolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/APolicyInlineInfo.vue.d.ts +1 -0
- package/dist/components/entities/policy/APolicyInlineInfo.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/attribute-names/AAttributeNamesPolicyForm.vue.d.ts +1 -37
- package/dist/components/entities/policy/attribute-names/AAttributeNamesPolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/composite/ACompositePolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/date/ADatePolicyForm.vue.d.ts +2 -0
- package/dist/components/entities/policy/date/ADatePolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/identity/AIdentityPolicyForm.vue.d.ts +1 -37
- package/dist/components/entities/policy/identity/AIdentityPolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/realm-match/ARealmMatchPolicyForm.vue.d.ts +1 -37
- package/dist/components/entities/policy/realm-match/ARealmMatchPolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/time/ATimePolicyForm.vue.d.ts +2 -0
- package/dist/components/entities/policy/time/ATimePolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/realm/ARealmForm.vue.d.ts +120 -316
- package/dist/components/entities/realm/ARealmForm.vue.d.ts.map +1 -1
- package/dist/components/entities/realm/ARealms.d.ts.map +1 -1
- package/dist/components/entities/realm/index.d.ts +1 -1
- package/dist/components/entities/realm/index.d.ts.map +1 -1
- package/dist/components/entities/robot/ARobotForm.vue.d.ts +242 -386
- package/dist/components/entities/robot/ARobotForm.vue.d.ts.map +1 -1
- package/dist/components/entities/robot/ARobots.d.ts.map +1 -1
- package/dist/components/entities/robot/index.d.ts +1 -1
- package/dist/components/entities/robot/index.d.ts.map +1 -1
- package/dist/components/entities/role/ARoleForm.vue.d.ts +120 -402
- package/dist/components/entities/role/ARoleForm.vue.d.ts.map +1 -1
- package/dist/components/entities/role/ARoles.d.ts.map +1 -1
- package/dist/components/entities/role/index.d.ts +1 -1
- package/dist/components/entities/role/index.d.ts.map +1 -1
- package/dist/components/entities/scope/AScopeForm.vue.d.ts +120 -409
- package/dist/components/entities/scope/AScopeForm.vue.d.ts.map +1 -1
- package/dist/components/entities/scope/AScopes.d.ts.map +1 -1
- package/dist/components/entities/scope/index.d.ts +1 -1
- package/dist/components/entities/scope/index.d.ts.map +1 -1
- package/dist/components/entities/user/AUserForm.vue.d.ts +117 -496
- package/dist/components/entities/user/AUserForm.vue.d.ts.map +1 -1
- package/dist/components/entities/user/AUserPasswordForm.vue.d.ts +0 -385
- package/dist/components/entities/user/AUserPasswordForm.vue.d.ts.map +1 -1
- package/dist/components/entities/user/AUsers.d.ts.map +1 -1
- package/dist/components/entities/user/index.d.ts +2 -2
- package/dist/components/entities/user/index.d.ts.map +1 -1
- package/dist/components/utility/ANameInput.vue.d.ts +151 -0
- package/dist/components/utility/ANameInput.vue.d.ts.map +1 -0
- package/dist/components/utility/ASecretInput.vue.d.ts +156 -0
- package/dist/components/utility/ASecretInput.vue.d.ts.map +1 -0
- package/dist/components/utility/AToggleButton.vue.d.ts +0 -27
- package/dist/components/utility/AToggleButton.vue.d.ts.map +1 -1
- package/dist/components/utility/LanguageSwitcherDropdown.d.ts.map +1 -1
- package/dist/components/utility/entity/AEntityDelete.d.ts.map +1 -1
- package/dist/components/utility/form-input-list/AFormInputList.vue.d.ts +2 -37
- package/dist/components/utility/form-input-list/AFormInputList.vue.d.ts.map +1 -1
- package/dist/components/utility/form-input-list/AFormInputListItem.vue.d.ts.map +1 -1
- package/dist/components/utility/index.d.ts +2 -0
- package/dist/components/utility/index.d.ts.map +1 -1
- package/dist/components/utility/title/ATitle.d.ts.map +1 -1
- package/dist/components/utility/translation/index.d.ts +0 -1
- package/dist/components/utility/translation/index.d.ts.map +1 -1
- package/dist/components/workflows/Login.vue.d.ts +2 -0
- package/dist/components/workflows/Login.vue.d.ts.map +1 -1
- package/dist/components/workflows/authorize/Authorize.vue.d.ts +5 -0
- package/dist/components/workflows/authorize/Authorize.vue.d.ts.map +1 -1
- package/dist/components/workflows/authorize/AuthorizeForm.vue.d.ts +4 -0
- package/dist/components/workflows/authorize/AuthorizeForm.vue.d.ts.map +1 -1
- package/dist/components/workflows/authorize/AuthorizeScopes.vue.d.ts +2 -0
- package/dist/components/workflows/authorize/AuthorizeScopes.vue.d.ts.map +1 -1
- package/dist/core/form/defaults.d.ts.map +1 -1
- package/dist/core/translator/helpers.d.ts +25 -6
- package/dist/core/translator/helpers.d.ts.map +1 -1
- package/dist/core/translator/index.d.ts +0 -1
- package/dist/core/translator/index.d.ts.map +1 -1
- package/dist/core/translator/install.d.ts +7 -6
- package/dist/core/translator/install.d.ts.map +1 -1
- package/dist/core/translator/singleton.d.ts +12 -0
- package/dist/core/translator/singleton.d.ts.map +1 -1
- package/dist/index.mjs +2232 -843
- package/dist/index.mjs.map +1 -1
- package/package.json +27 -25
- package/dist/components/utility/translation/ATranslationDefault.vue.d.ts +0 -43
- package/dist/components/utility/translation/ATranslationDefault.vue.d.ts.map +0 -1
- package/dist/core/translator/constants.d.ts +0 -61
- package/dist/core/translator/constants.d.ts.map +0 -1
- package/dist/core/translator/de/client.d.ts +0 -3
- package/dist/core/translator/de/client.d.ts.map +0 -1
- package/dist/core/translator/de/default.d.ts +0 -3
- package/dist/core/translator/de/default.d.ts.map +0 -1
- package/dist/core/translator/de/index.d.ts +0 -4
- package/dist/core/translator/de/index.d.ts.map +0 -1
- package/dist/core/translator/de/vuecs.d.ts +0 -3
- package/dist/core/translator/de/vuecs.d.ts.map +0 -1
- package/dist/core/translator/en/client.d.ts +0 -3
- package/dist/core/translator/en/client.d.ts.map +0 -1
- package/dist/core/translator/en/default.d.ts +0 -3
- package/dist/core/translator/en/default.d.ts.map +0 -1
- package/dist/core/translator/en/index.d.ts +0 -4
- package/dist/core/translator/en/index.d.ts.map +0 -1
- package/dist/core/translator/en/vuecs.d.ts +0 -3
- package/dist/core/translator/en/vuecs.d.ts.map +0 -1
package/dist/index.mjs
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { createValidup, getSeverity, useValidup } from "@validup/vue";
|
|
2
2
|
import { Container, OptionalValue, ValidupError, defineIssueItem } from "validup";
|
|
3
3
|
import { ClientValidator, EntityDefaultEventName, EntityType, IdentityProviderPreset, IdentityProviderProtocol, IdentityProviderValidator, PermissionValidator, PolicyValidator, REALM_MASTER_NAME, RealmValidator, RobotValidator, RoleValidator, ScopeValidator, UserValidator, buildEntityChannelName, buildUserFakeEmail, getIdentityProviderProtocolForPreset, isUserFakeEmail } from "@authup/core-kit";
|
|
4
|
-
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";
|
|
4
|
+
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, useId, watch, withCtx, withModifiers } from "vue";
|
|
5
5
|
import { VCFormCheckbox, VCFormGroup, VCFormInput, VCFormSelect, VCFormSwitch, VCFormTextarea, useSubmitButton } from "@vuecs/forms";
|
|
6
6
|
import { createValidator } from "@validup/zod";
|
|
7
7
|
import { IFieldValidation, install as install$1, useTranslationsForComposable as useTranslationsForComposable$1, useTranslationsForField as useTranslationsForField$1 } from "@ilingo/validup-vue";
|
|
8
|
+
import { CATALOGS, LOCALES, TranslatorTranslationActionKey, TranslatorTranslationClientKey, TranslatorTranslationCommonKey, TranslatorTranslationEntityKey, TranslatorTranslationFieldKey, TranslatorTranslationNamespace, TranslatorTranslationVuecsKey } from "@authup/i18n";
|
|
8
9
|
import { Client, ClientAuthenticationHook, ClientAuthenticationHookEventName, CookieName } from "@authup/core-http-kit";
|
|
9
10
|
import { defineStore, storeToRefs as storeToRefs$1 } from "pinia";
|
|
10
11
|
import { BuiltInPolicyType, PermissionEvaluator, PermissionMemoryProvider, PolicyData, PolicyEngine, TimePolicyInterval, isIntervalForDayOfMonth, isIntervalForDayOfWeek, isIntervalForDayOfYear } from "@authup/access";
|
|
@@ -12,12 +13,12 @@ import { OAuth2Error, deserializeOAuth2Scope, isOpenIDProviderMetadata } from "@
|
|
|
12
13
|
import { useCookies } from "@vueuse/integrations/useCookies";
|
|
13
14
|
import { extend } from "@vuecs/core";
|
|
14
15
|
import { VCButton } from "@vuecs/button";
|
|
15
|
-
import { injectLocale, install as install$2, useTranslation as useTranslation$1 } from "@ilingo/vue";
|
|
16
|
-
import { MemoryStore
|
|
16
|
+
import { injectIlingo, injectLocale, install as install$2, useTranslation as useTranslation$1 } from "@ilingo/vue";
|
|
17
|
+
import { MemoryStore } from "ilingo";
|
|
17
18
|
import { createMerger, isObject, merge } from "smob";
|
|
18
19
|
import { SortDirection } from "rapiq";
|
|
19
20
|
import { ClientManager, EventNameSuffix, buildEventFullName } from "@authup/core-realtime-kit";
|
|
20
|
-
import { DecisionStrategy, ValidatorGroup, base64URLEncode,
|
|
21
|
+
import { DecisionStrategy, ValidatorGroup, base64URLEncode, extendObject, generateName, generateSecret, hasOwnProperty, isBCryptHash, isObject as isObject$1 } from "@authup/kit";
|
|
21
22
|
import { VCPagination } from "@vuecs/pagination";
|
|
22
23
|
import { VCList, VCListBody, VCListEmpty, VCListItem, VCListLoading } from "@vuecs/list";
|
|
23
24
|
//#region \0rolldown/runtime.js
|
|
@@ -3088,8 +3089,8 @@ var _plugin_vue_export_helper_default = (sfc, props) => {
|
|
|
3088
3089
|
};
|
|
3089
3090
|
//#endregion
|
|
3090
3091
|
//#region src/components/utility/form-input-list/AFormInputListItem.vue
|
|
3091
|
-
const _hoisted_1$
|
|
3092
|
-
function _sfc_render$
|
|
3092
|
+
const _hoisted_1$37 = ["disabled"];
|
|
3093
|
+
function _sfc_render$72(_ctx, _cache, $props, $setup, $data, $options) {
|
|
3093
3094
|
const _component_VCIcon = resolveComponent("VCIcon");
|
|
3094
3095
|
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
3095
3096
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
@@ -3106,7 +3107,7 @@ function _sfc_render$54(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
3106
3107
|
type: "button",
|
|
3107
3108
|
class: "btn btn-xs btn-warning",
|
|
3108
3109
|
onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.handleDeleted && _ctx.handleDeleted(...args), ["prevent"]))
|
|
3109
|
-
}, [createVNode(_component_VCIcon, { name: "fa6-solid:minus" })], 8, _hoisted_1$
|
|
3110
|
+
}, [createVNode(_component_VCIcon, { name: "fa6-solid:minus" })], 8, _hoisted_1$37)]),
|
|
3110
3111
|
_: 1
|
|
3111
3112
|
}, 8, [
|
|
3112
3113
|
"modelValue",
|
|
@@ -3118,7 +3119,7 @@ function _sfc_render$54(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
3118
3119
|
_: 1
|
|
3119
3120
|
}, 8, ["field"]);
|
|
3120
3121
|
}
|
|
3121
|
-
var AFormInputListItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AFormInputListItem_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
3122
|
+
var AFormInputListItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AFormInputListItem_vue_vue_type_script_lang_default, [["render", _sfc_render$72]]);
|
|
3122
3123
|
//#endregion
|
|
3123
3124
|
//#region src/core/inject.ts
|
|
3124
3125
|
function inject(key, instance) {
|
|
@@ -3773,72 +3774,6 @@ function buildFormSubmit(input) {
|
|
|
3773
3774
|
}, () => label);
|
|
3774
3775
|
}
|
|
3775
3776
|
//#endregion
|
|
3776
|
-
//#region src/core/translator/constants.ts
|
|
3777
|
-
/**
|
|
3778
|
-
* Catalog namespace names registered by `installTranslator`. Mirrors
|
|
3779
|
-
* ilingo 6's catalog terminology — namespaces are the dotted root paths
|
|
3780
|
-
* under each locale.
|
|
3781
|
-
*
|
|
3782
|
-
* The `validup` namespace (validation-message catalogs for `IssueCode`
|
|
3783
|
-
* keys) is registered automatically by `@ilingo/validup-vue`'s install
|
|
3784
|
-
* and is **not** part of this enum.
|
|
3785
|
-
*/
|
|
3786
|
-
let TranslatorTranslationNamespace = /* @__PURE__ */ function(TranslatorTranslationNamespace) {
|
|
3787
|
-
TranslatorTranslationNamespace["DEFAULT"] = "default";
|
|
3788
|
-
TranslatorTranslationNamespace["CLIENT"] = "authupClient";
|
|
3789
|
-
TranslatorTranslationNamespace["VUECS"] = "vuecs";
|
|
3790
|
-
return TranslatorTranslationNamespace;
|
|
3791
|
-
}({});
|
|
3792
|
-
let TranslatorTranslationVuecsKey = /* @__PURE__ */ function(TranslatorTranslationVuecsKey) {
|
|
3793
|
-
TranslatorTranslationVuecsKey["NO_MORE"] = "noMore";
|
|
3794
|
-
return TranslatorTranslationVuecsKey;
|
|
3795
|
-
}({});
|
|
3796
|
-
let TranslatorTranslationClientKey = /* @__PURE__ */ function(TranslatorTranslationClientKey) {
|
|
3797
|
-
TranslatorTranslationClientKey["NAME_HINT"] = "nameHint";
|
|
3798
|
-
TranslatorTranslationClientKey["DESCRIPTION_HINT"] = "descriptionHint";
|
|
3799
|
-
TranslatorTranslationClientKey["REDIRECT_URI_HINT"] = "redirectURIHint";
|
|
3800
|
-
TranslatorTranslationClientKey["IS_CONFIDENTIAL"] = "isConfidential";
|
|
3801
|
-
TranslatorTranslationClientKey["IS_ACTIVE"] = "isActive";
|
|
3802
|
-
TranslatorTranslationClientKey["HASH_SECRET"] = "hashSecret";
|
|
3803
|
-
return TranslatorTranslationClientKey;
|
|
3804
|
-
}({});
|
|
3805
|
-
let TranslatorTranslationDefaultKey = /* @__PURE__ */ function(TranslatorTranslationDefaultKey) {
|
|
3806
|
-
TranslatorTranslationDefaultKey["ADD"] = "add";
|
|
3807
|
-
TranslatorTranslationDefaultKey["CREATE"] = "create";
|
|
3808
|
-
TranslatorTranslationDefaultKey["DELETE"] = "delete";
|
|
3809
|
-
TranslatorTranslationDefaultKey["GENERATE"] = "generate";
|
|
3810
|
-
TranslatorTranslationDefaultKey["UPDATE"] = "update";
|
|
3811
|
-
TranslatorTranslationDefaultKey["ACTIVE"] = "active";
|
|
3812
|
-
TranslatorTranslationDefaultKey["INACTIVE"] = "inactive";
|
|
3813
|
-
TranslatorTranslationDefaultKey["LOCKED"] = "locked";
|
|
3814
|
-
TranslatorTranslationDefaultKey["NOT_LOCKED"] = "notLocked";
|
|
3815
|
-
TranslatorTranslationDefaultKey["VALUE_IS_REGEX"] = "valueIsRegex";
|
|
3816
|
-
TranslatorTranslationDefaultKey["CLIENT"] = "client";
|
|
3817
|
-
TranslatorTranslationDefaultKey["CLIENTS"] = "clients";
|
|
3818
|
-
TranslatorTranslationDefaultKey["CLIENT_SCOPES"] = "clientScopes";
|
|
3819
|
-
TranslatorTranslationDefaultKey["DISPLAY_NAME"] = "displayName";
|
|
3820
|
-
TranslatorTranslationDefaultKey["EMAIL"] = "email";
|
|
3821
|
-
TranslatorTranslationDefaultKey["EXTERNAL_ID"] = "externalId";
|
|
3822
|
-
TranslatorTranslationDefaultKey["HASHED"] = "hashed";
|
|
3823
|
-
TranslatorTranslationDefaultKey["OVERVIEW"] = "overview";
|
|
3824
|
-
TranslatorTranslationDefaultKey["IDENTITY_PROVIDERS"] = "identityProviders";
|
|
3825
|
-
TranslatorTranslationDefaultKey["NAME"] = "name";
|
|
3826
|
-
TranslatorTranslationDefaultKey["DECISION_STRATEGY"] = "decisionStrategy";
|
|
3827
|
-
TranslatorTranslationDefaultKey["DESCRIPTION"] = "description";
|
|
3828
|
-
TranslatorTranslationDefaultKey["PERMISSIONS"] = "permissions";
|
|
3829
|
-
TranslatorTranslationDefaultKey["POLICY"] = "policy";
|
|
3830
|
-
TranslatorTranslationDefaultKey["POLICIES"] = "policies";
|
|
3831
|
-
TranslatorTranslationDefaultKey["REALM"] = "realm";
|
|
3832
|
-
TranslatorTranslationDefaultKey["ROBOTS"] = "robots";
|
|
3833
|
-
TranslatorTranslationDefaultKey["REALMS"] = "realms";
|
|
3834
|
-
TranslatorTranslationDefaultKey["ROLES"] = "roles";
|
|
3835
|
-
TranslatorTranslationDefaultKey["SCOPES"] = "scopes";
|
|
3836
|
-
TranslatorTranslationDefaultKey["SECRET"] = "secret";
|
|
3837
|
-
TranslatorTranslationDefaultKey["REDIRECT_URIS"] = "redirectUris";
|
|
3838
|
-
TranslatorTranslationDefaultKey["USERS"] = "users";
|
|
3839
|
-
return TranslatorTranslationDefaultKey;
|
|
3840
|
-
}({});
|
|
3841
|
-
//#endregion
|
|
3842
3777
|
//#region src/core/translator/singleton.ts
|
|
3843
3778
|
function injectTranslatorLocale() {
|
|
3844
3779
|
return injectLocale();
|
|
@@ -3847,6 +3782,24 @@ function useTranslation(input) {
|
|
|
3847
3782
|
return useTranslation$1(input);
|
|
3848
3783
|
}
|
|
3849
3784
|
/**
|
|
3785
|
+
* Imperative counterpart to {@see useTranslation} for non-reactive,
|
|
3786
|
+
* event-time lookups — toast bodies built when a mutation resolves, or
|
|
3787
|
+
* nav-label resolution inside the async `Navigation.reduce()` pipeline,
|
|
3788
|
+
* where a render-time `Ref` is the wrong shape. Captures the injected
|
|
3789
|
+
* ilingo instance + locale `Ref` at call site (so it must run in
|
|
3790
|
+
* `setup()`), then returns a translate function that reads the current
|
|
3791
|
+
* `locale.value` on each invocation. Missing keys resolve to the bare
|
|
3792
|
+
* key value rather than `undefined`.
|
|
3793
|
+
*/
|
|
3794
|
+
function useTranslator() {
|
|
3795
|
+
const ilingo = injectIlingo();
|
|
3796
|
+
const locale = injectLocale();
|
|
3797
|
+
return async (ctx) => await ilingo.get({
|
|
3798
|
+
...ctx,
|
|
3799
|
+
locale: locale.value
|
|
3800
|
+
}) ?? ctx.key;
|
|
3801
|
+
}
|
|
3802
|
+
/**
|
|
3850
3803
|
* Translate the visible errors of a `@validup/vue` `FieldState` to
|
|
3851
3804
|
* localized messages. Successor to the previous
|
|
3852
3805
|
* `useTranslationsForBaseValidation` — reads `fieldState.$errors`
|
|
@@ -3867,116 +3820,29 @@ function useTranslationsForComposable(composable) {
|
|
|
3867
3820
|
//#endregion
|
|
3868
3821
|
//#region src/core/translator/helpers.ts
|
|
3869
3822
|
/**
|
|
3870
|
-
* Resolve a batch of translations
|
|
3871
|
-
*
|
|
3823
|
+
* Resolve a batch of translations spanning any number of namespaces.
|
|
3824
|
+
* Each element supplies its own `namespace`; the result is a reactive
|
|
3825
|
+
* keyed map of unwrapped strings — access as `map.key` (no `.value`) in
|
|
3826
|
+
* script, interpolation, and attribute bindings alike. The output key is
|
|
3827
|
+
* the element's `key`.
|
|
3872
3828
|
*/
|
|
3873
|
-
function
|
|
3829
|
+
function useTranslations(elements) {
|
|
3874
3830
|
const output = {};
|
|
3875
|
-
for (const element of elements) output[element.key] = useTranslation(
|
|
3831
|
+
for (const element of elements) output[element.key] = useTranslation(element);
|
|
3832
|
+
return reactive(output);
|
|
3833
|
+
}
|
|
3834
|
+
/**
|
|
3835
|
+
* Single-namespace sugar over {@see useTranslations}: applies one shared
|
|
3836
|
+
* `namespace` to every element. Retained for batches that live entirely
|
|
3837
|
+
* in one namespace (e.g. the `authupApp` chrome labels).
|
|
3838
|
+
*/
|
|
3839
|
+
function useTranslationsForNamespace(namespace, elements) {
|
|
3840
|
+
return useTranslations(elements.map((element) => ({
|
|
3876
3841
|
...element,
|
|
3877
3842
|
namespace
|
|
3878
|
-
});
|
|
3879
|
-
return output;
|
|
3843
|
+
})));
|
|
3880
3844
|
}
|
|
3881
3845
|
//#endregion
|
|
3882
|
-
//#region src/core/translator/de/client.ts
|
|
3883
|
-
const TranslatorTranslationClientGerman = {
|
|
3884
|
-
["nameHint"]: "Etwas, das Benutzer erkennen und vertrauen werden",
|
|
3885
|
-
["descriptionHint"]: "Dies wird allen Benutzern dieser Anwendung angezeigt",
|
|
3886
|
-
["redirectURIHint"]: "URI-Muster, zu dem ein Browser nach einem erfolgreichen Login weiterleiten kann",
|
|
3887
|
-
["isConfidential"]: "Ist vertraulich?",
|
|
3888
|
-
["isActive"]: "Ist aktiv?",
|
|
3889
|
-
["hashSecret"]: "Geheimnis hashen?"
|
|
3890
|
-
};
|
|
3891
|
-
//#endregion
|
|
3892
|
-
//#region src/core/translator/de/default.ts
|
|
3893
|
-
const TranslatorTranslationDefaultGerman = {
|
|
3894
|
-
["add"]: "hinzufügen",
|
|
3895
|
-
["create"]: "erstellen",
|
|
3896
|
-
["delete"]: "löschen",
|
|
3897
|
-
["generate"]: "generieren",
|
|
3898
|
-
["update"]: "aktualisieren",
|
|
3899
|
-
["active"]: "aktiv",
|
|
3900
|
-
["inactive"]: "inaktiv",
|
|
3901
|
-
["locked"]: "gesperrt",
|
|
3902
|
-
["notLocked"]: "nicht gesperrt",
|
|
3903
|
-
["valueIsRegex"]: "Wert ist regex pattern?",
|
|
3904
|
-
["client"]: "Client",
|
|
3905
|
-
["clients"]: "Clients",
|
|
3906
|
-
["clientScopes"]: "Client-Bereiche",
|
|
3907
|
-
["displayName"]: "Anzeigename",
|
|
3908
|
-
["email"]: "E-Mail",
|
|
3909
|
-
["externalId"]: "externe ID",
|
|
3910
|
-
["hashed"]: "gehasht",
|
|
3911
|
-
["overview"]: "Überblick",
|
|
3912
|
-
["identityProviders"]: "Identitätsanbieter",
|
|
3913
|
-
["name"]: "Name",
|
|
3914
|
-
["decisionStrategy"]: "Entscheidungsstrategie",
|
|
3915
|
-
["description"]: "Beschreibung",
|
|
3916
|
-
["permissions"]: "Berechtigungen",
|
|
3917
|
-
["policy"]: "Richtlinie",
|
|
3918
|
-
["policies"]: "Richtlinien",
|
|
3919
|
-
["realm"]: "Organisation",
|
|
3920
|
-
["realms"]: "Organisationen",
|
|
3921
|
-
["roles"]: "Rollen",
|
|
3922
|
-
["scopes"]: "Bereiche",
|
|
3923
|
-
["secret"]: "Geheimnis",
|
|
3924
|
-
["redirectUris"]: "Weiterleitungs-URIs",
|
|
3925
|
-
["users"]: "Benutzer"
|
|
3926
|
-
};
|
|
3927
|
-
//#endregion
|
|
3928
|
-
//#region src/core/translator/de/vuecs.ts
|
|
3929
|
-
const TranslatorTranslationVuecsGerman = { ["noMore"]: "Keine weiteren {{name}} verfügbar" };
|
|
3930
|
-
//#endregion
|
|
3931
|
-
//#region src/core/translator/en/client.ts
|
|
3932
|
-
const TranslatorTranslationClientEnglish = {
|
|
3933
|
-
["nameHint"]: "Something users will recognize and trust",
|
|
3934
|
-
["descriptionHint"]: "Displayed to all users of this application",
|
|
3935
|
-
["redirectURIHint"]: "URI pattern a browser can redirect to after a successful login",
|
|
3936
|
-
["isConfidential"]: "Is confidential?",
|
|
3937
|
-
["isActive"]: "Is active?",
|
|
3938
|
-
["hashSecret"]: "Hash secret?"
|
|
3939
|
-
};
|
|
3940
|
-
//#endregion
|
|
3941
|
-
//#region src/core/translator/en/default.ts
|
|
3942
|
-
const TranslatorTranslationDefaultEnglish = {
|
|
3943
|
-
["add"]: "add",
|
|
3944
|
-
["create"]: "create",
|
|
3945
|
-
["delete"]: "delete",
|
|
3946
|
-
["generate"]: "generate",
|
|
3947
|
-
["update"]: "update",
|
|
3948
|
-
["active"]: "active",
|
|
3949
|
-
["inactive"]: "inactive",
|
|
3950
|
-
["locked"]: "locked",
|
|
3951
|
-
["notLocked"]: "not locked",
|
|
3952
|
-
["valueIsRegex"]: "Value is regex pattern?",
|
|
3953
|
-
["client"]: "update",
|
|
3954
|
-
["clients"]: "clients",
|
|
3955
|
-
["clientScopes"]: "client scopes",
|
|
3956
|
-
["displayName"]: "display name",
|
|
3957
|
-
["email"]: "email",
|
|
3958
|
-
["externalId"]: "external id",
|
|
3959
|
-
["hashed"]: "hashed",
|
|
3960
|
-
["overview"]: "overview",
|
|
3961
|
-
["identityProviders"]: "identity providers",
|
|
3962
|
-
["name"]: "name",
|
|
3963
|
-
["decisionStrategy"]: "decision strategy",
|
|
3964
|
-
["description"]: "description",
|
|
3965
|
-
["policy"]: "policy",
|
|
3966
|
-
["policies"]: "policies",
|
|
3967
|
-
["permissions"]: "permissions",
|
|
3968
|
-
["realm"]: "realm",
|
|
3969
|
-
["realms"]: "realms",
|
|
3970
|
-
["roles"]: "roles",
|
|
3971
|
-
["scopes"]: "scopes",
|
|
3972
|
-
["secret"]: "secret",
|
|
3973
|
-
["redirectUris"]: "redirect uri(s)",
|
|
3974
|
-
["users"]: "users"
|
|
3975
|
-
};
|
|
3976
|
-
//#endregion
|
|
3977
|
-
//#region src/core/translator/en/vuecs.ts
|
|
3978
|
-
const TranslatorTranslationVuecsEnglish = { ["noMore"]: "No more {{name}} available" };
|
|
3979
|
-
//#endregion
|
|
3980
3846
|
//#region src/core/translator/install.ts
|
|
3981
3847
|
/**
|
|
3982
3848
|
* Three-stage install:
|
|
@@ -3991,12 +3857,13 @@ const TranslatorTranslationVuecsEnglish = { ["noMore"]: "No more {{name}} availa
|
|
|
3991
3857
|
* rather than globally — keeps the form's `components: {}` registry as
|
|
3992
3858
|
* the single source of truth for what's used in its template.
|
|
3993
3859
|
*
|
|
3994
|
-
* Authup-specific catalogs (`
|
|
3995
|
-
*
|
|
3996
|
-
*
|
|
3997
|
-
*
|
|
3998
|
-
*
|
|
3999
|
-
*
|
|
3860
|
+
* Authup-specific catalogs (`authupEntity`, `authupField`,
|
|
3861
|
+
* `authupAction`, `authupCommon`, `authupClient`, `authupApp`,
|
|
3862
|
+
* `vuecs`, `authupError`) ship through the same `MemoryStore`. The authored
|
|
3863
|
+
* translations live in the framework-agnostic `@authup/i18n` package,
|
|
3864
|
+
* which already exports them as an ilingo `CatalogNode` (`CATALOGS`) —
|
|
3865
|
+
* the canonical ingestion format — so this install just hands it to the
|
|
3866
|
+
* store directly with no per-consumer reconstruction.
|
|
4000
3867
|
*
|
|
4001
3868
|
* Zod-driven validators flow through `@validup/zod`'s
|
|
4002
3869
|
* `createValidator()`, which maps each `ZodIssue` to a specific validup
|
|
@@ -4014,15 +3881,7 @@ const TranslatorTranslationVuecsEnglish = { ["noMore"]: "No more {{name}} availa
|
|
|
4014
3881
|
*/
|
|
4015
3882
|
function installTranslator(app, options = {}) {
|
|
4016
3883
|
install$2(app, {
|
|
4017
|
-
store: new MemoryStore({ data:
|
|
4018
|
-
defineNamespace("authupClient", [defineTranslations(TranslatorTranslationClientEnglish)]),
|
|
4019
|
-
defineNamespace("default", [defineTranslations(TranslatorTranslationDefaultEnglish)]),
|
|
4020
|
-
defineNamespace("vuecs", [defineTranslations(TranslatorTranslationVuecsEnglish)])
|
|
4021
|
-
]), defineLocale("de", [
|
|
4022
|
-
defineNamespace("authupClient", [defineTranslations(TranslatorTranslationClientGerman)]),
|
|
4023
|
-
defineNamespace("default", [defineTranslations(TranslatorTranslationDefaultGerman)]),
|
|
4024
|
-
defineNamespace("vuecs", [defineTranslations(TranslatorTranslationVuecsGerman)])
|
|
4025
|
-
])]) }),
|
|
3884
|
+
store: new MemoryStore({ data: CATALOGS }),
|
|
4026
3885
|
locale: options.locale
|
|
4027
3886
|
});
|
|
4028
3887
|
install$1(app);
|
|
@@ -4043,12 +3902,12 @@ function installTranslator(app, options = {}) {
|
|
|
4043
3902
|
function buildSubmitButtonDefaults() {
|
|
4044
3903
|
return {
|
|
4045
3904
|
createText: useTranslation({
|
|
4046
|
-
namespace:
|
|
4047
|
-
key:
|
|
3905
|
+
namespace: TranslatorTranslationNamespace.ACTION,
|
|
3906
|
+
key: TranslatorTranslationActionKey.CREATE
|
|
4048
3907
|
}),
|
|
4049
3908
|
updateText: useTranslation({
|
|
4050
|
-
namespace:
|
|
4051
|
-
key:
|
|
3909
|
+
namespace: TranslatorTranslationNamespace.ACTION,
|
|
3910
|
+
key: TranslatorTranslationActionKey.UPDATE
|
|
4052
3911
|
}),
|
|
4053
3912
|
createIcon: "fa6-solid:plus",
|
|
4054
3913
|
updateIcon: "fa6-solid:floppy-disk",
|
|
@@ -4274,54 +4133,9 @@ function extractValidupResultsFromChild(composable, name, keys) {
|
|
|
4274
4133
|
return output;
|
|
4275
4134
|
}
|
|
4276
4135
|
//#endregion
|
|
4277
|
-
//#region src/components/utility/translation/ATranslationDefault.vue?vue&type=script&lang.ts
|
|
4278
|
-
var ATranslationDefault_vue_vue_type_script_lang_default = defineComponent({
|
|
4279
|
-
components: { ATranslation: defineComponent({
|
|
4280
|
-
props: {
|
|
4281
|
-
group: {
|
|
4282
|
-
type: String,
|
|
4283
|
-
required: true
|
|
4284
|
-
},
|
|
4285
|
-
name: {
|
|
4286
|
-
type: String,
|
|
4287
|
-
required: true
|
|
4288
|
-
}
|
|
4289
|
-
},
|
|
4290
|
-
setup(props, { slots }) {
|
|
4291
|
-
const translation = useTranslation({
|
|
4292
|
-
namespace: props.group,
|
|
4293
|
-
key: props.name
|
|
4294
|
-
});
|
|
4295
|
-
return () => {
|
|
4296
|
-
if (hasNormalizedSlot("default", slots)) return normalizeSlot("default", { data: translation.value }, slots);
|
|
4297
|
-
return [translation.value];
|
|
4298
|
-
};
|
|
4299
|
-
}
|
|
4300
|
-
}) },
|
|
4301
|
-
props: { name: {
|
|
4302
|
-
type: String,
|
|
4303
|
-
required: true
|
|
4304
|
-
} },
|
|
4305
|
-
setup() {
|
|
4306
|
-
return { TranslatorTranslationNamespace };
|
|
4307
|
-
}
|
|
4308
|
-
});
|
|
4309
|
-
//#endregion
|
|
4310
|
-
//#region src/components/utility/translation/ATranslationDefault.vue
|
|
4311
|
-
function _sfc_render$53(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4312
|
-
const _component_ATranslation = resolveComponent("ATranslation");
|
|
4313
|
-
return openBlock(), createBlock(_component_ATranslation, {
|
|
4314
|
-
group: _ctx.TranslatorTranslationNamespace.DEFAULT,
|
|
4315
|
-
name: _ctx.name
|
|
4316
|
-
}, null, 8, ["group", "name"]);
|
|
4317
|
-
}
|
|
4318
|
-
//#endregion
|
|
4319
4136
|
//#region src/components/utility/form-input-list/AFormInputList.vue?vue&type=script&lang.ts
|
|
4320
4137
|
var AFormInputList_vue_vue_type_script_lang_default = defineComponent({
|
|
4321
|
-
components: {
|
|
4322
|
-
ATranslationDefault: /* @__PURE__ */ _plugin_vue_export_helper_default(ATranslationDefault_vue_vue_type_script_lang_default, [["render", _sfc_render$53]]),
|
|
4323
|
-
AFormInputListItem: AFormInputListItem_default
|
|
4324
|
-
},
|
|
4138
|
+
components: { AFormInputListItem: AFormInputListItem_default },
|
|
4325
4139
|
props: {
|
|
4326
4140
|
names: {
|
|
4327
4141
|
type: Array,
|
|
@@ -4338,6 +4152,10 @@ var AFormInputList_vue_vue_type_script_lang_default = defineComponent({
|
|
|
4338
4152
|
},
|
|
4339
4153
|
emits: ["changed"],
|
|
4340
4154
|
setup(props, setup) {
|
|
4155
|
+
const translationsAction = useTranslations([{
|
|
4156
|
+
namespace: TranslatorTranslationNamespace.ACTION,
|
|
4157
|
+
key: TranslatorTranslationActionKey.ADD
|
|
4158
|
+
}]);
|
|
4341
4159
|
let counter = 0;
|
|
4342
4160
|
const items = ref([]);
|
|
4343
4161
|
const add = (item) => {
|
|
@@ -4375,34 +4193,30 @@ var AFormInputList_vue_vue_type_script_lang_default = defineComponent({
|
|
|
4375
4193
|
canDrop,
|
|
4376
4194
|
handleDeleted,
|
|
4377
4195
|
handleUpdated,
|
|
4378
|
-
items
|
|
4196
|
+
items,
|
|
4197
|
+
translationsAction
|
|
4379
4198
|
};
|
|
4380
4199
|
}
|
|
4381
4200
|
});
|
|
4382
4201
|
//#endregion
|
|
4383
4202
|
//#region src/components/utility/form-input-list/AFormInputList.vue
|
|
4384
|
-
const _hoisted_1$
|
|
4385
|
-
const _hoisted_2$
|
|
4386
|
-
const _hoisted_3$
|
|
4387
|
-
const _hoisted_4$
|
|
4388
|
-
const _hoisted_5$
|
|
4389
|
-
const _hoisted_6$
|
|
4390
|
-
function _sfc_render$
|
|
4203
|
+
const _hoisted_1$36 = { class: "flex flex-col gap-2" };
|
|
4204
|
+
const _hoisted_2$19 = { class: "flex flex-row" };
|
|
4205
|
+
const _hoisted_3$15 = { class: "self-end" };
|
|
4206
|
+
const _hoisted_4$13 = { class: "ms-auto" };
|
|
4207
|
+
const _hoisted_5$12 = ["disabled"];
|
|
4208
|
+
const _hoisted_6$10 = { class: "flex flex-col gap-1" };
|
|
4209
|
+
function _sfc_render$71(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4391
4210
|
const _component_VCIcon = resolveComponent("VCIcon");
|
|
4392
|
-
const _component_ATranslationDefault = resolveComponent("ATranslationDefault");
|
|
4393
4211
|
const _component_AFormInputListItem = resolveComponent("AFormInputListItem");
|
|
4394
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
4395
|
-
createElementVNode("div", _hoisted_2$
|
|
4212
|
+
return openBlock(), createElementBlock("div", _hoisted_1$36, [
|
|
4213
|
+
createElementVNode("div", _hoisted_2$19, [createElementVNode("div", _hoisted_3$15, [renderSlot(_ctx.$slots, "label", {}, () => [_cache[1] || (_cache[1] = createTextVNode(" Names ", -1))])]), createElementVNode("div", _hoisted_4$13, [createElementVNode("button", {
|
|
4396
4214
|
class: "btn btn-xs btn-primary",
|
|
4397
4215
|
type: "button",
|
|
4398
4216
|
disabled: !_ctx.canAdd,
|
|
4399
4217
|
onClick: _cache[0] || (_cache[0] = withModifiers(($event) => _ctx.add(), ["prevent"]))
|
|
4400
|
-
}, [
|
|
4401
|
-
|
|
4402
|
-
_cache[2] || (_cache[2] = createTextVNode()),
|
|
4403
|
-
createVNode(_component_ATranslationDefault, { name: "add" })
|
|
4404
|
-
], 8, _hoisted_5$8)])]),
|
|
4405
|
-
createElementVNode("div", _hoisted_6$7, [_ctx.items.length === 0 ? renderSlot(_ctx.$slots, "noItems", { key: 0 }, () => [_cache[3] || (_cache[3] = 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) => {
|
|
4218
|
+
}, [createVNode(_component_VCIcon, { name: "fa6-solid:plus" }), createTextVNode(" " + toDisplayString(_ctx.translationsAction.add), 1)], 8, _hoisted_5$12)])]),
|
|
4219
|
+
createElementVNode("div", _hoisted_6$10, [_ctx.items.length === 0 ? renderSlot(_ctx.$slots, "noItems", { key: 0 }, () => [_cache[2] || (_cache[2] = 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) => {
|
|
4406
4220
|
return renderSlot(_ctx.$slots, "default", {
|
|
4407
4221
|
key: item.id,
|
|
4408
4222
|
item,
|
|
@@ -4428,7 +4242,7 @@ function _sfc_render$52(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4428
4242
|
renderSlot(_ctx.$slots, "hint")
|
|
4429
4243
|
]);
|
|
4430
4244
|
}
|
|
4431
|
-
var AFormInputList_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AFormInputList_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
4245
|
+
var AFormInputList_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AFormInputList_vue_vue_type_script_lang_default, [["render", _sfc_render$71]]);
|
|
4432
4246
|
//#endregion
|
|
4433
4247
|
//#region src/components/utility/pagination/module.ts
|
|
4434
4248
|
function buildPagination(ctx) {
|
|
@@ -5172,7 +4986,7 @@ function defineEntityManager(ctx) {
|
|
|
5172
4986
|
}
|
|
5173
4987
|
//#endregion
|
|
5174
4988
|
//#region src/components/utility/toggle-button/AToggleButton.vue?vue&type=script&lang.ts
|
|
5175
|
-
var AToggleButton_vue_vue_type_script_lang_default = defineComponent({
|
|
4989
|
+
var AToggleButton_vue_vue_type_script_lang_default$1 = defineComponent({
|
|
5176
4990
|
props: {
|
|
5177
4991
|
value: {
|
|
5178
4992
|
type: Boolean,
|
|
@@ -5194,8 +5008,8 @@ var AToggleButton_vue_vue_type_script_lang_default = defineComponent({
|
|
|
5194
5008
|
});
|
|
5195
5009
|
//#endregion
|
|
5196
5010
|
//#region src/components/utility/toggle-button/AToggleButton.vue
|
|
5197
|
-
const _hoisted_1$
|
|
5198
|
-
function _sfc_render$
|
|
5011
|
+
const _hoisted_1$35 = ["aria-label", "disabled"];
|
|
5012
|
+
function _sfc_render$70(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5199
5013
|
const _component_VCIcon = resolveComponent("VCIcon");
|
|
5200
5014
|
return openBlock(), createElementBlock("button", {
|
|
5201
5015
|
type: "button",
|
|
@@ -5210,9 +5024,9 @@ function _sfc_render$51(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5210
5024
|
}, [createVNode(_component_VCIcon, {
|
|
5211
5025
|
"aria-hidden": "true",
|
|
5212
5026
|
name: _ctx.isBusy ? "fa6-solid:question" : _ctx.value ? "fa6-solid:minus" : "fa6-solid:plus"
|
|
5213
|
-
}, null, 8, ["name"])], 10, _hoisted_1$
|
|
5027
|
+
}, null, 8, ["name"])], 10, _hoisted_1$35);
|
|
5214
5028
|
}
|
|
5215
|
-
var AToggleButton_default$1 = /*#__PURE__*/ _plugin_vue_export_helper_default(AToggleButton_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
5029
|
+
var AToggleButton_default$1 = /*#__PURE__*/ _plugin_vue_export_helper_default(AToggleButton_vue_vue_type_script_lang_default$1, [["render", _sfc_render$70]]);
|
|
5216
5030
|
//#endregion
|
|
5217
5031
|
//#region src/components/utility/toggle-button/module.ts
|
|
5218
5032
|
function renderToggleButton(options) {
|
|
@@ -5429,8 +5243,8 @@ const AEntityDelete = defineComponent({
|
|
|
5429
5243
|
}
|
|
5430
5244
|
});
|
|
5431
5245
|
const translation = useTranslation({
|
|
5432
|
-
namespace:
|
|
5433
|
-
key:
|
|
5246
|
+
namespace: TranslatorTranslationNamespace.ACTION,
|
|
5247
|
+
key: TranslatorTranslationActionKey.DELETE
|
|
5434
5248
|
});
|
|
5435
5249
|
const render = () => {
|
|
5436
5250
|
let tag = "button";
|
|
@@ -5505,8 +5319,8 @@ const ATitle = defineComponent({
|
|
|
5505
5319
|
slots: Object,
|
|
5506
5320
|
setup(props, { slots }) {
|
|
5507
5321
|
const translation = useTranslation({
|
|
5508
|
-
namespace:
|
|
5509
|
-
key:
|
|
5322
|
+
namespace: TranslatorTranslationNamespace.COMMON,
|
|
5323
|
+
key: TranslatorTranslationCommonKey.OVERVIEW
|
|
5510
5324
|
});
|
|
5511
5325
|
return () => buildTitle({
|
|
5512
5326
|
slots,
|
|
@@ -5526,14 +5340,14 @@ const LanguageSwitcherDropdown = defineComponent({
|
|
|
5526
5340
|
async setup(props) {
|
|
5527
5341
|
const opened = ref(false);
|
|
5528
5342
|
const locale = injectLocale();
|
|
5529
|
-
const
|
|
5530
|
-
|
|
5531
|
-
|
|
5532
|
-
|
|
5533
|
-
|
|
5534
|
-
|
|
5535
|
-
|
|
5536
|
-
return
|
|
5343
|
+
const elements = computed(() => LOCALES.map((descriptor) => ({
|
|
5344
|
+
value: descriptor.code,
|
|
5345
|
+
label: descriptor.nativeName,
|
|
5346
|
+
active: locale.value === descriptor.code
|
|
5347
|
+
})));
|
|
5348
|
+
const activeCode = computed(() => {
|
|
5349
|
+
const match = LOCALES.find((descriptor) => descriptor.code === locale.value);
|
|
5350
|
+
return match ? match.code : locale.value;
|
|
5537
5351
|
});
|
|
5538
5352
|
const setLocale = (input) => {
|
|
5539
5353
|
locale.value = input;
|
|
@@ -5545,7 +5359,7 @@ const LanguageSwitcherDropdown = defineComponent({
|
|
|
5545
5359
|
event.preventDefault();
|
|
5546
5360
|
opened.value = !opened.value;
|
|
5547
5361
|
}
|
|
5548
|
-
}, [
|
|
5362
|
+
}, [activeCode.value]), h("div", { class: [
|
|
5549
5363
|
"dropdown-menu",
|
|
5550
5364
|
"dropdown-menu-end",
|
|
5551
5365
|
opened.value ? "show" : ""
|
|
@@ -5555,7 +5369,7 @@ const LanguageSwitcherDropdown = defineComponent({
|
|
|
5555
5369
|
setLocale(element.value);
|
|
5556
5370
|
},
|
|
5557
5371
|
class: ["dropdown-item", element.active ? "active" : ""]
|
|
5558
|
-
}, [element.
|
|
5372
|
+
}, [element.label])))]);
|
|
5559
5373
|
}
|
|
5560
5374
|
});
|
|
5561
5375
|
//#endregion
|
|
@@ -5588,6 +5402,175 @@ const AFormSubmit = defineComponent({
|
|
|
5588
5402
|
}
|
|
5589
5403
|
});
|
|
5590
5404
|
//#endregion
|
|
5405
|
+
//#region src/components/utility/ANameInput.vue?vue&type=script&lang.ts
|
|
5406
|
+
/**
|
|
5407
|
+
* Name input with an attached "regenerate" button rendered inside the
|
|
5408
|
+
* `VCFormInput` group append slot. Clicking the button emits a freshly
|
|
5409
|
+
* generated, slug-safe entity name (e.g. `brave-otter-1a2b3c`) through the
|
|
5410
|
+
* same `update:modelValue` channel as typing, so callers can bind it with
|
|
5411
|
+
* `v-model` or `:model-value` + `@update:model-value` exactly like a plain
|
|
5412
|
+
* `<VCFormInput>`.
|
|
5413
|
+
*
|
|
5414
|
+
* When `disabled` is set (built-in / name-locked / master entities) the append
|
|
5415
|
+
* button is omitted and a plain disabled input is rendered.
|
|
5416
|
+
*/
|
|
5417
|
+
var ANameInput_vue_vue_type_script_lang_default = defineComponent({
|
|
5418
|
+
name: "ANameInput",
|
|
5419
|
+
components: { VCFormInput },
|
|
5420
|
+
props: {
|
|
5421
|
+
modelValue: {
|
|
5422
|
+
type: String,
|
|
5423
|
+
default: ""
|
|
5424
|
+
},
|
|
5425
|
+
disabled: {
|
|
5426
|
+
type: Boolean,
|
|
5427
|
+
default: false
|
|
5428
|
+
},
|
|
5429
|
+
label: {
|
|
5430
|
+
type: String,
|
|
5431
|
+
default: void 0
|
|
5432
|
+
}
|
|
5433
|
+
},
|
|
5434
|
+
emits: ["update:modelValue"],
|
|
5435
|
+
setup(props, { emit }) {
|
|
5436
|
+
const translationsDefault = useTranslations([{
|
|
5437
|
+
namespace: TranslatorTranslationNamespace.ACTION,
|
|
5438
|
+
key: TranslatorTranslationActionKey.GENERATE
|
|
5439
|
+
}]);
|
|
5440
|
+
const buttonLabel = computed(() => props.label ?? translationsDefault.generate);
|
|
5441
|
+
const onUpdate = (value) => {
|
|
5442
|
+
emit("update:modelValue", value);
|
|
5443
|
+
};
|
|
5444
|
+
const generate = () => {
|
|
5445
|
+
emit("update:modelValue", generateName());
|
|
5446
|
+
};
|
|
5447
|
+
return {
|
|
5448
|
+
buttonLabel,
|
|
5449
|
+
onUpdate,
|
|
5450
|
+
generate
|
|
5451
|
+
};
|
|
5452
|
+
}
|
|
5453
|
+
});
|
|
5454
|
+
//#endregion
|
|
5455
|
+
//#region src/components/utility/ANameInput.vue
|
|
5456
|
+
const _hoisted_1$34 = ["aria-label", "title"];
|
|
5457
|
+
function _sfc_render$69(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5458
|
+
const _component_VCIcon = resolveComponent("VCIcon");
|
|
5459
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
5460
|
+
return openBlock(), createBlock(_component_VCFormInput, {
|
|
5461
|
+
"model-value": _ctx.modelValue ?? "",
|
|
5462
|
+
disabled: _ctx.disabled,
|
|
5463
|
+
group: !_ctx.disabled,
|
|
5464
|
+
"onUpdate:modelValue": _ctx.onUpdate
|
|
5465
|
+
}, createSlots({ _: 2 }, [!_ctx.disabled ? {
|
|
5466
|
+
name: "groupAppend",
|
|
5467
|
+
fn: withCtx(({ class: appendClass }) => [createElementVNode("button", {
|
|
5468
|
+
type: "button",
|
|
5469
|
+
class: normalizeClass([appendClass, "cursor-pointer transition-colors hover:bg-bg-elevated"]),
|
|
5470
|
+
"aria-label": _ctx.buttonLabel,
|
|
5471
|
+
title: _ctx.buttonLabel,
|
|
5472
|
+
onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.generate && _ctx.generate(...args), ["prevent"]))
|
|
5473
|
+
}, [createVNode(_component_VCIcon, {
|
|
5474
|
+
"aria-hidden": "true",
|
|
5475
|
+
name: "fa6-solid:arrows-rotate"
|
|
5476
|
+
})], 10, _hoisted_1$34)]),
|
|
5477
|
+
key: "0"
|
|
5478
|
+
} : void 0]), 1032, [
|
|
5479
|
+
"model-value",
|
|
5480
|
+
"disabled",
|
|
5481
|
+
"group",
|
|
5482
|
+
"onUpdate:modelValue"
|
|
5483
|
+
]);
|
|
5484
|
+
}
|
|
5485
|
+
var ANameInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ANameInput_vue_vue_type_script_lang_default, [["render", _sfc_render$69]]);
|
|
5486
|
+
//#endregion
|
|
5487
|
+
//#region src/components/utility/ASecretInput.vue?vue&type=script&lang.ts
|
|
5488
|
+
/**
|
|
5489
|
+
* Secret input with an attached "regenerate" button rendered inside the
|
|
5490
|
+
* `VCFormInput` group append slot. Clicking the button emits a freshly
|
|
5491
|
+
* generated, cryptographically strong secret through the same
|
|
5492
|
+
* `update:modelValue` channel as typing, so callers can bind it with
|
|
5493
|
+
* `v-model` or `:model-value` + `@update:model-value` exactly like a plain
|
|
5494
|
+
* `<VCFormInput>`.
|
|
5495
|
+
*
|
|
5496
|
+
* Mirrors `ANameInput` so name and secret fields share the same
|
|
5497
|
+
* input + group-append layout. When `disabled` is set the append button is
|
|
5498
|
+
* omitted and a plain disabled input is rendered.
|
|
5499
|
+
*
|
|
5500
|
+
* The button generates client-side only (a user click), so it never affects
|
|
5501
|
+
* SSR. Callers must likewise generate the initial value client-side (e.g. in
|
|
5502
|
+
* `onMounted`) — a secret must not be derived from a hydration-stable seed.
|
|
5503
|
+
*/
|
|
5504
|
+
var ASecretInput_vue_vue_type_script_lang_default = defineComponent({
|
|
5505
|
+
name: "ASecretInput",
|
|
5506
|
+
components: { VCFormInput },
|
|
5507
|
+
props: {
|
|
5508
|
+
modelValue: {
|
|
5509
|
+
type: String,
|
|
5510
|
+
default: ""
|
|
5511
|
+
},
|
|
5512
|
+
disabled: {
|
|
5513
|
+
type: Boolean,
|
|
5514
|
+
default: false
|
|
5515
|
+
},
|
|
5516
|
+
label: {
|
|
5517
|
+
type: String,
|
|
5518
|
+
default: void 0
|
|
5519
|
+
}
|
|
5520
|
+
},
|
|
5521
|
+
emits: ["update:modelValue"],
|
|
5522
|
+
setup(props, { emit }) {
|
|
5523
|
+
const translationsDefault = useTranslations([{
|
|
5524
|
+
namespace: TranslatorTranslationNamespace.ACTION,
|
|
5525
|
+
key: TranslatorTranslationActionKey.GENERATE
|
|
5526
|
+
}]);
|
|
5527
|
+
const buttonLabel = computed(() => props.label ?? translationsDefault.generate);
|
|
5528
|
+
const onUpdate = (value) => {
|
|
5529
|
+
emit("update:modelValue", value);
|
|
5530
|
+
};
|
|
5531
|
+
const generate = () => {
|
|
5532
|
+
emit("update:modelValue", generateSecret());
|
|
5533
|
+
};
|
|
5534
|
+
return {
|
|
5535
|
+
buttonLabel,
|
|
5536
|
+
onUpdate,
|
|
5537
|
+
generate
|
|
5538
|
+
};
|
|
5539
|
+
}
|
|
5540
|
+
});
|
|
5541
|
+
//#endregion
|
|
5542
|
+
//#region src/components/utility/ASecretInput.vue
|
|
5543
|
+
const _hoisted_1$33 = ["aria-label", "title"];
|
|
5544
|
+
function _sfc_render$68(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5545
|
+
const _component_VCIcon = resolveComponent("VCIcon");
|
|
5546
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
5547
|
+
return openBlock(), createBlock(_component_VCFormInput, {
|
|
5548
|
+
"model-value": _ctx.modelValue ?? "",
|
|
5549
|
+
disabled: _ctx.disabled,
|
|
5550
|
+
group: !_ctx.disabled,
|
|
5551
|
+
"onUpdate:modelValue": _ctx.onUpdate
|
|
5552
|
+
}, createSlots({ _: 2 }, [!_ctx.disabled ? {
|
|
5553
|
+
name: "groupAppend",
|
|
5554
|
+
fn: withCtx(({ class: appendClass }) => [createElementVNode("button", {
|
|
5555
|
+
type: "button",
|
|
5556
|
+
class: normalizeClass([appendClass, "cursor-pointer transition-colors hover:bg-bg-elevated"]),
|
|
5557
|
+
"aria-label": _ctx.buttonLabel,
|
|
5558
|
+
title: _ctx.buttonLabel,
|
|
5559
|
+
onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.generate && _ctx.generate(...args), ["prevent"]))
|
|
5560
|
+
}, [createVNode(_component_VCIcon, {
|
|
5561
|
+
"aria-hidden": "true",
|
|
5562
|
+
name: "fa6-solid:arrows-rotate"
|
|
5563
|
+
})], 10, _hoisted_1$33)]),
|
|
5564
|
+
key: "0"
|
|
5565
|
+
} : void 0]), 1032, [
|
|
5566
|
+
"model-value",
|
|
5567
|
+
"disabled",
|
|
5568
|
+
"group",
|
|
5569
|
+
"onUpdate:modelValue"
|
|
5570
|
+
]);
|
|
5571
|
+
}
|
|
5572
|
+
var ASecretInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ASecretInput_vue_vue_type_script_lang_default, [["render", _sfc_render$68]]);
|
|
5573
|
+
//#endregion
|
|
5591
5574
|
//#region src/components/utility/AToggleButton.vue?vue&type=script&lang.ts
|
|
5592
5575
|
/**
|
|
5593
5576
|
* Tri-state toggle button used in entity pickers' #itemActions slot
|
|
@@ -5601,7 +5584,7 @@ const AFormSubmit = defineComponent({
|
|
|
5601
5584
|
* `utility/toggle-button/module.ts` and the inline copies in
|
|
5602
5585
|
* ARobotForm.vue / AUserForm.vue.
|
|
5603
5586
|
*/
|
|
5604
|
-
|
|
5587
|
+
var AToggleButton_vue_vue_type_script_lang_default = defineComponent({
|
|
5605
5588
|
name: "AToggleButton",
|
|
5606
5589
|
props: {
|
|
5607
5590
|
value: {
|
|
@@ -5628,13 +5611,13 @@ const AToggleButton = defineComponent({
|
|
|
5628
5611
|
});
|
|
5629
5612
|
//#endregion
|
|
5630
5613
|
//#region src/components/utility/AToggleButton.vue
|
|
5631
|
-
const _hoisted_1$
|
|
5614
|
+
const _hoisted_1$32 = [
|
|
5632
5615
|
"aria-label",
|
|
5633
5616
|
"aria-busy",
|
|
5634
5617
|
"aria-pressed",
|
|
5635
5618
|
"disabled"
|
|
5636
5619
|
];
|
|
5637
|
-
function _sfc_render$
|
|
5620
|
+
function _sfc_render$67(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5638
5621
|
const _component_VCIcon = resolveComponent("VCIcon");
|
|
5639
5622
|
return openBlock(), createElementBlock("button", {
|
|
5640
5623
|
type: "button",
|
|
@@ -5651,9 +5634,9 @@ function _sfc_render$50(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5651
5634
|
}, [createVNode(_component_VCIcon, {
|
|
5652
5635
|
"aria-hidden": "true",
|
|
5653
5636
|
name: _ctx.isBusy ? "fa6-solid:question" : _ctx.value ? "fa6-solid:minus" : "fa6-solid:plus"
|
|
5654
|
-
}, null, 8, ["name"])], 10, _hoisted_1$
|
|
5637
|
+
}, null, 8, ["name"])], 10, _hoisted_1$32);
|
|
5655
5638
|
}
|
|
5656
|
-
var AToggleButton_default = /*#__PURE__*/ _plugin_vue_export_helper_default(
|
|
5639
|
+
var AToggleButton_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AToggleButton_vue_vue_type_script_lang_default, [["render", _sfc_render$67]]);
|
|
5657
5640
|
//#endregion
|
|
5658
5641
|
//#region src/components/entities/client/AClient.ts
|
|
5659
5642
|
const AClient = defineComponent({
|
|
@@ -5724,9 +5707,10 @@ function usePermissionCheck(ctx) {
|
|
|
5724
5707
|
}
|
|
5725
5708
|
//#endregion
|
|
5726
5709
|
//#region src/components/entities/realm/ARealmForm.vue?vue&type=script&lang.ts
|
|
5727
|
-
|
|
5710
|
+
var ARealmForm_vue_vue_type_script_lang_default = defineComponent({
|
|
5728
5711
|
components: {
|
|
5729
5712
|
AFormSubmit,
|
|
5713
|
+
ANameInput: ANameInput_default,
|
|
5730
5714
|
VCFormGroup,
|
|
5731
5715
|
VCFormInput,
|
|
5732
5716
|
VCFormTextarea,
|
|
@@ -5740,6 +5724,7 @@ const ARealmForm = defineComponent({
|
|
|
5740
5724
|
emits: defineEntityVEmitOptions(),
|
|
5741
5725
|
setup(props, ctx) {
|
|
5742
5726
|
const busy = ref(false);
|
|
5727
|
+
const nameSeed = useId();
|
|
5743
5728
|
const form = reactive({
|
|
5744
5729
|
name: "",
|
|
5745
5730
|
display_name: "",
|
|
@@ -5753,15 +5738,10 @@ const ARealmForm = defineComponent({
|
|
|
5753
5738
|
const isEditing = useIsEditing(manager.data);
|
|
5754
5739
|
const v = useValidup(new RealmValidator(), form, { group: computed(() => isEditing.value ? ValidatorGroup.UPDATE : ValidatorGroup.CREATE) });
|
|
5755
5740
|
const updatedAt = useUpdatedAt(props.entity);
|
|
5756
|
-
const isNameEmpty = computed(() => !form.name || form.name.length === 0);
|
|
5757
5741
|
const isMaster = computed(() => manager.data.value && manager.data.value.name === REALM_MASTER_NAME);
|
|
5758
|
-
const isCreating = computed(() => !manager.data.value || !manager.data.value.id);
|
|
5759
|
-
const generateName = () => {
|
|
5760
|
-
form.name = createNanoID();
|
|
5761
|
-
};
|
|
5762
5742
|
function initForm() {
|
|
5763
5743
|
assignFormProperties(form, manager.data.value);
|
|
5764
|
-
if (form.name.length === 0) generateName();
|
|
5744
|
+
if (form.name.length === 0) form.name = generateName(nameSeed);
|
|
5765
5745
|
}
|
|
5766
5746
|
watch(updatedAt, (val, oldVal) => {
|
|
5767
5747
|
if (val && val !== oldVal) {
|
|
@@ -5778,22 +5758,98 @@ const ARealmForm = defineComponent({
|
|
|
5778
5758
|
busy,
|
|
5779
5759
|
v,
|
|
5780
5760
|
isEditing,
|
|
5781
|
-
isNameEmpty,
|
|
5782
5761
|
isMaster,
|
|
5783
|
-
|
|
5784
|
-
|
|
5785
|
-
|
|
5786
|
-
|
|
5787
|
-
|
|
5788
|
-
{
|
|
5789
|
-
|
|
5762
|
+
translationsDefault: useTranslations([
|
|
5763
|
+
{
|
|
5764
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
5765
|
+
key: TranslatorTranslationFieldKey.NAME
|
|
5766
|
+
},
|
|
5767
|
+
{
|
|
5768
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
5769
|
+
key: TranslatorTranslationFieldKey.DISPLAY_NAME
|
|
5770
|
+
},
|
|
5771
|
+
{
|
|
5772
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
5773
|
+
key: TranslatorTranslationFieldKey.DESCRIPTION
|
|
5774
|
+
},
|
|
5775
|
+
{
|
|
5776
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
5777
|
+
key: TranslatorTranslationEntityKey.REALM,
|
|
5778
|
+
count: 1
|
|
5779
|
+
}
|
|
5790
5780
|
]),
|
|
5791
|
-
generateName,
|
|
5792
5781
|
submit
|
|
5793
5782
|
};
|
|
5794
5783
|
}
|
|
5795
5784
|
});
|
|
5796
5785
|
//#endregion
|
|
5786
|
+
//#region src/components/entities/realm/ARealmForm.vue
|
|
5787
|
+
function _sfc_render$66(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5788
|
+
const _component_ANameInput = resolveComponent("ANameInput");
|
|
5789
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
5790
|
+
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
5791
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
5792
|
+
const _component_VCFormTextarea = resolveComponent("VCFormTextarea");
|
|
5793
|
+
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
5794
|
+
return openBlock(), createElementBlock("form", { onSubmit: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.submit && _ctx.submit(...args), ["prevent"])) }, [
|
|
5795
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.name }, {
|
|
5796
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
5797
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.name), 1)]),
|
|
5798
|
+
default: withCtx(() => [createVNode(_component_ANameInput, {
|
|
5799
|
+
modelValue: _ctx.v.fields.name.$model.value,
|
|
5800
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.name.$model.value = $event,
|
|
5801
|
+
disabled: _ctx.isMaster
|
|
5802
|
+
}, null, 8, [
|
|
5803
|
+
"modelValue",
|
|
5804
|
+
"onUpdate:modelValue",
|
|
5805
|
+
"disabled"
|
|
5806
|
+
])]),
|
|
5807
|
+
_: 2
|
|
5808
|
+
}, 1032, ["validation"])]),
|
|
5809
|
+
_: 1
|
|
5810
|
+
}, 8, ["field"]),
|
|
5811
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.display_name }, {
|
|
5812
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
5813
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.displayName), 1)]),
|
|
5814
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
5815
|
+
"model-value": _ctx.v.fields.display_name.$model.value ?? "",
|
|
5816
|
+
"onUpdate:modelValue": (next) => {
|
|
5817
|
+
_ctx.v.fields.display_name.$model.value = next;
|
|
5818
|
+
}
|
|
5819
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
5820
|
+
_: 2
|
|
5821
|
+
}, 1032, ["validation"])]),
|
|
5822
|
+
_: 1
|
|
5823
|
+
}, 8, ["field"]),
|
|
5824
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.description }, {
|
|
5825
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
5826
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.description), 1)]),
|
|
5827
|
+
default: withCtx(() => [createVNode(_component_VCFormTextarea, {
|
|
5828
|
+
"model-value": _ctx.v.fields.description.$model.value ?? "",
|
|
5829
|
+
rows: 4,
|
|
5830
|
+
"onUpdate:modelValue": (next) => {
|
|
5831
|
+
_ctx.v.fields.description.$model.value = next;
|
|
5832
|
+
}
|
|
5833
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
5834
|
+
_: 2
|
|
5835
|
+
}, 1032, ["validation"])]),
|
|
5836
|
+
_: 1
|
|
5837
|
+
}, 8, ["field"]),
|
|
5838
|
+
createVNode(_component_AFormSubmit, {
|
|
5839
|
+
"is-busy": _ctx.busy,
|
|
5840
|
+
"is-editing": _ctx.isEditing,
|
|
5841
|
+
"is-invalid": _ctx.v.$invalid.value,
|
|
5842
|
+
onSubmit: _ctx.submit
|
|
5843
|
+
}, null, 8, [
|
|
5844
|
+
"is-busy",
|
|
5845
|
+
"is-editing",
|
|
5846
|
+
"is-invalid",
|
|
5847
|
+
"onSubmit"
|
|
5848
|
+
])
|
|
5849
|
+
], 32);
|
|
5850
|
+
}
|
|
5851
|
+
var ARealmForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ARealmForm_vue_vue_type_script_lang_default, [["render", _sfc_render$66]]);
|
|
5852
|
+
//#endregion
|
|
5797
5853
|
//#region src/components/entities/realm/ARealms.ts
|
|
5798
5854
|
const ARealms = defineComponent({
|
|
5799
5855
|
props: defineEntityCollectionVProps(),
|
|
@@ -5805,13 +5861,15 @@ const ARealms = defineComponent({
|
|
|
5805
5861
|
props,
|
|
5806
5862
|
setup: ctx
|
|
5807
5863
|
});
|
|
5864
|
+
const translationsName = useTranslation({
|
|
5865
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
5866
|
+
key: TranslatorTranslationEntityKey.REALM,
|
|
5867
|
+
count: 2
|
|
5868
|
+
});
|
|
5808
5869
|
const translation = useTranslation({
|
|
5809
|
-
namespace:
|
|
5810
|
-
key:
|
|
5811
|
-
data: { name:
|
|
5812
|
-
namespace: "default",
|
|
5813
|
-
key: "realms"
|
|
5814
|
-
}) }
|
|
5870
|
+
namespace: TranslatorTranslationNamespace.VUECS,
|
|
5871
|
+
key: TranslatorTranslationVuecsKey.NO_MORE,
|
|
5872
|
+
data: { name: translationsName }
|
|
5815
5873
|
});
|
|
5816
5874
|
return () => render({ noMore: { content: translation.value } });
|
|
5817
5875
|
}
|
|
@@ -5836,6 +5894,8 @@ const ARealmPicker = defineComponent({
|
|
|
5836
5894
|
var AClientForm_vue_vue_type_script_lang_default = defineComponent({
|
|
5837
5895
|
components: {
|
|
5838
5896
|
AFormSubmit,
|
|
5897
|
+
ANameInput: ANameInput_default,
|
|
5898
|
+
ASecretInput: ASecretInput_default,
|
|
5839
5899
|
ARealmPicker,
|
|
5840
5900
|
AFormInputList: AFormInputList_default,
|
|
5841
5901
|
IFieldValidation
|
|
@@ -5856,6 +5916,7 @@ var AClientForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
5856
5916
|
},
|
|
5857
5917
|
emits: defineEntityVEmitOptions(),
|
|
5858
5918
|
setup(props, ctx) {
|
|
5919
|
+
const nameSeed = useId();
|
|
5859
5920
|
const form = reactive({
|
|
5860
5921
|
active: true,
|
|
5861
5922
|
name: "",
|
|
@@ -5880,7 +5941,6 @@ var AClientForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
5880
5941
|
const updatedAt = useUpdatedAt(props.entity);
|
|
5881
5942
|
const isNameFixed = computed(() => !!props.name && props.name.length > 0);
|
|
5882
5943
|
const realmId = computed(() => manager.data.value ? manager.data.value.realm_id : storeRefs.realmId.value);
|
|
5883
|
-
const generateSecret = () => createNanoID("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_!.", 32);
|
|
5884
5944
|
const isSecretHashed = computed(() => {
|
|
5885
5945
|
if (!manager.data.value || manager.data.value.secret !== form.secret) return false;
|
|
5886
5946
|
return isBCryptHash(form.secret);
|
|
@@ -5888,9 +5948,12 @@ var AClientForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
5888
5948
|
function initForm() {
|
|
5889
5949
|
if (props.name) form.name = props.name;
|
|
5890
5950
|
assignFormProperties(form, manager.data.value);
|
|
5951
|
+
if (form.name.length === 0) form.name = generateName(nameSeed);
|
|
5891
5952
|
form.realm_id = realmId.value ?? "";
|
|
5892
|
-
if (form.secret.length === 0) form.secret = generateSecret();
|
|
5893
5953
|
}
|
|
5954
|
+
onMounted(() => {
|
|
5955
|
+
if (form.is_confidential && form.secret.length === 0) form.secret = generateSecret();
|
|
5956
|
+
});
|
|
5894
5957
|
watch(computed(() => form.is_confidential), (val, oldValue) => {
|
|
5895
5958
|
if (val === oldValue) return;
|
|
5896
5959
|
if (val) form.secret = manager.data.value?.secret || generateSecret();
|
|
@@ -5908,22 +5971,40 @@ var AClientForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
5908
5971
|
await manager.createOrUpdate(form);
|
|
5909
5972
|
assignFormProperties(form, manager.data.value);
|
|
5910
5973
|
};
|
|
5911
|
-
const translationsClient = useTranslationsForNamespace(
|
|
5912
|
-
{ key:
|
|
5913
|
-
{ key:
|
|
5914
|
-
{ key:
|
|
5915
|
-
{ key:
|
|
5916
|
-
{ key:
|
|
5917
|
-
{ key:
|
|
5974
|
+
const translationsClient = useTranslationsForNamespace(TranslatorTranslationNamespace.CLIENT, [
|
|
5975
|
+
{ key: TranslatorTranslationClientKey.NAME_HINT },
|
|
5976
|
+
{ key: TranslatorTranslationClientKey.DESCRIPTION_HINT },
|
|
5977
|
+
{ key: TranslatorTranslationClientKey.REDIRECT_URI_HINT },
|
|
5978
|
+
{ key: TranslatorTranslationClientKey.IS_CONFIDENTIAL },
|
|
5979
|
+
{ key: TranslatorTranslationClientKey.IS_ACTIVE },
|
|
5980
|
+
{ key: TranslatorTranslationClientKey.HASH_SECRET }
|
|
5918
5981
|
]);
|
|
5919
|
-
const translationsDefault =
|
|
5920
|
-
{
|
|
5921
|
-
|
|
5922
|
-
|
|
5923
|
-
|
|
5924
|
-
{
|
|
5925
|
-
|
|
5926
|
-
|
|
5982
|
+
const translationsDefault = useTranslations([
|
|
5983
|
+
{
|
|
5984
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
5985
|
+
key: TranslatorTranslationFieldKey.NAME
|
|
5986
|
+
},
|
|
5987
|
+
{
|
|
5988
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
5989
|
+
key: TranslatorTranslationFieldKey.DISPLAY_NAME
|
|
5990
|
+
},
|
|
5991
|
+
{
|
|
5992
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
5993
|
+
key: TranslatorTranslationFieldKey.DESCRIPTION
|
|
5994
|
+
},
|
|
5995
|
+
{
|
|
5996
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
5997
|
+
key: TranslatorTranslationEntityKey.REALM,
|
|
5998
|
+
count: 1
|
|
5999
|
+
},
|
|
6000
|
+
{
|
|
6001
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
6002
|
+
key: TranslatorTranslationFieldKey.REDIRECT_URIS
|
|
6003
|
+
},
|
|
6004
|
+
{
|
|
6005
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
6006
|
+
key: TranslatorTranslationFieldKey.SECRET
|
|
6007
|
+
}
|
|
5927
6008
|
]);
|
|
5928
6009
|
const redirectUris = computed(() => {
|
|
5929
6010
|
const value = v.fields.redirect_uri.$model.value;
|
|
@@ -5938,7 +6019,6 @@ var AClientForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
5938
6019
|
isBusy: manager.busy.value,
|
|
5939
6020
|
isEditing,
|
|
5940
6021
|
isSecretHashed,
|
|
5941
|
-
generateSecret,
|
|
5942
6022
|
redirectUris,
|
|
5943
6023
|
submit
|
|
5944
6024
|
};
|
|
@@ -5946,29 +6026,30 @@ var AClientForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
5946
6026
|
});
|
|
5947
6027
|
//#endregion
|
|
5948
6028
|
//#region src/components/entities/client/AClientForm.vue
|
|
5949
|
-
const _hoisted_1$
|
|
5950
|
-
const _hoisted_2$
|
|
5951
|
-
const _hoisted_3$
|
|
6029
|
+
const _hoisted_1$31 = { class: "row" };
|
|
6030
|
+
const _hoisted_2$18 = { class: "col" };
|
|
6031
|
+
const _hoisted_3$14 = {
|
|
5952
6032
|
key: 0,
|
|
5953
6033
|
class: "text-error-600 font-bold"
|
|
5954
6034
|
};
|
|
5955
|
-
const _hoisted_4$
|
|
5956
|
-
const _hoisted_5$
|
|
5957
|
-
const _hoisted_6$
|
|
5958
|
-
const _hoisted_7$
|
|
6035
|
+
const _hoisted_4$12 = { class: "row" };
|
|
6036
|
+
const _hoisted_5$11 = { class: "col" };
|
|
6037
|
+
const _hoisted_6$9 = { class: "col" };
|
|
6038
|
+
const _hoisted_7$4 = { class: "col" };
|
|
5959
6039
|
const _hoisted_8$2 = { class: "col" };
|
|
5960
|
-
|
|
5961
|
-
function _sfc_render$49(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6040
|
+
function _sfc_render$65(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5962
6041
|
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
5963
6042
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
6043
|
+
const _component_ANameInput = resolveComponent("ANameInput");
|
|
5964
6044
|
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
5965
6045
|
const _component_VCIcon = resolveComponent("VCIcon");
|
|
6046
|
+
const _component_ASecretInput = resolveComponent("ASecretInput");
|
|
5966
6047
|
const _component_VCFormSwitch = resolveComponent("VCFormSwitch");
|
|
5967
6048
|
const _component_ARealmPicker = resolveComponent("ARealmPicker");
|
|
5968
6049
|
const _component_AFormInputList = resolveComponent("AFormInputList");
|
|
5969
6050
|
const _component_VCFormTextarea = resolveComponent("VCFormTextarea");
|
|
5970
6051
|
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
5971
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
6052
|
+
return openBlock(), createElementBlock("div", _hoisted_1$31, [createElementVNode("div", _hoisted_2$18, [
|
|
5972
6053
|
_ctx.data ? (openBlock(), createBlock(_component_VCFormGroup, { key: 0 }, {
|
|
5973
6054
|
label: withCtx(() => [..._cache[1] || (_cache[1] = [createTextVNode(" ID ", -1)])]),
|
|
5974
6055
|
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
@@ -5981,7 +6062,7 @@ function _sfc_render$49(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5981
6062
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
5982
6063
|
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.name), 1)]),
|
|
5983
6064
|
hint: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsClient.nameHint), 1)]),
|
|
5984
|
-
default: withCtx(() => [createVNode(
|
|
6065
|
+
default: withCtx(() => [createVNode(_component_ANameInput, {
|
|
5985
6066
|
modelValue: _ctx.v.fields.name.$model.value,
|
|
5986
6067
|
"onUpdate:modelValue": ($event) => _ctx.v.fields.name.$model.value = $event,
|
|
5987
6068
|
disabled: _ctx.isNameFixed
|
|
@@ -6014,21 +6095,14 @@ function _sfc_render$49(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6014
6095
|
}, 8, ["field"]),
|
|
6015
6096
|
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.secret }, {
|
|
6016
6097
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
6017
|
-
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.secret) + " ", 1), _ctx.isSecretHashed ? (openBlock(), createElementBlock("span", _hoisted_3$
|
|
6018
|
-
default: withCtx(() => [createVNode(
|
|
6098
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.secret) + " ", 1), _ctx.isSecretHashed ? (openBlock(), createElementBlock("span", _hoisted_3$14, [createVNode(_component_VCIcon, { name: "fa6-solid:triangle-exclamation" })])) : createCommentVNode("v-if", true)]),
|
|
6099
|
+
default: withCtx(() => [createVNode(_component_ASecretInput, {
|
|
6019
6100
|
"model-value": _ctx.v.fields.secret.$model.value ?? "",
|
|
6020
6101
|
disabled: !_ctx.v.fields.is_confidential.$model.value,
|
|
6021
6102
|
"onUpdate:modelValue": (next) => {
|
|
6022
6103
|
_ctx.v.fields.secret.$model.value = next;
|
|
6023
6104
|
}
|
|
6024
|
-
},
|
|
6025
|
-
groupAppend: withCtx(() => [createElementVNode("button", {
|
|
6026
|
-
class: "btn",
|
|
6027
|
-
type: "button",
|
|
6028
|
-
onClick: withModifiers(() => _ctx.v.fields.secret.$model.value = _ctx.generateSecret(), ["prevent"])
|
|
6029
|
-
}, [createVNode(_component_VCIcon, { name: "fa6-solid:arrows-rotate" })], 8, _hoisted_4$9)]),
|
|
6030
|
-
_: 2
|
|
6031
|
-
}, 1032, [
|
|
6105
|
+
}, null, 8, [
|
|
6032
6106
|
"model-value",
|
|
6033
6107
|
"disabled",
|
|
6034
6108
|
"onUpdate:modelValue"
|
|
@@ -6037,14 +6111,14 @@ function _sfc_render$49(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6037
6111
|
}, 1032, ["validation"])]),
|
|
6038
6112
|
_: 1
|
|
6039
6113
|
}, 8, ["field"]),
|
|
6040
|
-
createElementVNode("div",
|
|
6041
|
-
createElementVNode("div",
|
|
6114
|
+
createElementVNode("div", _hoisted_4$12, [
|
|
6115
|
+
createElementVNode("div", _hoisted_5$11, [createVNode(_component_IFieldValidation, { field: _ctx.v.fields.is_confidential }, {
|
|
6042
6116
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
6043
6117
|
default: withCtx(() => [createVNode(_component_VCFormSwitch, {
|
|
6044
6118
|
modelValue: _ctx.v.fields.is_confidential.$model.value,
|
|
6045
6119
|
"onUpdate:modelValue": ($event) => _ctx.v.fields.is_confidential.$model.value = $event,
|
|
6046
6120
|
label: true,
|
|
6047
|
-
"label-content": _ctx.translationsClient.isConfidential
|
|
6121
|
+
"label-content": _ctx.translationsClient.isConfidential
|
|
6048
6122
|
}, null, 8, [
|
|
6049
6123
|
"modelValue",
|
|
6050
6124
|
"onUpdate:modelValue",
|
|
@@ -6054,13 +6128,13 @@ function _sfc_render$49(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6054
6128
|
}, 1032, ["validation"])]),
|
|
6055
6129
|
_: 1
|
|
6056
6130
|
}, 8, ["field"])]),
|
|
6057
|
-
createElementVNode("div",
|
|
6131
|
+
createElementVNode("div", _hoisted_6$9, [createVNode(_component_IFieldValidation, { field: _ctx.v.fields.secret_hashed }, {
|
|
6058
6132
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
6059
6133
|
default: withCtx(() => [createVNode(_component_VCFormSwitch, {
|
|
6060
6134
|
modelValue: _ctx.v.fields.secret_hashed.$model.value,
|
|
6061
6135
|
"onUpdate:modelValue": ($event) => _ctx.v.fields.secret_hashed.$model.value = $event,
|
|
6062
6136
|
label: true,
|
|
6063
|
-
"label-content": _ctx.translationsClient.hashSecret
|
|
6137
|
+
"label-content": _ctx.translationsClient.hashSecret
|
|
6064
6138
|
}, null, 8, [
|
|
6065
6139
|
"modelValue",
|
|
6066
6140
|
"onUpdate:modelValue",
|
|
@@ -6070,13 +6144,13 @@ function _sfc_render$49(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6070
6144
|
}, 1032, ["validation"])]),
|
|
6071
6145
|
_: 1
|
|
6072
6146
|
}, 8, ["field"])]),
|
|
6073
|
-
createElementVNode("div",
|
|
6147
|
+
createElementVNode("div", _hoisted_7$4, [createVNode(_component_IFieldValidation, { field: _ctx.v.fields.active }, {
|
|
6074
6148
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
6075
6149
|
default: withCtx(() => [createVNode(_component_VCFormSwitch, {
|
|
6076
6150
|
modelValue: _ctx.v.fields.active.$model.value,
|
|
6077
6151
|
"onUpdate:modelValue": ($event) => _ctx.v.fields.active.$model.value = $event,
|
|
6078
6152
|
label: true,
|
|
6079
|
-
"label-content": _ctx.translationsClient.isActive
|
|
6153
|
+
"label-content": _ctx.translationsClient.isActive
|
|
6080
6154
|
}, null, 8, [
|
|
6081
6155
|
"modelValue",
|
|
6082
6156
|
"onUpdate:modelValue",
|
|
@@ -6103,7 +6177,7 @@ function _sfc_render$49(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6103
6177
|
}, 1032, ["validation"])]),
|
|
6104
6178
|
_: 1
|
|
6105
6179
|
}, 8, ["field"])) : createCommentVNode("v-if", true)
|
|
6106
|
-
]), createElementVNode("div",
|
|
6180
|
+
]), createElementVNode("div", _hoisted_8$2, [
|
|
6107
6181
|
createVNode(_component_AFormInputList, {
|
|
6108
6182
|
names: _ctx.redirectUris,
|
|
6109
6183
|
onChanged: _cache[0] || (_cache[0] = (value) => {
|
|
@@ -6146,7 +6220,7 @@ function _sfc_render$49(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6146
6220
|
])])
|
|
6147
6221
|
])]);
|
|
6148
6222
|
}
|
|
6149
|
-
var AClientForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AClientForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
6223
|
+
var AClientForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AClientForm_vue_vue_type_script_lang_default, [["render", _sfc_render$65]]);
|
|
6150
6224
|
//#endregion
|
|
6151
6225
|
//#region src/components/entities/client/AClients.ts
|
|
6152
6226
|
const AClients = defineComponent({
|
|
@@ -6159,13 +6233,15 @@ const AClients = defineComponent({
|
|
|
6159
6233
|
props,
|
|
6160
6234
|
setup: ctx
|
|
6161
6235
|
});
|
|
6236
|
+
const translationName = useTranslation({
|
|
6237
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
6238
|
+
key: TranslatorTranslationEntityKey.CLIENT,
|
|
6239
|
+
count: 2
|
|
6240
|
+
});
|
|
6162
6241
|
const translation = useTranslation({
|
|
6163
|
-
namespace:
|
|
6164
|
-
key:
|
|
6165
|
-
data: { name:
|
|
6166
|
-
namespace: "default",
|
|
6167
|
-
key: "clients"
|
|
6168
|
-
}) }
|
|
6242
|
+
namespace: TranslatorTranslationNamespace.VUECS,
|
|
6243
|
+
key: TranslatorTranslationVuecsKey.NO_MORE,
|
|
6244
|
+
data: { name: translationName }
|
|
6169
6245
|
});
|
|
6170
6246
|
return () => render({ noMore: { content: translation.value } });
|
|
6171
6247
|
}
|
|
@@ -6239,8 +6315,9 @@ function decisionStrategyHint(value) {
|
|
|
6239
6315
|
default: return "No strategy selected. Defaults to unanimous (all policies must evaluate positively).";
|
|
6240
6316
|
}
|
|
6241
6317
|
}
|
|
6242
|
-
|
|
6318
|
+
var APermissionForm_vue_vue_type_script_lang_default = defineComponent({
|
|
6243
6319
|
components: {
|
|
6320
|
+
ANameInput: ANameInput_default,
|
|
6244
6321
|
ARealmPicker,
|
|
6245
6322
|
AFormSubmit,
|
|
6246
6323
|
VCFormGroup,
|
|
@@ -6253,6 +6330,7 @@ const APermissionForm = defineComponent({
|
|
|
6253
6330
|
emits: defineEntityVEmitOptions(),
|
|
6254
6331
|
setup(props, ctx) {
|
|
6255
6332
|
const busy = ref(false);
|
|
6333
|
+
const nameSeed = useId();
|
|
6256
6334
|
const form = reactive({
|
|
6257
6335
|
name: "",
|
|
6258
6336
|
display_name: "",
|
|
@@ -6280,6 +6358,7 @@ const APermissionForm = defineComponent({
|
|
|
6280
6358
|
const isBuiltIn = computed(() => !!(manager.data.value && manager.data.value.built_in));
|
|
6281
6359
|
function initForm() {
|
|
6282
6360
|
assignFormProperties(form, manager.data.value);
|
|
6361
|
+
if (form.name.length === 0) form.name = generateName(nameSeed);
|
|
6283
6362
|
if (realmId.value) form.realm_id = realmId.value;
|
|
6284
6363
|
}
|
|
6285
6364
|
watch(updatedAt, (val, oldVal) => {
|
|
@@ -6302,12 +6381,28 @@ const APermissionForm = defineComponent({
|
|
|
6302
6381
|
busy.value = false;
|
|
6303
6382
|
}
|
|
6304
6383
|
};
|
|
6305
|
-
const translationsDefault =
|
|
6306
|
-
{
|
|
6307
|
-
|
|
6308
|
-
|
|
6309
|
-
|
|
6310
|
-
{
|
|
6384
|
+
const translationsDefault = useTranslations([
|
|
6385
|
+
{
|
|
6386
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
6387
|
+
key: TranslatorTranslationFieldKey.NAME
|
|
6388
|
+
},
|
|
6389
|
+
{
|
|
6390
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
6391
|
+
key: TranslatorTranslationFieldKey.DISPLAY_NAME
|
|
6392
|
+
},
|
|
6393
|
+
{
|
|
6394
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
6395
|
+
key: TranslatorTranslationFieldKey.DESCRIPTION
|
|
6396
|
+
},
|
|
6397
|
+
{
|
|
6398
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
6399
|
+
key: TranslatorTranslationFieldKey.DECISION_STRATEGY
|
|
6400
|
+
},
|
|
6401
|
+
{
|
|
6402
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
6403
|
+
key: TranslatorTranslationEntityKey.REALM,
|
|
6404
|
+
count: 1
|
|
6405
|
+
}
|
|
6311
6406
|
]);
|
|
6312
6407
|
return {
|
|
6313
6408
|
busy,
|
|
@@ -6323,108 +6418,224 @@ const APermissionForm = defineComponent({
|
|
|
6323
6418
|
}
|
|
6324
6419
|
});
|
|
6325
6420
|
//#endregion
|
|
6326
|
-
//#region src/components/entities/permission/
|
|
6327
|
-
const
|
|
6328
|
-
|
|
6329
|
-
|
|
6330
|
-
|
|
6331
|
-
|
|
6332
|
-
|
|
6333
|
-
|
|
6334
|
-
|
|
6335
|
-
|
|
6336
|
-
|
|
6337
|
-
|
|
6338
|
-
|
|
6339
|
-
|
|
6340
|
-
|
|
6341
|
-
|
|
6342
|
-
|
|
6343
|
-
|
|
6344
|
-
|
|
6345
|
-
|
|
6346
|
-
|
|
6347
|
-
|
|
6348
|
-
|
|
6349
|
-
|
|
6350
|
-
|
|
6351
|
-
|
|
6352
|
-
|
|
6353
|
-
|
|
6354
|
-
|
|
6355
|
-
|
|
6356
|
-
|
|
6357
|
-
|
|
6358
|
-
|
|
6359
|
-
|
|
6360
|
-
|
|
6361
|
-
|
|
6362
|
-
|
|
6363
|
-
|
|
6364
|
-
|
|
6365
|
-
|
|
6366
|
-
|
|
6367
|
-
}
|
|
6368
|
-
|
|
6369
|
-
|
|
6370
|
-
|
|
6371
|
-
|
|
6372
|
-
|
|
6373
|
-
|
|
6374
|
-
|
|
6375
|
-
|
|
6376
|
-
|
|
6377
|
-
|
|
6378
|
-
|
|
6379
|
-
|
|
6380
|
-
|
|
6381
|
-
|
|
6382
|
-
}
|
|
6383
|
-
|
|
6384
|
-
|
|
6385
|
-
|
|
6386
|
-
|
|
6387
|
-
|
|
6388
|
-
|
|
6389
|
-
|
|
6390
|
-
|
|
6391
|
-
|
|
6392
|
-
|
|
6393
|
-
|
|
6394
|
-
|
|
6395
|
-
|
|
6396
|
-
|
|
6397
|
-
}
|
|
6398
|
-
|
|
6399
|
-
|
|
6400
|
-
|
|
6401
|
-
|
|
6421
|
+
//#region src/components/entities/permission/APermissionForm.vue
|
|
6422
|
+
const _hoisted_1$30 = { class: "alert alert-sm alert-info mt-1 mb-0" };
|
|
6423
|
+
function _sfc_render$64(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6424
|
+
const _component_ANameInput = resolveComponent("ANameInput");
|
|
6425
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
6426
|
+
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
6427
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
6428
|
+
const _component_VCFormTextarea = resolveComponent("VCFormTextarea");
|
|
6429
|
+
const _component_VCFormSelect = resolveComponent("VCFormSelect");
|
|
6430
|
+
const _component_ARealmPicker = resolveComponent("ARealmPicker");
|
|
6431
|
+
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
6432
|
+
return openBlock(), createElementBlock("form", { onSubmit: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.submit && _ctx.submit(...args), ["prevent"])) }, [
|
|
6433
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.name }, {
|
|
6434
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
6435
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.name), 1)]),
|
|
6436
|
+
default: withCtx(() => [createVNode(_component_ANameInput, {
|
|
6437
|
+
modelValue: _ctx.v.fields.name.$model.value,
|
|
6438
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.name.$model.value = $event,
|
|
6439
|
+
disabled: _ctx.isBuiltIn
|
|
6440
|
+
}, null, 8, [
|
|
6441
|
+
"modelValue",
|
|
6442
|
+
"onUpdate:modelValue",
|
|
6443
|
+
"disabled"
|
|
6444
|
+
])]),
|
|
6445
|
+
_: 2
|
|
6446
|
+
}, 1032, ["validation"])]),
|
|
6447
|
+
_: 1
|
|
6448
|
+
}, 8, ["field"]),
|
|
6449
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.display_name }, {
|
|
6450
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
6451
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.displayName), 1)]),
|
|
6452
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
6453
|
+
"model-value": _ctx.v.fields.display_name.$model.value ?? "",
|
|
6454
|
+
"onUpdate:modelValue": (next) => {
|
|
6455
|
+
_ctx.v.fields.display_name.$model.value = next;
|
|
6456
|
+
}
|
|
6457
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
6458
|
+
_: 2
|
|
6459
|
+
}, 1032, ["validation"])]),
|
|
6460
|
+
_: 1
|
|
6461
|
+
}, 8, ["field"]),
|
|
6462
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.description }, {
|
|
6463
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
6464
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.description), 1)]),
|
|
6465
|
+
default: withCtx(() => [createVNode(_component_VCFormTextarea, {
|
|
6466
|
+
"model-value": _ctx.v.fields.description.$model.value ?? "",
|
|
6467
|
+
rows: 4,
|
|
6468
|
+
"onUpdate:modelValue": (next) => {
|
|
6469
|
+
_ctx.v.fields.description.$model.value = next;
|
|
6470
|
+
}
|
|
6471
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
6472
|
+
_: 2
|
|
6473
|
+
}, 1032, ["validation"])]),
|
|
6474
|
+
_: 1
|
|
6475
|
+
}, 8, ["field"]),
|
|
6476
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.decision_strategy }, {
|
|
6477
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
6478
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.decisionStrategy), 1)]),
|
|
6479
|
+
default: withCtx(() => [createVNode(_component_VCFormSelect, {
|
|
6480
|
+
modelValue: _ctx.v.fields.decision_strategy.$model.value,
|
|
6481
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.decision_strategy.$model.value = $event,
|
|
6482
|
+
options: _ctx.decisionStrategyOptions,
|
|
6483
|
+
placeholder: "-- None (default: unanimous) --"
|
|
6484
|
+
}, null, 8, [
|
|
6485
|
+
"modelValue",
|
|
6486
|
+
"onUpdate:modelValue",
|
|
6487
|
+
"options"
|
|
6488
|
+
]), createElementVNode("div", _hoisted_1$30, toDisplayString(_ctx.decisionStrategyHint), 1)]),
|
|
6489
|
+
_: 2
|
|
6490
|
+
}, 1032, ["validation"])]),
|
|
6491
|
+
_: 1
|
|
6492
|
+
}, 8, ["field"]),
|
|
6493
|
+
!_ctx.realmId && !_ctx.isEditing ? (openBlock(), createBlock(_component_IFieldValidation, {
|
|
6494
|
+
key: 0,
|
|
6495
|
+
field: _ctx.v.fields.realm_id
|
|
6496
|
+
}, {
|
|
6497
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
6498
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.realm), 1)]),
|
|
6499
|
+
default: withCtx(() => [createVNode(_component_ARealmPicker, {
|
|
6500
|
+
value: _ctx.v.fields.realm_id.$model.value,
|
|
6501
|
+
multiple: false,
|
|
6502
|
+
onChange: (input) => {
|
|
6503
|
+
_ctx.v.fields.realm_id.$model.value = input.length > 0 ? input[0] ?? "" : "";
|
|
6504
|
+
}
|
|
6505
|
+
}, null, 8, ["value", "onChange"])]),
|
|
6506
|
+
_: 2
|
|
6507
|
+
}, 1032, ["validation"])]),
|
|
6508
|
+
_: 1
|
|
6509
|
+
}, 8, ["field"])) : createCommentVNode("v-if", true),
|
|
6510
|
+
createVNode(_component_AFormSubmit, {
|
|
6511
|
+
"is-busy": _ctx.busy,
|
|
6512
|
+
"is-editing": _ctx.isEditing,
|
|
6513
|
+
"is-invalid": _ctx.v.$invalid.value,
|
|
6514
|
+
onSubmit: _ctx.submit
|
|
6515
|
+
}, null, 8, [
|
|
6516
|
+
"is-busy",
|
|
6517
|
+
"is-editing",
|
|
6518
|
+
"is-invalid",
|
|
6519
|
+
"onSubmit"
|
|
6520
|
+
])
|
|
6521
|
+
], 32);
|
|
6522
|
+
}
|
|
6523
|
+
var APermissionForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APermissionForm_vue_vue_type_script_lang_default, [["render", _sfc_render$64]]);
|
|
6524
|
+
//#endregion
|
|
6525
|
+
//#region src/components/entities/permission/APermissions.ts
|
|
6526
|
+
const APermissions = defineComponent({
|
|
6527
|
+
props: defineEntityCollectionVProps(),
|
|
6528
|
+
emits: defineEntityCollectionVEmitOptions(),
|
|
6529
|
+
slots: Object,
|
|
6530
|
+
setup(props, setup) {
|
|
6531
|
+
const { render } = defineEntityCollectionManager({
|
|
6532
|
+
type: `${EntityType.PERMISSION}`,
|
|
6533
|
+
props,
|
|
6534
|
+
setup
|
|
6535
|
+
});
|
|
6536
|
+
const translationName = useTranslation({
|
|
6537
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
6538
|
+
key: TranslatorTranslationEntityKey.PERMISSION,
|
|
6539
|
+
count: 2
|
|
6540
|
+
});
|
|
6541
|
+
const translation = useTranslation({
|
|
6542
|
+
namespace: TranslatorTranslationNamespace.VUECS,
|
|
6543
|
+
key: TranslatorTranslationVuecsKey.NO_MORE,
|
|
6544
|
+
data: { name: translationName }
|
|
6545
|
+
});
|
|
6546
|
+
return () => render({ noMore: { content: translation.value } });
|
|
6547
|
+
}
|
|
6548
|
+
});
|
|
6549
|
+
//#endregion
|
|
6550
|
+
//#region src/components/entities/policy/APolicies.ts
|
|
6551
|
+
const APolicies = defineComponent({
|
|
6552
|
+
props: defineEntityCollectionVProps(),
|
|
6553
|
+
emits: defineEntityCollectionVEmitOptions(),
|
|
6554
|
+
slots: Object,
|
|
6555
|
+
setup(props, setup) {
|
|
6556
|
+
const { render } = defineEntityCollectionManager({
|
|
6557
|
+
type: `${EntityType.POLICY}`,
|
|
6558
|
+
props,
|
|
6559
|
+
setup
|
|
6560
|
+
});
|
|
6561
|
+
const translationName = useTranslation({
|
|
6562
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
6563
|
+
key: TranslatorTranslationEntityKey.POLICY,
|
|
6564
|
+
count: 2
|
|
6565
|
+
});
|
|
6566
|
+
const translation = useTranslation({
|
|
6567
|
+
namespace: TranslatorTranslationNamespace.VUECS,
|
|
6568
|
+
key: TranslatorTranslationVuecsKey.NO_MORE,
|
|
6569
|
+
data: { name: translationName }
|
|
6570
|
+
});
|
|
6571
|
+
return () => render({ noMore: { content: translation.value } });
|
|
6572
|
+
}
|
|
6573
|
+
});
|
|
6574
|
+
//#endregion
|
|
6575
|
+
//#region src/components/entities/policy/APolicyTypeBadge.vue?vue&type=script&lang.ts
|
|
6576
|
+
const typeLabels = {
|
|
6577
|
+
[BuiltInPolicyType.COMPOSITE]: "Composite",
|
|
6578
|
+
[BuiltInPolicyType.DATE]: "Date",
|
|
6579
|
+
[BuiltInPolicyType.TIME]: "Time",
|
|
6580
|
+
[BuiltInPolicyType.ATTRIBUTE_NAMES]: "Attr Names",
|
|
6581
|
+
[BuiltInPolicyType.ATTRIBUTES]: "Attributes",
|
|
6582
|
+
[BuiltInPolicyType.REALM_MATCH]: "Realm Match",
|
|
6583
|
+
[BuiltInPolicyType.IDENTITY]: "Identity",
|
|
6584
|
+
[BuiltInPolicyType.PERMISSION_BINDING]: "Perm Binding"
|
|
6585
|
+
};
|
|
6586
|
+
var APolicyTypeBadge_vue_vue_type_script_lang_default = defineComponent({
|
|
6587
|
+
props: { type: {
|
|
6588
|
+
type: String,
|
|
6589
|
+
required: true
|
|
6590
|
+
} },
|
|
6591
|
+
setup() {
|
|
6592
|
+
return { typeLabels };
|
|
6593
|
+
}
|
|
6594
|
+
});
|
|
6595
|
+
//#endregion
|
|
6596
|
+
//#region src/components/entities/policy/APolicyTypeBadge.vue
|
|
6597
|
+
const _hoisted_1$29 = { class: "badge bg-info-500" };
|
|
6598
|
+
function _sfc_render$63(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6599
|
+
return openBlock(), createElementBlock("span", _hoisted_1$29, toDisplayString(_ctx.typeLabels[_ctx.type] || _ctx.type), 1);
|
|
6600
|
+
}
|
|
6601
|
+
var APolicyTypeBadge_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APolicyTypeBadge_vue_vue_type_script_lang_default, [["render", _sfc_render$63]]);
|
|
6602
|
+
//#endregion
|
|
6603
|
+
//#region src/components/entities/policy/APolicyDetailNav.vue?vue&type=script&lang.ts
|
|
6604
|
+
var APolicyDetailNav_vue_vue_type_script_lang_default = defineComponent({
|
|
6402
6605
|
props: { policyId: {
|
|
6403
6606
|
type: String,
|
|
6404
6607
|
required: true
|
|
6405
6608
|
} },
|
|
6406
6609
|
emits: ["click"],
|
|
6407
6610
|
setup(props, { emit }) {
|
|
6611
|
+
const viewPolicyDetails = useTranslation({
|
|
6612
|
+
namespace: TranslatorTranslationNamespace.CLIENT,
|
|
6613
|
+
key: TranslatorTranslationClientKey.VIEW_POLICY_DETAILS
|
|
6614
|
+
});
|
|
6408
6615
|
const handleClick = (e) => {
|
|
6409
6616
|
e.preventDefault();
|
|
6410
6617
|
emit("click", props.policyId);
|
|
6411
6618
|
};
|
|
6412
|
-
return {
|
|
6619
|
+
return {
|
|
6620
|
+
handleClick,
|
|
6621
|
+
viewPolicyDetails
|
|
6622
|
+
};
|
|
6413
6623
|
}
|
|
6414
6624
|
});
|
|
6415
6625
|
//#endregion
|
|
6416
6626
|
//#region src/components/entities/policy/APolicyDetailNav.vue
|
|
6417
|
-
|
|
6627
|
+
const _hoisted_1$28 = ["title", "aria-label"];
|
|
6628
|
+
function _sfc_render$62(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6418
6629
|
const _component_VCIcon = resolveComponent("VCIcon");
|
|
6419
6630
|
return openBlock(), createElementBlock("button", {
|
|
6420
6631
|
type: "button",
|
|
6421
6632
|
class: "btn btn-xs btn-outline-info",
|
|
6422
|
-
title:
|
|
6423
|
-
"aria-label":
|
|
6633
|
+
title: _ctx.viewPolicyDetails,
|
|
6634
|
+
"aria-label": _ctx.viewPolicyDetails,
|
|
6424
6635
|
onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
|
|
6425
|
-
}, [createVNode(_component_VCIcon, { name: "fa6-solid:eye" })]);
|
|
6636
|
+
}, [createVNode(_component_VCIcon, { name: "fa6-solid:eye" })], 8, _hoisted_1$28);
|
|
6426
6637
|
}
|
|
6427
|
-
var APolicyDetailNav_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APolicyDetailNav_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
6638
|
+
var APolicyDetailNav_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APolicyDetailNav_vue_vue_type_script_lang_default, [["render", _sfc_render$62]]);
|
|
6428
6639
|
//#endregion
|
|
6429
6640
|
//#region src/components/entities/policy/APolicyInlineInfo.vue?vue&type=script&lang.ts
|
|
6430
6641
|
var APolicyInlineInfo_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -6446,23 +6657,23 @@ var APolicyInlineInfo_vue_vue_type_script_lang_default = defineComponent({
|
|
|
6446
6657
|
});
|
|
6447
6658
|
//#endregion
|
|
6448
6659
|
//#region src/components/entities/policy/APolicyInlineInfo.vue
|
|
6449
|
-
const _hoisted_1$
|
|
6660
|
+
const _hoisted_1$27 = {
|
|
6450
6661
|
key: 0,
|
|
6451
6662
|
class: "badge bg-warning-500"
|
|
6452
6663
|
};
|
|
6453
|
-
function _sfc_render$
|
|
6664
|
+
function _sfc_render$61(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6454
6665
|
const _component_APolicyTypeBadge = resolveComponent("APolicyTypeBadge");
|
|
6455
6666
|
const _component_APolicyDetailNav = resolveComponent("APolicyDetailNav");
|
|
6456
6667
|
return openBlock(), createElementBlock(Fragment, null, [
|
|
6457
6668
|
createVNode(_component_APolicyTypeBadge, { type: _ctx.entity.type }, null, 8, ["type"]),
|
|
6458
|
-
_ctx.entity.invert ? (openBlock(), createElementBlock("span", _hoisted_1$
|
|
6669
|
+
_ctx.entity.invert ? (openBlock(), createElementBlock("span", _hoisted_1$27, "Inverted")) : createCommentVNode("v-if", true),
|
|
6459
6670
|
createVNode(_component_APolicyDetailNav, {
|
|
6460
6671
|
"policy-id": _ctx.entity.id,
|
|
6461
6672
|
onClick: _ctx.handleDetail
|
|
6462
6673
|
}, null, 8, ["policy-id", "onClick"])
|
|
6463
6674
|
], 64);
|
|
6464
6675
|
}
|
|
6465
|
-
var APolicyInlineInfo_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APolicyInlineInfo_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
6676
|
+
var APolicyInlineInfo_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APolicyInlineInfo_vue_vue_type_script_lang_default, [["render", _sfc_render$61]]);
|
|
6466
6677
|
//#endregion
|
|
6467
6678
|
//#region src/components/entities/policy/APolicySummary.vue?vue&type=script&lang.ts
|
|
6468
6679
|
var APolicySummary_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -6474,36 +6685,36 @@ var APolicySummary_vue_vue_type_script_lang_default = defineComponent({
|
|
|
6474
6685
|
});
|
|
6475
6686
|
//#endregion
|
|
6476
6687
|
//#region src/components/entities/policy/APolicySummary.vue
|
|
6477
|
-
const _hoisted_1$
|
|
6478
|
-
const _hoisted_2$
|
|
6479
|
-
const _hoisted_3$
|
|
6688
|
+
const _hoisted_1$26 = { class: "flex flex-row gap-2 mb-2" };
|
|
6689
|
+
const _hoisted_2$17 = { class: "flex flex-row gap-2 mb-2" };
|
|
6690
|
+
const _hoisted_3$13 = {
|
|
6480
6691
|
key: 0,
|
|
6481
6692
|
class: "flex flex-row gap-2 mb-2"
|
|
6482
6693
|
};
|
|
6483
|
-
const _hoisted_4$
|
|
6694
|
+
const _hoisted_4$11 = {
|
|
6484
6695
|
key: 1,
|
|
6485
6696
|
class: "flex flex-row gap-2 mb-2"
|
|
6486
6697
|
};
|
|
6487
|
-
const _hoisted_5$
|
|
6698
|
+
const _hoisted_5$10 = {
|
|
6488
6699
|
key: 2,
|
|
6489
6700
|
class: "flex flex-row gap-2 mb-2"
|
|
6490
6701
|
};
|
|
6491
|
-
const _hoisted_6$
|
|
6702
|
+
const _hoisted_6$8 = {
|
|
6492
6703
|
key: 3,
|
|
6493
6704
|
class: "flex flex-row gap-2 mb-2"
|
|
6494
6705
|
};
|
|
6495
|
-
function _sfc_render$
|
|
6706
|
+
function _sfc_render$60(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6496
6707
|
const _component_APolicyTypeBadge = resolveComponent("APolicyTypeBadge");
|
|
6497
6708
|
return openBlock(), createElementBlock("div", null, [
|
|
6498
|
-
createElementVNode("div", _hoisted_1$
|
|
6499
|
-
createElementVNode("div", _hoisted_2$
|
|
6500
|
-
_ctx.entity.display_name ? (openBlock(), createElementBlock("div", _hoisted_3$
|
|
6501
|
-
_ctx.entity.description ? (openBlock(), createElementBlock("div", _hoisted_4$
|
|
6502
|
-
_ctx.entity.invert ? (openBlock(), createElementBlock("div", _hoisted_5$
|
|
6503
|
-
_ctx.entity.built_in ? (openBlock(), createElementBlock("div", _hoisted_6$
|
|
6709
|
+
createElementVNode("div", _hoisted_1$26, [_cache[0] || (_cache[0] = createElementVNode("strong", { style: { "min-width": "120px" } }, "Name", -1)), createElementVNode("div", null, toDisplayString(_ctx.entity.name), 1)]),
|
|
6710
|
+
createElementVNode("div", _hoisted_2$17, [_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"])])]),
|
|
6711
|
+
_ctx.entity.display_name ? (openBlock(), createElementBlock("div", _hoisted_3$13, [_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),
|
|
6712
|
+
_ctx.entity.description ? (openBlock(), createElementBlock("div", _hoisted_4$11, [_cache[3] || (_cache[3] = createElementVNode("strong", { style: { "min-width": "120px" } }, "Description", -1)), createElementVNode("div", null, toDisplayString(_ctx.entity.description), 1)])) : createCommentVNode("v-if", true),
|
|
6713
|
+
_ctx.entity.invert ? (openBlock(), createElementBlock("div", _hoisted_5$10, [..._cache[4] || (_cache[4] = [createElementVNode("strong", { style: { "min-width": "120px" } }, "Invert", -1), createElementVNode("div", null, [createElementVNode("span", { class: "badge bg-warning-500" }, "Yes")], -1)])])) : createCommentVNode("v-if", true),
|
|
6714
|
+
_ctx.entity.built_in ? (openBlock(), createElementBlock("div", _hoisted_6$8, [..._cache[5] || (_cache[5] = [createElementVNode("strong", { style: { "min-width": "120px" } }, "Built-in", -1), createElementVNode("div", null, [createElementVNode("span", { class: "badge bg-bg-elevated" }, "Yes")], -1)])])) : createCommentVNode("v-if", true)
|
|
6504
6715
|
]);
|
|
6505
6716
|
}
|
|
6506
|
-
var APolicySummary_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APolicySummary_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
6717
|
+
var APolicySummary_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APolicySummary_vue_vue_type_script_lang_default, [["render", _sfc_render$60]]);
|
|
6507
6718
|
//#endregion
|
|
6508
6719
|
//#region src/components/entities/permission-policy-binding/APermissionPolicyBindingButton.ts
|
|
6509
6720
|
const APermissionPolicyBindingButton = defineComponent({
|
|
@@ -6725,11 +6936,11 @@ var AClientPermissionAssignment_vue_vue_type_script_lang_default = defineCompone
|
|
|
6725
6936
|
});
|
|
6726
6937
|
//#endregion
|
|
6727
6938
|
//#region src/components/entities/client-permission/AClientPermissionAssignment.vue
|
|
6728
|
-
const _hoisted_1$
|
|
6729
|
-
function _sfc_render$
|
|
6939
|
+
const _hoisted_1$25 = { class: "flex gap-1" };
|
|
6940
|
+
function _sfc_render$59(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6730
6941
|
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
6731
6942
|
const _component_APermissionPolicyBindingButton = resolveComponent("APermissionPolicyBindingButton");
|
|
6732
|
-
return openBlock(), createElementBlock("span", _hoisted_1$
|
|
6943
|
+
return openBlock(), createElementBlock("span", _hoisted_1$25, [createVNode(_component_AToggleButton, {
|
|
6733
6944
|
value: !!_ctx.manager.data.value,
|
|
6734
6945
|
"is-busy": _ctx.manager.busy.value,
|
|
6735
6946
|
onChanged: _ctx.handleChanged
|
|
@@ -6748,7 +6959,7 @@ function _sfc_render$44(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6748
6959
|
"onUpdated"
|
|
6749
6960
|
])) : createCommentVNode("v-if", true)]);
|
|
6750
6961
|
}
|
|
6751
|
-
var AClientPermissionAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AClientPermissionAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
6962
|
+
var AClientPermissionAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AClientPermissionAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$59]]);
|
|
6752
6963
|
//#endregion
|
|
6753
6964
|
//#region src/components/entities/client-permission/AClientPermissionAssignments.vue?vue&type=script&lang.ts
|
|
6754
6965
|
var AClientPermissionAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -6766,7 +6977,7 @@ var AClientPermissionAssignments_vue_vue_type_script_lang_default = defineCompon
|
|
|
6766
6977
|
});
|
|
6767
6978
|
//#endregion
|
|
6768
6979
|
//#region src/components/entities/client-permission/AClientPermissionAssignments.vue
|
|
6769
|
-
function _sfc_render$
|
|
6980
|
+
function _sfc_render$58(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6770
6981
|
const _component_AClientPermissionAssignment = resolveComponent("AClientPermissionAssignment");
|
|
6771
6982
|
const _component_APermissions = resolveComponent("APermissions");
|
|
6772
6983
|
return openBlock(), createBlock(_component_APermissions, null, createSlots({
|
|
@@ -6783,11 +6994,12 @@ function _sfc_render$43(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6783
6994
|
};
|
|
6784
6995
|
})]), 1024);
|
|
6785
6996
|
}
|
|
6786
|
-
var AClientPermissionAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AClientPermissionAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
6997
|
+
var AClientPermissionAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AClientPermissionAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$58]]);
|
|
6787
6998
|
//#endregion
|
|
6788
6999
|
//#region src/components/entities/role/ARoleForm.vue?vue&type=script&lang.ts
|
|
6789
|
-
|
|
7000
|
+
var ARoleForm_vue_vue_type_script_lang_default = defineComponent({
|
|
6790
7001
|
components: {
|
|
7002
|
+
ANameInput: ANameInput_default,
|
|
6791
7003
|
ARealmPicker,
|
|
6792
7004
|
AFormSubmit,
|
|
6793
7005
|
VCFormGroup,
|
|
@@ -6802,6 +7014,7 @@ const ARoleForm = defineComponent({
|
|
|
6802
7014
|
emits: defineEntityVEmitOptions(),
|
|
6803
7015
|
setup(props, ctx) {
|
|
6804
7016
|
const busy = ref(false);
|
|
7017
|
+
const nameSeed = useId();
|
|
6805
7018
|
const form = reactive({
|
|
6806
7019
|
name: "",
|
|
6807
7020
|
display_name: "",
|
|
@@ -6823,6 +7036,7 @@ const ARoleForm = defineComponent({
|
|
|
6823
7036
|
const updatedAt = useUpdatedAt(props.entity);
|
|
6824
7037
|
function initForm() {
|
|
6825
7038
|
assignFormProperties(form, manager.data.value);
|
|
7039
|
+
if (form.name.length === 0) form.name = generateName(nameSeed);
|
|
6826
7040
|
}
|
|
6827
7041
|
watch(updatedAt, (val, oldVal) => {
|
|
6828
7042
|
if (val && val !== oldVal) {
|
|
@@ -6840,17 +7054,109 @@ const ARoleForm = defineComponent({
|
|
|
6840
7054
|
v,
|
|
6841
7055
|
isEditing,
|
|
6842
7056
|
realmId,
|
|
6843
|
-
translationsDefault:
|
|
6844
|
-
{
|
|
6845
|
-
|
|
6846
|
-
|
|
6847
|
-
|
|
7057
|
+
translationsDefault: useTranslations([
|
|
7058
|
+
{
|
|
7059
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
7060
|
+
key: TranslatorTranslationFieldKey.NAME
|
|
7061
|
+
},
|
|
7062
|
+
{
|
|
7063
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
7064
|
+
key: TranslatorTranslationFieldKey.DISPLAY_NAME
|
|
7065
|
+
},
|
|
7066
|
+
{
|
|
7067
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
7068
|
+
key: TranslatorTranslationFieldKey.DESCRIPTION
|
|
7069
|
+
},
|
|
7070
|
+
{
|
|
7071
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
7072
|
+
key: TranslatorTranslationEntityKey.REALM,
|
|
7073
|
+
count: 1
|
|
7074
|
+
}
|
|
6848
7075
|
]),
|
|
6849
7076
|
submit
|
|
6850
7077
|
};
|
|
6851
7078
|
}
|
|
6852
7079
|
});
|
|
6853
7080
|
//#endregion
|
|
7081
|
+
//#region src/components/entities/role/ARoleForm.vue
|
|
7082
|
+
function _sfc_render$57(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7083
|
+
const _component_ANameInput = resolveComponent("ANameInput");
|
|
7084
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
7085
|
+
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
7086
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
7087
|
+
const _component_VCFormTextarea = resolveComponent("VCFormTextarea");
|
|
7088
|
+
const _component_ARealmPicker = resolveComponent("ARealmPicker");
|
|
7089
|
+
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
7090
|
+
return openBlock(), createElementBlock("form", { onSubmit: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.submit && _ctx.submit(...args), ["prevent"])) }, [
|
|
7091
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.name }, {
|
|
7092
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7093
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.name), 1)]),
|
|
7094
|
+
default: withCtx(() => [createVNode(_component_ANameInput, {
|
|
7095
|
+
modelValue: _ctx.v.fields.name.$model.value,
|
|
7096
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.name.$model.value = $event
|
|
7097
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
7098
|
+
_: 2
|
|
7099
|
+
}, 1032, ["validation"])]),
|
|
7100
|
+
_: 1
|
|
7101
|
+
}, 8, ["field"]),
|
|
7102
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.display_name }, {
|
|
7103
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7104
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.displayName), 1)]),
|
|
7105
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
7106
|
+
"model-value": _ctx.v.fields.display_name.$model.value ?? "",
|
|
7107
|
+
"onUpdate:modelValue": (next) => {
|
|
7108
|
+
_ctx.v.fields.display_name.$model.value = next;
|
|
7109
|
+
}
|
|
7110
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
7111
|
+
_: 2
|
|
7112
|
+
}, 1032, ["validation"])]),
|
|
7113
|
+
_: 1
|
|
7114
|
+
}, 8, ["field"]),
|
|
7115
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.description }, {
|
|
7116
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7117
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.description), 1)]),
|
|
7118
|
+
default: withCtx(() => [createVNode(_component_VCFormTextarea, {
|
|
7119
|
+
"model-value": _ctx.v.fields.description.$model.value ?? "",
|
|
7120
|
+
rows: 6,
|
|
7121
|
+
"onUpdate:modelValue": (next) => {
|
|
7122
|
+
_ctx.v.fields.description.$model.value = next;
|
|
7123
|
+
}
|
|
7124
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
7125
|
+
_: 2
|
|
7126
|
+
}, 1032, ["validation"])]),
|
|
7127
|
+
_: 1
|
|
7128
|
+
}, 8, ["field"]),
|
|
7129
|
+
!_ctx.realmId && !_ctx.isEditing ? (openBlock(), createBlock(_component_IFieldValidation, {
|
|
7130
|
+
key: 0,
|
|
7131
|
+
field: _ctx.v.fields.realm_id
|
|
7132
|
+
}, {
|
|
7133
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7134
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.realm), 1)]),
|
|
7135
|
+
default: withCtx(() => [createVNode(_component_ARealmPicker, {
|
|
7136
|
+
value: _ctx.v.fields.realm_id.$model.value,
|
|
7137
|
+
onChange: (input) => {
|
|
7138
|
+
_ctx.v.fields.realm_id.$model.value = input.length > 0 ? input[0] ?? "" : "";
|
|
7139
|
+
}
|
|
7140
|
+
}, null, 8, ["value", "onChange"])]),
|
|
7141
|
+
_: 2
|
|
7142
|
+
}, 1032, ["validation"])]),
|
|
7143
|
+
_: 1
|
|
7144
|
+
}, 8, ["field"])) : createCommentVNode("v-if", true),
|
|
7145
|
+
createVNode(_component_AFormSubmit, {
|
|
7146
|
+
"is-busy": _ctx.busy,
|
|
7147
|
+
"is-editing": _ctx.isEditing,
|
|
7148
|
+
"is-invalid": _ctx.v.$invalid.value,
|
|
7149
|
+
onSubmit: _ctx.submit
|
|
7150
|
+
}, null, 8, [
|
|
7151
|
+
"is-busy",
|
|
7152
|
+
"is-editing",
|
|
7153
|
+
"is-invalid",
|
|
7154
|
+
"onSubmit"
|
|
7155
|
+
])
|
|
7156
|
+
], 32);
|
|
7157
|
+
}
|
|
7158
|
+
var ARoleForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ARoleForm_vue_vue_type_script_lang_default, [["render", _sfc_render$57]]);
|
|
7159
|
+
//#endregion
|
|
6854
7160
|
//#region src/components/entities/role/ARoles.ts
|
|
6855
7161
|
const ARoles = defineComponent({
|
|
6856
7162
|
props: defineEntityCollectionVProps(),
|
|
@@ -6862,13 +7168,15 @@ const ARoles = defineComponent({
|
|
|
6862
7168
|
props,
|
|
6863
7169
|
setup: ctx
|
|
6864
7170
|
});
|
|
7171
|
+
const translationName = useTranslation({
|
|
7172
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
7173
|
+
key: TranslatorTranslationEntityKey.ROLE,
|
|
7174
|
+
count: 2
|
|
7175
|
+
});
|
|
6865
7176
|
const translation = useTranslation({
|
|
6866
|
-
namespace:
|
|
6867
|
-
key:
|
|
6868
|
-
data: { name:
|
|
6869
|
-
namespace: "default",
|
|
6870
|
-
key: "roles"
|
|
6871
|
-
}) }
|
|
7177
|
+
namespace: TranslatorTranslationNamespace.VUECS,
|
|
7178
|
+
key: TranslatorTranslationVuecsKey.NO_MORE,
|
|
7179
|
+
data: { name: translationName }
|
|
6872
7180
|
});
|
|
6873
7181
|
return () => render({ noMore: { content: translation.value } });
|
|
6874
7182
|
}
|
|
@@ -6939,7 +7247,7 @@ var AClientRoleAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
|
6939
7247
|
});
|
|
6940
7248
|
//#endregion
|
|
6941
7249
|
//#region src/components/entities/client-role/AClientRoleAssignment.vue
|
|
6942
|
-
function _sfc_render$
|
|
7250
|
+
function _sfc_render$56(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6943
7251
|
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
6944
7252
|
return openBlock(), createBlock(_component_AToggleButton, {
|
|
6945
7253
|
value: !!_ctx.manager.data.value,
|
|
@@ -6951,7 +7259,7 @@ function _sfc_render$42(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6951
7259
|
"onChanged"
|
|
6952
7260
|
]);
|
|
6953
7261
|
}
|
|
6954
|
-
var AClientRoleAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AClientRoleAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
7262
|
+
var AClientRoleAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AClientRoleAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$56]]);
|
|
6955
7263
|
//#endregion
|
|
6956
7264
|
//#region src/components/entities/client-role/AClientRoleAssignments.vue?vue&type=script&lang.ts
|
|
6957
7265
|
var AClientRoleAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -6975,7 +7283,7 @@ var AClientRoleAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
|
6975
7283
|
});
|
|
6976
7284
|
//#endregion
|
|
6977
7285
|
//#region src/components/entities/client-role/AClientRoleAssignments.vue
|
|
6978
|
-
function _sfc_render$
|
|
7286
|
+
function _sfc_render$55(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6979
7287
|
const _component_AClientRoleAssignment = resolveComponent("AClientRoleAssignment");
|
|
6980
7288
|
const _component_ARoles = resolveComponent("ARoles");
|
|
6981
7289
|
return openBlock(), createBlock(_component_ARoles, { query: _ctx.query }, createSlots({
|
|
@@ -6992,7 +7300,7 @@ function _sfc_render$41(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6992
7300
|
};
|
|
6993
7301
|
})]), 1032, ["query"]);
|
|
6994
7302
|
}
|
|
6995
|
-
var AClientRoleAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AClientRoleAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
7303
|
+
var AClientRoleAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AClientRoleAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$55]]);
|
|
6996
7304
|
//#endregion
|
|
6997
7305
|
//#region src/components/entities/client-scope/AClientScope.ts
|
|
6998
7306
|
const AClientScope = defineComponent({
|
|
@@ -7025,21 +7333,23 @@ const AClientScopes = defineComponent({
|
|
|
7025
7333
|
props,
|
|
7026
7334
|
setup: ctx
|
|
7027
7335
|
});
|
|
7336
|
+
const translationClientScopes = useTranslation({
|
|
7337
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
7338
|
+
key: TranslatorTranslationFieldKey.CLIENT_SCOPES
|
|
7339
|
+
});
|
|
7028
7340
|
const translation = useTranslation({
|
|
7029
|
-
namespace:
|
|
7030
|
-
key:
|
|
7031
|
-
data: { name:
|
|
7032
|
-
namespace: "default",
|
|
7033
|
-
key: "clientScopes"
|
|
7034
|
-
}) }
|
|
7341
|
+
namespace: TranslatorTranslationNamespace.VUECS,
|
|
7342
|
+
key: TranslatorTranslationVuecsKey.NO_MORE,
|
|
7343
|
+
data: { name: translationClientScopes }
|
|
7035
7344
|
});
|
|
7036
7345
|
return () => render({ noMore: { content: translation.value } });
|
|
7037
7346
|
}
|
|
7038
7347
|
});
|
|
7039
7348
|
//#endregion
|
|
7040
7349
|
//#region src/components/entities/scope/AScopeForm.vue?vue&type=script&lang.ts
|
|
7041
|
-
|
|
7350
|
+
var AScopeForm_vue_vue_type_script_lang_default = defineComponent({
|
|
7042
7351
|
components: {
|
|
7352
|
+
ANameInput: ANameInput_default,
|
|
7043
7353
|
ARealmPicker,
|
|
7044
7354
|
AFormSubmit,
|
|
7045
7355
|
VCFormGroup,
|
|
@@ -7057,6 +7367,7 @@ const AScopeForm = defineComponent({
|
|
|
7057
7367
|
emits: defineEntityVEmitOptions(),
|
|
7058
7368
|
setup(props, ctx) {
|
|
7059
7369
|
const busy = ref(false);
|
|
7370
|
+
const nameSeed = useId();
|
|
7060
7371
|
const form = reactive({
|
|
7061
7372
|
name: "",
|
|
7062
7373
|
display_name: "",
|
|
@@ -7083,6 +7394,7 @@ const AScopeForm = defineComponent({
|
|
|
7083
7394
|
function initForm() {
|
|
7084
7395
|
if (props.name) form.name = props.name;
|
|
7085
7396
|
assignFormProperties(form, manager.data.value);
|
|
7397
|
+
if (form.name.length === 0) form.name = generateName(nameSeed);
|
|
7086
7398
|
}
|
|
7087
7399
|
watch(updatedAt, (val, oldVal) => {
|
|
7088
7400
|
if (val && val !== oldVal) {
|
|
@@ -7101,17 +7413,114 @@ const AScopeForm = defineComponent({
|
|
|
7101
7413
|
isEditing,
|
|
7102
7414
|
realmId,
|
|
7103
7415
|
isNameFixed,
|
|
7104
|
-
translationsDefault:
|
|
7105
|
-
{
|
|
7106
|
-
|
|
7107
|
-
|
|
7108
|
-
|
|
7416
|
+
translationsDefault: useTranslations([
|
|
7417
|
+
{
|
|
7418
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
7419
|
+
key: TranslatorTranslationFieldKey.NAME
|
|
7420
|
+
},
|
|
7421
|
+
{
|
|
7422
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
7423
|
+
key: TranslatorTranslationFieldKey.DISPLAY_NAME
|
|
7424
|
+
},
|
|
7425
|
+
{
|
|
7426
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
7427
|
+
key: TranslatorTranslationFieldKey.DESCRIPTION
|
|
7428
|
+
},
|
|
7429
|
+
{
|
|
7430
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
7431
|
+
key: TranslatorTranslationEntityKey.REALM,
|
|
7432
|
+
count: 1
|
|
7433
|
+
}
|
|
7109
7434
|
]),
|
|
7110
7435
|
submit
|
|
7111
7436
|
};
|
|
7112
7437
|
}
|
|
7113
7438
|
});
|
|
7114
7439
|
//#endregion
|
|
7440
|
+
//#region src/components/entities/scope/AScopeForm.vue
|
|
7441
|
+
function _sfc_render$54(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7442
|
+
const _component_ANameInput = resolveComponent("ANameInput");
|
|
7443
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
7444
|
+
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
7445
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
7446
|
+
const _component_VCFormTextarea = resolveComponent("VCFormTextarea");
|
|
7447
|
+
const _component_ARealmPicker = resolveComponent("ARealmPicker");
|
|
7448
|
+
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
7449
|
+
return openBlock(), createElementBlock("form", { onSubmit: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.submit && _ctx.submit(...args), ["prevent"])) }, [
|
|
7450
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.name }, {
|
|
7451
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7452
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.name), 1)]),
|
|
7453
|
+
default: withCtx(() => [createVNode(_component_ANameInput, {
|
|
7454
|
+
modelValue: _ctx.v.fields.name.$model.value,
|
|
7455
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.name.$model.value = $event,
|
|
7456
|
+
disabled: _ctx.isNameFixed
|
|
7457
|
+
}, null, 8, [
|
|
7458
|
+
"modelValue",
|
|
7459
|
+
"onUpdate:modelValue",
|
|
7460
|
+
"disabled"
|
|
7461
|
+
])]),
|
|
7462
|
+
_: 2
|
|
7463
|
+
}, 1032, ["validation"])]),
|
|
7464
|
+
_: 1
|
|
7465
|
+
}, 8, ["field"]),
|
|
7466
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.display_name }, {
|
|
7467
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7468
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.displayName), 1)]),
|
|
7469
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
7470
|
+
"model-value": _ctx.v.fields.display_name.$model.value ?? "",
|
|
7471
|
+
"onUpdate:modelValue": (next) => {
|
|
7472
|
+
_ctx.v.fields.display_name.$model.value = next;
|
|
7473
|
+
}
|
|
7474
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
7475
|
+
_: 2
|
|
7476
|
+
}, 1032, ["validation"])]),
|
|
7477
|
+
_: 1
|
|
7478
|
+
}, 8, ["field"]),
|
|
7479
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.description }, {
|
|
7480
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7481
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.description), 1)]),
|
|
7482
|
+
default: withCtx(() => [createVNode(_component_VCFormTextarea, {
|
|
7483
|
+
"model-value": _ctx.v.fields.description.$model.value ?? "",
|
|
7484
|
+
rows: 7,
|
|
7485
|
+
"onUpdate:modelValue": (next) => {
|
|
7486
|
+
_ctx.v.fields.description.$model.value = next;
|
|
7487
|
+
}
|
|
7488
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
7489
|
+
_: 2
|
|
7490
|
+
}, 1032, ["validation"])]),
|
|
7491
|
+
_: 1
|
|
7492
|
+
}, 8, ["field"]),
|
|
7493
|
+
!_ctx.realmId && !_ctx.isNameFixed && !_ctx.isEditing ? (openBlock(), createBlock(_component_IFieldValidation, {
|
|
7494
|
+
key: 0,
|
|
7495
|
+
field: _ctx.v.fields.realm_id
|
|
7496
|
+
}, {
|
|
7497
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7498
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.realm), 1)]),
|
|
7499
|
+
default: withCtx(() => [createVNode(_component_ARealmPicker, {
|
|
7500
|
+
value: _ctx.v.fields.realm_id.$model.value,
|
|
7501
|
+
onChange: (input) => {
|
|
7502
|
+
_ctx.v.fields.realm_id.$model.value = input.length > 0 ? input[0] ?? "" : "";
|
|
7503
|
+
}
|
|
7504
|
+
}, null, 8, ["value", "onChange"])]),
|
|
7505
|
+
_: 2
|
|
7506
|
+
}, 1032, ["validation"])]),
|
|
7507
|
+
_: 1
|
|
7508
|
+
}, 8, ["field"])) : createCommentVNode("v-if", true),
|
|
7509
|
+
createVNode(_component_AFormSubmit, {
|
|
7510
|
+
"is-busy": _ctx.busy,
|
|
7511
|
+
"is-editing": _ctx.isEditing,
|
|
7512
|
+
"is-invalid": _ctx.v.$invalid.value,
|
|
7513
|
+
onSubmit: _ctx.submit
|
|
7514
|
+
}, null, 8, [
|
|
7515
|
+
"is-busy",
|
|
7516
|
+
"is-editing",
|
|
7517
|
+
"is-invalid",
|
|
7518
|
+
"onSubmit"
|
|
7519
|
+
])
|
|
7520
|
+
], 32);
|
|
7521
|
+
}
|
|
7522
|
+
var AScopeForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AScopeForm_vue_vue_type_script_lang_default, [["render", _sfc_render$54]]);
|
|
7523
|
+
//#endregion
|
|
7115
7524
|
//#region src/components/entities/scope/AScopes.ts
|
|
7116
7525
|
const AScopes = defineComponent({
|
|
7117
7526
|
props: defineEntityCollectionVProps(),
|
|
@@ -7123,13 +7532,15 @@ const AScopes = defineComponent({
|
|
|
7123
7532
|
props,
|
|
7124
7533
|
setup: ctx
|
|
7125
7534
|
});
|
|
7535
|
+
const translationName = useTranslation({
|
|
7536
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
7537
|
+
key: TranslatorTranslationEntityKey.SCOPE,
|
|
7538
|
+
count: 2
|
|
7539
|
+
});
|
|
7126
7540
|
const translation = useTranslation({
|
|
7127
|
-
namespace:
|
|
7128
|
-
key:
|
|
7129
|
-
data: { name:
|
|
7130
|
-
namespace: "default",
|
|
7131
|
-
key: "scopes"
|
|
7132
|
-
}) }
|
|
7541
|
+
namespace: TranslatorTranslationNamespace.VUECS,
|
|
7542
|
+
key: TranslatorTranslationVuecsKey.NO_MORE,
|
|
7543
|
+
data: { name: translationName }
|
|
7133
7544
|
});
|
|
7134
7545
|
return () => render({ noMore: { content: translation.value } });
|
|
7135
7546
|
}
|
|
@@ -7200,7 +7611,7 @@ var AClientScopeAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
|
7200
7611
|
});
|
|
7201
7612
|
//#endregion
|
|
7202
7613
|
//#region src/components/entities/client-scope/AClientScopeAssignment.vue
|
|
7203
|
-
function _sfc_render$
|
|
7614
|
+
function _sfc_render$53(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7204
7615
|
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
7205
7616
|
return openBlock(), createBlock(_component_AToggleButton, {
|
|
7206
7617
|
value: !!_ctx.manager.data.value,
|
|
@@ -7212,7 +7623,7 @@ function _sfc_render$40(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
7212
7623
|
"onChanged"
|
|
7213
7624
|
]);
|
|
7214
7625
|
}
|
|
7215
|
-
var AClientScopeAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AClientScopeAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
7626
|
+
var AClientScopeAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AClientScopeAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$53]]);
|
|
7216
7627
|
//#endregion
|
|
7217
7628
|
//#region src/components/entities/client-scope/AClientScopeAssignments.vue?vue&type=script&lang.ts
|
|
7218
7629
|
var AClientScopeAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -7230,7 +7641,7 @@ var AClientScopeAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
|
7230
7641
|
});
|
|
7231
7642
|
//#endregion
|
|
7232
7643
|
//#region src/components/entities/client-scope/AClientScopeAssignments.vue
|
|
7233
|
-
function _sfc_render$
|
|
7644
|
+
function _sfc_render$52(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7234
7645
|
const _component_AClientScopeAssignment = resolveComponent("AClientScopeAssignment");
|
|
7235
7646
|
const _component_AScopes = resolveComponent("AScopes");
|
|
7236
7647
|
return openBlock(), createBlock(_component_AScopes, null, createSlots({
|
|
@@ -7247,7 +7658,7 @@ function _sfc_render$39(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
7247
7658
|
};
|
|
7248
7659
|
})]), 1024);
|
|
7249
7660
|
}
|
|
7250
|
-
var AClientScopeAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AClientScopeAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
7661
|
+
var AClientScopeAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AClientScopeAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$52]]);
|
|
7251
7662
|
//#endregion
|
|
7252
7663
|
//#region src/components/entities/identity-provider/AIdentityProvider.ts
|
|
7253
7664
|
const AIdentityProvider = defineComponent({
|
|
@@ -7270,8 +7681,9 @@ const AIdentityProvider = defineComponent({
|
|
|
7270
7681
|
});
|
|
7271
7682
|
//#endregion
|
|
7272
7683
|
//#region src/components/entities/identity-provider/AIdentityProviderBasicFields.vue?vue&type=script&lang.ts
|
|
7273
|
-
|
|
7684
|
+
var AIdentityProviderBasicFields_vue_vue_type_script_lang_default = defineComponent({
|
|
7274
7685
|
components: {
|
|
7686
|
+
ANameInput: ANameInput_default,
|
|
7275
7687
|
VCFormGroup,
|
|
7276
7688
|
VCFormInput,
|
|
7277
7689
|
VCFormSwitch,
|
|
@@ -7280,6 +7692,7 @@ const AIdentityProviderBasicFields = defineComponent({
|
|
|
7280
7692
|
props: { entity: { type: Object } },
|
|
7281
7693
|
emits: ["updated"],
|
|
7282
7694
|
setup(props, setup) {
|
|
7695
|
+
const nameSeed = useId();
|
|
7283
7696
|
const form = reactive({
|
|
7284
7697
|
name: "",
|
|
7285
7698
|
display_name: "",
|
|
@@ -7291,9 +7704,6 @@ const AIdentityProviderBasicFields = defineComponent({
|
|
|
7291
7704
|
group: computed(() => isEditing.value ? ValidatorGroup.UPDATE : ValidatorGroup.CREATE)
|
|
7292
7705
|
});
|
|
7293
7706
|
const isNameEmpty = computed(() => !form.name || form.name.length === 0);
|
|
7294
|
-
function generateId() {
|
|
7295
|
-
form.name = createNanoID();
|
|
7296
|
-
}
|
|
7297
7707
|
const update = () => {
|
|
7298
7708
|
setup.emit("updated", {
|
|
7299
7709
|
data: form,
|
|
@@ -7302,35 +7712,87 @@ const AIdentityProviderBasicFields = defineComponent({
|
|
|
7302
7712
|
};
|
|
7303
7713
|
function assign(data = {}) {
|
|
7304
7714
|
assignFormProperties(form, data);
|
|
7305
|
-
if (isNameEmpty.value)
|
|
7715
|
+
if (isNameEmpty.value) form.name = generateName(nameSeed);
|
|
7306
7716
|
}
|
|
7307
7717
|
setup.expose({ assign });
|
|
7308
7718
|
onChange(useUpdatedAt(props.entity), () => assign(props.entity));
|
|
7309
7719
|
assign(props.entity);
|
|
7310
|
-
const translationsDefault =
|
|
7311
|
-
{
|
|
7312
|
-
|
|
7313
|
-
|
|
7720
|
+
const translationsDefault = useTranslations([
|
|
7721
|
+
{
|
|
7722
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
7723
|
+
key: TranslatorTranslationFieldKey.DISPLAY_NAME
|
|
7724
|
+
},
|
|
7725
|
+
{
|
|
7726
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
7727
|
+
key: TranslatorTranslationFieldKey.NAME
|
|
7728
|
+
},
|
|
7729
|
+
{
|
|
7730
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
7731
|
+
key: TranslatorTranslationFieldKey.DESCRIPTION
|
|
7732
|
+
}
|
|
7314
7733
|
]);
|
|
7315
7734
|
const onEnabledChange = (value) => {
|
|
7316
7735
|
v.fields.enabled.$model.value = value;
|
|
7317
7736
|
update();
|
|
7318
7737
|
};
|
|
7319
|
-
const
|
|
7320
|
-
|
|
7738
|
+
const onNameUpdate = (value) => {
|
|
7739
|
+
form.name = value;
|
|
7321
7740
|
update();
|
|
7322
7741
|
};
|
|
7323
7742
|
return {
|
|
7324
7743
|
v,
|
|
7325
7744
|
translationsDefault,
|
|
7326
|
-
|
|
7745
|
+
onNameUpdate,
|
|
7327
7746
|
onEnabledChange
|
|
7328
7747
|
};
|
|
7329
7748
|
}
|
|
7330
7749
|
});
|
|
7331
7750
|
//#endregion
|
|
7751
|
+
//#region src/components/entities/identity-provider/AIdentityProviderBasicFields.vue
|
|
7752
|
+
const _hoisted_1$24 = { class: "mt-3" };
|
|
7753
|
+
function _sfc_render$51(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7754
|
+
const _component_ANameInput = resolveComponent("ANameInput");
|
|
7755
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
7756
|
+
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
7757
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
7758
|
+
const _component_VCFormSwitch = resolveComponent("VCFormSwitch");
|
|
7759
|
+
return openBlock(), createElementBlock("div", null, [
|
|
7760
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.name }, {
|
|
7761
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7762
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.name), 1)]),
|
|
7763
|
+
default: withCtx(() => [createVNode(_component_ANameInput, {
|
|
7764
|
+
"model-value": _ctx.v.fields.name.$model.value,
|
|
7765
|
+
"onUpdate:modelValue": _ctx.onNameUpdate
|
|
7766
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
7767
|
+
_: 2
|
|
7768
|
+
}, 1032, ["validation"])]),
|
|
7769
|
+
_: 1
|
|
7770
|
+
}, 8, ["field"]),
|
|
7771
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.display_name }, {
|
|
7772
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7773
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.displayName), 1)]),
|
|
7774
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
7775
|
+
"model-value": _ctx.v.fields.display_name.$model.value ?? "",
|
|
7776
|
+
"onUpdate:modelValue": (next) => {
|
|
7777
|
+
_ctx.v.fields.display_name.$model.value = next;
|
|
7778
|
+
}
|
|
7779
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
7780
|
+
_: 2
|
|
7781
|
+
}, 1032, ["validation"])]),
|
|
7782
|
+
_: 1
|
|
7783
|
+
}, 8, ["field"]),
|
|
7784
|
+
createElementVNode("div", _hoisted_1$24, [createVNode(_component_VCFormSwitch, {
|
|
7785
|
+
"model-value": _ctx.v.fields.enabled.$model.value,
|
|
7786
|
+
label: true,
|
|
7787
|
+
"label-content": "Enabled?",
|
|
7788
|
+
"onUpdate:modelValue": _ctx.onEnabledChange
|
|
7789
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])])
|
|
7790
|
+
]);
|
|
7791
|
+
}
|
|
7792
|
+
var AIdentityProviderBasicFields_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderBasicFields_vue_vue_type_script_lang_default, [["render", _sfc_render$51]]);
|
|
7793
|
+
//#endregion
|
|
7332
7794
|
//#region src/components/entities/identity-provider/AIdentityProviderLdapConnectionFields.vue?vue&type=script&lang.ts
|
|
7333
|
-
|
|
7795
|
+
var AIdentityProviderLdapConnectionFields_vue_vue_type_script_lang_default = defineComponent({
|
|
7334
7796
|
components: {
|
|
7335
7797
|
VCFormGroup,
|
|
7336
7798
|
VCFormInput,
|
|
@@ -7374,8 +7836,68 @@ const AIdentityProviderLdapConnectionFields = defineComponent({
|
|
|
7374
7836
|
}
|
|
7375
7837
|
});
|
|
7376
7838
|
//#endregion
|
|
7839
|
+
//#region src/components/entities/identity-provider/AIdentityProviderLdapConnectionFields.vue
|
|
7840
|
+
function _sfc_render$50(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7841
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
7842
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
7843
|
+
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
7844
|
+
const _component_VCFormSwitch = resolveComponent("VCFormSwitch");
|
|
7845
|
+
return openBlock(), createElementBlock("div", null, [
|
|
7846
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.url }, {
|
|
7847
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7848
|
+
label: withCtx(() => [..._cache[0] || (_cache[0] = [createTextVNode(" URL ", -1)])]),
|
|
7849
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
7850
|
+
modelValue: _ctx.v.fields.url.$model.value,
|
|
7851
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.url.$model.value = $event,
|
|
7852
|
+
placeholder: "<scheme>://<address>:<port>"
|
|
7853
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
7854
|
+
_: 2
|
|
7855
|
+
}, 1032, ["validation"])]),
|
|
7856
|
+
_: 1
|
|
7857
|
+
}, 8, ["field"]),
|
|
7858
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.timeout }, {
|
|
7859
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7860
|
+
label: withCtx(() => [..._cache[1] || (_cache[1] = [createTextVNode(" Timeout ", -1)])]),
|
|
7861
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
7862
|
+
"model-value": String(_ctx.v.fields.timeout.$model.value),
|
|
7863
|
+
type: "number",
|
|
7864
|
+
"onUpdate:modelValue": _ctx.onTimeoutChange
|
|
7865
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
7866
|
+
_: 2
|
|
7867
|
+
}, 1032, ["validation"])]),
|
|
7868
|
+
_: 1
|
|
7869
|
+
}, 8, ["field"]),
|
|
7870
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.start_tls }, {
|
|
7871
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7872
|
+
label: withCtx(() => [..._cache[2] || (_cache[2] = [createTextVNode(" StartTLS ", -1)])]),
|
|
7873
|
+
default: withCtx(() => [createVNode(_component_VCFormSwitch, {
|
|
7874
|
+
modelValue: _ctx.v.fields.start_tls.$model.value,
|
|
7875
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.start_tls.$model.value = $event,
|
|
7876
|
+
label: true,
|
|
7877
|
+
"label-content": "Enable StartTLS process?"
|
|
7878
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
7879
|
+
_: 2
|
|
7880
|
+
}, 1032, ["validation"])]),
|
|
7881
|
+
_: 1
|
|
7882
|
+
}, 8, ["field"]),
|
|
7883
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.base_dn }, {
|
|
7884
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7885
|
+
label: withCtx(() => [..._cache[3] || (_cache[3] = [createTextVNode(" Base DN ", -1)])]),
|
|
7886
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
7887
|
+
modelValue: _ctx.v.fields.base_dn.$model.value,
|
|
7888
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.base_dn.$model.value = $event,
|
|
7889
|
+
placeholder: "e.g. dc=example,dc=com"
|
|
7890
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
7891
|
+
_: 2
|
|
7892
|
+
}, 1032, ["validation"])]),
|
|
7893
|
+
_: 1
|
|
7894
|
+
}, 8, ["field"])
|
|
7895
|
+
]);
|
|
7896
|
+
}
|
|
7897
|
+
var AIdentityProviderLdapConnectionFields_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderLdapConnectionFields_vue_vue_type_script_lang_default, [["render", _sfc_render$50]]);
|
|
7898
|
+
//#endregion
|
|
7377
7899
|
//#region src/components/entities/identity-provider/AIdentityProviderLdapCredentialsFields.vue?vue&type=script&lang.ts
|
|
7378
|
-
|
|
7900
|
+
var AIdentityProviderLdapCredentialsFields_vue_vue_type_script_lang_default = defineComponent({
|
|
7379
7901
|
components: {
|
|
7380
7902
|
VCFormGroup,
|
|
7381
7903
|
VCFormInput,
|
|
@@ -7409,8 +7931,51 @@ const AIdentityProviderLdapCredentialsFields = defineComponent({
|
|
|
7409
7931
|
}
|
|
7410
7932
|
});
|
|
7411
7933
|
//#endregion
|
|
7934
|
+
//#region src/components/entities/identity-provider/AIdentityProviderLdapCredentialsFields.vue
|
|
7935
|
+
function _sfc_render$49(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7936
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
7937
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
7938
|
+
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
7939
|
+
const _component_VCIcon = resolveComponent("VCIcon");
|
|
7940
|
+
return openBlock(), createElementBlock("div", null, [createVNode(_component_IFieldValidation, { field: _ctx.v.fields.user }, {
|
|
7941
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7942
|
+
label: withCtx(() => [..._cache[1] || (_cache[1] = [createTextVNode(" User ", -1)])]),
|
|
7943
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
7944
|
+
modelValue: _ctx.v.fields.user.$model.value,
|
|
7945
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.user.$model.value = $event
|
|
7946
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
7947
|
+
_: 2
|
|
7948
|
+
}, 1032, ["validation"])]),
|
|
7949
|
+
_: 1
|
|
7950
|
+
}, 8, ["field"]), createVNode(_component_IFieldValidation, { field: _ctx.v.fields.password }, {
|
|
7951
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
7952
|
+
label: withCtx(() => [..._cache[2] || (_cache[2] = [createTextVNode(" Password ", -1)])]),
|
|
7953
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
7954
|
+
modelValue: _ctx.v.fields.password.$model.value,
|
|
7955
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.password.$model.value = $event,
|
|
7956
|
+
type: _ctx.passwordShow ? "text" : "password",
|
|
7957
|
+
autocomplete: "current-password"
|
|
7958
|
+
}, {
|
|
7959
|
+
groupAppend: withCtx(() => [createElementVNode("button", {
|
|
7960
|
+
class: "btn",
|
|
7961
|
+
type: "button",
|
|
7962
|
+
onClick: _cache[0] || (_cache[0] = withModifiers(($event) => _ctx.passwordShow = !_ctx.passwordShow, ["prevent"]))
|
|
7963
|
+
}, [createVNode(_component_VCIcon, { name: _ctx.passwordShow ? "fa6-solid:eye-slash" : "fa6-solid:eye" }, null, 8, ["name"])])]),
|
|
7964
|
+
_: 1
|
|
7965
|
+
}, 8, [
|
|
7966
|
+
"modelValue",
|
|
7967
|
+
"onUpdate:modelValue",
|
|
7968
|
+
"type"
|
|
7969
|
+
])]),
|
|
7970
|
+
_: 2
|
|
7971
|
+
}, 1032, ["validation"])]),
|
|
7972
|
+
_: 1
|
|
7973
|
+
}, 8, ["field"])]);
|
|
7974
|
+
}
|
|
7975
|
+
var AIdentityProviderLdapCredentialsFields_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderLdapCredentialsFields_vue_vue_type_script_lang_default, [["render", _sfc_render$49]]);
|
|
7976
|
+
//#endregion
|
|
7412
7977
|
//#region src/components/entities/identity-provider/AIdentityProviderLdapGroupFields.vue?vue&type=script&lang.ts
|
|
7413
|
-
|
|
7978
|
+
var AIdentityProviderLdapGroupFields_vue_vue_type_script_lang_default = defineComponent({
|
|
7414
7979
|
components: {
|
|
7415
7980
|
VCFormGroup,
|
|
7416
7981
|
VCFormInput,
|
|
@@ -7444,8 +8009,85 @@ const AIdentityProviderLdapGroupFields = defineComponent({
|
|
|
7444
8009
|
}
|
|
7445
8010
|
});
|
|
7446
8011
|
//#endregion
|
|
8012
|
+
//#region src/components/entities/identity-provider/AIdentityProviderLdapGroupFields.vue
|
|
8013
|
+
function _sfc_render$48(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8014
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
8015
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
8016
|
+
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
8017
|
+
return openBlock(), createElementBlock("div", null, [
|
|
8018
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.group_filter }, {
|
|
8019
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8020
|
+
label: withCtx(() => [..._cache[0] || (_cache[0] = [createTextVNode(" Filter ", -1)])]),
|
|
8021
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8022
|
+
modelValue: _ctx.v.fields.group_filter.$model.value,
|
|
8023
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.group_filter.$model.value = $event,
|
|
8024
|
+
placeholder: "(member={{dn}})"
|
|
8025
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
8026
|
+
_: 2
|
|
8027
|
+
}, 1032, ["validation"])]),
|
|
8028
|
+
_: 1
|
|
8029
|
+
}, 8, ["field"]),
|
|
8030
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.group_base_dn }, {
|
|
8031
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8032
|
+
label: withCtx(() => [..._cache[1] || (_cache[1] = [createTextVNode(" Base DN ", -1)])]),
|
|
8033
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8034
|
+
modelValue: _ctx.v.fields.group_base_dn.$model.value,
|
|
8035
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.group_base_dn.$model.value = $event
|
|
8036
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
8037
|
+
_: 2
|
|
8038
|
+
}, 1032, ["validation"])]),
|
|
8039
|
+
_: 1
|
|
8040
|
+
}, 8, ["field"]),
|
|
8041
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.group_class }, {
|
|
8042
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8043
|
+
label: withCtx(() => [..._cache[2] || (_cache[2] = [createTextVNode(" Class ", -1)])]),
|
|
8044
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8045
|
+
modelValue: _ctx.v.fields.group_class.$model.value,
|
|
8046
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.group_class.$model.value = $event
|
|
8047
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
8048
|
+
_: 2
|
|
8049
|
+
}, 1032, ["validation"])]),
|
|
8050
|
+
_: 1
|
|
8051
|
+
}, 8, ["field"]),
|
|
8052
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.group_name_attribute }, {
|
|
8053
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8054
|
+
label: withCtx(() => [..._cache[3] || (_cache[3] = [createTextVNode(" Name Attribute ", -1)])]),
|
|
8055
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8056
|
+
modelValue: _ctx.v.fields.group_name_attribute.$model.value,
|
|
8057
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.group_name_attribute.$model.value = $event
|
|
8058
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
8059
|
+
_: 2
|
|
8060
|
+
}, 1032, ["validation"])]),
|
|
8061
|
+
_: 1
|
|
8062
|
+
}, 8, ["field"]),
|
|
8063
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.group_member_attribute }, {
|
|
8064
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8065
|
+
label: withCtx(() => [..._cache[4] || (_cache[4] = [createTextVNode(" Member Attribute ", -1)])]),
|
|
8066
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8067
|
+
modelValue: _ctx.v.fields.group_member_attribute.$model.value,
|
|
8068
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.group_member_attribute.$model.value = $event
|
|
8069
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
8070
|
+
_: 2
|
|
8071
|
+
}, 1032, ["validation"])]),
|
|
8072
|
+
_: 1
|
|
8073
|
+
}, 8, ["field"]),
|
|
8074
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.group_member_user_attribute }, {
|
|
8075
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8076
|
+
label: withCtx(() => [..._cache[5] || (_cache[5] = [createTextVNode(" Member User Attribute ", -1)])]),
|
|
8077
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8078
|
+
modelValue: _ctx.v.fields.group_member_user_attribute.$model.value,
|
|
8079
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.group_member_user_attribute.$model.value = $event
|
|
8080
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
8081
|
+
_: 2
|
|
8082
|
+
}, 1032, ["validation"])]),
|
|
8083
|
+
_: 1
|
|
8084
|
+
}, 8, ["field"])
|
|
8085
|
+
]);
|
|
8086
|
+
}
|
|
8087
|
+
var AIdentityProviderLdapGroupFields_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderLdapGroupFields_vue_vue_type_script_lang_default, [["render", _sfc_render$48]]);
|
|
8088
|
+
//#endregion
|
|
7447
8089
|
//#region src/components/entities/identity-provider/AIdentityProviderLdapUserFields.vue?vue&type=script&lang.ts
|
|
7448
|
-
|
|
8090
|
+
var AIdentityProviderLdapUserFields_vue_vue_type_script_lang_default = defineComponent({
|
|
7449
8091
|
components: {
|
|
7450
8092
|
VCFormGroup,
|
|
7451
8093
|
VCFormInput,
|
|
@@ -7478,6 +8120,72 @@ const AIdentityProviderLdapUserFields = defineComponent({
|
|
|
7478
8120
|
}
|
|
7479
8121
|
});
|
|
7480
8122
|
//#endregion
|
|
8123
|
+
//#region src/components/entities/identity-provider/AIdentityProviderLdapUserFields.vue
|
|
8124
|
+
function _sfc_render$47(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8125
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
8126
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
8127
|
+
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
8128
|
+
return openBlock(), createElementBlock("div", null, [
|
|
8129
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.user_filter }, {
|
|
8130
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8131
|
+
label: withCtx(() => [..._cache[0] || (_cache[0] = [createTextVNode(" Filter ", -1)])]),
|
|
8132
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8133
|
+
modelValue: _ctx.v.fields.user_filter.$model.value,
|
|
8134
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.user_filter.$model.value = $event,
|
|
8135
|
+
placeholder: "(|({name_attribute}={{input}})({mail_attribute}={{input}}))"
|
|
8136
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
8137
|
+
_: 2
|
|
8138
|
+
}, 1032, ["validation"])]),
|
|
8139
|
+
_: 1
|
|
8140
|
+
}, 8, ["field"]),
|
|
8141
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.user_base_dn }, {
|
|
8142
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8143
|
+
label: withCtx(() => [..._cache[1] || (_cache[1] = [createTextVNode(" Base DN ", -1)])]),
|
|
8144
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8145
|
+
modelValue: _ctx.v.fields.user_base_dn.$model.value,
|
|
8146
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.user_base_dn.$model.value = $event
|
|
8147
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
8148
|
+
_: 2
|
|
8149
|
+
}, 1032, ["validation"])]),
|
|
8150
|
+
_: 1
|
|
8151
|
+
}, 8, ["field"]),
|
|
8152
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.user_name_attribute }, {
|
|
8153
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8154
|
+
label: withCtx(() => [..._cache[2] || (_cache[2] = [createTextVNode(" Name Attribute ", -1)])]),
|
|
8155
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8156
|
+
modelValue: _ctx.v.fields.user_name_attribute.$model.value,
|
|
8157
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.user_name_attribute.$model.value = $event
|
|
8158
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
8159
|
+
_: 2
|
|
8160
|
+
}, 1032, ["validation"])]),
|
|
8161
|
+
_: 1
|
|
8162
|
+
}, 8, ["field"]),
|
|
8163
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.user_mail_attribute }, {
|
|
8164
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8165
|
+
label: withCtx(() => [..._cache[3] || (_cache[3] = [createTextVNode(" Mail Attribute ", -1)])]),
|
|
8166
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8167
|
+
modelValue: _ctx.v.fields.user_mail_attribute.$model.value,
|
|
8168
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.user_mail_attribute.$model.value = $event
|
|
8169
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
8170
|
+
_: 2
|
|
8171
|
+
}, 1032, ["validation"])]),
|
|
8172
|
+
_: 1
|
|
8173
|
+
}, 8, ["field"]),
|
|
8174
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.user_display_name_attribute }, {
|
|
8175
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8176
|
+
label: withCtx(() => [..._cache[4] || (_cache[4] = [createTextVNode(" DisplayName Attribute ", -1)])]),
|
|
8177
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8178
|
+
modelValue: _ctx.v.fields.user_display_name_attribute.$model.value,
|
|
8179
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.user_display_name_attribute.$model.value = $event
|
|
8180
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
8181
|
+
_: 2
|
|
8182
|
+
}, 1032, ["validation"])]),
|
|
8183
|
+
_: 1
|
|
8184
|
+
}, 8, ["field"])
|
|
8185
|
+
]);
|
|
8186
|
+
}
|
|
8187
|
+
var AIdentityProviderLdapUserFields_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderLdapUserFields_vue_vue_type_script_lang_default, [["render", _sfc_render$47]]);
|
|
8188
|
+
//#endregion
|
|
7481
8189
|
//#region src/components/entities/identity-provider/protocol/utils.ts
|
|
7482
8190
|
const elements$1 = {
|
|
7483
8191
|
[IdentityProviderProtocol.OAUTH2]: {
|
|
@@ -7513,14 +8221,14 @@ const AIdentityProviderProtocol = defineComponent({
|
|
|
7513
8221
|
});
|
|
7514
8222
|
//#endregion
|
|
7515
8223
|
//#region src/components/entities/identity-provider/AIdentityProviderLdapForm.vue?vue&type=script&lang.ts
|
|
7516
|
-
|
|
8224
|
+
var AIdentityProviderLdapForm_vue_vue_type_script_lang_default = defineComponent({
|
|
7517
8225
|
components: {
|
|
7518
8226
|
AFormSubmit,
|
|
7519
|
-
AIdentityProviderBasicFields,
|
|
7520
|
-
AIdentityProviderLdapConnectionFields,
|
|
7521
|
-
AIdentityProviderLdapCredentialsFields,
|
|
7522
|
-
AIdentityProviderLdapGroupFields,
|
|
7523
|
-
AIdentityProviderLdapUserFields,
|
|
8227
|
+
AIdentityProviderBasicFields: AIdentityProviderBasicFields_default,
|
|
8228
|
+
AIdentityProviderLdapConnectionFields: AIdentityProviderLdapConnectionFields_default,
|
|
8229
|
+
AIdentityProviderLdapCredentialsFields: AIdentityProviderLdapCredentialsFields_default,
|
|
8230
|
+
AIdentityProviderLdapGroupFields: AIdentityProviderLdapGroupFields_default,
|
|
8231
|
+
AIdentityProviderLdapUserFields: AIdentityProviderLdapUserFields_default,
|
|
7524
8232
|
AIdentityProviderProtocol
|
|
7525
8233
|
},
|
|
7526
8234
|
props: {
|
|
@@ -7581,6 +8289,53 @@ const AIdentityProviderLdapForm = defineComponent({
|
|
|
7581
8289
|
}
|
|
7582
8290
|
});
|
|
7583
8291
|
//#endregion
|
|
8292
|
+
//#region src/components/entities/identity-provider/AIdentityProviderLdapForm.vue
|
|
8293
|
+
const _hoisted_1$23 = { class: "mb-3" };
|
|
8294
|
+
const _hoisted_2$16 = { class: "row" };
|
|
8295
|
+
const _hoisted_3$12 = { class: "col" };
|
|
8296
|
+
const _hoisted_4$10 = { class: "col" };
|
|
8297
|
+
const _hoisted_5$9 = { class: "row" };
|
|
8298
|
+
const _hoisted_6$7 = { class: "col" };
|
|
8299
|
+
const _hoisted_7$3 = { class: "col" };
|
|
8300
|
+
function _sfc_render$46(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8301
|
+
const _component_VCIcon = resolveComponent("VCIcon");
|
|
8302
|
+
const _component_AIdentityProviderProtocol = resolveComponent("AIdentityProviderProtocol");
|
|
8303
|
+
const _component_AIdentityProviderBasicFields = resolveComponent("AIdentityProviderBasicFields");
|
|
8304
|
+
const _component_AIdentityProviderLdapCredentialsFields = resolveComponent("AIdentityProviderLdapCredentialsFields");
|
|
8305
|
+
const _component_AIdentityProviderLdapConnectionFields = resolveComponent("AIdentityProviderLdapConnectionFields");
|
|
8306
|
+
const _component_AIdentityProviderLdapUserFields = resolveComponent("AIdentityProviderLdapUserFields");
|
|
8307
|
+
const _component_AIdentityProviderLdapGroupFields = resolveComponent("AIdentityProviderLdapGroupFields");
|
|
8308
|
+
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
8309
|
+
return openBlock(), createElementBlock("form", { onSubmit: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.submit && _ctx.submit(...args), ["prevent"])) }, [
|
|
8310
|
+
!_ctx.data ? (openBlock(), createBlock(_component_AIdentityProviderProtocol, {
|
|
8311
|
+
id: _ctx.ldapProtocol,
|
|
8312
|
+
key: _ctx.ldapProtocol
|
|
8313
|
+
}, {
|
|
8314
|
+
default: withCtx((element) => [createElementVNode("div", null, [createElementVNode("h4", _hoisted_1$23, [createVNode(_component_VCIcon, {
|
|
8315
|
+
name: element.icon,
|
|
8316
|
+
class: "pe-1"
|
|
8317
|
+
}, null, 8, ["name"]), createTextVNode(" " + toDisplayString(element.name), 1)])])]),
|
|
8318
|
+
_: 1
|
|
8319
|
+
}, 8, ["id"])) : createCommentVNode("v-if", true),
|
|
8320
|
+
createElementVNode("div", _hoisted_2$16, [createElementVNode("div", _hoisted_3$12, [createElementVNode("h6", null, [createVNode(_component_VCIcon, { name: "fa6-solid:wrench" }), _cache[1] || (_cache[1] = createTextVNode(" Basic ", -1))]), createVNode(_component_AIdentityProviderBasicFields, { entity: _ctx.data }, null, 8, ["entity"])]), createElementVNode("div", _hoisted_4$10, [createElementVNode("h6", null, [createVNode(_component_VCIcon, { name: "fa6-solid:lock" }), _cache[2] || (_cache[2] = createTextVNode(" Security ", -1))]), createVNode(_component_AIdentityProviderLdapCredentialsFields, { entity: _ctx.data }, null, 8, ["entity"])])]),
|
|
8321
|
+
createElementVNode("h6", null, [createVNode(_component_VCIcon, { name: "fa6-solid:vihara" }), _cache[3] || (_cache[3] = createTextVNode(" Connection ", -1))]),
|
|
8322
|
+
createVNode(_component_AIdentityProviderLdapConnectionFields, { entity: _ctx.data }, null, 8, ["entity"]),
|
|
8323
|
+
createElementVNode("div", _hoisted_5$9, [createElementVNode("div", _hoisted_6$7, [createElementVNode("h6", null, [createVNode(_component_VCIcon, { name: "fa6-solid:user" }), _cache[4] || (_cache[4] = createTextVNode(" User ", -1))]), createVNode(_component_AIdentityProviderLdapUserFields, { entity: _ctx.data }, null, 8, ["entity"])]), createElementVNode("div", _hoisted_7$3, [createElementVNode("h6", null, [createVNode(_component_VCIcon, { name: "fa6-solid:masks-theater" }), _cache[5] || (_cache[5] = createTextVNode(" Group ", -1))]), createVNode(_component_AIdentityProviderLdapGroupFields, { entity: _ctx.data }, null, 8, ["entity"])])]),
|
|
8324
|
+
createVNode(_component_AFormSubmit, {
|
|
8325
|
+
"is-busy": _ctx.busy,
|
|
8326
|
+
"is-editing": _ctx.isEditing,
|
|
8327
|
+
"is-invalid": _ctx.isInvalid,
|
|
8328
|
+
onSubmit: _ctx.submit
|
|
8329
|
+
}, null, 8, [
|
|
8330
|
+
"is-busy",
|
|
8331
|
+
"is-editing",
|
|
8332
|
+
"is-invalid",
|
|
8333
|
+
"onSubmit"
|
|
8334
|
+
])
|
|
8335
|
+
], 32);
|
|
8336
|
+
}
|
|
8337
|
+
var AIdentityProviderLdapForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderLdapForm_vue_vue_type_script_lang_default, [["render", _sfc_render$46]]);
|
|
8338
|
+
//#endregion
|
|
7584
8339
|
//#region src/components/entities/identity-provider/preset/utils.ts
|
|
7585
8340
|
const elements = {
|
|
7586
8341
|
[IdentityProviderPreset.FACEBOOK]: {
|
|
@@ -7665,16 +8420,16 @@ var AIdentityProviderPicker_vue_vue_type_script_lang_default = defineComponent({
|
|
|
7665
8420
|
});
|
|
7666
8421
|
//#endregion
|
|
7667
8422
|
//#region src/components/entities/identity-provider/AIdentityProviderPicker.vue
|
|
7668
|
-
const _hoisted_1$
|
|
7669
|
-
const _hoisted_2$
|
|
7670
|
-
const _hoisted_3$
|
|
7671
|
-
const _hoisted_4$
|
|
7672
|
-
const _hoisted_5$
|
|
7673
|
-
function _sfc_render$
|
|
8423
|
+
const _hoisted_1$22 = { class: "flex flex-col gap-2" };
|
|
8424
|
+
const _hoisted_2$15 = { class: "flex flex-row gap-2 flex-wrap" };
|
|
8425
|
+
const _hoisted_3$11 = ["onClick"];
|
|
8426
|
+
const _hoisted_4$9 = { class: "flex flex-row gap-2 flex-wrap" };
|
|
8427
|
+
const _hoisted_5$8 = ["onClick"];
|
|
8428
|
+
function _sfc_render$45(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7674
8429
|
const _component_VCIcon = resolveComponent("VCIcon");
|
|
7675
8430
|
const _component_AIdentityProviderProtocol = resolveComponent("AIdentityProviderProtocol");
|
|
7676
8431
|
const _component_AIdentityProviderPreset = resolveComponent("AIdentityProviderPreset");
|
|
7677
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
8432
|
+
return openBlock(), createElementBlock("div", _hoisted_1$22, [createElementVNode("div", null, [_cache[0] || (_cache[0] = createElementVNode("h6", null, "Protocols", -1)), createElementVNode("div", _hoisted_2$15, [(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.protocols, (item, key) => {
|
|
7678
8433
|
return openBlock(), createBlock(_component_AIdentityProviderProtocol, {
|
|
7679
8434
|
key,
|
|
7680
8435
|
id: item
|
|
@@ -7685,10 +8440,10 @@ function _sfc_render$38(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
7685
8440
|
}, [createElementVNode("div", null, [createVNode(_component_VCIcon, {
|
|
7686
8441
|
class: "text-2xl",
|
|
7687
8442
|
name: props.icon
|
|
7688
|
-
}, null, 8, ["name"])]), createElementVNode("div", null, toDisplayString(props.name), 1)], 10, _hoisted_3$
|
|
8443
|
+
}, null, 8, ["name"])]), createElementVNode("div", null, toDisplayString(props.name), 1)], 10, _hoisted_3$11)]),
|
|
7689
8444
|
_: 2
|
|
7690
8445
|
}, 1032, ["id"]);
|
|
7691
|
-
}), 128))])]), createElementVNode("div", null, [_cache[1] || (_cache[1] = createElementVNode("h6", null, "Presets", -1)), createElementVNode("div", _hoisted_4$
|
|
8446
|
+
}), 128))])]), createElementVNode("div", null, [_cache[1] || (_cache[1] = createElementVNode("h6", null, "Presets", -1)), createElementVNode("div", _hoisted_4$9, [(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.presets, (item, key) => {
|
|
7692
8447
|
return openBlock(), createBlock(_component_AIdentityProviderPreset, {
|
|
7693
8448
|
key,
|
|
7694
8449
|
id: item
|
|
@@ -7699,15 +8454,15 @@ function _sfc_render$38(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
7699
8454
|
}, [createElementVNode("div", null, [createVNode(_component_VCIcon, {
|
|
7700
8455
|
class: "text-2xl",
|
|
7701
8456
|
name: props.icon
|
|
7702
|
-
}, null, 8, ["name"])]), createElementVNode("div", null, toDisplayString(props.name), 1)], 10, _hoisted_5$
|
|
8457
|
+
}, null, 8, ["name"])]), createElementVNode("div", null, toDisplayString(props.name), 1)], 10, _hoisted_5$8)]),
|
|
7703
8458
|
_: 2
|
|
7704
8459
|
}, 1032, ["id"]);
|
|
7705
8460
|
}), 128))])])]);
|
|
7706
8461
|
}
|
|
7707
|
-
var AIdentityProviderPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderPicker_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
8462
|
+
var AIdentityProviderPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderPicker_vue_vue_type_script_lang_default, [["render", _sfc_render$45], ["__scopeId", "data-v-cb0d0718"]]);
|
|
7708
8463
|
//#endregion
|
|
7709
8464
|
//#region src/components/entities/identity-provider/AIdentityProviderOAuth2ClientFields.vue?vue&type=script&lang.ts
|
|
7710
|
-
|
|
8465
|
+
var AIdentityProviderOAuth2ClientFields_vue_vue_type_script_lang_default = defineComponent({
|
|
7711
8466
|
components: {
|
|
7712
8467
|
VCFormGroup,
|
|
7713
8468
|
VCFormInput,
|
|
@@ -7734,6 +8489,49 @@ const AIdentityProviderOAuth2ClientFields = defineComponent({
|
|
|
7734
8489
|
}
|
|
7735
8490
|
});
|
|
7736
8491
|
//#endregion
|
|
8492
|
+
//#region src/components/entities/identity-provider/AIdentityProviderOAuth2ClientFields.vue
|
|
8493
|
+
function _sfc_render$44(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8494
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
8495
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
8496
|
+
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
8497
|
+
const _component_VCIcon = resolveComponent("VCIcon");
|
|
8498
|
+
return openBlock(), createElementBlock("div", null, [createVNode(_component_IFieldValidation, { field: _ctx.v.fields.client_id }, {
|
|
8499
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8500
|
+
label: withCtx(() => [..._cache[1] || (_cache[1] = [createTextVNode(" Client ID ", -1)])]),
|
|
8501
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8502
|
+
modelValue: _ctx.v.fields.client_id.$model.value,
|
|
8503
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.client_id.$model.value = $event
|
|
8504
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
8505
|
+
_: 2
|
|
8506
|
+
}, 1032, ["validation"])]),
|
|
8507
|
+
_: 1
|
|
8508
|
+
}, 8, ["field"]), createVNode(_component_IFieldValidation, { field: _ctx.v.fields.client_secret }, {
|
|
8509
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8510
|
+
label: withCtx(() => [..._cache[2] || (_cache[2] = [createTextVNode(" Client Secret ", -1)])]),
|
|
8511
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8512
|
+
modelValue: _ctx.v.fields.client_secret.$model.value,
|
|
8513
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.client_secret.$model.value = $event,
|
|
8514
|
+
type: _ctx.secretShow ? "text" : "password",
|
|
8515
|
+
autocomplete: "new-password"
|
|
8516
|
+
}, {
|
|
8517
|
+
groupAppend: withCtx(() => [createElementVNode("button", {
|
|
8518
|
+
class: "btn",
|
|
8519
|
+
type: "button",
|
|
8520
|
+
onClick: _cache[0] || (_cache[0] = withModifiers(($event) => _ctx.secretShow = !_ctx.secretShow, ["prevent"]))
|
|
8521
|
+
}, [createVNode(_component_VCIcon, { name: _ctx.secretShow ? "fa6-solid:eye-slash" : "fa6-solid:eye" }, null, 8, ["name"])])]),
|
|
8522
|
+
_: 1
|
|
8523
|
+
}, 8, [
|
|
8524
|
+
"modelValue",
|
|
8525
|
+
"onUpdate:modelValue",
|
|
8526
|
+
"type"
|
|
8527
|
+
])]),
|
|
8528
|
+
_: 2
|
|
8529
|
+
}, 1032, ["validation"])]),
|
|
8530
|
+
_: 1
|
|
8531
|
+
}, 8, ["field"])]);
|
|
8532
|
+
}
|
|
8533
|
+
var AIdentityProviderOAuth2ClientFields_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderOAuth2ClientFields_vue_vue_type_script_lang_default, [["render", _sfc_render$44]]);
|
|
8534
|
+
//#endregion
|
|
7737
8535
|
//#region src/components/entities/identity-provider/AIdentityProviderOAuth2Discovery.vue?vue&type=script&lang.ts
|
|
7738
8536
|
var DiscoveryUrlValidator = class extends Container {
|
|
7739
8537
|
initialize() {
|
|
@@ -7741,56 +8539,99 @@ var DiscoveryUrlValidator = class extends Container {
|
|
|
7741
8539
|
this.mount("url", { optional: true }, createValidator(url()));
|
|
7742
8540
|
}
|
|
7743
8541
|
};
|
|
8542
|
+
var AIdentityProviderOAuth2Discovery_vue_vue_type_script_lang_default = defineComponent({
|
|
8543
|
+
components: {
|
|
8544
|
+
VCFormGroup,
|
|
8545
|
+
VCFormInput,
|
|
8546
|
+
IFieldValidation
|
|
8547
|
+
},
|
|
8548
|
+
emits: ["lookup", "failed"],
|
|
8549
|
+
setup(_, setup) {
|
|
8550
|
+
const busy = ref(false);
|
|
8551
|
+
const form = reactive({ url: "" });
|
|
8552
|
+
const v = useValidup(new DiscoveryUrlValidator(), form, { detached: true });
|
|
8553
|
+
const lookupValid = ref(false);
|
|
8554
|
+
const message = ref(null);
|
|
8555
|
+
const apiClient = new Client();
|
|
8556
|
+
const lookup = async () => {
|
|
8557
|
+
if (busy.value || v.fields.url.$invalid.value) return;
|
|
8558
|
+
busy.value = true;
|
|
8559
|
+
message.value = null;
|
|
8560
|
+
lookupValid.value = false;
|
|
8561
|
+
try {
|
|
8562
|
+
const response = await apiClient.get(form.url);
|
|
8563
|
+
if (isOpenIDProviderMetadata(response.data)) {
|
|
8564
|
+
setup.emit("lookup", response.data);
|
|
8565
|
+
lookupValid.value = true;
|
|
8566
|
+
}
|
|
8567
|
+
} catch (e) {
|
|
8568
|
+
lookupValid.value = false;
|
|
8569
|
+
if (e instanceof Error) {
|
|
8570
|
+
message.value = `Lookup failed with: ${e.message}`;
|
|
8571
|
+
setup.emit("failed", e);
|
|
8572
|
+
}
|
|
8573
|
+
} finally {
|
|
8574
|
+
busy.value = false;
|
|
8575
|
+
}
|
|
8576
|
+
};
|
|
8577
|
+
return {
|
|
8578
|
+
v,
|
|
8579
|
+
message,
|
|
8580
|
+
lookupValid,
|
|
8581
|
+
isDisabled: computed(() => busy.value || !form.url || v.$invalid.value),
|
|
8582
|
+
lookup
|
|
8583
|
+
};
|
|
8584
|
+
}
|
|
8585
|
+
});
|
|
8586
|
+
//#endregion
|
|
8587
|
+
//#region src/components/entities/identity-provider/AIdentityProviderOAuth2Discovery.vue
|
|
8588
|
+
const _hoisted_1$21 = {
|
|
8589
|
+
key: 0,
|
|
8590
|
+
class: "alert alert-sm alert-warning"
|
|
8591
|
+
};
|
|
8592
|
+
const _hoisted_2$14 = ["disabled"];
|
|
8593
|
+
function _sfc_render$43(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8594
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
8595
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
8596
|
+
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
8597
|
+
const _component_VCIcon = resolveComponent("VCIcon");
|
|
8598
|
+
return openBlock(), createElementBlock("div", null, [
|
|
8599
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.url }, {
|
|
8600
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8601
|
+
label: withCtx(() => [..._cache[1] || (_cache[1] = [createTextVNode(" Discovery ", -1)])]),
|
|
8602
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8603
|
+
modelValue: _ctx.v.fields.url.$model.value,
|
|
8604
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.url.$model.value = $event,
|
|
8605
|
+
class: normalizeClass({ "is-valid": _ctx.lookupValid }),
|
|
8606
|
+
placeholder: "https://example.com/.well-known/openid-configuration"
|
|
8607
|
+
}, null, 8, [
|
|
8608
|
+
"modelValue",
|
|
8609
|
+
"onUpdate:modelValue",
|
|
8610
|
+
"class"
|
|
8611
|
+
])]),
|
|
8612
|
+
_: 2
|
|
8613
|
+
}, 1032, ["validation"])]),
|
|
8614
|
+
_: 1
|
|
8615
|
+
}, 8, ["field"]),
|
|
8616
|
+
_ctx.message ? (openBlock(), createElementBlock("div", _hoisted_1$21, toDisplayString(_ctx.message), 1)) : createCommentVNode("v-if", true),
|
|
8617
|
+
createElementVNode("button", {
|
|
8618
|
+
type: "button",
|
|
8619
|
+
class: "btn btn-xs btn-primary mb-1",
|
|
8620
|
+
disabled: _ctx.isDisabled,
|
|
8621
|
+
onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.lookup && _ctx.lookup(...args), ["prevent"]))
|
|
8622
|
+
}, [createVNode(_component_VCIcon, {
|
|
8623
|
+
name: "fa6-solid:magnifying-glass",
|
|
8624
|
+
class: "pe-1"
|
|
8625
|
+
}), _cache[2] || (_cache[2] = createTextVNode(" Lookup ", -1))], 8, _hoisted_2$14)
|
|
8626
|
+
]);
|
|
8627
|
+
}
|
|
7744
8628
|
//#endregion
|
|
7745
8629
|
//#region src/components/entities/identity-provider/AIdentityProviderOAuth2EndpointFields.vue?vue&type=script&lang.ts
|
|
7746
8630
|
var AIdentityProviderOAuth2EndpointFields_vue_vue_type_script_lang_default = defineComponent({
|
|
7747
8631
|
components: {
|
|
7748
8632
|
VCFormGroup,
|
|
7749
8633
|
VCFormInput,
|
|
7750
|
-
AIdentityProviderOAuth2Discovery:
|
|
7751
|
-
components: {
|
|
7752
|
-
VCFormGroup,
|
|
7753
|
-
VCFormInput,
|
|
7754
|
-
IFieldValidation
|
|
7755
|
-
},
|
|
7756
|
-
emits: ["lookup", "failed"],
|
|
7757
|
-
setup(_, setup) {
|
|
7758
|
-
const busy = ref(false);
|
|
7759
|
-
const form = reactive({ url: "" });
|
|
7760
|
-
const v = useValidup(new DiscoveryUrlValidator(), form, { detached: true });
|
|
7761
|
-
const lookupValid = ref(false);
|
|
7762
|
-
const message = ref(null);
|
|
7763
|
-
const apiClient = new Client();
|
|
7764
|
-
const lookup = async () => {
|
|
7765
|
-
if (busy.value || v.fields.url.$invalid.value) return;
|
|
7766
|
-
busy.value = true;
|
|
7767
|
-
message.value = null;
|
|
7768
|
-
lookupValid.value = false;
|
|
7769
|
-
try {
|
|
7770
|
-
const response = await apiClient.get(form.url);
|
|
7771
|
-
if (isOpenIDProviderMetadata(response.data)) {
|
|
7772
|
-
setup.emit("lookup", response.data);
|
|
7773
|
-
lookupValid.value = true;
|
|
7774
|
-
}
|
|
7775
|
-
} catch (e) {
|
|
7776
|
-
lookupValid.value = false;
|
|
7777
|
-
if (e instanceof Error) {
|
|
7778
|
-
message.value = `Lookup failed with: ${e.message}`;
|
|
7779
|
-
setup.emit("failed", e);
|
|
7780
|
-
}
|
|
7781
|
-
} finally {
|
|
7782
|
-
busy.value = false;
|
|
7783
|
-
}
|
|
7784
|
-
};
|
|
7785
|
-
return {
|
|
7786
|
-
v,
|
|
7787
|
-
message,
|
|
7788
|
-
lookupValid,
|
|
7789
|
-
isDisabled: computed(() => busy.value || !form.url || v.$invalid.value),
|
|
7790
|
-
lookup
|
|
7791
|
-
};
|
|
7792
|
-
}
|
|
7793
|
-
}),
|
|
8634
|
+
AIdentityProviderOAuth2Discovery: /* @__PURE__ */ _plugin_vue_export_helper_default(AIdentityProviderOAuth2Discovery_vue_vue_type_script_lang_default, [["render", _sfc_render$43]]),
|
|
7794
8635
|
IFieldValidation
|
|
7795
8636
|
},
|
|
7796
8637
|
props: {
|
|
@@ -7829,7 +8670,7 @@ var AIdentityProviderOAuth2EndpointFields_vue_vue_type_script_lang_default = def
|
|
|
7829
8670
|
});
|
|
7830
8671
|
//#endregion
|
|
7831
8672
|
//#region src/components/entities/identity-provider/AIdentityProviderOAuth2EndpointFields.vue
|
|
7832
|
-
function _sfc_render$
|
|
8673
|
+
function _sfc_render$42(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7833
8674
|
const _component_AIdentityProviderOAuth2Discovery = resolveComponent("AIdentityProviderOAuth2Discovery");
|
|
7834
8675
|
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
7835
8676
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
@@ -7888,12 +8729,12 @@ function _sfc_render$37(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
7888
8729
|
}
|
|
7889
8730
|
//#endregion
|
|
7890
8731
|
//#region src/components/entities/identity-provider/AIdentityProviderOAuth2Form.vue?vue&type=script&lang.ts
|
|
7891
|
-
|
|
8732
|
+
var AIdentityProviderOAuth2Form_vue_vue_type_script_lang_default = defineComponent({
|
|
7892
8733
|
components: {
|
|
7893
8734
|
AFormSubmit,
|
|
7894
|
-
AIdentityProviderBasicFields,
|
|
7895
|
-
AIdentityProviderOAuth2ClientFields,
|
|
7896
|
-
AIdentityProviderOAuth2EndpointFields: /* @__PURE__ */ _plugin_vue_export_helper_default(AIdentityProviderOAuth2EndpointFields_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
8735
|
+
AIdentityProviderBasicFields: AIdentityProviderBasicFields_default,
|
|
8736
|
+
AIdentityProviderOAuth2ClientFields: AIdentityProviderOAuth2ClientFields_default,
|
|
8737
|
+
AIdentityProviderOAuth2EndpointFields: /* @__PURE__ */ _plugin_vue_export_helper_default(AIdentityProviderOAuth2EndpointFields_vue_vue_type_script_lang_default, [["render", _sfc_render$42]]),
|
|
7897
8738
|
AIdentityProviderPreset,
|
|
7898
8739
|
AIdentityProviderProtocol,
|
|
7899
8740
|
VCFormGroup,
|
|
@@ -7995,11 +8836,78 @@ const AIdentityProviderOAuth2Form = defineComponent({
|
|
|
7995
8836
|
}
|
|
7996
8837
|
});
|
|
7997
8838
|
//#endregion
|
|
8839
|
+
//#region src/components/entities/identity-provider/AIdentityProviderOAuth2Form.vue
|
|
8840
|
+
const _hoisted_1$20 = { class: "mb-3" };
|
|
8841
|
+
const _hoisted_2$13 = { class: "mb-3" };
|
|
8842
|
+
const _hoisted_3$10 = { class: "row" };
|
|
8843
|
+
const _hoisted_4$8 = { class: "col" };
|
|
8844
|
+
const _hoisted_5$7 = { class: "col" };
|
|
8845
|
+
function _sfc_render$41(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8846
|
+
const _component_VCIcon = resolveComponent("VCIcon");
|
|
8847
|
+
const _component_AIdentityProviderPreset = resolveComponent("AIdentityProviderPreset");
|
|
8848
|
+
const _component_AIdentityProviderProtocol = resolveComponent("AIdentityProviderProtocol");
|
|
8849
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
8850
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
8851
|
+
const _component_AIdentityProviderBasicFields = resolveComponent("AIdentityProviderBasicFields");
|
|
8852
|
+
const _component_AIdentityProviderOAuth2ClientFields = resolveComponent("AIdentityProviderOAuth2ClientFields");
|
|
8853
|
+
const _component_AIdentityProviderOAuth2EndpointFields = resolveComponent("AIdentityProviderOAuth2EndpointFields");
|
|
8854
|
+
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
8855
|
+
return openBlock(), createElementBlock("form", { onSubmit: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.submit && _ctx.submit(...args), ["prevent"])) }, [
|
|
8856
|
+
!_ctx.data ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [_ctx.presetEff ? (openBlock(), createBlock(_component_AIdentityProviderPreset, {
|
|
8857
|
+
id: _ctx.presetEff,
|
|
8858
|
+
key: _ctx.presetEff
|
|
8859
|
+
}, {
|
|
8860
|
+
default: withCtx((element) => [createElementVNode("div", null, [createElementVNode("h4", _hoisted_1$20, [createVNode(_component_VCIcon, {
|
|
8861
|
+
name: element.icon,
|
|
8862
|
+
class: "pe-1"
|
|
8863
|
+
}, null, 8, ["name"]), createTextVNode(" " + toDisplayString(element.name), 1)])])]),
|
|
8864
|
+
_: 1
|
|
8865
|
+
}, 8, ["id"])) : _ctx.protocolEff ? (openBlock(), createBlock(_component_AIdentityProviderProtocol, {
|
|
8866
|
+
id: _ctx.protocolEff,
|
|
8867
|
+
key: _ctx.protocolEff
|
|
8868
|
+
}, {
|
|
8869
|
+
default: withCtx((element) => [createElementVNode("div", null, [createElementVNode("h4", _hoisted_2$13, [createVNode(_component_VCIcon, {
|
|
8870
|
+
name: element.icon,
|
|
8871
|
+
class: "pe-1"
|
|
8872
|
+
}, null, 8, ["name"]), createTextVNode(" " + toDisplayString(element.name), 1)])])]),
|
|
8873
|
+
_: 1
|
|
8874
|
+
}, 8, ["id"])) : createCommentVNode("v-if", true)], 64)) : createCommentVNode("v-if", true),
|
|
8875
|
+
_ctx.isEditing ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [createElementVNode("h6", null, [createVNode(_component_VCIcon, { name: "fa6-solid:circle-info" }), _cache[1] || (_cache[1] = createTextVNode(" Details ", -1))]), createVNode(_component_VCFormGroup, null, {
|
|
8876
|
+
label: withCtx(() => [..._cache[2] || (_cache[2] = [createTextVNode(" Redirect URL ", -1)])]),
|
|
8877
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8878
|
+
"model-value": _ctx.authorizeUri,
|
|
8879
|
+
disabled: true
|
|
8880
|
+
}, null, 8, ["model-value"])]),
|
|
8881
|
+
_: 1
|
|
8882
|
+
})], 64)) : createCommentVNode("v-if", true),
|
|
8883
|
+
createElementVNode("div", _hoisted_3$10, [createElementVNode("div", _hoisted_4$8, [createElementVNode("h6", null, [createVNode(_component_VCIcon, { name: "fa6-solid:wrench" }), _cache[3] || (_cache[3] = createTextVNode(" Basic ", -1))]), createVNode(_component_AIdentityProviderBasicFields, {
|
|
8884
|
+
ref: "basicFieldsRef",
|
|
8885
|
+
entity: _ctx.data
|
|
8886
|
+
}, null, 8, ["entity"])]), createElementVNode("div", _hoisted_5$7, [createElementVNode("h6", null, [createVNode(_component_VCIcon, { name: "fa6-solid:lock" }), _cache[4] || (_cache[4] = createTextVNode(" Security ", -1))]), createVNode(_component_AIdentityProviderOAuth2ClientFields, { entity: _ctx.data }, null, 8, ["entity"])])]),
|
|
8887
|
+
!_ctx.presetEff ? (openBlock(), createElementBlock(Fragment, { key: 2 }, [createElementVNode("h6", null, [createVNode(_component_VCIcon, { name: "fa6-solid:vihara" }), _cache[5] || (_cache[5] = createTextVNode(" Endpoints ", -1))]), createVNode(_component_AIdentityProviderOAuth2EndpointFields, {
|
|
8888
|
+
entity: _ctx.data,
|
|
8889
|
+
discovery: _ctx.oidcEnabled
|
|
8890
|
+
}, null, 8, ["entity", "discovery"])], 64)) : createCommentVNode("v-if", true),
|
|
8891
|
+
createVNode(_component_AFormSubmit, {
|
|
8892
|
+
"is-busy": _ctx.busy,
|
|
8893
|
+
"is-editing": _ctx.isEditing,
|
|
8894
|
+
"is-invalid": _ctx.isInvalid,
|
|
8895
|
+
onSubmit: _ctx.submit
|
|
8896
|
+
}, null, 8, [
|
|
8897
|
+
"is-busy",
|
|
8898
|
+
"is-editing",
|
|
8899
|
+
"is-invalid",
|
|
8900
|
+
"onSubmit"
|
|
8901
|
+
])
|
|
8902
|
+
], 32);
|
|
8903
|
+
}
|
|
8904
|
+
var AIdentityProviderOAuth2Form_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderOAuth2Form_vue_vue_type_script_lang_default, [["render", _sfc_render$41]]);
|
|
8905
|
+
//#endregion
|
|
7998
8906
|
//#region src/components/entities/identity-provider/AIdentityProviderForm.vue?vue&type=script&lang.ts
|
|
7999
|
-
|
|
8907
|
+
var AIdentityProviderForm_vue_vue_type_script_lang_default = defineComponent({
|
|
8000
8908
|
components: {
|
|
8001
|
-
AIdentityProviderLdapForm,
|
|
8002
|
-
AIdentityProviderOAuth2Form,
|
|
8909
|
+
AIdentityProviderLdapForm: AIdentityProviderLdapForm_default,
|
|
8910
|
+
AIdentityProviderOAuth2Form: AIdentityProviderOAuth2Form_default,
|
|
8003
8911
|
AIdentityProviderPicker: AIdentityProviderPicker_default
|
|
8004
8912
|
},
|
|
8005
8913
|
props: {
|
|
@@ -8070,6 +8978,62 @@ const AIdentityProviderForm = defineComponent({
|
|
|
8070
8978
|
}
|
|
8071
8979
|
});
|
|
8072
8980
|
//#endregion
|
|
8981
|
+
//#region src/components/entities/identity-provider/AIdentityProviderForm.vue
|
|
8982
|
+
const _hoisted_1$19 = {
|
|
8983
|
+
key: 3,
|
|
8984
|
+
class: "alert alert-warning alert-sm"
|
|
8985
|
+
};
|
|
8986
|
+
function _sfc_render$40(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8987
|
+
const _component_AIdentityProviderPicker = resolveComponent("AIdentityProviderPicker");
|
|
8988
|
+
const _component_AIdentityProviderOAuth2Form = resolveComponent("AIdentityProviderOAuth2Form");
|
|
8989
|
+
const _component_AIdentityProviderLdapForm = resolveComponent("AIdentityProviderLdapForm");
|
|
8990
|
+
return openBlock(), createElementBlock("div", null, [!_ctx.localEntity ? (openBlock(), createBlock(_component_AIdentityProviderPicker, {
|
|
8991
|
+
key: 0,
|
|
8992
|
+
protocol: _ctx.protocol ?? void 0,
|
|
8993
|
+
preset: _ctx.preset ?? void 0,
|
|
8994
|
+
onPick: _ctx.onPick
|
|
8995
|
+
}, null, 8, [
|
|
8996
|
+
"protocol",
|
|
8997
|
+
"preset",
|
|
8998
|
+
"onPick"
|
|
8999
|
+
])) : createCommentVNode("v-if", true), _ctx.isOAuth(_ctx.protocol) ? (openBlock(), createBlock(_component_AIdentityProviderOAuth2Form, {
|
|
9000
|
+
key: 1,
|
|
9001
|
+
entity: _ctx.localEntity,
|
|
9002
|
+
"realm-id": _ctx.realmId,
|
|
9003
|
+
protocol: _ctx.protocol,
|
|
9004
|
+
preset: _ctx.preset,
|
|
9005
|
+
onCreated: _ctx.onChildCreated,
|
|
9006
|
+
onUpdated: _ctx.onChildUpdated,
|
|
9007
|
+
onDeleted: _ctx.onChildDeleted,
|
|
9008
|
+
onFailed: _ctx.onChildFailed
|
|
9009
|
+
}, null, 8, [
|
|
9010
|
+
"entity",
|
|
9011
|
+
"realm-id",
|
|
9012
|
+
"protocol",
|
|
9013
|
+
"preset",
|
|
9014
|
+
"onCreated",
|
|
9015
|
+
"onUpdated",
|
|
9016
|
+
"onDeleted",
|
|
9017
|
+
"onFailed"
|
|
9018
|
+
])) : _ctx.isLdap(_ctx.protocol) ? (openBlock(), createBlock(_component_AIdentityProviderLdapForm, {
|
|
9019
|
+
key: 2,
|
|
9020
|
+
entity: _ctx.localEntity,
|
|
9021
|
+
"realm-id": _ctx.realmId,
|
|
9022
|
+
onCreated: _ctx.onChildCreated,
|
|
9023
|
+
onUpdated: _ctx.onChildUpdated,
|
|
9024
|
+
onDeleted: _ctx.onChildDeleted,
|
|
9025
|
+
onFailed: _ctx.onChildFailed
|
|
9026
|
+
}, null, 8, [
|
|
9027
|
+
"entity",
|
|
9028
|
+
"realm-id",
|
|
9029
|
+
"onCreated",
|
|
9030
|
+
"onUpdated",
|
|
9031
|
+
"onDeleted",
|
|
9032
|
+
"onFailed"
|
|
9033
|
+
])) : _ctx.protocol || _ctx.preset ? (openBlock(), createElementBlock("div", _hoisted_1$19, toDisplayString(_ctx.preset ?? _ctx.protocol) + " is not supported yet :/ ", 1)) : createCommentVNode("v-if", true)]);
|
|
9034
|
+
}
|
|
9035
|
+
var AIdentityProviderForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderForm_vue_vue_type_script_lang_default, [["render", _sfc_render$40]]);
|
|
9036
|
+
//#endregion
|
|
8073
9037
|
//#region src/components/entities/identity-provider/AIdentityProviders.ts
|
|
8074
9038
|
const AIdentityProviders = defineComponent({
|
|
8075
9039
|
props: defineEntityCollectionVProps(),
|
|
@@ -8081,13 +9045,15 @@ const AIdentityProviders = defineComponent({
|
|
|
8081
9045
|
props,
|
|
8082
9046
|
setup: ctx
|
|
8083
9047
|
});
|
|
9048
|
+
const translationName = useTranslation({
|
|
9049
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
9050
|
+
key: TranslatorTranslationEntityKey.IDENTITY_PROVIDER,
|
|
9051
|
+
count: 2
|
|
9052
|
+
});
|
|
8084
9053
|
const translation = useTranslation({
|
|
8085
|
-
namespace:
|
|
8086
|
-
key:
|
|
8087
|
-
data: { name:
|
|
8088
|
-
namespace: "default",
|
|
8089
|
-
key: "identityProviders"
|
|
8090
|
-
}) }
|
|
9054
|
+
namespace: TranslatorTranslationNamespace.VUECS,
|
|
9055
|
+
key: TranslatorTranslationVuecsKey.NO_MORE,
|
|
9056
|
+
data: { name: translationName }
|
|
8091
9057
|
});
|
|
8092
9058
|
return () => render({ noMore: { content: translation.value } });
|
|
8093
9059
|
}
|
|
@@ -8107,7 +9073,7 @@ var AIdentityProviderIcon_vue_vue_type_script_lang_default = defineComponent({
|
|
|
8107
9073
|
});
|
|
8108
9074
|
//#endregion
|
|
8109
9075
|
//#region src/components/entities/identity-provider/AIdentityProviderIcon.vue
|
|
8110
|
-
function _sfc_render$
|
|
9076
|
+
function _sfc_render$39(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8111
9077
|
const _component_VCIcon = resolveComponent("VCIcon");
|
|
8112
9078
|
const _component_AIdentityProviderPreset = resolveComponent("AIdentityProviderPreset");
|
|
8113
9079
|
const _component_AIdentityProviderProtocol = resolveComponent("AIdentityProviderProtocol");
|
|
@@ -8131,7 +9097,7 @@ function _sfc_render$36(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8131
9097
|
_: 1
|
|
8132
9098
|
}, 8, ["id"])) : createCommentVNode("v-if", true);
|
|
8133
9099
|
}
|
|
8134
|
-
var AIdentityProviderIcon_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderIcon_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
9100
|
+
var AIdentityProviderIcon_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderIcon_vue_vue_type_script_lang_default, [["render", _sfc_render$39]]);
|
|
8135
9101
|
//#endregion
|
|
8136
9102
|
//#region src/components/entities/identity-provider-role/AIdentityProviderRoleAssignment.vue?vue&type=script&lang.ts
|
|
8137
9103
|
var RoleMappingAttributesValidator = class extends Container {
|
|
@@ -8171,7 +9137,10 @@ var AIdentityProviderRoleAssignment_vue_vue_type_script_lang_default = defineCom
|
|
|
8171
9137
|
value_is_regex: false
|
|
8172
9138
|
});
|
|
8173
9139
|
const v = useValidup(new RoleMappingAttributesValidator(), form);
|
|
8174
|
-
const translationsDefault =
|
|
9140
|
+
const translationsDefault = useTranslations([{
|
|
9141
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
9142
|
+
key: TranslatorTranslationFieldKey.VALUE_IS_REGEX
|
|
9143
|
+
}]);
|
|
8175
9144
|
const manager = defineEntityManager({
|
|
8176
9145
|
type: `${EntityType.IDENTITY_PROVIDER_ROLE_MAPPING}`,
|
|
8177
9146
|
setup,
|
|
@@ -8210,23 +9179,23 @@ var AIdentityProviderRoleAssignment_vue_vue_type_script_lang_default = defineCom
|
|
|
8210
9179
|
});
|
|
8211
9180
|
//#endregion
|
|
8212
9181
|
//#region src/components/entities/identity-provider-role/AIdentityProviderRoleAssignment.vue
|
|
8213
|
-
const _hoisted_1$
|
|
8214
|
-
const _hoisted_2$
|
|
8215
|
-
const _hoisted_3$
|
|
8216
|
-
const _hoisted_4$
|
|
8217
|
-
const _hoisted_5$
|
|
8218
|
-
const _hoisted_6$
|
|
9182
|
+
const _hoisted_1$18 = { class: "flex flex-col" };
|
|
9183
|
+
const _hoisted_2$12 = { class: "flex flex-row" };
|
|
9184
|
+
const _hoisted_3$9 = { class: "me-2" };
|
|
9185
|
+
const _hoisted_4$7 = { class: "ms-auto" };
|
|
9186
|
+
const _hoisted_5$6 = ["disabled"];
|
|
9187
|
+
const _hoisted_6$6 = {
|
|
8219
9188
|
key: 0,
|
|
8220
9189
|
class: "mt-2"
|
|
8221
9190
|
};
|
|
8222
|
-
function _sfc_render$
|
|
9191
|
+
function _sfc_render$38(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8223
9192
|
const _component_VCIcon = resolveComponent("VCIcon");
|
|
8224
9193
|
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
8225
9194
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
8226
9195
|
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
8227
9196
|
const _component_VCFormSwitch = resolveComponent("VCFormSwitch");
|
|
8228
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
8229
|
-
createElementVNode("div", _hoisted_3$
|
|
9197
|
+
return openBlock(), createElementBlock("div", _hoisted_1$18, [createElementVNode("div", _hoisted_2$12, [
|
|
9198
|
+
createElementVNode("div", _hoisted_3$9, [createElementVNode("button", {
|
|
8230
9199
|
class: "btn btn-xs btn-dark",
|
|
8231
9200
|
onClick: _cache[0] || (_cache[0] = withModifiers(($event) => _ctx.toggleDisplay(), ["prevent"]))
|
|
8232
9201
|
}, [createVNode(_component_VCIcon, { name: _ctx.display ? "fa6-solid:chevron-up" : "fa6-solid:chevron-down" }, null, 8, ["name"])])]),
|
|
@@ -8234,7 +9203,7 @@ function _sfc_render$35(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8234
9203
|
class: "mb-0",
|
|
8235
9204
|
onClick: _cache[1] || (_cache[1] = withModifiers(($event) => _ctx.toggleDisplay(), ["prevent"]))
|
|
8236
9205
|
}, toDisplayString(_ctx.role.name), 1)]),
|
|
8237
|
-
createElementVNode("div", _hoisted_4$
|
|
9206
|
+
createElementVNode("div", _hoisted_4$7, [createElementVNode("button", {
|
|
8238
9207
|
class: normalizeClass(["btn btn-xs", {
|
|
8239
9208
|
"btn-primary": !_ctx.manager.data.value,
|
|
8240
9209
|
"btn-dark": !!_ctx.manager.data.value
|
|
@@ -8245,8 +9214,8 @@ function _sfc_render$35(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8245
9214
|
class: "btn btn-xs btn-danger ms-1",
|
|
8246
9215
|
disabled: _ctx.manager.busy.value,
|
|
8247
9216
|
onClick: _cache[3] || (_cache[3] = (...args) => _ctx.handleDelete && _ctx.handleDelete(...args))
|
|
8248
|
-
}, [createVNode(_component_VCIcon, { name: "fa6-solid:trash" })], 8, _hoisted_5$
|
|
8249
|
-
]), _ctx.display ? (openBlock(), createElementBlock("div", _hoisted_6$
|
|
9217
|
+
}, [createVNode(_component_VCIcon, { name: "fa6-solid:trash" })], 8, _hoisted_5$6)) : createCommentVNode("v-if", true)])
|
|
9218
|
+
]), _ctx.display ? (openBlock(), createElementBlock("div", _hoisted_6$6, [
|
|
8250
9219
|
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.name }, {
|
|
8251
9220
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, {
|
|
8252
9221
|
label: true,
|
|
@@ -8284,7 +9253,7 @@ function _sfc_render$35(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8284
9253
|
default: withCtx(() => [createVNode(_component_VCFormSwitch, {
|
|
8285
9254
|
modelValue: _ctx.v.fields.value_is_regex.$model.value,
|
|
8286
9255
|
"onUpdate:modelValue": ($event) => _ctx.v.fields.value_is_regex.$model.value = $event,
|
|
8287
|
-
"label-content": _ctx.translationsDefault.valueIsRegex
|
|
9256
|
+
"label-content": _ctx.translationsDefault.valueIsRegex
|
|
8288
9257
|
}, null, 8, [
|
|
8289
9258
|
"modelValue",
|
|
8290
9259
|
"onUpdate:modelValue",
|
|
@@ -8296,7 +9265,7 @@ function _sfc_render$35(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8296
9265
|
}, 8, ["field"])
|
|
8297
9266
|
])) : createCommentVNode("v-if", true)]);
|
|
8298
9267
|
}
|
|
8299
|
-
var AIdentityProviderRoleAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderRoleAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
9268
|
+
var AIdentityProviderRoleAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderRoleAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$38]]);
|
|
8300
9269
|
//#endregion
|
|
8301
9270
|
//#region src/components/entities/identity-provider-role/AIdentityProviderRoleAssignments.vue?vue&type=script&lang.ts
|
|
8302
9271
|
var AIdentityProviderRoleAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -8314,7 +9283,7 @@ var AIdentityProviderRoleAssignments_vue_vue_type_script_lang_default = defineCo
|
|
|
8314
9283
|
});
|
|
8315
9284
|
//#endregion
|
|
8316
9285
|
//#region src/components/entities/identity-provider-role/AIdentityProviderRoleAssignments.vue
|
|
8317
|
-
function _sfc_render$
|
|
9286
|
+
function _sfc_render$37(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8318
9287
|
const _component_AIdentityProviderRoleAssignment = resolveComponent("AIdentityProviderRoleAssignment");
|
|
8319
9288
|
const _component_ARoles = resolveComponent("ARoles");
|
|
8320
9289
|
return openBlock(), createBlock(_component_ARoles, { "header-title": false }, createSlots({
|
|
@@ -8333,7 +9302,7 @@ function _sfc_render$34(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8333
9302
|
};
|
|
8334
9303
|
})]), 1024);
|
|
8335
9304
|
}
|
|
8336
|
-
var AIdentityProviderRoleAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderRoleAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
9305
|
+
var AIdentityProviderRoleAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityProviderRoleAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$37]]);
|
|
8337
9306
|
//#endregion
|
|
8338
9307
|
//#region src/components/entities/policy/attribute-names/AAttributeNamesPolicyForm.vue?vue&type=script&lang.ts
|
|
8339
9308
|
var AAttributeNamesPolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -8361,7 +9330,7 @@ var AAttributeNamesPolicyForm_vue_vue_type_script_lang_default = defineComponent
|
|
|
8361
9330
|
});
|
|
8362
9331
|
//#endregion
|
|
8363
9332
|
//#region src/components/entities/policy/attribute-names/AAttributeNamesPolicyForm.vue
|
|
8364
|
-
function _sfc_render$
|
|
9333
|
+
function _sfc_render$36(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8365
9334
|
const _component_AFormInputList = resolveComponent("AFormInputList");
|
|
8366
9335
|
return openBlock(), createBlock(_component_AFormInputList, {
|
|
8367
9336
|
names: _ctx.v.fields.names.$model.value,
|
|
@@ -8369,7 +9338,7 @@ function _sfc_render$33(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8369
9338
|
onChanged: _ctx.handleUpdated
|
|
8370
9339
|
}, null, 8, ["names", "onChanged"]);
|
|
8371
9340
|
}
|
|
8372
|
-
var AAttributeNamesPolicyForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AAttributeNamesPolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
9341
|
+
var AAttributeNamesPolicyForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AAttributeNamesPolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$36]]);
|
|
8373
9342
|
//#endregion
|
|
8374
9343
|
//#region src/components/entities/policy/APolicyParentAssignment.ts
|
|
8375
9344
|
const APolicyParentAssignment = defineComponent({
|
|
@@ -8521,8 +9490,8 @@ var ACompositePolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
8521
9490
|
});
|
|
8522
9491
|
//#endregion
|
|
8523
9492
|
//#region src/components/entities/policy/composite/ACompositePolicyForm.vue
|
|
8524
|
-
const _hoisted_1$
|
|
8525
|
-
function _sfc_render$
|
|
9493
|
+
const _hoisted_1$17 = { class: "alert alert-sm alert-info mt-1 mb-0" };
|
|
9494
|
+
function _sfc_render$35(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8526
9495
|
const _component_VCFormSelect = resolveComponent("VCFormSelect");
|
|
8527
9496
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
8528
9497
|
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
@@ -8532,17 +9501,14 @@ function _sfc_render$32(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8532
9501
|
label: withCtx(() => [..._cache[0] || (_cache[0] = [createTextVNode(" Decision Strategy ", -1)])]),
|
|
8533
9502
|
default: withCtx(() => [createVNode(_component_VCFormSelect, {
|
|
8534
9503
|
modelValue: _ctx.v.fields.decision_strategy.$model.value,
|
|
8535
|
-
"onUpdate:modelValue": ($event) => _ctx.v.fields.decision_strategy.$model.value = $event,
|
|
9504
|
+
"onUpdate:modelValue": [($event) => _ctx.v.fields.decision_strategy.$model.value = $event, _ctx.handleDecisionStrategyUpdated],
|
|
8536
9505
|
options: _ctx.decisionStrategyOptions,
|
|
8537
|
-
"
|
|
8538
|
-
"option-default-value": "-- None (default: unanimous) --",
|
|
8539
|
-
onChange: _ctx.handleDecisionStrategyUpdated
|
|
9506
|
+
placeholder: "-- None (default: unanimous) --"
|
|
8540
9507
|
}, null, 8, [
|
|
8541
9508
|
"modelValue",
|
|
8542
9509
|
"onUpdate:modelValue",
|
|
8543
|
-
"options"
|
|
8544
|
-
|
|
8545
|
-
]), createElementVNode("div", _hoisted_1$14, toDisplayString(_ctx.decisionStrategyHint), 1)]),
|
|
9510
|
+
"options"
|
|
9511
|
+
]), createElementVNode("div", _hoisted_1$17, toDisplayString(_ctx.decisionStrategyHint), 1)]),
|
|
8546
9512
|
_: 2
|
|
8547
9513
|
}, 1032, ["validation"])]),
|
|
8548
9514
|
_: 1
|
|
@@ -8565,7 +9531,7 @@ function _sfc_render$32(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8565
9531
|
_: 1
|
|
8566
9532
|
}, 8, ["field"])]);
|
|
8567
9533
|
}
|
|
8568
|
-
var ACompositePolicyForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ACompositePolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
9534
|
+
var ACompositePolicyForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ACompositePolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$35]]);
|
|
8569
9535
|
//#endregion
|
|
8570
9536
|
//#region src/components/entities/policy/date/ADatePolicyForm.vue?vue&type=script&lang.ts
|
|
8571
9537
|
var ADatePolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -8582,6 +9548,13 @@ var ADatePolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
8582
9548
|
end: ""
|
|
8583
9549
|
});
|
|
8584
9550
|
const v = useValidup(new Container(), form, { name: "type" });
|
|
9551
|
+
const translationsDefault = useTranslations([{
|
|
9552
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
9553
|
+
key: TranslatorTranslationFieldKey.START
|
|
9554
|
+
}, {
|
|
9555
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
9556
|
+
key: TranslatorTranslationFieldKey.END
|
|
9557
|
+
}]);
|
|
8585
9558
|
function assign(data = {}) {
|
|
8586
9559
|
assignFormProperties(form, data);
|
|
8587
9560
|
}
|
|
@@ -8596,19 +9569,20 @@ var ADatePolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
8596
9569
|
};
|
|
8597
9570
|
return {
|
|
8598
9571
|
handleUpdated,
|
|
8599
|
-
v
|
|
9572
|
+
v,
|
|
9573
|
+
translationsDefault
|
|
8600
9574
|
};
|
|
8601
9575
|
}
|
|
8602
9576
|
});
|
|
8603
9577
|
//#endregion
|
|
8604
9578
|
//#region src/components/entities/policy/date/ADatePolicyForm.vue
|
|
8605
|
-
function _sfc_render$
|
|
9579
|
+
function _sfc_render$34(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8606
9580
|
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
8607
9581
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
8608
9582
|
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
8609
9583
|
return openBlock(), createElementBlock("div", null, [createVNode(_component_IFieldValidation, { field: _ctx.v.fields.start }, {
|
|
8610
9584
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8611
|
-
label: withCtx(() => [
|
|
9585
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.start), 1)]),
|
|
8612
9586
|
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8613
9587
|
modelValue: _ctx.v.fields.start.$model.value,
|
|
8614
9588
|
"onUpdate:modelValue": ($event) => _ctx.v.fields.start.$model.value = $event,
|
|
@@ -8624,7 +9598,7 @@ function _sfc_render$31(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8624
9598
|
_: 1
|
|
8625
9599
|
}, 8, ["field"]), createVNode(_component_IFieldValidation, { field: _ctx.v.fields.end }, {
|
|
8626
9600
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8627
|
-
label: withCtx(() => [
|
|
9601
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.end), 1)]),
|
|
8628
9602
|
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8629
9603
|
modelValue: _ctx.v.fields.end.$model.value,
|
|
8630
9604
|
"onUpdate:modelValue": ($event) => _ctx.v.fields.end.$model.value = $event,
|
|
@@ -8640,7 +9614,7 @@ function _sfc_render$31(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8640
9614
|
_: 1
|
|
8641
9615
|
}, 8, ["field"])]);
|
|
8642
9616
|
}
|
|
8643
|
-
var ADatePolicyForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ADatePolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
9617
|
+
var ADatePolicyForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ADatePolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$34]]);
|
|
8644
9618
|
//#endregion
|
|
8645
9619
|
//#region src/components/entities/policy/identity/AIdentityPolicyForm.vue?vue&type=script&lang.ts
|
|
8646
9620
|
var AIdentityPolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -8668,7 +9642,7 @@ var AIdentityPolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
8668
9642
|
});
|
|
8669
9643
|
//#endregion
|
|
8670
9644
|
//#region src/components/entities/policy/identity/AIdentityPolicyForm.vue
|
|
8671
|
-
function _sfc_render$
|
|
9645
|
+
function _sfc_render$33(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8672
9646
|
const _component_AFormInputList = resolveComponent("AFormInputList");
|
|
8673
9647
|
return openBlock(), createBlock(_component_AFormInputList, {
|
|
8674
9648
|
names: _ctx.v.fields.types.$model.value,
|
|
@@ -8679,7 +9653,7 @@ function _sfc_render$30(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8679
9653
|
_: 1
|
|
8680
9654
|
}, 8, ["names", "onChanged"]);
|
|
8681
9655
|
}
|
|
8682
|
-
var AIdentityPolicyForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityPolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
9656
|
+
var AIdentityPolicyForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AIdentityPolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$33]]);
|
|
8683
9657
|
//#endregion
|
|
8684
9658
|
//#region src/components/entities/policy/realm-match/ARealmMatchPolicyForm.vue?vue&type=script&lang.ts
|
|
8685
9659
|
var ARealmMatchPolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -8727,18 +9701,18 @@ var ARealmMatchPolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
8727
9701
|
});
|
|
8728
9702
|
//#endregion
|
|
8729
9703
|
//#region src/components/entities/policy/realm-match/ARealmMatchPolicyForm.vue
|
|
8730
|
-
const _hoisted_1$
|
|
8731
|
-
const _hoisted_2$
|
|
8732
|
-
const _hoisted_3$
|
|
8733
|
-
const _hoisted_4$
|
|
8734
|
-
const _hoisted_5$
|
|
8735
|
-
const _hoisted_6$
|
|
8736
|
-
function _sfc_render$
|
|
9704
|
+
const _hoisted_1$16 = { class: "row" };
|
|
9705
|
+
const _hoisted_2$11 = { class: "col-7" };
|
|
9706
|
+
const _hoisted_3$8 = { class: "col-5" };
|
|
9707
|
+
const _hoisted_4$6 = ["for"];
|
|
9708
|
+
const _hoisted_5$5 = ["for"];
|
|
9709
|
+
const _hoisted_6$5 = ["for"];
|
|
9710
|
+
function _sfc_render$32(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8737
9711
|
const _component_AFormInputList = resolveComponent("AFormInputList");
|
|
8738
9712
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
8739
9713
|
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
8740
9714
|
const _component_VCFormSwitch = resolveComponent("VCFormSwitch");
|
|
8741
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
9715
|
+
return openBlock(), createElementBlock("div", _hoisted_1$16, [createElementVNode("div", _hoisted_2$11, [createVNode(_component_IFieldValidation, { field: _ctx.v.fields.attribute_name }, {
|
|
8742
9716
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8743
9717
|
default: withCtx(() => [createVNode(_component_AFormInputList, {
|
|
8744
9718
|
names: _ctx.v.fields.attribute_name.$model.value,
|
|
@@ -8747,7 +9721,7 @@ function _sfc_render$29(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8747
9721
|
_: 2
|
|
8748
9722
|
}, 1032, ["validation"])]),
|
|
8749
9723
|
_: 1
|
|
8750
|
-
}, 8, ["field"])]), createElementVNode("div", _hoisted_3$
|
|
9724
|
+
}, 8, ["field"])]), createElementVNode("div", _hoisted_3$8, [
|
|
8751
9725
|
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.attribute_name_strict }, {
|
|
8752
9726
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8753
9727
|
default: withCtx(() => [createVNode(_component_VCFormSwitch, {
|
|
@@ -8756,7 +9730,7 @@ function _sfc_render$29(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8756
9730
|
label: true,
|
|
8757
9731
|
onChange: _ctx.handleUpdated
|
|
8758
9732
|
}, {
|
|
8759
|
-
label: withCtx((iProps) => [createElementVNode("label", { for: iProps.id }, " Only match if the attribute is strict equal to the name? ", 8, _hoisted_4$
|
|
9733
|
+
label: withCtx((iProps) => [createElementVNode("label", { for: iProps.id }, " Only match if the attribute is strict equal to the name? ", 8, _hoisted_4$6)]),
|
|
8760
9734
|
_: 1
|
|
8761
9735
|
}, 8, [
|
|
8762
9736
|
"modelValue",
|
|
@@ -8779,7 +9753,7 @@ function _sfc_render$29(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8779
9753
|
createTextVNode(" Determines if resources with null realm-id/name value should match all identity realms.", -1),
|
|
8780
9754
|
createElementVNode("br", null, null, -1),
|
|
8781
9755
|
createTextVNode(" If true, any identity realm can access resources with null realm-id/name values. ", -1)
|
|
8782
|
-
])], 8, _hoisted_5$
|
|
9756
|
+
])], 8, _hoisted_5$5)]),
|
|
8783
9757
|
_: 1
|
|
8784
9758
|
}, 8, [
|
|
8785
9759
|
"modelValue",
|
|
@@ -8802,7 +9776,7 @@ function _sfc_render$29(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8802
9776
|
createTextVNode(" Specifies whether the master realm of an identity should match all realm-id/name attributes, including null.", -1),
|
|
8803
9777
|
createElementVNode("br", null, null, -1),
|
|
8804
9778
|
createTextVNode(" If true, the master realm can access any resource regardless of its realm value. ", -1)
|
|
8805
|
-
])], 8, _hoisted_6$
|
|
9779
|
+
])], 8, _hoisted_6$5)]),
|
|
8806
9780
|
_: 1
|
|
8807
9781
|
}, 8, [
|
|
8808
9782
|
"modelValue",
|
|
@@ -8815,7 +9789,7 @@ function _sfc_render$29(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8815
9789
|
}, 8, ["field"])
|
|
8816
9790
|
])]);
|
|
8817
9791
|
}
|
|
8818
|
-
var ARealmMatchPolicyForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ARealmMatchPolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
9792
|
+
var ARealmMatchPolicyForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ARealmMatchPolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$32]]);
|
|
8819
9793
|
//#endregion
|
|
8820
9794
|
//#region src/components/entities/policy/time/ATimePolicyForm.vue?vue&type=script&lang.ts
|
|
8821
9795
|
var ATimePolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -8841,6 +9815,32 @@ var ATimePolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
8841
9815
|
value: el
|
|
8842
9816
|
}));
|
|
8843
9817
|
const v = useValidup(new Container(), form, { name: "type" });
|
|
9818
|
+
const translationsDefault = useTranslations([
|
|
9819
|
+
{
|
|
9820
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
9821
|
+
key: TranslatorTranslationFieldKey.START
|
|
9822
|
+
},
|
|
9823
|
+
{
|
|
9824
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
9825
|
+
key: TranslatorTranslationFieldKey.END
|
|
9826
|
+
},
|
|
9827
|
+
{
|
|
9828
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
9829
|
+
key: TranslatorTranslationFieldKey.INTERVAL
|
|
9830
|
+
},
|
|
9831
|
+
{
|
|
9832
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
9833
|
+
key: TranslatorTranslationFieldKey.DAY_OF_WEEK
|
|
9834
|
+
},
|
|
9835
|
+
{
|
|
9836
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
9837
|
+
key: TranslatorTranslationFieldKey.DAY_OF_MONTH
|
|
9838
|
+
},
|
|
9839
|
+
{
|
|
9840
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
9841
|
+
key: TranslatorTranslationFieldKey.DAY_OF_YEAR
|
|
9842
|
+
}
|
|
9843
|
+
]);
|
|
8844
9844
|
function assign(data = {}) {
|
|
8845
9845
|
assignFormProperties(form, data);
|
|
8846
9846
|
}
|
|
@@ -8869,18 +9869,19 @@ var ATimePolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
8869
9869
|
displayIntervalForDayOfMonth,
|
|
8870
9870
|
displayIntervalForDayOfYear,
|
|
8871
9871
|
intervalOptions,
|
|
8872
|
-
v
|
|
9872
|
+
v,
|
|
9873
|
+
translationsDefault
|
|
8873
9874
|
};
|
|
8874
9875
|
}
|
|
8875
9876
|
});
|
|
8876
9877
|
//#endregion
|
|
8877
9878
|
//#region src/components/entities/policy/time/ATimePolicyForm.vue
|
|
8878
|
-
const _hoisted_1$
|
|
8879
|
-
const _hoisted_2$
|
|
8880
|
-
const _hoisted_3$
|
|
8881
|
-
const _hoisted_4$
|
|
8882
|
-
const _hoisted_5$
|
|
8883
|
-
const _hoisted_6$
|
|
9879
|
+
const _hoisted_1$15 = { class: "row" };
|
|
9880
|
+
const _hoisted_2$10 = { class: "col" };
|
|
9881
|
+
const _hoisted_3$7 = { class: "col" };
|
|
9882
|
+
const _hoisted_4$5 = { class: "row" };
|
|
9883
|
+
const _hoisted_5$4 = { class: "col" };
|
|
9884
|
+
const _hoisted_6$4 = {
|
|
8884
9885
|
key: 0,
|
|
8885
9886
|
class: "col"
|
|
8886
9887
|
};
|
|
@@ -8892,14 +9893,14 @@ const _hoisted_8$1 = {
|
|
|
8892
9893
|
key: 2,
|
|
8893
9894
|
class: "col"
|
|
8894
9895
|
};
|
|
8895
|
-
function _sfc_render$
|
|
9896
|
+
function _sfc_render$31(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8896
9897
|
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
8897
9898
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
8898
9899
|
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
8899
9900
|
const _component_VCFormSelect = resolveComponent("VCFormSelect");
|
|
8900
|
-
return openBlock(), createElementBlock("div", null, [createElementVNode("div", _hoisted_1$
|
|
9901
|
+
return openBlock(), createElementBlock("div", null, [createElementVNode("div", _hoisted_1$15, [createElementVNode("div", _hoisted_2$10, [createVNode(_component_IFieldValidation, { field: _ctx.v.fields.start }, {
|
|
8901
9902
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8902
|
-
label: withCtx(() => [
|
|
9903
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.start), 1)]),
|
|
8903
9904
|
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8904
9905
|
modelValue: _ctx.v.fields.start.$model.value,
|
|
8905
9906
|
"onUpdate:modelValue": ($event) => _ctx.v.fields.start.$model.value = $event,
|
|
@@ -8913,9 +9914,9 @@ function _sfc_render$28(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8913
9914
|
_: 2
|
|
8914
9915
|
}, 1032, ["validation"])]),
|
|
8915
9916
|
_: 1
|
|
8916
|
-
}, 8, ["field"])]), createElementVNode("div", _hoisted_3$
|
|
9917
|
+
}, 8, ["field"])]), createElementVNode("div", _hoisted_3$7, [createVNode(_component_IFieldValidation, { field: _ctx.v.fields.end }, {
|
|
8917
9918
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8918
|
-
label: withCtx(() => [
|
|
9919
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.end), 1)]),
|
|
8919
9920
|
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8920
9921
|
modelValue: _ctx.v.fields.end.$model.value,
|
|
8921
9922
|
"onUpdate:modelValue": ($event) => _ctx.v.fields.end.$model.value = $event,
|
|
@@ -8929,29 +9930,27 @@ function _sfc_render$28(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8929
9930
|
_: 2
|
|
8930
9931
|
}, 1032, ["validation"])]),
|
|
8931
9932
|
_: 1
|
|
8932
|
-
}, 8, ["field"])])]), createElementVNode("div", _hoisted_4$
|
|
8933
|
-
createElementVNode("div", _hoisted_5$
|
|
9933
|
+
}, 8, ["field"])])]), createElementVNode("div", _hoisted_4$5, [
|
|
9934
|
+
createElementVNode("div", _hoisted_5$4, [createVNode(_component_IFieldValidation, { field: _ctx.v.fields.interval }, {
|
|
8934
9935
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8935
|
-
label: withCtx(() => [
|
|
9936
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.interval), 1)]),
|
|
8936
9937
|
default: withCtx(() => [createVNode(_component_VCFormSelect, {
|
|
8937
9938
|
modelValue: _ctx.v.fields.interval.$model.value,
|
|
8938
|
-
"onUpdate:modelValue": ($event) => _ctx.v.fields.interval.$model.value = $event,
|
|
9939
|
+
"onUpdate:modelValue": [($event) => _ctx.v.fields.interval.$model.value = $event, _ctx.handleIntervalUpdated],
|
|
8939
9940
|
options: _ctx.intervalOptions,
|
|
8940
|
-
"
|
|
8941
|
-
onChange: _ctx.handleIntervalUpdated
|
|
9941
|
+
placeholder: "-- None --"
|
|
8942
9942
|
}, null, 8, [
|
|
8943
9943
|
"modelValue",
|
|
8944
9944
|
"onUpdate:modelValue",
|
|
8945
|
-
"options"
|
|
8946
|
-
"onChange"
|
|
9945
|
+
"options"
|
|
8947
9946
|
])]),
|
|
8948
9947
|
_: 2
|
|
8949
9948
|
}, 1032, ["validation"])]),
|
|
8950
9949
|
_: 1
|
|
8951
9950
|
}, 8, ["field"])]),
|
|
8952
|
-
_ctx.displayIntervalForDayOfWeek ? (openBlock(), createElementBlock("div", _hoisted_6$
|
|
9951
|
+
_ctx.displayIntervalForDayOfWeek ? (openBlock(), createElementBlock("div", _hoisted_6$4, [createVNode(_component_IFieldValidation, { field: _ctx.v.fields.day_of_week }, {
|
|
8953
9952
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8954
|
-
label: withCtx(() => [
|
|
9953
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.dayOfWeek), 1)]),
|
|
8955
9954
|
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8956
9955
|
modelValue: _ctx.v.fields.day_of_week.$model.value,
|
|
8957
9956
|
"onUpdate:modelValue": ($event) => _ctx.v.fields.day_of_week.$model.value = $event,
|
|
@@ -8969,7 +9968,7 @@ function _sfc_render$28(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8969
9968
|
}, 8, ["field"])])) : createCommentVNode("v-if", true),
|
|
8970
9969
|
_ctx.displayIntervalForDayOfMonth ? (openBlock(), createElementBlock("div", _hoisted_7$2, [createVNode(_component_IFieldValidation, { field: _ctx.v.fields.day_of_month }, {
|
|
8971
9970
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8972
|
-
label: withCtx(() => [
|
|
9971
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.dayOfMonth), 1)]),
|
|
8973
9972
|
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8974
9973
|
modelValue: _ctx.v.fields.day_of_month.$model.value,
|
|
8975
9974
|
"onUpdate:modelValue": ($event) => _ctx.v.fields.day_of_month.$model.value = $event,
|
|
@@ -8987,7 +9986,7 @@ function _sfc_render$28(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8987
9986
|
}, 8, ["field"])])) : createCommentVNode("v-if", true),
|
|
8988
9987
|
_ctx.displayIntervalForDayOfYear ? (openBlock(), createElementBlock("div", _hoisted_8$1, [createVNode(_component_IFieldValidation, { field: _ctx.v.fields.day_of_year }, {
|
|
8989
9988
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
8990
|
-
label: withCtx(() => [
|
|
9989
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.dayOfYear), 1)]),
|
|
8991
9990
|
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
8992
9991
|
modelValue: _ctx.v.fields.day_of_year.$model.value,
|
|
8993
9992
|
"onUpdate:modelValue": ($event) => _ctx.v.fields.day_of_year.$model.value = $event,
|
|
@@ -9005,7 +10004,7 @@ function _sfc_render$28(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9005
10004
|
}, 8, ["field"])])) : createCommentVNode("v-if", true)
|
|
9006
10005
|
])]);
|
|
9007
10006
|
}
|
|
9008
|
-
var ATimePolicyForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ATimePolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
10007
|
+
var ATimePolicyForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ATimePolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$31]]);
|
|
9009
10008
|
//#endregion
|
|
9010
10009
|
//#region src/components/entities/policy/APolicy.ts
|
|
9011
10010
|
const APolicy = defineComponent({
|
|
@@ -9063,23 +10062,24 @@ var APolicyTypePicker_vue_vue_type_script_lang_default = defineComponent({
|
|
|
9063
10062
|
});
|
|
9064
10063
|
//#endregion
|
|
9065
10064
|
//#region src/components/entities/policy/APolicyTypePicker.vue
|
|
9066
|
-
const _hoisted_1$
|
|
9067
|
-
const _hoisted_2$
|
|
9068
|
-
const _hoisted_3$
|
|
9069
|
-
function _sfc_render$
|
|
9070
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
10065
|
+
const _hoisted_1$14 = { class: "flex flex-col gap-2" };
|
|
10066
|
+
const _hoisted_2$9 = { class: "flex flex-row gap-2 flex-wrap" };
|
|
10067
|
+
const _hoisted_3$6 = ["onClick"];
|
|
10068
|
+
function _sfc_render$30(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10069
|
+
return openBlock(), createElementBlock("div", _hoisted_1$14, [createElementVNode("div", null, [_cache[0] || (_cache[0] = createElementVNode("h6", null, "Type", -1)), createElementVNode("div", _hoisted_2$9, [(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.options, (item, key) => {
|
|
9071
10070
|
return openBlock(), createElementBlock("div", {
|
|
9072
10071
|
key,
|
|
9073
10072
|
class: normalizeClass([{ "active": item.value === _ctx.option }, "flex flex-col gap-1 text-center a-picker-item"]),
|
|
9074
10073
|
onClick: withModifiers(($event) => _ctx.pick(`${item.value}`), ["prevent"])
|
|
9075
|
-
}, [createElementVNode("div", null, toDisplayString(item.value), 1)], 10, _hoisted_3$
|
|
10074
|
+
}, [createElementVNode("div", null, toDisplayString(item.value), 1)], 10, _hoisted_3$6);
|
|
9076
10075
|
}), 128))])])]);
|
|
9077
10076
|
}
|
|
9078
|
-
var APolicyTypePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APolicyTypePicker_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
10077
|
+
var APolicyTypePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APolicyTypePicker_vue_vue_type_script_lang_default, [["render", _sfc_render$30], ["__scopeId", "data-v-51b5a9d2"]]);
|
|
9079
10078
|
//#endregion
|
|
9080
10079
|
//#region src/components/entities/policy/APolicyBasicForm.vue?vue&type=script&lang.ts
|
|
9081
10080
|
var APolicyBasicForm_vue_vue_type_script_lang_default = defineComponent({
|
|
9082
10081
|
components: {
|
|
10082
|
+
ANameInput: ANameInput_default,
|
|
9083
10083
|
ARealmPicker,
|
|
9084
10084
|
VCFormInput,
|
|
9085
10085
|
VCFormSwitch,
|
|
@@ -9097,6 +10097,7 @@ var APolicyBasicForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
9097
10097
|
emits: ["updated"],
|
|
9098
10098
|
setup(props, setup) {
|
|
9099
10099
|
const entity = toRef(props, "entity");
|
|
10100
|
+
const nameSeed = useId();
|
|
9100
10101
|
const form = reactive({
|
|
9101
10102
|
name: "",
|
|
9102
10103
|
invert: false,
|
|
@@ -9125,6 +10126,7 @@ var APolicyBasicForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
9125
10126
|
setup.expose({ assign });
|
|
9126
10127
|
onChange(useUpdatedAt(props.entity), () => assign(props.entity));
|
|
9127
10128
|
assign(props.entity);
|
|
10129
|
+
if (form.name.length === 0) form.name = generateName(nameSeed);
|
|
9128
10130
|
watch(() => props.type, (value) => {
|
|
9129
10131
|
form.type = value ?? "";
|
|
9130
10132
|
}, { immediate: true });
|
|
@@ -9145,33 +10147,32 @@ var APolicyBasicForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
9145
10147
|
});
|
|
9146
10148
|
//#endregion
|
|
9147
10149
|
//#region src/components/entities/policy/APolicyBasicForm.vue
|
|
9148
|
-
const _hoisted_1$
|
|
9149
|
-
const _hoisted_2$
|
|
9150
|
-
const _hoisted_3$
|
|
9151
|
-
const _hoisted_4$
|
|
10150
|
+
const _hoisted_1$13 = { class: "row" };
|
|
10151
|
+
const _hoisted_2$8 = { class: "col" };
|
|
10152
|
+
const _hoisted_3$5 = ["for"];
|
|
10153
|
+
const _hoisted_4$4 = {
|
|
9152
10154
|
key: 0,
|
|
9153
10155
|
class: "col"
|
|
9154
|
-
};
|
|
9155
|
-
function _sfc_render$
|
|
9156
|
-
const
|
|
10156
|
+
};
|
|
10157
|
+
function _sfc_render$29(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10158
|
+
const _component_ANameInput = resolveComponent("ANameInput");
|
|
9157
10159
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
9158
10160
|
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
10161
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
9159
10162
|
const _component_VCFormTextarea = resolveComponent("VCFormTextarea");
|
|
9160
10163
|
const _component_VCFormSwitch = resolveComponent("VCFormSwitch");
|
|
9161
10164
|
const _component_ARealmPicker = resolveComponent("ARealmPicker");
|
|
9162
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
10165
|
+
return openBlock(), createElementBlock("div", _hoisted_1$13, [createElementVNode("div", _hoisted_2$8, [
|
|
9163
10166
|
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.name }, {
|
|
9164
10167
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
9165
10168
|
label: withCtx(() => [..._cache[0] || (_cache[0] = [createTextVNode(" Name ", -1)])]),
|
|
9166
|
-
default: withCtx(() => [createVNode(
|
|
9167
|
-
|
|
9168
|
-
"onUpdate:modelValue": (
|
|
9169
|
-
|
|
9170
|
-
|
|
9171
|
-
|
|
9172
|
-
|
|
9173
|
-
"onChange"
|
|
9174
|
-
])]),
|
|
10169
|
+
default: withCtx(() => [createVNode(_component_ANameInput, {
|
|
10170
|
+
"model-value": _ctx.v.fields.name.$model.value,
|
|
10171
|
+
"onUpdate:modelValue": (next) => {
|
|
10172
|
+
_ctx.v.fields.name.$model.value = next;
|
|
10173
|
+
_ctx.handleUpdated();
|
|
10174
|
+
}
|
|
10175
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
9175
10176
|
_: 2
|
|
9176
10177
|
}, 1032, ["validation"])]),
|
|
9177
10178
|
_: 1
|
|
@@ -9221,7 +10222,7 @@ function _sfc_render$26(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9221
10222
|
label: true,
|
|
9222
10223
|
onChange: _ctx.handleUpdated
|
|
9223
10224
|
}, {
|
|
9224
|
-
label: withCtx((iProps) => [createElementVNode("label", { for: iProps.id }, " Invert? ", 8, _hoisted_3$
|
|
10225
|
+
label: withCtx((iProps) => [createElementVNode("label", { for: iProps.id }, " Invert? ", 8, _hoisted_3$5)]),
|
|
9225
10226
|
_: 1
|
|
9226
10227
|
}, 8, [
|
|
9227
10228
|
"modelValue",
|
|
@@ -9232,7 +10233,7 @@ function _sfc_render$26(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9232
10233
|
}, 1032, ["validation"])]),
|
|
9233
10234
|
_: 1
|
|
9234
10235
|
}, 8, ["field"])
|
|
9235
|
-
]), !_ctx.realmId && !_ctx.isEditing ? (openBlock(), createElementBlock("div", _hoisted_4$
|
|
10236
|
+
]), !_ctx.realmId && !_ctx.isEditing ? (openBlock(), createElementBlock("div", _hoisted_4$4, [createVNode(_component_IFieldValidation, { field: _ctx.v.fields.realm_id }, {
|
|
9236
10237
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
9237
10238
|
label: withCtx(() => [..._cache[3] || (_cache[3] = [createTextVNode(" Realm ", -1)])]),
|
|
9238
10239
|
default: withCtx(() => [createVNode(_component_ARealmPicker, {
|
|
@@ -9252,7 +10253,7 @@ var APolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
9252
10253
|
components: {
|
|
9253
10254
|
AFormSubmit,
|
|
9254
10255
|
APolicyTypePicker: APolicyTypePicker_default,
|
|
9255
|
-
APolicyBasicForm: /* @__PURE__ */ _plugin_vue_export_helper_default(APolicyBasicForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
10256
|
+
APolicyBasicForm: /* @__PURE__ */ _plugin_vue_export_helper_default(APolicyBasicForm_vue_vue_type_script_lang_default, [["render", _sfc_render$29]])
|
|
9256
10257
|
},
|
|
9257
10258
|
props: {
|
|
9258
10259
|
entity: { type: Object },
|
|
@@ -9310,11 +10311,11 @@ var APolicyForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
9310
10311
|
});
|
|
9311
10312
|
//#endregion
|
|
9312
10313
|
//#region src/components/entities/policy/APolicyForm.vue
|
|
9313
|
-
const _hoisted_1$
|
|
9314
|
-
function _sfc_render$
|
|
10314
|
+
const _hoisted_1$12 = { class: "flex flex-col" };
|
|
10315
|
+
function _sfc_render$28(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9315
10316
|
const _component_APolicyBasicForm = resolveComponent("APolicyBasicForm");
|
|
9316
10317
|
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
9317
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
10318
|
+
return openBlock(), createElementBlock("div", _hoisted_1$12, [
|
|
9318
10319
|
_cache[0] || (_cache[0] = createElementVNode("h6", null, "General", -1)),
|
|
9319
10320
|
createVNode(_component_APolicyBasicForm, {
|
|
9320
10321
|
entity: _ctx.data,
|
|
@@ -9340,7 +10341,7 @@ function _sfc_render$25(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9340
10341
|
])])
|
|
9341
10342
|
]);
|
|
9342
10343
|
}
|
|
9343
|
-
var APolicyForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
10344
|
+
var APolicyForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APolicyForm_vue_vue_type_script_lang_default, [["render", _sfc_render$28]]);
|
|
9344
10345
|
//#endregion
|
|
9345
10346
|
//#region src/components/entities/permission-client/APermissionClientAssignments.vue?vue&type=script&lang.ts
|
|
9346
10347
|
var APermissionClientAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -9358,7 +10359,7 @@ var APermissionClientAssignments_vue_vue_type_script_lang_default = defineCompon
|
|
|
9358
10359
|
});
|
|
9359
10360
|
//#endregion
|
|
9360
10361
|
//#region src/components/entities/permission-client/APermissionClientAssignments.vue
|
|
9361
|
-
function _sfc_render$
|
|
10362
|
+
function _sfc_render$27(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9362
10363
|
const _component_AClientPermissionAssignment = resolveComponent("AClientPermissionAssignment");
|
|
9363
10364
|
const _component_AClients = resolveComponent("AClients");
|
|
9364
10365
|
return openBlock(), createBlock(_component_AClients, null, createSlots({
|
|
@@ -9375,7 +10376,7 @@ function _sfc_render$24(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9375
10376
|
};
|
|
9376
10377
|
})]), 1024);
|
|
9377
10378
|
}
|
|
9378
|
-
var APermissionClientAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APermissionClientAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
10379
|
+
var APermissionClientAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APermissionClientAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$27]]);
|
|
9379
10380
|
//#endregion
|
|
9380
10381
|
//#region src/components/entities/permission-policy/APermissionPolicyAssignment.vue?vue&type=script&lang.ts
|
|
9381
10382
|
var APermissionPolicyAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -9422,7 +10423,7 @@ var APermissionPolicyAssignment_vue_vue_type_script_lang_default = defineCompone
|
|
|
9422
10423
|
});
|
|
9423
10424
|
//#endregion
|
|
9424
10425
|
//#region src/components/entities/permission-policy/APermissionPolicyAssignment.vue
|
|
9425
|
-
function _sfc_render$
|
|
10426
|
+
function _sfc_render$26(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9426
10427
|
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
9427
10428
|
return openBlock(), createBlock(_component_AToggleButton, {
|
|
9428
10429
|
value: !!_ctx.manager.data.value,
|
|
@@ -9434,7 +10435,7 @@ function _sfc_render$23(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9434
10435
|
"onChanged"
|
|
9435
10436
|
]);
|
|
9436
10437
|
}
|
|
9437
|
-
var APermissionPolicyAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APermissionPolicyAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
10438
|
+
var APermissionPolicyAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APermissionPolicyAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$26]]);
|
|
9438
10439
|
//#endregion
|
|
9439
10440
|
//#region src/components/entities/permission-policy/APermissionPolicyAssignments.vue?vue&type=script&lang.ts
|
|
9440
10441
|
var APermissionPolicyAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -9467,14 +10468,14 @@ var APermissionPolicyAssignments_vue_vue_type_script_lang_default = defineCompon
|
|
|
9467
10468
|
});
|
|
9468
10469
|
//#endregion
|
|
9469
10470
|
//#region src/components/entities/permission-policy/APermissionPolicyAssignments.vue
|
|
9470
|
-
const _hoisted_1$
|
|
9471
|
-
const _hoisted_2$
|
|
9472
|
-
const _hoisted_3$
|
|
9473
|
-
const _hoisted_4$
|
|
9474
|
-
const _hoisted_5$
|
|
9475
|
-
const _hoisted_6$
|
|
10471
|
+
const _hoisted_1$11 = { class: "ms-auto" };
|
|
10472
|
+
const _hoisted_2$7 = ["aria-labelledby"];
|
|
10473
|
+
const _hoisted_3$4 = { class: "modal-content" };
|
|
10474
|
+
const _hoisted_4$3 = { class: "modal-header" };
|
|
10475
|
+
const _hoisted_5$3 = ["id"];
|
|
10476
|
+
const _hoisted_6$3 = { class: "modal-body" };
|
|
9476
10477
|
const _hoisted_7$1 = { class: "modal-footer" };
|
|
9477
|
-
function _sfc_render$
|
|
10478
|
+
function _sfc_render$25(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9478
10479
|
const _component_APolicyInlineInfo = resolveComponent("APolicyInlineInfo");
|
|
9479
10480
|
const _component_APermissionPolicyAssignment = resolveComponent("APermissionPolicyAssignment");
|
|
9480
10481
|
const _component_APolicies = resolveComponent("APolicies");
|
|
@@ -9486,7 +10487,7 @@ function _sfc_render$22(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9486
10487
|
entity: data,
|
|
9487
10488
|
onDetail: _cache[0] || (_cache[0] = ($event) => _ctx.detailPolicy = $event)
|
|
9488
10489
|
}, null, 8, ["entity"]),
|
|
9489
|
-
createElementVNode("div", _hoisted_1$
|
|
10490
|
+
createElementVNode("div", _hoisted_1$11, [(openBlock(), createBlock(_component_APermissionPolicyAssignment, {
|
|
9490
10491
|
key: data.id,
|
|
9491
10492
|
"permission-id": _ctx.entityId,
|
|
9492
10493
|
"policy-id": data.id
|
|
@@ -9514,25 +10515,25 @@ function _sfc_render$22(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9514
10515
|
class: "modal-dialog",
|
|
9515
10516
|
role: "document",
|
|
9516
10517
|
onClick: _cache[4] || (_cache[4] = withModifiers(() => {}, ["stop"]))
|
|
9517
|
-
}, [createElementVNode("div", _hoisted_3$
|
|
9518
|
-
createElementVNode("div", _hoisted_4$
|
|
10518
|
+
}, [createElementVNode("div", _hoisted_3$4, [
|
|
10519
|
+
createElementVNode("div", _hoisted_4$3, [createElementVNode("h5", {
|
|
9519
10520
|
id: `policy-detail-modal-${_ctx.detailPolicy.id}`,
|
|
9520
10521
|
class: "modal-title"
|
|
9521
|
-
}, toDisplayString(_ctx.detailPolicy.name), 9, _hoisted_5$
|
|
10522
|
+
}, toDisplayString(_ctx.detailPolicy.name), 9, _hoisted_5$3), createElementVNode("button", {
|
|
9522
10523
|
type: "button",
|
|
9523
10524
|
class: "btn-close",
|
|
9524
10525
|
"aria-label": "Close",
|
|
9525
10526
|
onClick: _cache[2] || (_cache[2] = ($event) => _ctx.detailPolicy = null)
|
|
9526
10527
|
})]),
|
|
9527
|
-
createElementVNode("div", _hoisted_6$
|
|
10528
|
+
createElementVNode("div", _hoisted_6$3, [createVNode(_component_APolicySummary, { entity: _ctx.detailPolicy }, null, 8, ["entity"])]),
|
|
9528
10529
|
createElementVNode("div", _hoisted_7$1, [createElementVNode("button", {
|
|
9529
10530
|
type: "button",
|
|
9530
10531
|
class: "btn btn-secondary btn-xs",
|
|
9531
10532
|
onClick: _cache[3] || (_cache[3] = ($event) => _ctx.detailPolicy = null)
|
|
9532
10533
|
}, " Close ")])
|
|
9533
|
-
])])], 8, _hoisted_2$
|
|
10534
|
+
])])], 8, _hoisted_2$7)])) : createCommentVNode("v-if", true)]);
|
|
9534
10535
|
}
|
|
9535
|
-
var APermissionPolicyAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APermissionPolicyAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
10536
|
+
var APermissionPolicyAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APermissionPolicyAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$25]]);
|
|
9536
10537
|
//#endregion
|
|
9537
10538
|
//#region src/components/entities/robot-permission/ARobotPermissionAssignment.vue?vue&type=script&lang.ts
|
|
9538
10539
|
var ARobotPermissionAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -9587,11 +10588,11 @@ var ARobotPermissionAssignment_vue_vue_type_script_lang_default = defineComponen
|
|
|
9587
10588
|
});
|
|
9588
10589
|
//#endregion
|
|
9589
10590
|
//#region src/components/entities/robot-permission/ARobotPermissionAssignment.vue
|
|
9590
|
-
const _hoisted_1$
|
|
9591
|
-
function _sfc_render$
|
|
10591
|
+
const _hoisted_1$10 = { class: "flex gap-1" };
|
|
10592
|
+
function _sfc_render$24(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9592
10593
|
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
9593
10594
|
const _component_APermissionPolicyBindingButton = resolveComponent("APermissionPolicyBindingButton");
|
|
9594
|
-
return openBlock(), createElementBlock("span", _hoisted_1$
|
|
10595
|
+
return openBlock(), createElementBlock("span", _hoisted_1$10, [createVNode(_component_AToggleButton, {
|
|
9595
10596
|
value: !!_ctx.manager.data.value,
|
|
9596
10597
|
"is-busy": _ctx.manager.busy.value,
|
|
9597
10598
|
onChanged: _ctx.handleChanged
|
|
@@ -9610,7 +10611,7 @@ function _sfc_render$21(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9610
10611
|
"onUpdated"
|
|
9611
10612
|
])) : createCommentVNode("v-if", true)]);
|
|
9612
10613
|
}
|
|
9613
|
-
var ARobotPermissionAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ARobotPermissionAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
10614
|
+
var ARobotPermissionAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ARobotPermissionAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$24]]);
|
|
9614
10615
|
//#endregion
|
|
9615
10616
|
//#region src/components/entities/robot/ARobot.ts
|
|
9616
10617
|
const ARobot = defineComponent({
|
|
@@ -9633,10 +10634,12 @@ const ARobot = defineComponent({
|
|
|
9633
10634
|
});
|
|
9634
10635
|
//#endregion
|
|
9635
10636
|
//#region src/components/entities/robot/ARobotForm.vue?vue&type=script&lang.ts
|
|
9636
|
-
|
|
10637
|
+
var ARobotForm_vue_vue_type_script_lang_default = defineComponent({
|
|
9637
10638
|
components: {
|
|
9638
10639
|
ARealms,
|
|
9639
10640
|
AFormSubmit,
|
|
10641
|
+
ANameInput: ANameInput_default,
|
|
10642
|
+
ASecretInput: ASecretInput_default,
|
|
9640
10643
|
AToggleButton: AToggleButton_default,
|
|
9641
10644
|
VCFormGroup,
|
|
9642
10645
|
VCFormInput,
|
|
@@ -9659,6 +10662,7 @@ const ARobotForm = defineComponent({
|
|
|
9659
10662
|
emits: defineEntityVEmitOptions(),
|
|
9660
10663
|
setup(props, ctx) {
|
|
9661
10664
|
const busy = ref(false);
|
|
10665
|
+
const nameSeed = useId();
|
|
9662
10666
|
const form = reactive({
|
|
9663
10667
|
name: "",
|
|
9664
10668
|
display_name: "",
|
|
@@ -9676,15 +10680,15 @@ const ARobotForm = defineComponent({
|
|
|
9676
10680
|
const isNameFixed = computed(() => !!props.name && props.name.length > 0);
|
|
9677
10681
|
const isRealmLocked = computed(() => !!props.realmId);
|
|
9678
10682
|
const isSecretHashed = computed(() => manager.data.value && manager.data.value.secret === form.secret && form.secret.startsWith("$"));
|
|
9679
|
-
const generateSecret = () => {
|
|
9680
|
-
form.secret = createNanoID(64);
|
|
9681
|
-
};
|
|
9682
10683
|
function initForm() {
|
|
9683
10684
|
assignFormProperties(form, manager.data.value);
|
|
9684
10685
|
if (props.name) form.name = props.name;
|
|
9685
10686
|
if (props.realmId) form.realm_id = props.realmId;
|
|
9686
|
-
if (form.
|
|
10687
|
+
if (form.name.length === 0) form.name = generateName(nameSeed);
|
|
9687
10688
|
}
|
|
10689
|
+
onMounted(() => {
|
|
10690
|
+
if (form.secret.length === 0) form.secret = generateSecret();
|
|
10691
|
+
});
|
|
9688
10692
|
watch(updatedAt, (val, oldVal) => {
|
|
9689
10693
|
if (val && val !== oldVal) {
|
|
9690
10694
|
manager.data.value = props.entity;
|
|
@@ -9704,13 +10708,27 @@ const ARobotForm = defineComponent({
|
|
|
9704
10708
|
busy.value = false;
|
|
9705
10709
|
}
|
|
9706
10710
|
};
|
|
9707
|
-
const translationsDefault =
|
|
9708
|
-
{
|
|
9709
|
-
|
|
9710
|
-
|
|
9711
|
-
|
|
9712
|
-
{
|
|
9713
|
-
|
|
10711
|
+
const translationsDefault = useTranslations([
|
|
10712
|
+
{
|
|
10713
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
10714
|
+
key: TranslatorTranslationFieldKey.HASHED
|
|
10715
|
+
},
|
|
10716
|
+
{
|
|
10717
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
10718
|
+
key: TranslatorTranslationFieldKey.NAME
|
|
10719
|
+
},
|
|
10720
|
+
{
|
|
10721
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
10722
|
+
key: TranslatorTranslationFieldKey.DISPLAY_NAME
|
|
10723
|
+
},
|
|
10724
|
+
{
|
|
10725
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
10726
|
+
key: TranslatorTranslationFieldKey.DESCRIPTION
|
|
10727
|
+
},
|
|
10728
|
+
{
|
|
10729
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
10730
|
+
key: TranslatorTranslationFieldKey.SECRET
|
|
10731
|
+
}
|
|
9714
10732
|
]);
|
|
9715
10733
|
return {
|
|
9716
10734
|
busy,
|
|
@@ -9722,12 +10740,112 @@ const ARobotForm = defineComponent({
|
|
|
9722
10740
|
isSecretHashed,
|
|
9723
10741
|
data: manager.data,
|
|
9724
10742
|
translationsDefault,
|
|
9725
|
-
generateSecret,
|
|
9726
10743
|
submit
|
|
9727
10744
|
};
|
|
9728
10745
|
}
|
|
9729
10746
|
});
|
|
9730
10747
|
//#endregion
|
|
10748
|
+
//#region src/components/entities/robot/ARobotForm.vue
|
|
10749
|
+
const _hoisted_1$9 = {
|
|
10750
|
+
key: 0,
|
|
10751
|
+
class: "text-error-600 font-bold ps-1"
|
|
10752
|
+
};
|
|
10753
|
+
const _hoisted_2$6 = {
|
|
10754
|
+
key: 0,
|
|
10755
|
+
class: "col"
|
|
10756
|
+
};
|
|
10757
|
+
function _sfc_render$23(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10758
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
10759
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
10760
|
+
const _component_ANameInput = resolveComponent("ANameInput");
|
|
10761
|
+
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
10762
|
+
const _component_VCIcon = resolveComponent("VCIcon");
|
|
10763
|
+
const _component_ASecretInput = resolveComponent("ASecretInput");
|
|
10764
|
+
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
10765
|
+
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
10766
|
+
const _component_ARealms = resolveComponent("ARealms");
|
|
10767
|
+
return openBlock(), createElementBlock("form", { onSubmit: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.submit && _ctx.submit(...args), ["prevent"])) }, [createElementVNode("div", { class: normalizeClass(!_ctx.isRealmLocked ? "row" : "") }, [createElementVNode("div", { class: normalizeClass(!_ctx.isRealmLocked ? "col" : "") }, [
|
|
10768
|
+
_ctx.data ? (openBlock(), createBlock(_component_VCFormGroup, { key: 0 }, {
|
|
10769
|
+
label: withCtx(() => [..._cache[1] || (_cache[1] = [createTextVNode(" ID ", -1)])]),
|
|
10770
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
10771
|
+
"model-value": _ctx.data.id,
|
|
10772
|
+
disabled: true
|
|
10773
|
+
}, null, 8, ["model-value"])]),
|
|
10774
|
+
_: 1
|
|
10775
|
+
})) : createCommentVNode("v-if", true),
|
|
10776
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.name }, {
|
|
10777
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
10778
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.name), 1)]),
|
|
10779
|
+
default: withCtx(() => [createVNode(_component_ANameInput, {
|
|
10780
|
+
modelValue: _ctx.v.fields.name.$model.value,
|
|
10781
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.name.$model.value = $event,
|
|
10782
|
+
disabled: _ctx.isNameFixed
|
|
10783
|
+
}, null, 8, [
|
|
10784
|
+
"modelValue",
|
|
10785
|
+
"onUpdate:modelValue",
|
|
10786
|
+
"disabled"
|
|
10787
|
+
])]),
|
|
10788
|
+
_: 2
|
|
10789
|
+
}, 1032, ["validation"])]),
|
|
10790
|
+
_: 1
|
|
10791
|
+
}, 8, ["field"]),
|
|
10792
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.display_name }, {
|
|
10793
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
10794
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.displayName), 1)]),
|
|
10795
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
10796
|
+
"model-value": _ctx.v.fields.display_name.$model.value ?? "",
|
|
10797
|
+
"onUpdate:modelValue": (next) => {
|
|
10798
|
+
_ctx.v.fields.display_name.$model.value = next;
|
|
10799
|
+
}
|
|
10800
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
10801
|
+
_: 2
|
|
10802
|
+
}, 1032, ["validation"])]),
|
|
10803
|
+
_: 1
|
|
10804
|
+
}, 8, ["field"]),
|
|
10805
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.secret }, {
|
|
10806
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
10807
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.secret), 1), _ctx.isSecretHashed ? (openBlock(), createElementBlock("span", _hoisted_1$9, [createTextVNode(toDisplayString(_ctx.translationsDefault.hashed) + " ", 1), createVNode(_component_VCIcon, {
|
|
10808
|
+
name: "fa6-solid:triangle-exclamation",
|
|
10809
|
+
class: "ps-1"
|
|
10810
|
+
})])) : createCommentVNode("v-if", true)]),
|
|
10811
|
+
default: withCtx(() => [createVNode(_component_ASecretInput, {
|
|
10812
|
+
"model-value": _ctx.v.fields.secret.$model.value ?? "",
|
|
10813
|
+
"onUpdate:modelValue": (next) => {
|
|
10814
|
+
_ctx.v.fields.secret.$model.value = next;
|
|
10815
|
+
}
|
|
10816
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
10817
|
+
_: 2
|
|
10818
|
+
}, 1032, ["validation"])]),
|
|
10819
|
+
_: 1
|
|
10820
|
+
}, 8, ["field"]),
|
|
10821
|
+
createVNode(_component_AFormSubmit, {
|
|
10822
|
+
"is-busy": _ctx.busy,
|
|
10823
|
+
"is-editing": _ctx.isEditing,
|
|
10824
|
+
"is-invalid": _ctx.v.$invalid.value,
|
|
10825
|
+
onSubmit: _ctx.submit
|
|
10826
|
+
}, null, 8, [
|
|
10827
|
+
"is-busy",
|
|
10828
|
+
"is-editing",
|
|
10829
|
+
"is-invalid",
|
|
10830
|
+
"onSubmit"
|
|
10831
|
+
])
|
|
10832
|
+
], 2), !_ctx.isRealmLocked ? (openBlock(), createElementBlock("div", _hoisted_2$6, [createVNode(_component_ARealms, null, {
|
|
10833
|
+
itemActions: withCtx((pickerProps) => [createVNode(_component_AToggleButton, {
|
|
10834
|
+
value: _ctx.form.realm_id === pickerProps.data.id,
|
|
10835
|
+
"is-busy": pickerProps.busy,
|
|
10836
|
+
onChanged: (value) => {
|
|
10837
|
+
_ctx.form.realm_id = value ? pickerProps.data.id : "";
|
|
10838
|
+
}
|
|
10839
|
+
}, null, 8, [
|
|
10840
|
+
"value",
|
|
10841
|
+
"is-busy",
|
|
10842
|
+
"onChanged"
|
|
10843
|
+
])]),
|
|
10844
|
+
_: 1
|
|
10845
|
+
})])) : createCommentVNode("v-if", true)], 2)], 32);
|
|
10846
|
+
}
|
|
10847
|
+
var ARobotForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ARobotForm_vue_vue_type_script_lang_default, [["render", _sfc_render$23]]);
|
|
10848
|
+
//#endregion
|
|
9731
10849
|
//#region src/components/entities/robot/ARobots.ts
|
|
9732
10850
|
const ARobots = defineComponent({
|
|
9733
10851
|
props: defineEntityCollectionVProps(),
|
|
@@ -9739,13 +10857,15 @@ const ARobots = defineComponent({
|
|
|
9739
10857
|
props,
|
|
9740
10858
|
setup: ctx
|
|
9741
10859
|
});
|
|
10860
|
+
const translationName = useTranslation({
|
|
10861
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
10862
|
+
key: TranslatorTranslationEntityKey.ROBOT,
|
|
10863
|
+
count: 2
|
|
10864
|
+
});
|
|
9742
10865
|
const translation = useTranslation({
|
|
9743
|
-
namespace:
|
|
9744
|
-
key:
|
|
9745
|
-
data: { name:
|
|
9746
|
-
namespace: "default",
|
|
9747
|
-
key: "robots"
|
|
9748
|
-
}) }
|
|
10866
|
+
namespace: TranslatorTranslationNamespace.VUECS,
|
|
10867
|
+
key: TranslatorTranslationVuecsKey.NO_MORE,
|
|
10868
|
+
data: { name: translationName }
|
|
9749
10869
|
});
|
|
9750
10870
|
return () => render({ noMore: { content: translation.value } });
|
|
9751
10871
|
}
|
|
@@ -9767,7 +10887,7 @@ var APermissionRobotAssignments_vue_vue_type_script_lang_default = defineCompone
|
|
|
9767
10887
|
});
|
|
9768
10888
|
//#endregion
|
|
9769
10889
|
//#region src/components/entities/permission-robot/APermissionRobotAssignments.vue
|
|
9770
|
-
function _sfc_render$
|
|
10890
|
+
function _sfc_render$22(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9771
10891
|
const _component_ARobotPermissionAssignment = resolveComponent("ARobotPermissionAssignment");
|
|
9772
10892
|
const _component_ARobots = resolveComponent("ARobots");
|
|
9773
10893
|
return openBlock(), createBlock(_component_ARobots, null, createSlots({
|
|
@@ -9784,7 +10904,7 @@ function _sfc_render$20(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9784
10904
|
};
|
|
9785
10905
|
})]), 1024);
|
|
9786
10906
|
}
|
|
9787
|
-
var APermissionRobotAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APermissionRobotAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
10907
|
+
var APermissionRobotAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APermissionRobotAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$22]]);
|
|
9788
10908
|
//#endregion
|
|
9789
10909
|
//#region src/components/entities/role-permission/ARolePermissionAssignment.vue?vue&type=script&lang.ts
|
|
9790
10910
|
var ARolePermissionAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -9839,11 +10959,11 @@ var ARolePermissionAssignment_vue_vue_type_script_lang_default = defineComponent
|
|
|
9839
10959
|
});
|
|
9840
10960
|
//#endregion
|
|
9841
10961
|
//#region src/components/entities/role-permission/ARolePermissionAssignment.vue
|
|
9842
|
-
const _hoisted_1$
|
|
9843
|
-
function _sfc_render$
|
|
10962
|
+
const _hoisted_1$8 = { class: "flex gap-1" };
|
|
10963
|
+
function _sfc_render$21(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9844
10964
|
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
9845
10965
|
const _component_APermissionPolicyBindingButton = resolveComponent("APermissionPolicyBindingButton");
|
|
9846
|
-
return openBlock(), createElementBlock("span", _hoisted_1$
|
|
10966
|
+
return openBlock(), createElementBlock("span", _hoisted_1$8, [createVNode(_component_AToggleButton, {
|
|
9847
10967
|
value: !!_ctx.manager.data.value,
|
|
9848
10968
|
"is-busy": _ctx.manager.busy.value,
|
|
9849
10969
|
onChanged: _ctx.handleChanged
|
|
@@ -9862,7 +10982,7 @@ function _sfc_render$19(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9862
10982
|
"onUpdated"
|
|
9863
10983
|
])) : createCommentVNode("v-if", true)]);
|
|
9864
10984
|
}
|
|
9865
|
-
var ARolePermissionAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ARolePermissionAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
10985
|
+
var ARolePermissionAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ARolePermissionAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$21]]);
|
|
9866
10986
|
//#endregion
|
|
9867
10987
|
//#region src/components/entities/role-permission/ARolePermissionAssignments.vue?vue&type=script&lang.ts
|
|
9868
10988
|
var ARolePermissionAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -9880,7 +11000,7 @@ var ARolePermissionAssignments_vue_vue_type_script_lang_default = defineComponen
|
|
|
9880
11000
|
});
|
|
9881
11001
|
//#endregion
|
|
9882
11002
|
//#region src/components/entities/role-permission/ARolePermissionAssignments.vue
|
|
9883
|
-
function _sfc_render$
|
|
11003
|
+
function _sfc_render$20(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9884
11004
|
const _component_ARolePermissionAssignment = resolveComponent("ARolePermissionAssignment");
|
|
9885
11005
|
const _component_APermissions = resolveComponent("APermissions");
|
|
9886
11006
|
return openBlock(), createBlock(_component_APermissions, null, createSlots({
|
|
@@ -9897,7 +11017,7 @@ function _sfc_render$18(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9897
11017
|
};
|
|
9898
11018
|
})]), 1024);
|
|
9899
11019
|
}
|
|
9900
|
-
var ARolePermissionAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ARolePermissionAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
11020
|
+
var ARolePermissionAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ARolePermissionAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$20]]);
|
|
9901
11021
|
//#endregion
|
|
9902
11022
|
//#region src/components/entities/permission-role/APermissionRoleAssignments.vue?vue&type=script&lang.ts
|
|
9903
11023
|
var APermissionRoleAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -9915,7 +11035,7 @@ var APermissionRoleAssignments_vue_vue_type_script_lang_default = defineComponen
|
|
|
9915
11035
|
});
|
|
9916
11036
|
//#endregion
|
|
9917
11037
|
//#region src/components/entities/permission-role/APermissionRoleAssignments.vue
|
|
9918
|
-
function _sfc_render$
|
|
11038
|
+
function _sfc_render$19(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9919
11039
|
const _component_ARolePermissionAssignment = resolveComponent("ARolePermissionAssignment");
|
|
9920
11040
|
const _component_ARoles = resolveComponent("ARoles");
|
|
9921
11041
|
return openBlock(), createBlock(_component_ARoles, null, createSlots({
|
|
@@ -9932,7 +11052,7 @@ function _sfc_render$17(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9932
11052
|
};
|
|
9933
11053
|
})]), 1024);
|
|
9934
11054
|
}
|
|
9935
|
-
var APermissionRoleAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APermissionRoleAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
11055
|
+
var APermissionRoleAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(APermissionRoleAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$19]]);
|
|
9936
11056
|
//#endregion
|
|
9937
11057
|
//#region src/components/entities/user-permission/AUserPermissionAssignment.vue?vue&type=script&lang.ts
|
|
9938
11058
|
var AUserPermissionAssignment_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -9987,11 +11107,11 @@ var AUserPermissionAssignment_vue_vue_type_script_lang_default = defineComponent
|
|
|
9987
11107
|
});
|
|
9988
11108
|
//#endregion
|
|
9989
11109
|
//#region src/components/entities/user-permission/AUserPermissionAssignment.vue
|
|
9990
|
-
const _hoisted_1$
|
|
9991
|
-
function _sfc_render$
|
|
11110
|
+
const _hoisted_1$7 = { class: "flex gap-1" };
|
|
11111
|
+
function _sfc_render$18(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9992
11112
|
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
9993
11113
|
const _component_APermissionPolicyBindingButton = resolveComponent("APermissionPolicyBindingButton");
|
|
9994
|
-
return openBlock(), createElementBlock("span", _hoisted_1$
|
|
11114
|
+
return openBlock(), createElementBlock("span", _hoisted_1$7, [createVNode(_component_AToggleButton, {
|
|
9995
11115
|
value: !!_ctx.manager.data.value,
|
|
9996
11116
|
"is-busy": _ctx.manager.busy.value,
|
|
9997
11117
|
onChanged: _ctx.handleChanged
|
|
@@ -10010,7 +11130,7 @@ function _sfc_render$16(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10010
11130
|
"onUpdated"
|
|
10011
11131
|
])) : createCommentVNode("v-if", true)]);
|
|
10012
11132
|
}
|
|
10013
|
-
var AUserPermissionAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AUserPermissionAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
11133
|
+
var AUserPermissionAssignment_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AUserPermissionAssignment_vue_vue_type_script_lang_default, [["render", _sfc_render$18]]);
|
|
10014
11134
|
//#endregion
|
|
10015
11135
|
//#region src/components/entities/user-permission/AUserPermissionAssignments.vue?vue&type=script&lang.ts
|
|
10016
11136
|
var AUserPermissionAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
@@ -10028,7 +11148,7 @@ var AUserPermissionAssignments_vue_vue_type_script_lang_default = defineComponen
|
|
|
10028
11148
|
});
|
|
10029
11149
|
//#endregion
|
|
10030
11150
|
//#region src/components/entities/user-permission/AUserPermissionAssignments.vue
|
|
10031
|
-
function _sfc_render$
|
|
11151
|
+
function _sfc_render$17(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10032
11152
|
const _component_AUserPermissionAssignment = resolveComponent("AUserPermissionAssignment");
|
|
10033
11153
|
const _component_APermissions = resolveComponent("APermissions");
|
|
10034
11154
|
return openBlock(), createBlock(_component_APermissions, null, createSlots({
|
|
@@ -10045,7 +11165,7 @@ function _sfc_render$15(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10045
11165
|
};
|
|
10046
11166
|
})]), 1024);
|
|
10047
11167
|
}
|
|
10048
|
-
var AUserPermissionAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AUserPermissionAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$
|
|
11168
|
+
var AUserPermissionAssignments_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AUserPermissionAssignments_vue_vue_type_script_lang_default, [["render", _sfc_render$17]]);
|
|
10049
11169
|
//#endregion
|
|
10050
11170
|
//#region src/components/entities/user/AUser.ts
|
|
10051
11171
|
const AUser = defineComponent({
|
|
@@ -10068,10 +11188,11 @@ const AUser = defineComponent({
|
|
|
10068
11188
|
});
|
|
10069
11189
|
//#endregion
|
|
10070
11190
|
//#region src/components/entities/user/AUserForm.vue?vue&type=script&lang.ts
|
|
10071
|
-
|
|
11191
|
+
var AUserForm_vue_vue_type_script_lang_default = defineComponent({
|
|
10072
11192
|
components: {
|
|
10073
11193
|
ARealms,
|
|
10074
11194
|
AFormSubmit,
|
|
11195
|
+
ANameInput: ANameInput_default,
|
|
10075
11196
|
AToggleButton: AToggleButton_default,
|
|
10076
11197
|
VCFormGroup,
|
|
10077
11198
|
VCFormInput,
|
|
@@ -10095,6 +11216,7 @@ const AUserForm = defineComponent({
|
|
|
10095
11216
|
emits: defineEntityVEmitOptions(),
|
|
10096
11217
|
setup(props, ctx) {
|
|
10097
11218
|
const busy = ref(false);
|
|
11219
|
+
const nameSeed = useId();
|
|
10098
11220
|
const form = reactive({
|
|
10099
11221
|
active: true,
|
|
10100
11222
|
name: "",
|
|
@@ -10116,6 +11238,10 @@ const AUserForm = defineComponent({
|
|
|
10116
11238
|
function initForm() {
|
|
10117
11239
|
if (!!manager.data.value && typeof manager.data.value.name_locked !== "undefined") form.name_locked = manager.data.value.name_locked;
|
|
10118
11240
|
assignFormProperties(form, manager.data.value);
|
|
11241
|
+
if (form.name.length === 0) {
|
|
11242
|
+
form.name = generateName(nameSeed);
|
|
11243
|
+
if (!form.email || isUserFakeEmail(form.email)) form.email = buildUserFakeEmail(form.name);
|
|
11244
|
+
}
|
|
10119
11245
|
if (props.realmId) form.realm_id = props.realmId;
|
|
10120
11246
|
}
|
|
10121
11247
|
watch(updatedAt, (val, oldVal) => {
|
|
@@ -10145,15 +11271,39 @@ const AUserForm = defineComponent({
|
|
|
10145
11271
|
v,
|
|
10146
11272
|
isEditing,
|
|
10147
11273
|
showRealmPicker,
|
|
10148
|
-
translationsDefault:
|
|
10149
|
-
{
|
|
10150
|
-
|
|
10151
|
-
|
|
10152
|
-
|
|
10153
|
-
{
|
|
10154
|
-
|
|
10155
|
-
|
|
10156
|
-
|
|
11274
|
+
translationsDefault: useTranslations([
|
|
11275
|
+
{
|
|
11276
|
+
namespace: TranslatorTranslationNamespace.COMMON,
|
|
11277
|
+
key: TranslatorTranslationCommonKey.ACTIVE
|
|
11278
|
+
},
|
|
11279
|
+
{
|
|
11280
|
+
namespace: TranslatorTranslationNamespace.COMMON,
|
|
11281
|
+
key: TranslatorTranslationCommonKey.INACTIVE
|
|
11282
|
+
},
|
|
11283
|
+
{
|
|
11284
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
11285
|
+
key: TranslatorTranslationFieldKey.DISPLAY_NAME
|
|
11286
|
+
},
|
|
11287
|
+
{
|
|
11288
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
11289
|
+
key: TranslatorTranslationFieldKey.EMAIL
|
|
11290
|
+
},
|
|
11291
|
+
{
|
|
11292
|
+
namespace: TranslatorTranslationNamespace.COMMON,
|
|
11293
|
+
key: TranslatorTranslationCommonKey.LOCKED
|
|
11294
|
+
},
|
|
11295
|
+
{
|
|
11296
|
+
namespace: TranslatorTranslationNamespace.COMMON,
|
|
11297
|
+
key: TranslatorTranslationCommonKey.NOT_LOCKED
|
|
11298
|
+
},
|
|
11299
|
+
{
|
|
11300
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
11301
|
+
key: TranslatorTranslationFieldKey.NAME
|
|
11302
|
+
},
|
|
11303
|
+
{
|
|
11304
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
11305
|
+
key: TranslatorTranslationFieldKey.DESCRIPTION
|
|
11306
|
+
}
|
|
10157
11307
|
]),
|
|
10158
11308
|
onNameChange,
|
|
10159
11309
|
submit
|
|
@@ -10161,6 +11311,120 @@ const AUserForm = defineComponent({
|
|
|
10161
11311
|
}
|
|
10162
11312
|
});
|
|
10163
11313
|
//#endregion
|
|
11314
|
+
//#region src/components/entities/user/AUserForm.vue
|
|
11315
|
+
const _hoisted_1$6 = {
|
|
11316
|
+
key: 0,
|
|
11317
|
+
class: "row"
|
|
11318
|
+
};
|
|
11319
|
+
const _hoisted_2$5 = { class: "col" };
|
|
11320
|
+
const _hoisted_3$3 = ["for"];
|
|
11321
|
+
const _hoisted_4$2 = {
|
|
11322
|
+
key: 0,
|
|
11323
|
+
class: "col"
|
|
11324
|
+
};
|
|
11325
|
+
const _hoisted_5$2 = ["for"];
|
|
11326
|
+
const _hoisted_6$2 = { key: 0 };
|
|
11327
|
+
function _sfc_render$16(_ctx, _cache, $props, $setup, $data, $options) {
|
|
11328
|
+
const _component_ANameInput = resolveComponent("ANameInput");
|
|
11329
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
11330
|
+
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
11331
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
11332
|
+
const _component_VCFormSwitch = resolveComponent("VCFormSwitch");
|
|
11333
|
+
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
11334
|
+
const _component_AToggleButton = resolveComponent("AToggleButton");
|
|
11335
|
+
const _component_ARealms = resolveComponent("ARealms");
|
|
11336
|
+
return openBlock(), createElementBlock("form", { onSubmit: _cache[2] || (_cache[2] = withModifiers((...args) => _ctx.submit && _ctx.submit(...args), ["prevent"])) }, [createElementVNode("div", { class: normalizeClass(_ctx.showRealmPicker ? "grid grid-cols-1 md:grid-cols-2 gap-2" : "") }, [createElementVNode("div", null, [
|
|
11337
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.name }, {
|
|
11338
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
11339
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.name), 1)]),
|
|
11340
|
+
default: withCtx(() => [createVNode(_component_ANameInput, {
|
|
11341
|
+
"model-value": _ctx.v.fields.name.$model.value,
|
|
11342
|
+
disabled: _ctx.form.name_locked,
|
|
11343
|
+
"onUpdate:modelValue": _ctx.onNameChange
|
|
11344
|
+
}, null, 8, [
|
|
11345
|
+
"model-value",
|
|
11346
|
+
"disabled",
|
|
11347
|
+
"onUpdate:modelValue"
|
|
11348
|
+
])]),
|
|
11349
|
+
_: 2
|
|
11350
|
+
}, 1032, ["validation"])]),
|
|
11351
|
+
_: 1
|
|
11352
|
+
}, 8, ["field"]),
|
|
11353
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.display_name }, {
|
|
11354
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
11355
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.displayName), 1)]),
|
|
11356
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
11357
|
+
"model-value": _ctx.v.fields.display_name.$model.value ?? "",
|
|
11358
|
+
"onUpdate:modelValue": (next) => {
|
|
11359
|
+
_ctx.v.fields.display_name.$model.value = next;
|
|
11360
|
+
}
|
|
11361
|
+
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
11362
|
+
_: 2
|
|
11363
|
+
}, 1032, ["validation"])]),
|
|
11364
|
+
_: 1
|
|
11365
|
+
}, 8, ["field"]),
|
|
11366
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.email }, {
|
|
11367
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
11368
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.email), 1)]),
|
|
11369
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
11370
|
+
modelValue: _ctx.v.fields.email.$model.value,
|
|
11371
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.email.$model.value = $event,
|
|
11372
|
+
type: "email",
|
|
11373
|
+
placeholder: "...@..."
|
|
11374
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]),
|
|
11375
|
+
_: 2
|
|
11376
|
+
}, 1032, ["validation"])]),
|
|
11377
|
+
_: 1
|
|
11378
|
+
}, 8, ["field"]),
|
|
11379
|
+
_ctx.$props.canManage ? (openBlock(), createElementBlock("div", _hoisted_1$6, [createElementVNode("div", _hoisted_2$5, [createVNode(_component_VCFormSwitch, {
|
|
11380
|
+
modelValue: _ctx.form.active,
|
|
11381
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.form.active = $event),
|
|
11382
|
+
label: true
|
|
11383
|
+
}, {
|
|
11384
|
+
label: withCtx(({ id, class: labelClass }) => [createElementVNode("label", {
|
|
11385
|
+
for: id,
|
|
11386
|
+
class: normalizeClass([labelClass, _ctx.form.active ? "text-success-600" : "text-error-600"])
|
|
11387
|
+
}, toDisplayString(_ctx.form.active ? _ctx.translationsDefault.active : _ctx.translationsDefault.inactive), 11, _hoisted_3$3)]),
|
|
11388
|
+
_: 1
|
|
11389
|
+
}, 8, ["modelValue"])]), _ctx.$props.entity ? (openBlock(), createElementBlock("div", _hoisted_4$2, [createVNode(_component_VCFormSwitch, {
|
|
11390
|
+
modelValue: _ctx.form.name_locked,
|
|
11391
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => _ctx.form.name_locked = $event),
|
|
11392
|
+
label: true
|
|
11393
|
+
}, {
|
|
11394
|
+
label: withCtx(({ id, class: labelClass }) => [createElementVNode("label", {
|
|
11395
|
+
for: id,
|
|
11396
|
+
class: normalizeClass([labelClass, _ctx.form.name_locked ? "text-success-600" : "text-warning-600"])
|
|
11397
|
+
}, toDisplayString(_ctx.form.name_locked ? _ctx.translationsDefault.locked : _ctx.translationsDefault.notLocked), 11, _hoisted_5$2)]),
|
|
11398
|
+
_: 1
|
|
11399
|
+
}, 8, ["modelValue"])])) : createCommentVNode("v-if", true)])) : createCommentVNode("v-if", true),
|
|
11400
|
+
createVNode(_component_AFormSubmit, {
|
|
11401
|
+
"is-busy": _ctx.busy,
|
|
11402
|
+
"is-editing": _ctx.isEditing,
|
|
11403
|
+
"is-invalid": _ctx.v.$invalid.value,
|
|
11404
|
+
onSubmit: _ctx.submit
|
|
11405
|
+
}, null, 8, [
|
|
11406
|
+
"is-busy",
|
|
11407
|
+
"is-editing",
|
|
11408
|
+
"is-invalid",
|
|
11409
|
+
"onSubmit"
|
|
11410
|
+
])
|
|
11411
|
+
]), _ctx.showRealmPicker ? (openBlock(), createElementBlock("div", _hoisted_6$2, [createVNode(_component_ARealms, null, {
|
|
11412
|
+
itemActions: withCtx((pickerProps) => [createVNode(_component_AToggleButton, {
|
|
11413
|
+
value: _ctx.form.realm_id === pickerProps.data.id,
|
|
11414
|
+
"is-busy": pickerProps.busy,
|
|
11415
|
+
onChanged: (value) => {
|
|
11416
|
+
_ctx.form.realm_id = value ? pickerProps.data.id : "";
|
|
11417
|
+
}
|
|
11418
|
+
}, null, 8, [
|
|
11419
|
+
"value",
|
|
11420
|
+
"is-busy",
|
|
11421
|
+
"onChanged"
|
|
11422
|
+
])]),
|
|
11423
|
+
_: 1
|
|
11424
|
+
})])) : createCommentVNode("v-if", true)], 2)], 32);
|
|
11425
|
+
}
|
|
11426
|
+
var AUserForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AUserForm_vue_vue_type_script_lang_default, [["render", _sfc_render$16]]);
|
|
11427
|
+
//#endregion
|
|
10164
11428
|
//#region src/components/entities/user/AUsers.ts
|
|
10165
11429
|
const AUsers = defineComponent({
|
|
10166
11430
|
props: defineEntityCollectionVProps(),
|
|
@@ -10172,13 +11436,15 @@ const AUsers = defineComponent({
|
|
|
10172
11436
|
props,
|
|
10173
11437
|
setup: ctx
|
|
10174
11438
|
});
|
|
11439
|
+
const translationName = useTranslation({
|
|
11440
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
11441
|
+
key: TranslatorTranslationEntityKey.USER,
|
|
11442
|
+
count: 2
|
|
11443
|
+
});
|
|
10175
11444
|
const translation = useTranslation({
|
|
10176
|
-
namespace:
|
|
10177
|
-
key:
|
|
10178
|
-
data: { name:
|
|
10179
|
-
namespace: "default",
|
|
10180
|
-
key: "users"
|
|
10181
|
-
}) }
|
|
11445
|
+
namespace: TranslatorTranslationNamespace.VUECS,
|
|
11446
|
+
key: TranslatorTranslationVuecsKey.NO_MORE,
|
|
11447
|
+
data: { name: translationName }
|
|
10182
11448
|
});
|
|
10183
11449
|
return () => render({ noMore: { content: translation.value } });
|
|
10184
11450
|
}
|
|
@@ -10204,7 +11470,7 @@ var UserPasswordValidator = class extends Container {
|
|
|
10204
11470
|
this.mount("password_repeat", sameAsPassword);
|
|
10205
11471
|
}
|
|
10206
11472
|
};
|
|
10207
|
-
|
|
11473
|
+
var AUserPasswordForm_vue_vue_type_script_lang_default = defineComponent({
|
|
10208
11474
|
components: {
|
|
10209
11475
|
VCFormGroup,
|
|
10210
11476
|
VCFormInput,
|
|
@@ -10252,6 +11518,77 @@ const AUserPasswordForm = defineComponent({
|
|
|
10252
11518
|
}
|
|
10253
11519
|
});
|
|
10254
11520
|
//#endregion
|
|
11521
|
+
//#region src/components/entities/user/AUserPasswordForm.vue
|
|
11522
|
+
const _hoisted_1$5 = ["for"];
|
|
11523
|
+
function _sfc_render$15(_ctx, _cache, $props, $setup, $data, $options) {
|
|
11524
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
11525
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
11526
|
+
const _component_IFieldValidation = resolveComponent("IFieldValidation");
|
|
11527
|
+
const _component_VCFormSwitch = resolveComponent("VCFormSwitch");
|
|
11528
|
+
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
11529
|
+
return openBlock(), createElementBlock("form", {
|
|
11530
|
+
class: "flex flex-col gap-3",
|
|
11531
|
+
onSubmit: _cache[1] || (_cache[1] = withModifiers((...args) => _ctx.submit && _ctx.submit(...args), ["prevent"]))
|
|
11532
|
+
}, [
|
|
11533
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.password }, {
|
|
11534
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
11535
|
+
label: withCtx(() => [..._cache[2] || (_cache[2] = [createTextVNode(" Password ", -1)])]),
|
|
11536
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
11537
|
+
modelValue: _ctx.v.fields.password.$model.value,
|
|
11538
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.password.$model.value = $event,
|
|
11539
|
+
type: _ctx.passwordShow ? "text" : "password",
|
|
11540
|
+
autocomplete: "new-password"
|
|
11541
|
+
}, null, 8, [
|
|
11542
|
+
"modelValue",
|
|
11543
|
+
"onUpdate:modelValue",
|
|
11544
|
+
"type"
|
|
11545
|
+
])]),
|
|
11546
|
+
_: 2
|
|
11547
|
+
}, 1032, ["validation"])]),
|
|
11548
|
+
_: 1
|
|
11549
|
+
}, 8, ["field"]),
|
|
11550
|
+
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.password_repeat }, {
|
|
11551
|
+
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
11552
|
+
label: withCtx(() => [..._cache[3] || (_cache[3] = [createTextVNode(" Password repeat ", -1)])]),
|
|
11553
|
+
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
11554
|
+
modelValue: _ctx.v.fields.password_repeat.$model.value,
|
|
11555
|
+
"onUpdate:modelValue": ($event) => _ctx.v.fields.password_repeat.$model.value = $event,
|
|
11556
|
+
type: _ctx.passwordShow ? "text" : "password",
|
|
11557
|
+
autocomplete: "new-password"
|
|
11558
|
+
}, null, 8, [
|
|
11559
|
+
"modelValue",
|
|
11560
|
+
"onUpdate:modelValue",
|
|
11561
|
+
"type"
|
|
11562
|
+
])]),
|
|
11563
|
+
_: 2
|
|
11564
|
+
}, 1032, ["validation"])]),
|
|
11565
|
+
_: 1
|
|
11566
|
+
}, 8, ["field"]),
|
|
11567
|
+
createElementVNode("div", null, [createVNode(_component_VCFormSwitch, {
|
|
11568
|
+
modelValue: _ctx.passwordShow,
|
|
11569
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.passwordShow = $event),
|
|
11570
|
+
label: true
|
|
11571
|
+
}, {
|
|
11572
|
+
label: withCtx(({ id, class: labelClass }) => [createCommentVNode(" Render `<label for=id>` ourselves so clicking the text\n toggles the switch (matches the implicit behavior of\n passing labelContent as a string prop, which the\n component wraps in <label for=id> internally). "), createElementVNode("label", {
|
|
11573
|
+
for: id,
|
|
11574
|
+
class: normalizeClass(labelClass)
|
|
11575
|
+
}, " Password " + toDisplayString(_ctx.passwordShow ? "hide" : "show"), 11, _hoisted_1$5)]),
|
|
11576
|
+
_: 1
|
|
11577
|
+
}, 8, ["modelValue"])]),
|
|
11578
|
+
createElementVNode("div", null, [createVNode(_component_AFormSubmit, {
|
|
11579
|
+
"is-busy": _ctx.busy,
|
|
11580
|
+
"is-editing": true,
|
|
11581
|
+
"is-invalid": _ctx.v.$invalid.value,
|
|
11582
|
+
onSubmit: _ctx.submit
|
|
11583
|
+
}, null, 8, [
|
|
11584
|
+
"is-busy",
|
|
11585
|
+
"is-invalid",
|
|
11586
|
+
"onSubmit"
|
|
11587
|
+
])])
|
|
11588
|
+
], 32);
|
|
11589
|
+
}
|
|
11590
|
+
var AUserPasswordForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AUserPasswordForm_vue_vue_type_script_lang_default, [["render", _sfc_render$15]]);
|
|
11591
|
+
//#endregion
|
|
10255
11592
|
//#region src/components/entities/permission-user/APermissionUserAssignments.vue?vue&type=script&lang.ts
|
|
10256
11593
|
var APermissionUserAssignments_vue_vue_type_script_lang_default = defineComponent({
|
|
10257
11594
|
components: {
|
|
@@ -10653,10 +11990,10 @@ var entities_exports = /* @__PURE__ */ __exportAll({
|
|
|
10653
11990
|
ADatePolicyForm: () => ADatePolicyForm_default,
|
|
10654
11991
|
AIdentityPolicyForm: () => AIdentityPolicyForm_default,
|
|
10655
11992
|
AIdentityProvider: () => AIdentityProvider,
|
|
10656
|
-
AIdentityProviderForm: () =>
|
|
11993
|
+
AIdentityProviderForm: () => AIdentityProviderForm_default,
|
|
10657
11994
|
AIdentityProviderIcon: () => AIdentityProviderIcon_default,
|
|
10658
|
-
AIdentityProviderLdapForm: () =>
|
|
10659
|
-
AIdentityProviderOAuth2Form: () =>
|
|
11995
|
+
AIdentityProviderLdapForm: () => AIdentityProviderLdapForm_default,
|
|
11996
|
+
AIdentityProviderOAuth2Form: () => AIdentityProviderOAuth2Form_default,
|
|
10660
11997
|
AIdentityProviderPreset: () => AIdentityProviderPreset,
|
|
10661
11998
|
AIdentityProviderProtocol: () => AIdentityProviderProtocol,
|
|
10662
11999
|
AIdentityProviderRoleAssignment: () => AIdentityProviderRoleAssignment_default,
|
|
@@ -10665,7 +12002,7 @@ var entities_exports = /* @__PURE__ */ __exportAll({
|
|
|
10665
12002
|
APermission: () => APermission,
|
|
10666
12003
|
APermissionCheck: () => APermissionCheck,
|
|
10667
12004
|
APermissionClientAssignments: () => APermissionClientAssignments_default,
|
|
10668
|
-
APermissionForm: () =>
|
|
12005
|
+
APermissionForm: () => APermissionForm_default,
|
|
10669
12006
|
APermissionPolicyAssignment: () => APermissionPolicyAssignment_default,
|
|
10670
12007
|
APermissionPolicyAssignments: () => APermissionPolicyAssignments_default,
|
|
10671
12008
|
APermissionPolicyBindingButton: () => APermissionPolicyBindingButton,
|
|
@@ -10682,12 +12019,12 @@ var entities_exports = /* @__PURE__ */ __exportAll({
|
|
|
10682
12019
|
APolicyTypeBadge: () => APolicyTypeBadge_default,
|
|
10683
12020
|
APolicyTypePicker: () => APolicyTypePicker_default,
|
|
10684
12021
|
ARealm: () => ARealm,
|
|
10685
|
-
ARealmForm: () =>
|
|
12022
|
+
ARealmForm: () => ARealmForm_default,
|
|
10686
12023
|
ARealmMatchPolicyForm: () => ARealmMatchPolicyForm_default,
|
|
10687
12024
|
ARealmPicker: () => ARealmPicker,
|
|
10688
12025
|
ARealms: () => ARealms,
|
|
10689
12026
|
ARobot: () => ARobot,
|
|
10690
|
-
ARobotForm: () =>
|
|
12027
|
+
ARobotForm: () => ARobotForm_default,
|
|
10691
12028
|
ARobotPermissionAssignment: () => ARobotPermissionAssignment_default,
|
|
10692
12029
|
ARobotPermissionAssignments: () => ARobotPermissionAssignments_default,
|
|
10693
12030
|
ARobotRoleAssignment: () => ARobotRoleAssignment_default,
|
|
@@ -10695,7 +12032,7 @@ var entities_exports = /* @__PURE__ */ __exportAll({
|
|
|
10695
12032
|
ARobots: () => ARobots,
|
|
10696
12033
|
ARole: () => ARole,
|
|
10697
12034
|
ARoleClientAssignments: () => ARoleClientAssignments_default,
|
|
10698
|
-
ARoleForm: () =>
|
|
12035
|
+
ARoleForm: () => ARoleForm_default,
|
|
10699
12036
|
ARolePermissionAssignment: () => ARolePermissionAssignment_default,
|
|
10700
12037
|
ARolePermissionAssignments: () => ARolePermissionAssignments_default,
|
|
10701
12038
|
ARoleRobotAssignments: () => ARoleRobotAssignments_default,
|
|
@@ -10703,12 +12040,12 @@ var entities_exports = /* @__PURE__ */ __exportAll({
|
|
|
10703
12040
|
ARoles: () => ARoles,
|
|
10704
12041
|
AScope: () => AScope,
|
|
10705
12042
|
AScopeClientAssignments: () => AScopeClientAssignments_default,
|
|
10706
|
-
AScopeForm: () =>
|
|
12043
|
+
AScopeForm: () => AScopeForm_default,
|
|
10707
12044
|
AScopes: () => AScopes,
|
|
10708
12045
|
ATimePolicyForm: () => ATimePolicyForm_default,
|
|
10709
12046
|
AUser: () => AUser,
|
|
10710
|
-
AUserForm: () =>
|
|
10711
|
-
AUserPasswordForm: () =>
|
|
12047
|
+
AUserForm: () => AUserForm_default,
|
|
12048
|
+
AUserPasswordForm: () => AUserPasswordForm_default,
|
|
10712
12049
|
AUserPermissionAssignment: () => AUserPermissionAssignment_default,
|
|
10713
12050
|
AUserPermissionAssignments: () => AUserPermissionAssignments_default,
|
|
10714
12051
|
AUserRoleAssignment: () => AUserRoleAssignment_default,
|
|
@@ -10795,6 +12132,26 @@ var Login_vue_vue_type_script_lang_default = defineComponent({
|
|
|
10795
12132
|
realm_id: ""
|
|
10796
12133
|
});
|
|
10797
12134
|
const v = useValidup(new LoginCredentialsValidator(), form);
|
|
12135
|
+
const translationsDefault = useTranslations([
|
|
12136
|
+
{
|
|
12137
|
+
namespace: TranslatorTranslationNamespace.ACTION,
|
|
12138
|
+
key: TranslatorTranslationActionKey.LOGIN
|
|
12139
|
+
},
|
|
12140
|
+
{
|
|
12141
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
12142
|
+
key: TranslatorTranslationFieldKey.NAME
|
|
12143
|
+
},
|
|
12144
|
+
{
|
|
12145
|
+
namespace: TranslatorTranslationNamespace.FIELD,
|
|
12146
|
+
key: TranslatorTranslationFieldKey.PASSWORD
|
|
12147
|
+
},
|
|
12148
|
+
{
|
|
12149
|
+
namespace: TranslatorTranslationNamespace.ENTITY,
|
|
12150
|
+
key: TranslatorTranslationEntityKey.IDENTITY_PROVIDER,
|
|
12151
|
+
count: 2
|
|
12152
|
+
}
|
|
12153
|
+
]);
|
|
12154
|
+
const translate = useTranslator();
|
|
10798
12155
|
const busy = ref(false);
|
|
10799
12156
|
const realmId = computed(() => {
|
|
10800
12157
|
if (props.codeRequest && props.codeRequest.realm_id) return props.codeRequest.realm_id;
|
|
@@ -10829,7 +12186,10 @@ var Login_vue_vue_type_script_lang_default = defineComponent({
|
|
|
10829
12186
|
});
|
|
10830
12187
|
emit("done");
|
|
10831
12188
|
} catch (e) {
|
|
10832
|
-
emit("failed", e instanceof Error ? e.message :
|
|
12189
|
+
emit("failed", e instanceof Error ? e.message : await translate({
|
|
12190
|
+
namespace: TranslatorTranslationNamespace.CLIENT,
|
|
12191
|
+
key: TranslatorTranslationClientKey.LOGIN_FAILED
|
|
12192
|
+
}));
|
|
10833
12193
|
}
|
|
10834
12194
|
};
|
|
10835
12195
|
const buildIdentityProviderURL = (id) => {
|
|
@@ -10852,16 +12212,19 @@ var Login_vue_vue_type_script_lang_default = defineComponent({
|
|
|
10852
12212
|
}),
|
|
10853
12213
|
identityProviderQuery,
|
|
10854
12214
|
identityProviderRef,
|
|
10855
|
-
buildIdentityProviderURL
|
|
12215
|
+
buildIdentityProviderURL,
|
|
12216
|
+
translationsDefault
|
|
10856
12217
|
};
|
|
10857
12218
|
}
|
|
10858
12219
|
});
|
|
10859
12220
|
//#endregion
|
|
10860
12221
|
//#region src/components/workflows/Login.vue
|
|
10861
|
-
const _hoisted_1$4 = { class: "
|
|
10862
|
-
const _hoisted_2$4 =
|
|
10863
|
-
const _hoisted_3$2 = { class: "flex flex-
|
|
10864
|
-
const _hoisted_4$1 =
|
|
12222
|
+
const _hoisted_1$4 = { class: "text-center" };
|
|
12223
|
+
const _hoisted_2$4 = { class: "font-bold" };
|
|
12224
|
+
const _hoisted_3$2 = { class: "flex flex-row" };
|
|
12225
|
+
const _hoisted_4$1 = ["href"];
|
|
12226
|
+
const _hoisted_5$1 = { class: "flex flex-col" };
|
|
12227
|
+
const _hoisted_6$1 = { class: "text-center mb-1" };
|
|
10865
12228
|
function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10866
12229
|
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
10867
12230
|
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
@@ -10872,10 +12235,10 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10872
12235
|
const _component_APagination = resolveComponent("APagination");
|
|
10873
12236
|
const _component_AIdentityProviderIcon = resolveComponent("AIdentityProviderIcon");
|
|
10874
12237
|
const _component_AIdentityProviders = resolveComponent("AIdentityProviders");
|
|
10875
|
-
return openBlock(), createElementBlock("div", null, [
|
|
12238
|
+
return openBlock(), createElementBlock("div", null, [createElementVNode("div", _hoisted_1$4, [createElementVNode("h1", _hoisted_2$4, toDisplayString(_ctx.translationsDefault.login), 1)]), createElementVNode("form", { onSubmit: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.submit && _ctx.submit(...args), ["prevent"])) }, [
|
|
10876
12239
|
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.name }, {
|
|
10877
12240
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
10878
|
-
label: withCtx(() => [
|
|
12241
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.name), 1)]),
|
|
10879
12242
|
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
10880
12243
|
modelValue: _ctx.v.fields.name.$model.value,
|
|
10881
12244
|
"onUpdate:modelValue": ($event) => _ctx.v.fields.name.$model.value = $event
|
|
@@ -10886,7 +12249,7 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10886
12249
|
}, 8, ["field"]),
|
|
10887
12250
|
createVNode(_component_IFieldValidation, { field: _ctx.v.fields.password }, {
|
|
10888
12251
|
default: withCtx(({ value }) => [createVNode(_component_VCFormGroup, { validation: value }, {
|
|
10889
|
-
label: withCtx(() => [
|
|
12252
|
+
label: withCtx(() => [createTextVNode(toDisplayString(_ctx.translationsDefault.password), 1)]),
|
|
10890
12253
|
default: withCtx(() => [createVNode(_component_VCFormInput, {
|
|
10891
12254
|
modelValue: _ctx.v.fields.password.$model.value,
|
|
10892
12255
|
"onUpdate:modelValue": ($event) => _ctx.v.fields.password.$model.value = $event,
|
|
@@ -10898,10 +12261,10 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10898
12261
|
}, 8, ["field"]),
|
|
10899
12262
|
createCommentVNode("\n <VCFormSubmit> from form-controls 2.x was dropped in\n @vuecs/forms 4.x. The 4.x replacement is the\n useSubmitButton() composable (see setup() above) which\n returns a v-bind-ready computed binding ({ type, label,\n iconLeft, color, loading, disabled }) for VCButton. The\n parent <form @submit.prevent=\"submit\"> catches the\n submission — no @click handler needed here. We override\n `label` to \"Login\" because the composable's default\n (sourced from the vuecs defaults manager) is \"Create\".\n "),
|
|
10900
12263
|
createVNode(_component_VCButton, mergeProps(_ctx.submitButton, {
|
|
10901
|
-
label:
|
|
12264
|
+
label: _ctx.translationsDefault.login,
|
|
10902
12265
|
class: "w-full"
|
|
10903
|
-
}), null, 16),
|
|
10904
|
-
_cache[
|
|
12266
|
+
}), null, 16, ["label"]),
|
|
12267
|
+
_cache[1] || (_cache[1] = createElementVNode("hr", null, null, -1)),
|
|
10905
12268
|
!_ctx.codeRequest || !_ctx.codeRequest.realm_id ? (openBlock(), createBlock(_component_ARealmPicker, {
|
|
10906
12269
|
key: 0,
|
|
10907
12270
|
value: _ctx.form.realm_id,
|
|
@@ -10912,7 +12275,7 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10912
12275
|
query: _ctx.identityProviderQuery,
|
|
10913
12276
|
footer: false
|
|
10914
12277
|
}, {
|
|
10915
|
-
header: withCtx(() => [createVNode(_component_ATitle, { text:
|
|
12278
|
+
header: withCtx(() => [createVNode(_component_ATitle, { text: _ctx.translationsDefault.identityProvider }, null, 8, ["text"])]),
|
|
10916
12279
|
footer: withCtx((props) => [createVNode(_component_APagination, {
|
|
10917
12280
|
busy: props.busy,
|
|
10918
12281
|
meta: props.meta,
|
|
@@ -10924,14 +12287,14 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10924
12287
|
"load",
|
|
10925
12288
|
"total"
|
|
10926
12289
|
])]),
|
|
10927
|
-
body: withCtx((props) => [createElementVNode("div",
|
|
12290
|
+
body: withCtx((props) => [createElementVNode("div", _hoisted_3$2, [(openBlock(true), createElementBlock(Fragment, null, renderList(props.data, (item, key) => {
|
|
10928
12291
|
return openBlock(), createElementBlock("div", { key }, [createElementVNode("a", {
|
|
10929
12292
|
href: _ctx.buildIdentityProviderURL(item.id),
|
|
10930
12293
|
class: "btn btn-dark btn-xs p-2 me-1 identity-provider-box bg-fg"
|
|
10931
|
-
}, [createElementVNode("div",
|
|
12294
|
+
}, [createElementVNode("div", _hoisted_5$1, [createElementVNode("div", _hoisted_6$1, [createVNode(_component_AIdentityProviderIcon, {
|
|
10932
12295
|
class: "text-2xl",
|
|
10933
12296
|
entity: item
|
|
10934
|
-
}, null, 8, ["entity"])]), createElementVNode("div", null, toDisplayString(item.name), 1)])], 8,
|
|
12297
|
+
}, null, 8, ["entity"])]), createElementVNode("div", null, toDisplayString(item.name), 1)])], 8, _hoisted_4$1)]);
|
|
10935
12298
|
}), 128))])]),
|
|
10936
12299
|
_: 1
|
|
10937
12300
|
}, 8, ["query"])
|
|
@@ -10983,6 +12346,10 @@ var AuthorizeScopes_vue_vue_type_script_lang_default = defineComponent({
|
|
|
10983
12346
|
},
|
|
10984
12347
|
setup(props) {
|
|
10985
12348
|
const httpClient = injectHTTPClient();
|
|
12349
|
+
const translationsClient = useTranslationsForNamespace(TranslatorTranslationNamespace.CLIENT, [{
|
|
12350
|
+
key: TranslatorTranslationClientKey.SCOPE_GRANT_INTRO,
|
|
12351
|
+
data: { client: props.client.name }
|
|
12352
|
+
}]);
|
|
10986
12353
|
const scopesRequestedNormalized = computed(() => {
|
|
10987
12354
|
if (!props.scopesRequested) return [];
|
|
10988
12355
|
return Array.isArray(props.scopesRequested) ? props.scopesRequested : deserializeOAuth2Scope(props.scopesRequested);
|
|
@@ -11004,7 +12371,8 @@ var AuthorizeScopes_vue_vue_type_script_lang_default = defineComponent({
|
|
|
11004
12371
|
Promise.resolve().then(() => resolveScopesAvailable());
|
|
11005
12372
|
return {
|
|
11006
12373
|
scopesRequestedNormalized,
|
|
11007
|
-
scopesAvailableNormalized
|
|
12374
|
+
scopesAvailableNormalized,
|
|
12375
|
+
translationsClient
|
|
11008
12376
|
};
|
|
11009
12377
|
}
|
|
11010
12378
|
});
|
|
@@ -11014,11 +12382,7 @@ const _hoisted_1$2 = { key: 0 };
|
|
|
11014
12382
|
const _hoisted_2$2 = { class: "flex-col" };
|
|
11015
12383
|
function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
11016
12384
|
const _component_AuthorizeScope = resolveComponent("AuthorizeScope");
|
|
11017
|
-
return _ctx.scopesAvailableNormalized.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_1$2, [createElementVNode("div", null, [
|
|
11018
|
-
_cache[0] || (_cache[0] = createTextVNode(" This will allow the ", -1)),
|
|
11019
|
-
createElementVNode("strong", null, toDisplayString(_ctx.client.name), 1),
|
|
11020
|
-
_cache[1] || (_cache[1] = createTextVNode(" application to ", -1))
|
|
11021
|
-
]), createElementVNode("div", _hoisted_2$2, [(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.scopesAvailableNormalized, (item) => {
|
|
12385
|
+
return _ctx.scopesAvailableNormalized.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_1$2, [createElementVNode("div", null, toDisplayString(_ctx.translationsClient.scopeGrantIntro), 1), createElementVNode("div", _hoisted_2$2, [(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.scopesAvailableNormalized, (item) => {
|
|
11022
12386
|
return openBlock(), createBlock(_component_AuthorizeScope, {
|
|
11023
12387
|
key: item.id,
|
|
11024
12388
|
entity: item,
|
|
@@ -11044,6 +12408,28 @@ var AuthorizeForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
11044
12408
|
},
|
|
11045
12409
|
setup(props) {
|
|
11046
12410
|
const httpClient = injectHTTPClient();
|
|
12411
|
+
const translationsDefault = useTranslations([
|
|
12412
|
+
{
|
|
12413
|
+
namespace: TranslatorTranslationNamespace.COMMON,
|
|
12414
|
+
key: TranslatorTranslationCommonKey.APPLICATION
|
|
12415
|
+
},
|
|
12416
|
+
{
|
|
12417
|
+
namespace: TranslatorTranslationNamespace.ACTION,
|
|
12418
|
+
key: TranslatorTranslationActionKey.ABORT
|
|
12419
|
+
},
|
|
12420
|
+
{
|
|
12421
|
+
namespace: TranslatorTranslationNamespace.ACTION,
|
|
12422
|
+
key: TranslatorTranslationActionKey.AUTHORIZE
|
|
12423
|
+
}
|
|
12424
|
+
]);
|
|
12425
|
+
const translationsClient = useTranslationsForNamespace(TranslatorTranslationNamespace.CLIENT, [
|
|
12426
|
+
{ key: TranslatorTranslationClientKey.ONCE_AUTHORIZED_REDIRECT },
|
|
12427
|
+
{ key: TranslatorTranslationClientKey.ACTIVE_SINCE },
|
|
12428
|
+
{
|
|
12429
|
+
key: TranslatorTranslationClientKey.GOVERNED_BY,
|
|
12430
|
+
data: { client: props.client.name }
|
|
12431
|
+
}
|
|
12432
|
+
]);
|
|
11047
12433
|
const abort = () => {
|
|
11048
12434
|
const url = new URL(`${props.codeRequest.redirect_uri}`);
|
|
11049
12435
|
url.searchParams.set("error", "access_denied");
|
|
@@ -11065,7 +12451,9 @@ var AuthorizeForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
11065
12451
|
};
|
|
11066
12452
|
return {
|
|
11067
12453
|
authorize,
|
|
11068
|
-
abort
|
|
12454
|
+
abort,
|
|
12455
|
+
translationsDefault,
|
|
12456
|
+
translationsClient
|
|
11069
12457
|
};
|
|
11070
12458
|
}
|
|
11071
12459
|
});
|
|
@@ -11073,22 +12461,23 @@ var AuthorizeForm_vue_vue_type_script_lang_default = defineComponent({
|
|
|
11073
12461
|
//#region src/components/workflows/authorize/AuthorizeForm.vue
|
|
11074
12462
|
const _hoisted_1$1 = { class: "flex-col flex gap-2" };
|
|
11075
12463
|
const _hoisted_2$1 = { class: "text-center" };
|
|
11076
|
-
const _hoisted_3$1 = { class: "
|
|
11077
|
-
const _hoisted_4 = { class: "
|
|
11078
|
-
const _hoisted_5 = { class: "
|
|
11079
|
-
const _hoisted_6 = { class: "
|
|
11080
|
-
const _hoisted_7 = { class: "
|
|
11081
|
-
const _hoisted_8 = { class: "
|
|
11082
|
-
const _hoisted_9 = { class: "
|
|
11083
|
-
const _hoisted_10 = { class: "
|
|
11084
|
-
const _hoisted_11 = { class: "
|
|
11085
|
-
const _hoisted_12 = { class: "
|
|
12464
|
+
const _hoisted_3$1 = { class: "text-fg-muted mb-1" };
|
|
12465
|
+
const _hoisted_4 = { class: "font-bold" };
|
|
12466
|
+
const _hoisted_5 = { class: "mt-auto" };
|
|
12467
|
+
const _hoisted_6 = { class: "flex flex-row" };
|
|
12468
|
+
const _hoisted_7 = { class: "ms-1" };
|
|
12469
|
+
const _hoisted_8 = { class: "flex flex-row" };
|
|
12470
|
+
const _hoisted_9 = { class: "ms-1" };
|
|
12471
|
+
const _hoisted_10 = { class: "flex flex-row" };
|
|
12472
|
+
const _hoisted_11 = { class: "ms-1" };
|
|
12473
|
+
const _hoisted_12 = { class: "row" };
|
|
11086
12474
|
const _hoisted_13 = { class: "col-6" };
|
|
12475
|
+
const _hoisted_14 = { class: "col-6" };
|
|
11087
12476
|
function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
11088
12477
|
const _component_AuthorizeScopes = resolveComponent("AuthorizeScopes");
|
|
11089
12478
|
const _component_VCIcon = resolveComponent("VCIcon");
|
|
11090
12479
|
return openBlock(), createElementBlock("div", _hoisted_1$1, [
|
|
11091
|
-
createElementVNode("div", _hoisted_2$1, [
|
|
12480
|
+
createElementVNode("div", _hoisted_2$1, [createElementVNode("h5", _hoisted_3$1, toDisplayString(_ctx.translationsDefault.application), 1), createElementVNode("h1", _hoisted_4, toDisplayString(_ctx.client.name), 1)]),
|
|
11092
12481
|
createVNode(_component_AuthorizeScopes, {
|
|
11093
12482
|
client: _ctx.client,
|
|
11094
12483
|
"scopes-requested": _ctx.codeRequest.scope,
|
|
@@ -11098,24 +12487,20 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
11098
12487
|
"scopes-requested",
|
|
11099
12488
|
"scopes-available"
|
|
11100
12489
|
]),
|
|
11101
|
-
createElementVNode("div",
|
|
11102
|
-
createElementVNode("div",
|
|
11103
|
-
createElementVNode("div",
|
|
11104
|
-
|
|
11105
|
-
createElementVNode("strong", null, toDisplayString(_ctx.client.name), 1),
|
|
11106
|
-
_cache[5] || (_cache[5] = createTextVNode(" application's Privacy Policy and Terms of Service. ", -1))
|
|
11107
|
-
])])]),
|
|
11108
|
-
createElementVNode("div", _hoisted_9, [createElementVNode("div", null, [createVNode(_component_VCIcon, { name: "fa6-solid:clock" })]), createElementVNode("div", _hoisted_10, [createElementVNode("small", null, " Active since " + toDisplayString(_ctx.client.created_at), 1)])])
|
|
12490
|
+
createElementVNode("div", _hoisted_5, [
|
|
12491
|
+
createElementVNode("div", _hoisted_6, [createElementVNode("div", null, [createVNode(_component_VCIcon, { name: "fa6-solid:link" })]), createElementVNode("div", _hoisted_7, [createElementVNode("small", null, [createTextVNode(toDisplayString(_ctx.translationsClient.onceAuthorizedRedirect) + " ", 1), createElementVNode("strong", null, toDisplayString(_ctx.codeRequest.redirect_uri), 1)])])]),
|
|
12492
|
+
createElementVNode("div", _hoisted_8, [createElementVNode("div", null, [createVNode(_component_VCIcon, { name: "fa6-solid:lock" })]), createElementVNode("div", _hoisted_9, [createElementVNode("small", null, toDisplayString(_ctx.translationsClient.governedBy), 1)])]),
|
|
12493
|
+
createElementVNode("div", _hoisted_10, [createElementVNode("div", null, [createVNode(_component_VCIcon, { name: "fa6-solid:clock" })]), createElementVNode("div", _hoisted_11, [createElementVNode("small", null, toDisplayString(_ctx.translationsClient.activeSince) + " " + toDisplayString(_ctx.client.created_at), 1)])])
|
|
11109
12494
|
]),
|
|
11110
|
-
createElementVNode("div",
|
|
12495
|
+
createElementVNode("div", _hoisted_12, [createElementVNode("div", _hoisted_13, [createElementVNode("button", {
|
|
11111
12496
|
type: "button",
|
|
11112
12497
|
class: "btn w-full btn-secondary",
|
|
11113
12498
|
onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.abort && _ctx.abort(...args), ["prevent"]))
|
|
11114
|
-
},
|
|
12499
|
+
}, toDisplayString(_ctx.translationsDefault.abort), 1)]), createElementVNode("div", _hoisted_14, [createElementVNode("button", {
|
|
11115
12500
|
type: "button",
|
|
11116
12501
|
class: "btn w-full btn-primary",
|
|
11117
12502
|
onClick: _cache[1] || (_cache[1] = withModifiers((...args) => _ctx.authorize && _ctx.authorize(...args), ["prevent"]))
|
|
11118
|
-
},
|
|
12503
|
+
}, toDisplayString(_ctx.translationsDefault.authorize), 1)])])
|
|
11119
12504
|
]);
|
|
11120
12505
|
}
|
|
11121
12506
|
var AuthorizeForm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(AuthorizeForm_vue_vue_type_script_lang_default, [["render", _sfc_render$1]]);
|
|
@@ -11168,6 +12553,10 @@ var Authorize_default = defineComponent({
|
|
|
11168
12553
|
const { loggedIn } = storeToRefs$1(injectStore());
|
|
11169
12554
|
const error = ref(null);
|
|
11170
12555
|
const client = ref(null);
|
|
12556
|
+
const loadingText = useTranslation({
|
|
12557
|
+
namespace: TranslatorTranslationNamespace.COMMON,
|
|
12558
|
+
key: TranslatorTranslationCommonKey.LOADING
|
|
12559
|
+
});
|
|
11171
12560
|
const resolve = async () => {
|
|
11172
12561
|
if (props.error) {
|
|
11173
12562
|
error.value = props.error;
|
|
@@ -11189,7 +12578,7 @@ var Authorize_default = defineComponent({
|
|
|
11189
12578
|
if (!props.codeRequest) return [];
|
|
11190
12579
|
if (!loggedIn.value) return wrapChild(h(Suspense, {}, {
|
|
11191
12580
|
default: () => h(Login_default, { codeRequest: props.codeRequest }),
|
|
11192
|
-
fallback: () => h(AuthorizeText_default, { message:
|
|
12581
|
+
fallback: () => h(AuthorizeText_default, { message: loadingText.value })
|
|
11193
12582
|
}));
|
|
11194
12583
|
if (!client.value) return [];
|
|
11195
12584
|
return wrapChild(h(Suspense, {}, {
|
|
@@ -11198,7 +12587,7 @@ var Authorize_default = defineComponent({
|
|
|
11198
12587
|
client: client.value,
|
|
11199
12588
|
scopes: props.scopes
|
|
11200
12589
|
}),
|
|
11201
|
-
fallback: () => h(AuthorizeText_default, { message:
|
|
12590
|
+
fallback: () => h(AuthorizeText_default, { message: loadingText.value })
|
|
11202
12591
|
}));
|
|
11203
12592
|
};
|
|
11204
12593
|
}
|
|
@@ -11207,6 +12596,6 @@ var Authorize_default = defineComponent({
|
|
|
11207
12596
|
//#region src/index.ts
|
|
11208
12597
|
var src_default = { install };
|
|
11209
12598
|
//#endregion
|
|
11210
|
-
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, SlotName, SocketClientSymbol, StoreDispatcherEventName,
|
|
12599
|
+
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_default as AIdentityProviderForm, AIdentityProviderIcon_default as AIdentityProviderIcon, AIdentityProviderLdapForm_default as AIdentityProviderLdapForm, AIdentityProviderOAuth2Form_default as AIdentityProviderOAuth2Form, AIdentityProviderPreset, AIdentityProviderProtocol, AIdentityProviderRoleAssignment_default as AIdentityProviderRoleAssignment, AIdentityProviderRoleAssignments_default as AIdentityProviderRoleAssignments, AIdentityProviders, Login_default as ALogin, ANameInput_default as ANameInput, APagination, APermission, APermissionCheck, APermissionClientAssignments_default as APermissionClientAssignments, APermissionForm_default as 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_default as ARealmForm, ARealmMatchPolicyForm_default as ARealmMatchPolicyForm, ARealmPicker, ARealms, ARobot, ARobotForm_default as ARobotForm, ARobotPermissionAssignment_default as ARobotPermissionAssignment, ARobotPermissionAssignments_default as ARobotPermissionAssignments, ARobotRoleAssignment_default as ARobotRoleAssignment, ARobotRoleAssignments_default as ARobotRoleAssignments, ARobots, ARole, ARoleClientAssignments_default as ARoleClientAssignments, ARoleForm_default as ARoleForm, ARolePermissionAssignment_default as ARolePermissionAssignment, ARolePermissionAssignments_default as ARolePermissionAssignments, ARoleRobotAssignments_default as ARoleRobotAssignments, ARoleUserAssignments_default as ARoleUserAssignments, ARoles, AScope, AScopeClientAssignments_default as AScopeClientAssignments, AScopeForm_default as AScopeForm, AScopes, ASearch, ASecretInput_default as ASecretInput, ATimePolicyForm_default as ATimePolicyForm, ATitle, AToggleButton_default as AToggleButton, AUser, AUserForm_default as AUserForm, AUserPasswordForm_default as AUserPasswordForm, AUserPermissionAssignment_default as AUserPermissionAssignment, AUserPermissionAssignments_default as AUserPermissionAssignments, AUserRoleAssignment_default as AUserRoleAssignment, AUserRoleAssignments_default as AUserRoleAssignments, AUsers, EntityRecordError, HTTPClientSymbol, LanguageSwitcherDropdown, ListHandlers, STORE_ID, SlotName, SocketClientSymbol, StoreDispatcherEventName, assignFormProperties, buildEntityVSlotProps, buildFormCheckbox, buildFormGroup, buildFormInput, buildFormInputText, buildFormSelect, buildFormSubmit, buildFormSubmitWithTranslations, buildFormSwitch, buildFormTextarea, buildSubmitButtonDefaults, createFormSubmitTranslations, createPermissionCheckerReactiveFn, createStore, createStoreDispatcher, src_default as default, defineEntityCollectionManager, defineEntityCollectionVEmitOptions, defineEntityCollectionVProps, defineEntityManager, defineEntityPicker, defineEntityPickerVEmitOptions, defineEntityPickerVProps, defineEntitySocketManager, defineEntityVEmitOptions, defineEntityVProps, extractValidupResultsFromChild, getSeverity, 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, useTranslations, useTranslationsForComposable, useTranslationsForField, useTranslationsForNamespace, useTranslator, useUpdatedAt, wrapFnWithBusyState };
|
|
11211
12600
|
|
|
11212
12601
|
//# sourceMappingURL=index.mjs.map
|