@asgardeo/vue 0.2.4 → 0.3.0
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/cjs/index.js +821 -713
- package/dist/cjs/index.js.map +4 -4
- package/dist/composables/v2/useOAuthCallback.d.ts +69 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +168 -60
- package/dist/index.js.map +4 -4
- package/dist/utils/v2/flowTransformer.d.ts +3 -3
- package/package.json +2 -2
package/dist/cjs/index.js
CHANGED
|
@@ -145,6 +145,7 @@ __export(index_exports, {
|
|
|
145
145
|
useFlowMeta: () => useFlowMeta_default,
|
|
146
146
|
useI18n: () => useI18n_default,
|
|
147
147
|
useOAuthCallback: () => useOAuthCallback,
|
|
148
|
+
useOAuthCallbackV2: () => useOAuthCallback2,
|
|
148
149
|
useOrganization: () => useOrganization_default,
|
|
149
150
|
useTheme: () => useTheme_default,
|
|
150
151
|
useUser: () => useUser_default,
|
|
@@ -1462,7 +1463,7 @@ var AsgardeoVueClient = class extends import_browser12.AsgardeoBrowserClient {
|
|
|
1462
1463
|
if (isV2Platform && typeof arg1 === "object" && arg1 !== null && arg1.callOnlyOnRedirect === true) {
|
|
1463
1464
|
return void 0;
|
|
1464
1465
|
}
|
|
1465
|
-
if (isV2Platform && typeof arg1 === "object" && arg1 !== null && !(0, import_browser12.isEmpty)(arg1) && ("
|
|
1466
|
+
if (isV2Platform && typeof arg1 === "object" && arg1 !== null && !(0, import_browser12.isEmpty)(arg1) && ("executionId" in arg1 || "applicationId" in arg1)) {
|
|
1466
1467
|
const authIdFromUrl = new URL(window.location.href).searchParams.get("authId");
|
|
1467
1468
|
const authIdFromStorage = sessionStorage.getItem("asgardeo_auth_id");
|
|
1468
1469
|
const authId = authIdFromUrl || authIdFromStorage;
|
|
@@ -1734,7 +1735,7 @@ var AsgardeoProvider = (0, import_vue8.defineComponent)({
|
|
|
1734
1735
|
async function signIn(...args) {
|
|
1735
1736
|
const arg1 = args[0];
|
|
1736
1737
|
const config = buildConfig();
|
|
1737
|
-
const isV2FlowRequest = config.platform === import_browser13.Platform.AsgardeoV2 && typeof arg1 === "object" && arg1 !== null && ("
|
|
1738
|
+
const isV2FlowRequest = config.platform === import_browser13.Platform.AsgardeoV2 && typeof arg1 === "object" && arg1 !== null && ("executionId" in arg1 || "applicationId" in arg1);
|
|
1738
1739
|
try {
|
|
1739
1740
|
if (!isV2FlowRequest) {
|
|
1740
1741
|
isUpdatingSession = true;
|
|
@@ -1877,9 +1878,9 @@ var AsgardeoProvider = (0, import_vue8.defineComponent)({
|
|
|
1877
1878
|
if (isV2Platform) {
|
|
1878
1879
|
const urlParams = currentUrl.searchParams;
|
|
1879
1880
|
const code = urlParams.get("code");
|
|
1880
|
-
const
|
|
1881
|
-
const
|
|
1882
|
-
if (code && !
|
|
1881
|
+
const executionIdFromUrl = urlParams.get("executionId");
|
|
1882
|
+
const storedExecutionId = sessionStorage.getItem("asgardeo_execution_id");
|
|
1883
|
+
if (code && !executionIdFromUrl && !storedExecutionId) {
|
|
1883
1884
|
await signIn();
|
|
1884
1885
|
}
|
|
1885
1886
|
} else {
|
|
@@ -4331,10 +4332,111 @@ function useOAuthCallback({
|
|
|
4331
4332
|
);
|
|
4332
4333
|
}
|
|
4333
4334
|
|
|
4335
|
+
// src/composables/v2/useOAuthCallback.ts
|
|
4336
|
+
var import_vue18 = require("vue");
|
|
4337
|
+
function cleanupUrlParams2() {
|
|
4338
|
+
if (typeof window === "undefined") return;
|
|
4339
|
+
const url = new URL(window.location.href);
|
|
4340
|
+
url.searchParams.delete("code");
|
|
4341
|
+
url.searchParams.delete("nonce");
|
|
4342
|
+
url.searchParams.delete("state");
|
|
4343
|
+
url.searchParams.delete("error");
|
|
4344
|
+
url.searchParams.delete("error_description");
|
|
4345
|
+
window.history.replaceState({}, "", url.toString());
|
|
4346
|
+
}
|
|
4347
|
+
function useOAuthCallback2({
|
|
4348
|
+
currentExecutionId,
|
|
4349
|
+
executionIdStorageKey = "asgardeo_execution_id",
|
|
4350
|
+
isInitialized,
|
|
4351
|
+
isSubmitting,
|
|
4352
|
+
onComplete,
|
|
4353
|
+
onError,
|
|
4354
|
+
onFlowChange,
|
|
4355
|
+
onProcessingStart,
|
|
4356
|
+
onSubmit,
|
|
4357
|
+
processedFlag,
|
|
4358
|
+
setExecutionId,
|
|
4359
|
+
tokenValidationAttemptedFlag
|
|
4360
|
+
}) {
|
|
4361
|
+
const internalFlag = { value: false };
|
|
4362
|
+
const oauthCodeProcessedFlag = processedFlag ?? internalFlag;
|
|
4363
|
+
const tokenValidationFlag = tokenValidationAttemptedFlag;
|
|
4364
|
+
(0, import_vue18.watch)(
|
|
4365
|
+
() => [isInitialized.value, currentExecutionId.value, isSubmitting?.value],
|
|
4366
|
+
([initialized, , submitting]) => {
|
|
4367
|
+
if (!initialized || submitting) {
|
|
4368
|
+
return;
|
|
4369
|
+
}
|
|
4370
|
+
const urlParams = new URLSearchParams(window.location.search);
|
|
4371
|
+
const code = urlParams.get("code");
|
|
4372
|
+
const nonce = urlParams.get("nonce");
|
|
4373
|
+
const state = urlParams.get("state");
|
|
4374
|
+
const executionIdFromUrl = urlParams.get("executionId");
|
|
4375
|
+
const error = urlParams.get("error");
|
|
4376
|
+
const errorDescription = urlParams.get("error_description");
|
|
4377
|
+
if (error) {
|
|
4378
|
+
oauthCodeProcessedFlag.value = true;
|
|
4379
|
+
if (tokenValidationFlag) {
|
|
4380
|
+
tokenValidationFlag.value = true;
|
|
4381
|
+
}
|
|
4382
|
+
onError?.(new Error(errorDescription || error || "OAuth authentication failed"));
|
|
4383
|
+
cleanupUrlParams2();
|
|
4384
|
+
return;
|
|
4385
|
+
}
|
|
4386
|
+
if (!code || oauthCodeProcessedFlag.value) {
|
|
4387
|
+
return;
|
|
4388
|
+
}
|
|
4389
|
+
if (tokenValidationFlag?.value) {
|
|
4390
|
+
return;
|
|
4391
|
+
}
|
|
4392
|
+
const storedExecutionId = sessionStorage.getItem(executionIdStorageKey);
|
|
4393
|
+
const executionIdToUse = currentExecutionId.value || storedExecutionId || executionIdFromUrl || state || null;
|
|
4394
|
+
if (!executionIdToUse) {
|
|
4395
|
+
oauthCodeProcessedFlag.value = true;
|
|
4396
|
+
onError?.(new Error("Invalid flow. Missing executionId."));
|
|
4397
|
+
cleanupUrlParams2();
|
|
4398
|
+
return;
|
|
4399
|
+
}
|
|
4400
|
+
oauthCodeProcessedFlag.value = true;
|
|
4401
|
+
if (tokenValidationFlag) {
|
|
4402
|
+
tokenValidationFlag.value = true;
|
|
4403
|
+
}
|
|
4404
|
+
onProcessingStart?.();
|
|
4405
|
+
if (!currentExecutionId.value && setExecutionId) {
|
|
4406
|
+
setExecutionId(executionIdToUse);
|
|
4407
|
+
}
|
|
4408
|
+
(async () => {
|
|
4409
|
+
try {
|
|
4410
|
+
const payload = {
|
|
4411
|
+
executionId: executionIdToUse,
|
|
4412
|
+
inputs: {
|
|
4413
|
+
code,
|
|
4414
|
+
...nonce && { nonce }
|
|
4415
|
+
}
|
|
4416
|
+
};
|
|
4417
|
+
const response = await onSubmit(payload);
|
|
4418
|
+
onFlowChange?.(response);
|
|
4419
|
+
if (response?.flowStatus === "COMPLETE" || response?.status === "COMPLETE") {
|
|
4420
|
+
onComplete?.();
|
|
4421
|
+
}
|
|
4422
|
+
if (response?.flowStatus === "ERROR" || response?.status === "ERROR") {
|
|
4423
|
+
onError?.(response);
|
|
4424
|
+
}
|
|
4425
|
+
cleanupUrlParams2();
|
|
4426
|
+
} catch (err) {
|
|
4427
|
+
onError?.(err);
|
|
4428
|
+
cleanupUrlParams2();
|
|
4429
|
+
}
|
|
4430
|
+
})();
|
|
4431
|
+
},
|
|
4432
|
+
{ immediate: true }
|
|
4433
|
+
);
|
|
4434
|
+
}
|
|
4435
|
+
|
|
4334
4436
|
// src/components/primitives/Button/Button.ts
|
|
4335
4437
|
var import_browser15 = require("@asgardeo/browser");
|
|
4336
|
-
var
|
|
4337
|
-
var Button = (0,
|
|
4438
|
+
var import_vue19 = require("vue");
|
|
4439
|
+
var Button = (0, import_vue19.defineComponent)({
|
|
4338
4440
|
emits: ["click"],
|
|
4339
4441
|
name: "Button",
|
|
4340
4442
|
props: {
|
|
@@ -4371,7 +4473,7 @@ var Button = (0, import_vue18.defineComponent)({
|
|
|
4371
4473
|
props.loading ? (0, import_browser15.withVendorCSSClassPrefix)("button--loading") : "",
|
|
4372
4474
|
attrs["class"] || ""
|
|
4373
4475
|
].filter(Boolean).join(" ");
|
|
4374
|
-
return (0,
|
|
4476
|
+
return (0, import_vue19.h)(
|
|
4375
4477
|
"button",
|
|
4376
4478
|
{
|
|
4377
4479
|
class: cssClass,
|
|
@@ -4381,10 +4483,10 @@ var Button = (0, import_vue18.defineComponent)({
|
|
|
4381
4483
|
type: props.type
|
|
4382
4484
|
},
|
|
4383
4485
|
[
|
|
4384
|
-
props.startIcon ? (0,
|
|
4385
|
-
(0,
|
|
4386
|
-
props.endIcon ? (0,
|
|
4387
|
-
props.loading ? (0,
|
|
4486
|
+
props.startIcon ? (0, import_vue19.h)("span", { class: (0, import_browser15.withVendorCSSClassPrefix)("button__start-icon") }, [props.startIcon]) : null,
|
|
4487
|
+
(0, import_vue19.h)("span", { class: (0, import_browser15.withVendorCSSClassPrefix)("button__content") }, slots["default"]?.()),
|
|
4488
|
+
props.endIcon ? (0, import_vue19.h)("span", { class: (0, import_browser15.withVendorCSSClassPrefix)("button__end-icon") }, [props.endIcon]) : null,
|
|
4489
|
+
props.loading ? (0, import_vue19.h)("span", { "aria-hidden": "true", class: (0, import_browser15.withVendorCSSClassPrefix)("button__spinner") }) : null
|
|
4388
4490
|
]
|
|
4389
4491
|
);
|
|
4390
4492
|
};
|
|
@@ -4394,8 +4496,8 @@ var Button_default = Button;
|
|
|
4394
4496
|
|
|
4395
4497
|
// src/components/primitives/Card/Card.ts
|
|
4396
4498
|
var import_browser16 = require("@asgardeo/browser");
|
|
4397
|
-
var
|
|
4398
|
-
var Card = (0,
|
|
4499
|
+
var import_vue20 = require("vue");
|
|
4500
|
+
var Card = (0, import_vue20.defineComponent)({
|
|
4399
4501
|
name: "Card",
|
|
4400
4502
|
props: {
|
|
4401
4503
|
variant: {
|
|
@@ -4404,7 +4506,7 @@ var Card = (0, import_vue19.defineComponent)({
|
|
|
4404
4506
|
}
|
|
4405
4507
|
},
|
|
4406
4508
|
setup(props, { slots, attrs }) {
|
|
4407
|
-
return () => (0,
|
|
4509
|
+
return () => (0, import_vue20.h)(
|
|
4408
4510
|
"div",
|
|
4409
4511
|
{
|
|
4410
4512
|
class: [
|
|
@@ -4422,8 +4524,8 @@ var Card_default = Card;
|
|
|
4422
4524
|
|
|
4423
4525
|
// src/components/primitives/Alert/Alert.ts
|
|
4424
4526
|
var import_browser17 = require("@asgardeo/browser");
|
|
4425
|
-
var
|
|
4426
|
-
var Alert = (0,
|
|
4527
|
+
var import_vue21 = require("vue");
|
|
4528
|
+
var Alert = (0, import_vue21.defineComponent)({
|
|
4427
4529
|
emits: ["dismiss"],
|
|
4428
4530
|
name: "Alert",
|
|
4429
4531
|
props: {
|
|
@@ -4434,7 +4536,7 @@ var Alert = (0, import_vue20.defineComponent)({
|
|
|
4434
4536
|
}
|
|
4435
4537
|
},
|
|
4436
4538
|
setup(props, { slots, emit, attrs }) {
|
|
4437
|
-
return () => (0,
|
|
4539
|
+
return () => (0, import_vue21.h)(
|
|
4438
4540
|
"div",
|
|
4439
4541
|
{
|
|
4440
4542
|
class: [
|
|
@@ -4446,8 +4548,8 @@ var Alert = (0, import_vue20.defineComponent)({
|
|
|
4446
4548
|
style: attrs["style"]
|
|
4447
4549
|
},
|
|
4448
4550
|
[
|
|
4449
|
-
(0,
|
|
4450
|
-
props.dismissible ? (0,
|
|
4551
|
+
(0, import_vue21.h)("div", { class: (0, import_browser17.withVendorCSSClassPrefix)("alert__content") }, slots["default"]?.()),
|
|
4552
|
+
props.dismissible ? (0, import_vue21.h)(
|
|
4451
4553
|
"button",
|
|
4452
4554
|
{
|
|
4453
4555
|
"aria-label": "Dismiss",
|
|
@@ -4465,8 +4567,8 @@ var Alert_default = Alert;
|
|
|
4465
4567
|
|
|
4466
4568
|
// src/components/primitives/TextField/TextField.ts
|
|
4467
4569
|
var import_browser18 = require("@asgardeo/browser");
|
|
4468
|
-
var
|
|
4469
|
-
var TextField = (0,
|
|
4570
|
+
var import_vue22 = require("vue");
|
|
4571
|
+
var TextField = (0, import_vue22.defineComponent)({
|
|
4470
4572
|
emits: ["update:modelValue", "blur"],
|
|
4471
4573
|
name: "TextField",
|
|
4472
4574
|
props: {
|
|
@@ -4494,14 +4596,14 @@ var TextField = (0, import_vue21.defineComponent)({
|
|
|
4494
4596
|
].filter(Boolean).join(" ");
|
|
4495
4597
|
let helperContent;
|
|
4496
4598
|
if (hasError) {
|
|
4497
|
-
helperContent = (0,
|
|
4599
|
+
helperContent = (0, import_vue22.h)("span", { class: (0, import_browser18.withVendorCSSClassPrefix)("text-field__error") }, props.error);
|
|
4498
4600
|
} else if (props.helperText) {
|
|
4499
|
-
helperContent = (0,
|
|
4601
|
+
helperContent = (0, import_vue22.h)("span", { class: (0, import_browser18.withVendorCSSClassPrefix)("text-field__helper") }, props.helperText);
|
|
4500
4602
|
} else {
|
|
4501
4603
|
helperContent = null;
|
|
4502
4604
|
}
|
|
4503
|
-
return (0,
|
|
4504
|
-
props.label ? (0,
|
|
4605
|
+
return (0, import_vue22.h)("div", { class: wrapperClass, style: attrs["style"] }, [
|
|
4606
|
+
props.label ? (0, import_vue22.h)(
|
|
4505
4607
|
"label",
|
|
4506
4608
|
{
|
|
4507
4609
|
class: (0, import_browser18.withVendorCSSClassPrefix)("text-field__label"),
|
|
@@ -4509,10 +4611,10 @@ var TextField = (0, import_vue21.defineComponent)({
|
|
|
4509
4611
|
},
|
|
4510
4612
|
[
|
|
4511
4613
|
props.label,
|
|
4512
|
-
props.required ? (0,
|
|
4614
|
+
props.required ? (0, import_vue22.h)("span", { class: (0, import_browser18.withVendorCSSClassPrefix)("text-field__required") }, " *") : null
|
|
4513
4615
|
]
|
|
4514
4616
|
) : null,
|
|
4515
|
-
(0,
|
|
4617
|
+
(0, import_vue22.h)("input", {
|
|
4516
4618
|
autocomplete: props.autoComplete,
|
|
4517
4619
|
class: (0, import_browser18.withVendorCSSClassPrefix)("text-field__input"),
|
|
4518
4620
|
"data-testid": attrs["data-testid"],
|
|
@@ -4535,10 +4637,10 @@ var TextField_default = TextField;
|
|
|
4535
4637
|
|
|
4536
4638
|
// src/components/primitives/PasswordField/PasswordField.ts
|
|
4537
4639
|
var import_browser19 = require("@asgardeo/browser");
|
|
4538
|
-
var
|
|
4640
|
+
var import_vue24 = require("vue");
|
|
4539
4641
|
|
|
4540
4642
|
// src/components/primitives/Icons.ts
|
|
4541
|
-
var
|
|
4643
|
+
var import_vue23 = require("vue");
|
|
4542
4644
|
var defaultProps = {
|
|
4543
4645
|
fill: "none",
|
|
4544
4646
|
height: "16",
|
|
@@ -4550,63 +4652,63 @@ var defaultProps = {
|
|
|
4550
4652
|
width: "16",
|
|
4551
4653
|
xmlns: "http://www.w3.org/2000/svg"
|
|
4552
4654
|
};
|
|
4553
|
-
var icon = (paths) => (0,
|
|
4554
|
-
var CheckIcon = () => icon([(0,
|
|
4555
|
-
var XIcon = () => icon([(0,
|
|
4556
|
-
var EyeIcon = () => icon([(0,
|
|
4655
|
+
var icon = (paths) => (0, import_vue23.h)("svg", { ...defaultProps }, paths);
|
|
4656
|
+
var CheckIcon = () => icon([(0, import_vue23.h)("polyline", { points: "20 6 9 17 4 12" })]);
|
|
4657
|
+
var XIcon = () => icon([(0, import_vue23.h)("line", { x1: "18", x2: "6", y1: "6", y2: "18" }), (0, import_vue23.h)("line", { x1: "6", x2: "18", y1: "6", y2: "18" })]);
|
|
4658
|
+
var EyeIcon = () => icon([(0, import_vue23.h)("path", { d: "M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z" }), (0, import_vue23.h)("circle", { cx: "12", cy: "12", r: "3" })]);
|
|
4557
4659
|
var EyeOffIcon = () => icon([
|
|
4558
|
-
(0,
|
|
4559
|
-
(0,
|
|
4560
|
-
(0,
|
|
4660
|
+
(0, import_vue23.h)("path", { d: "M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94" }),
|
|
4661
|
+
(0, import_vue23.h)("path", { d: "M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19" }),
|
|
4662
|
+
(0, import_vue23.h)("line", { x1: "1", x2: "23", y1: "1", y2: "23" })
|
|
4561
4663
|
]);
|
|
4562
4664
|
var CircleAlertIcon = () => icon([
|
|
4563
|
-
(0,
|
|
4564
|
-
(0,
|
|
4565
|
-
(0,
|
|
4665
|
+
(0, import_vue23.h)("circle", { cx: "12", cy: "12", r: "10" }),
|
|
4666
|
+
(0, import_vue23.h)("line", { x1: "12", x2: "12", y1: "8", y2: "12" }),
|
|
4667
|
+
(0, import_vue23.h)("line", { x1: "12", x2: "12.01", y1: "16", y2: "16" })
|
|
4566
4668
|
]);
|
|
4567
|
-
var CircleCheckIcon = () => icon([(0,
|
|
4669
|
+
var CircleCheckIcon = () => icon([(0, import_vue23.h)("path", { d: "M22 11.08V12a10 10 0 1 1-5.93-9.14" }), (0, import_vue23.h)("polyline", { points: "22 4 12 14.01 9 11.01" })]);
|
|
4568
4670
|
var InfoIcon = () => icon([
|
|
4569
|
-
(0,
|
|
4570
|
-
(0,
|
|
4571
|
-
(0,
|
|
4671
|
+
(0, import_vue23.h)("circle", { cx: "12", cy: "12", r: "10" }),
|
|
4672
|
+
(0, import_vue23.h)("line", { x1: "12", x2: "12", y1: "16", y2: "12" }),
|
|
4673
|
+
(0, import_vue23.h)("line", { x1: "12", x2: "12.01", y1: "8", y2: "8" })
|
|
4572
4674
|
]);
|
|
4573
4675
|
var TriangleAlertIcon = () => icon([
|
|
4574
|
-
(0,
|
|
4575
|
-
(0,
|
|
4576
|
-
(0,
|
|
4676
|
+
(0, import_vue23.h)("path", { d: "M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z" }),
|
|
4677
|
+
(0, import_vue23.h)("line", { x1: "12", x2: "12", y1: "9", y2: "13" }),
|
|
4678
|
+
(0, import_vue23.h)("line", { x1: "12", x2: "12.01", y1: "17", y2: "17" })
|
|
4577
4679
|
]);
|
|
4578
|
-
var PlusIcon = () => icon([(0,
|
|
4680
|
+
var PlusIcon = () => icon([(0, import_vue23.h)("line", { x1: "12", x2: "12", y1: "5", y2: "19" }), (0, import_vue23.h)("line", { x1: "5", x2: "19", y1: "12", y2: "12" })]);
|
|
4579
4681
|
var LogOutIcon = () => icon([
|
|
4580
|
-
(0,
|
|
4581
|
-
(0,
|
|
4582
|
-
(0,
|
|
4682
|
+
(0, import_vue23.h)("path", { d: "M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4" }),
|
|
4683
|
+
(0, import_vue23.h)("polyline", { points: "16 17 21 12 16 7" }),
|
|
4684
|
+
(0, import_vue23.h)("line", { x1: "21", x2: "9", y1: "12", y2: "12" })
|
|
4583
4685
|
]);
|
|
4584
|
-
var UserIcon = () => icon([(0,
|
|
4686
|
+
var UserIcon = () => icon([(0, import_vue23.h)("path", { d: "M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2" }), (0, import_vue23.h)("circle", { cx: "12", cy: "7", r: "4" })]);
|
|
4585
4687
|
var ArrowLeftRightIcon = () => icon([
|
|
4586
|
-
(0,
|
|
4587
|
-
(0,
|
|
4588
|
-
(0,
|
|
4688
|
+
(0, import_vue23.h)("polyline", { points: "7 16 3 12 7 8" }),
|
|
4689
|
+
(0, import_vue23.h)("line", { x1: "21", x2: "3", y1: "12", y2: "12" }),
|
|
4690
|
+
(0, import_vue23.h)("polyline", { points: "17 8 21 12 17 16" })
|
|
4589
4691
|
]);
|
|
4590
4692
|
var BuildingIcon = () => icon([
|
|
4591
|
-
(0,
|
|
4592
|
-
(0,
|
|
4593
|
-
(0,
|
|
4594
|
-
(0,
|
|
4595
|
-
(0,
|
|
4596
|
-
(0,
|
|
4597
|
-
(0,
|
|
4598
|
-
(0,
|
|
4693
|
+
(0, import_vue23.h)("rect", { height: "20", rx: "2", ry: "2", width: "16", x: "4", y: "2" }),
|
|
4694
|
+
(0, import_vue23.h)("line", { x1: "9", x2: "9", y1: "6", y2: "6.01" }),
|
|
4695
|
+
(0, import_vue23.h)("line", { x1: "15", x2: "15", y1: "6", y2: "6.01" }),
|
|
4696
|
+
(0, import_vue23.h)("line", { x1: "9", x2: "9", y1: "10", y2: "10.01" }),
|
|
4697
|
+
(0, import_vue23.h)("line", { x1: "15", x2: "15", y1: "10", y2: "10.01" }),
|
|
4698
|
+
(0, import_vue23.h)("line", { x1: "9", x2: "9", y1: "14", y2: "14.01" }),
|
|
4699
|
+
(0, import_vue23.h)("line", { x1: "15", x2: "15", y1: "14", y2: "14.01" }),
|
|
4700
|
+
(0, import_vue23.h)("line", { x1: "9", x2: "15", y1: "18", y2: "18" })
|
|
4599
4701
|
]);
|
|
4600
|
-
var ChevronDownIcon = () => icon([(0,
|
|
4702
|
+
var ChevronDownIcon = () => icon([(0, import_vue23.h)("polyline", { points: "6 9 12 15 18 9" })]);
|
|
4601
4703
|
var GlobeIcon = () => icon([
|
|
4602
|
-
(0,
|
|
4603
|
-
(0,
|
|
4604
|
-
(0,
|
|
4704
|
+
(0, import_vue23.h)("circle", { cx: "12", cy: "12", r: "10" }),
|
|
4705
|
+
(0, import_vue23.h)("line", { x1: "2", x2: "22", y1: "12", y2: "12" }),
|
|
4706
|
+
(0, import_vue23.h)("path", { d: "M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z" })
|
|
4605
4707
|
]);
|
|
4606
|
-
var PencilIcon = () => icon([(0,
|
|
4708
|
+
var PencilIcon = () => icon([(0, import_vue23.h)("path", { d: "M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z" })]);
|
|
4607
4709
|
|
|
4608
4710
|
// src/components/primitives/PasswordField/PasswordField.ts
|
|
4609
|
-
var PasswordField = (0,
|
|
4711
|
+
var PasswordField = (0, import_vue24.defineComponent)({
|
|
4610
4712
|
emits: ["update:modelValue", "blur"],
|
|
4611
4713
|
name: "PasswordField",
|
|
4612
4714
|
props: {
|
|
@@ -4619,7 +4721,7 @@ var PasswordField = (0, import_vue23.defineComponent)({
|
|
|
4619
4721
|
required: { default: false, type: Boolean }
|
|
4620
4722
|
},
|
|
4621
4723
|
setup(props, { emit, attrs }) {
|
|
4622
|
-
const visible = (0,
|
|
4724
|
+
const visible = (0, import_vue24.ref)(false);
|
|
4623
4725
|
return () => {
|
|
4624
4726
|
const hasError = !!props.error;
|
|
4625
4727
|
const wrapperClass = [
|
|
@@ -4627,8 +4729,8 @@ var PasswordField = (0, import_vue23.defineComponent)({
|
|
|
4627
4729
|
hasError ? (0, import_browser19.withVendorCSSClassPrefix)("password-field--error") : "",
|
|
4628
4730
|
attrs["class"] || ""
|
|
4629
4731
|
].filter(Boolean).join(" ");
|
|
4630
|
-
return (0,
|
|
4631
|
-
props.label ? (0,
|
|
4732
|
+
return (0, import_vue24.h)("div", { class: wrapperClass, style: attrs["style"] }, [
|
|
4733
|
+
props.label ? (0, import_vue24.h)(
|
|
4632
4734
|
"label",
|
|
4633
4735
|
{
|
|
4634
4736
|
class: (0, import_browser19.withVendorCSSClassPrefix)("password-field__label"),
|
|
@@ -4636,11 +4738,11 @@ var PasswordField = (0, import_vue23.defineComponent)({
|
|
|
4636
4738
|
},
|
|
4637
4739
|
[
|
|
4638
4740
|
props.label,
|
|
4639
|
-
props.required ? (0,
|
|
4741
|
+
props.required ? (0, import_vue24.h)("span", { class: (0, import_browser19.withVendorCSSClassPrefix)("password-field__required") }, " *") : null
|
|
4640
4742
|
]
|
|
4641
4743
|
) : null,
|
|
4642
|
-
(0,
|
|
4643
|
-
(0,
|
|
4744
|
+
(0, import_vue24.h)("div", { class: (0, import_browser19.withVendorCSSClassPrefix)("password-field__wrapper") }, [
|
|
4745
|
+
(0, import_vue24.h)("input", {
|
|
4644
4746
|
class: (0, import_browser19.withVendorCSSClassPrefix)("password-field__input"),
|
|
4645
4747
|
"data-testid": attrs["data-testid"],
|
|
4646
4748
|
disabled: props.disabled,
|
|
@@ -4653,7 +4755,7 @@ var PasswordField = (0, import_vue23.defineComponent)({
|
|
|
4653
4755
|
type: visible.value ? "text" : "password",
|
|
4654
4756
|
value: props.modelValue
|
|
4655
4757
|
}),
|
|
4656
|
-
(0,
|
|
4758
|
+
(0, import_vue24.h)(
|
|
4657
4759
|
"button",
|
|
4658
4760
|
{
|
|
4659
4761
|
"aria-label": visible.value ? "Hide password" : "Show password",
|
|
@@ -4667,7 +4769,7 @@ var PasswordField = (0, import_vue23.defineComponent)({
|
|
|
4667
4769
|
visible.value ? EyeOffIcon() : EyeIcon()
|
|
4668
4770
|
)
|
|
4669
4771
|
]),
|
|
4670
|
-
hasError ? (0,
|
|
4772
|
+
hasError ? (0, import_vue24.h)("span", { class: (0, import_browser19.withVendorCSSClassPrefix)("password-field__error") }, props.error) : null
|
|
4671
4773
|
]);
|
|
4672
4774
|
};
|
|
4673
4775
|
}
|
|
@@ -4676,8 +4778,8 @@ var PasswordField_default = PasswordField;
|
|
|
4676
4778
|
|
|
4677
4779
|
// src/components/primitives/Select/Select.ts
|
|
4678
4780
|
var import_browser20 = require("@asgardeo/browser");
|
|
4679
|
-
var
|
|
4680
|
-
var Select = (0,
|
|
4781
|
+
var import_vue25 = require("vue");
|
|
4782
|
+
var Select = (0, import_vue25.defineComponent)({
|
|
4681
4783
|
emits: ["update:modelValue"],
|
|
4682
4784
|
name: "AsgardeoSelect",
|
|
4683
4785
|
props: {
|
|
@@ -4701,18 +4803,18 @@ var Select = (0, import_vue24.defineComponent)({
|
|
|
4701
4803
|
].filter(Boolean).join(" ");
|
|
4702
4804
|
let helperContent;
|
|
4703
4805
|
if (hasError) {
|
|
4704
|
-
helperContent = (0,
|
|
4806
|
+
helperContent = (0, import_vue25.h)("span", { class: (0, import_browser20.withVendorCSSClassPrefix)("select__error") }, props.error);
|
|
4705
4807
|
} else if (props.helperText) {
|
|
4706
|
-
helperContent = (0,
|
|
4808
|
+
helperContent = (0, import_vue25.h)("span", { class: (0, import_browser20.withVendorCSSClassPrefix)("select__helper") }, props.helperText);
|
|
4707
4809
|
} else {
|
|
4708
4810
|
helperContent = null;
|
|
4709
4811
|
}
|
|
4710
|
-
return (0,
|
|
4711
|
-
props.label ? (0,
|
|
4812
|
+
return (0, import_vue25.h)("div", { class: wrapperClass, style: attrs["style"] }, [
|
|
4813
|
+
props.label ? (0, import_vue25.h)("label", { class: (0, import_browser20.withVendorCSSClassPrefix)("select__label"), for: props.name }, [
|
|
4712
4814
|
props.label,
|
|
4713
|
-
props.required ? (0,
|
|
4815
|
+
props.required ? (0, import_vue25.h)("span", { class: (0, import_browser20.withVendorCSSClassPrefix)("select__required") }, " *") : null
|
|
4714
4816
|
]) : null,
|
|
4715
|
-
(0,
|
|
4817
|
+
(0, import_vue25.h)(
|
|
4716
4818
|
"select",
|
|
4717
4819
|
{
|
|
4718
4820
|
class: (0, import_browser20.withVendorCSSClassPrefix)("select__input"),
|
|
@@ -4725,8 +4827,8 @@ var Select = (0, import_vue24.defineComponent)({
|
|
|
4725
4827
|
value: props.modelValue
|
|
4726
4828
|
},
|
|
4727
4829
|
[
|
|
4728
|
-
props.placeholder ? (0,
|
|
4729
|
-
...props.options.map((opt) => (0,
|
|
4830
|
+
props.placeholder ? (0, import_vue25.h)("option", { disabled: true, value: "" }, props.placeholder) : null,
|
|
4831
|
+
...props.options.map((opt) => (0, import_vue25.h)("option", { key: opt.value, value: opt.value }, opt.label))
|
|
4730
4832
|
]
|
|
4731
4833
|
),
|
|
4732
4834
|
helperContent
|
|
@@ -4738,8 +4840,8 @@ var Select_default = Select;
|
|
|
4738
4840
|
|
|
4739
4841
|
// src/components/primitives/Checkbox/Checkbox.ts
|
|
4740
4842
|
var import_browser21 = require("@asgardeo/browser");
|
|
4741
|
-
var
|
|
4742
|
-
var Checkbox = (0,
|
|
4843
|
+
var import_vue26 = require("vue");
|
|
4844
|
+
var Checkbox = (0, import_vue26.defineComponent)({
|
|
4743
4845
|
emits: ["update:modelValue"],
|
|
4744
4846
|
name: "AsgardeoCheckbox",
|
|
4745
4847
|
props: {
|
|
@@ -4757,9 +4859,9 @@ var Checkbox = (0, import_vue25.defineComponent)({
|
|
|
4757
4859
|
props.error ? (0, import_browser21.withVendorCSSClassPrefix)("checkbox--error") : "",
|
|
4758
4860
|
attrs["class"] || ""
|
|
4759
4861
|
].filter(Boolean).join(" ");
|
|
4760
|
-
return (0,
|
|
4761
|
-
(0,
|
|
4762
|
-
(0,
|
|
4862
|
+
return (0, import_vue26.h)("div", { class: wrapperClass, style: attrs["style"] }, [
|
|
4863
|
+
(0, import_vue26.h)("label", { class: (0, import_browser21.withVendorCSSClassPrefix)("checkbox__wrapper") }, [
|
|
4864
|
+
(0, import_vue26.h)("input", {
|
|
4763
4865
|
checked: props.modelValue,
|
|
4764
4866
|
class: (0, import_browser21.withVendorCSSClassPrefix)("checkbox__input"),
|
|
4765
4867
|
"data-testid": attrs["data-testid"],
|
|
@@ -4770,9 +4872,9 @@ var Checkbox = (0, import_vue25.defineComponent)({
|
|
|
4770
4872
|
required: props.required,
|
|
4771
4873
|
type: "checkbox"
|
|
4772
4874
|
}),
|
|
4773
|
-
props.label ? (0,
|
|
4875
|
+
props.label ? (0, import_vue26.h)("span", { class: (0, import_browser21.withVendorCSSClassPrefix)("checkbox__label") }, props.label) : null
|
|
4774
4876
|
]),
|
|
4775
|
-
props.error ? (0,
|
|
4877
|
+
props.error ? (0, import_vue26.h)("span", { class: (0, import_browser21.withVendorCSSClassPrefix)("checkbox__error") }, props.error) : null
|
|
4776
4878
|
]);
|
|
4777
4879
|
};
|
|
4778
4880
|
}
|
|
@@ -4781,8 +4883,8 @@ var Checkbox_default = Checkbox;
|
|
|
4781
4883
|
|
|
4782
4884
|
// src/components/primitives/DatePicker/DatePicker.ts
|
|
4783
4885
|
var import_browser22 = require("@asgardeo/browser");
|
|
4784
|
-
var
|
|
4785
|
-
var DatePicker = (0,
|
|
4886
|
+
var import_vue27 = require("vue");
|
|
4887
|
+
var DatePicker = (0, import_vue27.defineComponent)({
|
|
4786
4888
|
emits: ["update:modelValue"],
|
|
4787
4889
|
name: "AsgardeoDatePicker",
|
|
4788
4890
|
props: {
|
|
@@ -4802,12 +4904,12 @@ var DatePicker = (0, import_vue26.defineComponent)({
|
|
|
4802
4904
|
hasError ? (0, import_browser22.withVendorCSSClassPrefix)("date-picker--error") : "",
|
|
4803
4905
|
attrs["class"] || ""
|
|
4804
4906
|
].filter(Boolean).join(" ");
|
|
4805
|
-
return (0,
|
|
4806
|
-
props.label ? (0,
|
|
4907
|
+
return (0, import_vue27.h)("div", { class: wrapperClass, style: attrs["style"] }, [
|
|
4908
|
+
props.label ? (0, import_vue27.h)("label", { class: (0, import_browser22.withVendorCSSClassPrefix)("date-picker__label"), for: props.name }, [
|
|
4807
4909
|
props.label,
|
|
4808
|
-
props.required ? (0,
|
|
4910
|
+
props.required ? (0, import_vue27.h)("span", { class: (0, import_browser22.withVendorCSSClassPrefix)("date-picker__required") }, " *") : null
|
|
4809
4911
|
]) : null,
|
|
4810
|
-
(0,
|
|
4912
|
+
(0, import_vue27.h)("input", {
|
|
4811
4913
|
class: (0, import_browser22.withVendorCSSClassPrefix)("date-picker__input"),
|
|
4812
4914
|
"data-testid": attrs["data-testid"],
|
|
4813
4915
|
disabled: props.disabled,
|
|
@@ -4819,7 +4921,7 @@ var DatePicker = (0, import_vue26.defineComponent)({
|
|
|
4819
4921
|
type: "date",
|
|
4820
4922
|
value: props.modelValue
|
|
4821
4923
|
}),
|
|
4822
|
-
hasError ? (0,
|
|
4924
|
+
hasError ? (0, import_vue27.h)("span", { class: (0, import_browser22.withVendorCSSClassPrefix)("date-picker__error") }, props.error) : null
|
|
4823
4925
|
]);
|
|
4824
4926
|
};
|
|
4825
4927
|
}
|
|
@@ -4828,8 +4930,8 @@ var DatePicker_default = DatePicker;
|
|
|
4828
4930
|
|
|
4829
4931
|
// src/components/primitives/OtpField/OtpField.ts
|
|
4830
4932
|
var import_browser23 = require("@asgardeo/browser");
|
|
4831
|
-
var
|
|
4832
|
-
var OtpField = (0,
|
|
4933
|
+
var import_vue28 = require("vue");
|
|
4934
|
+
var OtpField = (0, import_vue28.defineComponent)({
|
|
4833
4935
|
emits: ["update:modelValue"],
|
|
4834
4936
|
name: "OtpField",
|
|
4835
4937
|
props: {
|
|
@@ -4842,7 +4944,7 @@ var OtpField = (0, import_vue27.defineComponent)({
|
|
|
4842
4944
|
required: { default: false, type: Boolean }
|
|
4843
4945
|
},
|
|
4844
4946
|
setup(props, { emit, attrs }) {
|
|
4845
|
-
const inputRefs = (0,
|
|
4947
|
+
const inputRefs = (0, import_vue28.ref)([]);
|
|
4846
4948
|
const setRef = (el, index) => {
|
|
4847
4949
|
if (el) inputRefs.value[index] = el;
|
|
4848
4950
|
};
|
|
@@ -4855,34 +4957,34 @@ var OtpField = (0, import_vue27.defineComponent)({
|
|
|
4855
4957
|
current[index] = val;
|
|
4856
4958
|
emit("update:modelValue", current.join(""));
|
|
4857
4959
|
if (val && index < props.length - 1) {
|
|
4858
|
-
(0,
|
|
4960
|
+
(0, import_vue28.nextTick)(() => inputRefs.value[index + 1]?.focus());
|
|
4859
4961
|
}
|
|
4860
4962
|
};
|
|
4861
4963
|
const handleKeydown = (index, e) => {
|
|
4862
4964
|
if (e.key === "Backspace" && !e.target.value && index > 0) {
|
|
4863
|
-
(0,
|
|
4965
|
+
(0, import_vue28.nextTick)(() => inputRefs.value[index - 1]?.focus());
|
|
4864
4966
|
}
|
|
4865
4967
|
};
|
|
4866
4968
|
return () => {
|
|
4867
4969
|
const digits = (props.modelValue || "").split("");
|
|
4868
4970
|
while (digits.length < props.length) digits.push("");
|
|
4869
|
-
return (0,
|
|
4971
|
+
return (0, import_vue28.h)(
|
|
4870
4972
|
"div",
|
|
4871
4973
|
{
|
|
4872
4974
|
class: [(0, import_browser23.withVendorCSSClassPrefix)("otp-field"), attrs["class"] || ""].filter(Boolean).join(" "),
|
|
4873
4975
|
style: attrs["style"]
|
|
4874
4976
|
},
|
|
4875
4977
|
[
|
|
4876
|
-
props.label ? (0,
|
|
4978
|
+
props.label ? (0, import_vue28.h)("label", { class: (0, import_browser23.withVendorCSSClassPrefix)("otp-field__label") }, [
|
|
4877
4979
|
props.label,
|
|
4878
|
-
props.required ? (0,
|
|
4980
|
+
props.required ? (0, import_vue28.h)("span", { class: (0, import_browser23.withVendorCSSClassPrefix)("otp-field__required") }, " *") : null
|
|
4879
4981
|
]) : null,
|
|
4880
|
-
(0,
|
|
4982
|
+
(0, import_vue28.h)(
|
|
4881
4983
|
"div",
|
|
4882
4984
|
{ class: (0, import_browser23.withVendorCSSClassPrefix)("otp-field__inputs") },
|
|
4883
4985
|
Array.from(
|
|
4884
4986
|
{ length: props.length },
|
|
4885
|
-
(_, i) => (0,
|
|
4987
|
+
(_, i) => (0, import_vue28.h)("input", {
|
|
4886
4988
|
"aria-label": `Digit ${i + 1}`,
|
|
4887
4989
|
class: (0, import_browser23.withVendorCSSClassPrefix)("otp-field__digit"),
|
|
4888
4990
|
disabled: props.disabled,
|
|
@@ -4897,7 +4999,7 @@ var OtpField = (0, import_vue27.defineComponent)({
|
|
|
4897
4999
|
})
|
|
4898
5000
|
)
|
|
4899
5001
|
),
|
|
4900
|
-
props.error ? (0,
|
|
5002
|
+
props.error ? (0, import_vue28.h)("span", { class: (0, import_browser23.withVendorCSSClassPrefix)("otp-field__error") }, props.error) : null
|
|
4901
5003
|
]
|
|
4902
5004
|
);
|
|
4903
5005
|
};
|
|
@@ -4907,8 +5009,8 @@ var OtpField_default = OtpField;
|
|
|
4907
5009
|
|
|
4908
5010
|
// src/components/primitives/Typography/Typography.ts
|
|
4909
5011
|
var import_browser24 = require("@asgardeo/browser");
|
|
4910
|
-
var
|
|
4911
|
-
var Typography = (0,
|
|
5012
|
+
var import_vue29 = require("vue");
|
|
5013
|
+
var Typography = (0, import_vue29.defineComponent)({
|
|
4912
5014
|
name: "Typography",
|
|
4913
5015
|
props: {
|
|
4914
5016
|
component: {
|
|
@@ -4937,7 +5039,7 @@ var Typography = (0, import_vue28.defineComponent)({
|
|
|
4937
5039
|
subtitle2: "h6"
|
|
4938
5040
|
};
|
|
4939
5041
|
const tag = props.component || tagMap[props.variant] || "p";
|
|
4940
|
-
return (0,
|
|
5042
|
+
return (0, import_vue29.h)(
|
|
4941
5043
|
tag,
|
|
4942
5044
|
{
|
|
4943
5045
|
class: [
|
|
@@ -4956,8 +5058,8 @@ var Typography_default = Typography;
|
|
|
4956
5058
|
|
|
4957
5059
|
// src/components/primitives/Divider/Divider.ts
|
|
4958
5060
|
var import_browser25 = require("@asgardeo/browser");
|
|
4959
|
-
var
|
|
4960
|
-
var Divider = (0,
|
|
5061
|
+
var import_vue30 = require("vue");
|
|
5062
|
+
var Divider = (0, import_vue30.defineComponent)({
|
|
4961
5063
|
name: "Divider",
|
|
4962
5064
|
props: {
|
|
4963
5065
|
orientation: {
|
|
@@ -4975,13 +5077,13 @@ var Divider = (0, import_vue29.defineComponent)({
|
|
|
4975
5077
|
attrs["class"] || ""
|
|
4976
5078
|
].filter(Boolean).join(" ");
|
|
4977
5079
|
if (hasContent) {
|
|
4978
|
-
return (0,
|
|
4979
|
-
(0,
|
|
4980
|
-
(0,
|
|
4981
|
-
(0,
|
|
5080
|
+
return (0, import_vue30.h)("div", { class: cssClass, role: "separator", style: attrs["style"] }, [
|
|
5081
|
+
(0, import_vue30.h)("span", { class: (0, import_browser25.withVendorCSSClassPrefix)("divider__line") }),
|
|
5082
|
+
(0, import_vue30.h)("span", { class: (0, import_browser25.withVendorCSSClassPrefix)("divider__content") }, slots["default"]?.()),
|
|
5083
|
+
(0, import_vue30.h)("span", { class: (0, import_browser25.withVendorCSSClassPrefix)("divider__line") })
|
|
4982
5084
|
]);
|
|
4983
5085
|
}
|
|
4984
|
-
return (0,
|
|
5086
|
+
return (0, import_vue30.h)("hr", { class: cssClass, role: "separator", style: attrs["style"] });
|
|
4985
5087
|
};
|
|
4986
5088
|
}
|
|
4987
5089
|
});
|
|
@@ -4989,8 +5091,8 @@ var Divider_default = Divider;
|
|
|
4989
5091
|
|
|
4990
5092
|
// src/components/primitives/Logo/Logo.ts
|
|
4991
5093
|
var import_browser26 = require("@asgardeo/browser");
|
|
4992
|
-
var
|
|
4993
|
-
var Logo = (0,
|
|
5094
|
+
var import_vue31 = require("vue");
|
|
5095
|
+
var Logo = (0, import_vue31.defineComponent)({
|
|
4994
5096
|
name: "Logo",
|
|
4995
5097
|
props: {
|
|
4996
5098
|
alt: { default: "Logo", type: String },
|
|
@@ -5001,7 +5103,7 @@ var Logo = (0, import_vue30.defineComponent)({
|
|
|
5001
5103
|
},
|
|
5002
5104
|
setup(props, { attrs }) {
|
|
5003
5105
|
return () => {
|
|
5004
|
-
const img = (0,
|
|
5106
|
+
const img = (0, import_vue31.h)("img", {
|
|
5005
5107
|
alt: props.alt,
|
|
5006
5108
|
class: (0, import_browser26.withVendorCSSClassPrefix)("logo__image"),
|
|
5007
5109
|
height: props.height,
|
|
@@ -5009,7 +5111,7 @@ var Logo = (0, import_vue30.defineComponent)({
|
|
|
5009
5111
|
width: props.width
|
|
5010
5112
|
});
|
|
5011
5113
|
if (props.href) {
|
|
5012
|
-
return (0,
|
|
5114
|
+
return (0, import_vue31.h)(
|
|
5013
5115
|
"a",
|
|
5014
5116
|
{
|
|
5015
5117
|
class: [(0, import_browser26.withVendorCSSClassPrefix)("logo"), attrs["class"] || ""].filter(Boolean).join(" "),
|
|
@@ -5019,7 +5121,7 @@ var Logo = (0, import_vue30.defineComponent)({
|
|
|
5019
5121
|
[img]
|
|
5020
5122
|
);
|
|
5021
5123
|
}
|
|
5022
|
-
return (0,
|
|
5124
|
+
return (0, import_vue31.h)(
|
|
5023
5125
|
"div",
|
|
5024
5126
|
{
|
|
5025
5127
|
class: [(0, import_browser26.withVendorCSSClassPrefix)("logo"), attrs["class"] || ""].filter(Boolean).join(" "),
|
|
@@ -5034,8 +5136,8 @@ var Logo_default = Logo;
|
|
|
5034
5136
|
|
|
5035
5137
|
// src/components/primitives/Spinner/Spinner.ts
|
|
5036
5138
|
var import_browser27 = require("@asgardeo/browser");
|
|
5037
|
-
var
|
|
5038
|
-
var Spinner = (0,
|
|
5139
|
+
var import_vue32 = require("vue");
|
|
5140
|
+
var Spinner = (0, import_vue32.defineComponent)({
|
|
5039
5141
|
name: "Spinner",
|
|
5040
5142
|
props: {
|
|
5041
5143
|
size: {
|
|
@@ -5044,7 +5146,7 @@ var Spinner = (0, import_vue31.defineComponent)({
|
|
|
5044
5146
|
}
|
|
5045
5147
|
},
|
|
5046
5148
|
setup(props, { attrs }) {
|
|
5047
|
-
return () => (0,
|
|
5149
|
+
return () => (0, import_vue32.h)(
|
|
5048
5150
|
"div",
|
|
5049
5151
|
{
|
|
5050
5152
|
"aria-label": "Loading",
|
|
@@ -5057,7 +5159,7 @@ var Spinner = (0, import_vue31.defineComponent)({
|
|
|
5057
5159
|
style: attrs["style"]
|
|
5058
5160
|
},
|
|
5059
5161
|
[
|
|
5060
|
-
(0,
|
|
5162
|
+
(0, import_vue32.h)(
|
|
5061
5163
|
"svg",
|
|
5062
5164
|
{
|
|
5063
5165
|
class: (0, import_browser27.withVendorCSSClassPrefix)("spinner__svg"),
|
|
@@ -5066,7 +5168,7 @@ var Spinner = (0, import_vue31.defineComponent)({
|
|
|
5066
5168
|
xmlns: "http://www.w3.org/2000/svg"
|
|
5067
5169
|
},
|
|
5068
5170
|
[
|
|
5069
|
-
(0,
|
|
5171
|
+
(0, import_vue32.h)("circle", {
|
|
5070
5172
|
class: (0, import_browser27.withVendorCSSClassPrefix)("spinner__circle"),
|
|
5071
5173
|
cx: "12",
|
|
5072
5174
|
cy: "12",
|
|
@@ -5086,12 +5188,12 @@ var Spinner_default = Spinner;
|
|
|
5086
5188
|
|
|
5087
5189
|
// src/components/actions/SignInButton.ts
|
|
5088
5190
|
var import_browser29 = require("@asgardeo/browser");
|
|
5089
|
-
var
|
|
5191
|
+
var import_vue34 = require("vue");
|
|
5090
5192
|
|
|
5091
5193
|
// src/components/actions/BaseSignInButton.ts
|
|
5092
5194
|
var import_browser28 = require("@asgardeo/browser");
|
|
5093
|
-
var
|
|
5094
|
-
var BaseSignInButton = (0,
|
|
5195
|
+
var import_vue33 = require("vue");
|
|
5196
|
+
var BaseSignInButton = (0, import_vue33.defineComponent)({
|
|
5095
5197
|
emits: ["click"],
|
|
5096
5198
|
name: "BaseSignInButton",
|
|
5097
5199
|
props: {
|
|
@@ -5120,7 +5222,7 @@ var BaseSignInButton = (0, import_vue32.defineComponent)({
|
|
|
5120
5222
|
};
|
|
5121
5223
|
return () => {
|
|
5122
5224
|
if (props.unstyled) {
|
|
5123
|
-
return (0,
|
|
5225
|
+
return (0, import_vue33.h)(
|
|
5124
5226
|
"button",
|
|
5125
5227
|
{
|
|
5126
5228
|
class: [(0, import_browser28.withVendorCSSClassPrefix)("sign-in-button-wrapper"), attrs["class"] || ""].filter(Boolean).join(" "),
|
|
@@ -5132,7 +5234,7 @@ var BaseSignInButton = (0, import_vue32.defineComponent)({
|
|
|
5132
5234
|
slots["default"] ? slots["default"]({ isLoading: props.isLoading }) : "Sign In"
|
|
5133
5235
|
);
|
|
5134
5236
|
}
|
|
5135
|
-
return (0,
|
|
5237
|
+
return (0, import_vue33.h)(
|
|
5136
5238
|
Button_default,
|
|
5137
5239
|
{
|
|
5138
5240
|
class: [(0, import_browser28.withVendorCSSClassPrefix)("sign-in-button"), attrs["class"] || ""].filter(Boolean).join(" "),
|
|
@@ -5150,7 +5252,7 @@ var BaseSignInButton = (0, import_vue32.defineComponent)({
|
|
|
5150
5252
|
var BaseSignInButton_default = BaseSignInButton;
|
|
5151
5253
|
|
|
5152
5254
|
// src/components/actions/SignInButton.ts
|
|
5153
|
-
var SignInButton = (0,
|
|
5255
|
+
var SignInButton = (0, import_vue34.defineComponent)({
|
|
5154
5256
|
emits: ["click", "error"],
|
|
5155
5257
|
name: "SignInButton",
|
|
5156
5258
|
props: {
|
|
@@ -5158,7 +5260,7 @@ var SignInButton = (0, import_vue33.defineComponent)({
|
|
|
5158
5260
|
},
|
|
5159
5261
|
setup(props, { slots, emit, attrs }) {
|
|
5160
5262
|
const { signIn, signInUrl, signInOptions: contextSignInOptions } = useAsgardeo_default();
|
|
5161
|
-
const isLoading = (0,
|
|
5263
|
+
const isLoading = (0, import_vue34.ref)(false);
|
|
5162
5264
|
const handleSignIn = async (e) => {
|
|
5163
5265
|
try {
|
|
5164
5266
|
isLoading.value = true;
|
|
@@ -5182,7 +5284,7 @@ var SignInButton = (0, import_vue33.defineComponent)({
|
|
|
5182
5284
|
};
|
|
5183
5285
|
return () => {
|
|
5184
5286
|
const slotContent = slots["default"] ? () => slots["default"]({ isLoading: isLoading.value }) : void 0;
|
|
5185
|
-
return (0,
|
|
5287
|
+
return (0, import_vue34.h)(
|
|
5186
5288
|
BaseSignInButton_default,
|
|
5187
5289
|
{
|
|
5188
5290
|
class: attrs["class"],
|
|
@@ -5199,12 +5301,12 @@ var SignInButton_default = SignInButton;
|
|
|
5199
5301
|
|
|
5200
5302
|
// src/components/actions/SignOutButton.ts
|
|
5201
5303
|
var import_browser31 = require("@asgardeo/browser");
|
|
5202
|
-
var
|
|
5304
|
+
var import_vue36 = require("vue");
|
|
5203
5305
|
|
|
5204
5306
|
// src/components/actions/BaseSignOutButton.ts
|
|
5205
5307
|
var import_browser30 = require("@asgardeo/browser");
|
|
5206
|
-
var
|
|
5207
|
-
var BaseSignOutButton = (0,
|
|
5308
|
+
var import_vue35 = require("vue");
|
|
5309
|
+
var BaseSignOutButton = (0, import_vue35.defineComponent)({
|
|
5208
5310
|
emits: ["click"],
|
|
5209
5311
|
name: "BaseSignOutButton",
|
|
5210
5312
|
props: {
|
|
@@ -5233,7 +5335,7 @@ var BaseSignOutButton = (0, import_vue34.defineComponent)({
|
|
|
5233
5335
|
};
|
|
5234
5336
|
return () => {
|
|
5235
5337
|
if (props.unstyled) {
|
|
5236
|
-
return (0,
|
|
5338
|
+
return (0, import_vue35.h)(
|
|
5237
5339
|
"button",
|
|
5238
5340
|
{
|
|
5239
5341
|
class: [(0, import_browser30.withVendorCSSClassPrefix)("sign-out-button-wrapper"), attrs["class"] || ""].filter(Boolean).join(" "),
|
|
@@ -5245,7 +5347,7 @@ var BaseSignOutButton = (0, import_vue34.defineComponent)({
|
|
|
5245
5347
|
slots["default"] ? slots["default"]({ isLoading: props.isLoading }) : "Sign Out"
|
|
5246
5348
|
);
|
|
5247
5349
|
}
|
|
5248
|
-
return (0,
|
|
5350
|
+
return (0, import_vue35.h)(
|
|
5249
5351
|
Button_default,
|
|
5250
5352
|
{
|
|
5251
5353
|
class: [(0, import_browser30.withVendorCSSClassPrefix)("sign-out-button"), attrs["class"] || ""].filter(Boolean).join(" "),
|
|
@@ -5263,12 +5365,12 @@ var BaseSignOutButton = (0, import_vue34.defineComponent)({
|
|
|
5263
5365
|
var BaseSignOutButton_default = BaseSignOutButton;
|
|
5264
5366
|
|
|
5265
5367
|
// src/components/actions/SignOutButton.ts
|
|
5266
|
-
var SignOutButton = (0,
|
|
5368
|
+
var SignOutButton = (0, import_vue36.defineComponent)({
|
|
5267
5369
|
emits: ["click", "error"],
|
|
5268
5370
|
name: "SignOutButton",
|
|
5269
5371
|
setup(_, { slots, emit, attrs }) {
|
|
5270
5372
|
const { signOut } = useAsgardeo_default();
|
|
5271
|
-
const isLoading = (0,
|
|
5373
|
+
const isLoading = (0, import_vue36.ref)(false);
|
|
5272
5374
|
const handleSignOut = async (e) => {
|
|
5273
5375
|
try {
|
|
5274
5376
|
isLoading.value = true;
|
|
@@ -5288,7 +5390,7 @@ var SignOutButton = (0, import_vue35.defineComponent)({
|
|
|
5288
5390
|
};
|
|
5289
5391
|
return () => {
|
|
5290
5392
|
const slotContent = slots["default"] ? () => slots["default"]({ isLoading: isLoading.value }) : void 0;
|
|
5291
|
-
return (0,
|
|
5393
|
+
return (0, import_vue36.h)(
|
|
5292
5394
|
BaseSignOutButton_default,
|
|
5293
5395
|
{
|
|
5294
5396
|
class: attrs["class"],
|
|
@@ -5305,12 +5407,12 @@ var SignOutButton_default = SignOutButton;
|
|
|
5305
5407
|
|
|
5306
5408
|
// src/components/actions/SignUpButton.ts
|
|
5307
5409
|
var import_browser33 = require("@asgardeo/browser");
|
|
5308
|
-
var
|
|
5410
|
+
var import_vue38 = require("vue");
|
|
5309
5411
|
|
|
5310
5412
|
// src/components/actions/BaseSignUpButton.ts
|
|
5311
5413
|
var import_browser32 = require("@asgardeo/browser");
|
|
5312
|
-
var
|
|
5313
|
-
var BaseSignUpButton = (0,
|
|
5414
|
+
var import_vue37 = require("vue");
|
|
5415
|
+
var BaseSignUpButton = (0, import_vue37.defineComponent)({
|
|
5314
5416
|
emits: ["click"],
|
|
5315
5417
|
name: "BaseSignUpButton",
|
|
5316
5418
|
props: {
|
|
@@ -5339,7 +5441,7 @@ var BaseSignUpButton = (0, import_vue36.defineComponent)({
|
|
|
5339
5441
|
};
|
|
5340
5442
|
return () => {
|
|
5341
5443
|
if (props.unstyled) {
|
|
5342
|
-
return (0,
|
|
5444
|
+
return (0, import_vue37.h)(
|
|
5343
5445
|
"button",
|
|
5344
5446
|
{
|
|
5345
5447
|
class: [(0, import_browser32.withVendorCSSClassPrefix)("sign-up-button-wrapper"), attrs["class"] || ""].filter(Boolean).join(" "),
|
|
@@ -5351,7 +5453,7 @@ var BaseSignUpButton = (0, import_vue36.defineComponent)({
|
|
|
5351
5453
|
slots["default"] ? slots["default"]({ isLoading: props.isLoading }) : "Sign Up"
|
|
5352
5454
|
);
|
|
5353
5455
|
}
|
|
5354
|
-
return (0,
|
|
5456
|
+
return (0, import_vue37.h)(
|
|
5355
5457
|
Button_default,
|
|
5356
5458
|
{
|
|
5357
5459
|
class: [(0, import_browser32.withVendorCSSClassPrefix)("sign-up-button"), attrs["class"] || ""].filter(Boolean).join(" "),
|
|
@@ -5371,12 +5473,12 @@ var BaseSignUpButton = (0, import_vue36.defineComponent)({
|
|
|
5371
5473
|
var BaseSignUpButton_default = BaseSignUpButton;
|
|
5372
5474
|
|
|
5373
5475
|
// src/components/actions/SignUpButton.ts
|
|
5374
|
-
var SignUpButton = (0,
|
|
5476
|
+
var SignUpButton = (0, import_vue38.defineComponent)({
|
|
5375
5477
|
emits: ["click", "error"],
|
|
5376
5478
|
name: "SignUpButton",
|
|
5377
5479
|
setup(_, { slots, emit, attrs }) {
|
|
5378
5480
|
const { signUp, signUpUrl } = useAsgardeo_default();
|
|
5379
|
-
const isLoading = (0,
|
|
5481
|
+
const isLoading = (0, import_vue38.ref)(false);
|
|
5380
5482
|
const handleSignUp = async (e) => {
|
|
5381
5483
|
try {
|
|
5382
5484
|
isLoading.value = true;
|
|
@@ -5400,7 +5502,7 @@ var SignUpButton = (0, import_vue37.defineComponent)({
|
|
|
5400
5502
|
};
|
|
5401
5503
|
return () => {
|
|
5402
5504
|
const slotContent = slots["default"] ? () => slots["default"]({ isLoading: isLoading.value }) : void 0;
|
|
5403
|
-
return (0,
|
|
5505
|
+
return (0, import_vue38.h)(
|
|
5404
5506
|
BaseSignUpButton_default,
|
|
5405
5507
|
{
|
|
5406
5508
|
class: attrs["class"],
|
|
@@ -5417,9 +5519,9 @@ var SignUpButton_default = SignUpButton;
|
|
|
5417
5519
|
|
|
5418
5520
|
// src/components/auth/Callback.ts
|
|
5419
5521
|
var import_browser34 = require("@asgardeo/browser");
|
|
5420
|
-
var
|
|
5522
|
+
var import_vue39 = require("vue");
|
|
5421
5523
|
var logger4 = createVueLogger("Callback");
|
|
5422
|
-
var Callback = (0,
|
|
5524
|
+
var Callback = (0, import_vue39.defineComponent)({
|
|
5423
5525
|
name: "Callback",
|
|
5424
5526
|
props: {
|
|
5425
5527
|
onError: { default: void 0, type: Function },
|
|
@@ -5433,7 +5535,7 @@ var Callback = (0, import_vue38.defineComponent)({
|
|
|
5433
5535
|
(0, import_browser34.navigate)(path);
|
|
5434
5536
|
}
|
|
5435
5537
|
};
|
|
5436
|
-
(0,
|
|
5538
|
+
(0, import_vue39.onMounted)(() => {
|
|
5437
5539
|
let returnPath = "/";
|
|
5438
5540
|
try {
|
|
5439
5541
|
const urlParams = new URLSearchParams(window.location.search);
|
|
@@ -5509,90 +5611,90 @@ var Callback = (0, import_vue38.defineComponent)({
|
|
|
5509
5611
|
var Callback_default = Callback;
|
|
5510
5612
|
|
|
5511
5613
|
// src/components/control/SignedIn.ts
|
|
5512
|
-
var
|
|
5513
|
-
var SignedIn = (0,
|
|
5614
|
+
var import_vue40 = require("vue");
|
|
5615
|
+
var SignedIn = (0, import_vue40.defineComponent)({
|
|
5514
5616
|
name: "SignedIn",
|
|
5515
5617
|
setup(_props, { slots }) {
|
|
5516
5618
|
const { isSignedIn } = useAsgardeo_default();
|
|
5517
5619
|
return () => {
|
|
5518
5620
|
if (!isSignedIn.value) {
|
|
5519
5621
|
const fallbackContent = slots["fallback"]?.();
|
|
5520
|
-
return fallbackContent ? (0,
|
|
5622
|
+
return fallbackContent ? (0, import_vue40.h)(import_vue40.Fragment, {}, fallbackContent) : null;
|
|
5521
5623
|
}
|
|
5522
5624
|
const defaultContent = slots["default"]?.();
|
|
5523
|
-
return defaultContent ? (0,
|
|
5625
|
+
return defaultContent ? (0, import_vue40.h)(import_vue40.Fragment, {}, defaultContent) : null;
|
|
5524
5626
|
};
|
|
5525
5627
|
}
|
|
5526
5628
|
});
|
|
5527
5629
|
var SignedIn_default = SignedIn;
|
|
5528
5630
|
|
|
5529
5631
|
// src/components/control/SignedOut.ts
|
|
5530
|
-
var
|
|
5531
|
-
var SignedOut = (0,
|
|
5632
|
+
var import_vue41 = require("vue");
|
|
5633
|
+
var SignedOut = (0, import_vue41.defineComponent)({
|
|
5532
5634
|
name: "SignedOut",
|
|
5533
5635
|
setup(_props, { slots }) {
|
|
5534
5636
|
const { isSignedIn } = useAsgardeo_default();
|
|
5535
5637
|
return () => {
|
|
5536
5638
|
if (isSignedIn.value) {
|
|
5537
5639
|
const fallbackContent = slots["fallback"]?.();
|
|
5538
|
-
return fallbackContent ? (0,
|
|
5640
|
+
return fallbackContent ? (0, import_vue41.h)(import_vue41.Fragment, {}, fallbackContent) : null;
|
|
5539
5641
|
}
|
|
5540
5642
|
const defaultContent = slots["default"]?.();
|
|
5541
|
-
return defaultContent ? (0,
|
|
5643
|
+
return defaultContent ? (0, import_vue41.h)(import_vue41.Fragment, {}, defaultContent) : null;
|
|
5542
5644
|
};
|
|
5543
5645
|
}
|
|
5544
5646
|
});
|
|
5545
5647
|
var SignedOut_default = SignedOut;
|
|
5546
5648
|
|
|
5547
5649
|
// src/components/control/Loading.ts
|
|
5548
|
-
var
|
|
5549
|
-
var Loading = (0,
|
|
5650
|
+
var import_vue42 = require("vue");
|
|
5651
|
+
var Loading = (0, import_vue42.defineComponent)({
|
|
5550
5652
|
name: "Loading",
|
|
5551
5653
|
setup(_props, { slots }) {
|
|
5552
5654
|
const { isLoading } = useAsgardeo_default();
|
|
5553
5655
|
return () => {
|
|
5554
5656
|
if (!isLoading.value) {
|
|
5555
5657
|
const fallbackContent = slots["fallback"]?.();
|
|
5556
|
-
return fallbackContent ? (0,
|
|
5658
|
+
return fallbackContent ? (0, import_vue42.h)(import_vue42.Fragment, {}, fallbackContent) : null;
|
|
5557
5659
|
}
|
|
5558
5660
|
const defaultContent = slots["default"]?.();
|
|
5559
|
-
return defaultContent ? (0,
|
|
5661
|
+
return defaultContent ? (0, import_vue42.h)(import_vue42.Fragment, {}, defaultContent) : null;
|
|
5560
5662
|
};
|
|
5561
5663
|
}
|
|
5562
5664
|
});
|
|
5563
5665
|
var Loading_default = Loading;
|
|
5564
5666
|
|
|
5565
5667
|
// src/components/control/user/User.ts
|
|
5566
|
-
var
|
|
5567
|
-
var User5 = (0,
|
|
5668
|
+
var import_vue43 = require("vue");
|
|
5669
|
+
var User5 = (0, import_vue43.defineComponent)({
|
|
5568
5670
|
name: "User",
|
|
5569
5671
|
setup(_props, { slots }) {
|
|
5570
5672
|
const { user } = useAsgardeo_default();
|
|
5571
5673
|
return () => {
|
|
5572
5674
|
if (!user.value) {
|
|
5573
5675
|
const fallbackContent = slots["fallback"]?.();
|
|
5574
|
-
return fallbackContent ? (0,
|
|
5676
|
+
return fallbackContent ? (0, import_vue43.h)(import_vue43.Fragment, {}, fallbackContent) : null;
|
|
5575
5677
|
}
|
|
5576
5678
|
const defaultContent = slots["default"]?.({ user: user.value });
|
|
5577
|
-
return defaultContent ? (0,
|
|
5679
|
+
return defaultContent ? (0, import_vue43.h)(import_vue43.Fragment, {}, defaultContent) : null;
|
|
5578
5680
|
};
|
|
5579
5681
|
}
|
|
5580
5682
|
});
|
|
5581
5683
|
var User_default = User5;
|
|
5582
5684
|
|
|
5583
5685
|
// src/components/control/organization/Organization.ts
|
|
5584
|
-
var
|
|
5585
|
-
var Organization5 = (0,
|
|
5686
|
+
var import_vue44 = require("vue");
|
|
5687
|
+
var Organization5 = (0, import_vue44.defineComponent)({
|
|
5586
5688
|
name: "Organization",
|
|
5587
5689
|
setup(_props, { slots }) {
|
|
5588
5690
|
const { currentOrganization } = useOrganization_default();
|
|
5589
5691
|
return () => {
|
|
5590
5692
|
if (!currentOrganization?.value) {
|
|
5591
5693
|
const fallbackContent = slots["fallback"]?.();
|
|
5592
|
-
return fallbackContent ? (0,
|
|
5694
|
+
return fallbackContent ? (0, import_vue44.h)(import_vue44.Fragment, {}, fallbackContent) : null;
|
|
5593
5695
|
}
|
|
5594
5696
|
const defaultContent = slots["default"]?.({ organization: currentOrganization.value });
|
|
5595
|
-
return defaultContent ? (0,
|
|
5697
|
+
return defaultContent ? (0, import_vue44.h)(import_vue44.Fragment, {}, defaultContent) : null;
|
|
5596
5698
|
};
|
|
5597
5699
|
}
|
|
5598
5700
|
});
|
|
@@ -5600,22 +5702,22 @@ var Organization_default = Organization5;
|
|
|
5600
5702
|
|
|
5601
5703
|
// src/components/presentation/sign-in/SignIn.ts
|
|
5602
5704
|
var import_browser44 = require("@asgardeo/browser");
|
|
5603
|
-
var
|
|
5705
|
+
var import_vue56 = require("vue");
|
|
5604
5706
|
|
|
5605
5707
|
// src/components/presentation/sign-in/v1/SignIn.ts
|
|
5606
|
-
var
|
|
5708
|
+
var import_vue52 = require("vue");
|
|
5607
5709
|
|
|
5608
5710
|
// src/components/presentation/sign-in/v1/BaseSignIn.ts
|
|
5609
5711
|
var import_browser37 = require("@asgardeo/browser");
|
|
5610
|
-
var
|
|
5712
|
+
var import_vue51 = require("vue");
|
|
5611
5713
|
|
|
5612
5714
|
// src/components/presentation/sign-in/v1/options/SignInOptionFactory.ts
|
|
5613
5715
|
var import_browser36 = require("@asgardeo/browser");
|
|
5614
|
-
var
|
|
5716
|
+
var import_vue50 = require("vue");
|
|
5615
5717
|
|
|
5616
5718
|
// src/components/adapters/FacebookButton.ts
|
|
5617
|
-
var
|
|
5618
|
-
var FacebookButton = (0,
|
|
5719
|
+
var import_vue45 = require("vue");
|
|
5720
|
+
var FacebookButton = (0, import_vue45.defineComponent)({
|
|
5619
5721
|
emits: ["click"],
|
|
5620
5722
|
name: "FacebookButton",
|
|
5621
5723
|
props: {
|
|
@@ -5623,17 +5725,17 @@ var FacebookButton = (0, import_vue44.defineComponent)({
|
|
|
5623
5725
|
},
|
|
5624
5726
|
setup(props, { slots, emit, attrs }) {
|
|
5625
5727
|
const { t } = useI18n_default();
|
|
5626
|
-
const facebookIcon = () => (0,
|
|
5627
|
-
(0,
|
|
5728
|
+
const facebookIcon = () => (0, import_vue45.h)("svg", { height: "18", viewBox: "0 0 512 512", width: "18", xmlns: "http://www.w3.org/2000/svg" }, [
|
|
5729
|
+
(0, import_vue45.h)("path", {
|
|
5628
5730
|
d: "M448,0H64C28.704,0,0,28.704,0,64v384c0,35.296,28.704,64,64,64h384c35.296,0,64-28.704,64-64V64C512,28.704,483.296,0,448,0z",
|
|
5629
5731
|
fill: "#1976D2"
|
|
5630
5732
|
}),
|
|
5631
|
-
(0,
|
|
5733
|
+
(0, import_vue45.h)("path", {
|
|
5632
5734
|
d: "M432,256h-80v-64c0-17.664,14.336-16,32-16h32V96h-64l0,0c-53.024,0-96,42.976-96,96v64h-64v80h64v176h96V336h48L432,256z",
|
|
5633
5735
|
fill: "#FAFAFA"
|
|
5634
5736
|
})
|
|
5635
5737
|
]);
|
|
5636
|
-
return () => (0,
|
|
5738
|
+
return () => (0, import_vue45.h)(
|
|
5637
5739
|
Button_default,
|
|
5638
5740
|
{
|
|
5639
5741
|
...attrs,
|
|
@@ -5652,8 +5754,8 @@ var FacebookButton = (0, import_vue44.defineComponent)({
|
|
|
5652
5754
|
var FacebookButton_default = FacebookButton;
|
|
5653
5755
|
|
|
5654
5756
|
// src/components/adapters/GitHubButton.ts
|
|
5655
|
-
var
|
|
5656
|
-
var GitHubButton = (0,
|
|
5757
|
+
var import_vue46 = require("vue");
|
|
5758
|
+
var GitHubButton = (0, import_vue46.defineComponent)({
|
|
5657
5759
|
emits: ["click"],
|
|
5658
5760
|
name: "GitHubButton",
|
|
5659
5761
|
props: {
|
|
@@ -5661,15 +5763,15 @@ var GitHubButton = (0, import_vue45.defineComponent)({
|
|
|
5661
5763
|
},
|
|
5662
5764
|
setup(props, { slots, emit, attrs }) {
|
|
5663
5765
|
const { t } = useI18n_default();
|
|
5664
|
-
const gitHubIcon = () => (0,
|
|
5665
|
-
(0,
|
|
5666
|
-
(0,
|
|
5766
|
+
const gitHubIcon = () => (0, import_vue46.h)("svg", { height: "18", viewBox: "0 0 67.91 66.233", width: "18", xmlns: "http://www.w3.org/2000/svg" }, [
|
|
5767
|
+
(0, import_vue46.h)("g", { transform: "translate(-386.96 658.072)" }, [
|
|
5768
|
+
(0, import_vue46.h)("path", {
|
|
5667
5769
|
d: "M420.915-658.072a33.956,33.956,0,0,0-33.955,33.955,33.963,33.963,0,0,0,23.221,32.22c1.7.314,2.32-.737,2.32-1.633,0-.81-.031-3.484-.046-6.322-9.446,2.054-11.44-4.006-11.44-4.006-1.545-3.925-3.77-4.968-3.77-4.968-3.081-2.107.232-2.064.232-2.064,3.41.239,5.205,3.5,5.205,3.5,3.028,5.19,7.943,3.69,9.881,2.822a7.23,7.23,0,0,1,2.156-4.54c-7.542-.859-15.47-3.77-15.47-16.781a13.141,13.141,0,0,1,3.5-9.114,12.2,12.2,0,0,1,.329-8.986s2.851-.913,9.34,3.48a32.545,32.545,0,0,1,8.5-1.143,32.629,32.629,0,0,1,8.506,1.143c6.481-4.393,9.328-3.48,9.328-3.48a12.185,12.185,0,0,1,.333,8.986,13.115,13.115,0,0,1,3.495,9.114c0,13.042-7.943,15.913-15.5,16.754,1.218,1.054,2.3,3.12,2.3,6.288,0,4.543-.039,8.2-.039,9.318,0,.9.611,1.962,2.332,1.629a33.959,33.959,0,0,0,23.2-32.215,33.955,33.955,0,0,0-33.955-33.955",
|
|
5668
5770
|
fill: "currentColor"
|
|
5669
5771
|
})
|
|
5670
5772
|
])
|
|
5671
5773
|
]);
|
|
5672
|
-
return () => (0,
|
|
5774
|
+
return () => (0, import_vue46.h)(
|
|
5673
5775
|
Button_default,
|
|
5674
5776
|
{
|
|
5675
5777
|
...attrs,
|
|
@@ -5688,8 +5790,8 @@ var GitHubButton = (0, import_vue45.defineComponent)({
|
|
|
5688
5790
|
var GitHubButton_default = GitHubButton;
|
|
5689
5791
|
|
|
5690
5792
|
// src/components/adapters/GoogleButton.ts
|
|
5691
|
-
var
|
|
5692
|
-
var GoogleButton = (0,
|
|
5793
|
+
var import_vue47 = require("vue");
|
|
5794
|
+
var GoogleButton = (0, import_vue47.defineComponent)({
|
|
5693
5795
|
emits: ["click"],
|
|
5694
5796
|
name: "GoogleButton",
|
|
5695
5797
|
props: {
|
|
@@ -5697,31 +5799,31 @@ var GoogleButton = (0, import_vue46.defineComponent)({
|
|
|
5697
5799
|
},
|
|
5698
5800
|
setup(props, { slots, emit, attrs }) {
|
|
5699
5801
|
const { t } = useI18n_default();
|
|
5700
|
-
const googleIcon = () => (0,
|
|
5701
|
-
(0,
|
|
5702
|
-
(0,
|
|
5802
|
+
const googleIcon = () => (0, import_vue47.h)("svg", { height: "18", viewBox: "0 0 67.91 67.901", width: "18", xmlns: "http://www.w3.org/2000/svg" }, [
|
|
5803
|
+
(0, import_vue47.h)("g", { transform: "translate(-0.001 -0.001)" }, [
|
|
5804
|
+
(0, import_vue47.h)("path", {
|
|
5703
5805
|
d: "M15.049,160.965l-2.364,8.824-8.639.183a34.011,34.011,0,0,1-.25-31.7h0l7.691,1.41,3.369,7.645a20.262,20.262,0,0,0,.19,13.642Z",
|
|
5704
5806
|
fill: "#fbbb00",
|
|
5705
5807
|
transform: "translate(0 -119.93)"
|
|
5706
5808
|
}),
|
|
5707
|
-
(0,
|
|
5809
|
+
(0, import_vue47.h)("path", {
|
|
5708
5810
|
d: "M294.24,208.176A33.939,33.939,0,0,1,282.137,241h0l-9.687-.494-1.371-8.559a20.235,20.235,0,0,0,8.706-10.333H261.628V208.176Z",
|
|
5709
5811
|
fill: "#518ef8",
|
|
5710
5812
|
transform: "translate(-226.93 -180.567)"
|
|
5711
5813
|
}),
|
|
5712
|
-
(0,
|
|
5814
|
+
(0, import_vue47.h)("path", {
|
|
5713
5815
|
d: "M81.668,328.8h0a33.962,33.962,0,0,1-51.161-10.387l11-9.006a20.192,20.192,0,0,0,29.1,10.338Z",
|
|
5714
5816
|
fill: "#28b446",
|
|
5715
5817
|
transform: "translate(-26.463 -268.374)"
|
|
5716
5818
|
}),
|
|
5717
|
-
(0,
|
|
5819
|
+
(0, import_vue47.h)("path", {
|
|
5718
5820
|
d: "M80.451,7.816l-11,9A20.19,20.19,0,0,0,39.686,27.393l-11.06-9.055h0A33.959,33.959,0,0,1,80.451,7.816Z",
|
|
5719
5821
|
fill: "#f14336",
|
|
5720
5822
|
transform: "translate(-24.828)"
|
|
5721
5823
|
})
|
|
5722
5824
|
])
|
|
5723
5825
|
]);
|
|
5724
|
-
return () => (0,
|
|
5826
|
+
return () => (0, import_vue47.h)(
|
|
5725
5827
|
Button_default,
|
|
5726
5828
|
{
|
|
5727
5829
|
...attrs,
|
|
@@ -5740,8 +5842,8 @@ var GoogleButton = (0, import_vue46.defineComponent)({
|
|
|
5740
5842
|
var GoogleButton_default = GoogleButton;
|
|
5741
5843
|
|
|
5742
5844
|
// src/components/adapters/MicrosoftButton.ts
|
|
5743
|
-
var
|
|
5744
|
-
var MicrosoftButton = (0,
|
|
5845
|
+
var import_vue48 = require("vue");
|
|
5846
|
+
var MicrosoftButton = (0, import_vue48.defineComponent)({
|
|
5745
5847
|
emits: ["click"],
|
|
5746
5848
|
name: "MicrosoftButton",
|
|
5747
5849
|
props: {
|
|
@@ -5749,14 +5851,14 @@ var MicrosoftButton = (0, import_vue47.defineComponent)({
|
|
|
5749
5851
|
},
|
|
5750
5852
|
setup(props, { slots, emit, attrs }) {
|
|
5751
5853
|
const { t } = useI18n_default();
|
|
5752
|
-
const microsoftIcon = () => (0,
|
|
5753
|
-
(0,
|
|
5754
|
-
(0,
|
|
5755
|
-
(0,
|
|
5756
|
-
(0,
|
|
5757
|
-
(0,
|
|
5854
|
+
const microsoftIcon = () => (0, import_vue48.h)("svg", { height: "14", viewBox: "0 0 23 23", width: "14", xmlns: "http://www.w3.org/2000/svg" }, [
|
|
5855
|
+
(0, import_vue48.h)("path", { d: "M0 0h23v23H0z", fill: "#f3f3f3" }),
|
|
5856
|
+
(0, import_vue48.h)("path", { d: "M1 1h10v10H1z", fill: "#f35325" }),
|
|
5857
|
+
(0, import_vue48.h)("path", { d: "M12 1h10v10H12z", fill: "#81bc06" }),
|
|
5858
|
+
(0, import_vue48.h)("path", { d: "M1 12h10v10H1z", fill: "#05a6f0" }),
|
|
5859
|
+
(0, import_vue48.h)("path", { d: "M12 12h10v10H12z", fill: "#ffba08" })
|
|
5758
5860
|
]);
|
|
5759
|
-
return () => (0,
|
|
5861
|
+
return () => (0, import_vue48.h)(
|
|
5760
5862
|
Button_default,
|
|
5761
5863
|
{
|
|
5762
5864
|
...attrs,
|
|
@@ -5776,7 +5878,7 @@ var MicrosoftButton_default = MicrosoftButton;
|
|
|
5776
5878
|
|
|
5777
5879
|
// src/components/factories/FieldFactory.ts
|
|
5778
5880
|
var import_browser35 = require("@asgardeo/browser");
|
|
5779
|
-
var
|
|
5881
|
+
var import_vue49 = require("vue");
|
|
5780
5882
|
var validateFieldValue = (value, type, required = false, touched = false) => {
|
|
5781
5883
|
if (required && touched && (!value || value.trim() === "")) {
|
|
5782
5884
|
return "This field is required";
|
|
@@ -5828,44 +5930,44 @@ var createField = (config) => {
|
|
|
5828
5930
|
};
|
|
5829
5931
|
switch (type) {
|
|
5830
5932
|
case import_browser35.FieldType.Password:
|
|
5831
|
-
return (0,
|
|
5933
|
+
return (0, import_vue49.h)(PasswordField_default, {
|
|
5832
5934
|
...commonProps,
|
|
5833
5935
|
"onUpdate:modelValue": onChange
|
|
5834
5936
|
});
|
|
5835
5937
|
case import_browser35.FieldType.Text:
|
|
5836
|
-
return (0,
|
|
5938
|
+
return (0, import_vue49.h)(TextField_default, {
|
|
5837
5939
|
...commonProps,
|
|
5838
5940
|
autocomplete: "off",
|
|
5839
5941
|
"onUpdate:modelValue": onChange,
|
|
5840
5942
|
type: "text"
|
|
5841
5943
|
});
|
|
5842
5944
|
case import_browser35.FieldType.Email:
|
|
5843
|
-
return (0,
|
|
5945
|
+
return (0, import_vue49.h)(TextField_default, {
|
|
5844
5946
|
...commonProps,
|
|
5845
5947
|
autocomplete: "email",
|
|
5846
5948
|
"onUpdate:modelValue": onChange,
|
|
5847
5949
|
type: "email"
|
|
5848
5950
|
});
|
|
5849
5951
|
case import_browser35.FieldType.Date:
|
|
5850
|
-
return (0,
|
|
5952
|
+
return (0, import_vue49.h)(DatePicker_default, {
|
|
5851
5953
|
...commonProps,
|
|
5852
5954
|
"onUpdate:modelValue": onChange
|
|
5853
5955
|
});
|
|
5854
5956
|
case import_browser35.FieldType.Checkbox: {
|
|
5855
5957
|
const isChecked = value === "true" || value === true;
|
|
5856
|
-
return (0,
|
|
5958
|
+
return (0, import_vue49.h)(Checkbox_default, {
|
|
5857
5959
|
...commonProps,
|
|
5858
5960
|
modelValue: isChecked,
|
|
5859
5961
|
"onUpdate:modelValue": (checked) => onChange(checked.toString())
|
|
5860
5962
|
});
|
|
5861
5963
|
}
|
|
5862
5964
|
case import_browser35.FieldType.Otp:
|
|
5863
|
-
return (0,
|
|
5965
|
+
return (0, import_vue49.h)(OtpField_default, {
|
|
5864
5966
|
...commonProps,
|
|
5865
5967
|
"onUpdate:modelValue": onChange
|
|
5866
5968
|
});
|
|
5867
5969
|
case import_browser35.FieldType.Number:
|
|
5868
|
-
return (0,
|
|
5970
|
+
return (0, import_vue49.h)(TextField_default, {
|
|
5869
5971
|
...commonProps,
|
|
5870
5972
|
helperText: "Enter a numeric value",
|
|
5871
5973
|
"onUpdate:modelValue": onChange,
|
|
@@ -5874,14 +5976,14 @@ var createField = (config) => {
|
|
|
5874
5976
|
case import_browser35.FieldType.Select: {
|
|
5875
5977
|
const fieldOptions = options.length > 0 ? options : [];
|
|
5876
5978
|
if (fieldOptions.length > 0) {
|
|
5877
|
-
return (0,
|
|
5979
|
+
return (0, import_vue49.h)(Select_default, {
|
|
5878
5980
|
...commonProps,
|
|
5879
5981
|
helperText: "Select from available options",
|
|
5880
5982
|
"onUpdate:modelValue": onChange,
|
|
5881
5983
|
options: fieldOptions
|
|
5882
5984
|
});
|
|
5883
5985
|
}
|
|
5884
|
-
return (0,
|
|
5986
|
+
return (0, import_vue49.h)(TextField_default, {
|
|
5885
5987
|
...commonProps,
|
|
5886
5988
|
helperText: "Enter multiple values separated by commas (e.g., value1, value2, value3)",
|
|
5887
5989
|
"onUpdate:modelValue": onChange,
|
|
@@ -5890,7 +5992,7 @@ var createField = (config) => {
|
|
|
5890
5992
|
});
|
|
5891
5993
|
}
|
|
5892
5994
|
default:
|
|
5893
|
-
return (0,
|
|
5995
|
+
return (0, import_vue49.h)(TextField_default, {
|
|
5894
5996
|
...commonProps,
|
|
5895
5997
|
helperText: "Unknown field type, treating as text",
|
|
5896
5998
|
"onUpdate:modelValue": onChange,
|
|
@@ -5898,7 +6000,7 @@ var createField = (config) => {
|
|
|
5898
6000
|
});
|
|
5899
6001
|
}
|
|
5900
6002
|
};
|
|
5901
|
-
var FieldFactory = (0,
|
|
6003
|
+
var FieldFactory = (0, import_vue49.defineComponent)({
|
|
5902
6004
|
emits: ["change", "blur"],
|
|
5903
6005
|
name: "FieldFactory",
|
|
5904
6006
|
props: {
|
|
@@ -5939,7 +6041,7 @@ var renderFormFields = (props) => {
|
|
|
5939
6041
|
const { authenticator, formValues, touchedFields, isLoading, onInputChange, inputClassName, buttonClassName, t } = props;
|
|
5940
6042
|
const formFields = authenticator.metadata?.params?.sort((a, b) => a.order - b.order)?.filter((param) => param.param !== "totp") || [];
|
|
5941
6043
|
const fieldNodes = formFields.map(
|
|
5942
|
-
(param) => (0,
|
|
6044
|
+
(param) => (0, import_vue50.h)(
|
|
5943
6045
|
"div",
|
|
5944
6046
|
{ key: param.param },
|
|
5945
6047
|
createField({
|
|
@@ -5959,7 +6061,7 @@ var renderFormFields = (props) => {
|
|
|
5959
6061
|
)
|
|
5960
6062
|
);
|
|
5961
6063
|
fieldNodes.push(
|
|
5962
|
-
(0,
|
|
6064
|
+
(0, import_vue50.h)(
|
|
5963
6065
|
Button_default,
|
|
5964
6066
|
{
|
|
5965
6067
|
class: buttonClassName,
|
|
@@ -5989,10 +6091,10 @@ var renderMultiOptionButton = (props) => {
|
|
|
5989
6091
|
[import_browser36.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Totp]: "M12 1L3 5v6c0 5.55 3.84 10.74 9 12c5.16-1.26 9-6.45 9-12V5z"
|
|
5990
6092
|
};
|
|
5991
6093
|
const iconPath = iconPathMap[authenticator.authenticatorId] || "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10s10-4.48 10-10S17.52 2 12 2m-2 15l-5-5l1.41-1.41L10 14.17l7.59-7.59L19 8z";
|
|
5992
|
-
const icon2 = (0,
|
|
5993
|
-
(0,
|
|
6094
|
+
const icon2 = (0, import_vue50.h)("svg", { height: "18", viewBox: "0 0 24 24", width: "18", xmlns: "http://www.w3.org/2000/svg" }, [
|
|
6095
|
+
(0, import_vue50.h)("path", { d: iconPath, fill: "currentColor" })
|
|
5994
6096
|
]);
|
|
5995
|
-
return (0,
|
|
6097
|
+
return (0, import_vue50.h)(
|
|
5996
6098
|
Button_default,
|
|
5997
6099
|
{
|
|
5998
6100
|
class: buttonClassName,
|
|
@@ -6009,17 +6111,17 @@ var renderMultiOptionButton = (props) => {
|
|
|
6009
6111
|
};
|
|
6010
6112
|
var renderSocialButton = (props) => {
|
|
6011
6113
|
const { authenticator, isLoading, onSubmit, buttonClassName, t } = props;
|
|
6012
|
-
const socialIcon = (0,
|
|
6114
|
+
const socialIcon = (0, import_vue50.h)(
|
|
6013
6115
|
"svg",
|
|
6014
6116
|
{ height: "18", viewBox: "0 0 24 24", width: "18", xmlns: "http://www.w3.org/2000/svg" },
|
|
6015
6117
|
[
|
|
6016
|
-
(0,
|
|
6118
|
+
(0, import_vue50.h)("path", {
|
|
6017
6119
|
d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z",
|
|
6018
6120
|
fill: "currentColor"
|
|
6019
6121
|
})
|
|
6020
6122
|
]
|
|
6021
6123
|
);
|
|
6022
|
-
return (0,
|
|
6124
|
+
return (0, import_vue50.h)(
|
|
6023
6125
|
Button_default,
|
|
6024
6126
|
{
|
|
6025
6127
|
class: buttonClassName,
|
|
@@ -6040,27 +6142,27 @@ var createSignInOption = (props) => {
|
|
|
6040
6142
|
switch (authenticator.authenticatorId) {
|
|
6041
6143
|
case import_browser36.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.UsernamePassword:
|
|
6042
6144
|
case import_browser36.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.IdentifierFirst:
|
|
6043
|
-
return (0,
|
|
6145
|
+
return (0, import_vue50.h)("div", {}, renderFormFields(props));
|
|
6044
6146
|
case import_browser36.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Google:
|
|
6045
|
-
return (0,
|
|
6147
|
+
return (0, import_vue50.h)(GoogleButton_default, {
|
|
6046
6148
|
class: buttonClassName,
|
|
6047
6149
|
isLoading,
|
|
6048
6150
|
onClick: () => onSubmit(authenticator)
|
|
6049
6151
|
});
|
|
6050
6152
|
case import_browser36.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.GitHub:
|
|
6051
|
-
return (0,
|
|
6153
|
+
return (0, import_vue50.h)(GitHubButton_default, {
|
|
6052
6154
|
class: buttonClassName,
|
|
6053
6155
|
isLoading,
|
|
6054
6156
|
onClick: () => onSubmit(authenticator)
|
|
6055
6157
|
});
|
|
6056
6158
|
case import_browser36.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Microsoft:
|
|
6057
|
-
return (0,
|
|
6159
|
+
return (0, import_vue50.h)(MicrosoftButton_default, {
|
|
6058
6160
|
class: buttonClassName,
|
|
6059
6161
|
isLoading,
|
|
6060
6162
|
onClick: () => onSubmit(authenticator)
|
|
6061
6163
|
});
|
|
6062
6164
|
case import_browser36.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Facebook:
|
|
6063
|
-
return (0,
|
|
6165
|
+
return (0, import_vue50.h)(FacebookButton_default, {
|
|
6064
6166
|
class: buttonClassName,
|
|
6065
6167
|
isLoading,
|
|
6066
6168
|
onClick: () => onSubmit(authenticator)
|
|
@@ -6068,12 +6170,12 @@ var createSignInOption = (props) => {
|
|
|
6068
6170
|
case import_browser36.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.EmailOtp:
|
|
6069
6171
|
case import_browser36.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Totp:
|
|
6070
6172
|
case import_browser36.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.SmsOtp:
|
|
6071
|
-
return hasParams ? (0,
|
|
6173
|
+
return hasParams ? (0, import_vue50.h)("div", {}, renderFormFields(props)) : renderMultiOptionButton(props);
|
|
6072
6174
|
default:
|
|
6073
6175
|
if (authenticator.idp !== import_browser36.EmbeddedSignInFlowAuthenticatorKnownIdPType.Local) {
|
|
6074
6176
|
return renderSocialButton(props);
|
|
6075
6177
|
}
|
|
6076
|
-
return hasParams ? (0,
|
|
6178
|
+
return hasParams ? (0, import_vue50.h)("div", {}, renderFormFields(props)) : renderMultiOptionButton(props);
|
|
6077
6179
|
}
|
|
6078
6180
|
};
|
|
6079
6181
|
var createSignInOptionFromAuthenticator = (authenticator, formValues, touchedFields, isLoading, onInputChange, onSubmit, t, options) => createSignInOption({
|
|
@@ -6090,7 +6192,7 @@ var createSignInOptionFromAuthenticator = (authenticator, formValues, touchedFie
|
|
|
6090
6192
|
// src/components/presentation/sign-in/v1/BaseSignIn.ts
|
|
6091
6193
|
var HIDDEN_AUTHENTICATORS = ["T3JnYW5pemF0aW9uQXV0aGVudGljYXRvcjpTU08"];
|
|
6092
6194
|
var isPasskeyAuthenticator = (authenticator) => authenticator.authenticatorId === import_browser37.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Passkey && authenticator.metadata?.promptType === import_browser37.EmbeddedSignInFlowAuthenticatorPromptType.InternalPrompt && !!authenticator.metadata?.additionalData?.challengeData;
|
|
6093
|
-
var BaseSignIn = (0,
|
|
6195
|
+
var BaseSignIn = (0, import_vue51.defineComponent)({
|
|
6094
6196
|
emits: ["error", "flowChange", "success"],
|
|
6095
6197
|
name: "BaseSignInV1",
|
|
6096
6198
|
props: {
|
|
@@ -6115,14 +6217,14 @@ var BaseSignIn = (0, import_vue50.defineComponent)({
|
|
|
6115
6217
|
setup(props, { emit }) {
|
|
6116
6218
|
const { t } = useI18n_default();
|
|
6117
6219
|
const { title: flowTitle, subtitle: flowSubtitle, messages: flowMessages } = useFlow_default();
|
|
6118
|
-
const isInitRequestLoading = (0,
|
|
6119
|
-
const isInitialized = (0,
|
|
6120
|
-
const currentFlow = (0,
|
|
6121
|
-
const currentAuthenticator = (0,
|
|
6122
|
-
const error = (0,
|
|
6123
|
-
const messages = (0,
|
|
6124
|
-
const formValues = (0,
|
|
6125
|
-
const touchedFields = (0,
|
|
6220
|
+
const isInitRequestLoading = (0, import_vue51.ref)(false);
|
|
6221
|
+
const isInitialized = (0, import_vue51.ref)(false);
|
|
6222
|
+
const currentFlow = (0, import_vue51.ref)(null);
|
|
6223
|
+
const currentAuthenticator = (0, import_vue51.ref)(null);
|
|
6224
|
+
const error = (0, import_vue51.ref)(null);
|
|
6225
|
+
const messages = (0, import_vue51.ref)([]);
|
|
6226
|
+
const formValues = (0, import_vue51.ref)({});
|
|
6227
|
+
const touchedFields = (0, import_vue51.ref)({});
|
|
6126
6228
|
const isLoading = () => props.isLoading || isInitRequestLoading.value;
|
|
6127
6229
|
const setupFormFields = (authenticator) => {
|
|
6128
6230
|
const vals = {};
|
|
@@ -6428,7 +6530,7 @@ var BaseSignIn = (0, import_vue50.defineComponent)({
|
|
|
6428
6530
|
return currentFlow.value.nextStep.authenticators;
|
|
6429
6531
|
};
|
|
6430
6532
|
let initAttempted = false;
|
|
6431
|
-
(0,
|
|
6533
|
+
(0, import_vue51.watch)(
|
|
6432
6534
|
() => props.isLoading,
|
|
6433
6535
|
(loading) => {
|
|
6434
6536
|
if (!loading && !initAttempted && props.onInitialize) {
|
|
@@ -6479,9 +6581,9 @@ var BaseSignIn = (0, import_vue50.defineComponent)({
|
|
|
6479
6581
|
return "info";
|
|
6480
6582
|
};
|
|
6481
6583
|
const renderMessages = () => messages.value.map(
|
|
6482
|
-
(msg, i) => (0,
|
|
6584
|
+
(msg, i) => (0, import_vue51.h)(Alert_default, { key: i, severity: renderAlertVariant(msg.type) }, { default: () => msg.message })
|
|
6483
6585
|
);
|
|
6484
|
-
const renderError = () => error.value ? (0,
|
|
6586
|
+
const renderError = () => error.value ? (0, import_vue51.h)(Alert_default, { severity: "error" }, { default: () => error.value }) : null;
|
|
6485
6587
|
return () => {
|
|
6486
6588
|
const cardClass = [
|
|
6487
6589
|
(0, import_browser37.withVendorCSSClassPrefix)("signin"),
|
|
@@ -6490,16 +6592,16 @@ var BaseSignIn = (0, import_vue50.defineComponent)({
|
|
|
6490
6592
|
props.className
|
|
6491
6593
|
].filter(Boolean).join(" ");
|
|
6492
6594
|
if (!isInitialized.value && isLoading()) {
|
|
6493
|
-
return (0,
|
|
6494
|
-
props.showLogo ? (0,
|
|
6495
|
-
(0,
|
|
6595
|
+
return (0, import_vue51.h)("div", {}, [
|
|
6596
|
+
props.showLogo ? (0, import_vue51.h)("div", { class: (0, import_browser37.withVendorCSSClassPrefix)("signin__logo") }, [(0, import_vue51.h)(Logo_default)]) : null,
|
|
6597
|
+
(0, import_vue51.h)(
|
|
6496
6598
|
Card_default,
|
|
6497
6599
|
{ class: cardClass, variant: props.variant },
|
|
6498
6600
|
{
|
|
6499
6601
|
default: () => [
|
|
6500
|
-
(0,
|
|
6501
|
-
(0,
|
|
6502
|
-
(0,
|
|
6602
|
+
(0, import_vue51.h)("div", { class: (0, import_browser37.withVendorCSSClassPrefix)("signin__loading") }, [
|
|
6603
|
+
(0, import_vue51.h)(Spinner_default, { size: "medium" }),
|
|
6604
|
+
(0, import_vue51.h)(Typography_default, { variant: "body1" }, { default: () => t("messages.loading.placeholder") })
|
|
6503
6605
|
])
|
|
6504
6606
|
]
|
|
6505
6607
|
}
|
|
@@ -6512,9 +6614,9 @@ var BaseSignIn = (0, import_vue50.defineComponent)({
|
|
|
6512
6614
|
(auth) => auth.metadata?.promptType === import_browser37.EmbeddedSignInFlowAuthenticatorPromptType.UserPrompt || auth.idp === "LOCAL" && auth.metadata?.params && auth.metadata.params.length > 0
|
|
6513
6615
|
);
|
|
6514
6616
|
const optionAuths = available.filter((auth) => !userPromptAuths.includes(auth)).filter((auth) => !HIDDEN_AUTHENTICATORS.includes(auth.authenticatorId));
|
|
6515
|
-
return (0,
|
|
6516
|
-
props.showLogo ? (0,
|
|
6517
|
-
(0,
|
|
6617
|
+
return (0, import_vue51.h)("div", {}, [
|
|
6618
|
+
props.showLogo ? (0, import_vue51.h)("div", { class: (0, import_browser37.withVendorCSSClassPrefix)("signin__logo") }, [(0, import_vue51.h)(Logo_default)]) : null,
|
|
6619
|
+
(0, import_vue51.h)(
|
|
6518
6620
|
Card_default,
|
|
6519
6621
|
{ class: cardClass, variant: props.variant },
|
|
6520
6622
|
{
|
|
@@ -6522,9 +6624,9 @@ var BaseSignIn = (0, import_vue50.defineComponent)({
|
|
|
6522
6624
|
const children = [];
|
|
6523
6625
|
if (props.showTitle || props.showSubtitle) {
|
|
6524
6626
|
children.push(
|
|
6525
|
-
(0,
|
|
6526
|
-
props.showTitle ? (0,
|
|
6527
|
-
props.showSubtitle ? (0,
|
|
6627
|
+
(0, import_vue51.h)("div", { class: (0, import_browser37.withVendorCSSClassPrefix)("signin__header") }, [
|
|
6628
|
+
props.showTitle ? (0, import_vue51.h)(Typography_default, { variant: "h2" }, { default: () => flowTitle.value || t("signin.heading") }) : null,
|
|
6629
|
+
props.showSubtitle ? (0, import_vue51.h)(
|
|
6528
6630
|
Typography_default,
|
|
6529
6631
|
{ variant: "body1" },
|
|
6530
6632
|
{ default: () => flowSubtitle.value || t("signin.subheading") }
|
|
@@ -6534,22 +6636,22 @@ var BaseSignIn = (0, import_vue50.defineComponent)({
|
|
|
6534
6636
|
}
|
|
6535
6637
|
if (flowMessages.value?.length > 0) {
|
|
6536
6638
|
children.push(
|
|
6537
|
-
(0,
|
|
6639
|
+
(0, import_vue51.h)(
|
|
6538
6640
|
"div",
|
|
6539
6641
|
{ class: (0, import_browser37.withVendorCSSClassPrefix)("signin__flow-messages") },
|
|
6540
6642
|
flowMessages.value.map(
|
|
6541
|
-
(fm, i) => (0,
|
|
6643
|
+
(fm, i) => (0, import_vue51.h)(Alert_default, { key: fm.id || i, severity: fm.type }, { default: () => fm.message })
|
|
6542
6644
|
)
|
|
6543
6645
|
)
|
|
6544
6646
|
);
|
|
6545
6647
|
}
|
|
6546
|
-
if (messages.value.length > 0) children.push((0,
|
|
6648
|
+
if (messages.value.length > 0) children.push((0, import_vue51.h)("div", {}, renderMessages()));
|
|
6547
6649
|
const errNode = renderError();
|
|
6548
6650
|
if (errNode) children.push(errNode);
|
|
6549
6651
|
userPromptAuths.forEach((auth, index) => {
|
|
6550
|
-
if (index > 0) children.push((0,
|
|
6652
|
+
if (index > 0) children.push((0, import_vue51.h)(Divider_default, {}, { default: () => "OR" }));
|
|
6551
6653
|
children.push(
|
|
6552
|
-
(0,
|
|
6654
|
+
(0, import_vue51.h)(
|
|
6553
6655
|
"form",
|
|
6554
6656
|
{
|
|
6555
6657
|
onSubmit: (e) => {
|
|
@@ -6581,11 +6683,11 @@ var BaseSignIn = (0, import_vue50.defineComponent)({
|
|
|
6581
6683
|
);
|
|
6582
6684
|
});
|
|
6583
6685
|
if (userPromptAuths.length > 0 && optionAuths.length > 0) {
|
|
6584
|
-
children.push((0,
|
|
6686
|
+
children.push((0, import_vue51.h)(Divider_default, {}, { default: () => "OR" }));
|
|
6585
6687
|
}
|
|
6586
6688
|
optionAuths.forEach((auth) => {
|
|
6587
6689
|
children.push(
|
|
6588
|
-
(0,
|
|
6690
|
+
(0, import_vue51.h)("div", { key: auth.authenticatorId }, [
|
|
6589
6691
|
createSignInOptionFromAuthenticator(
|
|
6590
6692
|
auth,
|
|
6591
6693
|
formValues.value,
|
|
@@ -6610,15 +6712,15 @@ var BaseSignIn = (0, import_vue50.defineComponent)({
|
|
|
6610
6712
|
]);
|
|
6611
6713
|
}
|
|
6612
6714
|
if (!currentAuthenticator.value) {
|
|
6613
|
-
return (0,
|
|
6614
|
-
props.showLogo ? (0,
|
|
6615
|
-
(0,
|
|
6715
|
+
return (0, import_vue51.h)("div", {}, [
|
|
6716
|
+
props.showLogo ? (0, import_vue51.h)("div", { class: (0, import_browser37.withVendorCSSClassPrefix)("signin__logo") }, [(0, import_vue51.h)(Logo_default)]) : null,
|
|
6717
|
+
(0, import_vue51.h)(
|
|
6616
6718
|
Card_default,
|
|
6617
6719
|
{ class: cardClass, variant: props.variant },
|
|
6618
6720
|
{
|
|
6619
6721
|
default: () => {
|
|
6620
6722
|
const errNode = renderError();
|
|
6621
|
-
return errNode ? [errNode] : [(0,
|
|
6723
|
+
return errNode ? [errNode] : [(0, import_vue51.h)(Typography_default, { variant: "body1" }, { default: () => t("messages.loading.placeholder") })];
|
|
6622
6724
|
}
|
|
6623
6725
|
}
|
|
6624
6726
|
)
|
|
@@ -6626,16 +6728,16 @@ var BaseSignIn = (0, import_vue50.defineComponent)({
|
|
|
6626
6728
|
}
|
|
6627
6729
|
if (isPasskeyAuthenticator(currentAuthenticator.value) && !isLoading()) {
|
|
6628
6730
|
handleAuthenticatorSelection(currentAuthenticator.value);
|
|
6629
|
-
return (0,
|
|
6630
|
-
props.showLogo ? (0,
|
|
6631
|
-
(0,
|
|
6731
|
+
return (0, import_vue51.h)("div", {}, [
|
|
6732
|
+
props.showLogo ? (0, import_vue51.h)("div", { class: (0, import_browser37.withVendorCSSClassPrefix)("signin__logo") }, [(0, import_vue51.h)(Logo_default)]) : null,
|
|
6733
|
+
(0, import_vue51.h)(
|
|
6632
6734
|
Card_default,
|
|
6633
6735
|
{ class: cardClass, variant: props.variant },
|
|
6634
6736
|
{
|
|
6635
6737
|
default: () => [
|
|
6636
|
-
(0,
|
|
6637
|
-
(0,
|
|
6638
|
-
(0,
|
|
6738
|
+
(0, import_vue51.h)("div", { style: "text-align:center" }, [
|
|
6739
|
+
(0, import_vue51.h)(Spinner_default, { size: "large" }),
|
|
6740
|
+
(0, import_vue51.h)(
|
|
6639
6741
|
Typography_default,
|
|
6640
6742
|
{ variant: "body1" },
|
|
6641
6743
|
{ default: () => t("passkey.authenticating") || "Authenticating with passkey..." }
|
|
@@ -6646,36 +6748,36 @@ var BaseSignIn = (0, import_vue50.defineComponent)({
|
|
|
6646
6748
|
)
|
|
6647
6749
|
]);
|
|
6648
6750
|
}
|
|
6649
|
-
return (0,
|
|
6650
|
-
props.showLogo ? (0,
|
|
6651
|
-
(0,
|
|
6751
|
+
return (0, import_vue51.h)("div", {}, [
|
|
6752
|
+
props.showLogo ? (0, import_vue51.h)("div", { class: (0, import_browser37.withVendorCSSClassPrefix)("signin__logo") }, [(0, import_vue51.h)(Logo_default)]) : null,
|
|
6753
|
+
(0, import_vue51.h)(
|
|
6652
6754
|
Card_default,
|
|
6653
6755
|
{ class: cardClass, variant: props.variant },
|
|
6654
6756
|
{
|
|
6655
6757
|
default: () => {
|
|
6656
6758
|
const children = [];
|
|
6657
6759
|
children.push(
|
|
6658
|
-
(0,
|
|
6659
|
-
(0,
|
|
6660
|
-
(0,
|
|
6760
|
+
(0, import_vue51.h)("div", { class: (0, import_browser37.withVendorCSSClassPrefix)("signin__header") }, [
|
|
6761
|
+
(0, import_vue51.h)(Typography_default, { variant: "h2" }, { default: () => flowTitle.value || t("signin.heading") }),
|
|
6762
|
+
(0, import_vue51.h)(Typography_default, { variant: "body1" }, { default: () => flowSubtitle.value || t("signin.subheading") })
|
|
6661
6763
|
])
|
|
6662
6764
|
);
|
|
6663
6765
|
if (flowMessages.value?.length > 0) {
|
|
6664
6766
|
children.push(
|
|
6665
|
-
(0,
|
|
6767
|
+
(0, import_vue51.h)(
|
|
6666
6768
|
"div",
|
|
6667
6769
|
{ class: (0, import_browser37.withVendorCSSClassPrefix)("signin__flow-messages") },
|
|
6668
6770
|
flowMessages.value.map(
|
|
6669
|
-
(fm, i) => (0,
|
|
6771
|
+
(fm, i) => (0, import_vue51.h)(Alert_default, { key: fm.id || i, severity: fm.type }, { default: () => fm.message })
|
|
6670
6772
|
)
|
|
6671
6773
|
)
|
|
6672
6774
|
);
|
|
6673
6775
|
}
|
|
6674
|
-
if (messages.value.length > 0) children.push((0,
|
|
6776
|
+
if (messages.value.length > 0) children.push((0, import_vue51.h)("div", {}, renderMessages()));
|
|
6675
6777
|
const errNode = renderError();
|
|
6676
6778
|
if (errNode) children.push(errNode);
|
|
6677
6779
|
children.push(
|
|
6678
|
-
(0,
|
|
6780
|
+
(0, import_vue51.h)(
|
|
6679
6781
|
"form",
|
|
6680
6782
|
{
|
|
6681
6783
|
class: (0, import_browser37.withVendorCSSClassPrefix)("signin__form"),
|
|
@@ -6717,7 +6819,7 @@ var BaseSignIn = (0, import_vue50.defineComponent)({
|
|
|
6717
6819
|
var BaseSignIn_default = BaseSignIn;
|
|
6718
6820
|
|
|
6719
6821
|
// src/components/presentation/sign-in/v1/SignIn.ts
|
|
6720
|
-
var SignIn = (0,
|
|
6822
|
+
var SignIn = (0, import_vue52.defineComponent)({
|
|
6721
6823
|
emits: ["error", "success"],
|
|
6722
6824
|
name: "SignInV1",
|
|
6723
6825
|
props: {
|
|
@@ -6747,7 +6849,7 @@ var SignIn = (0, import_vue51.defineComponent)({
|
|
|
6747
6849
|
window.location.href = url.toString();
|
|
6748
6850
|
}
|
|
6749
6851
|
};
|
|
6750
|
-
return () => (0,
|
|
6852
|
+
return () => (0, import_vue52.h)(BaseSignIn_default, {
|
|
6751
6853
|
...attrs,
|
|
6752
6854
|
afterSignInUrl,
|
|
6753
6855
|
class: props.className,
|
|
@@ -6768,16 +6870,16 @@ var SignIn_default = SignIn;
|
|
|
6768
6870
|
|
|
6769
6871
|
// src/components/presentation/sign-in/v2/SignIn.ts
|
|
6770
6872
|
var import_browser43 = require("@asgardeo/browser");
|
|
6771
|
-
var
|
|
6873
|
+
var import_vue55 = require("vue");
|
|
6772
6874
|
|
|
6773
6875
|
// src/components/presentation/sign-in/v2/BaseSignIn.ts
|
|
6774
6876
|
var import_browser40 = require("@asgardeo/browser");
|
|
6775
|
-
var
|
|
6877
|
+
var import_vue54 = require("vue");
|
|
6776
6878
|
|
|
6777
6879
|
// src/components/presentation/sign-in/AuthOptionFactoryCore.ts
|
|
6778
6880
|
var import_browser38 = require("@asgardeo/browser");
|
|
6779
6881
|
var import_dompurify = __toESM(require("dompurify"), 1);
|
|
6780
|
-
var
|
|
6882
|
+
var import_vue53 = require("vue");
|
|
6781
6883
|
var logger5 = createVueLogger("AuthOptionFactory");
|
|
6782
6884
|
var getConsentOptionalKey = (purposeId, attr) => `consent_${purposeId}_${attr}`;
|
|
6783
6885
|
var resolveEmojiUrisInHtml = (html) => {
|
|
@@ -6903,30 +7005,30 @@ var createAuthComponentFromFlow = (component, formValues, touchedFields, formErr
|
|
|
6903
7005
|
}
|
|
6904
7006
|
};
|
|
6905
7007
|
if (matchesSocialProvider(actionId, eventType, buttonText, "google")) {
|
|
6906
|
-
return (0,
|
|
7008
|
+
return (0, import_vue53.h)(GoogleButton_default, { class: options.buttonClassName, key, onClick: handleClick });
|
|
6907
7009
|
}
|
|
6908
7010
|
if (matchesSocialProvider(actionId, eventType, buttonText, "github")) {
|
|
6909
|
-
return (0,
|
|
7011
|
+
return (0, import_vue53.h)(GitHubButton_default, { class: options.buttonClassName, key, onClick: handleClick });
|
|
6910
7012
|
}
|
|
6911
7013
|
if (matchesSocialProvider(actionId, eventType, buttonText, "facebook")) {
|
|
6912
|
-
return (0,
|
|
7014
|
+
return (0, import_vue53.h)(FacebookButton_default, { class: options.buttonClassName, key, onClick: handleClick });
|
|
6913
7015
|
}
|
|
6914
7016
|
if (matchesSocialProvider(actionId, eventType, buttonText, "microsoft")) {
|
|
6915
|
-
return (0,
|
|
7017
|
+
return (0, import_vue53.h)(MicrosoftButton_default, { class: options.buttonClassName, key, onClick: handleClick });
|
|
6916
7018
|
}
|
|
6917
|
-
const startIconVNode = component.startIcon ? (0,
|
|
7019
|
+
const startIconVNode = component.startIcon ? (0, import_vue53.h)("img", {
|
|
6918
7020
|
alt: "",
|
|
6919
7021
|
"aria-hidden": "true",
|
|
6920
7022
|
src: component.startIcon,
|
|
6921
7023
|
style: { height: "1.25em", objectFit: "contain", width: "1.25em" }
|
|
6922
7024
|
}) : null;
|
|
6923
|
-
const endIconVNode = component.endIcon ? (0,
|
|
7025
|
+
const endIconVNode = component.endIcon ? (0, import_vue53.h)("img", {
|
|
6924
7026
|
alt: "",
|
|
6925
7027
|
"aria-hidden": "true",
|
|
6926
7028
|
src: component.endIcon,
|
|
6927
7029
|
style: { height: "1.25em", objectFit: "contain", width: "1.25em" }
|
|
6928
7030
|
}) : null;
|
|
6929
|
-
return (0,
|
|
7031
|
+
return (0, import_vue53.h)(
|
|
6930
7032
|
Button_default,
|
|
6931
7033
|
{
|
|
6932
7034
|
class: options.buttonClassName,
|
|
@@ -6946,7 +7048,7 @@ var createAuthComponentFromFlow = (component, formValues, touchedFields, formErr
|
|
|
6946
7048
|
case import_browser38.EmbeddedFlowComponentTypeV2.Text: {
|
|
6947
7049
|
const variant = getTypographyVariant(component.variant);
|
|
6948
7050
|
const align = typeof component["align"] === "string" ? component["align"] : "left";
|
|
6949
|
-
return (0,
|
|
7051
|
+
return (0, import_vue53.h)(
|
|
6950
7052
|
Typography_default,
|
|
6951
7053
|
{
|
|
6952
7054
|
key,
|
|
@@ -6958,7 +7060,7 @@ var createAuthComponentFromFlow = (component, formValues, touchedFields, formErr
|
|
|
6958
7060
|
}
|
|
6959
7061
|
case import_browser38.EmbeddedFlowComponentTypeV2.Divider: {
|
|
6960
7062
|
const dividerLabel = resolve(component.label) || "";
|
|
6961
|
-
return (0,
|
|
7063
|
+
return (0, import_vue53.h)(Divider_default, { key }, dividerLabel ? { default: () => dividerLabel } : void 0);
|
|
6962
7064
|
}
|
|
6963
7065
|
case import_browser38.EmbeddedFlowComponentTypeV2.Select: {
|
|
6964
7066
|
const identifier = component.ref;
|
|
@@ -6971,7 +7073,7 @@ var createAuthComponentFromFlow = (component, formValues, touchedFields, formErr
|
|
|
6971
7073
|
value: typeof opt === "string" ? opt : String(opt.value ?? "")
|
|
6972
7074
|
})
|
|
6973
7075
|
);
|
|
6974
|
-
return (0,
|
|
7076
|
+
return (0, import_vue53.h)(Select_default, {
|
|
6975
7077
|
class: options.inputClassName,
|
|
6976
7078
|
error,
|
|
6977
7079
|
key,
|
|
@@ -7002,12 +7104,12 @@ var createAuthComponentFromFlow = (component, formValues, touchedFields, formErr
|
|
|
7002
7104
|
}
|
|
7003
7105
|
)
|
|
7004
7106
|
).filter(Boolean);
|
|
7005
|
-
return (0,
|
|
7107
|
+
return (0, import_vue53.h)("form", { id: component.id, key }, blockChildren);
|
|
7006
7108
|
}
|
|
7007
7109
|
return null;
|
|
7008
7110
|
}
|
|
7009
7111
|
case import_browser38.EmbeddedFlowComponentTypeV2.RichText: {
|
|
7010
|
-
return (0,
|
|
7112
|
+
return (0, import_vue53.h)("div", {
|
|
7011
7113
|
innerHTML: import_dompurify.default.sanitize(resolveEmojiUrisInHtml(resolve(component.label))),
|
|
7012
7114
|
key,
|
|
7013
7115
|
style: { overflowWrap: "anywhere" }
|
|
@@ -7016,7 +7118,7 @@ var createAuthComponentFromFlow = (component, formValues, touchedFields, formErr
|
|
|
7016
7118
|
case import_browser38.EmbeddedFlowComponentTypeV2.Image: {
|
|
7017
7119
|
const explicitHeight = resolve(component.height?.toString());
|
|
7018
7120
|
const explicitWidth = resolve(component.width?.toString());
|
|
7019
|
-
return (0,
|
|
7121
|
+
return (0, import_vue53.h)("img", {
|
|
7020
7122
|
alt: resolve(component.alt) || resolve(component.label) || "Image",
|
|
7021
7123
|
key,
|
|
7022
7124
|
src: resolve(component.src),
|
|
@@ -7060,7 +7162,7 @@ var createAuthComponentFromFlow = (component, formValues, touchedFields, formErr
|
|
|
7060
7162
|
}
|
|
7061
7163
|
)
|
|
7062
7164
|
) : [];
|
|
7063
|
-
return (0,
|
|
7165
|
+
return (0, import_vue53.h)("div", { key, style: stackStyle }, stackChildren.filter(Boolean));
|
|
7064
7166
|
}
|
|
7065
7167
|
case import_browser38.EmbeddedFlowComponentTypeV2.Consent: {
|
|
7066
7168
|
logger5.warn(`Consent component type is not yet fully supported in the Vue SDK.`);
|
|
@@ -7071,7 +7173,7 @@ var createAuthComponentFromFlow = (component, formValues, touchedFields, formErr
|
|
|
7071
7173
|
const timeoutMs = Number(options.additionalData?.["stepTimeout"]) || 0;
|
|
7072
7174
|
const expiresIn = timeoutMs > 0 ? Math.max(0, Math.floor((timeoutMs - Date.now()) / 1e3)) : 0;
|
|
7073
7175
|
const timerText = textTemplate.replace("{time}", String(expiresIn));
|
|
7074
|
-
return (0,
|
|
7176
|
+
return (0, import_vue53.h)("div", { class: "asgardeo-flow-timer", key }, timerText);
|
|
7075
7177
|
}
|
|
7076
7178
|
default:
|
|
7077
7179
|
logger5.warn(`Unsupported component type: ${component.type}. Skipping render.`);
|
|
@@ -7245,7 +7347,7 @@ var normalizeFlowResponse = (response, t, options = {}, meta) => {
|
|
|
7245
7347
|
return {
|
|
7246
7348
|
additionalData,
|
|
7247
7349
|
components: transformComponents(response, t, resolveTranslations, meta),
|
|
7248
|
-
|
|
7350
|
+
executionId: response.executionId
|
|
7249
7351
|
};
|
|
7250
7352
|
};
|
|
7251
7353
|
|
|
@@ -7265,7 +7367,7 @@ var extractFormFields = (flowComponents) => {
|
|
|
7265
7367
|
process(flowComponents);
|
|
7266
7368
|
return fields;
|
|
7267
7369
|
};
|
|
7268
|
-
var BaseSignIn2 = (0,
|
|
7370
|
+
var BaseSignIn2 = (0, import_vue54.defineComponent)({
|
|
7269
7371
|
emits: ["error", "success"],
|
|
7270
7372
|
name: "BaseSignIn",
|
|
7271
7373
|
props: {
|
|
@@ -7298,12 +7400,12 @@ var BaseSignIn2 = (0, import_vue53.defineComponent)({
|
|
|
7298
7400
|
const { meta: metaRef } = useFlowMeta_default();
|
|
7299
7401
|
const { t } = useI18n_default();
|
|
7300
7402
|
const { subtitle: flowSubtitle, title: flowTitle, messages: flowMessages, addMessage, clearMessages } = useFlow_default();
|
|
7301
|
-
const isSubmitting = (0,
|
|
7302
|
-
const apiError = (0,
|
|
7303
|
-
const isLoading = (0,
|
|
7304
|
-
const formValues = (0,
|
|
7305
|
-
const touchedFields = (0,
|
|
7306
|
-
(0,
|
|
7403
|
+
const isSubmitting = (0, import_vue54.ref)(false);
|
|
7404
|
+
const apiError = (0, import_vue54.ref)(null);
|
|
7405
|
+
const isLoading = (0, import_vue54.computed)(() => props.isLoading || isSubmitting.value);
|
|
7406
|
+
const formValues = (0, import_vue54.ref)({});
|
|
7407
|
+
const touchedFields = (0, import_vue54.ref)({});
|
|
7408
|
+
(0, import_vue54.watch)(
|
|
7307
7409
|
() => props.components,
|
|
7308
7410
|
(newComponents) => {
|
|
7309
7411
|
const fields = extractFormFields(newComponents || []);
|
|
@@ -7316,7 +7418,7 @@ var BaseSignIn2 = (0, import_vue53.defineComponent)({
|
|
|
7316
7418
|
},
|
|
7317
7419
|
{ deep: false, immediate: true }
|
|
7318
7420
|
);
|
|
7319
|
-
const formErrors = (0,
|
|
7421
|
+
const formErrors = (0, import_vue54.computed)(() => {
|
|
7320
7422
|
const fields = extractFormFields(props.components || []);
|
|
7321
7423
|
const errors = {};
|
|
7322
7424
|
fields.forEach((field) => {
|
|
@@ -7331,7 +7433,7 @@ var BaseSignIn2 = (0, import_vue53.defineComponent)({
|
|
|
7331
7433
|
});
|
|
7332
7434
|
return errors;
|
|
7333
7435
|
});
|
|
7334
|
-
const isFormValid = (0,
|
|
7436
|
+
const isFormValid = (0, import_vue54.computed)(() => Object.keys(formErrors.value).length === 0);
|
|
7335
7437
|
const handleError = (error) => {
|
|
7336
7438
|
const errorMessage = error?.failureReason || extractErrorMessage(error, t);
|
|
7337
7439
|
apiError.value = error instanceof Error ? error : new Error(errorMessage);
|
|
@@ -7431,23 +7533,23 @@ var BaseSignIn2 = (0, import_vue53.defineComponent)({
|
|
|
7431
7533
|
validateForm,
|
|
7432
7534
|
values: formValues.value
|
|
7433
7535
|
};
|
|
7434
|
-
return (0,
|
|
7536
|
+
return (0, import_vue54.h)("div", { class: containerClass, ...attrs }, slots["default"](renderProps));
|
|
7435
7537
|
}
|
|
7436
7538
|
if (isLoading.value && (!props.components || props.components.length === 0)) {
|
|
7437
|
-
return (0,
|
|
7539
|
+
return (0, import_vue54.h)(
|
|
7438
7540
|
Card_default,
|
|
7439
7541
|
{ class: containerClass, variant: props.variant },
|
|
7440
|
-
() => (0,
|
|
7542
|
+
() => (0, import_vue54.h)("div", { style: "display:flex;justify-content:center;padding:2rem" }, (0, import_vue54.h)(Spinner_default))
|
|
7441
7543
|
);
|
|
7442
7544
|
}
|
|
7443
7545
|
if (!props.components || props.components.length === 0) {
|
|
7444
|
-
return (0,
|
|
7546
|
+
return (0, import_vue54.h)(
|
|
7445
7547
|
Card_default,
|
|
7446
7548
|
{ class: containerClass, variant: props.variant },
|
|
7447
|
-
() => (0,
|
|
7549
|
+
() => (0, import_vue54.h)(
|
|
7448
7550
|
Alert_default,
|
|
7449
7551
|
{ severity: "warning" },
|
|
7450
|
-
() => (0,
|
|
7552
|
+
() => (0, import_vue54.h)(
|
|
7451
7553
|
Typography_default,
|
|
7452
7554
|
{ variant: "body1" },
|
|
7453
7555
|
() => t("errors.signin.components.not.available") || "No sign-in options available"
|
|
@@ -7457,24 +7559,24 @@ var BaseSignIn2 = (0, import_vue53.defineComponent)({
|
|
|
7457
7559
|
}
|
|
7458
7560
|
const messages = flowMessages.value || [];
|
|
7459
7561
|
const externalError = props.error;
|
|
7460
|
-
return (0,
|
|
7562
|
+
return (0, import_vue54.h)(Card_default, { class: containerClass, ...attrs, variant: props.variant }, () => [
|
|
7461
7563
|
// Show errors and flow messages
|
|
7462
|
-
(externalError || messages.length > 0) && (0,
|
|
7564
|
+
(externalError || messages.length > 0) && (0, import_vue54.h)(
|
|
7463
7565
|
"div",
|
|
7464
7566
|
{ class: [(0, import_browser40.withVendorCSSClassPrefix)("signin__messages"), props.messageClassName].filter(Boolean).join(" ") },
|
|
7465
7567
|
[
|
|
7466
|
-
externalError && (0,
|
|
7568
|
+
externalError && (0, import_vue54.h)(Alert_default, { severity: "error" }, () => (0, import_vue54.h)(Typography_default, { variant: "body2" }, () => externalError.message)),
|
|
7467
7569
|
...messages.map(
|
|
7468
|
-
(msg, index) => (0,
|
|
7570
|
+
(msg, index) => (0, import_vue54.h)(
|
|
7469
7571
|
Alert_default,
|
|
7470
7572
|
{ key: index, severity: msg.type === "error" ? "error" : "info" },
|
|
7471
|
-
() => (0,
|
|
7573
|
+
() => (0, import_vue54.h)(Typography_default, { variant: "body2" }, () => msg.message)
|
|
7472
7574
|
)
|
|
7473
7575
|
)
|
|
7474
7576
|
]
|
|
7475
7577
|
),
|
|
7476
7578
|
// Render flow components
|
|
7477
|
-
(0,
|
|
7579
|
+
(0, import_vue54.h)("div", { class: (0, import_browser40.withVendorCSSClassPrefix)("signin__content") }, renderComponents())
|
|
7478
7580
|
]);
|
|
7479
7581
|
};
|
|
7480
7582
|
}
|
|
@@ -7649,9 +7751,9 @@ var handlePasskeyAuthentication = async (challengeData) => {
|
|
|
7649
7751
|
};
|
|
7650
7752
|
|
|
7651
7753
|
// src/components/presentation/sign-in/v2/SignIn.ts
|
|
7652
|
-
var
|
|
7754
|
+
var EXECUTION_ID_STORAGE_KEY = "asgardeo_execution_id";
|
|
7653
7755
|
var AUTH_ID_STORAGE_KEY = "asgardeo_auth_id";
|
|
7654
|
-
var SignIn2 = (0,
|
|
7756
|
+
var SignIn2 = (0, import_vue55.defineComponent)({
|
|
7655
7757
|
emits: ["error", "success"],
|
|
7656
7758
|
name: "SignIn",
|
|
7657
7759
|
props: {
|
|
@@ -7669,34 +7771,34 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
7669
7771
|
const { applicationId, afterSignInUrl, signIn, isInitialized, isLoading: sdkLoading } = useAsgardeo_default();
|
|
7670
7772
|
const { meta: flowMeta } = useFlowMeta_default();
|
|
7671
7773
|
const { t } = useI18n_default();
|
|
7672
|
-
const components = (0,
|
|
7673
|
-
const additionalData = (0,
|
|
7674
|
-
const
|
|
7675
|
-
const isFlowInitialized = (0,
|
|
7676
|
-
const flowError = (0,
|
|
7677
|
-
const isSubmitting = (0,
|
|
7678
|
-
const isTimeoutDisabled = (0,
|
|
7679
|
-
const passkeyState = (0,
|
|
7774
|
+
const components = (0, import_vue55.ref)([]);
|
|
7775
|
+
const additionalData = (0, import_vue55.ref)({});
|
|
7776
|
+
const currentExecutionId = (0, import_vue55.ref)(null);
|
|
7777
|
+
const isFlowInitialized = (0, import_vue55.ref)(false);
|
|
7778
|
+
const flowError = (0, import_vue55.ref)(null);
|
|
7779
|
+
const isSubmitting = (0, import_vue55.ref)(false);
|
|
7780
|
+
const isTimeoutDisabled = (0, import_vue55.ref)(false);
|
|
7781
|
+
const passkeyState = (0, import_vue55.ref)({
|
|
7680
7782
|
actionId: null,
|
|
7681
7783
|
challenge: null,
|
|
7682
7784
|
creationOptions: null,
|
|
7683
7785
|
error: null,
|
|
7684
|
-
|
|
7786
|
+
executionId: null,
|
|
7685
7787
|
isActive: false
|
|
7686
7788
|
});
|
|
7687
7789
|
let initializationAttempted = false;
|
|
7688
7790
|
const oauthCodeProcessedFlag = { value: false };
|
|
7689
7791
|
let passkeyProcessed = false;
|
|
7690
|
-
const
|
|
7691
|
-
|
|
7692
|
-
if (
|
|
7693
|
-
sessionStorage.setItem(
|
|
7792
|
+
const persistExecutionId = (executionId) => {
|
|
7793
|
+
currentExecutionId.value = executionId;
|
|
7794
|
+
if (executionId) {
|
|
7795
|
+
sessionStorage.setItem(EXECUTION_ID_STORAGE_KEY, executionId);
|
|
7694
7796
|
} else {
|
|
7695
|
-
sessionStorage.removeItem(
|
|
7797
|
+
sessionStorage.removeItem(EXECUTION_ID_STORAGE_KEY);
|
|
7696
7798
|
}
|
|
7697
7799
|
};
|
|
7698
7800
|
const clearFlowState = () => {
|
|
7699
|
-
|
|
7801
|
+
persistExecutionId(null);
|
|
7700
7802
|
isFlowInitialized.value = false;
|
|
7701
7803
|
sessionStorage.removeItem(AUTH_ID_STORAGE_KEY);
|
|
7702
7804
|
isTimeoutDisabled.value = false;
|
|
@@ -7710,7 +7812,7 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
7710
7812
|
code: params.get("code"),
|
|
7711
7813
|
error: params.get("error"),
|
|
7712
7814
|
errorDescription: params.get("error_description"),
|
|
7713
|
-
|
|
7815
|
+
executionId: params.get("executionId"),
|
|
7714
7816
|
nonce: params.get("nonce"),
|
|
7715
7817
|
state: params.get("state")
|
|
7716
7818
|
};
|
|
@@ -7724,7 +7826,7 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
7724
7826
|
const cleanupFlowUrlParams = () => {
|
|
7725
7827
|
if (!window?.location?.href) return;
|
|
7726
7828
|
const url = new URL(window.location.href);
|
|
7727
|
-
["
|
|
7829
|
+
["executionId", "authId", "applicationId"].forEach((p) => url.searchParams.delete(p));
|
|
7728
7830
|
window.history.replaceState({}, "", url.toString());
|
|
7729
7831
|
};
|
|
7730
7832
|
const setError = (error) => {
|
|
@@ -7739,9 +7841,9 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
7739
7841
|
sessionStorage.setItem(AUTH_ID_STORAGE_KEY, urlParams.authId);
|
|
7740
7842
|
}
|
|
7741
7843
|
const effectiveApplicationId = applicationId || urlParams.applicationId;
|
|
7742
|
-
if (!urlParams.
|
|
7844
|
+
if (!urlParams.executionId && !effectiveApplicationId) {
|
|
7743
7845
|
const err = new import_browser43.AsgardeoRuntimeError(
|
|
7744
|
-
"Either
|
|
7846
|
+
"Either executionId or applicationId is required for authentication",
|
|
7745
7847
|
"SIGN_IN_ERROR",
|
|
7746
7848
|
"vue"
|
|
7747
7849
|
);
|
|
@@ -7751,8 +7853,8 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
7751
7853
|
try {
|
|
7752
7854
|
flowError.value = null;
|
|
7753
7855
|
let response;
|
|
7754
|
-
if (urlParams.
|
|
7755
|
-
response = await signIn({
|
|
7856
|
+
if (urlParams.executionId) {
|
|
7857
|
+
response = await signIn({ executionId: urlParams.executionId });
|
|
7756
7858
|
} else {
|
|
7757
7859
|
response = await signIn({
|
|
7758
7860
|
applicationId: effectiveApplicationId,
|
|
@@ -7762,19 +7864,19 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
7762
7864
|
if (response.type === import_browser43.EmbeddedSignInFlowTypeV2.Redirection) {
|
|
7763
7865
|
const redirectURL = response.data?.redirectURL || response?.redirectURL;
|
|
7764
7866
|
if (redirectURL && window?.location) {
|
|
7765
|
-
if (response.
|
|
7867
|
+
if (response.executionId) persistExecutionId(response.executionId);
|
|
7766
7868
|
if (urlParams.authId) sessionStorage.setItem(AUTH_ID_STORAGE_KEY, urlParams.authId);
|
|
7767
7869
|
initiateOAuthRedirect(redirectURL);
|
|
7768
7870
|
return;
|
|
7769
7871
|
}
|
|
7770
7872
|
}
|
|
7771
7873
|
const {
|
|
7772
|
-
|
|
7874
|
+
executionId: normalizedExecutionId,
|
|
7773
7875
|
components: normalizedComponents,
|
|
7774
7876
|
additionalData: normalizedAdditionalData
|
|
7775
7877
|
} = normalizeFlowResponse(response, t, { resolveTranslations: false }, flowMeta.value);
|
|
7776
|
-
if (
|
|
7777
|
-
|
|
7878
|
+
if (normalizedExecutionId && normalizedComponents) {
|
|
7879
|
+
persistExecutionId(normalizedExecutionId);
|
|
7778
7880
|
components.value = normalizedComponents;
|
|
7779
7881
|
additionalData.value = normalizedAdditionalData ?? {};
|
|
7780
7882
|
isFlowInitialized.value = true;
|
|
@@ -7790,8 +7892,8 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
7790
7892
|
}
|
|
7791
7893
|
};
|
|
7792
7894
|
const handleSubmit = async (payload) => {
|
|
7793
|
-
const
|
|
7794
|
-
if (!
|
|
7895
|
+
const effectiveExecutionId = payload.executionId || currentExecutionId.value;
|
|
7896
|
+
if (!effectiveExecutionId) {
|
|
7795
7897
|
throw new Error("No active flow ID");
|
|
7796
7898
|
}
|
|
7797
7899
|
const processedInputs = { ...payload.inputs };
|
|
@@ -7836,14 +7938,14 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
7836
7938
|
isSubmitting.value = true;
|
|
7837
7939
|
flowError.value = null;
|
|
7838
7940
|
const response = await signIn({
|
|
7839
|
-
|
|
7941
|
+
executionId: effectiveExecutionId,
|
|
7840
7942
|
...payload,
|
|
7841
7943
|
inputs: processedInputs
|
|
7842
7944
|
});
|
|
7843
7945
|
if (response.type === import_browser43.EmbeddedSignInFlowTypeV2.Redirection) {
|
|
7844
7946
|
const redirectURL = response.data?.redirectURL || response?.redirectURL;
|
|
7845
7947
|
if (redirectURL && window?.location) {
|
|
7846
|
-
if (response.
|
|
7948
|
+
if (response.executionId) persistExecutionId(response.executionId);
|
|
7847
7949
|
const urlParams = getUrlParams2();
|
|
7848
7950
|
if (urlParams.authId) sessionStorage.setItem(AUTH_ID_STORAGE_KEY, urlParams.authId);
|
|
7849
7951
|
initiateOAuthRedirect(redirectURL);
|
|
@@ -7858,14 +7960,14 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
7858
7960
|
challenge: passkeyChallenge || null,
|
|
7859
7961
|
creationOptions: passkeyCreationOptions || null,
|
|
7860
7962
|
error: null,
|
|
7861
|
-
|
|
7963
|
+
executionId: response.executionId || effectiveExecutionId,
|
|
7862
7964
|
isActive: true
|
|
7863
7965
|
};
|
|
7864
7966
|
isSubmitting.value = false;
|
|
7865
7967
|
return;
|
|
7866
7968
|
}
|
|
7867
7969
|
const {
|
|
7868
|
-
|
|
7970
|
+
executionId: normalizedExecutionId,
|
|
7869
7971
|
components: normalizedComponents,
|
|
7870
7972
|
additionalData: normalizedAdditionalData
|
|
7871
7973
|
} = normalizeFlowResponse(response, t, { resolveTranslations: false }, flowMeta.value);
|
|
@@ -7881,7 +7983,7 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
7881
7983
|
const redirectUrl = response?.redirectUrl || response?.redirect_uri;
|
|
7882
7984
|
const finalRedirectUrl = redirectUrl || afterSignInUrl;
|
|
7883
7985
|
isSubmitting.value = false;
|
|
7884
|
-
|
|
7986
|
+
persistExecutionId(null);
|
|
7885
7987
|
isFlowInitialized.value = false;
|
|
7886
7988
|
sessionStorage.removeItem(AUTH_ID_STORAGE_KEY);
|
|
7887
7989
|
cleanupOAuthUrlParams();
|
|
@@ -7894,8 +7996,8 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
7894
7996
|
}
|
|
7895
7997
|
return;
|
|
7896
7998
|
}
|
|
7897
|
-
if (
|
|
7898
|
-
|
|
7999
|
+
if (normalizedExecutionId && normalizedComponents) {
|
|
8000
|
+
persistExecutionId(normalizedExecutionId);
|
|
7899
8001
|
components.value = normalizedComponents;
|
|
7900
8002
|
additionalData.value = normalizedAdditionalData ?? {};
|
|
7901
8003
|
isTimeoutDisabled.value = false;
|
|
@@ -7935,19 +8037,19 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
7935
8037
|
setError(new Error(t("errors.signin.timeout") || "Time allowed to complete the step has expired."));
|
|
7936
8038
|
}, remaining * 1e3);
|
|
7937
8039
|
};
|
|
7938
|
-
(0,
|
|
8040
|
+
(0, import_vue55.watch)(
|
|
7939
8041
|
() => [additionalData.value?.["stepTimeout"], isFlowInitialized.value],
|
|
7940
8042
|
([timeoutMs]) => {
|
|
7941
8043
|
scheduleTimeout(Number(timeoutMs) || 0);
|
|
7942
8044
|
}
|
|
7943
8045
|
);
|
|
7944
|
-
(0,
|
|
8046
|
+
(0, import_vue55.onUnmounted)(() => {
|
|
7945
8047
|
if (timeoutHandle) clearTimeout(timeoutHandle);
|
|
7946
8048
|
});
|
|
7947
|
-
(0,
|
|
8049
|
+
(0, import_vue55.watch)(
|
|
7948
8050
|
() => passkeyState.value,
|
|
7949
8051
|
async (state) => {
|
|
7950
|
-
if (!state.isActive || !state.challenge && !state.creationOptions || !state.
|
|
8052
|
+
if (!state.isActive || !state.challenge && !state.creationOptions || !state.executionId) return;
|
|
7951
8053
|
if (passkeyProcessed) return;
|
|
7952
8054
|
passkeyProcessed = true;
|
|
7953
8055
|
try {
|
|
@@ -7973,13 +8075,13 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
7973
8075
|
} else {
|
|
7974
8076
|
throw new Error("No passkey challenge or creation options available");
|
|
7975
8077
|
}
|
|
7976
|
-
await handleSubmit({
|
|
8078
|
+
await handleSubmit({ executionId: state.executionId, inputs });
|
|
7977
8079
|
passkeyState.value = {
|
|
7978
8080
|
actionId: null,
|
|
7979
8081
|
challenge: null,
|
|
7980
8082
|
creationOptions: null,
|
|
7981
8083
|
error: null,
|
|
7982
|
-
|
|
8084
|
+
executionId: null,
|
|
7983
8085
|
isActive: false
|
|
7984
8086
|
};
|
|
7985
8087
|
} catch (error) {
|
|
@@ -7991,9 +8093,9 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
7991
8093
|
},
|
|
7992
8094
|
{ deep: true }
|
|
7993
8095
|
);
|
|
7994
|
-
|
|
7995
|
-
|
|
7996
|
-
|
|
8096
|
+
useOAuthCallback2({
|
|
8097
|
+
currentExecutionId,
|
|
8098
|
+
executionIdStorageKey: EXECUTION_ID_STORAGE_KEY,
|
|
7997
8099
|
isInitialized,
|
|
7998
8100
|
isSubmitting,
|
|
7999
8101
|
onError: (err) => {
|
|
@@ -8002,23 +8104,29 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
8002
8104
|
setError(err instanceof Error ? err : new Error(String(err)));
|
|
8003
8105
|
}
|
|
8004
8106
|
},
|
|
8005
|
-
onSubmit: (payload) => handleSubmit({
|
|
8107
|
+
onSubmit: (payload) => handleSubmit({ executionId: payload.executionId, inputs: payload.inputs }),
|
|
8006
8108
|
processedFlag: oauthCodeProcessedFlag,
|
|
8007
|
-
|
|
8109
|
+
setExecutionId: persistExecutionId
|
|
8008
8110
|
});
|
|
8009
|
-
(0,
|
|
8111
|
+
(0, import_vue55.onMounted)(() => {
|
|
8010
8112
|
const urlParams = getUrlParams2();
|
|
8011
8113
|
if (urlParams.authId) {
|
|
8012
8114
|
sessionStorage.setItem(AUTH_ID_STORAGE_KEY, urlParams.authId);
|
|
8013
8115
|
}
|
|
8014
8116
|
});
|
|
8015
|
-
(0,
|
|
8016
|
-
() => [
|
|
8017
|
-
|
|
8117
|
+
(0, import_vue55.watch)(
|
|
8118
|
+
() => [
|
|
8119
|
+
isInitialized.value,
|
|
8120
|
+
sdkLoading.value,
|
|
8121
|
+
isFlowInitialized.value,
|
|
8122
|
+
currentExecutionId.value,
|
|
8123
|
+
isSubmitting.value
|
|
8124
|
+
],
|
|
8125
|
+
([initialized, loading, flowInit, executionId, submitting]) => {
|
|
8018
8126
|
const urlParams = getUrlParams2();
|
|
8019
8127
|
const hasOAuthCode = !!urlParams.code;
|
|
8020
8128
|
const hasOAuthState = !!urlParams.state;
|
|
8021
|
-
if (initialized && !loading && !flowInit && !initializationAttempted && !
|
|
8129
|
+
if (initialized && !loading && !flowInit && !initializationAttempted && !executionId && !hasOAuthCode && !hasOAuthState && !submitting && !oauthCodeProcessedFlag.value) {
|
|
8022
8130
|
initializationAttempted = true;
|
|
8023
8131
|
initializeFlow();
|
|
8024
8132
|
}
|
|
@@ -8038,9 +8146,9 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
8038
8146
|
meta: flowMeta.value,
|
|
8039
8147
|
onSubmit: handleSubmit
|
|
8040
8148
|
};
|
|
8041
|
-
return (0,
|
|
8149
|
+
return (0, import_vue55.h)("div", {}, slots["default"](renderProps));
|
|
8042
8150
|
}
|
|
8043
|
-
return (0,
|
|
8151
|
+
return (0, import_vue55.h)(BaseSignIn_default2, {
|
|
8044
8152
|
...attrs,
|
|
8045
8153
|
additionalData: additionalData.value,
|
|
8046
8154
|
class: props.className,
|
|
@@ -8059,7 +8167,7 @@ var SignIn2 = (0, import_vue54.defineComponent)({
|
|
|
8059
8167
|
var SignIn_default2 = SignIn2;
|
|
8060
8168
|
|
|
8061
8169
|
// src/components/presentation/sign-in/SignIn.ts
|
|
8062
|
-
var SignIn3 = (0,
|
|
8170
|
+
var SignIn3 = (0, import_vue56.defineComponent)({
|
|
8063
8171
|
emits: ["error", "success"],
|
|
8064
8172
|
name: "SignIn",
|
|
8065
8173
|
props: {
|
|
@@ -8077,7 +8185,7 @@ var SignIn3 = (0, import_vue55.defineComponent)({
|
|
|
8077
8185
|
const { platform } = useAsgardeo_default();
|
|
8078
8186
|
return () => {
|
|
8079
8187
|
if (platform === import_browser44.Platform.AsgardeoV2) {
|
|
8080
|
-
return (0,
|
|
8188
|
+
return (0, import_vue56.h)(
|
|
8081
8189
|
SignIn_default2,
|
|
8082
8190
|
{
|
|
8083
8191
|
...attrs,
|
|
@@ -8090,7 +8198,7 @@ var SignIn3 = (0, import_vue55.defineComponent)({
|
|
|
8090
8198
|
slots
|
|
8091
8199
|
);
|
|
8092
8200
|
}
|
|
8093
|
-
return (0,
|
|
8201
|
+
return (0, import_vue56.h)(
|
|
8094
8202
|
SignIn_default,
|
|
8095
8203
|
{
|
|
8096
8204
|
...attrs,
|
|
@@ -8109,17 +8217,17 @@ var SignIn_default3 = SignIn3;
|
|
|
8109
8217
|
|
|
8110
8218
|
// src/components/presentation/sign-in/BaseSignIn.ts
|
|
8111
8219
|
var import_browser45 = require("@asgardeo/browser");
|
|
8112
|
-
var
|
|
8113
|
-
var BaseSignIn3 = (0,
|
|
8220
|
+
var import_vue57 = require("vue");
|
|
8221
|
+
var BaseSignIn3 = (0, import_vue57.defineComponent)({
|
|
8114
8222
|
inheritAttrs: false,
|
|
8115
8223
|
name: "BaseSignIn",
|
|
8116
8224
|
setup(_props, { attrs, slots }) {
|
|
8117
8225
|
const { platform } = useAsgardeo_default();
|
|
8118
8226
|
return () => {
|
|
8119
8227
|
if (platform === import_browser45.Platform.AsgardeoV2) {
|
|
8120
|
-
return (0,
|
|
8228
|
+
return (0, import_vue57.h)(BaseSignIn_default2, { ...attrs }, slots);
|
|
8121
8229
|
}
|
|
8122
|
-
return (0,
|
|
8230
|
+
return (0, import_vue57.h)(BaseSignIn_default, { ...attrs }, slots);
|
|
8123
8231
|
};
|
|
8124
8232
|
}
|
|
8125
8233
|
});
|
|
@@ -8127,11 +8235,11 @@ var BaseSignIn_default3 = BaseSignIn3;
|
|
|
8127
8235
|
|
|
8128
8236
|
// src/components/presentation/sign-up/SignUp.ts
|
|
8129
8237
|
var import_browser47 = require("@asgardeo/browser");
|
|
8130
|
-
var
|
|
8238
|
+
var import_vue59 = require("vue");
|
|
8131
8239
|
|
|
8132
8240
|
// src/components/presentation/sign-up/BaseSignUp.ts
|
|
8133
8241
|
var import_browser46 = require("@asgardeo/browser");
|
|
8134
|
-
var
|
|
8242
|
+
var import_vue58 = require("vue");
|
|
8135
8243
|
|
|
8136
8244
|
// src/utils/v2/getAuthComponentHeadings.ts
|
|
8137
8245
|
var getAuthComponentHeadings = (components, flowTitle, flowSubtitle, defaultTitle, defaultSubtitle) => {
|
|
@@ -8212,7 +8320,7 @@ var extractFormFields2 = (components) => {
|
|
|
8212
8320
|
process(components);
|
|
8213
8321
|
return fields;
|
|
8214
8322
|
};
|
|
8215
|
-
var BaseSignUp = (0,
|
|
8323
|
+
var BaseSignUp = (0, import_vue58.defineComponent)({
|
|
8216
8324
|
emits: ["error", "complete", "flowChange"],
|
|
8217
8325
|
name: "BaseSignUp",
|
|
8218
8326
|
props: {
|
|
@@ -8252,22 +8360,22 @@ var BaseSignUp = (0, import_vue57.defineComponent)({
|
|
|
8252
8360
|
setup(props, { slots }) {
|
|
8253
8361
|
const { meta: flowMetaRef } = useFlowMeta_default();
|
|
8254
8362
|
const { t } = useI18n_default();
|
|
8255
|
-
const isLoading = (0,
|
|
8256
|
-
const isFlowInitialized = (0,
|
|
8257
|
-
const currentFlow = (0,
|
|
8258
|
-
const apiError = (0,
|
|
8259
|
-
const flowMessages = (0,
|
|
8260
|
-
const passkeyState = (0,
|
|
8363
|
+
const isLoading = (0, import_vue58.ref)(false);
|
|
8364
|
+
const isFlowInitialized = (0, import_vue58.ref)(false);
|
|
8365
|
+
const currentFlow = (0, import_vue58.ref)(null);
|
|
8366
|
+
const apiError = (0, import_vue58.ref)(null);
|
|
8367
|
+
const flowMessages = (0, import_vue58.ref)([]);
|
|
8368
|
+
const passkeyState = (0, import_vue58.ref)({
|
|
8261
8369
|
actionId: null,
|
|
8262
8370
|
creationOptions: null,
|
|
8263
8371
|
error: null,
|
|
8264
8372
|
flowId: null,
|
|
8265
8373
|
isActive: false
|
|
8266
8374
|
});
|
|
8267
|
-
const formValues = (0,
|
|
8268
|
-
const touchedFields = (0,
|
|
8269
|
-
const formErrors = (0,
|
|
8270
|
-
const isFormValid = (0,
|
|
8375
|
+
const formValues = (0, import_vue58.ref)({});
|
|
8376
|
+
const touchedFields = (0, import_vue58.ref)({});
|
|
8377
|
+
const formErrors = (0, import_vue58.ref)({});
|
|
8378
|
+
const isFormValid = (0, import_vue58.ref)(true);
|
|
8271
8379
|
let initializationAttempted = false;
|
|
8272
8380
|
let passkeyProcessed = false;
|
|
8273
8381
|
const handleError = (error) => {
|
|
@@ -8484,7 +8592,7 @@ var BaseSignUp = (0, import_vue57.defineComponent)({
|
|
|
8484
8592
|
isLoading.value = false;
|
|
8485
8593
|
}
|
|
8486
8594
|
};
|
|
8487
|
-
(0,
|
|
8595
|
+
(0, import_vue58.watch)(
|
|
8488
8596
|
() => passkeyState.value,
|
|
8489
8597
|
async (state) => {
|
|
8490
8598
|
if (!state.isActive || !state.creationOptions || !state.flowId) return;
|
|
@@ -8522,7 +8630,7 @@ var BaseSignUp = (0, import_vue57.defineComponent)({
|
|
|
8522
8630
|
},
|
|
8523
8631
|
{ deep: true }
|
|
8524
8632
|
);
|
|
8525
|
-
(0,
|
|
8633
|
+
(0, import_vue58.watch)(
|
|
8526
8634
|
() => [props.isInitialized, isFlowInitialized.value],
|
|
8527
8635
|
([initialized, flowInit]) => {
|
|
8528
8636
|
const urlParams = new URL(window.location.href).searchParams;
|
|
@@ -8583,20 +8691,20 @@ var BaseSignUp = (0, import_vue57.defineComponent)({
|
|
|
8583
8691
|
},
|
|
8584
8692
|
values: formValues.value
|
|
8585
8693
|
};
|
|
8586
|
-
return (0,
|
|
8694
|
+
return (0, import_vue58.h)("div", { class: containerClass }, slots["default"](renderProps));
|
|
8587
8695
|
}
|
|
8588
8696
|
if (!isFlowInitialized.value && isLoading.value) {
|
|
8589
|
-
return (0,
|
|
8697
|
+
return (0, import_vue58.h)(
|
|
8590
8698
|
Card_default,
|
|
8591
8699
|
{ class: containerClass, variant: props.variant },
|
|
8592
|
-
() => (0,
|
|
8700
|
+
() => (0, import_vue58.h)("div", { style: "display:flex;justify-content:center;padding:2rem" }, (0, import_vue58.h)(Spinner_default))
|
|
8593
8701
|
);
|
|
8594
8702
|
}
|
|
8595
8703
|
if (!currentFlow.value) {
|
|
8596
|
-
return (0,
|
|
8704
|
+
return (0, import_vue58.h)(
|
|
8597
8705
|
Card_default,
|
|
8598
8706
|
{ class: containerClass, variant: props.variant },
|
|
8599
|
-
() => (0,
|
|
8707
|
+
() => (0, import_vue58.h)(
|
|
8600
8708
|
Alert_default,
|
|
8601
8709
|
{ variant: "error" },
|
|
8602
8710
|
() => t("errors.signup.flow.initialization.failure") || "Failed to initialize sign-up flow"
|
|
@@ -8631,32 +8739,32 @@ var BaseSignUp = (0, import_vue57.defineComponent)({
|
|
|
8631
8739
|
variant: props.variant
|
|
8632
8740
|
}
|
|
8633
8741
|
) : [];
|
|
8634
|
-
return (0,
|
|
8742
|
+
return (0, import_vue58.h)(Card_default, { class: containerClass, variant: props.variant }, () => [
|
|
8635
8743
|
// Header with title/subtitle
|
|
8636
|
-
props.showTitle || props.showSubtitle ? (0,
|
|
8637
|
-
props.showTitle ? (0,
|
|
8638
|
-
props.showSubtitle ? (0,
|
|
8744
|
+
props.showTitle || props.showSubtitle ? (0, import_vue58.h)("div", { style: "padding: 1rem 1rem 0" }, [
|
|
8745
|
+
props.showTitle ? (0, import_vue58.h)(Typography_default, { variant: "h5" }, () => title) : null,
|
|
8746
|
+
props.showSubtitle ? (0, import_vue58.h)(Typography_default, { style: "margin-top: 0.25rem", variant: "body1" }, () => subtitle) : null
|
|
8639
8747
|
]) : null,
|
|
8640
8748
|
// External error
|
|
8641
|
-
props.error ? (0,
|
|
8749
|
+
props.error ? (0, import_vue58.h)(
|
|
8642
8750
|
"div",
|
|
8643
8751
|
{ style: "padding: 0 1rem" },
|
|
8644
|
-
(0,
|
|
8752
|
+
(0, import_vue58.h)(Alert_default, { variant: "error" }, () => props.error.message)
|
|
8645
8753
|
) : null,
|
|
8646
8754
|
// Flow messages
|
|
8647
|
-
flowMessages.value.length > 0 ? (0,
|
|
8755
|
+
flowMessages.value.length > 0 ? (0, import_vue58.h)(
|
|
8648
8756
|
"div",
|
|
8649
8757
|
{ style: "padding: 0 1rem" },
|
|
8650
8758
|
flowMessages.value.map(
|
|
8651
|
-
(msg, i) => (0,
|
|
8759
|
+
(msg, i) => (0, import_vue58.h)(Alert_default, { key: i, variant: msg.type === "error" ? "error" : "info" }, () => msg.message)
|
|
8652
8760
|
)
|
|
8653
8761
|
) : null,
|
|
8654
8762
|
// Components
|
|
8655
|
-
(0,
|
|
8763
|
+
(0, import_vue58.h)(
|
|
8656
8764
|
"div",
|
|
8657
8765
|
{ style: "padding: 1rem" },
|
|
8658
8766
|
renderedComponents.length > 0 ? renderedComponents : [
|
|
8659
|
-
(0,
|
|
8767
|
+
(0, import_vue58.h)(
|
|
8660
8768
|
Alert_default,
|
|
8661
8769
|
{ variant: "warning" },
|
|
8662
8770
|
() => t("errors.signup.components.not.available") || "No components available"
|
|
@@ -8670,7 +8778,7 @@ var BaseSignUp = (0, import_vue57.defineComponent)({
|
|
|
8670
8778
|
var BaseSignUp_default = BaseSignUp;
|
|
8671
8779
|
|
|
8672
8780
|
// src/components/presentation/sign-up/SignUp.ts
|
|
8673
|
-
var SignUp = (0,
|
|
8781
|
+
var SignUp = (0, import_vue59.defineComponent)({
|
|
8674
8782
|
name: "SignUp",
|
|
8675
8783
|
props: {
|
|
8676
8784
|
afterSignUpUrl: { default: void 0, type: String },
|
|
@@ -8714,7 +8822,7 @@ var SignUp = (0, import_vue58.defineComponent)({
|
|
|
8714
8822
|
window.location.href = response.data.redirectURL;
|
|
8715
8823
|
}
|
|
8716
8824
|
};
|
|
8717
|
-
return () => (0,
|
|
8825
|
+
return () => (0, import_vue59.h)(
|
|
8718
8826
|
BaseSignUp_default,
|
|
8719
8827
|
{
|
|
8720
8828
|
afterSignUpUrl: props.afterSignUpUrl,
|
|
@@ -8741,11 +8849,11 @@ var SignUp_default = SignUp;
|
|
|
8741
8849
|
|
|
8742
8850
|
// src/components/presentation/user-profile/UserProfile.ts
|
|
8743
8851
|
var import_browser49 = require("@asgardeo/browser");
|
|
8744
|
-
var
|
|
8852
|
+
var import_vue61 = require("vue");
|
|
8745
8853
|
|
|
8746
8854
|
// src/components/presentation/user-profile/BaseUserProfile.ts
|
|
8747
8855
|
var import_browser48 = require("@asgardeo/browser");
|
|
8748
|
-
var
|
|
8856
|
+
var import_vue60 = require("vue");
|
|
8749
8857
|
var PROFILE_FIELD_DESCRIPTORS = [
|
|
8750
8858
|
{ keys: ["username", "userName", "user_name"], label: "Username", readonly: true },
|
|
8751
8859
|
{ keys: ["firstName", "givenName"], label: "First Name", readonly: false },
|
|
@@ -8782,7 +8890,7 @@ var getUserInitials = (user) => {
|
|
|
8782
8890
|
const fallback = String(user["username"] || user["userName"] || user["email"] || user["sub"] || "");
|
|
8783
8891
|
return fallback.charAt(0).toUpperCase() || "?";
|
|
8784
8892
|
};
|
|
8785
|
-
var BaseUserProfile = (0,
|
|
8893
|
+
var BaseUserProfile = (0, import_vue60.defineComponent)({
|
|
8786
8894
|
inheritAttrs: false,
|
|
8787
8895
|
name: "BaseUserProfile",
|
|
8788
8896
|
props: {
|
|
@@ -8803,8 +8911,8 @@ var BaseUserProfile = (0, import_vue59.defineComponent)({
|
|
|
8803
8911
|
title: { default: "Profile", type: String }
|
|
8804
8912
|
},
|
|
8805
8913
|
setup(props, { slots }) {
|
|
8806
|
-
const editingFields = (0,
|
|
8807
|
-
const editedValues = (0,
|
|
8914
|
+
const editingFields = (0, import_vue60.ref)({});
|
|
8915
|
+
const editedValues = (0, import_vue60.ref)({});
|
|
8808
8916
|
return () => {
|
|
8809
8917
|
if (slots["default"]) {
|
|
8810
8918
|
return slots["default"]({
|
|
@@ -8823,28 +8931,28 @@ var BaseUserProfile = (0, import_vue59.defineComponent)({
|
|
|
8823
8931
|
const avatarGradient = getAvatarGradient(avatarSeed);
|
|
8824
8932
|
const children = [];
|
|
8825
8933
|
children.push(
|
|
8826
|
-
(0,
|
|
8827
|
-
(0,
|
|
8934
|
+
(0, import_vue60.h)("div", { class: prefix("user-profile__header") }, [
|
|
8935
|
+
(0, import_vue60.h)(Typography_default, { class: prefix("user-profile__title"), variant: "h5" }, () => props.title)
|
|
8828
8936
|
])
|
|
8829
8937
|
);
|
|
8830
|
-
children.push((0,
|
|
8938
|
+
children.push((0, import_vue60.h)(Divider_default, { class: prefix("user-profile__header-divider") }));
|
|
8831
8939
|
children.push(
|
|
8832
|
-
(0,
|
|
8833
|
-
(0,
|
|
8940
|
+
(0, import_vue60.h)("div", { class: prefix("user-profile__avatar-section") }, [
|
|
8941
|
+
(0, import_vue60.h)(
|
|
8834
8942
|
"div",
|
|
8835
8943
|
{
|
|
8836
8944
|
class: prefix("user-profile__avatar"),
|
|
8837
8945
|
style: { background: avatarGradient }
|
|
8838
8946
|
},
|
|
8839
|
-
[(0,
|
|
8947
|
+
[(0, import_vue60.h)("span", { class: prefix("user-profile__avatar-initials") }, initials)]
|
|
8840
8948
|
)
|
|
8841
8949
|
])
|
|
8842
8950
|
);
|
|
8843
8951
|
if (props.error) {
|
|
8844
|
-
children.push((0,
|
|
8952
|
+
children.push((0, import_vue60.h)(Alert_default, { class: prefix("user-profile__error"), severity: "error" }, () => props.error));
|
|
8845
8953
|
}
|
|
8846
8954
|
if (props.isLoading) {
|
|
8847
|
-
children.push((0,
|
|
8955
|
+
children.push((0, import_vue60.h)("div", { class: prefix("user-profile__loading") }, [(0, import_vue60.h)(Spinner_default)]));
|
|
8848
8956
|
} else if (data) {
|
|
8849
8957
|
const fieldDataRecord = data;
|
|
8850
8958
|
const descriptors = PROFILE_FIELD_DESCRIPTORS.filter((d) => {
|
|
@@ -8864,22 +8972,22 @@ var BaseUserProfile = (0, import_vue59.defineComponent)({
|
|
|
8864
8972
|
const isEmpty2 = value == null || value === "";
|
|
8865
8973
|
const { label } = descriptor;
|
|
8866
8974
|
fieldRows.push(
|
|
8867
|
-
(0,
|
|
8975
|
+
(0, import_vue60.h)("div", { class: prefix("user-profile__field"), key }, [
|
|
8868
8976
|
// Label column
|
|
8869
|
-
(0,
|
|
8870
|
-
(0,
|
|
8977
|
+
(0, import_vue60.h)("div", { class: prefix("user-profile__field-label-col") }, [
|
|
8978
|
+
(0, import_vue60.h)(Typography_default, { class: prefix("user-profile__field-label"), variant: "body2" }, () => label)
|
|
8871
8979
|
]),
|
|
8872
8980
|
// Value column
|
|
8873
|
-
(0,
|
|
8874
|
-
isEditing ? (0,
|
|
8875
|
-
(0,
|
|
8981
|
+
(0, import_vue60.h)("div", { class: prefix("user-profile__field-value-col") }, [
|
|
8982
|
+
isEditing ? (0, import_vue60.h)("div", { class: prefix("user-profile__field-edit") }, [
|
|
8983
|
+
(0, import_vue60.h)(TextField_default, {
|
|
8876
8984
|
modelValue: editedValues.value[key] ?? String(value ?? ""),
|
|
8877
8985
|
"onUpdate:modelValue": (v) => {
|
|
8878
8986
|
editedValues.value = { ...editedValues.value, [key]: v };
|
|
8879
8987
|
}
|
|
8880
8988
|
}),
|
|
8881
|
-
(0,
|
|
8882
|
-
(0,
|
|
8989
|
+
(0, import_vue60.h)("div", { class: prefix("user-profile__field-edit-actions") }, [
|
|
8990
|
+
(0, import_vue60.h)(
|
|
8883
8991
|
Button_default,
|
|
8884
8992
|
{
|
|
8885
8993
|
onClick: async () => {
|
|
@@ -8895,7 +9003,7 @@ var BaseUserProfile = (0, import_vue59.defineComponent)({
|
|
|
8895
9003
|
},
|
|
8896
9004
|
() => "Save"
|
|
8897
9005
|
),
|
|
8898
|
-
(0,
|
|
9006
|
+
(0, import_vue60.h)(
|
|
8899
9007
|
Button_default,
|
|
8900
9008
|
{
|
|
8901
9009
|
onClick: () => {
|
|
@@ -8907,8 +9015,8 @@ var BaseUserProfile = (0, import_vue59.defineComponent)({
|
|
|
8907
9015
|
() => "Cancel"
|
|
8908
9016
|
)
|
|
8909
9017
|
])
|
|
8910
|
-
]) : (0,
|
|
8911
|
-
isEmpty2 ? (0,
|
|
9018
|
+
]) : (0, import_vue60.h)("div", { class: prefix("user-profile__field-display") }, [
|
|
9019
|
+
isEmpty2 ? (0, import_vue60.h)(
|
|
8912
9020
|
"span",
|
|
8913
9021
|
{
|
|
8914
9022
|
class: prefix("user-profile__field-placeholder"),
|
|
@@ -8918,12 +9026,12 @@ var BaseUserProfile = (0, import_vue59.defineComponent)({
|
|
|
8918
9026
|
} : void 0
|
|
8919
9027
|
},
|
|
8920
9028
|
`Enter your ${label.toLowerCase()}`
|
|
8921
|
-
) : (0,
|
|
9029
|
+
) : (0, import_vue60.h)(
|
|
8922
9030
|
Typography_default,
|
|
8923
9031
|
{ class: prefix("user-profile__field-value"), variant: "body1" },
|
|
8924
9032
|
() => String(value)
|
|
8925
9033
|
),
|
|
8926
|
-
props.editable && !isReadonly ? (0,
|
|
9034
|
+
props.editable && !isReadonly ? (0, import_vue60.h)(
|
|
8927
9035
|
"button",
|
|
8928
9036
|
{
|
|
8929
9037
|
"aria-label": `Edit ${label}`,
|
|
@@ -8934,29 +9042,29 @@ var BaseUserProfile = (0, import_vue59.defineComponent)({
|
|
|
8934
9042
|
},
|
|
8935
9043
|
type: "button"
|
|
8936
9044
|
},
|
|
8937
|
-
[(0,
|
|
9045
|
+
[(0, import_vue60.h)(PencilIcon)]
|
|
8938
9046
|
) : null
|
|
8939
9047
|
])
|
|
8940
9048
|
])
|
|
8941
9049
|
])
|
|
8942
9050
|
);
|
|
8943
9051
|
});
|
|
8944
|
-
children.push((0,
|
|
9052
|
+
children.push((0, import_vue60.h)("div", { class: prefix("user-profile__fields") }, fieldRows));
|
|
8945
9053
|
}
|
|
8946
9054
|
if (slots["footer"]) {
|
|
8947
|
-
children.push((0,
|
|
9055
|
+
children.push((0, import_vue60.h)("div", { class: prefix("user-profile__footer") }, slots["footer"]()));
|
|
8948
9056
|
}
|
|
8949
9057
|
if (props.cardLayout) {
|
|
8950
|
-
return (0,
|
|
9058
|
+
return (0, import_vue60.h)(Card_default, { class: [prefix("user-profile"), props.className].filter(Boolean).join(" ") }, () => children);
|
|
8951
9059
|
}
|
|
8952
|
-
return (0,
|
|
9060
|
+
return (0, import_vue60.h)("div", { class: [prefix("user-profile"), props.className].filter(Boolean).join(" ") }, children);
|
|
8953
9061
|
};
|
|
8954
9062
|
}
|
|
8955
9063
|
});
|
|
8956
9064
|
var BaseUserProfile_default = BaseUserProfile;
|
|
8957
9065
|
|
|
8958
9066
|
// src/components/presentation/user-profile/UserProfile.ts
|
|
8959
|
-
var UserProfile3 = (0,
|
|
9067
|
+
var UserProfile3 = (0, import_vue61.defineComponent)({
|
|
8960
9068
|
name: "UserProfile",
|
|
8961
9069
|
props: {
|
|
8962
9070
|
cardLayout: { default: true, type: Boolean },
|
|
@@ -8968,7 +9076,7 @@ var UserProfile3 = (0, import_vue60.defineComponent)({
|
|
|
8968
9076
|
},
|
|
8969
9077
|
setup(props, { slots }) {
|
|
8970
9078
|
const { flattenedProfile, schemas, updateProfile } = useUser_default();
|
|
8971
|
-
return () => (0,
|
|
9079
|
+
return () => (0, import_vue61.h)(
|
|
8972
9080
|
BaseUserProfile_default,
|
|
8973
9081
|
{
|
|
8974
9082
|
cardLayout: props.cardLayout,
|
|
@@ -8990,12 +9098,12 @@ var UserProfile_default = UserProfile3;
|
|
|
8990
9098
|
|
|
8991
9099
|
// src/components/presentation/user-dropdown/UserDropdown.ts
|
|
8992
9100
|
var import_browser51 = require("@asgardeo/browser");
|
|
8993
|
-
var
|
|
9101
|
+
var import_vue63 = require("vue");
|
|
8994
9102
|
|
|
8995
9103
|
// src/components/presentation/user-dropdown/BaseUserDropdown.ts
|
|
8996
9104
|
var import_browser50 = require("@asgardeo/browser");
|
|
8997
|
-
var
|
|
8998
|
-
var BaseUserDropdown = (0,
|
|
9105
|
+
var import_vue62 = require("vue");
|
|
9106
|
+
var BaseUserDropdown = (0, import_vue62.defineComponent)({
|
|
8999
9107
|
inheritAttrs: false,
|
|
9000
9108
|
name: "BaseUserDropdown",
|
|
9001
9109
|
props: {
|
|
@@ -9008,7 +9116,7 @@ var BaseUserDropdown = (0, import_vue61.defineComponent)({
|
|
|
9008
9116
|
user: { default: null, type: Object }
|
|
9009
9117
|
},
|
|
9010
9118
|
setup(props, { slots }) {
|
|
9011
|
-
const isOpen = (0,
|
|
9119
|
+
const isOpen = (0, import_vue62.ref)(false);
|
|
9012
9120
|
const prefix = import_browser50.withVendorCSSClassPrefix;
|
|
9013
9121
|
return () => {
|
|
9014
9122
|
if (slots["default"]) {
|
|
@@ -9037,7 +9145,7 @@ var BaseUserDropdown = (0, import_vue61.defineComponent)({
|
|
|
9037
9145
|
const displayName = resolveDisplayName();
|
|
9038
9146
|
const children = [];
|
|
9039
9147
|
children.push(
|
|
9040
|
-
(0,
|
|
9148
|
+
(0, import_vue62.h)(
|
|
9041
9149
|
"button",
|
|
9042
9150
|
{
|
|
9043
9151
|
class: prefix("user-dropdown__trigger"),
|
|
@@ -9047,9 +9155,9 @@ var BaseUserDropdown = (0, import_vue61.defineComponent)({
|
|
|
9047
9155
|
type: "button"
|
|
9048
9156
|
},
|
|
9049
9157
|
[
|
|
9050
|
-
(0,
|
|
9051
|
-
displayName ? (0,
|
|
9052
|
-
(0,
|
|
9158
|
+
(0, import_vue62.h)("span", { class: prefix("user-dropdown__avatar") }, [(0, import_vue62.h)(UserIcon, { size: 20 })]),
|
|
9159
|
+
displayName ? (0, import_vue62.h)(Typography_default, { class: prefix("user-dropdown__name"), variant: "body2" }, () => displayName) : null,
|
|
9160
|
+
(0, import_vue62.h)(ChevronDownIcon, { size: 16 })
|
|
9053
9161
|
]
|
|
9054
9162
|
)
|
|
9055
9163
|
);
|
|
@@ -9057,9 +9165,9 @@ var BaseUserDropdown = (0, import_vue61.defineComponent)({
|
|
|
9057
9165
|
const menuItems = [];
|
|
9058
9166
|
if (props.onProfileClick) {
|
|
9059
9167
|
menuItems.push(
|
|
9060
|
-
(0,
|
|
9061
|
-
(0,
|
|
9062
|
-
(0,
|
|
9168
|
+
(0, import_vue62.h)("button", { class: prefix("user-dropdown__item"), onClick: props.onProfileClick, type: "button" }, [
|
|
9169
|
+
(0, import_vue62.h)(UserIcon, { size: 16 }),
|
|
9170
|
+
(0, import_vue62.h)("span", null, "Profile")
|
|
9063
9171
|
])
|
|
9064
9172
|
);
|
|
9065
9173
|
}
|
|
@@ -9068,25 +9176,25 @@ var BaseUserDropdown = (0, import_vue61.defineComponent)({
|
|
|
9068
9176
|
}
|
|
9069
9177
|
if (props.onSignOut) {
|
|
9070
9178
|
menuItems.push(
|
|
9071
|
-
(0,
|
|
9072
|
-
(0,
|
|
9073
|
-
(0,
|
|
9179
|
+
(0, import_vue62.h)("button", { class: prefix("user-dropdown__item"), onClick: props.onSignOut, type: "button" }, [
|
|
9180
|
+
(0, import_vue62.h)(LogOutIcon, { size: 16 }),
|
|
9181
|
+
(0, import_vue62.h)("span", null, "Sign Out")
|
|
9074
9182
|
])
|
|
9075
9183
|
);
|
|
9076
9184
|
}
|
|
9077
|
-
children.push((0,
|
|
9185
|
+
children.push((0, import_vue62.h)("div", { class: prefix("user-dropdown__menu") }, menuItems));
|
|
9078
9186
|
}
|
|
9079
|
-
const container = (0,
|
|
9187
|
+
const container = (0, import_vue62.h)(
|
|
9080
9188
|
"div",
|
|
9081
9189
|
{ class: [prefix("user-dropdown"), props.className].filter(Boolean).join(" ") },
|
|
9082
9190
|
children
|
|
9083
9191
|
);
|
|
9084
9192
|
if (props.isProfileModalOpen) {
|
|
9085
|
-
return (0,
|
|
9193
|
+
return (0, import_vue62.h)("div", [
|
|
9086
9194
|
container,
|
|
9087
|
-
(0,
|
|
9088
|
-
(0,
|
|
9089
|
-
(0,
|
|
9195
|
+
(0, import_vue62.h)("div", { class: prefix("user-dropdown__modal-overlay") }, [
|
|
9196
|
+
(0, import_vue62.h)("div", { class: prefix("user-dropdown__modal-content") }, [
|
|
9197
|
+
(0, import_vue62.h)(
|
|
9090
9198
|
"button",
|
|
9091
9199
|
{
|
|
9092
9200
|
"aria-label": "Close profile modal",
|
|
@@ -9094,7 +9202,7 @@ var BaseUserDropdown = (0, import_vue61.defineComponent)({
|
|
|
9094
9202
|
onClick: props.onProfileModalClose,
|
|
9095
9203
|
type: "button"
|
|
9096
9204
|
},
|
|
9097
|
-
[(0,
|
|
9205
|
+
[(0, import_vue62.h)(XIcon, { size: 24 })]
|
|
9098
9206
|
),
|
|
9099
9207
|
props.profileContent
|
|
9100
9208
|
])
|
|
@@ -9108,7 +9216,7 @@ var BaseUserDropdown = (0, import_vue61.defineComponent)({
|
|
|
9108
9216
|
var BaseUserDropdown_default = BaseUserDropdown;
|
|
9109
9217
|
|
|
9110
9218
|
// src/components/presentation/user-dropdown/UserDropdown.ts
|
|
9111
|
-
var UserDropdown = (0,
|
|
9219
|
+
var UserDropdown = (0, import_vue63.defineComponent)({
|
|
9112
9220
|
emits: ["profileClick"],
|
|
9113
9221
|
name: "UserDropdown",
|
|
9114
9222
|
props: {
|
|
@@ -9119,8 +9227,8 @@ var UserDropdown = (0, import_vue62.defineComponent)({
|
|
|
9119
9227
|
},
|
|
9120
9228
|
setup(props, { slots, emit }) {
|
|
9121
9229
|
const { user, signOut } = useAsgardeo_default();
|
|
9122
|
-
const isProfileModalOpen = (0,
|
|
9123
|
-
return () => (0,
|
|
9230
|
+
const isProfileModalOpen = (0, import_vue63.ref)(false);
|
|
9231
|
+
return () => (0, import_vue63.h)(
|
|
9124
9232
|
BaseUserDropdown_default,
|
|
9125
9233
|
{
|
|
9126
9234
|
class: (0, import_browser51.withVendorCSSClassPrefix)("user-dropdown--styled"),
|
|
@@ -9136,7 +9244,7 @@ var UserDropdown = (0, import_vue62.defineComponent)({
|
|
|
9136
9244
|
onSignOut: () => {
|
|
9137
9245
|
signOut();
|
|
9138
9246
|
},
|
|
9139
|
-
profileContent: isProfileModalOpen.value ? (0,
|
|
9247
|
+
profileContent: isProfileModalOpen.value ? (0, import_vue63.h)(UserProfile_default, {
|
|
9140
9248
|
cardLayout: false,
|
|
9141
9249
|
editable: true
|
|
9142
9250
|
}) : null,
|
|
@@ -9149,12 +9257,12 @@ var UserDropdown = (0, import_vue62.defineComponent)({
|
|
|
9149
9257
|
var UserDropdown_default = UserDropdown;
|
|
9150
9258
|
|
|
9151
9259
|
// src/components/presentation/accept-invite/AcceptInvite.ts
|
|
9152
|
-
var
|
|
9260
|
+
var import_vue65 = require("vue");
|
|
9153
9261
|
|
|
9154
9262
|
// src/components/presentation/accept-invite/BaseAcceptInvite.ts
|
|
9155
9263
|
var import_browser52 = require("@asgardeo/browser");
|
|
9156
|
-
var
|
|
9157
|
-
var BaseAcceptInvite = (0,
|
|
9264
|
+
var import_vue64 = require("vue");
|
|
9265
|
+
var BaseAcceptInvite = (0, import_vue64.defineComponent)({
|
|
9158
9266
|
name: "BaseAcceptInvite",
|
|
9159
9267
|
props: {
|
|
9160
9268
|
className: { default: "", type: String },
|
|
@@ -9179,17 +9287,17 @@ var BaseAcceptInvite = (0, import_vue63.defineComponent)({
|
|
|
9179
9287
|
setup(props, { slots }) {
|
|
9180
9288
|
const { meta: metaRef } = useFlowMeta_default();
|
|
9181
9289
|
const { t } = useI18n_default();
|
|
9182
|
-
const isLoading = (0,
|
|
9183
|
-
const isValidatingToken = (0,
|
|
9184
|
-
const isTokenInvalid = (0,
|
|
9185
|
-
const isComplete = (0,
|
|
9186
|
-
const currentFlow = (0,
|
|
9187
|
-
const apiError = (0,
|
|
9188
|
-
const completionTitle = (0,
|
|
9189
|
-
const formValues = (0,
|
|
9190
|
-
const formErrors = (0,
|
|
9191
|
-
const touchedFields = (0,
|
|
9192
|
-
const isFormValid = (0,
|
|
9290
|
+
const isLoading = (0, import_vue64.ref)(false);
|
|
9291
|
+
const isValidatingToken = (0, import_vue64.ref)(true);
|
|
9292
|
+
const isTokenInvalid = (0, import_vue64.ref)(false);
|
|
9293
|
+
const isComplete = (0, import_vue64.ref)(false);
|
|
9294
|
+
const currentFlow = (0, import_vue64.ref)(null);
|
|
9295
|
+
const apiError = (0, import_vue64.ref)(null);
|
|
9296
|
+
const completionTitle = (0, import_vue64.ref)(void 0);
|
|
9297
|
+
const formValues = (0, import_vue64.ref)({});
|
|
9298
|
+
const formErrors = (0, import_vue64.ref)({});
|
|
9299
|
+
const touchedFields = (0, import_vue64.ref)({});
|
|
9300
|
+
const isFormValid = (0, import_vue64.ref)(true);
|
|
9193
9301
|
let tokenValidationAttempted = false;
|
|
9194
9302
|
const handleError = (error) => {
|
|
9195
9303
|
const errorMessage = error?.failureReason || extractErrorMessage(error, t, "components.acceptInvite.errors.generic");
|
|
@@ -9211,8 +9319,8 @@ var BaseAcceptInvite = (0, import_vue63.defineComponent)({
|
|
|
9211
9319
|
}
|
|
9212
9320
|
};
|
|
9213
9321
|
useOAuthCallback({
|
|
9214
|
-
currentFlowId: (0,
|
|
9215
|
-
isInitialized: (0,
|
|
9322
|
+
currentFlowId: (0, import_vue64.ref)(props.flowId ?? null),
|
|
9323
|
+
isInitialized: (0, import_vue64.ref)(true),
|
|
9216
9324
|
onComplete: () => {
|
|
9217
9325
|
isComplete.value = true;
|
|
9218
9326
|
isValidatingToken.value = false;
|
|
@@ -9329,7 +9437,7 @@ var BaseAcceptInvite = (0, import_vue63.defineComponent)({
|
|
|
9329
9437
|
isLoading.value = false;
|
|
9330
9438
|
}
|
|
9331
9439
|
};
|
|
9332
|
-
(0,
|
|
9440
|
+
(0, import_vue64.watch)(
|
|
9333
9441
|
() => [props.flowId, props.inviteToken],
|
|
9334
9442
|
([flowId, inviteToken]) => {
|
|
9335
9443
|
if (tokenValidationAttempted) return;
|
|
@@ -9408,44 +9516,44 @@ var BaseAcceptInvite = (0, import_vue63.defineComponent)({
|
|
|
9408
9516
|
touched: touchedFields.value,
|
|
9409
9517
|
values: formValues.value
|
|
9410
9518
|
};
|
|
9411
|
-
return (0,
|
|
9519
|
+
return (0, import_vue64.h)("div", { class: containerClass }, slots["default"](renderProps));
|
|
9412
9520
|
}
|
|
9413
9521
|
if (isValidatingToken.value) {
|
|
9414
|
-
return (0,
|
|
9522
|
+
return (0, import_vue64.h)(
|
|
9415
9523
|
Card_default,
|
|
9416
9524
|
{ class: containerClass, variant: props.variant },
|
|
9417
|
-
() => (0,
|
|
9418
|
-
(0,
|
|
9419
|
-
(0,
|
|
9525
|
+
() => (0, import_vue64.h)("div", { style: "display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem" }, [
|
|
9526
|
+
(0, import_vue64.h)(Spinner_default),
|
|
9527
|
+
(0, import_vue64.h)(Typography_default, { variant: "body1" }, () => "Validating your invite link...")
|
|
9420
9528
|
])
|
|
9421
9529
|
);
|
|
9422
9530
|
}
|
|
9423
9531
|
if (isTokenInvalid.value) {
|
|
9424
|
-
return (0,
|
|
9425
|
-
(0,
|
|
9426
|
-
(0,
|
|
9427
|
-
(0,
|
|
9532
|
+
return (0, import_vue64.h)(Card_default, { class: containerClass, variant: props.variant }, () => [
|
|
9533
|
+
(0, import_vue64.h)("div", { style: "padding:1rem" }, [
|
|
9534
|
+
(0, import_vue64.h)(Typography_default, { variant: "h5" }, () => "Invalid Invite Link"),
|
|
9535
|
+
(0, import_vue64.h)(
|
|
9428
9536
|
Alert_default,
|
|
9429
9537
|
{ style: "margin-top:1rem", variant: "error" },
|
|
9430
9538
|
() => apiError.value?.message || "This invite link is invalid or has expired. Please contact your administrator for a new invite."
|
|
9431
9539
|
),
|
|
9432
|
-
props.onGoToSignIn ? (0,
|
|
9433
|
-
(0,
|
|
9540
|
+
props.onGoToSignIn ? (0, import_vue64.h)("div", { style: "display:flex;justify-content:center;margin-top:1.5rem" }, [
|
|
9541
|
+
(0, import_vue64.h)(Button_default, { onClick: props.onGoToSignIn, variant: "outline" }, () => "Go to Sign In")
|
|
9434
9542
|
]) : null
|
|
9435
9543
|
])
|
|
9436
9544
|
]);
|
|
9437
9545
|
}
|
|
9438
9546
|
if (isComplete.value) {
|
|
9439
|
-
return (0,
|
|
9440
|
-
(0,
|
|
9441
|
-
(0,
|
|
9442
|
-
(0,
|
|
9547
|
+
return (0, import_vue64.h)(Card_default, { class: containerClass, variant: props.variant }, () => [
|
|
9548
|
+
(0, import_vue64.h)("div", { style: "padding:1rem" }, [
|
|
9549
|
+
(0, import_vue64.h)(Typography_default, { variant: "h5" }, () => "Account Setup Complete!"),
|
|
9550
|
+
(0, import_vue64.h)(
|
|
9443
9551
|
Alert_default,
|
|
9444
9552
|
{ style: "margin-top:1rem", variant: "success" },
|
|
9445
9553
|
() => "Your account has been successfully set up. You can now sign in with your credentials."
|
|
9446
9554
|
),
|
|
9447
|
-
props.onGoToSignIn ? (0,
|
|
9448
|
-
(0,
|
|
9555
|
+
props.onGoToSignIn ? (0, import_vue64.h)("div", { style: "display:flex;justify-content:center;margin-top:1.5rem" }, [
|
|
9556
|
+
(0, import_vue64.h)(Button_default, { onClick: props.onGoToSignIn, variant: "solid" }, () => "Sign In")
|
|
9449
9557
|
]) : null
|
|
9450
9558
|
])
|
|
9451
9559
|
]);
|
|
@@ -9467,17 +9575,17 @@ var BaseAcceptInvite = (0, import_vue63.defineComponent)({
|
|
|
9467
9575
|
variant: props.variant
|
|
9468
9576
|
}
|
|
9469
9577
|
) : [];
|
|
9470
|
-
return (0,
|
|
9471
|
-
(props.showTitle || props.showSubtitle) && (title || subtitle) ? (0,
|
|
9472
|
-
props.showTitle && title ? (0,
|
|
9473
|
-
props.showSubtitle && subtitle ? (0,
|
|
9578
|
+
return (0, import_vue64.h)(Card_default, { class: containerClass, variant: props.variant }, () => [
|
|
9579
|
+
(props.showTitle || props.showSubtitle) && (title || subtitle) ? (0, import_vue64.h)("div", { style: "padding:1rem 1rem 0" }, [
|
|
9580
|
+
props.showTitle && title ? (0, import_vue64.h)(Typography_default, { variant: "h5" }, () => title) : null,
|
|
9581
|
+
props.showSubtitle && subtitle ? (0, import_vue64.h)(Typography_default, { style: "margin-top:0.25rem", variant: "body1" }, () => subtitle) : null
|
|
9474
9582
|
]) : null,
|
|
9475
|
-
apiError.value ? (0,
|
|
9583
|
+
apiError.value ? (0, import_vue64.h)(
|
|
9476
9584
|
"div",
|
|
9477
9585
|
{ style: "padding:0 1rem;margin-bottom:1rem" },
|
|
9478
|
-
(0,
|
|
9586
|
+
(0, import_vue64.h)(Alert_default, { variant: "error" }, () => apiError.value.message)
|
|
9479
9587
|
) : null,
|
|
9480
|
-
(0,
|
|
9588
|
+
(0, import_vue64.h)(
|
|
9481
9589
|
"div",
|
|
9482
9590
|
{ style: "padding:1rem" },
|
|
9483
9591
|
(() => {
|
|
@@ -9485,18 +9593,18 @@ var BaseAcceptInvite = (0, import_vue63.defineComponent)({
|
|
|
9485
9593
|
if (renderedComponents.length > 0) {
|
|
9486
9594
|
formContent.push(renderedComponents);
|
|
9487
9595
|
} else if (!isLoading.value) {
|
|
9488
|
-
formContent.push((0,
|
|
9596
|
+
formContent.push((0, import_vue64.h)(Alert_default, { variant: "warning" }, () => "No form components available"));
|
|
9489
9597
|
}
|
|
9490
9598
|
if (isLoading.value) {
|
|
9491
|
-
formContent.push((0,
|
|
9599
|
+
formContent.push((0, import_vue64.h)("div", { style: "display:flex;justify-content:center;padding:1rem" }, (0, import_vue64.h)(Spinner_default)));
|
|
9492
9600
|
}
|
|
9493
9601
|
return formContent;
|
|
9494
9602
|
})()
|
|
9495
9603
|
),
|
|
9496
|
-
props.onGoToSignIn ? (0,
|
|
9497
|
-
(0,
|
|
9604
|
+
props.onGoToSignIn ? (0, import_vue64.h)("div", { style: "margin-top:1.5rem;text-align:center;padding:0 1rem 1rem" }, [
|
|
9605
|
+
(0, import_vue64.h)(Typography_default, { variant: "body2" }, () => [
|
|
9498
9606
|
"Already have an account? ",
|
|
9499
|
-
(0,
|
|
9607
|
+
(0, import_vue64.h)(
|
|
9500
9608
|
Button_default,
|
|
9501
9609
|
{ onClick: props.onGoToSignIn, style: "min-width:auto;padding:0", variant: "text" },
|
|
9502
9610
|
() => "Sign In"
|
|
@@ -9518,7 +9626,7 @@ var getUrlParams = () => {
|
|
|
9518
9626
|
inviteToken: params.get("inviteToken") || void 0
|
|
9519
9627
|
};
|
|
9520
9628
|
};
|
|
9521
|
-
var AcceptInvite = (0,
|
|
9629
|
+
var AcceptInvite = (0, import_vue65.defineComponent)({
|
|
9522
9630
|
name: "AcceptInvite",
|
|
9523
9631
|
props: {
|
|
9524
9632
|
baseUrl: { default: void 0, type: String },
|
|
@@ -9557,7 +9665,7 @@ var AcceptInvite = (0, import_vue64.defineComponent)({
|
|
|
9557
9665
|
}
|
|
9558
9666
|
return response.json();
|
|
9559
9667
|
};
|
|
9560
|
-
return () => (0,
|
|
9668
|
+
return () => (0, import_vue65.h)(
|
|
9561
9669
|
BaseAcceptInvite_default,
|
|
9562
9670
|
{
|
|
9563
9671
|
className: props.className,
|
|
@@ -9581,12 +9689,12 @@ var AcceptInvite_default = AcceptInvite;
|
|
|
9581
9689
|
|
|
9582
9690
|
// src/components/presentation/invite-user/InviteUser.ts
|
|
9583
9691
|
var import_browser54 = require("@asgardeo/browser");
|
|
9584
|
-
var
|
|
9692
|
+
var import_vue67 = require("vue");
|
|
9585
9693
|
|
|
9586
9694
|
// src/components/presentation/invite-user/BaseInviteUser.ts
|
|
9587
9695
|
var import_browser53 = require("@asgardeo/browser");
|
|
9588
|
-
var
|
|
9589
|
-
var BaseInviteUser = (0,
|
|
9696
|
+
var import_vue66 = require("vue");
|
|
9697
|
+
var BaseInviteUser = (0, import_vue66.defineComponent)({
|
|
9590
9698
|
name: "BaseInviteUser",
|
|
9591
9699
|
props: {
|
|
9592
9700
|
className: { default: "", type: String },
|
|
@@ -9616,17 +9724,17 @@ var BaseInviteUser = (0, import_vue65.defineComponent)({
|
|
|
9616
9724
|
setup(props, { slots }) {
|
|
9617
9725
|
const { meta: metaRef } = useFlowMeta_default();
|
|
9618
9726
|
const { t } = useI18n_default();
|
|
9619
|
-
const isLoading = (0,
|
|
9620
|
-
const isFlowInitialized = (0,
|
|
9621
|
-
const currentFlow = (0,
|
|
9622
|
-
const apiError = (0,
|
|
9623
|
-
const formValues = (0,
|
|
9624
|
-
const formErrors = (0,
|
|
9625
|
-
const touchedFields = (0,
|
|
9626
|
-
const isFormValid = (0,
|
|
9627
|
-
const inviteLink = (0,
|
|
9628
|
-
const inviteLinkCopied = (0,
|
|
9629
|
-
const emailSent = (0,
|
|
9727
|
+
const isLoading = (0, import_vue66.ref)(false);
|
|
9728
|
+
const isFlowInitialized = (0, import_vue66.ref)(false);
|
|
9729
|
+
const currentFlow = (0, import_vue66.ref)(null);
|
|
9730
|
+
const apiError = (0, import_vue66.ref)(null);
|
|
9731
|
+
const formValues = (0, import_vue66.ref)({});
|
|
9732
|
+
const formErrors = (0, import_vue66.ref)({});
|
|
9733
|
+
const touchedFields = (0, import_vue66.ref)({});
|
|
9734
|
+
const isFormValid = (0, import_vue66.ref)(true);
|
|
9735
|
+
const inviteLink = (0, import_vue66.ref)(void 0);
|
|
9736
|
+
const inviteLinkCopied = (0, import_vue66.ref)(false);
|
|
9737
|
+
const emailSent = (0, import_vue66.ref)(false);
|
|
9630
9738
|
let initializationAttempted = false;
|
|
9631
9739
|
const handleError = (error) => {
|
|
9632
9740
|
const errorMessage = error?.failureReason || extractErrorMessage(error, t, "components.inviteUser.errors.generic");
|
|
@@ -9760,7 +9868,7 @@ var BaseInviteUser = (0, import_vue65.defineComponent)({
|
|
|
9760
9868
|
emailSent.value = false;
|
|
9761
9869
|
initializationAttempted = false;
|
|
9762
9870
|
};
|
|
9763
|
-
(0,
|
|
9871
|
+
(0, import_vue66.watch)(
|
|
9764
9872
|
() => [props.isInitialized, isFlowInitialized.value],
|
|
9765
9873
|
([initialized, flowInit]) => {
|
|
9766
9874
|
if (initialized && !flowInit && !initializationAttempted) {
|
|
@@ -9833,56 +9941,56 @@ var BaseInviteUser = (0, import_vue65.defineComponent)({
|
|
|
9833
9941
|
touched: touchedFields.value,
|
|
9834
9942
|
values: formValues.value
|
|
9835
9943
|
};
|
|
9836
|
-
return (0,
|
|
9944
|
+
return (0, import_vue66.h)("div", { class: containerClass }, slots["default"](renderProps));
|
|
9837
9945
|
}
|
|
9838
9946
|
if (!props.isInitialized || !isFlowInitialized.value && isLoading.value) {
|
|
9839
|
-
return (0,
|
|
9947
|
+
return (0, import_vue66.h)(
|
|
9840
9948
|
Card_default,
|
|
9841
9949
|
{ class: containerClass, variant: props.variant },
|
|
9842
|
-
() => (0,
|
|
9950
|
+
() => (0, import_vue66.h)("div", { style: "display:flex;justify-content:center;padding:2rem" }, (0, import_vue66.h)(Spinner_default))
|
|
9843
9951
|
);
|
|
9844
9952
|
}
|
|
9845
9953
|
if (!currentFlow.value && apiError.value) {
|
|
9846
|
-
return (0,
|
|
9954
|
+
return (0, import_vue66.h)(
|
|
9847
9955
|
Card_default,
|
|
9848
9956
|
{ class: containerClass, variant: props.variant },
|
|
9849
|
-
() => (0,
|
|
9957
|
+
() => (0, import_vue66.h)(Alert_default, { variant: "error" }, () => apiError.value.message)
|
|
9850
9958
|
);
|
|
9851
9959
|
}
|
|
9852
9960
|
if (isInviteGenerated && isEmailSent) {
|
|
9853
|
-
return (0,
|
|
9854
|
-
(0,
|
|
9855
|
-
(0,
|
|
9856
|
-
(0,
|
|
9961
|
+
return (0, import_vue66.h)(Card_default, { class: containerClass, variant: props.variant }, () => [
|
|
9962
|
+
(0, import_vue66.h)("div", { style: "padding:1rem" }, [
|
|
9963
|
+
(0, import_vue66.h)(Typography_default, { variant: "h5" }, () => "Invite Email Sent!"),
|
|
9964
|
+
(0, import_vue66.h)(
|
|
9857
9965
|
Alert_default,
|
|
9858
9966
|
{ style: "margin-top:1rem", variant: "success" },
|
|
9859
9967
|
() => "An invitation email has been sent successfully. The user can complete their registration using the link in the email."
|
|
9860
9968
|
),
|
|
9861
|
-
(0,
|
|
9862
|
-
(0,
|
|
9969
|
+
(0, import_vue66.h)("div", { style: "display:flex;gap:0.5rem;margin-top:1.5rem" }, [
|
|
9970
|
+
(0, import_vue66.h)(Button_default, { onClick: resetFlow, variant: "outline" }, () => "Invite Another User")
|
|
9863
9971
|
])
|
|
9864
9972
|
])
|
|
9865
9973
|
]);
|
|
9866
9974
|
}
|
|
9867
9975
|
if (isInviteGenerated && inviteLink.value) {
|
|
9868
|
-
return (0,
|
|
9869
|
-
(0,
|
|
9870
|
-
(0,
|
|
9871
|
-
(0,
|
|
9976
|
+
return (0, import_vue66.h)(Card_default, { class: containerClass, variant: props.variant }, () => [
|
|
9977
|
+
(0, import_vue66.h)("div", { style: "padding:1rem" }, [
|
|
9978
|
+
(0, import_vue66.h)(Typography_default, { variant: "h5" }, () => "Invite Link Generated!"),
|
|
9979
|
+
(0, import_vue66.h)(
|
|
9872
9980
|
Alert_default,
|
|
9873
9981
|
{ style: "margin-top:1rem", variant: "success" },
|
|
9874
9982
|
() => "Share this link with the user to complete their registration."
|
|
9875
9983
|
),
|
|
9876
|
-
(0,
|
|
9877
|
-
(0,
|
|
9878
|
-
(0,
|
|
9984
|
+
(0, import_vue66.h)("div", { style: "margin-top:1rem" }, [
|
|
9985
|
+
(0, import_vue66.h)(Typography_default, { style: "margin-bottom:0.5rem", variant: "body2" }, () => "Invite Link"),
|
|
9986
|
+
(0, import_vue66.h)(
|
|
9879
9987
|
"div",
|
|
9880
9988
|
{
|
|
9881
9989
|
style: "display:flex;align-items:center;gap:0.5rem;padding:0.75rem;background:var(--asgardeo-color-background-secondary,#f5f5f5);border-radius:4px;word-break:break-all"
|
|
9882
9990
|
},
|
|
9883
9991
|
[
|
|
9884
|
-
(0,
|
|
9885
|
-
(0,
|
|
9992
|
+
(0, import_vue66.h)(Typography_default, { style: "flex:1", variant: "body2" }, () => inviteLink.value),
|
|
9993
|
+
(0, import_vue66.h)(
|
|
9886
9994
|
Button_default,
|
|
9887
9995
|
{ onClick: copyInviteLink, size: "small", variant: "outline" },
|
|
9888
9996
|
() => inviteLinkCopied.value ? "Copied!" : "Copy"
|
|
@@ -9890,8 +9998,8 @@ var BaseInviteUser = (0, import_vue65.defineComponent)({
|
|
|
9890
9998
|
]
|
|
9891
9999
|
)
|
|
9892
10000
|
]),
|
|
9893
|
-
(0,
|
|
9894
|
-
(0,
|
|
10001
|
+
(0, import_vue66.h)("div", { style: "display:flex;gap:0.5rem;margin-top:1.5rem" }, [
|
|
10002
|
+
(0, import_vue66.h)(Button_default, { onClick: resetFlow, variant: "outline" }, () => "Invite Another User")
|
|
9895
10003
|
])
|
|
9896
10004
|
])
|
|
9897
10005
|
]);
|
|
@@ -9913,17 +10021,17 @@ var BaseInviteUser = (0, import_vue65.defineComponent)({
|
|
|
9913
10021
|
variant: props.variant
|
|
9914
10022
|
}
|
|
9915
10023
|
) : [];
|
|
9916
|
-
return (0,
|
|
9917
|
-
(props.showTitle || props.showSubtitle) && (title || subtitle) ? (0,
|
|
9918
|
-
props.showTitle && title ? (0,
|
|
9919
|
-
props.showSubtitle && subtitle ? (0,
|
|
10024
|
+
return (0, import_vue66.h)(Card_default, { class: containerClass, variant: props.variant }, () => [
|
|
10025
|
+
(props.showTitle || props.showSubtitle) && (title || subtitle) ? (0, import_vue66.h)("div", { style: "padding:1rem 1rem 0" }, [
|
|
10026
|
+
props.showTitle && title ? (0, import_vue66.h)(Typography_default, { variant: "h5" }, () => title) : null,
|
|
10027
|
+
props.showSubtitle && subtitle ? (0, import_vue66.h)(Typography_default, { style: "margin-top:0.25rem", variant: "body1" }, () => subtitle) : null
|
|
9920
10028
|
]) : null,
|
|
9921
|
-
apiError.value ? (0,
|
|
10029
|
+
apiError.value ? (0, import_vue66.h)(
|
|
9922
10030
|
"div",
|
|
9923
10031
|
{ style: "padding:0 1rem;margin-bottom:1rem" },
|
|
9924
|
-
(0,
|
|
10032
|
+
(0, import_vue66.h)(Alert_default, { variant: "error" }, () => apiError.value.message)
|
|
9925
10033
|
) : null,
|
|
9926
|
-
(0,
|
|
10034
|
+
(0, import_vue66.h)(
|
|
9927
10035
|
"div",
|
|
9928
10036
|
{ style: "padding:1rem" },
|
|
9929
10037
|
(() => {
|
|
@@ -9931,10 +10039,10 @@ var BaseInviteUser = (0, import_vue65.defineComponent)({
|
|
|
9931
10039
|
if (renderedComponents.length > 0) {
|
|
9932
10040
|
formContent.push(renderedComponents);
|
|
9933
10041
|
} else if (!isLoading.value) {
|
|
9934
|
-
formContent.push((0,
|
|
10042
|
+
formContent.push((0, import_vue66.h)(Alert_default, { variant: "warning" }, () => "No form components available"));
|
|
9935
10043
|
}
|
|
9936
10044
|
if (isLoading.value) {
|
|
9937
|
-
formContent.push((0,
|
|
10045
|
+
formContent.push((0, import_vue66.h)("div", { style: "display:flex;justify-content:center;padding:1rem" }, (0, import_vue66.h)(Spinner_default)));
|
|
9938
10046
|
}
|
|
9939
10047
|
return formContent;
|
|
9940
10048
|
})()
|
|
@@ -9946,7 +10054,7 @@ var BaseInviteUser = (0, import_vue65.defineComponent)({
|
|
|
9946
10054
|
var BaseInviteUser_default = BaseInviteUser;
|
|
9947
10055
|
|
|
9948
10056
|
// src/components/presentation/invite-user/InviteUser.ts
|
|
9949
|
-
var InviteUser = (0,
|
|
10057
|
+
var InviteUser = (0, import_vue67.defineComponent)({
|
|
9950
10058
|
name: "InviteUser",
|
|
9951
10059
|
props: {
|
|
9952
10060
|
className: { default: "", type: String },
|
|
@@ -9984,7 +10092,7 @@ var InviteUser = (0, import_vue66.defineComponent)({
|
|
|
9984
10092
|
});
|
|
9985
10093
|
return response.data;
|
|
9986
10094
|
};
|
|
9987
|
-
return () => (0,
|
|
10095
|
+
return () => (0, import_vue67.h)(
|
|
9988
10096
|
BaseInviteUser_default,
|
|
9989
10097
|
{
|
|
9990
10098
|
className: props.className,
|
|
@@ -10007,12 +10115,12 @@ var InviteUser_default = InviteUser;
|
|
|
10007
10115
|
|
|
10008
10116
|
// src/components/presentation/organization-list/OrganizationList.ts
|
|
10009
10117
|
var import_browser56 = require("@asgardeo/browser");
|
|
10010
|
-
var
|
|
10118
|
+
var import_vue69 = require("vue");
|
|
10011
10119
|
|
|
10012
10120
|
// src/components/presentation/organization-list/BaseOrganizationList.ts
|
|
10013
10121
|
var import_browser55 = require("@asgardeo/browser");
|
|
10014
|
-
var
|
|
10015
|
-
var BaseOrganizationList = (0,
|
|
10122
|
+
var import_vue68 = require("vue");
|
|
10123
|
+
var BaseOrganizationList = (0, import_vue68.defineComponent)({
|
|
10016
10124
|
inheritAttrs: false,
|
|
10017
10125
|
name: "BaseOrganizationList",
|
|
10018
10126
|
props: {
|
|
@@ -10029,15 +10137,15 @@ var BaseOrganizationList = (0, import_vue67.defineComponent)({
|
|
|
10029
10137
|
const prefix = import_browser55.withVendorCSSClassPrefix;
|
|
10030
10138
|
const children = [];
|
|
10031
10139
|
if (props.isLoading) {
|
|
10032
|
-
children.push((0,
|
|
10140
|
+
children.push((0, import_vue68.h)("div", { class: prefix("organization-list__loading") }, [(0, import_vue68.h)(Spinner_default)]));
|
|
10033
10141
|
} else if (props.organizations.length === 0) {
|
|
10034
10142
|
children.push(
|
|
10035
|
-
(0,
|
|
10143
|
+
(0, import_vue68.h)(Typography_default, { class: prefix("organization-list__empty"), variant: "body2" }, () => "No organizations found")
|
|
10036
10144
|
);
|
|
10037
10145
|
} else {
|
|
10038
10146
|
props.organizations.forEach((org) => {
|
|
10039
10147
|
children.push(
|
|
10040
|
-
(0,
|
|
10148
|
+
(0, import_vue68.h)(
|
|
10041
10149
|
"button",
|
|
10042
10150
|
{
|
|
10043
10151
|
class: prefix("organization-list__item"),
|
|
@@ -10045,19 +10153,19 @@ var BaseOrganizationList = (0, import_vue67.defineComponent)({
|
|
|
10045
10153
|
onClick: () => props.onSelect?.(org),
|
|
10046
10154
|
type: "button"
|
|
10047
10155
|
},
|
|
10048
|
-
[(0,
|
|
10156
|
+
[(0, import_vue68.h)(BuildingIcon, { size: 16 }), (0, import_vue68.h)(Typography_default, { variant: "body1" }, () => org["name"] || org["id"])]
|
|
10049
10157
|
)
|
|
10050
10158
|
);
|
|
10051
10159
|
});
|
|
10052
10160
|
}
|
|
10053
|
-
return (0,
|
|
10161
|
+
return (0, import_vue68.h)("div", { class: [prefix("organization-list"), props.className].filter(Boolean).join(" ") }, children);
|
|
10054
10162
|
};
|
|
10055
10163
|
}
|
|
10056
10164
|
});
|
|
10057
10165
|
var BaseOrganizationList_default = BaseOrganizationList;
|
|
10058
10166
|
|
|
10059
10167
|
// src/components/presentation/organization-list/OrganizationList.ts
|
|
10060
|
-
var OrganizationList = (0,
|
|
10168
|
+
var OrganizationList = (0, import_vue69.defineComponent)({
|
|
10061
10169
|
emits: ["select"],
|
|
10062
10170
|
name: "OrganizationList",
|
|
10063
10171
|
props: {
|
|
@@ -10072,7 +10180,7 @@ var OrganizationList = (0, import_vue68.defineComponent)({
|
|
|
10072
10180
|
emit("select", org);
|
|
10073
10181
|
await switchOrganization(org);
|
|
10074
10182
|
};
|
|
10075
|
-
return () => (0,
|
|
10183
|
+
return () => (0, import_vue69.h)(
|
|
10076
10184
|
BaseOrganizationList_default,
|
|
10077
10185
|
{
|
|
10078
10186
|
class: (0, import_browser56.withVendorCSSClassPrefix)("organization-list--styled"),
|
|
@@ -10089,11 +10197,11 @@ var OrganizationList_default = OrganizationList;
|
|
|
10089
10197
|
|
|
10090
10198
|
// src/components/presentation/organization-profile/OrganizationProfile.ts
|
|
10091
10199
|
var import_browser58 = require("@asgardeo/browser");
|
|
10092
|
-
var
|
|
10200
|
+
var import_vue71 = require("vue");
|
|
10093
10201
|
|
|
10094
10202
|
// src/components/presentation/organization-profile/BaseOrganizationProfile.ts
|
|
10095
10203
|
var import_browser57 = require("@asgardeo/browser");
|
|
10096
|
-
var
|
|
10204
|
+
var import_vue70 = require("vue");
|
|
10097
10205
|
var ORG_AVATAR_GRADIENTS = [
|
|
10098
10206
|
"linear-gradient(135deg, #22d3ee 0%, #2dd4bf 100%)",
|
|
10099
10207
|
"linear-gradient(135deg, #34d399 0%, #059669 100%)",
|
|
@@ -10125,7 +10233,7 @@ var formatDate = (dateStr) => {
|
|
|
10125
10233
|
return dateStr;
|
|
10126
10234
|
}
|
|
10127
10235
|
};
|
|
10128
|
-
var BaseOrganizationProfile = (0,
|
|
10236
|
+
var BaseOrganizationProfile = (0, import_vue70.defineComponent)({
|
|
10129
10237
|
name: "BaseOrganizationProfile",
|
|
10130
10238
|
props: {
|
|
10131
10239
|
className: { default: "", type: String },
|
|
@@ -10138,10 +10246,10 @@ var BaseOrganizationProfile = (0, import_vue69.defineComponent)({
|
|
|
10138
10246
|
title: { default: "Organization Profile", type: String }
|
|
10139
10247
|
},
|
|
10140
10248
|
setup(props, { slots }) {
|
|
10141
|
-
const editingName = (0,
|
|
10142
|
-
const editingDescription = (0,
|
|
10143
|
-
const editedName = (0,
|
|
10144
|
-
const editedDescription = (0,
|
|
10249
|
+
const editingName = (0, import_vue70.ref)(false);
|
|
10250
|
+
const editingDescription = (0, import_vue70.ref)(false);
|
|
10251
|
+
const editedName = (0, import_vue70.ref)("");
|
|
10252
|
+
const editedDescription = (0, import_vue70.ref)("");
|
|
10145
10253
|
return () => {
|
|
10146
10254
|
if (slots["default"]) {
|
|
10147
10255
|
return slots["default"]({ organization: props.organization });
|
|
@@ -10161,43 +10269,43 @@ var BaseOrganizationProfile = (0, import_vue69.defineComponent)({
|
|
|
10161
10269
|
const avatarGradient = getOrgAvatarGradient(orgId || orgName);
|
|
10162
10270
|
const children = [];
|
|
10163
10271
|
children.push(
|
|
10164
|
-
(0,
|
|
10165
|
-
(0,
|
|
10272
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__header") }, [
|
|
10273
|
+
(0, import_vue70.h)(Typography_default, { class: prefix("organization-profile__title"), variant: "h5" }, () => props.title)
|
|
10166
10274
|
])
|
|
10167
10275
|
);
|
|
10168
|
-
children.push((0,
|
|
10276
|
+
children.push((0, import_vue70.h)(Divider_default, { class: prefix("organization-profile__header-divider") }));
|
|
10169
10277
|
children.push(
|
|
10170
|
-
(0,
|
|
10171
|
-
(0,
|
|
10278
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__identity") }, [
|
|
10279
|
+
(0, import_vue70.h)(
|
|
10172
10280
|
"div",
|
|
10173
10281
|
{
|
|
10174
10282
|
class: prefix("organization-profile__avatar"),
|
|
10175
10283
|
style: { background: avatarGradient }
|
|
10176
10284
|
},
|
|
10177
|
-
[(0,
|
|
10285
|
+
[(0, import_vue70.h)("span", { class: prefix("organization-profile__avatar-initials") }, initials)]
|
|
10178
10286
|
),
|
|
10179
|
-
(0,
|
|
10180
|
-
orgHandle ? (0,
|
|
10287
|
+
(0, import_vue70.h)(Typography_default, { class: prefix("organization-profile__org-name"), variant: "h5" }, () => orgName),
|
|
10288
|
+
orgHandle ? (0, import_vue70.h)(
|
|
10181
10289
|
Typography_default,
|
|
10182
10290
|
{ class: prefix("organization-profile__org-handle"), variant: "body2" },
|
|
10183
10291
|
() => `@${orgHandle}`
|
|
10184
10292
|
) : null
|
|
10185
10293
|
])
|
|
10186
10294
|
);
|
|
10187
|
-
children.push((0,
|
|
10295
|
+
children.push((0, import_vue70.h)(Divider_default, { class: prefix("organization-profile__identity-divider") }));
|
|
10188
10296
|
const fieldRows = [];
|
|
10189
10297
|
fieldRows.push(
|
|
10190
|
-
(0,
|
|
10191
|
-
(0,
|
|
10192
|
-
(0,
|
|
10298
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field"), key: "id" }, [
|
|
10299
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-label-col") }, [
|
|
10300
|
+
(0, import_vue70.h)(
|
|
10193
10301
|
Typography_default,
|
|
10194
10302
|
{ class: prefix("organization-profile__field-label"), variant: "body2" },
|
|
10195
10303
|
() => "Organization ID"
|
|
10196
10304
|
)
|
|
10197
10305
|
]),
|
|
10198
|
-
(0,
|
|
10199
|
-
(0,
|
|
10200
|
-
orgId ? (0,
|
|
10306
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-value-col") }, [
|
|
10307
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-display") }, [
|
|
10308
|
+
orgId ? (0, import_vue70.h)(
|
|
10201
10309
|
Typography_default,
|
|
10202
10310
|
{
|
|
10203
10311
|
class: [
|
|
@@ -10207,30 +10315,30 @@ var BaseOrganizationProfile = (0, import_vue69.defineComponent)({
|
|
|
10207
10315
|
variant: "body1"
|
|
10208
10316
|
},
|
|
10209
10317
|
() => orgId
|
|
10210
|
-
) : (0,
|
|
10318
|
+
) : (0, import_vue70.h)("span", { class: prefix("organization-profile__field-placeholder") }, "Not available")
|
|
10211
10319
|
])
|
|
10212
10320
|
])
|
|
10213
10321
|
])
|
|
10214
10322
|
);
|
|
10215
10323
|
fieldRows.push(
|
|
10216
|
-
(0,
|
|
10217
|
-
(0,
|
|
10218
|
-
(0,
|
|
10324
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field"), key: "name" }, [
|
|
10325
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-label-col") }, [
|
|
10326
|
+
(0, import_vue70.h)(
|
|
10219
10327
|
Typography_default,
|
|
10220
10328
|
{ class: prefix("organization-profile__field-label"), variant: "body2" },
|
|
10221
10329
|
() => "Organization Name"
|
|
10222
10330
|
)
|
|
10223
10331
|
]),
|
|
10224
|
-
(0,
|
|
10225
|
-
editingName.value ? (0,
|
|
10226
|
-
(0,
|
|
10332
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-value-col") }, [
|
|
10333
|
+
editingName.value ? (0, import_vue70.h)("div", { class: prefix("organization-profile__field-edit") }, [
|
|
10334
|
+
(0, import_vue70.h)(TextField_default, {
|
|
10227
10335
|
modelValue: editedName.value,
|
|
10228
10336
|
"onUpdate:modelValue": (v) => {
|
|
10229
10337
|
editedName.value = v;
|
|
10230
10338
|
}
|
|
10231
10339
|
}),
|
|
10232
|
-
(0,
|
|
10233
|
-
(0,
|
|
10340
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-edit-actions") }, [
|
|
10341
|
+
(0, import_vue70.h)(
|
|
10234
10342
|
Button_default,
|
|
10235
10343
|
{
|
|
10236
10344
|
onClick: async () => {
|
|
@@ -10242,7 +10350,7 @@ var BaseOrganizationProfile = (0, import_vue69.defineComponent)({
|
|
|
10242
10350
|
},
|
|
10243
10351
|
() => "Save"
|
|
10244
10352
|
),
|
|
10245
|
-
(0,
|
|
10353
|
+
(0, import_vue70.h)(
|
|
10246
10354
|
Button_default,
|
|
10247
10355
|
{
|
|
10248
10356
|
onClick: () => {
|
|
@@ -10254,9 +10362,9 @@ var BaseOrganizationProfile = (0, import_vue69.defineComponent)({
|
|
|
10254
10362
|
() => "Cancel"
|
|
10255
10363
|
)
|
|
10256
10364
|
])
|
|
10257
|
-
]) : (0,
|
|
10258
|
-
(0,
|
|
10259
|
-
props.editable ? (0,
|
|
10365
|
+
]) : (0, import_vue70.h)("div", { class: prefix("organization-profile__field-display") }, [
|
|
10366
|
+
(0, import_vue70.h)(Typography_default, { class: prefix("organization-profile__field-value"), variant: "body1" }, () => orgName),
|
|
10367
|
+
props.editable ? (0, import_vue70.h)(
|
|
10260
10368
|
"button",
|
|
10261
10369
|
{
|
|
10262
10370
|
"aria-label": "Edit Organization Name",
|
|
@@ -10267,31 +10375,31 @@ var BaseOrganizationProfile = (0, import_vue69.defineComponent)({
|
|
|
10267
10375
|
},
|
|
10268
10376
|
type: "button"
|
|
10269
10377
|
},
|
|
10270
|
-
[(0,
|
|
10378
|
+
[(0, import_vue70.h)(PencilIcon)]
|
|
10271
10379
|
) : null
|
|
10272
10380
|
])
|
|
10273
10381
|
])
|
|
10274
10382
|
])
|
|
10275
10383
|
);
|
|
10276
10384
|
fieldRows.push(
|
|
10277
|
-
(0,
|
|
10278
|
-
(0,
|
|
10279
|
-
(0,
|
|
10385
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field"), key: "description" }, [
|
|
10386
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-label-col") }, [
|
|
10387
|
+
(0, import_vue70.h)(
|
|
10280
10388
|
Typography_default,
|
|
10281
10389
|
{ class: prefix("organization-profile__field-label"), variant: "body2" },
|
|
10282
10390
|
() => "Organization Description"
|
|
10283
10391
|
)
|
|
10284
10392
|
]),
|
|
10285
|
-
(0,
|
|
10286
|
-
editingDescription.value ? (0,
|
|
10287
|
-
(0,
|
|
10393
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-value-col") }, [
|
|
10394
|
+
editingDescription.value ? (0, import_vue70.h)("div", { class: prefix("organization-profile__field-edit") }, [
|
|
10395
|
+
(0, import_vue70.h)(TextField_default, {
|
|
10288
10396
|
modelValue: editedDescription.value,
|
|
10289
10397
|
"onUpdate:modelValue": (v) => {
|
|
10290
10398
|
editedDescription.value = v;
|
|
10291
10399
|
}
|
|
10292
10400
|
}),
|
|
10293
|
-
(0,
|
|
10294
|
-
(0,
|
|
10401
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-edit-actions") }, [
|
|
10402
|
+
(0, import_vue70.h)(
|
|
10295
10403
|
Button_default,
|
|
10296
10404
|
{
|
|
10297
10405
|
onClick: async () => {
|
|
@@ -10303,7 +10411,7 @@ var BaseOrganizationProfile = (0, import_vue69.defineComponent)({
|
|
|
10303
10411
|
},
|
|
10304
10412
|
() => "Save"
|
|
10305
10413
|
),
|
|
10306
|
-
(0,
|
|
10414
|
+
(0, import_vue70.h)(
|
|
10307
10415
|
Button_default,
|
|
10308
10416
|
{
|
|
10309
10417
|
onClick: () => {
|
|
@@ -10315,12 +10423,12 @@ var BaseOrganizationProfile = (0, import_vue69.defineComponent)({
|
|
|
10315
10423
|
() => "Cancel"
|
|
10316
10424
|
)
|
|
10317
10425
|
])
|
|
10318
|
-
]) : (0,
|
|
10319
|
-
orgDescription != null ? (0,
|
|
10426
|
+
]) : (0, import_vue70.h)("div", { class: prefix("organization-profile__field-display") }, [
|
|
10427
|
+
orgDescription != null ? (0, import_vue70.h)(
|
|
10320
10428
|
Typography_default,
|
|
10321
10429
|
{ class: prefix("organization-profile__field-value"), variant: "body1" },
|
|
10322
10430
|
() => orgDescription
|
|
10323
|
-
) : (0,
|
|
10431
|
+
) : (0, import_vue70.h)(
|
|
10324
10432
|
"span",
|
|
10325
10433
|
{
|
|
10326
10434
|
class: prefix("organization-profile__field-placeholder"),
|
|
@@ -10331,7 +10439,7 @@ var BaseOrganizationProfile = (0, import_vue69.defineComponent)({
|
|
|
10331
10439
|
},
|
|
10332
10440
|
"Enter organization description"
|
|
10333
10441
|
),
|
|
10334
|
-
props.editable ? (0,
|
|
10442
|
+
props.editable ? (0, import_vue70.h)(
|
|
10335
10443
|
"button",
|
|
10336
10444
|
{
|
|
10337
10445
|
"aria-label": "Edit Organization Description",
|
|
@@ -10342,66 +10450,66 @@ var BaseOrganizationProfile = (0, import_vue69.defineComponent)({
|
|
|
10342
10450
|
},
|
|
10343
10451
|
type: "button"
|
|
10344
10452
|
},
|
|
10345
|
-
[(0,
|
|
10453
|
+
[(0, import_vue70.h)(PencilIcon)]
|
|
10346
10454
|
) : null
|
|
10347
10455
|
])
|
|
10348
10456
|
])
|
|
10349
10457
|
])
|
|
10350
10458
|
);
|
|
10351
10459
|
fieldRows.push(
|
|
10352
|
-
(0,
|
|
10353
|
-
(0,
|
|
10354
|
-
(0,
|
|
10460
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field"), key: "created" }, [
|
|
10461
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-label-col") }, [
|
|
10462
|
+
(0, import_vue70.h)(Typography_default, { class: prefix("organization-profile__field-label"), variant: "body2" }, () => "Created Date")
|
|
10355
10463
|
]),
|
|
10356
|
-
(0,
|
|
10357
|
-
(0,
|
|
10358
|
-
createdDate ? (0,
|
|
10464
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-value-col") }, [
|
|
10465
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-display") }, [
|
|
10466
|
+
createdDate ? (0, import_vue70.h)(
|
|
10359
10467
|
Typography_default,
|
|
10360
10468
|
{ class: prefix("organization-profile__field-value"), variant: "body1" },
|
|
10361
10469
|
() => createdDate
|
|
10362
|
-
) : (0,
|
|
10470
|
+
) : (0, import_vue70.h)("span", { class: prefix("organization-profile__field-placeholder") }, "Not available")
|
|
10363
10471
|
])
|
|
10364
10472
|
])
|
|
10365
10473
|
])
|
|
10366
10474
|
);
|
|
10367
10475
|
fieldRows.push(
|
|
10368
|
-
(0,
|
|
10369
|
-
(0,
|
|
10370
|
-
(0,
|
|
10476
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field"), key: "lastModified" }, [
|
|
10477
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-label-col") }, [
|
|
10478
|
+
(0, import_vue70.h)(
|
|
10371
10479
|
Typography_default,
|
|
10372
10480
|
{ class: prefix("organization-profile__field-label"), variant: "body2" },
|
|
10373
10481
|
() => "Last Modified Date"
|
|
10374
10482
|
)
|
|
10375
10483
|
]),
|
|
10376
|
-
(0,
|
|
10377
|
-
(0,
|
|
10378
|
-
lastModifiedDate ? (0,
|
|
10484
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-value-col") }, [
|
|
10485
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-display") }, [
|
|
10486
|
+
lastModifiedDate ? (0, import_vue70.h)(
|
|
10379
10487
|
Typography_default,
|
|
10380
10488
|
{ class: prefix("organization-profile__field-value"), variant: "body1" },
|
|
10381
10489
|
() => lastModifiedDate
|
|
10382
|
-
) : (0,
|
|
10490
|
+
) : (0, import_vue70.h)("span", { class: prefix("organization-profile__field-placeholder") }, "Not available")
|
|
10383
10491
|
])
|
|
10384
10492
|
])
|
|
10385
10493
|
])
|
|
10386
10494
|
);
|
|
10387
10495
|
fieldRows.push(
|
|
10388
|
-
(0,
|
|
10389
|
-
(0,
|
|
10390
|
-
(0,
|
|
10496
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field"), key: "orgHandle" }, [
|
|
10497
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-label-col") }, [
|
|
10498
|
+
(0, import_vue70.h)(
|
|
10391
10499
|
Typography_default,
|
|
10392
10500
|
{ class: prefix("organization-profile__field-label"), variant: "body2" },
|
|
10393
10501
|
() => "Organization Handle"
|
|
10394
10502
|
)
|
|
10395
10503
|
]),
|
|
10396
|
-
(0,
|
|
10397
|
-
(0,
|
|
10398
|
-
orgHandle ? (0,
|
|
10504
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-value-col") }, [
|
|
10505
|
+
(0, import_vue70.h)("div", { class: prefix("organization-profile__field-display") }, [
|
|
10506
|
+
orgHandle ? (0, import_vue70.h)(Typography_default, { class: prefix("organization-profile__field-value"), variant: "body1" }, () => orgHandle) : (0, import_vue70.h)("span", { class: prefix("organization-profile__field-placeholder") }, "Not available")
|
|
10399
10507
|
])
|
|
10400
10508
|
])
|
|
10401
10509
|
])
|
|
10402
10510
|
);
|
|
10403
|
-
children.push((0,
|
|
10404
|
-
return (0,
|
|
10511
|
+
children.push((0, import_vue70.h)("div", { class: prefix("organization-profile__fields") }, fieldRows));
|
|
10512
|
+
return (0, import_vue70.h)(
|
|
10405
10513
|
Card_default,
|
|
10406
10514
|
{ class: [prefix("organization-profile"), props.className].filter(Boolean).join(" ") },
|
|
10407
10515
|
() => children
|
|
@@ -10412,7 +10520,7 @@ var BaseOrganizationProfile = (0, import_vue69.defineComponent)({
|
|
|
10412
10520
|
var BaseOrganizationProfile_default = BaseOrganizationProfile;
|
|
10413
10521
|
|
|
10414
10522
|
// src/components/presentation/organization-profile/OrganizationProfile.ts
|
|
10415
|
-
var OrganizationProfile = (0,
|
|
10523
|
+
var OrganizationProfile = (0, import_vue71.defineComponent)({
|
|
10416
10524
|
name: "OrganizationProfile",
|
|
10417
10525
|
props: {
|
|
10418
10526
|
className: { default: "", type: String },
|
|
@@ -10425,7 +10533,7 @@ var OrganizationProfile = (0, import_vue70.defineComponent)({
|
|
|
10425
10533
|
},
|
|
10426
10534
|
setup(props, { slots }) {
|
|
10427
10535
|
const { currentOrganization } = useOrganization_default();
|
|
10428
|
-
return () => (0,
|
|
10536
|
+
return () => (0, import_vue71.h)(
|
|
10429
10537
|
BaseOrganizationProfile_default,
|
|
10430
10538
|
{
|
|
10431
10539
|
class: (0, import_browser58.withVendorCSSClassPrefix)("organization-profile--styled"),
|
|
@@ -10443,13 +10551,13 @@ var OrganizationProfile_default = OrganizationProfile;
|
|
|
10443
10551
|
|
|
10444
10552
|
// src/components/presentation/organization-switcher/OrganizationSwitcher.ts
|
|
10445
10553
|
var import_browser60 = require("@asgardeo/browser");
|
|
10446
|
-
var
|
|
10554
|
+
var import_vue73 = require("vue");
|
|
10447
10555
|
|
|
10448
10556
|
// src/components/presentation/organization-switcher/BaseOrganizationSwitcher.ts
|
|
10449
10557
|
var import_browser59 = require("@asgardeo/browser");
|
|
10450
|
-
var
|
|
10558
|
+
var import_vue72 = require("vue");
|
|
10451
10559
|
var cls = (name) => (0, import_browser59.withVendorCSSClassPrefix)(`organization-switcher${name}`);
|
|
10452
|
-
var BaseOrganizationSwitcher = (0,
|
|
10560
|
+
var BaseOrganizationSwitcher = (0, import_vue72.defineComponent)({
|
|
10453
10561
|
inheritAttrs: false,
|
|
10454
10562
|
name: "BaseOrganizationSwitcher",
|
|
10455
10563
|
props: {
|
|
@@ -10460,7 +10568,7 @@ var BaseOrganizationSwitcher = (0, import_vue71.defineComponent)({
|
|
|
10460
10568
|
organizations: { default: () => [], type: Array }
|
|
10461
10569
|
},
|
|
10462
10570
|
setup(props, { slots }) {
|
|
10463
|
-
const isOpen = (0,
|
|
10571
|
+
const isOpen = (0, import_vue72.ref)(false);
|
|
10464
10572
|
const toggle = () => {
|
|
10465
10573
|
isOpen.value = !isOpen.value;
|
|
10466
10574
|
};
|
|
@@ -10480,7 +10588,7 @@ var BaseOrganizationSwitcher = (0, import_vue71.defineComponent)({
|
|
|
10480
10588
|
});
|
|
10481
10589
|
}
|
|
10482
10590
|
const currentName = props.currentOrganization?.name ?? "No Organization";
|
|
10483
|
-
const triggerButton = (0,
|
|
10591
|
+
const triggerButton = (0, import_vue72.h)(
|
|
10484
10592
|
"button",
|
|
10485
10593
|
{
|
|
10486
10594
|
"aria-expanded": isOpen.value,
|
|
@@ -10490,23 +10598,23 @@ var BaseOrganizationSwitcher = (0, import_vue71.defineComponent)({
|
|
|
10490
10598
|
type: "button"
|
|
10491
10599
|
},
|
|
10492
10600
|
[
|
|
10493
|
-
(0,
|
|
10494
|
-
(0,
|
|
10495
|
-
(0,
|
|
10601
|
+
(0, import_vue72.h)(BuildingIcon, { size: 16 }),
|
|
10602
|
+
(0, import_vue72.h)(Typography_default, { class: cls("__trigger-label"), variant: "body2" }, () => currentName),
|
|
10603
|
+
(0, import_vue72.h)(ChevronDownIcon, { size: 12 })
|
|
10496
10604
|
]
|
|
10497
10605
|
);
|
|
10498
10606
|
const dropdownChildren = [];
|
|
10499
10607
|
if (props.isLoading) {
|
|
10500
|
-
dropdownChildren.push((0,
|
|
10608
|
+
dropdownChildren.push((0, import_vue72.h)("div", { class: cls("__loading") }, [(0, import_vue72.h)(Spinner_default, { size: "small" })]));
|
|
10501
10609
|
} else if (props.organizations.length === 0) {
|
|
10502
10610
|
dropdownChildren.push(
|
|
10503
|
-
(0,
|
|
10611
|
+
(0, import_vue72.h)(Typography_default, { class: cls("__empty"), variant: "body2" }, () => "No organizations available")
|
|
10504
10612
|
);
|
|
10505
10613
|
} else {
|
|
10506
10614
|
props.organizations.forEach((org) => {
|
|
10507
10615
|
const isActive = org["id"] === props.currentOrganization?.id;
|
|
10508
10616
|
dropdownChildren.push(
|
|
10509
|
-
(0,
|
|
10617
|
+
(0, import_vue72.h)(
|
|
10510
10618
|
"button",
|
|
10511
10619
|
{
|
|
10512
10620
|
"aria-selected": isActive,
|
|
@@ -10515,27 +10623,27 @@ var BaseOrganizationSwitcher = (0, import_vue71.defineComponent)({
|
|
|
10515
10623
|
role: "option",
|
|
10516
10624
|
type: "button"
|
|
10517
10625
|
},
|
|
10518
|
-
[(0,
|
|
10626
|
+
[(0, import_vue72.h)(BuildingIcon, { size: 14 }), (0, import_vue72.h)(Typography_default, { variant: "body2" }, () => org["name"])]
|
|
10519
10627
|
)
|
|
10520
10628
|
);
|
|
10521
10629
|
});
|
|
10522
10630
|
}
|
|
10523
|
-
const dropdown = isOpen.value ? (0,
|
|
10524
|
-
return (0,
|
|
10631
|
+
const dropdown = isOpen.value ? (0, import_vue72.h)("div", { class: cls("__dropdown"), role: "listbox" }, dropdownChildren) : null;
|
|
10632
|
+
return (0, import_vue72.h)(Card_default, { class: [cls(""), props.className].filter(Boolean).join(" ") }, () => [triggerButton, dropdown]);
|
|
10525
10633
|
};
|
|
10526
10634
|
}
|
|
10527
10635
|
});
|
|
10528
10636
|
var BaseOrganizationSwitcher_default = BaseOrganizationSwitcher;
|
|
10529
10637
|
|
|
10530
10638
|
// src/components/presentation/organization-switcher/OrganizationSwitcher.ts
|
|
10531
|
-
var OrganizationSwitcher = (0,
|
|
10639
|
+
var OrganizationSwitcher = (0, import_vue73.defineComponent)({
|
|
10532
10640
|
name: "OrganizationSwitcher",
|
|
10533
10641
|
props: {
|
|
10534
10642
|
className: { default: "", type: String }
|
|
10535
10643
|
},
|
|
10536
10644
|
setup(props, { slots }) {
|
|
10537
10645
|
const { currentOrganization, myOrganizations, isLoading, switchOrganization } = useOrganization_default();
|
|
10538
|
-
return () => (0,
|
|
10646
|
+
return () => (0, import_vue73.h)(
|
|
10539
10647
|
BaseOrganizationSwitcher_default,
|
|
10540
10648
|
{
|
|
10541
10649
|
class: (0, import_browser60.withVendorCSSClassPrefix)("organization-switcher--styled"),
|
|
@@ -10553,13 +10661,13 @@ var OrganizationSwitcher_default = OrganizationSwitcher;
|
|
|
10553
10661
|
|
|
10554
10662
|
// src/components/presentation/create-organization/CreateOrganization.ts
|
|
10555
10663
|
var import_browser62 = require("@asgardeo/browser");
|
|
10556
|
-
var
|
|
10664
|
+
var import_vue75 = require("vue");
|
|
10557
10665
|
|
|
10558
10666
|
// src/components/presentation/create-organization/BaseCreateOrganization.ts
|
|
10559
10667
|
var import_browser61 = require("@asgardeo/browser");
|
|
10560
|
-
var
|
|
10668
|
+
var import_vue74 = require("vue");
|
|
10561
10669
|
var cls2 = (name) => (0, import_browser61.withVendorCSSClassPrefix)(`create-organization${name}`);
|
|
10562
|
-
var BaseCreateOrganization = (0,
|
|
10670
|
+
var BaseCreateOrganization = (0, import_vue74.defineComponent)({
|
|
10563
10671
|
name: "BaseCreateOrganization",
|
|
10564
10672
|
props: {
|
|
10565
10673
|
className: { default: "", type: String },
|
|
@@ -10568,9 +10676,9 @@ var BaseCreateOrganization = (0, import_vue73.defineComponent)({
|
|
|
10568
10676
|
title: { default: "Create Organization", type: String }
|
|
10569
10677
|
},
|
|
10570
10678
|
setup(props, { slots }) {
|
|
10571
|
-
const orgName = (0,
|
|
10572
|
-
const isSubmitting = (0,
|
|
10573
|
-
const error = (0,
|
|
10679
|
+
const orgName = (0, import_vue74.ref)("");
|
|
10680
|
+
const isSubmitting = (0, import_vue74.ref)(false);
|
|
10681
|
+
const error = (0, import_vue74.ref)(null);
|
|
10574
10682
|
const handleSubmit = async () => {
|
|
10575
10683
|
const name = orgName.value.trim();
|
|
10576
10684
|
if (!name) {
|
|
@@ -10600,11 +10708,11 @@ var BaseCreateOrganization = (0, import_vue73.defineComponent)({
|
|
|
10600
10708
|
}
|
|
10601
10709
|
});
|
|
10602
10710
|
}
|
|
10603
|
-
return (0,
|
|
10604
|
-
(0,
|
|
10605
|
-
props.description ? (0,
|
|
10606
|
-
error.value ? (0,
|
|
10607
|
-
(0,
|
|
10711
|
+
return (0, import_vue74.h)(Card_default, { class: [cls2(""), props.className].filter(Boolean).join(" ") }, () => [
|
|
10712
|
+
(0, import_vue74.h)(Typography_default, { class: cls2("__title"), variant: "h6" }, () => props.title),
|
|
10713
|
+
props.description ? (0, import_vue74.h)(Typography_default, { class: cls2("__description"), variant: "body2" }, () => props.description) : null,
|
|
10714
|
+
error.value ? (0, import_vue74.h)(Alert_default, { class: cls2("__error"), severity: "error" }, () => error.value) : null,
|
|
10715
|
+
(0, import_vue74.h)(TextField_default, {
|
|
10608
10716
|
class: cls2("__input"),
|
|
10609
10717
|
label: "Organization Name",
|
|
10610
10718
|
modelValue: orgName.value,
|
|
@@ -10613,7 +10721,7 @@ var BaseCreateOrganization = (0, import_vue73.defineComponent)({
|
|
|
10613
10721
|
},
|
|
10614
10722
|
placeholder: "Enter organization name"
|
|
10615
10723
|
}),
|
|
10616
|
-
(0,
|
|
10724
|
+
(0, import_vue74.h)(
|
|
10617
10725
|
Button_default,
|
|
10618
10726
|
{
|
|
10619
10727
|
class: cls2("__submit"),
|
|
@@ -10632,7 +10740,7 @@ var BaseCreateOrganization = (0, import_vue73.defineComponent)({
|
|
|
10632
10740
|
var BaseCreateOrganization_default = BaseCreateOrganization;
|
|
10633
10741
|
|
|
10634
10742
|
// src/components/presentation/create-organization/CreateOrganization.ts
|
|
10635
|
-
var CreateOrganization = (0,
|
|
10743
|
+
var CreateOrganization = (0, import_vue75.defineComponent)({
|
|
10636
10744
|
name: "CreateOrganization",
|
|
10637
10745
|
props: {
|
|
10638
10746
|
className: { default: "", type: String },
|
|
@@ -10641,7 +10749,7 @@ var CreateOrganization = (0, import_vue74.defineComponent)({
|
|
|
10641
10749
|
},
|
|
10642
10750
|
setup(props, { slots }) {
|
|
10643
10751
|
const { createOrganization } = useOrganization_default();
|
|
10644
|
-
return () => (0,
|
|
10752
|
+
return () => (0, import_vue75.h)(
|
|
10645
10753
|
BaseCreateOrganization_default,
|
|
10646
10754
|
{
|
|
10647
10755
|
class: (0, import_browser62.withVendorCSSClassPrefix)("create-organization--styled"),
|
|
@@ -10660,13 +10768,13 @@ var CreateOrganization_default = CreateOrganization;
|
|
|
10660
10768
|
|
|
10661
10769
|
// src/components/presentation/language-switcher/LanguageSwitcher.ts
|
|
10662
10770
|
var import_browser64 = require("@asgardeo/browser");
|
|
10663
|
-
var
|
|
10771
|
+
var import_vue77 = require("vue");
|
|
10664
10772
|
|
|
10665
10773
|
// src/components/presentation/language-switcher/BaseLanguageSwitcher.ts
|
|
10666
10774
|
var import_browser63 = require("@asgardeo/browser");
|
|
10667
|
-
var
|
|
10775
|
+
var import_vue76 = require("vue");
|
|
10668
10776
|
var cls3 = (name) => (0, import_browser63.withVendorCSSClassPrefix)(`language-switcher${name}`);
|
|
10669
|
-
var BaseLanguageSwitcher = (0,
|
|
10777
|
+
var BaseLanguageSwitcher = (0, import_vue76.defineComponent)({
|
|
10670
10778
|
name: "BaseLanguageSwitcher",
|
|
10671
10779
|
props: {
|
|
10672
10780
|
className: { default: "", type: String },
|
|
@@ -10675,7 +10783,7 @@ var BaseLanguageSwitcher = (0, import_vue75.defineComponent)({
|
|
|
10675
10783
|
onLanguageChange: { default: void 0, type: Function }
|
|
10676
10784
|
},
|
|
10677
10785
|
setup(props, { slots }) {
|
|
10678
|
-
const isOpen = (0,
|
|
10786
|
+
const isOpen = (0, import_vue76.ref)(false);
|
|
10679
10787
|
const toggle = () => {
|
|
10680
10788
|
isOpen.value = !isOpen.value;
|
|
10681
10789
|
};
|
|
@@ -10694,7 +10802,7 @@ var BaseLanguageSwitcher = (0, import_vue75.defineComponent)({
|
|
|
10694
10802
|
});
|
|
10695
10803
|
}
|
|
10696
10804
|
const currentLabel = props.languages.find((l) => l.value === props.currentLanguage)?.label ?? props.currentLanguage;
|
|
10697
|
-
const triggerButton = (0,
|
|
10805
|
+
const triggerButton = (0, import_vue76.h)(
|
|
10698
10806
|
"button",
|
|
10699
10807
|
{
|
|
10700
10808
|
"aria-expanded": isOpen.value,
|
|
@@ -10704,14 +10812,14 @@ var BaseLanguageSwitcher = (0, import_vue75.defineComponent)({
|
|
|
10704
10812
|
type: "button"
|
|
10705
10813
|
},
|
|
10706
10814
|
[
|
|
10707
|
-
(0,
|
|
10708
|
-
(0,
|
|
10709
|
-
(0,
|
|
10815
|
+
(0, import_vue76.h)(GlobeIcon, { size: 16 }),
|
|
10816
|
+
(0, import_vue76.h)(Typography_default, { class: cls3("__trigger-label"), variant: "body2" }, () => currentLabel),
|
|
10817
|
+
(0, import_vue76.h)(ChevronDownIcon, { size: 12 })
|
|
10710
10818
|
]
|
|
10711
10819
|
);
|
|
10712
10820
|
const dropdownItems = props.languages.map((lang) => {
|
|
10713
10821
|
const isActive = lang.value === props.currentLanguage;
|
|
10714
|
-
return (0,
|
|
10822
|
+
return (0, import_vue76.h)(
|
|
10715
10823
|
"button",
|
|
10716
10824
|
{
|
|
10717
10825
|
"aria-selected": isActive,
|
|
@@ -10720,18 +10828,18 @@ var BaseLanguageSwitcher = (0, import_vue75.defineComponent)({
|
|
|
10720
10828
|
role: "option",
|
|
10721
10829
|
type: "button"
|
|
10722
10830
|
},
|
|
10723
|
-
[(0,
|
|
10831
|
+
[(0, import_vue76.h)(Typography_default, { variant: "body2" }, () => lang.label)]
|
|
10724
10832
|
);
|
|
10725
10833
|
});
|
|
10726
|
-
const dropdown = isOpen.value ? (0,
|
|
10727
|
-
return (0,
|
|
10834
|
+
const dropdown = isOpen.value ? (0, import_vue76.h)("div", { class: cls3("__dropdown"), role: "listbox" }, dropdownItems) : null;
|
|
10835
|
+
return (0, import_vue76.h)(Card_default, { class: [cls3(""), props.className].filter(Boolean).join(" ") }, () => [triggerButton, dropdown]);
|
|
10728
10836
|
};
|
|
10729
10837
|
}
|
|
10730
10838
|
});
|
|
10731
10839
|
var BaseLanguageSwitcher_default = BaseLanguageSwitcher;
|
|
10732
10840
|
|
|
10733
10841
|
// src/components/presentation/language-switcher/LanguageSwitcher.ts
|
|
10734
|
-
var LanguageSwitcher = (0,
|
|
10842
|
+
var LanguageSwitcher = (0, import_vue77.defineComponent)({
|
|
10735
10843
|
name: "LanguageSwitcher",
|
|
10736
10844
|
props: {
|
|
10737
10845
|
className: { default: "", type: String },
|
|
@@ -10747,7 +10855,7 @@ var LanguageSwitcher = (0, import_vue76.defineComponent)({
|
|
|
10747
10855
|
},
|
|
10748
10856
|
setup(props, { slots }) {
|
|
10749
10857
|
const { currentLanguage, setLanguage } = useI18n_default();
|
|
10750
|
-
return () => (0,
|
|
10858
|
+
return () => (0, import_vue77.h)(
|
|
10751
10859
|
BaseLanguageSwitcher_default,
|
|
10752
10860
|
{
|
|
10753
10861
|
class: (0, import_browser64.withVendorCSSClassPrefix)("language-switcher--styled"),
|
|
@@ -10823,12 +10931,12 @@ var import_browser67 = require("@asgardeo/browser");
|
|
|
10823
10931
|
var import_browser68 = require("@asgardeo/browser");
|
|
10824
10932
|
|
|
10825
10933
|
// src/router/guard.ts
|
|
10826
|
-
var
|
|
10934
|
+
var import_vue78 = require("vue");
|
|
10827
10935
|
var logger7 = createVueLogger("Guard");
|
|
10828
10936
|
var createAsgardeoGuard = (options = {}) => {
|
|
10829
10937
|
const { redirectTo = "/", waitForInit = true, initTimeout = 1e4 } = options;
|
|
10830
10938
|
return async (_to, _from, next) => {
|
|
10831
|
-
const ctx = (0,
|
|
10939
|
+
const ctx = (0, import_vue78.inject)(ASGARDEO_KEY);
|
|
10832
10940
|
if (!ctx) {
|
|
10833
10941
|
logger7.error(
|
|
10834
10942
|
"createAsgardeoGuard: Asgardeo context not found. Ensure the AsgardeoPlugin is installed before using the router guard."
|
|
@@ -10875,13 +10983,13 @@ var createAsgardeoGuard = (options = {}) => {
|
|
|
10875
10983
|
};
|
|
10876
10984
|
|
|
10877
10985
|
// src/router/callbackRoute.ts
|
|
10878
|
-
var
|
|
10986
|
+
var import_vue79 = require("vue");
|
|
10879
10987
|
var createCallbackRoute = (options = {}) => {
|
|
10880
10988
|
const { path = "/callback", name, onError } = options;
|
|
10881
|
-
const CallbackWrapper = (0,
|
|
10989
|
+
const CallbackWrapper = (0, import_vue79.defineComponent)({
|
|
10882
10990
|
name: "AsgardeoCallbackRoute",
|
|
10883
10991
|
setup() {
|
|
10884
|
-
return () => (0,
|
|
10992
|
+
return () => (0, import_vue79.h)(Callback_default, {
|
|
10885
10993
|
...onError && { onError }
|
|
10886
10994
|
});
|
|
10887
10995
|
}
|