@vc-shell/framework 1.0.295 → 1.0.297

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.
@@ -1 +1 @@
1
- {"version":3,"file":"external-providers.vue.d.ts","sourceRoot":"","sources":["../../../../shared/components/sign-in/external-providers.vue.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAExE,MAAM,WAAW,KAAK;IACpB,SAAS,EAAE,0BAA0B,EAAE,CAAC;CACzC;;AAqED,wBAMG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC"}
1
+ {"version":3,"file":"external-providers.vue.d.ts","sourceRoot":"","sources":["../../../../shared/components/sign-in/external-providers.vue.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAExE,MAAM,WAAW,KAAK;IACpB,SAAS,EAAE,0BAA0B,EAAE,CAAC;CACzC;;AA+ED,wBAMG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useExternalProvider.d.ts","sourceRoot":"","sources":["../../../../shared/components/sign-in/useExternalProvider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC/B,OAAO,EAAwB,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAE9F,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,GAAG,CAAC;QAAE,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC;IACpD,MAAM,EAAE,CAAC,kBAAkB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9D,OAAO,EAAE,CAAC,kBAAkB,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,YAAY,EAAE,MAAM,OAAO,CAAC,0BAA0B,EAAE,GAAG,SAAS,CAAC,CAAC;CACvE;AAID,eAAO,MAAM,mBAAmB,QAAO,oBAwFtC,CAAC"}
1
+ {"version":3,"file":"useExternalProvider.d.ts","sourceRoot":"","sources":["../../../../shared/components/sign-in/useExternalProvider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC/B,OAAO,EAAwB,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAE9F,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,GAAG,CAAC;QAAE,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC;IACpD,MAAM,EAAE,CAAC,kBAAkB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9D,OAAO,EAAE,CAAC,kBAAkB,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,YAAY,EAAE,MAAM,OAAO,CAAC,0BAA0B,EAAE,GAAG,SAAS,CAAC,CAAC;CACvE;AAID,eAAO,MAAM,mBAAmB,QAAO,oBAgFtC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vc-shell/framework",
3
- "version": "1.0.295",
3
+ "version": "1.0.297",
4
4
  "type": "module",
5
5
  "main": "./dist/framework.js",
6
6
  "types": "./dist/index.d.ts",
@@ -61,9 +61,9 @@
61
61
  "devDependencies": {
62
62
  "@types/dompurify": "^3.0.5",
63
63
  "@types/quill": "^2.0.14",
64
- "@vc-shell/api-client-generator": "^1.0.295",
65
- "@vc-shell/config-generator": "^1.0.295",
66
- "@vc-shell/ts-config": "^1.0.295",
64
+ "@vc-shell/api-client-generator": "^1.0.297",
65
+ "@vc-shell/config-generator": "^1.0.297",
66
+ "@vc-shell/ts-config": "^1.0.297",
67
67
  "@vitejs/plugin-vue": "5.0.3",
68
68
  "cypress-signalr-mock": "^1.5.0",
69
69
  "sass": "^1.69.6",
@@ -4,7 +4,7 @@
4
4
  class="vc-external-provider"
5
5
  @click="$emit('signIn')"
6
6
  >
7
- <div class="vc-external-provider__content">
7
+ <div class="tw-flex tw-flex-row tw-items-center tw-gap-2">
8
8
  <VcImage
9
9
  :src="logo"
10
10
  class="vc-external-provider__icon"
@@ -28,11 +28,3 @@ export interface Emits {
28
28
  defineEmits<Emits>();
29
29
  defineProps<Props>();
30
30
  </script>
31
-
32
- <style lang="scss">
33
- .vc-external-provider {
34
- &__content {
35
- @apply tw-flex tw-flex-row tw-items-center tw-gap-2;
36
- }
37
- }
38
- </style>
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div class="vc-external-providers">
2
+ <div class="tw-flex tw-justify-center tw-mt-4 tw-flex-wrap tw-gap-2">
3
3
  <component
4
4
  :is="loadProviderComponent(provider.authenticationType!)"
5
5
  v-for="provider in providers"
@@ -13,7 +13,7 @@
13
13
 
14
14
  <script setup lang="ts">
15
15
  import { defineProps, defineAsyncComponent } from "vue";
16
- import type { Component } from "vue";
16
+ import type { Component, AsyncComponentLoader } from "vue";
17
17
  import { ExternalSignInProviderInfo } from "../../../core/api/platform";
18
18
 
19
19
  export interface Props {
@@ -22,18 +22,22 @@ export interface Props {
22
22
 
23
23
  defineProps<Props>();
24
24
 
25
- const loadProviderComponent = (providerName: string) => {
26
- return defineAsyncComponent<Component>({
27
- loader: () => import(/* @vite-ignore */ `./${providerName.toLowerCase()}.vue`),
28
- onError(error) {
29
- console.error(`Failed to load ${providerName} provider component`, error);
30
- },
31
- });
25
+ const components = import.meta.glob("./*.vue");
26
+
27
+ const loadProviderComponent = (providerName: string): Component | null => {
28
+ const componentPath = `./${providerName.toLowerCase()}.vue`;
29
+ const loader: AsyncComponentLoader = components[componentPath];
30
+
31
+ if (loader !== undefined) {
32
+ return defineAsyncComponent({
33
+ loader,
34
+ onError(error) {
35
+ console.error(`Failed to load ${providerName} provider component`, error);
36
+ },
37
+ });
38
+ } else {
39
+ console.error(`Component for provider "${providerName}" not found at path "${componentPath}"`);
40
+ return null;
41
+ }
32
42
  };
33
43
  </script>
34
-
35
- <style lang="scss">
36
- .vc-external-providers {
37
- @apply tw-flex tw-justify-center tw-mt-4 tw-flex-wrap tw-gap-2;
38
- }
39
- </style>
@@ -29,52 +29,44 @@ export const useExternalProvider = (): IUseExternalProvider => {
29
29
 
30
30
  async function externalSignIn(authenticationType: string, oidcUrl: string) {
31
31
  try {
32
- const origin = location.origin;
33
- const finalReturnUrl = location.pathname ?? getReturnUrlValue() ?? "/";
32
+ let url_ = window.location.origin + "externalsignin?";
33
+ const returnUrl = window.location.pathname ?? "/";
34
34
 
35
- if (!authenticationType) {
36
- throw new Error("The parameter 'authenticationType' cannot be null or undefined.");
37
- }
38
-
39
- // const oidcUrlObject = new URL(oidcUrl, origin);
40
- // const callbackUrl = new URL("/auth/callback", origin);
41
- const url = new URL("/externalsignin", origin);
42
- console.log("url", url);
35
+ const signInData = {
36
+ providerType: authenticationType,
37
+ };
43
38
 
44
- // Set query parameters
45
- // callbackUrl.searchParams.set("returnUrl", finalReturnUrl);
46
- url.searchParams.set("authenticationType", authenticationType);
47
- // url.searchParams.set("callbackUrl", callbackUrl.href);
48
- url.searchParams.set("returnUrl", finalReturnUrl);
39
+ externalSignInStorage.value = signInData;
49
40
 
50
- // Store sign-in data
51
- externalSignInStorage.value = { providerType: authenticationType };
41
+ if (authenticationType === null) throw new Error("The parameter 'authenticationType' cannot be null.");
42
+ else {
43
+ if (authenticationType !== undefined)
44
+ url_ += "authenticationType=" + encodeURIComponent("" + authenticationType) + "&";
45
+ if (returnUrl !== undefined) url_ += "returnUrl=" + encodeURIComponent("" + returnUrl) + "&";
46
+ }
47
+ url_ = url_.replace(/[?&]$/, "");
52
48
 
53
- console.log("url", url);
54
- // Redirect to the constructed URL
55
- location.assign(url);
49
+ window.location.href = url_;
56
50
  } catch (e) {
57
51
  console.error(e);
52
+
58
53
  throw e;
59
54
  }
60
55
  }
61
56
 
62
57
  async function externalSignOut(authenticationType: string): Promise<void> {
63
58
  try {
64
- const origin = location.origin;
65
- const returnUrl = location.pathname ?? "/";
59
+ let url_ = window.location.origin + "externalsignin/signout?";
66
60
 
67
- const url = new URL("/externalsignin/signout", origin);
61
+ if (authenticationType !== undefined)
62
+ url_ += "authenticationType=" + encodeURIComponent("" + authenticationType) + "&";
63
+ if (window.location.pathname !== undefined)
64
+ url_ += "returnUrl=" + encodeURIComponent("" + window.location.pathname) + "&";
68
65
 
69
- // Set query parameters
70
- url.searchParams.set("authenticationType", authenticationType);
71
- url.searchParams.set("returnUrl", returnUrl);
66
+ url_ = url_.replace(/[?&]$/, "");
67
+ window.location.href = url_;
72
68
 
73
- // Clear sign-in data
74
69
  externalSignInStorage.value = {};
75
-
76
- // Redirect to the sign-out URL
77
- location.assign(url);
78
70
  } catch (e) {
79
71
  console.error(e);
80
72
  throw e;