@authup/client-web-kit 1.0.0-beta.26 → 1.0.0-beta.28
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 +570 -0
- package/dist/components/entities/client/AClientForm.vue.d.ts.map +1 -0
- package/dist/components/entities/client/index.d.ts +1 -1
- package/dist/components/entities/client/index.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderForm.d.ts +1 -11
- package/dist/components/entities/identity-provider/AIdentityProviderForm.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderLdapForm.d.ts +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2Form.d.ts +1 -10
- package/dist/components/entities/identity-provider/AIdentityProviderOAuth2Form.d.ts.map +1 -1
- package/dist/components/entities/identity-provider/AIdentityProviderPicker.vue.d.ts +3 -2
- package/dist/components/entities/identity-provider/AIdentityProviderPicker.vue.d.ts.map +1 -1
- package/dist/components/entities/permission/APermissionCheck.d.ts +5 -5
- package/dist/components/entities/permission/APermissionCheck.d.ts.map +1 -1
- package/dist/components/entities/policy/APolicyBasicForm.vue.d.ts +6 -5
- package/dist/components/entities/policy/APolicyBasicForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/APolicyForm.vue.d.ts +19 -18
- package/dist/components/entities/policy/APolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/APolicyTypePicker.vue.d.ts +3 -2
- package/dist/components/entities/policy/APolicyTypePicker.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/attribute-names/AAttributeNamesPolicyForm.vue.d.ts +8 -7
- package/dist/components/entities/policy/attribute-names/AAttributeNamesPolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/composite/ACompositePolicyForm.vue.d.ts +6 -5
- package/dist/components/entities/policy/composite/ACompositePolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/date/ADatePolicyForm.vue.d.ts +6 -5
- package/dist/components/entities/policy/date/ADatePolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/identity/AIdentityPolicyForm.vue.d.ts +8 -7
- package/dist/components/entities/policy/identity/AIdentityPolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/realm-match/ARealmMatchPolicyForm.vue.d.ts +11 -10
- package/dist/components/entities/policy/realm-match/ARealmMatchPolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/policy/time/ATimePolicyForm.vue.d.ts +6 -5
- package/dist/components/entities/policy/time/ATimePolicyForm.vue.d.ts.map +1 -1
- package/dist/components/entities/robot/ARobotForm.d.ts +1 -1
- package/dist/components/entities/user/AUserForm.d.ts +1 -1
- package/dist/components/entities/user/AUserForm.d.ts.map +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/utility/AFormSubmit.d.ts +1 -1
- package/dist/components/utility/form-input-list/AFormInputList.vue.d.ts +8 -7
- 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 +6 -5
- package/dist/components/utility/form-input-list/AFormInputListItem.vue.d.ts.map +1 -1
- package/dist/components/workflows/Login.vue.d.ts +354 -0
- package/dist/components/workflows/Login.vue.d.ts.map +1 -0
- package/dist/components/workflows/authorize/Authorize.vue.d.ts +489 -0
- package/dist/components/workflows/authorize/Authorize.vue.d.ts.map +1 -0
- package/dist/components/workflows/authorize/AuthorizeForm.vue.d.ts +84 -0
- package/dist/components/workflows/authorize/AuthorizeForm.vue.d.ts.map +1 -0
- package/dist/components/workflows/authorize/AuthorizeScope.vue.d.ts +28 -0
- package/dist/components/workflows/authorize/AuthorizeScope.vue.d.ts.map +1 -0
- package/dist/components/workflows/authorize/AuthorizeScopes.vue.d.ts +55 -0
- package/dist/components/workflows/authorize/AuthorizeScopes.vue.d.ts.map +1 -0
- package/dist/components/workflows/authorize/AuthorizeText.vue.d.ts +22 -0
- package/dist/components/workflows/authorize/AuthorizeText.vue.d.ts.map +1 -0
- package/dist/components/workflows/authorize/helpers.d.ts +10 -0
- package/dist/components/workflows/authorize/helpers.d.ts.map +1 -0
- package/dist/components/workflows/authorize/index.d.ts +3 -0
- package/dist/components/workflows/authorize/index.d.ts.map +1 -0
- package/dist/components/workflows/index.d.ts +3 -0
- package/dist/components/workflows/index.d.ts.map +1 -0
- package/dist/core/store/create.d.ts +18 -16
- package/dist/core/store/create.d.ts.map +1 -1
- package/dist/core/translator/constants.d.ts +3 -1
- package/dist/core/translator/constants.d.ts.map +1 -1
- package/dist/core/translator/de/client.d.ts.map +1 -1
- package/dist/core/translator/en/client.d.ts.map +1 -1
- package/dist/index.css +31 -11
- package/dist/index.mjs +2120 -1588
- package/dist/index.mjs.map +1 -1
- package/dist/module.d.ts.map +1 -1
- package/package.json +29 -28
- package/dist/components/entities/client/AClientForm.d.ts +0 -43
- package/dist/components/entities/client/AClientForm.d.ts.map +0 -1
- package/dist/index.cjs +0 -9650
- package/dist/index.cjs.map +0 -1
package/dist/index.mjs
CHANGED
|
@@ -1,22 +1,229 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import installFormControl, { VCFormGroup, VCFormInput, buildFormSubmit, buildFormInputText, buildFormGroup, buildFormInput, buildFormTextarea, buildFormInputCheckbox, VCFormInputCheckbox } from '@vuecs/form-controls';
|
|
2
|
+
import { hasOwnProperty, isObject as isObject$1, merge, createMerger } from 'smob';
|
|
3
|
+
import { hasInjectionContext, inject as inject$3, provide as provide$2, defineComponent, reactive, resolveComponent, createBlock, openBlock, withCtx, createVNode, createElementVNode, withModifiers, ref, computed, getCurrentScope, onScopeDispose, shallowRef, toRaw, isRef, isReactive, toRef, watchEffect, unref, onMounted, watch, onUnmounted, h, createElementBlock, renderSlot, createTextVNode, createCommentVNode, Fragment, renderList, mergeProps, getCurrentInstance, resolveDynamicComponent, toDisplayString, nextTick, normalizeClass, Suspense } from 'vue';
|
|
4
|
+
import installPagination, { buildPagination as buildPagination$1 } from '@vuecs/pagination';
|
|
5
|
+
import { REALM_MASTER_NAME, EntityDefaultEventName, buildEntityChannelName, EntityType, IdentityProviderProtocol, IdentityProviderPreset, getIdentityProviderProtocolForPreset, isUserFakeEmail, buildUserFakeEmail } from '@authup/core-kit';
|
|
3
6
|
import { IVuelidate, useTranslationsForNestedValidations, useTranslationsForBaseValidation as useTranslationsForBaseValidation$1, getSeverity, install as install$1 } from '@ilingo/vuelidate';
|
|
4
|
-
import { VCFormGroup, VCFormInput, buildFormSubmit, buildFormInputText, buildFormGroup, buildFormInput, buildFormTextarea, buildFormInputCheckbox, VCFormInputCheckbox } from '@vuecs/form-controls';
|
|
5
7
|
import useVuelidate from '@vuelidate/core';
|
|
6
|
-
import { maxLength, minLength, required, helpers,
|
|
8
|
+
import { maxLength, minLength, required, helpers, numeric, url, maxValue, minValue, email, sameAs } from '@vuelidate/validators';
|
|
7
9
|
import { SlotName, buildList } from '@vuecs/list-controls';
|
|
8
10
|
import { Client, CookieName, ClientAuthenticationHook, ClientAuthenticationHookEventName } from '@authup/core-http-kit';
|
|
9
11
|
import { defineStore, storeToRefs as storeToRefs$1 } from 'pinia';
|
|
10
12
|
import { PermissionMemoryProvider, PermissionChecker, PolicyEngine, TimePolicyInterval, isIntervalForDayOfWeek, isIntervalForDayOfMonth, isIntervalForDayOfYear, BuiltInPolicyType } from '@authup/access';
|
|
11
|
-
import { OAuth2Error, isOpenIDProviderMetadata } from '@authup/specs';
|
|
12
|
-
import { isObject as isObject$
|
|
13
|
-
import { hasOwnProperty, extendObject, isObject as isObject$2, createNanoID } from '@authup/kit';
|
|
13
|
+
import { OAuth2Error, isOpenIDProviderMetadata, deserializeOAuth2Scope } from '@authup/specs';
|
|
14
|
+
import { hasOwnProperty as hasOwnProperty$1, extendObject, isObject as isObject$2, createNanoID, isBCryptHash, base64URLEncode } from '@authup/kit';
|
|
14
15
|
import { SortDirection } from 'rapiq';
|
|
15
16
|
import { ClientManager, buildEventFullName, EventNameSuffix } from '@authup/core-realtime-kit';
|
|
16
|
-
import { buildPagination as buildPagination$1 } from '@vuecs/pagination';
|
|
17
17
|
import Cookie from 'universal-cookie';
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
/*
|
|
20
|
+
* Copyright (c) 2024-2024.
|
|
21
|
+
* Author Peter Placzek (tada5hi)
|
|
22
|
+
* For the full copyright and license information,
|
|
23
|
+
* view the LICENSE file that was distributed with this source code.
|
|
24
|
+
*/ const BRACKET_NUMBER_REGEX = RegExp("(?<!\\\\)\\[(\\d+)]$");
|
|
25
|
+
/**
|
|
26
|
+
* Convert string to property path array.
|
|
27
|
+
*
|
|
28
|
+
* @see https://github.com/lodash/lodash/blob/main/src/.internal/stringToPath.ts
|
|
29
|
+
* @see https://github.com/chaijs/pathval
|
|
30
|
+
*
|
|
31
|
+
* @param segment
|
|
32
|
+
*/ function pathToArray(segment) {
|
|
33
|
+
const str = segment.replace(/([^\\])\[/g, '$1.[');
|
|
34
|
+
const parts = str.match(/(\\\.|[^.]+?)+/g);
|
|
35
|
+
if (!parts) {
|
|
36
|
+
return [];
|
|
37
|
+
}
|
|
38
|
+
const result = [];
|
|
39
|
+
for(let i = 0; i < parts.length; i++){
|
|
40
|
+
if (parts[i] === 'constructor' || parts[i] === '__proto__' || parts[i] === 'prototype') {
|
|
41
|
+
continue;
|
|
42
|
+
}
|
|
43
|
+
const regex = BRACKET_NUMBER_REGEX.exec(parts[i]);
|
|
44
|
+
if (regex) {
|
|
45
|
+
result.push(regex[1]);
|
|
46
|
+
} else {
|
|
47
|
+
result.push(parts[i].replace(/\\([.[\]])/g, '$1'));
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return result;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/*
|
|
54
|
+
* Copyright (c) 2024.
|
|
55
|
+
* Author Peter Placzek (tada5hi)
|
|
56
|
+
* For the full copyright and license information,
|
|
57
|
+
* view the LICENSE file that was distributed with this source code.
|
|
58
|
+
*/ var Character;
|
|
59
|
+
(function(Character) {
|
|
60
|
+
Character["WILDCARD"] = "*";
|
|
61
|
+
Character["GLOBSTAR"] = "**";
|
|
62
|
+
})(Character || (Character = {}));
|
|
63
|
+
|
|
64
|
+
/*
|
|
65
|
+
* Copyright (c) 2024.
|
|
66
|
+
* Author Peter Placzek (tada5hi)
|
|
67
|
+
* For the full copyright and license information,
|
|
68
|
+
* view the LICENSE file that was distributed with this source code.
|
|
69
|
+
*/ function isObject(input) {
|
|
70
|
+
return !!input && typeof input === 'object' && !Array.isArray(input);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
function getPathValue(data, path) {
|
|
74
|
+
const parts = Array.isArray(path) ? path : pathToArray(path);
|
|
75
|
+
let res;
|
|
76
|
+
let temp = data;
|
|
77
|
+
let index = 0;
|
|
78
|
+
while(index < parts.length){
|
|
79
|
+
if (temp === null || typeof temp === 'undefined') {
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
if (parts[index] in Object(temp)) {
|
|
83
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
84
|
+
// @ts-expect-error
|
|
85
|
+
temp = temp[parts[index]];
|
|
86
|
+
} else {
|
|
87
|
+
break;
|
|
88
|
+
}
|
|
89
|
+
if (index === parts.length - 1) {
|
|
90
|
+
res = temp;
|
|
91
|
+
}
|
|
92
|
+
index++;
|
|
93
|
+
}
|
|
94
|
+
return res;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
const NUMBER_REGEX = /^\d+$/;
|
|
98
|
+
function setPathValue(data, path, value) {
|
|
99
|
+
const parts = Array.isArray(path) ? path : pathToArray(path);
|
|
100
|
+
let temp = data;
|
|
101
|
+
let index = 0;
|
|
102
|
+
while(index < parts.length){
|
|
103
|
+
/* istanbul ignore next */ if (!Array.isArray(temp) && !isObject(temp)) {
|
|
104
|
+
break;
|
|
105
|
+
}
|
|
106
|
+
const key = parts[index];
|
|
107
|
+
// [foo, '0']
|
|
108
|
+
if (typeof temp[key] === 'undefined') {
|
|
109
|
+
const match = NUMBER_REGEX.test(key);
|
|
110
|
+
if (match) {
|
|
111
|
+
temp[key] = [];
|
|
112
|
+
} else {
|
|
113
|
+
temp[key] = {};
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
if (index === parts.length - 1) {
|
|
117
|
+
temp[key] = value;
|
|
118
|
+
break;
|
|
119
|
+
}
|
|
120
|
+
index++;
|
|
121
|
+
temp = temp[key];
|
|
122
|
+
}
|
|
123
|
+
return data;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
class Store {
|
|
127
|
+
/**
|
|
128
|
+
* Set options for all groups.
|
|
129
|
+
*
|
|
130
|
+
* @param items
|
|
131
|
+
*/ setAll(items) {
|
|
132
|
+
const keys = Object.keys(items);
|
|
133
|
+
for(let i = 0; i < keys.length; i++){
|
|
134
|
+
this.setOptions(keys[i], items[keys[i]]);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Set options for a specific group.
|
|
139
|
+
*
|
|
140
|
+
* @param group
|
|
141
|
+
* @param options
|
|
142
|
+
*/ setOptions(group, options) {
|
|
143
|
+
if (typeof this.data[group] === 'undefined') {
|
|
144
|
+
this.data[group] = {};
|
|
145
|
+
}
|
|
146
|
+
this.data[group] = options;
|
|
147
|
+
}
|
|
148
|
+
hasOptions(group) {
|
|
149
|
+
return hasOwnProperty(this.data, group);
|
|
150
|
+
}
|
|
151
|
+
getOptions(group) {
|
|
152
|
+
if (typeof this.data[group] !== 'undefined') {
|
|
153
|
+
return this.data[group];
|
|
154
|
+
}
|
|
155
|
+
return {};
|
|
156
|
+
}
|
|
157
|
+
hasOption(group, option) {
|
|
158
|
+
return typeof this.data[group] !== 'undefined' && hasOwnProperty(this.data[group], option);
|
|
159
|
+
}
|
|
160
|
+
getOption(group, option) {
|
|
161
|
+
if (typeof this.data[group] === 'undefined') {
|
|
162
|
+
return undefined;
|
|
163
|
+
}
|
|
164
|
+
return this.data[group][option];
|
|
165
|
+
}
|
|
166
|
+
constructor(){
|
|
167
|
+
this.data = {};
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
class StoreManager {
|
|
172
|
+
keys() {
|
|
173
|
+
return Object.keys(this.instances);
|
|
174
|
+
}
|
|
175
|
+
use(key) {
|
|
176
|
+
if (typeof this.instances[key] !== 'undefined') {
|
|
177
|
+
return this.instances[key];
|
|
178
|
+
}
|
|
179
|
+
this.instances[key] = new Store();
|
|
180
|
+
return this.instances[key];
|
|
181
|
+
}
|
|
182
|
+
constructor(){
|
|
183
|
+
this.instances = {};
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
function inject$2(key, instance) {
|
|
188
|
+
if (instance && instance._context && instance._context.provides && instance._context.provides[key]) {
|
|
189
|
+
return instance._context.provides[key];
|
|
190
|
+
}
|
|
191
|
+
if (hasInjectionContext()) {
|
|
192
|
+
return inject$3(key, undefined);
|
|
193
|
+
}
|
|
194
|
+
return undefined;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
function provide$1(key, value, app) {
|
|
198
|
+
if (typeof app === 'undefined') {
|
|
199
|
+
const val = inject$2(key);
|
|
200
|
+
if (typeof val !== 'undefined') {
|
|
201
|
+
return;
|
|
202
|
+
}
|
|
203
|
+
provide$2(key, value);
|
|
204
|
+
return;
|
|
205
|
+
}
|
|
206
|
+
if (app && app._context && app._context.provides && app._context.provides[key]) {
|
|
207
|
+
return;
|
|
208
|
+
}
|
|
209
|
+
app.provide(key, value);
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
function getSymbol(key) {
|
|
213
|
+
return Symbol.for('VCStoreManager');
|
|
214
|
+
}
|
|
215
|
+
function installStoreManager(instance, key) {
|
|
216
|
+
const symbol = getSymbol();
|
|
217
|
+
let manager = inject$2(symbol, instance);
|
|
218
|
+
if (manager) {
|
|
219
|
+
return manager;
|
|
220
|
+
}
|
|
221
|
+
manager = new StoreManager();
|
|
222
|
+
provide$1(symbol, manager, instance);
|
|
223
|
+
return manager;
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
var _sfc_main$i = defineComponent({
|
|
20
227
|
components: {
|
|
21
228
|
IVuelidate,
|
|
22
229
|
VCFormInput,
|
|
@@ -69,71 +276,52 @@ var _export_sfc = (sfc, props) => {
|
|
|
69
276
|
return target;
|
|
70
277
|
};
|
|
71
278
|
|
|
72
|
-
const _hoisted_1$
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
]))
|
|
101
|
-
}, _cache[2] || (_cache[2] = [
|
|
102
|
-
createElementVNode("i", {
|
|
103
|
-
class: "fa fa-minus"
|
|
104
|
-
}, null, -1)
|
|
105
|
-
]), 8, _hoisted_1$7)
|
|
106
|
-
]),
|
|
107
|
-
_: 1
|
|
108
|
-
}, 8, [
|
|
109
|
-
"modelValue",
|
|
110
|
-
"onChange"
|
|
111
|
-
])
|
|
112
|
-
]),
|
|
113
|
-
_: 2
|
|
114
|
-
}, 1032, [
|
|
115
|
-
"validation-messages",
|
|
116
|
-
"validation-severity"
|
|
117
|
-
])
|
|
279
|
+
const _hoisted_1$d = ["disabled"];
|
|
280
|
+
function _sfc_render$h(_ctx, _cache, $props, $setup, $data, $options) {
|
|
281
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
282
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
283
|
+
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
284
|
+
return openBlock(), createBlock(_component_IVuelidate, {
|
|
285
|
+
validation: _ctx.vuelidate.name
|
|
286
|
+
}, {
|
|
287
|
+
default: withCtx((props) => [
|
|
288
|
+
createVNode(_component_VCFormGroup, {
|
|
289
|
+
"validation-messages": props.data,
|
|
290
|
+
"validation-severity": props.severity
|
|
291
|
+
}, {
|
|
292
|
+
default: withCtx(() => [
|
|
293
|
+
createVNode(_component_VCFormInput, {
|
|
294
|
+
modelValue: _ctx.vuelidate.name.$model,
|
|
295
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => _ctx.vuelidate.name.$model = $event),
|
|
296
|
+
onChange: _ctx.handleUpdated
|
|
297
|
+
}, {
|
|
298
|
+
groupAppend: withCtx(() => [
|
|
299
|
+
createElementVNode("button", {
|
|
300
|
+
disabled: _ctx.disabled,
|
|
301
|
+
type: "button",
|
|
302
|
+
class: "btn btn-xs btn-warning",
|
|
303
|
+
onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.handleDeleted && _ctx.handleDeleted(...args), ["prevent"]))
|
|
304
|
+
}, [..._cache[2] || (_cache[2] = [
|
|
305
|
+
createElementVNode("i", { class: "fa fa-minus" }, null, -1)
|
|
306
|
+
])], 8, _hoisted_1$d)
|
|
118
307
|
]),
|
|
308
|
+
_: 1
|
|
309
|
+
}, 8, ["modelValue", "onChange"])
|
|
310
|
+
]),
|
|
119
311
|
_: 1
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
312
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
313
|
+
]),
|
|
314
|
+
_: 1
|
|
315
|
+
}, 8, ["validation"]);
|
|
123
316
|
}
|
|
124
|
-
var AFormInputListItem = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
125
|
-
[
|
|
126
|
-
"render",
|
|
127
|
-
_sfc_render$b
|
|
128
|
-
]
|
|
129
|
-
]);
|
|
317
|
+
var AFormInputListItem = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["render", _sfc_render$h]]);
|
|
130
318
|
|
|
131
319
|
function inject$1(key, instance) {
|
|
132
320
|
if (instance && instance._context && instance._context.provides && instance._context.provides[key]) {
|
|
133
321
|
return instance._context.provides[key];
|
|
134
322
|
}
|
|
135
323
|
if (hasInjectionContext()) {
|
|
136
|
-
return inject$
|
|
324
|
+
return inject$3(key, undefined);
|
|
137
325
|
}
|
|
138
326
|
return undefined;
|
|
139
327
|
}
|
|
@@ -144,7 +332,7 @@ function provide(key, value, app) {
|
|
|
144
332
|
if (typeof val !== 'undefined') {
|
|
145
333
|
return;
|
|
146
334
|
}
|
|
147
|
-
provide$
|
|
335
|
+
provide$2(key, value);
|
|
148
336
|
return;
|
|
149
337
|
}
|
|
150
338
|
if (app && app._context && app._context.provides && app._context.provides[key]) {
|
|
@@ -202,28 +390,35 @@ function provideHTTPClientAuthenticationHook(refresher, app) {
|
|
|
202
390
|
|
|
203
391
|
// src/event-emitter.ts
|
|
204
392
|
var EventEmitter = class {
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
return this.all.clear();
|
|
216
|
-
}
|
|
217
|
-
const handlers = this.all.get(type);
|
|
218
|
-
if (handlers) {
|
|
219
|
-
if (handler) {
|
|
220
|
-
handlers.splice(handlers.indexOf(handler) >>> 0, 1);
|
|
221
|
-
} else {
|
|
222
|
-
this.all.delete(type);
|
|
223
|
-
}
|
|
224
|
-
}
|
|
393
|
+
/**
|
|
394
|
+
* A Map of event names to registered handler functions.
|
|
395
|
+
*/
|
|
396
|
+
all;
|
|
397
|
+
constructor(all) {
|
|
398
|
+
this.all = all || /* @__PURE__ */ new Map();
|
|
399
|
+
}
|
|
400
|
+
on(type, handler) {
|
|
401
|
+
if (!this.all.has(type)) {
|
|
402
|
+
this.all.set(type, []);
|
|
225
403
|
}
|
|
226
|
-
|
|
404
|
+
const handlers = this.all.get(type);
|
|
405
|
+
handlers.push(handler);
|
|
406
|
+
return () => handlers.splice(handlers.indexOf(handler) >>> 0, 1);
|
|
407
|
+
}
|
|
408
|
+
off(type, handler) {
|
|
409
|
+
if (!type) {
|
|
410
|
+
return this.all.clear();
|
|
411
|
+
}
|
|
412
|
+
const handlers = this.all.get(type);
|
|
413
|
+
if (handlers) {
|
|
414
|
+
if (handler) {
|
|
415
|
+
handlers.splice(handlers.indexOf(handler) >>> 0, 1);
|
|
416
|
+
} else {
|
|
417
|
+
this.all.delete(type);
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
/**
|
|
227
422
|
* Invoke all handlers for the given type.
|
|
228
423
|
* If present, `'*'` handlers are invoked after type-matched handlers.
|
|
229
424
|
*
|
|
@@ -231,21 +426,19 @@ var EventEmitter = class {
|
|
|
231
426
|
*
|
|
232
427
|
* @param type The event type to invoke
|
|
233
428
|
* @param payload Any value to each handler
|
|
234
|
-
*/
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
}
|
|
246
|
-
constructor(all){
|
|
247
|
-
this.all = all || /* @__PURE__ */ new Map();
|
|
429
|
+
*/
|
|
430
|
+
emit(type, ...payload) {
|
|
431
|
+
let handlers = this.all.get(type);
|
|
432
|
+
handlers?.slice().map((handler) => {
|
|
433
|
+
handler(...payload);
|
|
434
|
+
});
|
|
435
|
+
handlers = this.all.get("*");
|
|
436
|
+
if (handlers) {
|
|
437
|
+
handlers.slice().map((handler) => {
|
|
438
|
+
handler(type, payload);
|
|
439
|
+
});
|
|
248
440
|
}
|
|
441
|
+
}
|
|
249
442
|
};
|
|
250
443
|
|
|
251
444
|
function createStoreDispatcher() {
|
|
@@ -530,68 +723,77 @@ function createStore(context) {
|
|
|
530
723
|
};
|
|
531
724
|
}
|
|
532
725
|
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
726
|
+
//#endregion
|
|
727
|
+
//#region tryOnScopeDispose/index.ts
|
|
728
|
+
/**
|
|
729
|
+
* Call onScopeDispose() if it's inside an effect scope lifecycle, if not, do nothing
|
|
730
|
+
*
|
|
731
|
+
* @param fn
|
|
732
|
+
*/
|
|
733
|
+
function tryOnScopeDispose(fn, failSilently) {
|
|
734
|
+
if (getCurrentScope()) {
|
|
735
|
+
onScopeDispose(fn, failSilently);
|
|
736
|
+
return true;
|
|
737
|
+
}
|
|
738
|
+
return false;
|
|
539
739
|
}
|
|
540
740
|
typeof WorkerGlobalScope !== "undefined" && globalThis instanceof WorkerGlobalScope;
|
|
541
741
|
|
|
742
|
+
/**
|
|
743
|
+
* Reactive methods to work with cookies (use {@link createCookies} method instead if you are using SSR)
|
|
744
|
+
* @param dependencies - array of watching cookie's names. Pass empty array if don't want to watch cookies changes.
|
|
745
|
+
* @param options
|
|
746
|
+
* @param options.doNotParse - don't try parse value as JSON
|
|
747
|
+
* @param options.autoUpdateDependencies - automatically update watching dependencies
|
|
748
|
+
* @param cookies - universal-cookie instance
|
|
749
|
+
*
|
|
750
|
+
* @__NO_SIDE_EFFECTS__
|
|
751
|
+
*/
|
|
542
752
|
function useCookies(dependencies, { doNotParse = false, autoUpdateDependencies = false } = {}, cookies = new Cookie()) {
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
},
|
|
583
|
-
set: (...args)=>cookies.set(...args),
|
|
584
|
-
remove: (...args)=>cookies.remove(...args),
|
|
585
|
-
addChangeListener: (...args)=>cookies.addChangeListener(...args),
|
|
586
|
-
removeChangeListener: (...args)=>cookies.removeChangeListener(...args)
|
|
587
|
-
};
|
|
753
|
+
const watchingDependencies = autoUpdateDependencies ? [...[]] : dependencies;
|
|
754
|
+
let previousCookies = cookies.getAll({ doNotParse: true });
|
|
755
|
+
/**
|
|
756
|
+
* Adds reactivity to get/getAll methods
|
|
757
|
+
*/
|
|
758
|
+
const touches = shallowRef(0);
|
|
759
|
+
const onChange = () => {
|
|
760
|
+
const newCookies = cookies.getAll({ doNotParse: true });
|
|
761
|
+
if (shouldUpdate(watchingDependencies || null, newCookies, previousCookies)) touches.value++;
|
|
762
|
+
previousCookies = newCookies;
|
|
763
|
+
};
|
|
764
|
+
cookies.addChangeListener(onChange);
|
|
765
|
+
tryOnScopeDispose(() => {
|
|
766
|
+
cookies.removeChangeListener(onChange);
|
|
767
|
+
});
|
|
768
|
+
return {
|
|
769
|
+
get: (...args) => {
|
|
770
|
+
/**
|
|
771
|
+
* Auto update watching dependencies if needed
|
|
772
|
+
*/
|
|
773
|
+
if (autoUpdateDependencies && watchingDependencies && !watchingDependencies.includes(args[0])) watchingDependencies.push(args[0]);
|
|
774
|
+
touches.value;
|
|
775
|
+
return cookies.get(args[0], {
|
|
776
|
+
doNotParse,
|
|
777
|
+
...args[1]
|
|
778
|
+
});
|
|
779
|
+
},
|
|
780
|
+
getAll: (...args) => {
|
|
781
|
+
touches.value;
|
|
782
|
+
return cookies.getAll({
|
|
783
|
+
doNotParse,
|
|
784
|
+
...args[0]
|
|
785
|
+
});
|
|
786
|
+
},
|
|
787
|
+
set: (...args) => cookies.set(...args),
|
|
788
|
+
remove: (...args) => cookies.remove(...args),
|
|
789
|
+
addChangeListener: (...args) => cookies.addChangeListener(...args),
|
|
790
|
+
removeChangeListener: (...args) => cookies.removeChangeListener(...args)
|
|
791
|
+
};
|
|
588
792
|
}
|
|
589
793
|
function shouldUpdate(dependencies, newCookies, oldCookies) {
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
}
|
|
594
|
-
return false;
|
|
794
|
+
if (!dependencies) return true;
|
|
795
|
+
for (const dependency of dependencies) if (newCookies[dependency] !== oldCookies[dependency]) return true;
|
|
796
|
+
return false;
|
|
595
797
|
}
|
|
596
798
|
|
|
597
799
|
const sym = Symbol.for('AuthupStore');
|
|
@@ -903,6 +1105,8 @@ var TranslatorTranslationClientKey = /*#__PURE__*/ function(TranslatorTranslatio
|
|
|
903
1105
|
TranslatorTranslationClientKey["DESCRIPTION_HINT"] = "descriptionHint";
|
|
904
1106
|
TranslatorTranslationClientKey["REDIRECT_URI_HINT"] = "redirectURIHint";
|
|
905
1107
|
TranslatorTranslationClientKey["IS_CONFIDENTIAL"] = "isConfidential";
|
|
1108
|
+
TranslatorTranslationClientKey["IS_ACTIVE"] = "isActive";
|
|
1109
|
+
TranslatorTranslationClientKey["HASH_SECRET"] = "hashSecret";
|
|
906
1110
|
return TranslatorTranslationClientKey;
|
|
907
1111
|
}({});
|
|
908
1112
|
var TranslatorTranslationDefaultKey = /*#__PURE__*/ function(TranslatorTranslationDefaultKey) {
|
|
@@ -936,113 +1140,10 @@ var TranslatorTranslationDefaultKey = /*#__PURE__*/ function(TranslatorTranslati
|
|
|
936
1140
|
TranslatorTranslationDefaultKey["ROLES"] = "roles";
|
|
937
1141
|
TranslatorTranslationDefaultKey["SCOPES"] = "scopes";
|
|
938
1142
|
TranslatorTranslationDefaultKey["SECRET"] = "secret";
|
|
939
|
-
TranslatorTranslationDefaultKey["REDIRECT_URIS"] = "redirectUris";
|
|
940
|
-
TranslatorTranslationDefaultKey["USERS"] = "users";
|
|
941
|
-
return TranslatorTranslationDefaultKey;
|
|
942
|
-
}({});
|
|
943
|
-
|
|
944
|
-
/*
|
|
945
|
-
* Copyright (c) 2024-2024.
|
|
946
|
-
* Author Peter Placzek (tada5hi)
|
|
947
|
-
* For the full copyright and license information,
|
|
948
|
-
* view the LICENSE file that was distributed with this source code.
|
|
949
|
-
*/ const BRACKET_NUMBER_REGEX = RegExp("(?<!\\\\)\\[(\\d+)]$");
|
|
950
|
-
/**
|
|
951
|
-
* Convert string to property path array.
|
|
952
|
-
*
|
|
953
|
-
* @see https://github.com/lodash/lodash/blob/main/src/.internal/stringToPath.ts
|
|
954
|
-
* @see https://github.com/chaijs/pathval
|
|
955
|
-
*
|
|
956
|
-
* @param segment
|
|
957
|
-
*/ function pathToArray(segment) {
|
|
958
|
-
const str = segment.replace(/([^\\])\[/g, '$1.[');
|
|
959
|
-
const parts = str.match(/(\\\.|[^.]+?)+/g);
|
|
960
|
-
if (!parts) {
|
|
961
|
-
return [];
|
|
962
|
-
}
|
|
963
|
-
const result = [];
|
|
964
|
-
for(let i = 0; i < parts.length; i++){
|
|
965
|
-
if (parts[i] === 'constructor' || parts[i] === '__proto__' || parts[i] === 'prototype') {
|
|
966
|
-
continue;
|
|
967
|
-
}
|
|
968
|
-
const regex = BRACKET_NUMBER_REGEX.exec(parts[i]);
|
|
969
|
-
if (regex) {
|
|
970
|
-
result.push(regex[1]);
|
|
971
|
-
} else {
|
|
972
|
-
result.push(parts[i].replace(/\\([.[\]])/g, '$1'));
|
|
973
|
-
}
|
|
974
|
-
}
|
|
975
|
-
return result;
|
|
976
|
-
}
|
|
977
|
-
/*
|
|
978
|
-
* Copyright (c) 2024.
|
|
979
|
-
* Author Peter Placzek (tada5hi)
|
|
980
|
-
* For the full copyright and license information,
|
|
981
|
-
* view the LICENSE file that was distributed with this source code.
|
|
982
|
-
*/ var Character;
|
|
983
|
-
(function(Character) {
|
|
984
|
-
Character["WILDCARD"] = "*";
|
|
985
|
-
Character["GLOBSTAR"] = "**";
|
|
986
|
-
})(Character || (Character = {}));
|
|
987
|
-
/*
|
|
988
|
-
* Copyright (c) 2024.
|
|
989
|
-
* Author Peter Placzek (tada5hi)
|
|
990
|
-
* For the full copyright and license information,
|
|
991
|
-
* view the LICENSE file that was distributed with this source code.
|
|
992
|
-
*/ function isObject(input) {
|
|
993
|
-
return !!input && typeof input === 'object' && !Array.isArray(input);
|
|
994
|
-
}
|
|
995
|
-
function getPathValue(data, path) {
|
|
996
|
-
const parts = Array.isArray(path) ? path : pathToArray(path);
|
|
997
|
-
let res;
|
|
998
|
-
let temp = data;
|
|
999
|
-
let index = 0;
|
|
1000
|
-
while(index < parts.length){
|
|
1001
|
-
if (temp === null || typeof temp === 'undefined') {
|
|
1002
|
-
break;
|
|
1003
|
-
}
|
|
1004
|
-
if (parts[index] in Object(temp)) {
|
|
1005
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
1006
|
-
// @ts-expect-error
|
|
1007
|
-
temp = temp[parts[index]];
|
|
1008
|
-
} else {
|
|
1009
|
-
break;
|
|
1010
|
-
}
|
|
1011
|
-
if (index === parts.length - 1) {
|
|
1012
|
-
res = temp;
|
|
1013
|
-
}
|
|
1014
|
-
index++;
|
|
1015
|
-
}
|
|
1016
|
-
return res;
|
|
1017
|
-
}
|
|
1018
|
-
const NUMBER_REGEX = /^\d+$/;
|
|
1019
|
-
function setPathValue(data, path, value) {
|
|
1020
|
-
const parts = Array.isArray(path) ? path : pathToArray(path);
|
|
1021
|
-
let temp = data;
|
|
1022
|
-
let index = 0;
|
|
1023
|
-
while(index < parts.length){
|
|
1024
|
-
/* istanbul ignore next */ if (!Array.isArray(temp) && !isObject(temp)) {
|
|
1025
|
-
break;
|
|
1026
|
-
}
|
|
1027
|
-
const key = parts[index];
|
|
1028
|
-
// [foo, '0']
|
|
1029
|
-
if (typeof temp[key] === 'undefined') {
|
|
1030
|
-
const match = NUMBER_REGEX.test(key);
|
|
1031
|
-
if (match) {
|
|
1032
|
-
temp[key] = [];
|
|
1033
|
-
} else {
|
|
1034
|
-
temp[key] = {};
|
|
1035
|
-
}
|
|
1036
|
-
}
|
|
1037
|
-
if (index === parts.length - 1) {
|
|
1038
|
-
temp[key] = value;
|
|
1039
|
-
break;
|
|
1040
|
-
}
|
|
1041
|
-
index++;
|
|
1042
|
-
temp = temp[key];
|
|
1043
|
-
}
|
|
1044
|
-
return data;
|
|
1045
|
-
}
|
|
1143
|
+
TranslatorTranslationDefaultKey["REDIRECT_URIS"] = "redirectUris";
|
|
1144
|
+
TranslatorTranslationDefaultKey["USERS"] = "users";
|
|
1145
|
+
return TranslatorTranslationDefaultKey;
|
|
1146
|
+
}({});
|
|
1046
1147
|
|
|
1047
1148
|
class MemoryStore {
|
|
1048
1149
|
async get(context) {
|
|
@@ -1076,62 +1177,76 @@ class MemoryStore {
|
|
|
1076
1177
|
}
|
|
1077
1178
|
|
|
1078
1179
|
typeof WorkerGlobalScope !== "undefined" && globalThis instanceof WorkerGlobalScope;
|
|
1079
|
-
const noop = ()=>{
|
|
1180
|
+
const noop = () => {
|
|
1181
|
+
};
|
|
1080
1182
|
|
|
1081
1183
|
function computedAsync(evaluationCallback, initialState, optionsOrRef) {
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
}
|
|
1088
|
-
|
|
1089
|
-
}
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
if (counterAtBeginning === counter) current.value = result;
|
|
1112
|
-
} catch (e) {
|
|
1113
|
-
onError(e);
|
|
1114
|
-
} finally{
|
|
1115
|
-
if (evaluating && counterAtBeginning === counter) evaluating.value = false;
|
|
1116
|
-
hasFinished = true;
|
|
1117
|
-
}
|
|
1118
|
-
});
|
|
1119
|
-
if (lazy) {
|
|
1120
|
-
return computed(()=>{
|
|
1121
|
-
started.value = true;
|
|
1122
|
-
return current.value;
|
|
1123
|
-
});
|
|
1124
|
-
} else {
|
|
1125
|
-
return current;
|
|
1184
|
+
var _a;
|
|
1185
|
+
let options;
|
|
1186
|
+
if (isRef(optionsOrRef)) {
|
|
1187
|
+
options = {
|
|
1188
|
+
evaluating: optionsOrRef
|
|
1189
|
+
};
|
|
1190
|
+
} else {
|
|
1191
|
+
options = {};
|
|
1192
|
+
}
|
|
1193
|
+
const {
|
|
1194
|
+
lazy = false,
|
|
1195
|
+
flush = "pre",
|
|
1196
|
+
evaluating = void 0,
|
|
1197
|
+
shallow = true,
|
|
1198
|
+
onError = (_a = globalThis.reportError) != null ? _a : noop
|
|
1199
|
+
} = options;
|
|
1200
|
+
const started = shallowRef(!lazy);
|
|
1201
|
+
const current = shallow ? shallowRef(initialState) : ref(initialState);
|
|
1202
|
+
let counter = 0;
|
|
1203
|
+
watchEffect(async (onInvalidate) => {
|
|
1204
|
+
if (!started.value)
|
|
1205
|
+
return;
|
|
1206
|
+
counter++;
|
|
1207
|
+
const counterAtBeginning = counter;
|
|
1208
|
+
let hasFinished = false;
|
|
1209
|
+
if (evaluating) {
|
|
1210
|
+
Promise.resolve().then(() => {
|
|
1211
|
+
evaluating.value = true;
|
|
1212
|
+
});
|
|
1126
1213
|
}
|
|
1214
|
+
try {
|
|
1215
|
+
const result = await evaluationCallback((cancelCallback) => {
|
|
1216
|
+
onInvalidate(() => {
|
|
1217
|
+
if (evaluating)
|
|
1218
|
+
evaluating.value = false;
|
|
1219
|
+
if (!hasFinished)
|
|
1220
|
+
cancelCallback();
|
|
1221
|
+
});
|
|
1222
|
+
});
|
|
1223
|
+
if (counterAtBeginning === counter)
|
|
1224
|
+
current.value = result;
|
|
1225
|
+
} catch (e) {
|
|
1226
|
+
onError(e);
|
|
1227
|
+
} finally {
|
|
1228
|
+
if (evaluating && counterAtBeginning === counter)
|
|
1229
|
+
evaluating.value = false;
|
|
1230
|
+
hasFinished = true;
|
|
1231
|
+
}
|
|
1232
|
+
}, { flush });
|
|
1233
|
+
if (lazy) {
|
|
1234
|
+
return computed(() => {
|
|
1235
|
+
started.value = true;
|
|
1236
|
+
return current.value;
|
|
1237
|
+
});
|
|
1238
|
+
} else {
|
|
1239
|
+
return current;
|
|
1240
|
+
}
|
|
1127
1241
|
}
|
|
1128
1242
|
|
|
1129
1243
|
function inject(key, instance) {
|
|
1130
1244
|
if (hasInjectionContext()) {
|
|
1131
|
-
return inject$
|
|
1245
|
+
return inject$3(key, undefined);
|
|
1132
1246
|
}
|
|
1133
1247
|
return undefined;
|
|
1134
1248
|
}
|
|
1249
|
+
|
|
1135
1250
|
const IlingoSymbol = Symbol.for('Ilingo');
|
|
1136
1251
|
function injectIlingo(app) {
|
|
1137
1252
|
const instance = inject(IlingoSymbol);
|
|
@@ -1140,6 +1255,7 @@ function injectIlingo(app) {
|
|
|
1140
1255
|
}
|
|
1141
1256
|
return instance;
|
|
1142
1257
|
}
|
|
1258
|
+
|
|
1143
1259
|
const LocaleSymbol = Symbol.for('ILocale');
|
|
1144
1260
|
function injectLocale(app) {
|
|
1145
1261
|
const locale = inject(LocaleSymbol);
|
|
@@ -1148,6 +1264,7 @@ function injectLocale(app) {
|
|
|
1148
1264
|
}
|
|
1149
1265
|
return locale;
|
|
1150
1266
|
}
|
|
1267
|
+
|
|
1151
1268
|
function extractReactiveData(input) {
|
|
1152
1269
|
const output = {};
|
|
1153
1270
|
const keys = Object.keys(input);
|
|
@@ -1156,6 +1273,7 @@ function extractReactiveData(input) {
|
|
|
1156
1273
|
}
|
|
1157
1274
|
return output;
|
|
1158
1275
|
}
|
|
1276
|
+
|
|
1159
1277
|
function useTranslation$1(ctx) {
|
|
1160
1278
|
const instance = injectIlingo();
|
|
1161
1279
|
const locale = injectLocale();
|
|
@@ -1170,6 +1288,7 @@ function useTranslation$1(ctx) {
|
|
|
1170
1288
|
return value || defaultValue;
|
|
1171
1289
|
}, defaultValue);
|
|
1172
1290
|
}
|
|
1291
|
+
|
|
1173
1292
|
defineComponent({
|
|
1174
1293
|
props: {
|
|
1175
1294
|
path: {
|
|
@@ -1233,7 +1352,9 @@ const TranslatorTranslationClientGerman = {
|
|
|
1233
1352
|
[TranslatorTranslationClientKey.NAME_HINT]: 'Etwas, das Benutzer erkennen und vertrauen werden',
|
|
1234
1353
|
[TranslatorTranslationClientKey.DESCRIPTION_HINT]: 'Dies wird allen Benutzern dieser Anwendung angezeigt',
|
|
1235
1354
|
[TranslatorTranslationClientKey.REDIRECT_URI_HINT]: 'URI-Muster, zu dem ein Browser nach einem erfolgreichen Login weiterleiten kann',
|
|
1236
|
-
[TranslatorTranslationClientKey.IS_CONFIDENTIAL]: 'Ist vertraulich?'
|
|
1355
|
+
[TranslatorTranslationClientKey.IS_CONFIDENTIAL]: 'Ist vertraulich?',
|
|
1356
|
+
[TranslatorTranslationClientKey.IS_ACTIVE]: 'Ist aktiv?',
|
|
1357
|
+
[TranslatorTranslationClientKey.HASH_SECRET]: 'Geheimnis hashen?'
|
|
1237
1358
|
};
|
|
1238
1359
|
|
|
1239
1360
|
const TranslatorTranslationDefaultGerman = {
|
|
@@ -1290,7 +1411,7 @@ function extractVuelidateResultsFromChild(vuelidate, child, keys) {
|
|
|
1290
1411
|
const childKeys = keys ?? Object.keys(childResults).filter((key)=>!key.startsWith('$'));
|
|
1291
1412
|
const result = {};
|
|
1292
1413
|
for(let i = 0; i < childKeys.length; i++){
|
|
1293
|
-
if (hasOwnProperty(childResults, childKeys[i])) {
|
|
1414
|
+
if (hasOwnProperty$1(childResults, childKeys[i])) {
|
|
1294
1415
|
result[childKeys[i]] = childResults[childKeys[i]].$model;
|
|
1295
1416
|
}
|
|
1296
1417
|
}
|
|
@@ -1310,7 +1431,9 @@ const TranslatorTranslationClientEnglish = {
|
|
|
1310
1431
|
[TranslatorTranslationClientKey.NAME_HINT]: 'Something users will recognize and trust',
|
|
1311
1432
|
[TranslatorTranslationClientKey.DESCRIPTION_HINT]: 'Displayed to all users of this application',
|
|
1312
1433
|
[TranslatorTranslationClientKey.REDIRECT_URI_HINT]: 'URI pattern a browser can redirect to after a successful login',
|
|
1313
|
-
[TranslatorTranslationClientKey.IS_CONFIDENTIAL]: 'Is confidential?'
|
|
1434
|
+
[TranslatorTranslationClientKey.IS_CONFIDENTIAL]: 'Is confidential?',
|
|
1435
|
+
[TranslatorTranslationClientKey.IS_ACTIVE]: 'Is active?',
|
|
1436
|
+
[TranslatorTranslationClientKey.HASH_SECRET]: 'Hash secret?'
|
|
1314
1437
|
};
|
|
1315
1438
|
|
|
1316
1439
|
const TranslatorTranslationDefaultEnglish = {
|
|
@@ -1458,8 +1581,8 @@ function createPermissionCheckerReactiveFn(ctx = {}) {
|
|
|
1458
1581
|
try {
|
|
1459
1582
|
computePromise = store.permissionChecker.preCheckOneOf({
|
|
1460
1583
|
...ctx,
|
|
1461
|
-
|
|
1462
|
-
...ctx.
|
|
1584
|
+
input: {
|
|
1585
|
+
...ctx.input || {},
|
|
1463
1586
|
identity
|
|
1464
1587
|
}
|
|
1465
1588
|
}).then(()=>true).catch(()=>false);
|
|
@@ -1532,7 +1655,7 @@ function installSocketManager(app, options) {
|
|
|
1532
1655
|
* @param name
|
|
1533
1656
|
* @param $slots
|
|
1534
1657
|
*/ function hasNormalizedSlot(name, $slots = {}) {
|
|
1535
|
-
return hasOwnProperty($slots, name);
|
|
1658
|
+
return hasOwnProperty$1($slots, name);
|
|
1536
1659
|
}
|
|
1537
1660
|
/**
|
|
1538
1661
|
* Returns VNodes for named slot either scoped or unscoped
|
|
@@ -1543,7 +1666,7 @@ function installSocketManager(app, options) {
|
|
|
1543
1666
|
*
|
|
1544
1667
|
* @returns {Array} VNodes
|
|
1545
1668
|
*/ function normalizeSlot(name, scope = {}, $slots = {}) {
|
|
1546
|
-
if (hasOwnProperty($slots, name)) {
|
|
1669
|
+
if (hasOwnProperty$1($slots, name)) {
|
|
1547
1670
|
return $slots[name](scope);
|
|
1548
1671
|
}
|
|
1549
1672
|
return [];
|
|
@@ -1593,7 +1716,7 @@ const ATranslationDefault = defineComponent({
|
|
|
1593
1716
|
}
|
|
1594
1717
|
});
|
|
1595
1718
|
|
|
1596
|
-
var _sfc_main$
|
|
1719
|
+
var _sfc_main$h = defineComponent({
|
|
1597
1720
|
components: {
|
|
1598
1721
|
ATranslationDefault,
|
|
1599
1722
|
AFormInputListItem
|
|
@@ -1672,95 +1795,63 @@ var _sfc_main$a = defineComponent({
|
|
|
1672
1795
|
}
|
|
1673
1796
|
});
|
|
1674
1797
|
|
|
1675
|
-
const _hoisted_1$
|
|
1676
|
-
|
|
1677
|
-
};
|
|
1678
|
-
const
|
|
1679
|
-
|
|
1680
|
-
};
|
|
1681
|
-
|
|
1682
|
-
|
|
1683
|
-
|
|
1684
|
-
|
|
1685
|
-
|
|
1686
|
-
|
|
1687
|
-
|
|
1688
|
-
|
|
1689
|
-
];
|
|
1690
|
-
const _hoisted_6$1 = {
|
|
1691
|
-
class: "d-flex flex-column gap-1"
|
|
1692
|
-
};
|
|
1693
|
-
function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
|
|
1694
|
-
const _component_ATranslationDefault = resolveComponent("ATranslationDefault");
|
|
1695
|
-
const _component_AFormInputListItem = resolveComponent("AFormInputListItem");
|
|
1696
|
-
return openBlock(), createElementBlock("div", _hoisted_1$6, [
|
|
1697
|
-
createElementVNode("div", _hoisted_2$5, [
|
|
1698
|
-
createElementVNode("div", _hoisted_3$5, [
|
|
1699
|
-
renderSlot(_ctx.$slots, "label", {}, ()=>[
|
|
1700
|
-
_cache[1] || (_cache[1] = createTextVNode(" Names "))
|
|
1701
|
-
])
|
|
1702
|
-
]),
|
|
1703
|
-
createElementVNode("div", _hoisted_4$4, [
|
|
1704
|
-
createElementVNode("button", {
|
|
1705
|
-
class: "btn btn-xs btn-primary",
|
|
1706
|
-
type: "button",
|
|
1707
|
-
disabled: !_ctx.canAdd,
|
|
1708
|
-
onClick: _cache[0] || (_cache[0] = withModifiers(($event)=>_ctx.add(), [
|
|
1709
|
-
"prevent"
|
|
1710
|
-
]))
|
|
1711
|
-
}, [
|
|
1712
|
-
_cache[2] || (_cache[2] = createElementVNode("i", {
|
|
1713
|
-
class: "fa fa-plus"
|
|
1714
|
-
}, null, -1)),
|
|
1715
|
-
_cache[3] || (_cache[3] = createTextVNode()),
|
|
1716
|
-
createVNode(_component_ATranslationDefault, {
|
|
1717
|
-
name: "add"
|
|
1718
|
-
})
|
|
1719
|
-
], 8, _hoisted_5$2)
|
|
1720
|
-
])
|
|
1721
|
-
]),
|
|
1722
|
-
createElementVNode("div", _hoisted_6$1, [
|
|
1723
|
-
_ctx.items.length === 0 ? renderSlot(_ctx.$slots, "noItems", {
|
|
1724
|
-
key: 0
|
|
1725
|
-
}, ()=>[
|
|
1726
|
-
_cache[4] || (_cache[4] = createElementVNode("div", {
|
|
1727
|
-
class: "alert alert-sm alert-info"
|
|
1728
|
-
}, " The form list has no items yet ", -1))
|
|
1729
|
-
]) : createCommentVNode("", true),
|
|
1730
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.items, (item)=>{
|
|
1731
|
-
return renderSlot(_ctx.$slots, "default", {
|
|
1732
|
-
key: item.id,
|
|
1733
|
-
item,
|
|
1734
|
-
updated: _ctx.handleUpdated,
|
|
1735
|
-
deleted: _ctx.handleDeleted
|
|
1736
|
-
}, ()=>[
|
|
1737
|
-
(openBlock(), createBlock(_component_AFormInputListItem, {
|
|
1738
|
-
key: item.id,
|
|
1739
|
-
disabled: !_ctx.canDrop,
|
|
1740
|
-
name: item.value,
|
|
1741
|
-
onUpdated: (input)=>{
|
|
1742
|
-
_ctx.handleUpdated(item.id, input);
|
|
1743
|
-
},
|
|
1744
|
-
onDeleted: ()=>{
|
|
1745
|
-
_ctx.handleDeleted(item.id);
|
|
1746
|
-
}
|
|
1747
|
-
}, null, 8, [
|
|
1748
|
-
"disabled",
|
|
1749
|
-
"name",
|
|
1750
|
-
"onUpdated",
|
|
1751
|
-
"onDeleted"
|
|
1752
|
-
]))
|
|
1753
|
-
]);
|
|
1754
|
-
}), 128))
|
|
1798
|
+
const _hoisted_1$c = { class: "d-flex flex-column gap-2" };
|
|
1799
|
+
const _hoisted_2$b = { class: "d-flex flex-row" };
|
|
1800
|
+
const _hoisted_3$9 = { class: "align-self-end" };
|
|
1801
|
+
const _hoisted_4$7 = { class: "ms-auto" };
|
|
1802
|
+
const _hoisted_5$4 = ["disabled"];
|
|
1803
|
+
const _hoisted_6$3 = { class: "d-flex flex-column gap-1" };
|
|
1804
|
+
function _sfc_render$g(_ctx, _cache, $props, $setup, $data, $options) {
|
|
1805
|
+
const _component_ATranslationDefault = resolveComponent("ATranslationDefault");
|
|
1806
|
+
const _component_AFormInputListItem = resolveComponent("AFormInputListItem");
|
|
1807
|
+
return openBlock(), createElementBlock("div", _hoisted_1$c, [
|
|
1808
|
+
createElementVNode("div", _hoisted_2$b, [
|
|
1809
|
+
createElementVNode("div", _hoisted_3$9, [
|
|
1810
|
+
renderSlot(_ctx.$slots, "label", {}, () => [
|
|
1811
|
+
_cache[1] || (_cache[1] = createTextVNode(" Names ", -1))
|
|
1755
1812
|
])
|
|
1756
|
-
|
|
1813
|
+
]),
|
|
1814
|
+
createElementVNode("div", _hoisted_4$7, [
|
|
1815
|
+
createElementVNode("button", {
|
|
1816
|
+
class: "btn btn-xs btn-primary",
|
|
1817
|
+
type: "button",
|
|
1818
|
+
disabled: !_ctx.canAdd,
|
|
1819
|
+
onClick: _cache[0] || (_cache[0] = withModifiers(($event) => _ctx.add(), ["prevent"]))
|
|
1820
|
+
}, [
|
|
1821
|
+
_cache[2] || (_cache[2] = createElementVNode("i", { class: "fa fa-plus" }, null, -1)),
|
|
1822
|
+
_cache[3] || (_cache[3] = createTextVNode()),
|
|
1823
|
+
createVNode(_component_ATranslationDefault, { name: "add" })
|
|
1824
|
+
], 8, _hoisted_5$4)
|
|
1825
|
+
])
|
|
1826
|
+
]),
|
|
1827
|
+
createElementVNode("div", _hoisted_6$3, [
|
|
1828
|
+
_ctx.items.length === 0 ? renderSlot(_ctx.$slots, "noItems", { key: 0 }, () => [
|
|
1829
|
+
_cache[4] || (_cache[4] = createElementVNode("div", { class: "alert alert-sm alert-info" }, " The form list has no items yet ", -1))
|
|
1830
|
+
]) : createCommentVNode("", true),
|
|
1831
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.items, (item) => {
|
|
1832
|
+
return renderSlot(_ctx.$slots, "default", {
|
|
1833
|
+
key: item.id,
|
|
1834
|
+
item,
|
|
1835
|
+
updated: _ctx.handleUpdated,
|
|
1836
|
+
deleted: _ctx.handleDeleted
|
|
1837
|
+
}, () => [
|
|
1838
|
+
(openBlock(), createBlock(_component_AFormInputListItem, {
|
|
1839
|
+
key: item.id,
|
|
1840
|
+
disabled: !_ctx.canDrop,
|
|
1841
|
+
name: item.value,
|
|
1842
|
+
onUpdated: (input) => {
|
|
1843
|
+
_ctx.handleUpdated(item.id, input);
|
|
1844
|
+
},
|
|
1845
|
+
onDeleted: () => {
|
|
1846
|
+
_ctx.handleDeleted(item.id);
|
|
1847
|
+
}
|
|
1848
|
+
}, null, 8, ["disabled", "name", "onUpdated", "onDeleted"]))
|
|
1849
|
+
]);
|
|
1850
|
+
}), 128))
|
|
1851
|
+
])
|
|
1852
|
+
]);
|
|
1757
1853
|
}
|
|
1758
|
-
var AFormInputList = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
1759
|
-
[
|
|
1760
|
-
"render",
|
|
1761
|
-
_sfc_render$a
|
|
1762
|
-
]
|
|
1763
|
-
]);
|
|
1854
|
+
var AFormInputList = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["render", _sfc_render$g]]);
|
|
1764
1855
|
|
|
1765
1856
|
function buildPagination(ctx) {
|
|
1766
1857
|
return buildPagination$1({
|
|
@@ -2110,7 +2201,7 @@ function create$1(context) {
|
|
|
2110
2201
|
});
|
|
2111
2202
|
const client = injectHTTPClient();
|
|
2112
2203
|
let domainAPI;
|
|
2113
|
-
if (hasOwnProperty(client, context.type)) {
|
|
2204
|
+
if (hasOwnProperty$1(client, context.type)) {
|
|
2114
2205
|
domainAPI = client[context.type];
|
|
2115
2206
|
}
|
|
2116
2207
|
let query;
|
|
@@ -2120,7 +2211,7 @@ function create$1(context) {
|
|
|
2120
2211
|
meta.value.busy = true;
|
|
2121
2212
|
try {
|
|
2122
2213
|
let filters;
|
|
2123
|
-
if (context.queryFilters && input.filters && hasOwnProperty(input.filters, 'name') && typeof input.filters.name === 'string') {
|
|
2214
|
+
if (context.queryFilters && input.filters && hasOwnProperty$1(input.filters, 'name') && typeof input.filters.name === 'string') {
|
|
2124
2215
|
// todo: queryFilters should customize full filters object!
|
|
2125
2216
|
filters = context.queryFilters(input.filters.name);
|
|
2126
2217
|
}
|
|
@@ -2342,7 +2433,7 @@ function defineEntityVProps() {
|
|
|
2342
2433
|
function create(ctx) {
|
|
2343
2434
|
const client = injectHTTPClient();
|
|
2344
2435
|
let domainAPI;
|
|
2345
|
-
if (hasOwnProperty(client, ctx.type)) {
|
|
2436
|
+
if (hasOwnProperty$1(client, ctx.type)) {
|
|
2346
2437
|
domainAPI = client[ctx.type];
|
|
2347
2438
|
}
|
|
2348
2439
|
const entity = ref(undefined);
|
|
@@ -2356,7 +2447,7 @@ function create(ctx) {
|
|
|
2356
2447
|
realmId = isRef(ctx.realmId) ? ctx.realmId.value : ctx.realmId;
|
|
2357
2448
|
}
|
|
2358
2449
|
if (!realmId && entity.value) {
|
|
2359
|
-
if (hasOwnProperty(entity.value, 'realm_id') && typeof entity.value.realm_id === 'string') {
|
|
2450
|
+
if (hasOwnProperty$1(entity.value, 'realm_id') && typeof entity.value.realm_id === 'string') {
|
|
2360
2451
|
return entity.value.realm_id;
|
|
2361
2452
|
}
|
|
2362
2453
|
}
|
|
@@ -3444,8 +3535,8 @@ const ARealmForm = defineComponent({
|
|
|
3444
3535
|
|
|
3445
3536
|
const ARealms = defineComponent({
|
|
3446
3537
|
props: defineEntityCollectionVProps(),
|
|
3447
|
-
slots: Object,
|
|
3448
3538
|
emits: defineEntityCollectionVEmitOptions(),
|
|
3539
|
+
slots: Object,
|
|
3449
3540
|
setup (props, ctx) {
|
|
3450
3541
|
const { render } = defineEntityCollectionManager({
|
|
3451
3542
|
type: `${EntityType.REALM}`,
|
|
@@ -3485,7 +3576,13 @@ const ARealmPicker = defineComponent({
|
|
|
3485
3576
|
}
|
|
3486
3577
|
});
|
|
3487
3578
|
|
|
3488
|
-
|
|
3579
|
+
var _sfc_main$g = defineComponent({
|
|
3580
|
+
components: {
|
|
3581
|
+
AFormSubmit,
|
|
3582
|
+
ARealmPicker,
|
|
3583
|
+
AFormInputList,
|
|
3584
|
+
IVuelidate
|
|
3585
|
+
},
|
|
3489
3586
|
props: {
|
|
3490
3587
|
name: {
|
|
3491
3588
|
type: String,
|
|
@@ -3502,8 +3599,8 @@ const AClientForm = defineComponent({
|
|
|
3502
3599
|
},
|
|
3503
3600
|
emits: defineEntityVEmitOptions(),
|
|
3504
3601
|
setup (props, ctx) {
|
|
3505
|
-
const busy = ref(false);
|
|
3506
3602
|
const form = reactive({
|
|
3603
|
+
active: true,
|
|
3507
3604
|
name: '',
|
|
3508
3605
|
display_name: '',
|
|
3509
3606
|
description: '',
|
|
@@ -3511,10 +3608,14 @@ const AClientForm = defineComponent({
|
|
|
3511
3608
|
redirect_uri: '',
|
|
3512
3609
|
base_url: '',
|
|
3513
3610
|
root_url: '',
|
|
3514
|
-
is_confidential:
|
|
3515
|
-
secret: ''
|
|
3611
|
+
is_confidential: true,
|
|
3612
|
+
secret: '',
|
|
3613
|
+
secret_hashed: false
|
|
3516
3614
|
});
|
|
3517
|
-
const
|
|
3615
|
+
const vuelidate = useVuelidate({
|
|
3616
|
+
active: {
|
|
3617
|
+
required
|
|
3618
|
+
},
|
|
3518
3619
|
name: {
|
|
3519
3620
|
required,
|
|
3520
3621
|
[VuelidateCustomRuleKey.ALPHA_UPPER_NUM_HYPHEN_UNDERSCORE_DOT]: VuelidateCustomRule[VuelidateCustomRuleKey.ALPHA_UPPER_NUM_HYPHEN_UNDERSCORE_DOT],
|
|
@@ -3533,14 +3634,15 @@ const AClientForm = defineComponent({
|
|
|
3533
3634
|
required
|
|
3534
3635
|
},
|
|
3535
3636
|
redirect_uri: {
|
|
3536
|
-
url
|
|
3637
|
+
// todo: url is required!
|
|
3537
3638
|
maxLength: maxLength(2000)
|
|
3538
3639
|
},
|
|
3539
3640
|
is_confidential: {},
|
|
3540
3641
|
secret: {
|
|
3541
3642
|
minLength: minLength(3),
|
|
3542
3643
|
maxLength: maxLength(256)
|
|
3543
|
-
}
|
|
3644
|
+
},
|
|
3645
|
+
secret_hashed: {}
|
|
3544
3646
|
}, form);
|
|
3545
3647
|
const store = injectStore();
|
|
3546
3648
|
const storeRefs = storeToRefs(store);
|
|
@@ -3552,27 +3654,33 @@ const AClientForm = defineComponent({
|
|
|
3552
3654
|
const isEditing = useIsEditing(manager.data);
|
|
3553
3655
|
const updatedAt = useUpdatedAt(props.entity);
|
|
3554
3656
|
const isNameFixed = computed(()=>!!props.name && props.name.length > 0);
|
|
3555
|
-
const realmId = computed(()=>
|
|
3556
|
-
|
|
3557
|
-
|
|
3657
|
+
const realmId = computed(()=>manager.data.value ? manager.data.value.realm_id : storeRefs.realmId.value);
|
|
3658
|
+
const generateSecret = ()=>createNanoID('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_!.', 32);
|
|
3659
|
+
const isSecretHashed = computed(()=>{
|
|
3660
|
+
if (!manager.data.value || manager.data.value.secret !== form.secret) {
|
|
3661
|
+
return false;
|
|
3558
3662
|
}
|
|
3559
|
-
return
|
|
3663
|
+
return isBCryptHash(form.secret);
|
|
3560
3664
|
});
|
|
3561
|
-
const generateSecret = ()=>{
|
|
3562
|
-
form.secret = createNanoID('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_!.', 64);
|
|
3563
|
-
};
|
|
3564
3665
|
function initForm() {
|
|
3565
3666
|
if (props.name) {
|
|
3566
3667
|
form.name = props.name;
|
|
3567
3668
|
}
|
|
3568
|
-
if (!manager.data.value && realmId.value) {
|
|
3569
|
-
form.realm_id = realmId.value;
|
|
3570
|
-
}
|
|
3571
3669
|
assignFormProperties(form, manager.data.value);
|
|
3670
|
+
form.realm_id = realmId.value ?? '';
|
|
3572
3671
|
if (form.secret.length === 0) {
|
|
3573
|
-
generateSecret();
|
|
3672
|
+
form.secret = generateSecret();
|
|
3574
3673
|
}
|
|
3575
3674
|
}
|
|
3675
|
+
const isConfidential = computed(()=>form.is_confidential);
|
|
3676
|
+
watch(isConfidential, (val, oldValue)=>{
|
|
3677
|
+
if (val === oldValue) return;
|
|
3678
|
+
if (val) {
|
|
3679
|
+
form.secret = manager.data.value?.secret || generateSecret();
|
|
3680
|
+
} else {
|
|
3681
|
+
form.secret = '';
|
|
3682
|
+
}
|
|
3683
|
+
});
|
|
3576
3684
|
watch(updatedAt, (val, oldVal)=>{
|
|
3577
3685
|
if (val && val !== oldVal) {
|
|
3578
3686
|
manager.data.value = props.entity;
|
|
@@ -3581,13 +3689,12 @@ const AClientForm = defineComponent({
|
|
|
3581
3689
|
});
|
|
3582
3690
|
initForm();
|
|
3583
3691
|
const submit = async ()=>{
|
|
3584
|
-
if (
|
|
3692
|
+
if (vuelidate.value.$invalid) {
|
|
3585
3693
|
return;
|
|
3586
3694
|
}
|
|
3587
3695
|
await manager.createOrUpdate(form);
|
|
3696
|
+
assignFormProperties(form, manager.data.value);
|
|
3588
3697
|
};
|
|
3589
|
-
const translationsValidation = useTranslationsForNestedValidation($v.value);
|
|
3590
|
-
const translationsSubmit = createFormSubmitTranslations();
|
|
3591
3698
|
const translationsClient = useTranslationsForGroup(TranslatorTranslationGroup.CLIENT, [
|
|
3592
3699
|
{
|
|
3593
3700
|
key: TranslatorTranslationClientKey.NAME_HINT
|
|
@@ -3600,6 +3707,12 @@ const AClientForm = defineComponent({
|
|
|
3600
3707
|
},
|
|
3601
3708
|
{
|
|
3602
3709
|
key: TranslatorTranslationClientKey.IS_CONFIDENTIAL
|
|
3710
|
+
},
|
|
3711
|
+
{
|
|
3712
|
+
key: TranslatorTranslationClientKey.IS_ACTIVE
|
|
3713
|
+
},
|
|
3714
|
+
{
|
|
3715
|
+
key: TranslatorTranslationClientKey.HASH_SECRET
|
|
3603
3716
|
}
|
|
3604
3717
|
]);
|
|
3605
3718
|
const translationsDefault = useTranslationsForGroup(TranslatorTranslationGroup.DEFAULT, [
|
|
@@ -3625,202 +3738,305 @@ const AClientForm = defineComponent({
|
|
|
3625
3738
|
key: TranslatorTranslationDefaultKey.SECRET
|
|
3626
3739
|
}
|
|
3627
3740
|
]);
|
|
3628
|
-
const
|
|
3629
|
-
|
|
3630
|
-
|
|
3631
|
-
|
|
3632
|
-
|
|
3633
|
-
|
|
3634
|
-
|
|
3635
|
-
|
|
3636
|
-
|
|
3637
|
-
|
|
3638
|
-
|
|
3639
|
-
|
|
3640
|
-
|
|
3641
|
-
disabled: isNameFixed.value
|
|
3642
|
-
}
|
|
3643
|
-
})
|
|
3644
|
-
}),
|
|
3645
|
-
h('small', translationsClient[TranslatorTranslationClientKey.NAME_HINT].value)
|
|
3646
|
-
];
|
|
3647
|
-
const displayName = buildFormGroup({
|
|
3648
|
-
validationMessages: translationsValidation.display_name.value,
|
|
3649
|
-
validationSeverity: getVuelidateSeverity($v.value.display_name),
|
|
3650
|
-
label: true,
|
|
3651
|
-
labelContent: translationsDefault[TranslatorTranslationDefaultKey.DISPLAY_NAME].value,
|
|
3652
|
-
content: buildFormInput({
|
|
3653
|
-
value: $v.value.display_name.$model,
|
|
3654
|
-
onChange (input) {
|
|
3655
|
-
$v.value.display_name.$model = input;
|
|
3656
|
-
}
|
|
3657
|
-
})
|
|
3658
|
-
});
|
|
3659
|
-
const description = [
|
|
3660
|
-
h('div', [
|
|
3661
|
-
buildFormGroup({
|
|
3662
|
-
validationMessages: translationsValidation.description.value,
|
|
3663
|
-
validationSeverity: getVuelidateSeverity($v.value.description),
|
|
3664
|
-
label: true,
|
|
3665
|
-
labelContent: translationsDefault[TranslatorTranslationDefaultKey.DESCRIPTION].value,
|
|
3666
|
-
content: buildFormTextarea({
|
|
3667
|
-
value: $v.value.description.$model,
|
|
3668
|
-
onChange (input) {
|
|
3669
|
-
$v.value.description.$model = input;
|
|
3670
|
-
},
|
|
3671
|
-
props: {
|
|
3672
|
-
rows: 7
|
|
3673
|
-
}
|
|
3674
|
-
})
|
|
3675
|
-
}),
|
|
3676
|
-
h('small', translationsClient[TranslatorTranslationClientKey.DESCRIPTION_HINT].value)
|
|
3677
|
-
])
|
|
3678
|
-
];
|
|
3679
|
-
const redirectUri = [
|
|
3680
|
-
h(AFormInputList, {
|
|
3681
|
-
names: form.redirect_uri ? form.redirect_uri.split(',') : [],
|
|
3682
|
-
onChanged: (value)=>{
|
|
3683
|
-
if (value.length === 0) {
|
|
3684
|
-
form.redirect_uri = '';
|
|
3685
|
-
return;
|
|
3686
|
-
}
|
|
3687
|
-
form.redirect_uri = value.join(',');
|
|
3688
|
-
}
|
|
3689
|
-
}, {
|
|
3690
|
-
label: ()=>[
|
|
3691
|
-
translationsDefault[TranslatorTranslationDefaultKey.REDIRECT_URIS].value
|
|
3692
|
-
]
|
|
3693
|
-
}),
|
|
3694
|
-
h('small', translationsClient[TranslatorTranslationClientKey.REDIRECT_URI_HINT].value)
|
|
3695
|
-
];
|
|
3696
|
-
const isConfidential = buildFormGroup({
|
|
3697
|
-
validationMessages: translationsValidation.is_confidential.value,
|
|
3698
|
-
validationSeverity: getVuelidateSeverity($v.value.is_confidential),
|
|
3699
|
-
content: buildFormInputCheckbox({
|
|
3700
|
-
groupClass: 'form-switch mt-3',
|
|
3701
|
-
labelContent: translationsClient[TranslatorTranslationClientKey.IS_CONFIDENTIAL].value,
|
|
3702
|
-
value: $v.value.is_confidential.$model,
|
|
3703
|
-
onChange (input) {
|
|
3704
|
-
$v.value.is_confidential.$model = input;
|
|
3705
|
-
}
|
|
3706
|
-
})
|
|
3707
|
-
});
|
|
3708
|
-
let id = [];
|
|
3709
|
-
if (manager.data.value) {
|
|
3710
|
-
id = [
|
|
3711
|
-
buildFormGroup({
|
|
3712
|
-
label: true,
|
|
3713
|
-
labelContent: 'ID',
|
|
3714
|
-
content: buildFormInput({
|
|
3715
|
-
value: manager.data.value.id,
|
|
3716
|
-
props: {
|
|
3717
|
-
disabled: true
|
|
3718
|
-
}
|
|
3719
|
-
})
|
|
3720
|
-
}),
|
|
3721
|
-
h('hr')
|
|
3722
|
-
];
|
|
3723
|
-
}
|
|
3724
|
-
const secret = [
|
|
3725
|
-
buildFormGroup({
|
|
3726
|
-
validationMessages: translationsValidation.secret.value,
|
|
3727
|
-
validationSeverity: getVuelidateSeverity($v.value.secret),
|
|
3728
|
-
label: true,
|
|
3729
|
-
labelContent: translationsDefault[TranslatorTranslationDefaultKey.SECRET].value,
|
|
3730
|
-
content: buildFormInput({
|
|
3731
|
-
value: $v.value.secret.$model,
|
|
3732
|
-
onChange (input) {
|
|
3733
|
-
$v.value.secret.$model = input;
|
|
3734
|
-
}
|
|
3735
|
-
})
|
|
3736
|
-
}),
|
|
3737
|
-
h('div', {
|
|
3738
|
-
class: 'mb-2'
|
|
3739
|
-
}, [
|
|
3740
|
-
h('button', {
|
|
3741
|
-
class: 'btn btn-dark btn-xs',
|
|
3742
|
-
onClick ($event) {
|
|
3743
|
-
$event.preventDefault();
|
|
3744
|
-
generateSecret.call(null);
|
|
3745
|
-
}
|
|
3746
|
-
}, [
|
|
3747
|
-
h('i', {
|
|
3748
|
-
class: 'fa fa-wrench'
|
|
3749
|
-
}),
|
|
3750
|
-
' ',
|
|
3751
|
-
translationsDefault[TranslatorTranslationDefaultKey.GENERATE].value
|
|
3752
|
-
])
|
|
3753
|
-
])
|
|
3754
|
-
];
|
|
3755
|
-
const submitForm = buildFormSubmitWithTranslations({
|
|
3756
|
-
busy: busy.value,
|
|
3757
|
-
submit,
|
|
3758
|
-
isEditing: isEditing.value,
|
|
3759
|
-
invalid: $v.value.$invalid
|
|
3760
|
-
}, translationsSubmit);
|
|
3761
|
-
let realm = [];
|
|
3762
|
-
if (!realmId.value && !isEditing.value) {
|
|
3763
|
-
realm = [
|
|
3764
|
-
h('hr'),
|
|
3765
|
-
buildFormGroup({
|
|
3766
|
-
validationMessages: translationsValidation.realm_id.value,
|
|
3767
|
-
validationSeverity: getVuelidateSeverity($v.value.realm_id),
|
|
3768
|
-
label: true,
|
|
3769
|
-
labelContent: translationsDefault[TranslatorTranslationDefaultKey.REALM].value,
|
|
3770
|
-
content: h(ARealmPicker, {
|
|
3771
|
-
value: $v.value.realm_id.$model,
|
|
3772
|
-
onChange: (input)=>{
|
|
3773
|
-
$v.value.realm_id.$model = input.length > 0 ? input[0] : '';
|
|
3774
|
-
}
|
|
3775
|
-
})
|
|
3776
|
-
})
|
|
3777
|
-
];
|
|
3778
|
-
}
|
|
3779
|
-
const leftColumn = h('div', {
|
|
3780
|
-
class: 'col'
|
|
3781
|
-
}, [
|
|
3782
|
-
id,
|
|
3783
|
-
name,
|
|
3784
|
-
h('hr'),
|
|
3785
|
-
displayName,
|
|
3786
|
-
h('hr'),
|
|
3787
|
-
secret,
|
|
3788
|
-
realm
|
|
3789
|
-
]);
|
|
3790
|
-
const rightColumn = [
|
|
3791
|
-
h('div', {
|
|
3792
|
-
class: 'col'
|
|
3793
|
-
}, [
|
|
3794
|
-
isConfidential,
|
|
3795
|
-
h('hr'),
|
|
3796
|
-
redirectUri,
|
|
3797
|
-
h('hr'),
|
|
3798
|
-
description,
|
|
3799
|
-
submitForm
|
|
3800
|
-
])
|
|
3801
|
-
];
|
|
3802
|
-
return h('form', {
|
|
3803
|
-
onSubmit ($event) {
|
|
3804
|
-
$event.preventDefault();
|
|
3805
|
-
return submit.apply(null);
|
|
3806
|
-
}
|
|
3807
|
-
}, [
|
|
3808
|
-
h('div', {
|
|
3809
|
-
class: 'row'
|
|
3810
|
-
}, [
|
|
3811
|
-
leftColumn,
|
|
3812
|
-
rightColumn
|
|
3813
|
-
])
|
|
3814
|
-
]);
|
|
3741
|
+
const redirectUris = computed(()=>vuelidate.value.redirect_uri.$model ? vuelidate.value.redirect_uri.$model.split(',') : []);
|
|
3742
|
+
return {
|
|
3743
|
+
translationsDefault,
|
|
3744
|
+
translationsClient,
|
|
3745
|
+
vuelidate,
|
|
3746
|
+
data: manager.data,
|
|
3747
|
+
isNameFixed,
|
|
3748
|
+
isBusy: manager.busy.value,
|
|
3749
|
+
isEditing,
|
|
3750
|
+
isSecretHashed,
|
|
3751
|
+
generateSecret,
|
|
3752
|
+
redirectUris,
|
|
3753
|
+
submit
|
|
3815
3754
|
};
|
|
3816
|
-
return ()=>render();
|
|
3817
3755
|
}
|
|
3818
3756
|
});
|
|
3819
3757
|
|
|
3758
|
+
const _hoisted_1$b = { class: "row" };
|
|
3759
|
+
const _hoisted_2$a = { class: "col" };
|
|
3760
|
+
const _hoisted_3$8 = {
|
|
3761
|
+
key: 0,
|
|
3762
|
+
class: "text-danger font-weight-bold"
|
|
3763
|
+
};
|
|
3764
|
+
const _hoisted_4$6 = { class: "row" };
|
|
3765
|
+
const _hoisted_5$3 = { class: "col" };
|
|
3766
|
+
const _hoisted_6$2 = { class: "col" };
|
|
3767
|
+
const _hoisted_7$1 = { class: "col" };
|
|
3768
|
+
const _hoisted_8$1 = { class: "col" };
|
|
3769
|
+
function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
|
|
3770
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
3771
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
3772
|
+
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
3773
|
+
const _component_VCFormInputCheckbox = resolveComponent("VCFormInputCheckbox");
|
|
3774
|
+
const _component_ARealmPicker = resolveComponent("ARealmPicker");
|
|
3775
|
+
const _component_AFormInputList = resolveComponent("AFormInputList");
|
|
3776
|
+
const _component_VCFormTextarea = resolveComponent("VCFormTextarea");
|
|
3777
|
+
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
3778
|
+
return openBlock(), createElementBlock("div", _hoisted_1$b, [
|
|
3779
|
+
createElementVNode("div", _hoisted_2$a, [
|
|
3780
|
+
_ctx.data ? (openBlock(), createBlock(_component_VCFormGroup, { key: 0 }, {
|
|
3781
|
+
label: withCtx(() => [..._cache[10] || (_cache[10] = [
|
|
3782
|
+
createTextVNode(" ID ", -1)
|
|
3783
|
+
])]),
|
|
3784
|
+
default: withCtx(() => [
|
|
3785
|
+
createVNode(_component_VCFormInput, {
|
|
3786
|
+
"model-value": _ctx.data.id,
|
|
3787
|
+
disabled: true
|
|
3788
|
+
}, null, 8, ["model-value"])
|
|
3789
|
+
]),
|
|
3790
|
+
_: 1
|
|
3791
|
+
})) : createCommentVNode("", true),
|
|
3792
|
+
createVNode(_component_IVuelidate, {
|
|
3793
|
+
validation: _ctx.vuelidate.name
|
|
3794
|
+
}, {
|
|
3795
|
+
default: withCtx((props) => [
|
|
3796
|
+
createVNode(_component_VCFormGroup, {
|
|
3797
|
+
"validation-messages": props.data,
|
|
3798
|
+
"validation-severity": props.severity
|
|
3799
|
+
}, {
|
|
3800
|
+
label: withCtx(() => [
|
|
3801
|
+
createTextVNode(toDisplayString(_ctx.translationsDefault.name), 1)
|
|
3802
|
+
]),
|
|
3803
|
+
default: withCtx(() => [
|
|
3804
|
+
createVNode(_component_VCFormInput, {
|
|
3805
|
+
modelValue: _ctx.vuelidate.name.$model,
|
|
3806
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.vuelidate.name.$model = $event),
|
|
3807
|
+
disabled: _ctx.isNameFixed
|
|
3808
|
+
}, null, 8, ["modelValue", "disabled"])
|
|
3809
|
+
]),
|
|
3810
|
+
_: 1
|
|
3811
|
+
}, 8, ["validation-messages", "validation-severity"]),
|
|
3812
|
+
createElementVNode("small", null, toDisplayString(_ctx.translationsClient.nameHint), 1)
|
|
3813
|
+
]),
|
|
3814
|
+
_: 1
|
|
3815
|
+
}, 8, ["validation"]),
|
|
3816
|
+
_cache[14] || (_cache[14] = createElementVNode("hr", null, null, -1)),
|
|
3817
|
+
createVNode(_component_IVuelidate, {
|
|
3818
|
+
validation: _ctx.vuelidate.display_name
|
|
3819
|
+
}, {
|
|
3820
|
+
default: withCtx((props) => [
|
|
3821
|
+
createVNode(_component_VCFormGroup, {
|
|
3822
|
+
"validation-messages": props.data,
|
|
3823
|
+
"validation-severity": props.severity
|
|
3824
|
+
}, {
|
|
3825
|
+
label: withCtx(() => [
|
|
3826
|
+
createTextVNode(toDisplayString(_ctx.translationsDefault.displayName), 1)
|
|
3827
|
+
]),
|
|
3828
|
+
default: withCtx(() => [
|
|
3829
|
+
createVNode(_component_VCFormInput, {
|
|
3830
|
+
modelValue: _ctx.vuelidate.display_name.$model,
|
|
3831
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => _ctx.vuelidate.display_name.$model = $event),
|
|
3832
|
+
disabled: _ctx.isNameFixed
|
|
3833
|
+
}, null, 8, ["modelValue", "disabled"])
|
|
3834
|
+
]),
|
|
3835
|
+
_: 1
|
|
3836
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
3837
|
+
]),
|
|
3838
|
+
_: 1
|
|
3839
|
+
}, 8, ["validation"]),
|
|
3840
|
+
_cache[15] || (_cache[15] = createElementVNode("hr", null, null, -1)),
|
|
3841
|
+
createVNode(_component_IVuelidate, {
|
|
3842
|
+
validation: _ctx.vuelidate.secret
|
|
3843
|
+
}, {
|
|
3844
|
+
default: withCtx((props) => [
|
|
3845
|
+
createVNode(_component_VCFormGroup, {
|
|
3846
|
+
"validation-messages": props.data,
|
|
3847
|
+
"validation-severity": props.severity
|
|
3848
|
+
}, {
|
|
3849
|
+
label: withCtx(() => [
|
|
3850
|
+
createTextVNode(toDisplayString(_ctx.translationsDefault.secret) + " ", 1),
|
|
3851
|
+
_ctx.isSecretHashed ? (openBlock(), createElementBlock("span", _hoisted_3$8, [..._cache[11] || (_cache[11] = [
|
|
3852
|
+
createElementVNode("i", { class: "fa fa-exclamation-triangle" }, null, -1)
|
|
3853
|
+
])])) : createCommentVNode("", true)
|
|
3854
|
+
]),
|
|
3855
|
+
default: withCtx(() => [
|
|
3856
|
+
createVNode(_component_VCFormInput, {
|
|
3857
|
+
modelValue: _ctx.vuelidate.secret.$model,
|
|
3858
|
+
"onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => _ctx.vuelidate.secret.$model = $event),
|
|
3859
|
+
disabled: !_ctx.vuelidate.is_confidential.$model
|
|
3860
|
+
}, {
|
|
3861
|
+
groupAppend: withCtx(() => [
|
|
3862
|
+
createElementVNode("button", {
|
|
3863
|
+
class: "btn",
|
|
3864
|
+
type: "button",
|
|
3865
|
+
onClick: _cache[2] || (_cache[2] = withModifiers(() => _ctx.vuelidate.secret.$model = _ctx.generateSecret(), ["prevent"]))
|
|
3866
|
+
}, [..._cache[12] || (_cache[12] = [
|
|
3867
|
+
createElementVNode("i", { class: "fa fa-refresh" }, null, -1)
|
|
3868
|
+
])])
|
|
3869
|
+
]),
|
|
3870
|
+
_: 1
|
|
3871
|
+
}, 8, ["modelValue", "disabled"])
|
|
3872
|
+
]),
|
|
3873
|
+
_: 1
|
|
3874
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
3875
|
+
]),
|
|
3876
|
+
_: 1
|
|
3877
|
+
}, 8, ["validation"]),
|
|
3878
|
+
createElementVNode("div", _hoisted_4$6, [
|
|
3879
|
+
createElementVNode("div", _hoisted_5$3, [
|
|
3880
|
+
createVNode(_component_IVuelidate, {
|
|
3881
|
+
validation: _ctx.vuelidate.is_confidential
|
|
3882
|
+
}, {
|
|
3883
|
+
default: withCtx((props) => [
|
|
3884
|
+
createVNode(_component_VCFormGroup, {
|
|
3885
|
+
"validation-messages": props.data,
|
|
3886
|
+
"validation-severity": props.severity
|
|
3887
|
+
}, {
|
|
3888
|
+
default: withCtx(() => [
|
|
3889
|
+
createVNode(_component_VCFormInputCheckbox, {
|
|
3890
|
+
modelValue: _ctx.vuelidate.is_confidential.$model,
|
|
3891
|
+
"onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => _ctx.vuelidate.is_confidential.$model = $event),
|
|
3892
|
+
"group-class": "form-switch",
|
|
3893
|
+
label: true,
|
|
3894
|
+
"label-content": _ctx.translationsClient.isConfidential.value
|
|
3895
|
+
}, null, 8, ["modelValue", "label-content"])
|
|
3896
|
+
]),
|
|
3897
|
+
_: 1
|
|
3898
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
3899
|
+
]),
|
|
3900
|
+
_: 1
|
|
3901
|
+
}, 8, ["validation"])
|
|
3902
|
+
]),
|
|
3903
|
+
createElementVNode("div", _hoisted_6$2, [
|
|
3904
|
+
createVNode(_component_IVuelidate, {
|
|
3905
|
+
validation: _ctx.vuelidate.secret_hashed
|
|
3906
|
+
}, {
|
|
3907
|
+
default: withCtx((props) => [
|
|
3908
|
+
createVNode(_component_VCFormGroup, {
|
|
3909
|
+
"validation-messages": props.data,
|
|
3910
|
+
"validation-severity": props.severity
|
|
3911
|
+
}, {
|
|
3912
|
+
default: withCtx(() => [
|
|
3913
|
+
createVNode(_component_VCFormInputCheckbox, {
|
|
3914
|
+
modelValue: _ctx.vuelidate.secret_hashed.$model,
|
|
3915
|
+
"onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => _ctx.vuelidate.secret_hashed.$model = $event),
|
|
3916
|
+
"group-class": "form-switch",
|
|
3917
|
+
label: true,
|
|
3918
|
+
"label-content": _ctx.translationsClient.hashSecret.value
|
|
3919
|
+
}, null, 8, ["modelValue", "label-content"])
|
|
3920
|
+
]),
|
|
3921
|
+
_: 1
|
|
3922
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
3923
|
+
]),
|
|
3924
|
+
_: 1
|
|
3925
|
+
}, 8, ["validation"])
|
|
3926
|
+
]),
|
|
3927
|
+
createElementVNode("div", _hoisted_7$1, [
|
|
3928
|
+
createVNode(_component_IVuelidate, {
|
|
3929
|
+
validation: _ctx.vuelidate.active
|
|
3930
|
+
}, {
|
|
3931
|
+
default: withCtx((props) => [
|
|
3932
|
+
createVNode(_component_VCFormGroup, {
|
|
3933
|
+
"validation-messages": props.data,
|
|
3934
|
+
"validation-severity": props.severity
|
|
3935
|
+
}, {
|
|
3936
|
+
default: withCtx(() => [
|
|
3937
|
+
createVNode(_component_VCFormInputCheckbox, {
|
|
3938
|
+
modelValue: _ctx.vuelidate.active.$model,
|
|
3939
|
+
"onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => _ctx.vuelidate.active.$model = $event),
|
|
3940
|
+
"group-class": "form-switch",
|
|
3941
|
+
label: true,
|
|
3942
|
+
"label-content": _ctx.translationsClient.isActive.value
|
|
3943
|
+
}, null, 8, ["modelValue", "label-content"])
|
|
3944
|
+
]),
|
|
3945
|
+
_: 1
|
|
3946
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
3947
|
+
]),
|
|
3948
|
+
_: 1
|
|
3949
|
+
}, 8, ["validation"])
|
|
3950
|
+
])
|
|
3951
|
+
]),
|
|
3952
|
+
!_ctx.realmId && !_ctx.isEditing ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
3953
|
+
_cache[13] || (_cache[13] = createElementVNode("hr", null, null, -1)),
|
|
3954
|
+
createVNode(_component_IVuelidate, {
|
|
3955
|
+
validation: _ctx.vuelidate.realm_id
|
|
3956
|
+
}, {
|
|
3957
|
+
default: withCtx((props) => [
|
|
3958
|
+
createVNode(_component_VCFormGroup, {
|
|
3959
|
+
"validation-messages": props.data,
|
|
3960
|
+
"validation-severity": props.severity
|
|
3961
|
+
}, {
|
|
3962
|
+
label: withCtx(() => [
|
|
3963
|
+
createTextVNode(toDisplayString(_ctx.translationsDefault.realm), 1)
|
|
3964
|
+
]),
|
|
3965
|
+
default: withCtx(() => [
|
|
3966
|
+
createVNode(_component_ARealmPicker, {
|
|
3967
|
+
value: _ctx.vuelidate.realm_id.$model,
|
|
3968
|
+
onChange: _cache[7] || (_cache[7] = (input) => {
|
|
3969
|
+
_ctx.vuelidate.realm_id.$model = input.length > 0 ? input[0] : "";
|
|
3970
|
+
})
|
|
3971
|
+
}, null, 8, ["value"])
|
|
3972
|
+
]),
|
|
3973
|
+
_: 1
|
|
3974
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
3975
|
+
]),
|
|
3976
|
+
_: 1
|
|
3977
|
+
}, 8, ["validation"])
|
|
3978
|
+
], 64)) : createCommentVNode("", true)
|
|
3979
|
+
]),
|
|
3980
|
+
createElementVNode("div", _hoisted_8$1, [
|
|
3981
|
+
createVNode(_component_AFormInputList, {
|
|
3982
|
+
names: _ctx.redirectUris,
|
|
3983
|
+
onChanged: _cache[8] || (_cache[8] = (value) => {
|
|
3984
|
+
if (value.length === 0) {
|
|
3985
|
+
_ctx.vuelidate.redirect_uri.$model = "";
|
|
3986
|
+
return;
|
|
3987
|
+
}
|
|
3988
|
+
_ctx.vuelidate.redirect_uri.$model = value.join(",");
|
|
3989
|
+
})
|
|
3990
|
+
}, {
|
|
3991
|
+
label: withCtx(() => [
|
|
3992
|
+
createTextVNode(toDisplayString(_ctx.translationsDefault.redirectUris), 1)
|
|
3993
|
+
]),
|
|
3994
|
+
_: 1
|
|
3995
|
+
}, 8, ["names"]),
|
|
3996
|
+
createElementVNode("small", null, toDisplayString(_ctx.translationsClient.redirectURIHint), 1),
|
|
3997
|
+
_cache[16] || (_cache[16] = createElementVNode("hr", null, null, -1)),
|
|
3998
|
+
createVNode(_component_IVuelidate, {
|
|
3999
|
+
validation: _ctx.vuelidate.description
|
|
4000
|
+
}, {
|
|
4001
|
+
default: withCtx((props) => [
|
|
4002
|
+
createVNode(_component_VCFormGroup, {
|
|
4003
|
+
"validation-messages": props.data,
|
|
4004
|
+
"validation-severity": props.severity
|
|
4005
|
+
}, {
|
|
4006
|
+
label: withCtx(() => [
|
|
4007
|
+
createTextVNode(toDisplayString(_ctx.translationsDefault.description), 1)
|
|
4008
|
+
]),
|
|
4009
|
+
default: withCtx(() => [
|
|
4010
|
+
createVNode(_component_VCFormTextarea, {
|
|
4011
|
+
modelValue: _ctx.vuelidate.description.$model,
|
|
4012
|
+
"onUpdate:modelValue": _cache[9] || (_cache[9] = ($event) => _ctx.vuelidate.description.$model = $event),
|
|
4013
|
+
rows: "7"
|
|
4014
|
+
}, null, 8, ["modelValue"])
|
|
4015
|
+
]),
|
|
4016
|
+
_: 1
|
|
4017
|
+
}, 8, ["validation-messages", "validation-severity"]),
|
|
4018
|
+
createElementVNode("small", null, toDisplayString(_ctx.translationsClient.descriptionHint), 1)
|
|
4019
|
+
]),
|
|
4020
|
+
_: 1
|
|
4021
|
+
}, 8, ["validation"]),
|
|
4022
|
+
_cache[17] || (_cache[17] = createElementVNode("hr", null, null, -1)),
|
|
4023
|
+
createElementVNode("div", null, [
|
|
4024
|
+
createVNode(_component_AFormSubmit, {
|
|
4025
|
+
"is-busy": _ctx.isBusy,
|
|
4026
|
+
"is-editing": _ctx.isEditing,
|
|
4027
|
+
"is-invalid": _ctx.vuelidate.$invalid,
|
|
4028
|
+
onSubmit: _ctx.submit
|
|
4029
|
+
}, null, 8, ["is-busy", "is-editing", "is-invalid", "onSubmit"])
|
|
4030
|
+
])
|
|
4031
|
+
])
|
|
4032
|
+
]);
|
|
4033
|
+
}
|
|
4034
|
+
var AClientForm = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["render", _sfc_render$f]]);
|
|
4035
|
+
|
|
3820
4036
|
const AClients = defineComponent({
|
|
3821
4037
|
props: defineEntityCollectionVProps(),
|
|
3822
|
-
slots: Object,
|
|
3823
4038
|
emits: defineEntityCollectionVEmitOptions(),
|
|
4039
|
+
slots: Object,
|
|
3824
4040
|
setup (props, ctx) {
|
|
3825
4041
|
const { render } = defineEntityCollectionManager({
|
|
3826
4042
|
type: `${EntityType.CLIENT}`,
|
|
@@ -3928,7 +4144,7 @@ const APermissionCheck = defineComponent({
|
|
|
3928
4144
|
],
|
|
3929
4145
|
required: true
|
|
3930
4146
|
},
|
|
3931
|
-
|
|
4147
|
+
input: {
|
|
3932
4148
|
type: Object
|
|
3933
4149
|
},
|
|
3934
4150
|
options: {
|
|
@@ -3939,7 +4155,7 @@ const APermissionCheck = defineComponent({
|
|
|
3939
4155
|
const fn = createPermissionCheckerReactiveFn();
|
|
3940
4156
|
const isPermitted = computed(()=>fn({
|
|
3941
4157
|
name: props.name,
|
|
3942
|
-
|
|
4158
|
+
input: props.input,
|
|
3943
4159
|
options: props.options
|
|
3944
4160
|
}));
|
|
3945
4161
|
return ()=>{
|
|
@@ -3953,8 +4169,8 @@ const APermissionCheck = defineComponent({
|
|
|
3953
4169
|
|
|
3954
4170
|
const APolicies = defineComponent({
|
|
3955
4171
|
props: defineEntityCollectionVProps(),
|
|
3956
|
-
slots: Object,
|
|
3957
4172
|
emits: defineEntityCollectionVEmitOptions(),
|
|
4173
|
+
slots: Object,
|
|
3958
4174
|
setup (props, setup) {
|
|
3959
4175
|
const { render } = defineEntityCollectionManager({
|
|
3960
4176
|
type: `${EntityType.POLICY}`,
|
|
@@ -4044,8 +4260,8 @@ const APolicyPicker = defineComponent({
|
|
|
4044
4260
|
},
|
|
4045
4261
|
...defineEntityPickerVProps()
|
|
4046
4262
|
},
|
|
4047
|
-
slots: Object,
|
|
4048
4263
|
emits: defineEntityPickerVEmitOptions(),
|
|
4264
|
+
slots: Object,
|
|
4049
4265
|
setup (props, { slots, ...setup }) {
|
|
4050
4266
|
const { render } = defineEntityPicker({
|
|
4051
4267
|
component: APolicies,
|
|
@@ -4261,8 +4477,8 @@ const APermissionForm = defineComponent({
|
|
|
4261
4477
|
|
|
4262
4478
|
const APermissions = defineComponent({
|
|
4263
4479
|
props: defineEntityCollectionVProps(),
|
|
4264
|
-
slots: Object,
|
|
4265
4480
|
emits: defineEntityCollectionVEmitOptions(),
|
|
4481
|
+
slots: Object,
|
|
4266
4482
|
setup (props, setup) {
|
|
4267
4483
|
const { render } = defineEntityCollectionManager({
|
|
4268
4484
|
type: `${EntityType.PERMISSION}`,
|
|
@@ -4461,8 +4677,8 @@ const ARoleForm = defineComponent({
|
|
|
4461
4677
|
|
|
4462
4678
|
const ARoles = defineComponent({
|
|
4463
4679
|
props: defineEntityCollectionVProps(),
|
|
4464
|
-
slots: Object,
|
|
4465
4680
|
emits: defineEntityCollectionVEmitOptions(),
|
|
4681
|
+
slots: Object,
|
|
4466
4682
|
setup (props, ctx) {
|
|
4467
4683
|
const { render } = defineEntityCollectionManager({
|
|
4468
4684
|
type: `${EntityType.ROLE}`,
|
|
@@ -4584,8 +4800,8 @@ const AClientScope = defineComponent({
|
|
|
4584
4800
|
|
|
4585
4801
|
const AClientScopes = defineComponent({
|
|
4586
4802
|
props: defineEntityCollectionVProps(),
|
|
4587
|
-
slots: Object,
|
|
4588
4803
|
emits: defineEntityCollectionVEmitOptions(),
|
|
4804
|
+
slots: Object,
|
|
4589
4805
|
setup (props, ctx) {
|
|
4590
4806
|
const { render } = defineEntityCollectionManager({
|
|
4591
4807
|
type: `${EntityType.CLIENT_SCOPE}`,
|
|
@@ -4780,8 +4996,8 @@ const AScopeForm = defineComponent({
|
|
|
4780
4996
|
|
|
4781
4997
|
const AScopes = defineComponent({
|
|
4782
4998
|
props: defineEntityCollectionVProps(),
|
|
4783
|
-
slots: Object,
|
|
4784
4999
|
emits: defineEntityCollectionVEmitOptions(),
|
|
5000
|
+
slots: Object,
|
|
4785
5001
|
setup (props, ctx) {
|
|
4786
5002
|
const { render } = defineEntityCollectionManager({
|
|
4787
5003
|
type: EntityType.SCOPE,
|
|
@@ -5701,7 +5917,7 @@ const AIdentityProviderPreset = defineComponent({
|
|
|
5701
5917
|
}
|
|
5702
5918
|
});
|
|
5703
5919
|
|
|
5704
|
-
var _sfc_main$
|
|
5920
|
+
var _sfc_main$f = defineComponent({
|
|
5705
5921
|
components: {
|
|
5706
5922
|
AIdentityProviderPreset,
|
|
5707
5923
|
AIdentityProviderProtocol
|
|
@@ -5735,113 +5951,70 @@ var _sfc_main$9 = defineComponent({
|
|
|
5735
5951
|
}
|
|
5736
5952
|
});
|
|
5737
5953
|
|
|
5738
|
-
const _hoisted_1$
|
|
5739
|
-
|
|
5740
|
-
|
|
5741
|
-
const
|
|
5742
|
-
|
|
5743
|
-
|
|
5744
|
-
const
|
|
5745
|
-
|
|
5746
|
-
|
|
5747
|
-
|
|
5748
|
-
|
|
5749
|
-
|
|
5750
|
-
|
|
5751
|
-
|
|
5752
|
-
|
|
5753
|
-
|
|
5754
|
-
|
|
5755
|
-
|
|
5756
|
-
|
|
5757
|
-
|
|
5758
|
-
|
|
5759
|
-
|
|
5760
|
-
(
|
|
5761
|
-
|
|
5762
|
-
|
|
5763
|
-
|
|
5764
|
-
|
|
5765
|
-
|
|
5766
|
-
|
|
5767
|
-
|
|
5768
|
-
|
|
5769
|
-
|
|
5770
|
-
|
|
5771
|
-
|
|
5772
|
-
|
|
5773
|
-
|
|
5774
|
-
|
|
5775
|
-
|
|
5776
|
-
|
|
5777
|
-
|
|
5778
|
-
|
|
5779
|
-
|
|
5780
|
-
|
|
5781
|
-
|
|
5782
|
-
|
|
5783
|
-
|
|
5784
|
-
|
|
5785
|
-
|
|
5786
|
-
|
|
5787
|
-
|
|
5788
|
-
|
|
5789
|
-
|
|
5790
|
-
|
|
5791
|
-
|
|
5792
|
-
|
|
5793
|
-
])
|
|
5794
|
-
|
|
5795
|
-
|
|
5796
|
-
|
|
5797
|
-
|
|
5798
|
-
|
|
5799
|
-
|
|
5800
|
-
key,
|
|
5801
|
-
id: item
|
|
5802
|
-
}, {
|
|
5803
|
-
default: withCtx((props)=>[
|
|
5804
|
-
createElementVNode("div", {
|
|
5805
|
-
class: normalizeClass([
|
|
5806
|
-
{
|
|
5807
|
-
"active": item === _ctx.preset
|
|
5808
|
-
},
|
|
5809
|
-
"d-flex flex-column gap-1 text-center identity-provider-picker-item"
|
|
5810
|
-
]),
|
|
5811
|
-
onClick: withModifiers(($event)=>_ctx.pickPreset(item), [
|
|
5812
|
-
"prevent"
|
|
5813
|
-
])
|
|
5814
|
-
}, [
|
|
5815
|
-
createElementVNode("div", null, [
|
|
5816
|
-
createElementVNode("i", {
|
|
5817
|
-
class: normalizeClass([
|
|
5818
|
-
"fa-2x",
|
|
5819
|
-
props.icon
|
|
5820
|
-
])
|
|
5821
|
-
}, null, 2)
|
|
5822
|
-
]),
|
|
5823
|
-
createElementVNode("div", null, toDisplayString(props.name), 1)
|
|
5824
|
-
], 10, _hoisted_5$1)
|
|
5825
|
-
]),
|
|
5826
|
-
_: 2
|
|
5827
|
-
}, 1032, [
|
|
5828
|
-
"id"
|
|
5829
|
-
]);
|
|
5830
|
-
}), 128))
|
|
5831
|
-
])
|
|
5832
|
-
])
|
|
5833
|
-
]);
|
|
5954
|
+
const _hoisted_1$a = { class: "d-flex flex-column gap-2" };
|
|
5955
|
+
const _hoisted_2$9 = { class: "d-flex flex-row gap-2 flex-wrap" };
|
|
5956
|
+
const _hoisted_3$7 = ["onClick"];
|
|
5957
|
+
const _hoisted_4$5 = { class: "d-flex flex-row gap-2 flex-wrap" };
|
|
5958
|
+
const _hoisted_5$2 = ["onClick"];
|
|
5959
|
+
function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5960
|
+
const _component_AIdentityProviderProtocol = resolveComponent("AIdentityProviderProtocol");
|
|
5961
|
+
const _component_AIdentityProviderPreset = resolveComponent("AIdentityProviderPreset");
|
|
5962
|
+
return openBlock(), createElementBlock("div", _hoisted_1$a, [
|
|
5963
|
+
createElementVNode("div", null, [
|
|
5964
|
+
_cache[0] || (_cache[0] = createElementVNode("h6", null, "Protocols", -1)),
|
|
5965
|
+
createElementVNode("div", _hoisted_2$9, [
|
|
5966
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.protocols, (item, key) => {
|
|
5967
|
+
return openBlock(), createBlock(_component_AIdentityProviderProtocol, {
|
|
5968
|
+
key,
|
|
5969
|
+
id: item
|
|
5970
|
+
}, {
|
|
5971
|
+
default: withCtx((props) => [
|
|
5972
|
+
createElementVNode("div", {
|
|
5973
|
+
class: normalizeClass([{ "active": item === _ctx.protocol && !_ctx.preset }, "d-flex flex-column gap-1 text-center identity-provider-picker-item"]),
|
|
5974
|
+
onClick: withModifiers(($event) => _ctx.pickProtocol(item), ["prevent"])
|
|
5975
|
+
}, [
|
|
5976
|
+
createElementVNode("div", null, [
|
|
5977
|
+
createElementVNode("i", {
|
|
5978
|
+
class: normalizeClass(["fa-2x", props.icon])
|
|
5979
|
+
}, null, 2)
|
|
5980
|
+
]),
|
|
5981
|
+
createElementVNode("div", null, toDisplayString(props.name), 1)
|
|
5982
|
+
], 10, _hoisted_3$7)
|
|
5983
|
+
]),
|
|
5984
|
+
_: 2
|
|
5985
|
+
}, 1032, ["id"]);
|
|
5986
|
+
}), 128))
|
|
5987
|
+
])
|
|
5988
|
+
]),
|
|
5989
|
+
createElementVNode("div", null, [
|
|
5990
|
+
_cache[1] || (_cache[1] = createElementVNode("h6", null, "Presets", -1)),
|
|
5991
|
+
createElementVNode("div", _hoisted_4$5, [
|
|
5992
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.presets, (item, key) => {
|
|
5993
|
+
return openBlock(), createBlock(_component_AIdentityProviderPreset, {
|
|
5994
|
+
key,
|
|
5995
|
+
id: item
|
|
5996
|
+
}, {
|
|
5997
|
+
default: withCtx((props) => [
|
|
5998
|
+
createElementVNode("div", {
|
|
5999
|
+
class: normalizeClass([{ "active": item === _ctx.preset }, "d-flex flex-column gap-1 text-center identity-provider-picker-item"]),
|
|
6000
|
+
onClick: withModifiers(($event) => _ctx.pickPreset(item), ["prevent"])
|
|
6001
|
+
}, [
|
|
6002
|
+
createElementVNode("div", null, [
|
|
6003
|
+
createElementVNode("i", {
|
|
6004
|
+
class: normalizeClass(["fa-2x", props.icon])
|
|
6005
|
+
}, null, 2)
|
|
6006
|
+
]),
|
|
6007
|
+
createElementVNode("div", null, toDisplayString(props.name), 1)
|
|
6008
|
+
], 10, _hoisted_5$2)
|
|
6009
|
+
]),
|
|
6010
|
+
_: 2
|
|
6011
|
+
}, 1032, ["id"]);
|
|
6012
|
+
}), 128))
|
|
6013
|
+
])
|
|
6014
|
+
])
|
|
6015
|
+
]);
|
|
5834
6016
|
}
|
|
5835
|
-
var AIdentityProviderPicker = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
5836
|
-
[
|
|
5837
|
-
"render",
|
|
5838
|
-
_sfc_render$9
|
|
5839
|
-
],
|
|
5840
|
-
[
|
|
5841
|
-
"__scopeId",
|
|
5842
|
-
"data-v-eb096917"
|
|
5843
|
-
]
|
|
5844
|
-
]);
|
|
6017
|
+
var AIdentityProviderPicker = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["render", _sfc_render$e], ["__scopeId", "data-v-af0f282c"]]);
|
|
5845
6018
|
|
|
5846
6019
|
const AIdentityProviderOAuth2ClientFields = defineComponent({
|
|
5847
6020
|
props: {
|
|
@@ -6111,10 +6284,6 @@ const AIdentityProviderOAuth2Form = defineComponent({
|
|
|
6111
6284
|
type: String,
|
|
6112
6285
|
default: undefined
|
|
6113
6286
|
},
|
|
6114
|
-
apiUrl: {
|
|
6115
|
-
type: String,
|
|
6116
|
-
default: 'http://localhost:3001'
|
|
6117
|
-
},
|
|
6118
6287
|
protocol: {
|
|
6119
6288
|
type: String,
|
|
6120
6289
|
default: IdentityProviderProtocol.OAUTH2
|
|
@@ -6152,7 +6321,7 @@ const AIdentityProviderOAuth2Form = defineComponent({
|
|
|
6152
6321
|
if (!manager.data.value) {
|
|
6153
6322
|
return '';
|
|
6154
6323
|
}
|
|
6155
|
-
return apiClient.identityProvider.getAuthorizeUri(
|
|
6324
|
+
return apiClient.identityProvider.getAuthorizeUri(manager.data.value.id);
|
|
6156
6325
|
});
|
|
6157
6326
|
const basicFieldsNode = ref(null);
|
|
6158
6327
|
onChange(preset, ()=>{
|
|
@@ -6350,10 +6519,6 @@ const AIdentityProviderForm = defineComponent({
|
|
|
6350
6519
|
},
|
|
6351
6520
|
realmId: {
|
|
6352
6521
|
type: String
|
|
6353
|
-
},
|
|
6354
|
-
apiUrl: {
|
|
6355
|
-
type: String,
|
|
6356
|
-
default: 'http://localhost:3001'
|
|
6357
6522
|
}
|
|
6358
6523
|
},
|
|
6359
6524
|
emits: [
|
|
@@ -6416,7 +6581,6 @@ const AIdentityProviderForm = defineComponent({
|
|
|
6416
6581
|
realmId: props.realmId,
|
|
6417
6582
|
protocol: protocol.value,
|
|
6418
6583
|
preset: preset.value,
|
|
6419
|
-
apiUrl: props.apiUrl,
|
|
6420
6584
|
onCreated: (el)=>{
|
|
6421
6585
|
entity.value = el;
|
|
6422
6586
|
setup.emit('created', el);
|
|
@@ -6462,8 +6626,8 @@ const AIdentityProviderForm = defineComponent({
|
|
|
6462
6626
|
|
|
6463
6627
|
const AIdentityProviders = defineComponent({
|
|
6464
6628
|
props: defineEntityCollectionVProps(),
|
|
6465
|
-
slots: Object,
|
|
6466
6629
|
emits: defineEntityCollectionVEmitOptions(),
|
|
6630
|
+
slots: Object,
|
|
6467
6631
|
setup (props, ctx) {
|
|
6468
6632
|
const { render } = defineEntityCollectionManager({
|
|
6469
6633
|
type: `${EntityType.IDENTITY_PROVIDER}`,
|
|
@@ -6756,7 +6920,7 @@ const AIdentityProviderRoleAssignments = defineComponent({
|
|
|
6756
6920
|
}
|
|
6757
6921
|
});
|
|
6758
6922
|
|
|
6759
|
-
var _sfc_main$
|
|
6923
|
+
var _sfc_main$e = defineComponent({
|
|
6760
6924
|
components: {
|
|
6761
6925
|
AFormInputList
|
|
6762
6926
|
},
|
|
@@ -6797,25 +6961,17 @@ var _sfc_main$8 = defineComponent({
|
|
|
6797
6961
|
}
|
|
6798
6962
|
});
|
|
6799
6963
|
|
|
6800
|
-
function _sfc_render$
|
|
6801
|
-
|
|
6802
|
-
|
|
6803
|
-
|
|
6804
|
-
|
|
6805
|
-
|
|
6806
|
-
|
|
6807
|
-
"names",
|
|
6808
|
-
"onChanged"
|
|
6809
|
-
]);
|
|
6964
|
+
function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6965
|
+
const _component_AFormInputList = resolveComponent("AFormInputList");
|
|
6966
|
+
return openBlock(), createBlock(_component_AFormInputList, {
|
|
6967
|
+
names: _ctx.vuelidate.names.$model,
|
|
6968
|
+
"min-items": 1,
|
|
6969
|
+
onChanged: _ctx.handleUpdated
|
|
6970
|
+
}, null, 8, ["names", "onChanged"]);
|
|
6810
6971
|
}
|
|
6811
|
-
var AAttributeNamesPolicyForm = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
6812
|
-
[
|
|
6813
|
-
"render",
|
|
6814
|
-
_sfc_render$8
|
|
6815
|
-
]
|
|
6816
|
-
]);
|
|
6972
|
+
var AAttributeNamesPolicyForm = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["render", _sfc_render$d]]);
|
|
6817
6973
|
|
|
6818
|
-
var _sfc_main$
|
|
6974
|
+
var _sfc_main$d = defineComponent({
|
|
6819
6975
|
components: {
|
|
6820
6976
|
APolicyChildrenPicker: APolicyPicker,
|
|
6821
6977
|
VCFormGroup,
|
|
@@ -6901,55 +7057,40 @@ var _sfc_main$7 = defineComponent({
|
|
|
6901
7057
|
}
|
|
6902
7058
|
});
|
|
6903
7059
|
|
|
6904
|
-
function _sfc_render$
|
|
6905
|
-
|
|
6906
|
-
|
|
6907
|
-
|
|
6908
|
-
|
|
6909
|
-
|
|
6910
|
-
|
|
7060
|
+
function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7061
|
+
const _component_APolicyChildrenPicker = resolveComponent("APolicyChildrenPicker");
|
|
7062
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
7063
|
+
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
7064
|
+
return openBlock(), createElementBlock("div", null, [
|
|
7065
|
+
createVNode(_component_IVuelidate, {
|
|
7066
|
+
validation: _ctx.vuelidate.items
|
|
7067
|
+
}, {
|
|
7068
|
+
default: withCtx((props) => [
|
|
7069
|
+
createVNode(_component_VCFormGroup, {
|
|
7070
|
+
"validation-messages": props.data,
|
|
7071
|
+
"validation-severity": props.severity
|
|
6911
7072
|
}, {
|
|
6912
|
-
|
|
6913
|
-
|
|
6914
|
-
|
|
6915
|
-
|
|
6916
|
-
|
|
6917
|
-
|
|
6918
|
-
|
|
6919
|
-
|
|
6920
|
-
|
|
6921
|
-
|
|
6922
|
-
|
|
6923
|
-
|
|
6924
|
-
|
|
6925
|
-
|
|
6926
|
-
|
|
6927
|
-
|
|
6928
|
-
|
|
6929
|
-
"value",
|
|
6930
|
-
"onChange"
|
|
6931
|
-
])
|
|
6932
|
-
]),
|
|
6933
|
-
_: 2
|
|
6934
|
-
}, 1032, [
|
|
6935
|
-
"validation-messages",
|
|
6936
|
-
"validation-severity"
|
|
6937
|
-
])
|
|
6938
|
-
]),
|
|
6939
|
-
_: 1
|
|
6940
|
-
}, 8, [
|
|
6941
|
-
"validation"
|
|
6942
|
-
])
|
|
6943
|
-
]);
|
|
7073
|
+
label: withCtx(() => [..._cache[0] || (_cache[0] = [
|
|
7074
|
+
createTextVNode(" Children ", -1)
|
|
7075
|
+
])]),
|
|
7076
|
+
default: withCtx(() => [
|
|
7077
|
+
createVNode(_component_APolicyChildrenPicker, {
|
|
7078
|
+
"parent-id": _ctx.id,
|
|
7079
|
+
query: _ctx.query,
|
|
7080
|
+
value: _ctx.vuelidate.items.$model,
|
|
7081
|
+
onChange: _ctx.handleUpdated
|
|
7082
|
+
}, null, 8, ["parent-id", "query", "value", "onChange"])
|
|
7083
|
+
]),
|
|
7084
|
+
_: 1
|
|
7085
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7086
|
+
]),
|
|
7087
|
+
_: 1
|
|
7088
|
+
}, 8, ["validation"])
|
|
7089
|
+
]);
|
|
6944
7090
|
}
|
|
6945
|
-
var ACompositePolicyForm = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
6946
|
-
[
|
|
6947
|
-
"render",
|
|
6948
|
-
_sfc_render$7
|
|
6949
|
-
]
|
|
6950
|
-
]);
|
|
7091
|
+
var ACompositePolicyForm = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["render", _sfc_render$c]]);
|
|
6951
7092
|
|
|
6952
|
-
var _sfc_main$
|
|
7093
|
+
var _sfc_main$c = defineComponent({
|
|
6953
7094
|
components: {
|
|
6954
7095
|
VCFormInput,
|
|
6955
7096
|
VCFormGroup,
|
|
@@ -6996,85 +7137,64 @@ var _sfc_main$6 = defineComponent({
|
|
|
6996
7137
|
}
|
|
6997
7138
|
});
|
|
6998
7139
|
|
|
6999
|
-
function _sfc_render$
|
|
7000
|
-
|
|
7001
|
-
|
|
7002
|
-
|
|
7003
|
-
|
|
7004
|
-
|
|
7005
|
-
|
|
7140
|
+
function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7141
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
7142
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
7143
|
+
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
7144
|
+
return openBlock(), createElementBlock("div", null, [
|
|
7145
|
+
createVNode(_component_IVuelidate, {
|
|
7146
|
+
validation: _ctx.vuelidate.start
|
|
7147
|
+
}, {
|
|
7148
|
+
default: withCtx((props) => [
|
|
7149
|
+
createVNode(_component_VCFormGroup, {
|
|
7150
|
+
"validation-messages": props.data,
|
|
7151
|
+
"validation-severity": props.severity
|
|
7006
7152
|
}, {
|
|
7007
|
-
|
|
7008
|
-
|
|
7009
|
-
|
|
7010
|
-
|
|
7011
|
-
|
|
7012
|
-
|
|
7013
|
-
|
|
7014
|
-
|
|
7015
|
-
|
|
7016
|
-
|
|
7017
|
-
|
|
7018
|
-
|
|
7019
|
-
|
|
7020
|
-
|
|
7021
|
-
|
|
7022
|
-
|
|
7023
|
-
|
|
7024
|
-
|
|
7025
|
-
|
|
7026
|
-
|
|
7027
|
-
|
|
7028
|
-
|
|
7029
|
-
|
|
7030
|
-
])
|
|
7031
|
-
]),
|
|
7032
|
-
_: 1
|
|
7033
|
-
}, 8, [
|
|
7034
|
-
"validation"
|
|
7035
|
-
]),
|
|
7036
|
-
createVNode(_component_IVuelidate, {
|
|
7037
|
-
validation: _ctx.vuelidate.end
|
|
7153
|
+
label: withCtx(() => [..._cache[2] || (_cache[2] = [
|
|
7154
|
+
createTextVNode(" Start ", -1)
|
|
7155
|
+
])]),
|
|
7156
|
+
default: withCtx(() => [
|
|
7157
|
+
createVNode(_component_VCFormInput, {
|
|
7158
|
+
modelValue: _ctx.vuelidate.start.$model,
|
|
7159
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.vuelidate.start.$model = $event),
|
|
7160
|
+
placeholder: "YYYY-MM-DD",
|
|
7161
|
+
onChange: _ctx.handleUpdated
|
|
7162
|
+
}, null, 8, ["modelValue", "onChange"])
|
|
7163
|
+
]),
|
|
7164
|
+
_: 1
|
|
7165
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7166
|
+
]),
|
|
7167
|
+
_: 1
|
|
7168
|
+
}, 8, ["validation"]),
|
|
7169
|
+
createVNode(_component_IVuelidate, {
|
|
7170
|
+
validation: _ctx.vuelidate.end
|
|
7171
|
+
}, {
|
|
7172
|
+
default: withCtx((props) => [
|
|
7173
|
+
createVNode(_component_VCFormGroup, {
|
|
7174
|
+
"validation-messages": props.data,
|
|
7175
|
+
"validation-severity": props.severity
|
|
7038
7176
|
}, {
|
|
7039
|
-
|
|
7040
|
-
|
|
7041
|
-
|
|
7042
|
-
|
|
7043
|
-
|
|
7044
|
-
|
|
7045
|
-
|
|
7046
|
-
|
|
7047
|
-
|
|
7048
|
-
|
|
7049
|
-
|
|
7050
|
-
|
|
7051
|
-
|
|
7052
|
-
|
|
7053
|
-
|
|
7054
|
-
|
|
7055
|
-
|
|
7056
|
-
])
|
|
7057
|
-
]),
|
|
7058
|
-
_: 2
|
|
7059
|
-
}, 1032, [
|
|
7060
|
-
"validation-messages",
|
|
7061
|
-
"validation-severity"
|
|
7062
|
-
])
|
|
7063
|
-
]),
|
|
7064
|
-
_: 1
|
|
7065
|
-
}, 8, [
|
|
7066
|
-
"validation"
|
|
7067
|
-
])
|
|
7068
|
-
]);
|
|
7177
|
+
label: withCtx(() => [..._cache[3] || (_cache[3] = [
|
|
7178
|
+
createTextVNode(" End ", -1)
|
|
7179
|
+
])]),
|
|
7180
|
+
default: withCtx(() => [
|
|
7181
|
+
createVNode(_component_VCFormInput, {
|
|
7182
|
+
modelValue: _ctx.vuelidate.end.$model,
|
|
7183
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => _ctx.vuelidate.end.$model = $event),
|
|
7184
|
+
placeholder: "YYYY-MM-DD",
|
|
7185
|
+
onChange: _ctx.handleUpdated
|
|
7186
|
+
}, null, 8, ["modelValue", "onChange"])
|
|
7187
|
+
]),
|
|
7188
|
+
_: 1
|
|
7189
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7190
|
+
]),
|
|
7191
|
+
_: 1
|
|
7192
|
+
}, 8, ["validation"])
|
|
7193
|
+
]);
|
|
7069
7194
|
}
|
|
7070
|
-
var ADatePolicyForm = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
7071
|
-
[
|
|
7072
|
-
"render",
|
|
7073
|
-
_sfc_render$6
|
|
7074
|
-
]
|
|
7075
|
-
]);
|
|
7195
|
+
var ADatePolicyForm = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["render", _sfc_render$b]]);
|
|
7076
7196
|
|
|
7077
|
-
var _sfc_main$
|
|
7197
|
+
var _sfc_main$b = defineComponent({
|
|
7078
7198
|
components: {
|
|
7079
7199
|
AFormInputList
|
|
7080
7200
|
},
|
|
@@ -7115,30 +7235,22 @@ var _sfc_main$5 = defineComponent({
|
|
|
7115
7235
|
}
|
|
7116
7236
|
});
|
|
7117
7237
|
|
|
7118
|
-
function _sfc_render$
|
|
7119
|
-
|
|
7120
|
-
|
|
7121
|
-
|
|
7122
|
-
|
|
7123
|
-
|
|
7124
|
-
|
|
7125
|
-
|
|
7126
|
-
|
|
7127
|
-
|
|
7128
|
-
|
|
7129
|
-
|
|
7130
|
-
"names",
|
|
7131
|
-
"onChanged"
|
|
7132
|
-
]);
|
|
7238
|
+
function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7239
|
+
const _component_AFormInputList = resolveComponent("AFormInputList");
|
|
7240
|
+
return openBlock(), createBlock(_component_AFormInputList, {
|
|
7241
|
+
names: _ctx.vuelidate.types.$model,
|
|
7242
|
+
"min-items": 1,
|
|
7243
|
+
onChanged: _ctx.handleUpdated
|
|
7244
|
+
}, {
|
|
7245
|
+
label: withCtx(() => [..._cache[0] || (_cache[0] = [
|
|
7246
|
+
createTextVNode(" Types ", -1)
|
|
7247
|
+
])]),
|
|
7248
|
+
_: 1
|
|
7249
|
+
}, 8, ["names", "onChanged"]);
|
|
7133
7250
|
}
|
|
7134
|
-
var AIdentityPolicyForm = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
7135
|
-
[
|
|
7136
|
-
"render",
|
|
7137
|
-
_sfc_render$5
|
|
7138
|
-
]
|
|
7139
|
-
]);
|
|
7251
|
+
var AIdentityPolicyForm = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["render", _sfc_render$a]]);
|
|
7140
7252
|
|
|
7141
|
-
var _sfc_main$
|
|
7253
|
+
var _sfc_main$a = defineComponent({
|
|
7142
7254
|
components: {
|
|
7143
7255
|
AFormInputList,
|
|
7144
7256
|
VCFormGroup,
|
|
@@ -7200,190 +7312,141 @@ var _sfc_main$4 = defineComponent({
|
|
|
7200
7312
|
}
|
|
7201
7313
|
});
|
|
7202
7314
|
|
|
7203
|
-
const _hoisted_1$
|
|
7204
|
-
|
|
7205
|
-
};
|
|
7206
|
-
const
|
|
7207
|
-
|
|
7208
|
-
|
|
7209
|
-
|
|
7210
|
-
|
|
7211
|
-
|
|
7212
|
-
const
|
|
7213
|
-
|
|
7214
|
-
|
|
7215
|
-
|
|
7216
|
-
|
|
7217
|
-
|
|
7218
|
-
|
|
7219
|
-
|
|
7220
|
-
|
|
7221
|
-
|
|
7222
|
-
|
|
7223
|
-
|
|
7224
|
-
|
|
7225
|
-
|
|
7226
|
-
|
|
7227
|
-
|
|
7228
|
-
|
|
7229
|
-
|
|
7230
|
-
|
|
7231
|
-
|
|
7232
|
-
createVNode(_component_VCFormGroup, {
|
|
7233
|
-
"validation-messages": props.data,
|
|
7234
|
-
"validation-severity": props.severity
|
|
7235
|
-
}, {
|
|
7236
|
-
default: withCtx(()=>[
|
|
7237
|
-
createVNode(_component_AFormInputList, {
|
|
7238
|
-
names: _ctx.vuelidate.attributeName.$model,
|
|
7239
|
-
onChanged: _ctx.handleAttributeNameChanged
|
|
7240
|
-
}, null, 8, [
|
|
7241
|
-
"names",
|
|
7242
|
-
"onChanged"
|
|
7243
|
-
])
|
|
7244
|
-
]),
|
|
7245
|
-
_: 2
|
|
7246
|
-
}, 1032, [
|
|
7247
|
-
"validation-messages",
|
|
7248
|
-
"validation-severity"
|
|
7249
|
-
])
|
|
7250
|
-
]),
|
|
7251
|
-
_: 1
|
|
7252
|
-
}, 8, [
|
|
7253
|
-
"validation"
|
|
7254
|
-
])
|
|
7315
|
+
const _hoisted_1$9 = { class: "row" };
|
|
7316
|
+
const _hoisted_2$8 = { class: "col-7" };
|
|
7317
|
+
const _hoisted_3$6 = { class: "col-5" };
|
|
7318
|
+
const _hoisted_4$4 = ["for"];
|
|
7319
|
+
const _hoisted_5$1 = ["for"];
|
|
7320
|
+
const _hoisted_6$1 = ["for"];
|
|
7321
|
+
function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7322
|
+
const _component_AFormInputList = resolveComponent("AFormInputList");
|
|
7323
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
7324
|
+
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
7325
|
+
const _component_VCFormInputCheckbox = resolveComponent("VCFormInputCheckbox");
|
|
7326
|
+
return openBlock(), createElementBlock("div", _hoisted_1$9, [
|
|
7327
|
+
createElementVNode("div", _hoisted_2$8, [
|
|
7328
|
+
createVNode(_component_IVuelidate, {
|
|
7329
|
+
validation: _ctx.vuelidate.attributeName
|
|
7330
|
+
}, {
|
|
7331
|
+
default: withCtx((props) => [
|
|
7332
|
+
createVNode(_component_VCFormGroup, {
|
|
7333
|
+
"validation-messages": props.data,
|
|
7334
|
+
"validation-severity": props.severity
|
|
7335
|
+
}, {
|
|
7336
|
+
default: withCtx(() => [
|
|
7337
|
+
createVNode(_component_AFormInputList, {
|
|
7338
|
+
names: _ctx.vuelidate.attributeName.$model,
|
|
7339
|
+
onChanged: _ctx.handleAttributeNameChanged
|
|
7340
|
+
}, null, 8, ["names", "onChanged"])
|
|
7341
|
+
]),
|
|
7342
|
+
_: 1
|
|
7343
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7255
7344
|
]),
|
|
7256
|
-
|
|
7257
|
-
|
|
7258
|
-
|
|
7259
|
-
|
|
7260
|
-
|
|
7261
|
-
|
|
7262
|
-
|
|
7263
|
-
|
|
7264
|
-
|
|
7265
|
-
|
|
7266
|
-
|
|
7267
|
-
|
|
7268
|
-
|
|
7269
|
-
|
|
7270
|
-
|
|
7271
|
-
|
|
7272
|
-
|
|
7273
|
-
|
|
7274
|
-
|
|
7275
|
-
|
|
7276
|
-
|
|
7277
|
-
|
|
7278
|
-
|
|
7279
|
-
|
|
7280
|
-
|
|
7281
|
-
"onChange"
|
|
7282
|
-
])
|
|
7283
|
-
]),
|
|
7284
|
-
_: 2
|
|
7285
|
-
}, 1032, [
|
|
7286
|
-
"validation-messages",
|
|
7287
|
-
"validation-severity"
|
|
7288
|
-
])
|
|
7289
|
-
]),
|
|
7345
|
+
_: 1
|
|
7346
|
+
}, 8, ["validation"])
|
|
7347
|
+
]),
|
|
7348
|
+
createElementVNode("div", _hoisted_3$6, [
|
|
7349
|
+
createVNode(_component_IVuelidate, {
|
|
7350
|
+
validation: _ctx.vuelidate.attributeNameStrict
|
|
7351
|
+
}, {
|
|
7352
|
+
default: withCtx((props) => [
|
|
7353
|
+
createVNode(_component_VCFormGroup, {
|
|
7354
|
+
"validation-messages": props.data,
|
|
7355
|
+
"validation-severity": props.severity
|
|
7356
|
+
}, {
|
|
7357
|
+
default: withCtx(() => [
|
|
7358
|
+
createVNode(_component_VCFormInputCheckbox, {
|
|
7359
|
+
modelValue: _ctx.vuelidate.attributeNameStrict.$model,
|
|
7360
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.vuelidate.attributeNameStrict.$model = $event),
|
|
7361
|
+
"group-class": "form-switch",
|
|
7362
|
+
label: true,
|
|
7363
|
+
onChange: _ctx.handleUpdated
|
|
7364
|
+
}, {
|
|
7365
|
+
label: withCtx((iProps) => [
|
|
7366
|
+
createElementVNode("label", {
|
|
7367
|
+
for: iProps.id
|
|
7368
|
+
}, " Only match if the attribute is strict equal to the name? ", 8, _hoisted_4$4)
|
|
7369
|
+
]),
|
|
7290
7370
|
_: 1
|
|
7291
|
-
|
|
7292
|
-
"validation"
|
|
7371
|
+
}, 8, ["modelValue", "onChange"])
|
|
7293
7372
|
]),
|
|
7294
|
-
|
|
7295
|
-
|
|
7296
|
-
|
|
7297
|
-
|
|
7298
|
-
|
|
7299
|
-
|
|
7300
|
-
|
|
7301
|
-
|
|
7302
|
-
|
|
7303
|
-
|
|
7304
|
-
|
|
7305
|
-
|
|
7306
|
-
|
|
7307
|
-
|
|
7308
|
-
|
|
7309
|
-
|
|
7310
|
-
|
|
7311
|
-
|
|
7312
|
-
|
|
7313
|
-
|
|
7314
|
-
|
|
7315
|
-
|
|
7316
|
-
|
|
7317
|
-
|
|
7318
|
-
|
|
7319
|
-
|
|
7320
|
-
|
|
7321
|
-
|
|
7322
|
-
|
|
7323
|
-
|
|
7324
|
-
]),
|
|
7325
|
-
_: 2
|
|
7326
|
-
}, 1032, [
|
|
7327
|
-
"validation-messages",
|
|
7328
|
-
"validation-severity"
|
|
7329
|
-
])
|
|
7330
|
-
]),
|
|
7373
|
+
_: 1
|
|
7374
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7375
|
+
]),
|
|
7376
|
+
_: 1
|
|
7377
|
+
}, 8, ["validation"]),
|
|
7378
|
+
createVNode(_component_IVuelidate, {
|
|
7379
|
+
validation: _ctx.vuelidate.attributeNullMatchAll
|
|
7380
|
+
}, {
|
|
7381
|
+
default: withCtx((props) => [
|
|
7382
|
+
createVNode(_component_VCFormGroup, {
|
|
7383
|
+
"validation-messages": props.data,
|
|
7384
|
+
"validation-severity": props.severity
|
|
7385
|
+
}, {
|
|
7386
|
+
default: withCtx(() => [
|
|
7387
|
+
createVNode(_component_VCFormInputCheckbox, {
|
|
7388
|
+
modelValue: _ctx.vuelidate.attributeNullMatchAll.$model,
|
|
7389
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => _ctx.vuelidate.attributeNullMatchAll.$model = $event),
|
|
7390
|
+
"group-class": "form-switch",
|
|
7391
|
+
label: true,
|
|
7392
|
+
onChange: _ctx.handleUpdated
|
|
7393
|
+
}, {
|
|
7394
|
+
label: withCtx((iProps) => [
|
|
7395
|
+
createElementVNode("label", {
|
|
7396
|
+
for: iProps.id
|
|
7397
|
+
}, [..._cache[3] || (_cache[3] = [
|
|
7398
|
+
createTextVNode(" Determines if resources with null realm-id/name value should match all identity realms.", -1),
|
|
7399
|
+
createElementVNode("br", null, null, -1),
|
|
7400
|
+
createTextVNode(" If true, any identity realm can access resources with null realm-id/name values. ", -1)
|
|
7401
|
+
])], 8, _hoisted_5$1)
|
|
7402
|
+
]),
|
|
7331
7403
|
_: 1
|
|
7332
|
-
|
|
7333
|
-
"validation"
|
|
7404
|
+
}, 8, ["modelValue", "onChange"])
|
|
7334
7405
|
]),
|
|
7335
|
-
|
|
7336
|
-
|
|
7337
|
-
|
|
7338
|
-
|
|
7339
|
-
|
|
7340
|
-
|
|
7341
|
-
|
|
7342
|
-
|
|
7343
|
-
|
|
7344
|
-
|
|
7345
|
-
|
|
7346
|
-
|
|
7347
|
-
|
|
7348
|
-
|
|
7349
|
-
|
|
7350
|
-
|
|
7351
|
-
|
|
7352
|
-
|
|
7353
|
-
|
|
7354
|
-
|
|
7355
|
-
|
|
7356
|
-
|
|
7357
|
-
|
|
7358
|
-
|
|
7359
|
-
|
|
7360
|
-
|
|
7361
|
-
|
|
7362
|
-
|
|
7363
|
-
|
|
7364
|
-
|
|
7365
|
-
]),
|
|
7366
|
-
_: 2
|
|
7367
|
-
}, 1032, [
|
|
7368
|
-
"validation-messages",
|
|
7369
|
-
"validation-severity"
|
|
7370
|
-
])
|
|
7371
|
-
]),
|
|
7406
|
+
_: 1
|
|
7407
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7408
|
+
]),
|
|
7409
|
+
_: 1
|
|
7410
|
+
}, 8, ["validation"]),
|
|
7411
|
+
createVNode(_component_IVuelidate, {
|
|
7412
|
+
validation: _ctx.vuelidate.identityMasterMatchAll
|
|
7413
|
+
}, {
|
|
7414
|
+
default: withCtx((props) => [
|
|
7415
|
+
createVNode(_component_VCFormGroup, {
|
|
7416
|
+
"validation-messages": props.data,
|
|
7417
|
+
"validation-severity": props.severity
|
|
7418
|
+
}, {
|
|
7419
|
+
default: withCtx(() => [
|
|
7420
|
+
createVNode(_component_VCFormInputCheckbox, {
|
|
7421
|
+
modelValue: _ctx.vuelidate.identityMasterMatchAll.$model,
|
|
7422
|
+
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => _ctx.vuelidate.identityMasterMatchAll.$model = $event),
|
|
7423
|
+
"group-class": "form-switch",
|
|
7424
|
+
label: true,
|
|
7425
|
+
onChange: _ctx.handleUpdated
|
|
7426
|
+
}, {
|
|
7427
|
+
label: withCtx((iProps) => [
|
|
7428
|
+
createElementVNode("label", {
|
|
7429
|
+
for: iProps.id
|
|
7430
|
+
}, [..._cache[4] || (_cache[4] = [
|
|
7431
|
+
createTextVNode(" Specifies whether the master realm of an identity should match all realm-id/name attributes, including null.", -1),
|
|
7432
|
+
createElementVNode("br", null, null, -1),
|
|
7433
|
+
createTextVNode(" If true, the master realm can access any resource regardless of its realm value. ", -1)
|
|
7434
|
+
])], 8, _hoisted_6$1)
|
|
7435
|
+
]),
|
|
7372
7436
|
_: 1
|
|
7373
|
-
|
|
7374
|
-
|
|
7375
|
-
|
|
7376
|
-
|
|
7377
|
-
|
|
7437
|
+
}, 8, ["modelValue", "onChange"])
|
|
7438
|
+
]),
|
|
7439
|
+
_: 1
|
|
7440
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7441
|
+
]),
|
|
7442
|
+
_: 1
|
|
7443
|
+
}, 8, ["validation"])
|
|
7444
|
+
])
|
|
7445
|
+
]);
|
|
7378
7446
|
}
|
|
7379
|
-
var ARealmMatchPolicyForm = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
7380
|
-
[
|
|
7381
|
-
"render",
|
|
7382
|
-
_sfc_render$4
|
|
7383
|
-
]
|
|
7384
|
-
]);
|
|
7447
|
+
var ARealmMatchPolicyForm = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["render", _sfc_render$9]]);
|
|
7385
7448
|
|
|
7386
|
-
var _sfc_main$
|
|
7449
|
+
var _sfc_main$9 = defineComponent({
|
|
7387
7450
|
components: {
|
|
7388
7451
|
VCFormInput,
|
|
7389
7452
|
VCFormGroup,
|
|
@@ -7471,239 +7534,183 @@ var _sfc_main$3 = defineComponent({
|
|
|
7471
7534
|
}
|
|
7472
7535
|
});
|
|
7473
7536
|
|
|
7474
|
-
const _hoisted_1$
|
|
7475
|
-
|
|
7476
|
-
|
|
7477
|
-
|
|
7478
|
-
key: 0,
|
|
7479
|
-
class: "col"
|
|
7537
|
+
const _hoisted_1$8 = { class: "row" };
|
|
7538
|
+
const _hoisted_2$7 = {
|
|
7539
|
+
key: 0,
|
|
7540
|
+
class: "col"
|
|
7480
7541
|
};
|
|
7481
|
-
const _hoisted_3$
|
|
7482
|
-
|
|
7483
|
-
|
|
7542
|
+
const _hoisted_3$5 = {
|
|
7543
|
+
key: 1,
|
|
7544
|
+
class: "col"
|
|
7484
7545
|
};
|
|
7485
|
-
const _hoisted_4$
|
|
7486
|
-
|
|
7487
|
-
|
|
7546
|
+
const _hoisted_4$3 = {
|
|
7547
|
+
key: 2,
|
|
7548
|
+
class: "col"
|
|
7488
7549
|
};
|
|
7489
|
-
function _sfc_render$
|
|
7490
|
-
|
|
7491
|
-
|
|
7492
|
-
|
|
7493
|
-
|
|
7494
|
-
|
|
7550
|
+
function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7551
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
7552
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
7553
|
+
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
7554
|
+
const _component_VCFormSelect = resolveComponent("VCFormSelect");
|
|
7555
|
+
return openBlock(), createElementBlock("div", null, [
|
|
7556
|
+
createVNode(_component_IVuelidate, {
|
|
7557
|
+
validation: _ctx.vuelidate.start
|
|
7558
|
+
}, {
|
|
7559
|
+
default: withCtx((props) => [
|
|
7560
|
+
createVNode(_component_VCFormGroup, {
|
|
7561
|
+
"validation-messages": props.data,
|
|
7562
|
+
"validation-severity": props.severity
|
|
7563
|
+
}, {
|
|
7564
|
+
label: withCtx(() => [..._cache[6] || (_cache[6] = [
|
|
7565
|
+
createTextVNode(" Start ", -1)
|
|
7566
|
+
])]),
|
|
7567
|
+
default: withCtx(() => [
|
|
7568
|
+
createVNode(_component_VCFormInput, {
|
|
7569
|
+
modelValue: _ctx.vuelidate.start.$model,
|
|
7570
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.vuelidate.start.$model = $event),
|
|
7571
|
+
placeholder: "00:00:00",
|
|
7572
|
+
onChange: _ctx.handleUpdated
|
|
7573
|
+
}, null, 8, ["modelValue", "onChange"])
|
|
7574
|
+
]),
|
|
7575
|
+
_: 1
|
|
7576
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7577
|
+
]),
|
|
7578
|
+
_: 1
|
|
7579
|
+
}, 8, ["validation"]),
|
|
7580
|
+
createVNode(_component_IVuelidate, {
|
|
7581
|
+
validation: _ctx.vuelidate.end
|
|
7582
|
+
}, {
|
|
7583
|
+
default: withCtx((props) => [
|
|
7584
|
+
createVNode(_component_VCFormGroup, {
|
|
7585
|
+
"validation-messages": props.data,
|
|
7586
|
+
"validation-severity": props.severity
|
|
7587
|
+
}, {
|
|
7588
|
+
label: withCtx(() => [..._cache[7] || (_cache[7] = [
|
|
7589
|
+
createTextVNode(" End ", -1)
|
|
7590
|
+
])]),
|
|
7591
|
+
default: withCtx(() => [
|
|
7592
|
+
createVNode(_component_VCFormInput, {
|
|
7593
|
+
modelValue: _ctx.vuelidate.end.$model,
|
|
7594
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => _ctx.vuelidate.end.$model = $event),
|
|
7595
|
+
placeholder: "00:00:00",
|
|
7596
|
+
onChange: _ctx.handleUpdated
|
|
7597
|
+
}, null, 8, ["modelValue", "onChange"])
|
|
7598
|
+
]),
|
|
7599
|
+
_: 1
|
|
7600
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7601
|
+
]),
|
|
7602
|
+
_: 1
|
|
7603
|
+
}, 8, ["validation"]),
|
|
7604
|
+
createVNode(_component_IVuelidate, {
|
|
7605
|
+
validation: _ctx.vuelidate.interval
|
|
7606
|
+
}, {
|
|
7607
|
+
default: withCtx((props) => [
|
|
7608
|
+
createVNode(_component_VCFormGroup, {
|
|
7609
|
+
"validation-messages": props.data,
|
|
7610
|
+
"validation-severity": props.severity
|
|
7611
|
+
}, {
|
|
7612
|
+
label: withCtx(() => [..._cache[8] || (_cache[8] = [
|
|
7613
|
+
createTextVNode(" Interval ", -1)
|
|
7614
|
+
])]),
|
|
7615
|
+
default: withCtx(() => [
|
|
7616
|
+
createVNode(_component_VCFormSelect, {
|
|
7617
|
+
modelValue: _ctx.vuelidate.interval.$model,
|
|
7618
|
+
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => _ctx.vuelidate.interval.$model = $event),
|
|
7619
|
+
options: _ctx.intervalOptions,
|
|
7620
|
+
onChange: _ctx.handleIntervalUpdated
|
|
7621
|
+
}, null, 8, ["modelValue", "options", "onChange"])
|
|
7622
|
+
]),
|
|
7623
|
+
_: 1
|
|
7624
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7625
|
+
]),
|
|
7626
|
+
_: 1
|
|
7627
|
+
}, 8, ["validation"]),
|
|
7628
|
+
createElementVNode("div", _hoisted_1$8, [
|
|
7629
|
+
_ctx.displayIntervalForDayOfWeek ? (openBlock(), createElementBlock("div", _hoisted_2$7, [
|
|
7495
7630
|
createVNode(_component_IVuelidate, {
|
|
7496
|
-
|
|
7631
|
+
validation: _ctx.vuelidate.dayOfWeek
|
|
7497
7632
|
}, {
|
|
7498
|
-
|
|
7499
|
-
|
|
7500
|
-
|
|
7501
|
-
|
|
7502
|
-
|
|
7503
|
-
|
|
7504
|
-
|
|
7505
|
-
|
|
7506
|
-
|
|
7507
|
-
|
|
7508
|
-
|
|
7509
|
-
|
|
7510
|
-
|
|
7511
|
-
|
|
7512
|
-
|
|
7513
|
-
|
|
7514
|
-
|
|
7515
|
-
|
|
7516
|
-
|
|
7517
|
-
|
|
7518
|
-
|
|
7519
|
-
|
|
7520
|
-
|
|
7521
|
-
|
|
7522
|
-
]),
|
|
7523
|
-
_: 1
|
|
7524
|
-
}, 8, [
|
|
7525
|
-
"validation"
|
|
7526
|
-
]),
|
|
7633
|
+
default: withCtx((props) => [
|
|
7634
|
+
createVNode(_component_VCFormGroup, {
|
|
7635
|
+
"validation-messages": props.data,
|
|
7636
|
+
"validation-severity": props.severity
|
|
7637
|
+
}, {
|
|
7638
|
+
label: withCtx(() => [..._cache[9] || (_cache[9] = [
|
|
7639
|
+
createTextVNode(" Day of Week ", -1)
|
|
7640
|
+
])]),
|
|
7641
|
+
default: withCtx(() => [
|
|
7642
|
+
createVNode(_component_VCFormInput, {
|
|
7643
|
+
modelValue: _ctx.vuelidate.dayOfWeek.$model,
|
|
7644
|
+
"onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => _ctx.vuelidate.dayOfWeek.$model = $event),
|
|
7645
|
+
placeholder: "0-7",
|
|
7646
|
+
type: "number",
|
|
7647
|
+
onChange: _ctx.handleUpdated
|
|
7648
|
+
}, null, 8, ["modelValue", "onChange"])
|
|
7649
|
+
]),
|
|
7650
|
+
_: 1
|
|
7651
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7652
|
+
]),
|
|
7653
|
+
_: 1
|
|
7654
|
+
}, 8, ["validation"])
|
|
7655
|
+
])) : createCommentVNode("", true),
|
|
7656
|
+
_ctx.displayIntervalForDayOfMonth ? (openBlock(), createElementBlock("div", _hoisted_3$5, [
|
|
7527
7657
|
createVNode(_component_IVuelidate, {
|
|
7528
|
-
|
|
7658
|
+
validation: _ctx.vuelidate.dayOfMonth
|
|
7529
7659
|
}, {
|
|
7530
|
-
|
|
7531
|
-
|
|
7532
|
-
|
|
7533
|
-
|
|
7534
|
-
|
|
7535
|
-
|
|
7536
|
-
|
|
7537
|
-
|
|
7538
|
-
|
|
7539
|
-
|
|
7540
|
-
|
|
7541
|
-
|
|
7542
|
-
|
|
7543
|
-
|
|
7544
|
-
|
|
7545
|
-
|
|
7546
|
-
|
|
7547
|
-
|
|
7548
|
-
|
|
7549
|
-
|
|
7550
|
-
|
|
7551
|
-
|
|
7552
|
-
|
|
7553
|
-
|
|
7554
|
-
]),
|
|
7555
|
-
_: 1
|
|
7556
|
-
}, 8, [
|
|
7557
|
-
"validation"
|
|
7558
|
-
]),
|
|
7660
|
+
default: withCtx((props) => [
|
|
7661
|
+
createVNode(_component_VCFormGroup, {
|
|
7662
|
+
"validation-messages": props.data,
|
|
7663
|
+
"validation-severity": props.severity
|
|
7664
|
+
}, {
|
|
7665
|
+
label: withCtx(() => [..._cache[10] || (_cache[10] = [
|
|
7666
|
+
createTextVNode(" Day of Month ", -1)
|
|
7667
|
+
])]),
|
|
7668
|
+
default: withCtx(() => [
|
|
7669
|
+
createVNode(_component_VCFormInput, {
|
|
7670
|
+
modelValue: _ctx.vuelidate.dayOfMonth.$model,
|
|
7671
|
+
"onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => _ctx.vuelidate.dayOfMonth.$model = $event),
|
|
7672
|
+
placeholder: "1-31",
|
|
7673
|
+
type: "number",
|
|
7674
|
+
onChange: _ctx.handleUpdated
|
|
7675
|
+
}, null, 8, ["modelValue", "onChange"])
|
|
7676
|
+
]),
|
|
7677
|
+
_: 1
|
|
7678
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7679
|
+
]),
|
|
7680
|
+
_: 1
|
|
7681
|
+
}, 8, ["validation"])
|
|
7682
|
+
])) : createCommentVNode("", true),
|
|
7683
|
+
_ctx.displayIntervalForDayOfYear ? (openBlock(), createElementBlock("div", _hoisted_4$3, [
|
|
7559
7684
|
createVNode(_component_IVuelidate, {
|
|
7560
|
-
|
|
7685
|
+
validation: _ctx.vuelidate.dayOfYear
|
|
7561
7686
|
}, {
|
|
7562
|
-
|
|
7563
|
-
|
|
7564
|
-
|
|
7565
|
-
|
|
7566
|
-
|
|
7567
|
-
|
|
7568
|
-
|
|
7569
|
-
|
|
7570
|
-
|
|
7571
|
-
|
|
7572
|
-
|
|
7573
|
-
|
|
7574
|
-
|
|
7575
|
-
|
|
7576
|
-
|
|
7577
|
-
|
|
7578
|
-
|
|
7579
|
-
|
|
7580
|
-
|
|
7581
|
-
|
|
7582
|
-
|
|
7583
|
-
|
|
7584
|
-
|
|
7585
|
-
|
|
7586
|
-
|
|
7587
|
-
]),
|
|
7588
|
-
_: 1
|
|
7589
|
-
}, 8, [
|
|
7590
|
-
"validation"
|
|
7591
|
-
]),
|
|
7592
|
-
createElementVNode("div", _hoisted_1$3, [
|
|
7593
|
-
_ctx.displayIntervalForDayOfWeek ? (openBlock(), createElementBlock("div", _hoisted_2$2, [
|
|
7594
|
-
createVNode(_component_IVuelidate, {
|
|
7595
|
-
validation: _ctx.vuelidate.dayOfWeek
|
|
7596
|
-
}, {
|
|
7597
|
-
default: withCtx((props)=>[
|
|
7598
|
-
createVNode(_component_VCFormGroup, {
|
|
7599
|
-
"validation-messages": props.data,
|
|
7600
|
-
"validation-severity": props.severity
|
|
7601
|
-
}, {
|
|
7602
|
-
label: withCtx(()=>_cache[9] || (_cache[9] = [
|
|
7603
|
-
createTextVNode(" Day of Week ")
|
|
7604
|
-
])),
|
|
7605
|
-
default: withCtx(()=>[
|
|
7606
|
-
createVNode(_component_VCFormInput, {
|
|
7607
|
-
modelValue: _ctx.vuelidate.dayOfWeek.$model,
|
|
7608
|
-
"onUpdate:modelValue": _cache[3] || (_cache[3] = ($event)=>_ctx.vuelidate.dayOfWeek.$model = $event),
|
|
7609
|
-
placeholder: "0-7",
|
|
7610
|
-
type: "number",
|
|
7611
|
-
onChange: _ctx.handleUpdated
|
|
7612
|
-
}, null, 8, [
|
|
7613
|
-
"modelValue",
|
|
7614
|
-
"onChange"
|
|
7615
|
-
])
|
|
7616
|
-
]),
|
|
7617
|
-
_: 2
|
|
7618
|
-
}, 1032, [
|
|
7619
|
-
"validation-messages",
|
|
7620
|
-
"validation-severity"
|
|
7621
|
-
])
|
|
7622
|
-
]),
|
|
7623
|
-
_: 1
|
|
7624
|
-
}, 8, [
|
|
7625
|
-
"validation"
|
|
7626
|
-
])
|
|
7627
|
-
])) : createCommentVNode("", true),
|
|
7628
|
-
_ctx.displayIntervalForDayOfMonth ? (openBlock(), createElementBlock("div", _hoisted_3$2, [
|
|
7629
|
-
createVNode(_component_IVuelidate, {
|
|
7630
|
-
validation: _ctx.vuelidate.dayOfMonth
|
|
7631
|
-
}, {
|
|
7632
|
-
default: withCtx((props)=>[
|
|
7633
|
-
createVNode(_component_VCFormGroup, {
|
|
7634
|
-
"validation-messages": props.data,
|
|
7635
|
-
"validation-severity": props.severity
|
|
7636
|
-
}, {
|
|
7637
|
-
label: withCtx(()=>_cache[10] || (_cache[10] = [
|
|
7638
|
-
createTextVNode(" Day of Month ")
|
|
7639
|
-
])),
|
|
7640
|
-
default: withCtx(()=>[
|
|
7641
|
-
createVNode(_component_VCFormInput, {
|
|
7642
|
-
modelValue: _ctx.vuelidate.dayOfMonth.$model,
|
|
7643
|
-
"onUpdate:modelValue": _cache[4] || (_cache[4] = ($event)=>_ctx.vuelidate.dayOfMonth.$model = $event),
|
|
7644
|
-
placeholder: "1-31",
|
|
7645
|
-
type: "number",
|
|
7646
|
-
onChange: _ctx.handleUpdated
|
|
7647
|
-
}, null, 8, [
|
|
7648
|
-
"modelValue",
|
|
7649
|
-
"onChange"
|
|
7650
|
-
])
|
|
7651
|
-
]),
|
|
7652
|
-
_: 2
|
|
7653
|
-
}, 1032, [
|
|
7654
|
-
"validation-messages",
|
|
7655
|
-
"validation-severity"
|
|
7656
|
-
])
|
|
7657
|
-
]),
|
|
7658
|
-
_: 1
|
|
7659
|
-
}, 8, [
|
|
7660
|
-
"validation"
|
|
7661
|
-
])
|
|
7662
|
-
])) : createCommentVNode("", true),
|
|
7663
|
-
_ctx.displayIntervalForDayOfYear ? (openBlock(), createElementBlock("div", _hoisted_4$1, [
|
|
7664
|
-
createVNode(_component_IVuelidate, {
|
|
7665
|
-
validation: _ctx.vuelidate.dayOfYear
|
|
7666
|
-
}, {
|
|
7667
|
-
default: withCtx((props)=>[
|
|
7668
|
-
createVNode(_component_VCFormGroup, {
|
|
7669
|
-
"validation-messages": props.data,
|
|
7670
|
-
"validation-severity": props.severity
|
|
7671
|
-
}, {
|
|
7672
|
-
label: withCtx(()=>_cache[11] || (_cache[11] = [
|
|
7673
|
-
createTextVNode(" Day of Year ")
|
|
7674
|
-
])),
|
|
7675
|
-
default: withCtx(()=>[
|
|
7676
|
-
createVNode(_component_VCFormInput, {
|
|
7677
|
-
modelValue: _ctx.vuelidate.dayOfYear.$model,
|
|
7678
|
-
"onUpdate:modelValue": _cache[5] || (_cache[5] = ($event)=>_ctx.vuelidate.dayOfYear.$model = $event),
|
|
7679
|
-
type: "number",
|
|
7680
|
-
placeholder: "1-365",
|
|
7681
|
-
onChange: _ctx.handleUpdated
|
|
7682
|
-
}, null, 8, [
|
|
7683
|
-
"modelValue",
|
|
7684
|
-
"onChange"
|
|
7685
|
-
])
|
|
7686
|
-
]),
|
|
7687
|
-
_: 2
|
|
7688
|
-
}, 1032, [
|
|
7689
|
-
"validation-messages",
|
|
7690
|
-
"validation-severity"
|
|
7691
|
-
])
|
|
7692
|
-
]),
|
|
7693
|
-
_: 1
|
|
7694
|
-
}, 8, [
|
|
7695
|
-
"validation"
|
|
7696
|
-
])
|
|
7697
|
-
])) : createCommentVNode("", true)
|
|
7698
|
-
])
|
|
7699
|
-
]);
|
|
7687
|
+
default: withCtx((props) => [
|
|
7688
|
+
createVNode(_component_VCFormGroup, {
|
|
7689
|
+
"validation-messages": props.data,
|
|
7690
|
+
"validation-severity": props.severity
|
|
7691
|
+
}, {
|
|
7692
|
+
label: withCtx(() => [..._cache[11] || (_cache[11] = [
|
|
7693
|
+
createTextVNode(" Day of Year ", -1)
|
|
7694
|
+
])]),
|
|
7695
|
+
default: withCtx(() => [
|
|
7696
|
+
createVNode(_component_VCFormInput, {
|
|
7697
|
+
modelValue: _ctx.vuelidate.dayOfYear.$model,
|
|
7698
|
+
"onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => _ctx.vuelidate.dayOfYear.$model = $event),
|
|
7699
|
+
type: "number",
|
|
7700
|
+
placeholder: "1-365",
|
|
7701
|
+
onChange: _ctx.handleUpdated
|
|
7702
|
+
}, null, 8, ["modelValue", "onChange"])
|
|
7703
|
+
]),
|
|
7704
|
+
_: 1
|
|
7705
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7706
|
+
]),
|
|
7707
|
+
_: 1
|
|
7708
|
+
}, 8, ["validation"])
|
|
7709
|
+
])) : createCommentVNode("", true)
|
|
7710
|
+
])
|
|
7711
|
+
]);
|
|
7700
7712
|
}
|
|
7701
|
-
var ATimePolicyForm = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
7702
|
-
[
|
|
7703
|
-
"render",
|
|
7704
|
-
_sfc_render$3
|
|
7705
|
-
]
|
|
7706
|
-
]);
|
|
7713
|
+
var ATimePolicyForm = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["render", _sfc_render$8]]);
|
|
7707
7714
|
|
|
7708
7715
|
const APolicy = defineComponent({
|
|
7709
7716
|
props: defineEntityVProps(),
|
|
@@ -7724,7 +7731,7 @@ const APolicy = defineComponent({
|
|
|
7724
7731
|
}
|
|
7725
7732
|
});
|
|
7726
7733
|
|
|
7727
|
-
var _sfc_main$
|
|
7734
|
+
var _sfc_main$8 = defineComponent({
|
|
7728
7735
|
props: {
|
|
7729
7736
|
type: {
|
|
7730
7737
|
type: String
|
|
@@ -7770,52 +7777,30 @@ var _sfc_main$2 = defineComponent({
|
|
|
7770
7777
|
}
|
|
7771
7778
|
});
|
|
7772
7779
|
|
|
7773
|
-
const _hoisted_1$
|
|
7774
|
-
|
|
7775
|
-
|
|
7776
|
-
|
|
7777
|
-
|
|
7778
|
-
|
|
7779
|
-
|
|
7780
|
-
|
|
7781
|
-
|
|
7782
|
-
|
|
7783
|
-
|
|
7784
|
-
|
|
7785
|
-
|
|
7786
|
-
|
|
7787
|
-
|
|
7788
|
-
|
|
7789
|
-
|
|
7790
|
-
|
|
7791
|
-
|
|
7792
|
-
|
|
7793
|
-
},
|
|
7794
|
-
"d-flex flex-column gap-1 text-center a-picker-item"
|
|
7795
|
-
]),
|
|
7796
|
-
onClick: withModifiers(($event)=>_ctx.pick(`${item.id}`), [
|
|
7797
|
-
"prevent"
|
|
7798
|
-
])
|
|
7799
|
-
}, [
|
|
7800
|
-
createElementVNode("div", null, toDisplayString(item.value), 1)
|
|
7801
|
-
], 10, _hoisted_3$1);
|
|
7802
|
-
}), 128))
|
|
7803
|
-
])
|
|
7804
|
-
])
|
|
7805
|
-
]);
|
|
7780
|
+
const _hoisted_1$7 = { class: "d-flex flex-column gap-2" };
|
|
7781
|
+
const _hoisted_2$6 = { class: "d-flex flex-row gap-2 flex-wrap" };
|
|
7782
|
+
const _hoisted_3$4 = ["onClick"];
|
|
7783
|
+
function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7784
|
+
return openBlock(), createElementBlock("div", _hoisted_1$7, [
|
|
7785
|
+
createElementVNode("div", null, [
|
|
7786
|
+
_cache[0] || (_cache[0] = createElementVNode("h6", null, "Type", -1)),
|
|
7787
|
+
createElementVNode("div", _hoisted_2$6, [
|
|
7788
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.options, (item, key) => {
|
|
7789
|
+
return openBlock(), createElementBlock("div", {
|
|
7790
|
+
key,
|
|
7791
|
+
class: normalizeClass([{ "active": item.id === _ctx.option }, "d-flex flex-column gap-1 text-center a-picker-item"]),
|
|
7792
|
+
onClick: withModifiers(($event) => _ctx.pick(`${item.id}`), ["prevent"])
|
|
7793
|
+
}, [
|
|
7794
|
+
createElementVNode("div", null, toDisplayString(item.value), 1)
|
|
7795
|
+
], 10, _hoisted_3$4);
|
|
7796
|
+
}), 128))
|
|
7797
|
+
])
|
|
7798
|
+
])
|
|
7799
|
+
]);
|
|
7806
7800
|
}
|
|
7807
|
-
var APolicyTypePicker = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
7808
|
-
[
|
|
7809
|
-
"render",
|
|
7810
|
-
_sfc_render$2
|
|
7811
|
-
],
|
|
7812
|
-
[
|
|
7813
|
-
"__scopeId",
|
|
7814
|
-
"data-v-3fa3964f"
|
|
7815
|
-
]
|
|
7816
|
-
]);
|
|
7801
|
+
var APolicyTypePicker = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["render", _sfc_render$7], ["__scopeId", "data-v-3fa3964f"]]);
|
|
7817
7802
|
|
|
7818
|
-
var _sfc_main$
|
|
7803
|
+
var _sfc_main$7 = defineComponent({
|
|
7819
7804
|
components: {
|
|
7820
7805
|
ARealmPicker,
|
|
7821
7806
|
VCFormInput,
|
|
@@ -7899,203 +7884,153 @@ var _sfc_main$1 = defineComponent({
|
|
|
7899
7884
|
}
|
|
7900
7885
|
});
|
|
7901
7886
|
|
|
7902
|
-
const _hoisted_1$
|
|
7903
|
-
|
|
7887
|
+
const _hoisted_1$6 = { class: "row" };
|
|
7888
|
+
const _hoisted_2$5 = { class: "col" };
|
|
7889
|
+
const _hoisted_3$3 = ["for"];
|
|
7890
|
+
const _hoisted_4$2 = {
|
|
7891
|
+
key: 0,
|
|
7892
|
+
class: "col"
|
|
7904
7893
|
};
|
|
7905
|
-
|
|
7906
|
-
|
|
7907
|
-
|
|
7908
|
-
const
|
|
7909
|
-
|
|
7910
|
-
|
|
7911
|
-
const
|
|
7912
|
-
|
|
7913
|
-
|
|
7914
|
-
|
|
7915
|
-
|
|
7916
|
-
|
|
7917
|
-
|
|
7918
|
-
|
|
7919
|
-
|
|
7920
|
-
|
|
7921
|
-
|
|
7922
|
-
|
|
7923
|
-
|
|
7924
|
-
|
|
7925
|
-
|
|
7926
|
-
|
|
7927
|
-
|
|
7928
|
-
|
|
7929
|
-
|
|
7930
|
-
|
|
7931
|
-
}, {
|
|
7932
|
-
label: withCtx(()=>_cache[5] || (_cache[5] = [
|
|
7933
|
-
createTextVNode(" Name ")
|
|
7934
|
-
])),
|
|
7935
|
-
default: withCtx(()=>[
|
|
7936
|
-
createVNode(_component_VCFormInput, {
|
|
7937
|
-
modelValue: _ctx.vuelidate.name.$model,
|
|
7938
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event)=>_ctx.vuelidate.name.$model = $event),
|
|
7939
|
-
onChange: _ctx.handleUpdated
|
|
7940
|
-
}, null, 8, [
|
|
7941
|
-
"modelValue",
|
|
7942
|
-
"onChange"
|
|
7943
|
-
])
|
|
7944
|
-
]),
|
|
7945
|
-
_: 2
|
|
7946
|
-
}, 1032, [
|
|
7947
|
-
"validation-messages",
|
|
7948
|
-
"validation-severity"
|
|
7949
|
-
])
|
|
7950
|
-
]),
|
|
7951
|
-
_: 1
|
|
7952
|
-
}, 8, [
|
|
7953
|
-
"validation"
|
|
7894
|
+
function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7895
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
7896
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
7897
|
+
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
7898
|
+
const _component_VCFormTextarea = resolveComponent("VCFormTextarea");
|
|
7899
|
+
const _component_VCFormInputCheckbox = resolveComponent("VCFormInputCheckbox");
|
|
7900
|
+
const _component_ARealmPicker = resolveComponent("ARealmPicker");
|
|
7901
|
+
return openBlock(), createElementBlock("div", _hoisted_1$6, [
|
|
7902
|
+
createElementVNode("div", _hoisted_2$5, [
|
|
7903
|
+
createVNode(_component_IVuelidate, {
|
|
7904
|
+
validation: _ctx.vuelidate.name
|
|
7905
|
+
}, {
|
|
7906
|
+
default: withCtx((props) => [
|
|
7907
|
+
createVNode(_component_VCFormGroup, {
|
|
7908
|
+
"validation-messages": props.data,
|
|
7909
|
+
"validation-severity": props.severity
|
|
7910
|
+
}, {
|
|
7911
|
+
label: withCtx(() => [..._cache[5] || (_cache[5] = [
|
|
7912
|
+
createTextVNode(" Name ", -1)
|
|
7913
|
+
])]),
|
|
7914
|
+
default: withCtx(() => [
|
|
7915
|
+
createVNode(_component_VCFormInput, {
|
|
7916
|
+
modelValue: _ctx.vuelidate.name.$model,
|
|
7917
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.vuelidate.name.$model = $event),
|
|
7918
|
+
onChange: _ctx.handleUpdated
|
|
7919
|
+
}, null, 8, ["modelValue", "onChange"])
|
|
7954
7920
|
]),
|
|
7955
|
-
|
|
7956
|
-
|
|
7957
|
-
|
|
7958
|
-
|
|
7959
|
-
|
|
7960
|
-
|
|
7961
|
-
|
|
7962
|
-
|
|
7963
|
-
|
|
7964
|
-
|
|
7965
|
-
|
|
7966
|
-
|
|
7967
|
-
|
|
7968
|
-
|
|
7969
|
-
|
|
7970
|
-
|
|
7971
|
-
|
|
7972
|
-
|
|
7973
|
-
|
|
7974
|
-
|
|
7975
|
-
|
|
7976
|
-
|
|
7977
|
-
}, 1032, [
|
|
7978
|
-
"validation-messages",
|
|
7979
|
-
"validation-severity"
|
|
7980
|
-
])
|
|
7981
|
-
]),
|
|
7982
|
-
_: 1
|
|
7983
|
-
}, 8, [
|
|
7984
|
-
"validation"
|
|
7921
|
+
_: 1
|
|
7922
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7923
|
+
]),
|
|
7924
|
+
_: 1
|
|
7925
|
+
}, 8, ["validation"]),
|
|
7926
|
+
createVNode(_component_IVuelidate, {
|
|
7927
|
+
validation: _ctx.vuelidate.display_name
|
|
7928
|
+
}, {
|
|
7929
|
+
default: withCtx((props) => [
|
|
7930
|
+
createVNode(_component_VCFormGroup, {
|
|
7931
|
+
"validation-messages": props.data,
|
|
7932
|
+
"validation-severity": props.severity
|
|
7933
|
+
}, {
|
|
7934
|
+
label: withCtx(() => [..._cache[6] || (_cache[6] = [
|
|
7935
|
+
createTextVNode(" Display Name ", -1)
|
|
7936
|
+
])]),
|
|
7937
|
+
default: withCtx(() => [
|
|
7938
|
+
createVNode(_component_VCFormInput, {
|
|
7939
|
+
modelValue: _ctx.vuelidate.display_name.$model,
|
|
7940
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => _ctx.vuelidate.display_name.$model = $event),
|
|
7941
|
+
onChange: _ctx.handleUpdated
|
|
7942
|
+
}, null, 8, ["modelValue", "onChange"])
|
|
7985
7943
|
]),
|
|
7986
|
-
|
|
7987
|
-
|
|
7988
|
-
|
|
7989
|
-
|
|
7990
|
-
|
|
7991
|
-
|
|
7992
|
-
|
|
7993
|
-
|
|
7994
|
-
|
|
7995
|
-
|
|
7996
|
-
|
|
7997
|
-
|
|
7998
|
-
|
|
7999
|
-
|
|
8000
|
-
|
|
8001
|
-
|
|
8002
|
-
|
|
8003
|
-
|
|
8004
|
-
|
|
8005
|
-
|
|
8006
|
-
|
|
8007
|
-
|
|
8008
|
-
|
|
8009
|
-
|
|
8010
|
-
|
|
8011
|
-
|
|
8012
|
-
|
|
8013
|
-
|
|
7944
|
+
_: 1
|
|
7945
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7946
|
+
]),
|
|
7947
|
+
_: 1
|
|
7948
|
+
}, 8, ["validation"]),
|
|
7949
|
+
createVNode(_component_IVuelidate, {
|
|
7950
|
+
validation: _ctx.vuelidate.description
|
|
7951
|
+
}, {
|
|
7952
|
+
default: withCtx((props) => [
|
|
7953
|
+
createVNode(_component_VCFormGroup, {
|
|
7954
|
+
"validation-messages": props.data,
|
|
7955
|
+
"validation-severity": props.severity
|
|
7956
|
+
}, {
|
|
7957
|
+
label: withCtx(() => [..._cache[7] || (_cache[7] = [
|
|
7958
|
+
createTextVNode(" Description ", -1)
|
|
7959
|
+
])]),
|
|
7960
|
+
default: withCtx(() => [
|
|
7961
|
+
createVNode(_component_VCFormTextarea, {
|
|
7962
|
+
modelValue: _ctx.vuelidate.description.$model,
|
|
7963
|
+
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => _ctx.vuelidate.description.$model = $event),
|
|
7964
|
+
rows: "4",
|
|
7965
|
+
onChange: _ctx.handleUpdated
|
|
7966
|
+
}, null, 8, ["modelValue", "onChange"])
|
|
7967
|
+
]),
|
|
7968
|
+
_: 1
|
|
7969
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7970
|
+
]),
|
|
7971
|
+
_: 1
|
|
7972
|
+
}, 8, ["validation"]),
|
|
7973
|
+
createVNode(_component_IVuelidate, {
|
|
7974
|
+
validation: _ctx.vuelidate.invert
|
|
7975
|
+
}, {
|
|
7976
|
+
default: withCtx((props) => [
|
|
7977
|
+
createVNode(_component_VCFormGroup, {
|
|
7978
|
+
"validation-messages": props.data,
|
|
7979
|
+
"validation-severity": props.severity
|
|
7980
|
+
}, {
|
|
7981
|
+
default: withCtx(() => [
|
|
7982
|
+
createVNode(_component_VCFormInputCheckbox, {
|
|
7983
|
+
modelValue: _ctx.vuelidate.invert.$model,
|
|
7984
|
+
"onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => _ctx.vuelidate.invert.$model = $event),
|
|
7985
|
+
"group-class": "form-switch",
|
|
7986
|
+
label: true,
|
|
7987
|
+
onChange: _ctx.handleUpdated
|
|
7988
|
+
}, {
|
|
7989
|
+
label: withCtx((iProps) => [
|
|
7990
|
+
createElementVNode("label", {
|
|
7991
|
+
for: iProps.id
|
|
7992
|
+
}, " Invert? ", 8, _hoisted_3$3)
|
|
7993
|
+
]),
|
|
8014
7994
|
_: 1
|
|
8015
|
-
|
|
8016
|
-
|
|
7995
|
+
}, 8, ["modelValue", "onChange"])
|
|
7996
|
+
]),
|
|
7997
|
+
_: 1
|
|
7998
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
7999
|
+
]),
|
|
8000
|
+
_: 1
|
|
8001
|
+
}, 8, ["validation"])
|
|
8002
|
+
]),
|
|
8003
|
+
!_ctx.realmId && !_ctx.isEditing ? (openBlock(), createElementBlock("div", _hoisted_4$2, [
|
|
8004
|
+
createVNode(_component_IVuelidate, {
|
|
8005
|
+
validation: _ctx.vuelidate.invert
|
|
8006
|
+
}, {
|
|
8007
|
+
default: withCtx((props) => [
|
|
8008
|
+
createVNode(_component_VCFormGroup, {
|
|
8009
|
+
"validation-messages": props.data,
|
|
8010
|
+
"validation-severity": props.severity
|
|
8011
|
+
}, {
|
|
8012
|
+
label: withCtx(() => [..._cache[8] || (_cache[8] = [
|
|
8013
|
+
createTextVNode(" Realm ", -1)
|
|
8014
|
+
])]),
|
|
8015
|
+
default: withCtx(() => [
|
|
8016
|
+
createVNode(_component_ARealmPicker, {
|
|
8017
|
+
value: _ctx.vuelidate.realm_id.$model,
|
|
8018
|
+
onChange: _cache[4] || (_cache[4] = (value) => {
|
|
8019
|
+
_ctx.vuelidate.realm_id.$model = value.length > 0 ? value[0] : "";
|
|
8020
|
+
})
|
|
8021
|
+
}, null, 8, ["value"])
|
|
8017
8022
|
]),
|
|
8018
|
-
|
|
8019
|
-
|
|
8020
|
-
}, {
|
|
8021
|
-
default: withCtx((props)=>[
|
|
8022
|
-
createVNode(_component_VCFormGroup, {
|
|
8023
|
-
"validation-messages": props.data,
|
|
8024
|
-
"validation-severity": props.severity
|
|
8025
|
-
}, {
|
|
8026
|
-
default: withCtx(()=>[
|
|
8027
|
-
createVNode(_component_VCFormInputCheckbox, {
|
|
8028
|
-
modelValue: _ctx.vuelidate.invert.$model,
|
|
8029
|
-
"onUpdate:modelValue": _cache[3] || (_cache[3] = ($event)=>_ctx.vuelidate.invert.$model = $event),
|
|
8030
|
-
"group-class": "form-switch",
|
|
8031
|
-
label: true,
|
|
8032
|
-
onChange: _ctx.handleUpdated
|
|
8033
|
-
}, {
|
|
8034
|
-
label: withCtx((iProps)=>[
|
|
8035
|
-
createElementVNode("label", {
|
|
8036
|
-
for: iProps.id
|
|
8037
|
-
}, " Invert? ", 8, _hoisted_3)
|
|
8038
|
-
]),
|
|
8039
|
-
_: 1
|
|
8040
|
-
}, 8, [
|
|
8041
|
-
"modelValue",
|
|
8042
|
-
"onChange"
|
|
8043
|
-
])
|
|
8044
|
-
]),
|
|
8045
|
-
_: 2
|
|
8046
|
-
}, 1032, [
|
|
8047
|
-
"validation-messages",
|
|
8048
|
-
"validation-severity"
|
|
8049
|
-
])
|
|
8050
|
-
]),
|
|
8051
|
-
_: 1
|
|
8052
|
-
}, 8, [
|
|
8053
|
-
"validation"
|
|
8054
|
-
])
|
|
8023
|
+
_: 1
|
|
8024
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
8055
8025
|
]),
|
|
8056
|
-
|
|
8057
|
-
|
|
8058
|
-
|
|
8059
|
-
|
|
8060
|
-
default: withCtx((props)=>[
|
|
8061
|
-
createVNode(_component_VCFormGroup, {
|
|
8062
|
-
"validation-messages": props.data,
|
|
8063
|
-
"validation-severity": props.severity
|
|
8064
|
-
}, {
|
|
8065
|
-
label: withCtx(()=>_cache[8] || (_cache[8] = [
|
|
8066
|
-
createTextVNode(" Realm ")
|
|
8067
|
-
])),
|
|
8068
|
-
default: withCtx(()=>[
|
|
8069
|
-
createVNode(_component_ARealmPicker, {
|
|
8070
|
-
value: _ctx.vuelidate.realm_id.$model,
|
|
8071
|
-
onChange: _cache[4] || (_cache[4] = (value)=>{
|
|
8072
|
-
_ctx.vuelidate.realm_id.$model = value.length > 0 ? value[0] : "";
|
|
8073
|
-
})
|
|
8074
|
-
}, null, 8, [
|
|
8075
|
-
"value"
|
|
8076
|
-
])
|
|
8077
|
-
]),
|
|
8078
|
-
_: 2
|
|
8079
|
-
}, 1032, [
|
|
8080
|
-
"validation-messages",
|
|
8081
|
-
"validation-severity"
|
|
8082
|
-
])
|
|
8083
|
-
]),
|
|
8084
|
-
_: 1
|
|
8085
|
-
}, 8, [
|
|
8086
|
-
"validation"
|
|
8087
|
-
])
|
|
8088
|
-
])) : createCommentVNode("", true)
|
|
8089
|
-
]);
|
|
8026
|
+
_: 1
|
|
8027
|
+
}, 8, ["validation"])
|
|
8028
|
+
])) : createCommentVNode("", true)
|
|
8029
|
+
]);
|
|
8090
8030
|
}
|
|
8091
|
-
var APolicyBasicForm = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
8092
|
-
[
|
|
8093
|
-
"render",
|
|
8094
|
-
_sfc_render$1
|
|
8095
|
-
]
|
|
8096
|
-
]);
|
|
8031
|
+
var APolicyBasicForm = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["render", _sfc_render$6]]);
|
|
8097
8032
|
|
|
8098
|
-
var _sfc_main = defineComponent({
|
|
8033
|
+
var _sfc_main$6 = defineComponent({
|
|
8099
8034
|
components: {
|
|
8100
8035
|
AFormSubmit,
|
|
8101
8036
|
APolicyTypePicker,
|
|
@@ -8171,51 +8106,33 @@ var _sfc_main = defineComponent({
|
|
|
8171
8106
|
}
|
|
8172
8107
|
});
|
|
8173
8108
|
|
|
8174
|
-
const _hoisted_1 = {
|
|
8175
|
-
|
|
8176
|
-
|
|
8177
|
-
|
|
8178
|
-
|
|
8179
|
-
|
|
8180
|
-
|
|
8181
|
-
|
|
8182
|
-
|
|
8183
|
-
|
|
8184
|
-
|
|
8185
|
-
|
|
8186
|
-
|
|
8187
|
-
_ctx.
|
|
8188
|
-
|
|
8189
|
-
|
|
8190
|
-
|
|
8191
|
-
|
|
8192
|
-
|
|
8193
|
-
|
|
8194
|
-
|
|
8195
|
-
|
|
8196
|
-
|
|
8197
|
-
|
|
8198
|
-
|
|
8199
|
-
createVNode(_component_AFormSubmit, {
|
|
8200
|
-
"is-invalid": _ctx.vuelidate.$invalid || !_ctx.typeComputed,
|
|
8201
|
-
"is-busy": _ctx.busy,
|
|
8202
|
-
"is-editing": _ctx.isEditing,
|
|
8203
|
-
onSubmit: _ctx.submit
|
|
8204
|
-
}, null, 8, [
|
|
8205
|
-
"is-invalid",
|
|
8206
|
-
"is-busy",
|
|
8207
|
-
"is-editing",
|
|
8208
|
-
"onSubmit"
|
|
8209
|
-
])
|
|
8210
|
-
])
|
|
8211
|
-
]);
|
|
8109
|
+
const _hoisted_1$5 = { class: "d-flex flex-column" };
|
|
8110
|
+
function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8111
|
+
const _component_APolicyBasicForm = resolveComponent("APolicyBasicForm");
|
|
8112
|
+
const _component_AFormSubmit = resolveComponent("AFormSubmit");
|
|
8113
|
+
return openBlock(), createElementBlock("div", _hoisted_1$5, [
|
|
8114
|
+
_cache[0] || (_cache[0] = createElementVNode("h6", null, "General", -1)),
|
|
8115
|
+
createVNode(_component_APolicyBasicForm, { entity: _ctx.data }, null, 8, ["entity"]),
|
|
8116
|
+
_ctx.typeComputed ? renderSlot(_ctx.$slots, "default", {
|
|
8117
|
+
key: 0,
|
|
8118
|
+
entity: _ctx.entity
|
|
8119
|
+
}, () => [
|
|
8120
|
+
_ctx.typeComputed in _ctx.typeComponents ? (openBlock(), createBlock(resolveDynamicComponent(_ctx.typeComponents[_ctx.typeComputed]), {
|
|
8121
|
+
key: 0,
|
|
8122
|
+
entity: _ctx.entity
|
|
8123
|
+
}, null, 8, ["entity"])) : createCommentVNode("", true)
|
|
8124
|
+
]) : createCommentVNode("", true),
|
|
8125
|
+
createElementVNode("div", null, [
|
|
8126
|
+
createVNode(_component_AFormSubmit, {
|
|
8127
|
+
"is-invalid": _ctx.vuelidate.$invalid || !_ctx.typeComputed,
|
|
8128
|
+
"is-busy": _ctx.busy,
|
|
8129
|
+
"is-editing": _ctx.isEditing,
|
|
8130
|
+
onSubmit: _ctx.submit
|
|
8131
|
+
}, null, 8, ["is-invalid", "is-busy", "is-editing", "onSubmit"])
|
|
8132
|
+
])
|
|
8133
|
+
]);
|
|
8212
8134
|
}
|
|
8213
|
-
var APolicyForm = /* @__PURE__ */ _export_sfc(_sfc_main, [
|
|
8214
|
-
[
|
|
8215
|
-
"render",
|
|
8216
|
-
_sfc_render
|
|
8217
|
-
]
|
|
8218
|
-
]);
|
|
8135
|
+
var APolicyForm = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["render", _sfc_render$5]]);
|
|
8219
8136
|
|
|
8220
8137
|
const APermissionClientAssignments = defineComponent({
|
|
8221
8138
|
props: {
|
|
@@ -8541,8 +8458,8 @@ const ARobotForm = defineComponent({
|
|
|
8541
8458
|
|
|
8542
8459
|
const ARobots = defineComponent({
|
|
8543
8460
|
props: defineEntityCollectionVProps(),
|
|
8544
|
-
slots: Object,
|
|
8545
8461
|
emits: defineEntityCollectionVEmitOptions(),
|
|
8462
|
+
slots: Object,
|
|
8546
8463
|
setup (props, ctx) {
|
|
8547
8464
|
const { render } = defineEntityCollectionManager({
|
|
8548
8465
|
type: `${EntityType.ROBOT}`,
|
|
@@ -8785,7 +8702,8 @@ const AUserForm = defineComponent({
|
|
|
8785
8702
|
email: {
|
|
8786
8703
|
minLength: minLength(5),
|
|
8787
8704
|
maxLength: maxLength(255),
|
|
8788
|
-
email
|
|
8705
|
+
email,
|
|
8706
|
+
required
|
|
8789
8707
|
},
|
|
8790
8708
|
realm_id: {
|
|
8791
8709
|
required
|
|
@@ -8859,6 +8777,9 @@ const AUserForm = defineComponent({
|
|
|
8859
8777
|
value: $v.value.name.$model,
|
|
8860
8778
|
onChange (input) {
|
|
8861
8779
|
$v.value.name.$model = input;
|
|
8780
|
+
if (!$v.value.email.$model || isUserFakeEmail($v.value.email.$model)) {
|
|
8781
|
+
$v.value.email.$model = buildUserFakeEmail(input);
|
|
8782
|
+
}
|
|
8862
8783
|
},
|
|
8863
8784
|
props: {
|
|
8864
8785
|
disabled: form.name_locked
|
|
@@ -9005,8 +8926,8 @@ const AUserForm = defineComponent({
|
|
|
9005
8926
|
|
|
9006
8927
|
const AUsers = defineComponent({
|
|
9007
8928
|
props: defineEntityCollectionVProps(),
|
|
9008
|
-
slots: Object,
|
|
9009
8929
|
emits: defineEntityCollectionVEmitOptions(),
|
|
8930
|
+
slots: Object,
|
|
9010
8931
|
setup (props, ctx) {
|
|
9011
8932
|
const { render } = defineEntityCollectionManager({
|
|
9012
8933
|
type: `${EntityType.USER}`,
|
|
@@ -9484,11 +9405,622 @@ function install(app, options) {
|
|
|
9484
9405
|
locale: options.translatorLocale
|
|
9485
9406
|
});
|
|
9486
9407
|
installComponents(app, options.components);
|
|
9408
|
+
installStoreManager(app);
|
|
9409
|
+
app.use(installFormControl);
|
|
9410
|
+
app.use(installPagination);
|
|
9411
|
+
}
|
|
9412
|
+
|
|
9413
|
+
var _sfc_main$5 = defineComponent({
|
|
9414
|
+
components: {
|
|
9415
|
+
ARealmPicker,
|
|
9416
|
+
APagination,
|
|
9417
|
+
ATitle,
|
|
9418
|
+
IVuelidate,
|
|
9419
|
+
AIdentityProviders,
|
|
9420
|
+
AIdentityProviderIcon
|
|
9421
|
+
},
|
|
9422
|
+
props: {
|
|
9423
|
+
codeRequest: {
|
|
9424
|
+
type: Object
|
|
9425
|
+
}
|
|
9426
|
+
},
|
|
9427
|
+
emits: [
|
|
9428
|
+
'done',
|
|
9429
|
+
'failed'
|
|
9430
|
+
],
|
|
9431
|
+
setup (props, { emit }) {
|
|
9432
|
+
const apiClient = injectHTTPClient();
|
|
9433
|
+
const store = injectStore();
|
|
9434
|
+
const form = reactive({
|
|
9435
|
+
name: '',
|
|
9436
|
+
password: '',
|
|
9437
|
+
realm_id: ''
|
|
9438
|
+
});
|
|
9439
|
+
const vuelidate = useVuelidate({
|
|
9440
|
+
name: {
|
|
9441
|
+
required,
|
|
9442
|
+
minLength: minLength(3),
|
|
9443
|
+
maxLength: maxLength(255)
|
|
9444
|
+
},
|
|
9445
|
+
password: {
|
|
9446
|
+
required,
|
|
9447
|
+
minLength: minLength(3),
|
|
9448
|
+
maxLength: maxLength(255)
|
|
9449
|
+
},
|
|
9450
|
+
realm_id: {}
|
|
9451
|
+
}, form);
|
|
9452
|
+
const busy = ref(false);
|
|
9453
|
+
const realmId = computed(()=>{
|
|
9454
|
+
if (props.codeRequest && props.codeRequest.realm_id) {
|
|
9455
|
+
return props.codeRequest.realm_id;
|
|
9456
|
+
}
|
|
9457
|
+
return form.realm_id;
|
|
9458
|
+
});
|
|
9459
|
+
const identityProviderQuery = ref({});
|
|
9460
|
+
const resetIdentityProviderQuery = ()=>{
|
|
9461
|
+
identityProviderQuery.value = {
|
|
9462
|
+
filters: {
|
|
9463
|
+
realm_id: realmId.value || '',
|
|
9464
|
+
protocol: `!${IdentityProviderProtocol.LDAP}`,
|
|
9465
|
+
enabled: true
|
|
9466
|
+
}
|
|
9467
|
+
};
|
|
9468
|
+
};
|
|
9469
|
+
resetIdentityProviderQuery();
|
|
9470
|
+
const identityProviderRef = ref(null);
|
|
9471
|
+
const updateIdentityProviderList = ()=>{
|
|
9472
|
+
if (identityProviderRef.value) {
|
|
9473
|
+
identityProviderRef.value.load();
|
|
9474
|
+
}
|
|
9475
|
+
};
|
|
9476
|
+
const updateRealmId = (realmId)=>{
|
|
9477
|
+
form.realm_id = Array.isArray(realmId) ? realmId[0] : realmId;
|
|
9478
|
+
resetIdentityProviderQuery();
|
|
9479
|
+
nextTick(()=>{
|
|
9480
|
+
updateIdentityProviderList();
|
|
9481
|
+
});
|
|
9482
|
+
};
|
|
9483
|
+
const submit = async ()=>{
|
|
9484
|
+
try {
|
|
9485
|
+
await store.login({
|
|
9486
|
+
name: form.name,
|
|
9487
|
+
password: form.password,
|
|
9488
|
+
realmId: form.realm_id
|
|
9489
|
+
});
|
|
9490
|
+
emit('done');
|
|
9491
|
+
} catch (e) {
|
|
9492
|
+
emit('failed', e instanceof Error ? e.message : 'The login operation failed');
|
|
9493
|
+
}
|
|
9494
|
+
};
|
|
9495
|
+
const buildIdentityProviderURL = (id)=>{
|
|
9496
|
+
let authorizeURL = apiClient.identityProvider.getAuthorizeUri(id);
|
|
9497
|
+
if (props.codeRequest) {
|
|
9498
|
+
const serialized = base64URLEncode(JSON.stringify(props.codeRequest));
|
|
9499
|
+
authorizeURL += `?codeRequest=${serialized}`;
|
|
9500
|
+
}
|
|
9501
|
+
return authorizeURL;
|
|
9502
|
+
};
|
|
9503
|
+
return {
|
|
9504
|
+
updateRealmId,
|
|
9505
|
+
vuelidate,
|
|
9506
|
+
form,
|
|
9507
|
+
submit,
|
|
9508
|
+
busy,
|
|
9509
|
+
identityProviderQuery,
|
|
9510
|
+
identityProviderRef,
|
|
9511
|
+
buildIdentityProviderURL
|
|
9512
|
+
};
|
|
9513
|
+
}
|
|
9514
|
+
});
|
|
9515
|
+
|
|
9516
|
+
const _hoisted_1$4 = { class: "d-flex flex-row" };
|
|
9517
|
+
const _hoisted_2$4 = ["href"];
|
|
9518
|
+
const _hoisted_3$2 = { class: "d-flex flex-column" };
|
|
9519
|
+
const _hoisted_4$1 = { class: "text-center mb-1" };
|
|
9520
|
+
function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9521
|
+
const _component_VCFormInput = resolveComponent("VCFormInput");
|
|
9522
|
+
const _component_VCFormGroup = resolveComponent("VCFormGroup");
|
|
9523
|
+
const _component_IVuelidate = resolveComponent("IVuelidate");
|
|
9524
|
+
const _component_VCFormSubmit = resolveComponent("VCFormSubmit");
|
|
9525
|
+
const _component_ARealmPicker = resolveComponent("ARealmPicker");
|
|
9526
|
+
const _component_ATitle = resolveComponent("ATitle");
|
|
9527
|
+
const _component_APagination = resolveComponent("APagination");
|
|
9528
|
+
const _component_AIdentityProviderIcon = resolveComponent("AIdentityProviderIcon");
|
|
9529
|
+
const _component_AIdentityProviders = resolveComponent("AIdentityProviders");
|
|
9530
|
+
return openBlock(), createElementBlock("div", null, [
|
|
9531
|
+
_cache[7] || (_cache[7] = createElementVNode("div", { class: "text-center" }, [
|
|
9532
|
+
createElementVNode("h1", { class: "fw-bold" }, " Login ")
|
|
9533
|
+
], -1)),
|
|
9534
|
+
createElementVNode("form", {
|
|
9535
|
+
onSubmit: _cache[3] || (_cache[3] = withModifiers((...args) => _ctx.submit && _ctx.submit(...args), ["prevent"]))
|
|
9536
|
+
}, [
|
|
9537
|
+
createVNode(_component_IVuelidate, {
|
|
9538
|
+
validation: _ctx.vuelidate.name
|
|
9539
|
+
}, {
|
|
9540
|
+
default: withCtx((props) => [
|
|
9541
|
+
createVNode(_component_VCFormGroup, {
|
|
9542
|
+
"validation-messages": props.data,
|
|
9543
|
+
"validation-severity": props.severity
|
|
9544
|
+
}, {
|
|
9545
|
+
label: withCtx(() => [..._cache[4] || (_cache[4] = [
|
|
9546
|
+
createTextVNode(" Name ", -1)
|
|
9547
|
+
])]),
|
|
9548
|
+
default: withCtx(() => [
|
|
9549
|
+
createVNode(_component_VCFormInput, {
|
|
9550
|
+
modelValue: _ctx.vuelidate.name.$model,
|
|
9551
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.vuelidate.name.$model = $event)
|
|
9552
|
+
}, null, 8, ["modelValue"])
|
|
9553
|
+
]),
|
|
9554
|
+
_: 1
|
|
9555
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
9556
|
+
]),
|
|
9557
|
+
_: 1
|
|
9558
|
+
}, 8, ["validation"]),
|
|
9559
|
+
createVNode(_component_IVuelidate, {
|
|
9560
|
+
validation: _ctx.vuelidate.password
|
|
9561
|
+
}, {
|
|
9562
|
+
default: withCtx((props) => [
|
|
9563
|
+
createVNode(_component_VCFormGroup, {
|
|
9564
|
+
"validation-messages": props.data,
|
|
9565
|
+
"validation-severity": props.severity
|
|
9566
|
+
}, {
|
|
9567
|
+
label: withCtx(() => [..._cache[5] || (_cache[5] = [
|
|
9568
|
+
createTextVNode(" Password ", -1)
|
|
9569
|
+
])]),
|
|
9570
|
+
default: withCtx(() => [
|
|
9571
|
+
createVNode(_component_VCFormInput, {
|
|
9572
|
+
modelValue: _ctx.vuelidate.password.$model,
|
|
9573
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => _ctx.vuelidate.password.$model = $event),
|
|
9574
|
+
type: "password"
|
|
9575
|
+
}, null, 8, ["modelValue"])
|
|
9576
|
+
]),
|
|
9577
|
+
_: 1
|
|
9578
|
+
}, 8, ["validation-messages", "validation-severity"])
|
|
9579
|
+
]),
|
|
9580
|
+
_: 1
|
|
9581
|
+
}, 8, ["validation"]),
|
|
9582
|
+
createVNode(_component_VCFormSubmit, {
|
|
9583
|
+
modelValue: _ctx.busy,
|
|
9584
|
+
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => _ctx.busy = $event),
|
|
9585
|
+
invalid: _ctx.vuelidate.$invalid,
|
|
9586
|
+
"create-text": "Submit",
|
|
9587
|
+
"create-button-class": { value: "btn btn-sm btn-dark btn-block", presets: { bootstrap: false } },
|
|
9588
|
+
"create-icon-class": "fa-solid fa-right-to-bracket",
|
|
9589
|
+
submit: _ctx.submit
|
|
9590
|
+
}, null, 8, ["modelValue", "invalid", "submit"]),
|
|
9591
|
+
_cache[6] || (_cache[6] = createElementVNode("hr", null, null, -1)),
|
|
9592
|
+
!_ctx.codeRequest || !_ctx.codeRequest.realm_id ? (openBlock(), createBlock(_component_ARealmPicker, {
|
|
9593
|
+
key: 0,
|
|
9594
|
+
value: _ctx.form.realm_id,
|
|
9595
|
+
onChange: _ctx.updateRealmId
|
|
9596
|
+
}, null, 8, ["value", "onChange"])) : createCommentVNode("", true),
|
|
9597
|
+
createVNode(_component_AIdentityProviders, {
|
|
9598
|
+
ref: "identityProviderRef",
|
|
9599
|
+
query: _ctx.identityProviderQuery,
|
|
9600
|
+
footer: false
|
|
9601
|
+
}, {
|
|
9602
|
+
header: withCtx(() => [
|
|
9603
|
+
createVNode(_component_ATitle, { text: "Identity Providers" })
|
|
9604
|
+
]),
|
|
9605
|
+
footer: withCtx((props) => [
|
|
9606
|
+
createVNode(_component_APagination, {
|
|
9607
|
+
busy: props.busy,
|
|
9608
|
+
meta: props.meta,
|
|
9609
|
+
load: props.load,
|
|
9610
|
+
total: props.total
|
|
9611
|
+
}, null, 8, ["busy", "meta", "load", "total"])
|
|
9612
|
+
]),
|
|
9613
|
+
body: withCtx((props) => [
|
|
9614
|
+
createElementVNode("div", _hoisted_1$4, [
|
|
9615
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(props.data, (item, key) => {
|
|
9616
|
+
return openBlock(), createElementBlock("div", { key }, [
|
|
9617
|
+
createElementVNode("a", {
|
|
9618
|
+
href: _ctx.buildIdentityProviderURL(item.id),
|
|
9619
|
+
class: "btn btn-dark btn-xs p-2 me-1 identity-provider-box bg-dark"
|
|
9620
|
+
}, [
|
|
9621
|
+
createElementVNode("div", _hoisted_3$2, [
|
|
9622
|
+
createElementVNode("div", _hoisted_4$1, [
|
|
9623
|
+
createVNode(_component_AIdentityProviderIcon, {
|
|
9624
|
+
class: "fa-2x",
|
|
9625
|
+
entity: item
|
|
9626
|
+
}, null, 8, ["entity"])
|
|
9627
|
+
]),
|
|
9628
|
+
createElementVNode("div", null, toDisplayString(item.name), 1)
|
|
9629
|
+
])
|
|
9630
|
+
], 8, _hoisted_2$4)
|
|
9631
|
+
]);
|
|
9632
|
+
}), 128))
|
|
9633
|
+
])
|
|
9634
|
+
]),
|
|
9635
|
+
_: 1
|
|
9636
|
+
}, 8, ["query"])
|
|
9637
|
+
], 32)
|
|
9638
|
+
]);
|
|
9639
|
+
}
|
|
9640
|
+
var Login = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["render", _sfc_render$4], ["__scopeId", "data-v-957a0486"]]);
|
|
9641
|
+
|
|
9642
|
+
var _sfc_main$4 = defineComponent({
|
|
9643
|
+
props: {
|
|
9644
|
+
entity: {
|
|
9645
|
+
type: Object,
|
|
9646
|
+
required: true
|
|
9647
|
+
},
|
|
9648
|
+
requested: {
|
|
9649
|
+
type: Array,
|
|
9650
|
+
default: ()=>[]
|
|
9651
|
+
}
|
|
9652
|
+
},
|
|
9653
|
+
setup (props) {
|
|
9654
|
+
const isEnabled = computed(()=>props.requested.indexOf(props.entity.name) !== -1);
|
|
9655
|
+
return {
|
|
9656
|
+
isEnabled
|
|
9657
|
+
};
|
|
9658
|
+
}
|
|
9659
|
+
});
|
|
9660
|
+
|
|
9661
|
+
const _hoisted_1$3 = { class: "text-center" };
|
|
9662
|
+
const _hoisted_2$3 = { key: 0 };
|
|
9663
|
+
function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9664
|
+
return openBlock(), createElementBlock("div", null, [
|
|
9665
|
+
createElementVNode("div", _hoisted_1$3, [
|
|
9666
|
+
createElementVNode("i", {
|
|
9667
|
+
class: normalizeClass(["fa-solid", {
|
|
9668
|
+
"fa-check text-success": _ctx.isEnabled,
|
|
9669
|
+
"fa-times text-danger": !_ctx.isEnabled
|
|
9670
|
+
}])
|
|
9671
|
+
}, null, 2)
|
|
9672
|
+
]),
|
|
9673
|
+
createElementVNode("div", null, [
|
|
9674
|
+
createElementVNode("strong", null, toDisplayString(_ctx.entity.name), 1),
|
|
9675
|
+
_ctx.entity.description ? (openBlock(), createElementBlock("p", _hoisted_2$3, toDisplayString(_ctx.entity.description), 1)) : createCommentVNode("", true)
|
|
9676
|
+
])
|
|
9677
|
+
]);
|
|
9678
|
+
}
|
|
9679
|
+
var AuthorizeScope = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["render", _sfc_render$3]]);
|
|
9680
|
+
|
|
9681
|
+
var _sfc_main$3 = defineComponent({
|
|
9682
|
+
components: {
|
|
9683
|
+
AuthorizeScope
|
|
9684
|
+
},
|
|
9685
|
+
props: {
|
|
9686
|
+
client: {
|
|
9687
|
+
type: Object,
|
|
9688
|
+
required: true
|
|
9689
|
+
},
|
|
9690
|
+
scopesAvailable: {
|
|
9691
|
+
type: Array
|
|
9692
|
+
},
|
|
9693
|
+
scopesRequested: {
|
|
9694
|
+
type: [
|
|
9695
|
+
String,
|
|
9696
|
+
Array
|
|
9697
|
+
]
|
|
9698
|
+
}
|
|
9699
|
+
},
|
|
9700
|
+
setup (props) {
|
|
9701
|
+
const httpClient = injectHTTPClient();
|
|
9702
|
+
const scopesRequestedNormalized = computed(()=>{
|
|
9703
|
+
if (!props.scopesRequested) {
|
|
9704
|
+
return [];
|
|
9705
|
+
}
|
|
9706
|
+
return Array.isArray(props.scopesRequested) ? props.scopesRequested : deserializeOAuth2Scope(props.scopesRequested);
|
|
9707
|
+
});
|
|
9708
|
+
const scopesAvailableNormalized = ref([]);
|
|
9709
|
+
const resolveScopesAvailable = async ()=>{
|
|
9710
|
+
if (props.scopesAvailable) {
|
|
9711
|
+
scopesAvailableNormalized.value = props.scopesAvailable;
|
|
9712
|
+
return;
|
|
9713
|
+
}
|
|
9714
|
+
if (props.client.id) {
|
|
9715
|
+
const { data: clientScopes } = await httpClient.clientScope.getMany({
|
|
9716
|
+
filters: {
|
|
9717
|
+
client_id: props.client.id
|
|
9718
|
+
},
|
|
9719
|
+
include: [
|
|
9720
|
+
'scope'
|
|
9721
|
+
]
|
|
9722
|
+
});
|
|
9723
|
+
scopesAvailableNormalized.value = clientScopes.map((clientScope)=>clientScope.scope);
|
|
9724
|
+
}
|
|
9725
|
+
};
|
|
9726
|
+
Promise.resolve().then(()=>resolveScopesAvailable());
|
|
9727
|
+
return {
|
|
9728
|
+
scopesRequestedNormalized,
|
|
9729
|
+
scopesAvailableNormalized
|
|
9730
|
+
};
|
|
9731
|
+
}
|
|
9732
|
+
});
|
|
9733
|
+
|
|
9734
|
+
const _hoisted_1$2 = { key: 0 };
|
|
9735
|
+
const _hoisted_2$2 = { class: "flex-column" };
|
|
9736
|
+
function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9737
|
+
const _component_AuthorizeScope = resolveComponent("AuthorizeScope");
|
|
9738
|
+
return _ctx.scopesAvailableNormalized.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_1$2, [
|
|
9739
|
+
createElementVNode("div", null, [
|
|
9740
|
+
_cache[0] || (_cache[0] = createTextVNode(" This will allow the ", -1)),
|
|
9741
|
+
createElementVNode("strong", null, toDisplayString(_ctx.client.name), 1),
|
|
9742
|
+
_cache[1] || (_cache[1] = createTextVNode(" application to ", -1))
|
|
9743
|
+
]),
|
|
9744
|
+
createElementVNode("div", _hoisted_2$2, [
|
|
9745
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.scopesAvailableNormalized, (item) => {
|
|
9746
|
+
return openBlock(), createBlock(_component_AuthorizeScope, {
|
|
9747
|
+
key: item.id,
|
|
9748
|
+
entity: item,
|
|
9749
|
+
class: "d-flex flex-row gap-1",
|
|
9750
|
+
requested: _ctx.scopesRequestedNormalized
|
|
9751
|
+
}, null, 8, ["entity", "requested"]);
|
|
9752
|
+
}), 128))
|
|
9753
|
+
])
|
|
9754
|
+
])) : createCommentVNode("", true);
|
|
9755
|
+
}
|
|
9756
|
+
var AuthorizeScopes = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["render", _sfc_render$2]]);
|
|
9757
|
+
|
|
9758
|
+
var _sfc_main$2 = defineComponent({
|
|
9759
|
+
components: {
|
|
9760
|
+
AuthorizeScopes
|
|
9761
|
+
},
|
|
9762
|
+
props: {
|
|
9763
|
+
client: {
|
|
9764
|
+
type: Object,
|
|
9765
|
+
required: true
|
|
9766
|
+
},
|
|
9767
|
+
scopes: {
|
|
9768
|
+
type: Array
|
|
9769
|
+
},
|
|
9770
|
+
codeRequest: {
|
|
9771
|
+
type: Object,
|
|
9772
|
+
required: true
|
|
9773
|
+
}
|
|
9774
|
+
},
|
|
9775
|
+
setup (props) {
|
|
9776
|
+
const httpClient = injectHTTPClient();
|
|
9777
|
+
const abort = ()=>{
|
|
9778
|
+
const url = new URL(`${props.codeRequest.redirect_uri}`);
|
|
9779
|
+
url.searchParams.set('error', 'access_denied');
|
|
9780
|
+
url.searchParams.set('error_description', 'The resource owner or authorization server denied the request');
|
|
9781
|
+
if (props.codeRequest.state) {
|
|
9782
|
+
url.searchParams.set('state', props.codeRequest.state);
|
|
9783
|
+
}
|
|
9784
|
+
if (typeof window !== 'undefined') {
|
|
9785
|
+
window.location.href = url.href;
|
|
9786
|
+
}
|
|
9787
|
+
};
|
|
9788
|
+
const authorize = async ()=>{
|
|
9789
|
+
try {
|
|
9790
|
+
const response = await httpClient.authorize.confirm({
|
|
9791
|
+
response_type: props.codeRequest.response_type,
|
|
9792
|
+
client_id: props.client.id,
|
|
9793
|
+
redirect_uri: props.codeRequest.redirect_uri,
|
|
9794
|
+
...props.codeRequest.state ? {
|
|
9795
|
+
state: props.codeRequest.state
|
|
9796
|
+
} : {},
|
|
9797
|
+
...props.codeRequest.scope ? {
|
|
9798
|
+
scope: props.codeRequest.scope
|
|
9799
|
+
} : {}
|
|
9800
|
+
});
|
|
9801
|
+
const { url } = response;
|
|
9802
|
+
if (typeof window !== 'undefined') {
|
|
9803
|
+
window.location.href = url;
|
|
9804
|
+
}
|
|
9805
|
+
} catch (e) {
|
|
9806
|
+
// todo: show toast :)
|
|
9807
|
+
}
|
|
9808
|
+
};
|
|
9809
|
+
return {
|
|
9810
|
+
authorize,
|
|
9811
|
+
abort
|
|
9812
|
+
};
|
|
9813
|
+
}
|
|
9814
|
+
});
|
|
9815
|
+
|
|
9816
|
+
const _hoisted_1$1 = { class: "flex-column d-flex gap-2" };
|
|
9817
|
+
const _hoisted_2$1 = { class: "text-center" };
|
|
9818
|
+
const _hoisted_3$1 = { class: "fw-bold" };
|
|
9819
|
+
const _hoisted_4 = { class: "mt-auto" };
|
|
9820
|
+
const _hoisted_5 = { class: "d-flex flex-row" };
|
|
9821
|
+
const _hoisted_6 = { class: "ms-1" };
|
|
9822
|
+
const _hoisted_7 = { class: "d-flex flex-row" };
|
|
9823
|
+
const _hoisted_8 = { class: "ms-1" };
|
|
9824
|
+
const _hoisted_9 = { class: "d-flex flex-row" };
|
|
9825
|
+
const _hoisted_10 = { class: "ms-1" };
|
|
9826
|
+
const _hoisted_11 = { class: "row" };
|
|
9827
|
+
const _hoisted_12 = { class: "col-6" };
|
|
9828
|
+
const _hoisted_13 = { class: "col-6" };
|
|
9829
|
+
function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9830
|
+
const _component_AuthorizeScopes = resolveComponent("AuthorizeScopes");
|
|
9831
|
+
return openBlock(), createElementBlock("div", _hoisted_1$1, [
|
|
9832
|
+
createElementVNode("div", _hoisted_2$1, [
|
|
9833
|
+
_cache[2] || (_cache[2] = createElementVNode("h5", { class: "text-secondary mb-1" }, " Application ", -1)),
|
|
9834
|
+
createElementVNode("h1", _hoisted_3$1, toDisplayString(_ctx.client.name), 1)
|
|
9835
|
+
]),
|
|
9836
|
+
createVNode(_component_AuthorizeScopes, {
|
|
9837
|
+
client: _ctx.client,
|
|
9838
|
+
"scopes-requested": _ctx.codeRequest.scope,
|
|
9839
|
+
"scopes-available": _ctx.scopes
|
|
9840
|
+
}, null, 8, ["client", "scopes-requested", "scopes-available"]),
|
|
9841
|
+
createElementVNode("div", _hoisted_4, [
|
|
9842
|
+
createElementVNode("div", _hoisted_5, [
|
|
9843
|
+
_cache[4] || (_cache[4] = createElementVNode("div", null, [
|
|
9844
|
+
createElementVNode("i", { class: "fa-solid fa-link" })
|
|
9845
|
+
], -1)),
|
|
9846
|
+
createElementVNode("div", _hoisted_6, [
|
|
9847
|
+
createElementVNode("small", null, [
|
|
9848
|
+
_cache[3] || (_cache[3] = createTextVNode(" Once authorized, you will be redirected to: ", -1)),
|
|
9849
|
+
createElementVNode("strong", null, toDisplayString(_ctx.codeRequest.redirect_uri), 1)
|
|
9850
|
+
])
|
|
9851
|
+
])
|
|
9852
|
+
]),
|
|
9853
|
+
createElementVNode("div", _hoisted_7, [
|
|
9854
|
+
_cache[7] || (_cache[7] = createElementVNode("div", null, [
|
|
9855
|
+
createElementVNode("i", { class: "fa fa-solid fa-lock" })
|
|
9856
|
+
], -1)),
|
|
9857
|
+
createElementVNode("div", _hoisted_8, [
|
|
9858
|
+
createElementVNode("small", null, [
|
|
9859
|
+
_cache[5] || (_cache[5] = createTextVNode(" This application is governed by the ", -1)),
|
|
9860
|
+
createElementVNode("strong", null, toDisplayString(_ctx.client.name), 1),
|
|
9861
|
+
_cache[6] || (_cache[6] = createTextVNode(" application's Privacy Policy and Terms of Service. ", -1))
|
|
9862
|
+
])
|
|
9863
|
+
])
|
|
9864
|
+
]),
|
|
9865
|
+
createElementVNode("div", _hoisted_9, [
|
|
9866
|
+
_cache[8] || (_cache[8] = createElementVNode("div", null, [
|
|
9867
|
+
createElementVNode("i", { class: "fa fa-solid fa-clock" })
|
|
9868
|
+
], -1)),
|
|
9869
|
+
createElementVNode("div", _hoisted_10, [
|
|
9870
|
+
createElementVNode("small", null, " Active since " + toDisplayString(_ctx.client.created_at), 1)
|
|
9871
|
+
])
|
|
9872
|
+
])
|
|
9873
|
+
]),
|
|
9874
|
+
createElementVNode("div", _hoisted_11, [
|
|
9875
|
+
createElementVNode("div", _hoisted_12, [
|
|
9876
|
+
createElementVNode("button", {
|
|
9877
|
+
type: "button",
|
|
9878
|
+
class: "btn btn-block btn-secondary",
|
|
9879
|
+
onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.abort && _ctx.abort(...args), ["prevent"]))
|
|
9880
|
+
}, " Abort ")
|
|
9881
|
+
]),
|
|
9882
|
+
createElementVNode("div", _hoisted_13, [
|
|
9883
|
+
createElementVNode("button", {
|
|
9884
|
+
type: "button",
|
|
9885
|
+
class: "btn btn-block btn-primary",
|
|
9886
|
+
onClick: _cache[1] || (_cache[1] = withModifiers((...args) => _ctx.authorize && _ctx.authorize(...args), ["prevent"]))
|
|
9887
|
+
}, " Authorize ")
|
|
9888
|
+
])
|
|
9889
|
+
])
|
|
9890
|
+
]);
|
|
9891
|
+
}
|
|
9892
|
+
var AuthorizeForm = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["render", _sfc_render$1]]);
|
|
9893
|
+
|
|
9894
|
+
var _sfc_main$1 = defineComponent({
|
|
9895
|
+
props: {
|
|
9896
|
+
isError: {
|
|
9897
|
+
type: Boolean
|
|
9898
|
+
},
|
|
9899
|
+
message: {
|
|
9900
|
+
type: String,
|
|
9901
|
+
required: true
|
|
9902
|
+
}
|
|
9903
|
+
}
|
|
9904
|
+
});
|
|
9905
|
+
|
|
9906
|
+
const _hoisted_1 = { class: "flex-column" };
|
|
9907
|
+
const _hoisted_2 = { class: "text-center" };
|
|
9908
|
+
const _hoisted_3 = { class: "text-center fs-6 p-3" };
|
|
9909
|
+
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9910
|
+
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
9911
|
+
createElementVNode("div", _hoisted_2, [
|
|
9912
|
+
createElementVNode("i", {
|
|
9913
|
+
class: normalizeClass(["fa-solid fa-10x", {
|
|
9914
|
+
"fa-exclamation text-danger": _ctx.isError,
|
|
9915
|
+
"fa-info text-info": !_ctx.isError
|
|
9916
|
+
}])
|
|
9917
|
+
}, null, 2)
|
|
9918
|
+
]),
|
|
9919
|
+
createElementVNode("div", _hoisted_3, toDisplayString(_ctx.message), 1)
|
|
9920
|
+
]);
|
|
9487
9921
|
}
|
|
9922
|
+
var AuthorizeText = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render]]);
|
|
9923
|
+
|
|
9924
|
+
const wrapChild = (child)=>h('div', {
|
|
9925
|
+
class: 'd-flex align-items-center justify-content-center h-100'
|
|
9926
|
+
}, [
|
|
9927
|
+
h('div', {
|
|
9928
|
+
class: 'authorize'
|
|
9929
|
+
}, [
|
|
9930
|
+
child
|
|
9931
|
+
])
|
|
9932
|
+
]);
|
|
9933
|
+
var _sfc_main = defineComponent({
|
|
9934
|
+
components: {
|
|
9935
|
+
AuthorizeText,
|
|
9936
|
+
AuthorizeForm,
|
|
9937
|
+
Login
|
|
9938
|
+
},
|
|
9939
|
+
props: {
|
|
9940
|
+
codeRequest: {
|
|
9941
|
+
type: Object
|
|
9942
|
+
},
|
|
9943
|
+
client: {
|
|
9944
|
+
type: Object
|
|
9945
|
+
},
|
|
9946
|
+
clientId: {
|
|
9947
|
+
type: String
|
|
9948
|
+
},
|
|
9949
|
+
scopes: {
|
|
9950
|
+
type: Array
|
|
9951
|
+
},
|
|
9952
|
+
error: {
|
|
9953
|
+
type: Object
|
|
9954
|
+
}
|
|
9955
|
+
},
|
|
9956
|
+
emits: [
|
|
9957
|
+
'redirect'
|
|
9958
|
+
],
|
|
9959
|
+
setup (props) {
|
|
9960
|
+
const httpClient = injectHTTPClient();
|
|
9961
|
+
const store = injectStore();
|
|
9962
|
+
const { loggedIn } = storeToRefs$1(store);
|
|
9963
|
+
const error = ref(null);
|
|
9964
|
+
const client = ref(null);
|
|
9965
|
+
const resolve = async ()=>{
|
|
9966
|
+
if (props.error) {
|
|
9967
|
+
error.value = props.error;
|
|
9968
|
+
return;
|
|
9969
|
+
}
|
|
9970
|
+
if (props.client) {
|
|
9971
|
+
client.value = props.client;
|
|
9972
|
+
}
|
|
9973
|
+
if (props.clientId) {
|
|
9974
|
+
try {
|
|
9975
|
+
client.value = await httpClient.client.getOne(props.clientId);
|
|
9976
|
+
} catch (e) {
|
|
9977
|
+
if (e instanceof Error) {
|
|
9978
|
+
error.value = e;
|
|
9979
|
+
}
|
|
9980
|
+
}
|
|
9981
|
+
}
|
|
9982
|
+
};
|
|
9983
|
+
Promise.resolve().then(()=>resolve());
|
|
9984
|
+
return ()=>{
|
|
9985
|
+
if (error.value) {
|
|
9986
|
+
return wrapChild(h(AuthorizeText, {
|
|
9987
|
+
message: error.value.message,
|
|
9988
|
+
isError: true
|
|
9989
|
+
}));
|
|
9990
|
+
}
|
|
9991
|
+
if (!props.codeRequest) {
|
|
9992
|
+
return [];
|
|
9993
|
+
}
|
|
9994
|
+
if (!loggedIn.value) {
|
|
9995
|
+
return wrapChild(h(Suspense, {}, {
|
|
9996
|
+
default: ()=>h(Login, {
|
|
9997
|
+
codeRequest: props.codeRequest
|
|
9998
|
+
}),
|
|
9999
|
+
fallback: ()=>h(AuthorizeText, {
|
|
10000
|
+
message: 'Loading...'
|
|
10001
|
+
})
|
|
10002
|
+
}));
|
|
10003
|
+
}
|
|
10004
|
+
if (!client.value) {
|
|
10005
|
+
return [];
|
|
10006
|
+
}
|
|
10007
|
+
return wrapChild(h(Suspense, {}, {
|
|
10008
|
+
default: ()=>h(AuthorizeForm, {
|
|
10009
|
+
codeRequest: props.codeRequest,
|
|
10010
|
+
client: client.value,
|
|
10011
|
+
scopes: props.scopes
|
|
10012
|
+
}),
|
|
10013
|
+
fallback: ()=>h(AuthorizeText, {
|
|
10014
|
+
message: 'Loading...'
|
|
10015
|
+
})
|
|
10016
|
+
}));
|
|
10017
|
+
};
|
|
10018
|
+
}
|
|
10019
|
+
});
|
|
9488
10020
|
|
|
9489
10021
|
var index = {
|
|
9490
10022
|
install
|
|
9491
10023
|
};
|
|
9492
10024
|
|
|
9493
|
-
export { AAttributeNamesPolicyForm, AClient, AClientForm, AClientPermissionAssignment, AClientPermissionAssignments, AClientPicker, AClientRoleAssignment, AClientRoleAssignments, AClientScope, AClientScopeAssignment, AClientScopeAssignments, AClientScopes, AClients, ACompositePolicyForm, ADatePolicyForm, AEntityDelete, AFormInputList, AFormInputListItem, AFormSubmit, AIdentityPolicyForm, AIdentityProvider, AIdentityProviderForm, AIdentityProviderIcon, AIdentityProviderLdapForm, AIdentityProviderOAuth2Form, AIdentityProviderPreset, AIdentityProviderProtocol, AIdentityProviderRoleAssignment, AIdentityProviderRoleAssignments, AIdentityProviders, APagination, APermission, APermissionCheck, APermissionClientAssignments, APermissionForm, APermissionRobotAssignments, APermissionRoleAssignments, APermissionUserAssignments, APermissions, APolicies, APolicy, APolicyForm, APolicyTypePicker, ARealm, ARealmForm, ARealmMatchPolicyForm, ARealmPicker, ARealms, ARobot, ARobotForm, ARobotPermissionAssignment, ARobotPermissionAssignments, ARobotRoleAssignment, ARobotRoleAssignments, ARobots, ARole, ARoleClientAssignments, ARoleForm, ARolePermissionAssignment, ARolePermissionAssignments, ARoleRobotAssignments, ARoleUserAssignments, ARoles, AScope, AScopeClientAssignments, AScopeForm, AScopes, ASearch, ATimePolicyForm, ATitle, AUser, AUserForm, AUserPasswordForm, AUserPermissionAssignment, AUserPermissionAssignments, AUserRoleAssignment, AUserRoleAssignments, AUsers, EntityRecordError, HTTPClientSymbol, LanguageSwitcherDropdown, STORE_ID, SocketClientSymbol, StoreDispatcherEventName, TranslatorTranslationClientKey, TranslatorTranslationDefaultKey, TranslatorTranslationGroup, TranslatorTranslationVuecsKey, VuelidateCustomRule, VuelidateCustomRuleKey, assignFormProperties, buildEntityCollectionCreatedHandler, buildEntityCollectionDeletedHandler, buildEntityCollectionUpdatedHandler, buildEntityVSlotProps, buildFormSubmitWithTranslations, createFormSubmitTranslations, createPermissionCheckerReactiveFn, createStore, createStoreDispatcher, index as default, defineEntityCollectionManager, defineEntityCollectionVEmitOptions, defineEntityCollectionVProps, defineEntityManager, defineEntityPicker, defineEntityPickerVEmitOptions, defineEntityPickerVProps, defineEntitySocketManager, defineEntityVEmitOptions, defineEntityVProps, extractVuelidateResultsFromChild, getVuelidateSeverity, hasHTTPClient, hasHTTPClientAuthenticationHook, hasNormalizedSlot, hasStoreFactory, inject$1 as inject, injectHTTPClient, injectHTTPClientAuthenticationHook, injectSocketManager, injectStore, injectStoreDispatcher, injectStoreFactory, injectTranslatorLocale, install, installHTTPClient, installHTTPClientAuthenticationHook, installSocketManager, installStore, installTranslator, isQuerySortedDescByDate, isSocketManagerUsable, mergeEntityCollectionRenderOptions, normalizeSlot, onChange, provide, provideHTTPClient, provideHTTPClientAuthenticationHook, provideSocketManager, provideStoreDispatcher, provideStoreFactory, renderToggleButton, storeToRefs, useIsEditing, usePermissionCheck, useTranslation, useTranslationsForBaseValidation, useTranslationsForGroup, useTranslationsForNestedValidation, useUpdatedAt, wrapFnWithBusyState };
|
|
10025
|
+
export { AAttributeNamesPolicyForm, _sfc_main as AAuthorize, AuthorizeText as AAuthorizeText, AClient, AClientForm, AClientPermissionAssignment, AClientPermissionAssignments, AClientPicker, AClientRoleAssignment, AClientRoleAssignments, AClientScope, AClientScopeAssignment, AClientScopeAssignments, AClientScopes, AClients, ACompositePolicyForm, ADatePolicyForm, AEntityDelete, AFormInputList, AFormInputListItem, AFormSubmit, AIdentityPolicyForm, AIdentityProvider, AIdentityProviderForm, AIdentityProviderIcon, AIdentityProviderLdapForm, AIdentityProviderOAuth2Form, AIdentityProviderPreset, AIdentityProviderProtocol, AIdentityProviderRoleAssignment, AIdentityProviderRoleAssignments, AIdentityProviders, Login as ALogin, APagination, APermission, APermissionCheck, APermissionClientAssignments, APermissionForm, APermissionRobotAssignments, APermissionRoleAssignments, APermissionUserAssignments, APermissions, APolicies, APolicy, APolicyForm, APolicyTypePicker, ARealm, ARealmForm, ARealmMatchPolicyForm, ARealmPicker, ARealms, ARobot, ARobotForm, ARobotPermissionAssignment, ARobotPermissionAssignments, ARobotRoleAssignment, ARobotRoleAssignments, ARobots, ARole, ARoleClientAssignments, ARoleForm, ARolePermissionAssignment, ARolePermissionAssignments, ARoleRobotAssignments, ARoleUserAssignments, ARoles, AScope, AScopeClientAssignments, AScopeForm, AScopes, ASearch, ATimePolicyForm, ATitle, AUser, AUserForm, AUserPasswordForm, AUserPermissionAssignment, AUserPermissionAssignments, AUserRoleAssignment, AUserRoleAssignments, AUsers, EntityRecordError, HTTPClientSymbol, LanguageSwitcherDropdown, STORE_ID, SocketClientSymbol, StoreDispatcherEventName, TranslatorTranslationClientKey, TranslatorTranslationDefaultKey, TranslatorTranslationGroup, TranslatorTranslationVuecsKey, VuelidateCustomRule, VuelidateCustomRuleKey, assignFormProperties, buildEntityCollectionCreatedHandler, buildEntityCollectionDeletedHandler, buildEntityCollectionUpdatedHandler, buildEntityVSlotProps, buildFormSubmitWithTranslations, createFormSubmitTranslations, createPermissionCheckerReactiveFn, createStore, createStoreDispatcher, index as default, defineEntityCollectionManager, defineEntityCollectionVEmitOptions, defineEntityCollectionVProps, defineEntityManager, defineEntityPicker, defineEntityPickerVEmitOptions, defineEntityPickerVProps, defineEntitySocketManager, defineEntityVEmitOptions, defineEntityVProps, extractVuelidateResultsFromChild, getVuelidateSeverity, hasHTTPClient, hasHTTPClientAuthenticationHook, hasNormalizedSlot, hasStoreFactory, inject$1 as inject, injectHTTPClient, injectHTTPClientAuthenticationHook, injectSocketManager, injectStore, injectStoreDispatcher, injectStoreFactory, injectTranslatorLocale, install, installHTTPClient, installHTTPClientAuthenticationHook, installSocketManager, installStore, installTranslator, isQuerySortedDescByDate, isSocketManagerUsable, mergeEntityCollectionRenderOptions, normalizeSlot, onChange, provide, provideHTTPClient, provideHTTPClientAuthenticationHook, provideSocketManager, provideStoreDispatcher, provideStoreFactory, renderToggleButton, storeToRefs, useIsEditing, usePermissionCheck, useTranslation, useTranslationsForBaseValidation, useTranslationsForGroup, useTranslationsForNestedValidation, useUpdatedAt, wrapFnWithBusyState };
|
|
9494
10026
|
//# sourceMappingURL=index.mjs.map
|