zudoku 0.3.0-dev.53 → 0.3.0-dev.55
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/lib/components/Bootstrap.js +1 -1
- package/dist/lib/components/Bootstrap.js.map +1 -1
- package/lib/AnchorLink-BaXHjhF-.js +989 -0
- package/lib/{AnchorLink-BCN_a_Uz.js.map → AnchorLink-BaXHjhF-.js.map} +1 -1
- package/lib/Combination-BfufJFkX.js +1365 -0
- package/lib/{Combination-B0Iu6mhJ.js.map → Combination-BfufJFkX.js.map} +1 -1
- package/lib/DevPortalProvider-GjdO0Xr-.js +1610 -0
- package/lib/{DevPortalProvider-Do9oJqme.js.map → DevPortalProvider-GjdO0Xr-.js.map} +1 -1
- package/lib/Markdown-B8nPVql1.js +19708 -0
- package/lib/Markdown-B8nPVql1.js.map +1 -0
- package/lib/MdxPage-Dlujuj-J.js +223 -0
- package/lib/{MdxPage-Bsc79cD-.js.map → MdxPage-Dlujuj-J.js.map} +1 -1
- package/lib/OperationList-krPgt6sE.js +8041 -0
- package/lib/{OperationList-K-JWBxau.js.map → OperationList-krPgt6sE.js.map} +1 -1
- package/lib/Playground-DOHxca0P.js +539 -0
- package/lib/{Playground-Czy7ha9z.js.map → Playground-DOHxca0P.js.map} +1 -1
- package/lib/Route-CR6TEwVC.js +13 -0
- package/lib/{Route-D-egsGHx.js.map → Route-CR6TEwVC.js.map} +1 -1
- package/lib/Select-Boi_pe3L.js +5298 -0
- package/lib/{Select-CcBbwJ2R.js.map → Select-Boi_pe3L.js.map} +1 -1
- package/lib/Spinner-oU0QJmi_.js +16 -0
- package/lib/{Spinner-C9_Opdev.js.map → Spinner-oU0QJmi_.js.map} +1 -1
- package/lib/_commonjsHelpers-BxmBWJD2.js +34 -0
- package/lib/_commonjsHelpers-BxmBWJD2.js.map +1 -0
- package/lib/assets/index-CpIig0AX.js +6341 -0
- package/lib/{index-pI9JkN46.js.map → assets/index-CpIig0AX.js.map} +1 -1
- package/lib/assets/worker-B5k2aBV9.js +18921 -0
- package/lib/assets/{worker-BjPv-hjP.js.map → worker-B5k2aBV9.js.map} +1 -1
- package/lib/context-BoN_3uxi.js +17 -0
- package/lib/{context-_fYfJFgk.js.map → context-BoN_3uxi.js.map} +1 -1
- package/lib/hook-CIuFuyBT.js +90 -0
- package/lib/{hook-CKqQERWo.js.map → hook-CIuFuyBT.js.map} +1 -1
- package/lib/index-BL1P4Gqq.js +280 -0
- package/lib/{index-ByHya67R.js.map → index-BL1P4Gqq.js.map} +1 -1
- package/lib/index-Bn03IPZt.js +6341 -0
- package/lib/{assets/index-BPdJm2ty.js.map → index-Bn03IPZt.js.map} +1 -1
- package/lib/{index-jsFBaizC.js → index-Dih8IAqw.js} +103 -83
- package/lib/{index-jsFBaizC.js.map → index-Dih8IAqw.js.map} +1 -1
- package/lib/index-FprhHF51.js +253 -0
- package/lib/{index-DseBZFJ-.js.map → index-FprhHF51.js.map} +1 -1
- package/lib/jsx-runtime-DvZ6OKMM.js +2110 -0
- package/lib/{jsx-runtime-CJZJivg2.js.map → jsx-runtime-DvZ6OKMM.js.map} +1 -1
- package/lib/mutation-DWY9x2Uc.js +250 -0
- package/lib/{mutation-DjbQSHzT.js.map → mutation-DWY9x2Uc.js.map} +1 -1
- package/lib/prism-bash.min-BtBk0onv.js +7 -0
- package/lib/{prism-bash.min-DadFsM4Z.js.map → prism-bash.min-BtBk0onv.js.map} +1 -1
- package/lib/prism-csharp.min-Cv7D49bv.js +30 -0
- package/lib/{prism-csharp.min-Yizuc34Y.js.map → prism-csharp.min-Cv7D49bv.js.map} +1 -1
- package/lib/prism-java.min-tNK-JX6x.js +7 -0
- package/lib/{prism-java.min-d5iT_mOd.js.map → prism-java.min-tNK-JX6x.js.map} +1 -1
- package/lib/prism-json.min-Cdtv-CME.js +2 -0
- package/lib/{prism-json.min-B1GJqK1k.js.map → prism-json.min-Cdtv-CME.js.map} +1 -1
- package/lib/prism-markup-templating-iotg2sCU.js +94 -0
- package/lib/{prism-markup-templating-DZrrEs0A.js.map → prism-markup-templating-iotg2sCU.js.map} +1 -1
- package/lib/prism-objectivec.min-CY4WGixz.js +2 -0
- package/lib/{prism-objectivec.min-BXSWqpJJ.js.map → prism-objectivec.min-CY4WGixz.js.map} +1 -1
- package/lib/prism-php.min-T6sIVgED.js +11 -0
- package/lib/{prism-php.min-o7FpoMP_.js.map → prism-php.min-T6sIVgED.js.map} +1 -1
- package/lib/prism-ruby.min-B-2KAa4y.js +8 -0
- package/lib/{prism-ruby.min-C7LwcKyz.js.map → prism-ruby.min-B-2KAa4y.js.map} +1 -1
- package/lib/router-ButO1QyY.js +4062 -0
- package/lib/{router-CBw2vqJE.js.map → router-ButO1QyY.js.map} +1 -1
- package/lib/slugify-CmS97Vy8.js +50 -0
- package/lib/{slugify-CiPVjteN.js.map → slugify-CmS97Vy8.js.map} +1 -1
- package/lib/state-CmGfNKhR.js +436 -0
- package/lib/{state-DKdaQzvh.js.map → state-CmGfNKhR.js.map} +1 -1
- package/lib/urql-DtVKPBx_.js +2567 -0
- package/lib/{urql-DEKdguFl.js.map → urql-DtVKPBx_.js.map} +1 -1
- package/lib/util-B5KX4h4M.js +55 -0
- package/lib/{util-_jwUlTBU.js.map → util-B5KX4h4M.js.map} +1 -1
- package/lib/zudoku.auth-auth0.js +24 -18
- package/lib/zudoku.auth-auth0.js.map +1 -1
- package/lib/zudoku.auth-clerk.js +43 -34
- package/lib/zudoku.auth-clerk.js.map +1 -1
- package/lib/zudoku.auth-openid.js +1121 -734
- package/lib/zudoku.auth-openid.js.map +1 -1
- package/lib/zudoku.components.js +1076 -823
- package/lib/zudoku.components.js.map +1 -1
- package/lib/zudoku.openapi-worker.js +13776 -9681
- package/lib/zudoku.openapi-worker.js.map +1 -1
- package/lib/zudoku.plugin-api-keys.js +206 -165
- package/lib/zudoku.plugin-api-keys.js.map +1 -1
- package/lib/zudoku.plugin-markdown.js +41 -33
- package/lib/zudoku.plugin-markdown.js.map +1 -1
- package/lib/zudoku.plugin-openapi.js +6 -6
- package/lib/zudoku.plugin-redirect.js +10 -8
- package/lib/zudoku.plugin-redirect.js.map +1 -1
- package/package.json +1 -1
- package/src/lib/components/Bootstrap.tsx +1 -1
- package/lib/AnchorLink-BCN_a_Uz.js +0 -705
- package/lib/Combination-B0Iu6mhJ.js +0 -915
- package/lib/DevPortalProvider-Do9oJqme.js +0 -1081
- package/lib/Markdown-aE_XoLNs.js +0 -15030
- package/lib/Markdown-aE_XoLNs.js.map +0 -1
- package/lib/MdxPage-Bsc79cD-.js +0 -190
- package/lib/OperationList-K-JWBxau.js +0 -5091
- package/lib/Playground-Czy7ha9z.js +0 -502
- package/lib/Route-D-egsGHx.js +0 -13
- package/lib/Select-CcBbwJ2R.js +0 -3667
- package/lib/Spinner-C9_Opdev.js +0 -15
- package/lib/_commonjsHelpers-BVfed4GL.js +0 -29
- package/lib/_commonjsHelpers-BVfed4GL.js.map +0 -1
- package/lib/assets/index-BPdJm2ty.js +0 -4765
- package/lib/assets/worker-BjPv-hjP.js +0 -14897
- package/lib/context-_fYfJFgk.js +0 -14
- package/lib/hook-CKqQERWo.js +0 -77
- package/lib/index-ByHya67R.js +0 -207
- package/lib/index-DseBZFJ-.js +0 -170
- package/lib/index-pI9JkN46.js +0 -4765
- package/lib/jsx-runtime-CJZJivg2.js +0 -1526
- package/lib/mutation-DjbQSHzT.js +0 -208
- package/lib/prism-bash.min-DadFsM4Z.js +0 -7
- package/lib/prism-csharp.min-Yizuc34Y.js +0 -35
- package/lib/prism-java.min-d5iT_mOd.js +0 -7
- package/lib/prism-json.min-B1GJqK1k.js +0 -2
- package/lib/prism-markup-templating-DZrrEs0A.js +0 -62
- package/lib/prism-objectivec.min-BXSWqpJJ.js +0 -2
- package/lib/prism-php.min-o7FpoMP_.js +0 -11
- package/lib/prism-ruby.min-C7LwcKyz.js +0 -10
- package/lib/router-CBw2vqJE.js +0 -2973
- package/lib/slugify-CiPVjteN.js +0 -28
- package/lib/state-DKdaQzvh.js +0 -288
- package/lib/urql-DEKdguFl.js +0 -1592
- package/lib/util-_jwUlTBU.js +0 -41
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { m as matchPath } from "./router-ButO1QyY.js";
|
|
2
|
+
const joinPath = (...parts) => {
|
|
3
|
+
const cleanPath = parts.filter((part) => Boolean(part)).map((part) => part.replace(/(^\/+|\/+$)/g, "")).join("/");
|
|
4
|
+
return cleanPath ? `/${cleanPath}` : "";
|
|
5
|
+
};
|
|
6
|
+
const traverseNavigationNode = (node, callback, parentPath, parentNodes = []) => {
|
|
7
|
+
const newPath = isPathItem(node) ? joinPath(parentPath, node.path) : parentPath;
|
|
8
|
+
const result = callback(node, newPath, parentNodes);
|
|
9
|
+
if (result !== void 0) return result;
|
|
10
|
+
if ("children" in node && node.children) {
|
|
11
|
+
const newParentNodes = [...parentNodes, node];
|
|
12
|
+
for (const child of node.children) {
|
|
13
|
+
const childResult = traverseNavigationNode(
|
|
14
|
+
child,
|
|
15
|
+
callback,
|
|
16
|
+
newPath,
|
|
17
|
+
newParentNodes
|
|
18
|
+
);
|
|
19
|
+
if (childResult !== void 0) return childResult;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return void 0;
|
|
23
|
+
};
|
|
24
|
+
const traverseNavigation = (navItem, callback) => {
|
|
25
|
+
if (navItem.categories) {
|
|
26
|
+
for (const category of navItem.categories) {
|
|
27
|
+
const result = traverseNavigationNode(category, callback, navItem.path);
|
|
28
|
+
if (result !== void 0) return result;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return void 0;
|
|
32
|
+
};
|
|
33
|
+
const isPathItem = (item) => "path" in item;
|
|
34
|
+
const isLinkItem = (item) => "href" in item;
|
|
35
|
+
const checkHasActiveItem = (item, locationPath, basePath) => {
|
|
36
|
+
return Boolean(
|
|
37
|
+
traverseNavigationNode(
|
|
38
|
+
item,
|
|
39
|
+
(node, fullPath) => {
|
|
40
|
+
if (isPathItem(node) && matchPath(fullPath, locationPath)) {
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
basePath
|
|
45
|
+
)
|
|
46
|
+
);
|
|
47
|
+
};
|
|
48
|
+
export {
|
|
49
|
+
isLinkItem as a,
|
|
50
|
+
checkHasActiveItem as c,
|
|
51
|
+
isPathItem as i,
|
|
52
|
+
joinPath as j,
|
|
53
|
+
traverseNavigation as t
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=util-B5KX4h4M.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util-
|
|
1
|
+
{"version":3,"file":"util-B5KX4h4M.js","sources":["../src/lib/util/joinPath.tsx","../src/lib/util/traverseNavigation.ts","../src/lib/components/navigation/util.ts"],"sourcesContent":["export const joinPath = (\n ...parts: Array<string | null | undefined | boolean>\n) => {\n const cleanPath = parts\n .filter((part): part is string => Boolean(part))\n .map((part) => part.replace(/(^\\/+|\\/+$)/g, \"\")) // Strip leading and trailing slashes\n .join(\"/\");\n\n return cleanPath ? `/${cleanPath}` : \"\";\n};\n","import { isPathItem } from \"../components/navigation/util.js\";\nimport type {\n NavigationCategory,\n NavigationCategoryItem,\n NavigationItem,\n} from \"../core/DevPortalContext.js\";\nimport { joinPath } from \"./joinPath.js\";\n\nexport type NavigationNode = NavigationCategoryItem | NavigationCategory;\ntype Callback<T> = (\n node: NavigationNode,\n fullPath: string,\n parentNodes: NavigationNode[],\n) => T | undefined;\n\nexport const traverseNavigationNode = <T>(\n node: NavigationNode,\n callback: Callback<T>,\n parentPath: string,\n parentNodes: NavigationNode[] = [],\n): T | undefined => {\n const newPath = isPathItem(node)\n ? joinPath(parentPath, node.path)\n : parentPath;\n const result = callback(node, newPath, parentNodes);\n\n if (result !== undefined) return result;\n\n if (\"children\" in node && node.children) {\n const newParentNodes = [...parentNodes, node];\n for (const child of node.children) {\n const childResult = traverseNavigationNode(\n child,\n callback,\n newPath,\n newParentNodes,\n );\n if (childResult !== undefined) return childResult;\n }\n }\n return undefined;\n};\n\nexport const traverseNavigation = <T>(\n navItem: NavigationItem,\n callback: Callback<T>,\n): T | undefined => {\n if (navItem.categories) {\n for (const category of navItem.categories) {\n const result = traverseNavigationNode(category, callback, navItem.path);\n if (result !== undefined) return result;\n }\n }\n return undefined;\n};\n","import { matchPath } from \"react-router-dom\";\nimport type {\n HrefNavigationCategoryItem,\n PathNavigationCategoryItem,\n} from \"../../core/DevPortalContext.js\";\nimport {\n traverseNavigationNode,\n type NavigationNode,\n} from \"../../util/traverseNavigation.js\";\n\nexport const isPathItem = (\n item: NavigationNode,\n): item is PathNavigationCategoryItem => \"path\" in item;\n\nexport const isLinkItem = (\n item: NavigationNode,\n): item is HrefNavigationCategoryItem => \"href\" in item;\n\n/**\n * Recursively checks if the current item or any of its children are active.\n */\nexport const checkHasActiveItem = (\n item: NavigationNode,\n locationPath: string,\n basePath: string,\n) => {\n return Boolean(\n traverseNavigationNode(\n item,\n (node, fullPath) => {\n if (isPathItem(node) && matchPath(fullPath, locationPath)) {\n return true;\n }\n },\n basePath,\n ),\n );\n};\n"],"names":[],"mappings":";AAAa,MAAA,WAAW,IACnB,UACA;AACH,QAAM,YAAY,MACf,OAAO,CAAC,SAAyB,QAAQ,IAAI,CAAC,EAC9C,IAAI,CAAC,SAAS,KAAK,QAAQ,gBAAgB,EAAE,CAAC,EAC9C,KAAK,GAAG;AAEJ,SAAA,YAAY,IAAI,SAAS,KAAK;AACvC;ACMO,MAAM,yBAAyB,CACpC,MACA,UACA,YACA,cAAgC,CAAA,MACd;AACZ,QAAA,UAAU,WAAW,IAAI,IAC3B,SAAS,YAAY,KAAK,IAAI,IAC9B;AACJ,QAAM,SAAS,SAAS,MAAM,SAAS,WAAW;AAE9C,MAAA,WAAW,OAAkB,QAAA;AAE7B,MAAA,cAAc,QAAQ,KAAK,UAAU;AACvC,UAAM,iBAAiB,CAAC,GAAG,aAAa,IAAI;AACjC,eAAA,SAAS,KAAK,UAAU;AACjC,YAAM,cAAc;AAAA,QAClB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAEE,UAAA,gBAAgB,OAAkB,QAAA;AAAA,IACxC;AAAA,EACF;AACO,SAAA;AACT;AAEa,MAAA,qBAAqB,CAChC,SACA,aACkB;AAClB,MAAI,QAAQ,YAAY;AACX,eAAA,YAAY,QAAQ,YAAY;AACzC,YAAM,SAAS,uBAAuB,UAAU,UAAU,QAAQ,IAAI;AAClE,UAAA,WAAW,OAAkB,QAAA;AAAA,IACnC;AAAA,EACF;AACO,SAAA;AACT;AC5Ca,MAAA,aAAa,CACxB,SACuC,UAAU;AAEtC,MAAA,aAAa,CACxB,SACuC,UAAU;AAK5C,MAAM,qBAAqB,CAChC,MACA,cACA,aACG;AACI,SAAA;AAAA,IACL;AAAA,MACE;AAAA,MACA,CAAC,MAAM,aAAa;AAClB,YAAI,WAAW,IAAI,KAAK,UAAU,UAAU,YAAY,GAAG;AAClD,iBAAA;AAAA,QACT;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAAA,EAAA;AAEJ;"}
|
package/lib/zudoku.auth-auth0.js
CHANGED
|
@@ -1,28 +1,34 @@
|
|
|
1
|
-
import { u as
|
|
2
|
-
import { OpenIDAuthenticationProvider
|
|
3
|
-
class
|
|
1
|
+
import { u as useAuthState } from "./state-CmGfNKhR.js";
|
|
2
|
+
import { OpenIDAuthenticationProvider } from "./zudoku.auth-openid.js";
|
|
3
|
+
class Auth0AuthenticationProvider extends OpenIDAuthenticationProvider {
|
|
4
4
|
async logout() {
|
|
5
|
-
|
|
6
|
-
isAuthenticated:
|
|
7
|
-
isPending:
|
|
5
|
+
useAuthState.setState({
|
|
6
|
+
isAuthenticated: false,
|
|
7
|
+
isPending: false,
|
|
8
8
|
profile: void 0
|
|
9
9
|
});
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
10
|
+
const as = await this.getAuthServer();
|
|
11
|
+
const redirectUrl = new URL(window.location.href);
|
|
12
|
+
redirectUrl.pathname = this.logoutRedirectUrlPath;
|
|
13
|
+
let logoutUrl;
|
|
14
|
+
if (as.end_session_endpoint) {
|
|
15
|
+
logoutUrl = new URL(as.end_session_endpoint);
|
|
16
|
+
logoutUrl.searchParams.set(
|
|
17
|
+
"post_logout_redirect_uri",
|
|
18
|
+
redirectUrl.toString()
|
|
19
|
+
);
|
|
20
|
+
} else {
|
|
21
|
+
logoutUrl = new URL(`${this.issuer}oidc/logout`);
|
|
22
|
+
}
|
|
17
23
|
}
|
|
18
24
|
}
|
|
19
|
-
const
|
|
25
|
+
const auth0Auth = ({ domain, clientId, audience }) => new Auth0AuthenticationProvider({
|
|
20
26
|
type: "openid",
|
|
21
|
-
issuer: `https://${
|
|
22
|
-
clientId
|
|
23
|
-
audience
|
|
27
|
+
issuer: `https://${domain}`,
|
|
28
|
+
clientId,
|
|
29
|
+
audience
|
|
24
30
|
});
|
|
25
31
|
export {
|
|
26
|
-
|
|
32
|
+
auth0Auth as default
|
|
27
33
|
};
|
|
28
34
|
//# sourceMappingURL=zudoku.auth-auth0.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zudoku.auth-auth0.js","sources":["../src/lib/authentication/providers/auth0.tsx"],"sourcesContent":["import { Auth0AuthenticationConfig } from \"../../../config/config.js\";\nimport { AuthenticationProviderInitializer } from \"../authentication.js\";\nimport { useAuthState } from \"../state.js\";\nimport { OpenIDAuthenticationProvider } from \"./openid.js\";\n\nclass Auth0AuthenticationProvider extends OpenIDAuthenticationProvider {\n override async logout(): Promise<void> {\n useAuthState.setState({\n isAuthenticated: false,\n isPending: false,\n profile: undefined,\n });\n const as = await this.getAuthServer();\n\n const redirectUrl = new URL(window.location.href);\n redirectUrl.pathname = this.logoutRedirectUrlPath;\n\n // SEE: https://auth0.com/docs/authenticate/login/logout/log-users-out-of-auth0\n // For Auth0 tenants created on or after 14 November 2023, RP-Initiated\n // Logout End Session Endpoint Discovery is enabled by default.\n // Otherwise we fallback to the old non-compliant logout\n\n let logoutUrl: URL;\n // The endSessionEndpoint is set, the IdP supports some form of logout,\n // so we use the IdP logout. Otherwise, just redirect the user to home\n if (as.end_session_endpoint) {\n logoutUrl = new URL(as.end_session_endpoint);\n // TODO: get id_token and set hint\n // const { id_token } = session;\n // if (id_token) {\n // logoutUrl.searchParams.set(\"id_token_hint\", id_token);\n // }\n logoutUrl.searchParams.set(\n \"post_logout_redirect_uri\",\n redirectUrl.toString(),\n );\n } else {\n logoutUrl = new URL(`${this.issuer}oidc/logout`);\n }\n }\n}\n\nconst auth0Auth: AuthenticationProviderInitializer<\n Auth0AuthenticationConfig\n> = ({ domain, clientId, audience }) =>\n new Auth0AuthenticationProvider({\n type: \"openid\",\n issuer: `https://${domain}`,\n clientId: clientId,\n audience: audience,\n });\n\nexport default auth0Auth;\n"],"names":[
|
|
1
|
+
{"version":3,"file":"zudoku.auth-auth0.js","sources":["../src/lib/authentication/providers/auth0.tsx"],"sourcesContent":["import { Auth0AuthenticationConfig } from \"../../../config/config.js\";\nimport { AuthenticationProviderInitializer } from \"../authentication.js\";\nimport { useAuthState } from \"../state.js\";\nimport { OpenIDAuthenticationProvider } from \"./openid.js\";\n\nclass Auth0AuthenticationProvider extends OpenIDAuthenticationProvider {\n override async logout(): Promise<void> {\n useAuthState.setState({\n isAuthenticated: false,\n isPending: false,\n profile: undefined,\n });\n const as = await this.getAuthServer();\n\n const redirectUrl = new URL(window.location.href);\n redirectUrl.pathname = this.logoutRedirectUrlPath;\n\n // SEE: https://auth0.com/docs/authenticate/login/logout/log-users-out-of-auth0\n // For Auth0 tenants created on or after 14 November 2023, RP-Initiated\n // Logout End Session Endpoint Discovery is enabled by default.\n // Otherwise we fallback to the old non-compliant logout\n\n let logoutUrl: URL;\n // The endSessionEndpoint is set, the IdP supports some form of logout,\n // so we use the IdP logout. Otherwise, just redirect the user to home\n if (as.end_session_endpoint) {\n logoutUrl = new URL(as.end_session_endpoint);\n // TODO: get id_token and set hint\n // const { id_token } = session;\n // if (id_token) {\n // logoutUrl.searchParams.set(\"id_token_hint\", id_token);\n // }\n logoutUrl.searchParams.set(\n \"post_logout_redirect_uri\",\n redirectUrl.toString(),\n );\n } else {\n logoutUrl = new URL(`${this.issuer}oidc/logout`);\n }\n }\n}\n\nconst auth0Auth: AuthenticationProviderInitializer<\n Auth0AuthenticationConfig\n> = ({ domain, clientId, audience }) =>\n new Auth0AuthenticationProvider({\n type: \"openid\",\n issuer: `https://${domain}`,\n clientId: clientId,\n audience: audience,\n });\n\nexport default auth0Auth;\n"],"names":[],"mappings":";;AAKA,MAAM,oCAAoC,6BAA6B;AAAA,EACrE,MAAe,SAAwB;AACrC,iBAAa,SAAS;AAAA,MACpB,iBAAiB;AAAA,MACjB,WAAW;AAAA,MACX,SAAS;AAAA,IAAA,CACV;AACK,UAAA,KAAK,MAAM,KAAK;AAEtB,UAAM,cAAc,IAAI,IAAI,OAAO,SAAS,IAAI;AAChD,gBAAY,WAAW,KAAK;AAOxB,QAAA;AAGJ,QAAI,GAAG,sBAAsB;AACf,kBAAA,IAAI,IAAI,GAAG,oBAAoB;AAM3C,gBAAU,aAAa;AAAA,QACrB;AAAA,QACA,YAAY,SAAS;AAAA,MAAA;AAAA,IACvB,OACK;AACL,kBAAY,IAAI,IAAI,GAAG,KAAK,MAAM,aAAa;AAAA,IACjD;AAAA,EACF;AACF;AAEM,MAAA,YAEF,CAAC,EAAE,QAAQ,UAAU,SAAS,MAChC,IAAI,4BAA4B;AAAA,EAC9B,MAAM;AAAA,EACN,QAAQ,WAAW,MAAM;AAAA,EACzB;AAAA,EACA;AACF,CAAC;"}
|
package/lib/zudoku.auth-clerk.js
CHANGED
|
@@ -1,51 +1,60 @@
|
|
|
1
|
-
import { u as
|
|
2
|
-
const
|
|
3
|
-
let
|
|
4
|
-
const
|
|
5
|
-
if (typeof window
|
|
6
|
-
const { Clerk
|
|
7
|
-
|
|
1
|
+
import { u as useAuthState } from "./state-CmGfNKhR.js";
|
|
2
|
+
const clerkAuth = ({ clerkPubKey }) => {
|
|
3
|
+
let clerkApi;
|
|
4
|
+
const ensureLoaded = (async () => {
|
|
5
|
+
if (typeof window === "undefined") return;
|
|
6
|
+
const { Clerk } = await import("@clerk/clerk-js");
|
|
7
|
+
clerkApi = new Clerk(clerkPubKey);
|
|
8
|
+
await clerkApi.load({});
|
|
8
9
|
})();
|
|
9
|
-
async function
|
|
10
|
-
|
|
10
|
+
async function getAccessToken() {
|
|
11
|
+
await ensureLoaded;
|
|
12
|
+
if (!clerkApi.session) {
|
|
11
13
|
throw new Error("No session available");
|
|
12
|
-
|
|
13
|
-
|
|
14
|
+
}
|
|
15
|
+
const response = await clerkApi.session.getToken();
|
|
16
|
+
if (!response) {
|
|
14
17
|
throw new Error("Could not get access token from Clerk");
|
|
15
|
-
|
|
18
|
+
}
|
|
19
|
+
return response;
|
|
16
20
|
}
|
|
17
21
|
return {
|
|
18
22
|
initialize: async () => {
|
|
19
|
-
var
|
|
20
|
-
await
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
23
|
+
var _a;
|
|
24
|
+
await ensureLoaded;
|
|
25
|
+
if (clerkApi.session) {
|
|
26
|
+
useAuthState.setState({
|
|
27
|
+
isAuthenticated: true,
|
|
28
|
+
isPending: false,
|
|
29
|
+
profile: {
|
|
30
|
+
sub: clerkApi.session.user.id,
|
|
31
|
+
name: clerkApi.session.user.fullName ?? void 0,
|
|
32
|
+
email: (_a = clerkApi.session.user.emailAddresses[0]) == null ? void 0 : _a.emailAddress,
|
|
33
|
+
emailVerified: false,
|
|
34
|
+
// TODO: Check this
|
|
35
|
+
// emailVerified: clerkApi.session.user.hasVerifiedEmailAddress,
|
|
36
|
+
pictureUrl: clerkApi.session.user.imageUrl
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
} else {
|
|
40
|
+
useAuthState.setState({
|
|
41
|
+
isAuthenticated: false,
|
|
42
|
+
isPending: false,
|
|
43
|
+
profile: void 0
|
|
44
|
+
});
|
|
45
|
+
}
|
|
37
46
|
},
|
|
38
|
-
getAccessToken
|
|
47
|
+
getAccessToken,
|
|
39
48
|
logout: async () => {
|
|
40
|
-
await
|
|
49
|
+
await clerkApi.signOut();
|
|
41
50
|
},
|
|
42
51
|
login: async () => {
|
|
43
|
-
await
|
|
52
|
+
await clerkApi.redirectToSignIn();
|
|
44
53
|
},
|
|
45
54
|
getRoutes: () => []
|
|
46
55
|
};
|
|
47
56
|
};
|
|
48
57
|
export {
|
|
49
|
-
|
|
58
|
+
clerkAuth as default
|
|
50
59
|
};
|
|
51
60
|
//# sourceMappingURL=zudoku.auth-clerk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zudoku.auth-clerk.js","sources":["../src/lib/authentication/providers/clerk.tsx"],"sourcesContent":["import type { Clerk } from \"@clerk/clerk-js\";\nimport { ClerkAuthenticationConfig } from \"../../../config/config.js\";\nimport { AuthenticationProviderInitializer } from \"../authentication.js\";\nimport { useAuthState } from \"../state.js\";\n\nconst clerkAuth: AuthenticationProviderInitializer<\n ClerkAuthenticationConfig\n> = ({ clerkPubKey }) => {\n let clerkApi: Clerk;\n\n const ensureLoaded = (async () => {\n if (typeof window === \"undefined\") return;\n const { Clerk } = await import(\"@clerk/clerk-js\");\n clerkApi = new Clerk(clerkPubKey);\n\n await clerkApi.load({});\n })();\n\n async function getAccessToken() {\n await ensureLoaded;\n if (!clerkApi.session) {\n throw new Error(\"No session available\");\n }\n const response = await clerkApi.session.getToken();\n if (!response) {\n throw new Error(\"Could not get access token from Clerk\");\n }\n return response;\n }\n\n return {\n initialize: async () => {\n await ensureLoaded;\n\n if (clerkApi.session) {\n useAuthState.setState({\n isAuthenticated: true,\n isPending: false,\n profile: {\n sub: clerkApi.session.user.id,\n name: clerkApi.session.user.fullName ?? undefined,\n email: clerkApi.session.user.emailAddresses[0]?.emailAddress,\n emailVerified: false, // TODO: Check this\n // emailVerified: clerkApi.session.user.hasVerifiedEmailAddress,\n pictureUrl: clerkApi.session.user.imageUrl,\n },\n });\n } else {\n useAuthState.setState({\n isAuthenticated: false,\n isPending: false,\n profile: undefined,\n });\n }\n },\n getAccessToken,\n logout: async () => {\n await clerkApi.signOut();\n },\n login: async () => {\n await clerkApi.redirectToSignIn();\n },\n getRoutes: () => [],\n };\n};\n\nexport default clerkAuth;\n"],"names":[
|
|
1
|
+
{"version":3,"file":"zudoku.auth-clerk.js","sources":["../src/lib/authentication/providers/clerk.tsx"],"sourcesContent":["import type { Clerk } from \"@clerk/clerk-js\";\nimport { ClerkAuthenticationConfig } from \"../../../config/config.js\";\nimport { AuthenticationProviderInitializer } from \"../authentication.js\";\nimport { useAuthState } from \"../state.js\";\n\nconst clerkAuth: AuthenticationProviderInitializer<\n ClerkAuthenticationConfig\n> = ({ clerkPubKey }) => {\n let clerkApi: Clerk;\n\n const ensureLoaded = (async () => {\n if (typeof window === \"undefined\") return;\n const { Clerk } = await import(\"@clerk/clerk-js\");\n clerkApi = new Clerk(clerkPubKey);\n\n await clerkApi.load({});\n })();\n\n async function getAccessToken() {\n await ensureLoaded;\n if (!clerkApi.session) {\n throw new Error(\"No session available\");\n }\n const response = await clerkApi.session.getToken();\n if (!response) {\n throw new Error(\"Could not get access token from Clerk\");\n }\n return response;\n }\n\n return {\n initialize: async () => {\n await ensureLoaded;\n\n if (clerkApi.session) {\n useAuthState.setState({\n isAuthenticated: true,\n isPending: false,\n profile: {\n sub: clerkApi.session.user.id,\n name: clerkApi.session.user.fullName ?? undefined,\n email: clerkApi.session.user.emailAddresses[0]?.emailAddress,\n emailVerified: false, // TODO: Check this\n // emailVerified: clerkApi.session.user.hasVerifiedEmailAddress,\n pictureUrl: clerkApi.session.user.imageUrl,\n },\n });\n } else {\n useAuthState.setState({\n isAuthenticated: false,\n isPending: false,\n profile: undefined,\n });\n }\n },\n getAccessToken,\n logout: async () => {\n await clerkApi.signOut();\n },\n login: async () => {\n await clerkApi.redirectToSignIn();\n },\n getRoutes: () => [],\n };\n};\n\nexport default clerkAuth;\n"],"names":[],"mappings":";AAKA,MAAM,YAEF,CAAC,EAAE,kBAAkB;AACnB,MAAA;AAEJ,QAAM,gBAAgB,YAAY;AAC5B,QAAA,OAAO,WAAW,YAAa;AACnC,UAAM,EAAE,MAAA,IAAU,MAAM,OAAO,iBAAiB;AACrC,eAAA,IAAI,MAAM,WAAW;AAE1B,UAAA,SAAS,KAAK,CAAA,CAAE;AAAA,EAAA;AAGxB,iBAAe,iBAAiB;AACxB,UAAA;AACF,QAAA,CAAC,SAAS,SAAS;AACf,YAAA,IAAI,MAAM,sBAAsB;AAAA,IACxC;AACA,UAAM,WAAW,MAAM,SAAS,QAAQ,SAAS;AACjD,QAAI,CAAC,UAAU;AACP,YAAA,IAAI,MAAM,uCAAuC;AAAA,IACzD;AACO,WAAA;AAAA,EACT;AAEO,SAAA;AAAA,IACL,YAAY,YAAY;;AAChB,YAAA;AAEN,UAAI,SAAS,SAAS;AACpB,qBAAa,SAAS;AAAA,UACpB,iBAAiB;AAAA,UACjB,WAAW;AAAA,UACX,SAAS;AAAA,YACP,KAAK,SAAS,QAAQ,KAAK;AAAA,YAC3B,MAAM,SAAS,QAAQ,KAAK,YAAY;AAAA,YACxC,QAAO,cAAS,QAAQ,KAAK,eAAe,CAAC,MAAtC,mBAAyC;AAAA,YAChD,eAAe;AAAA;AAAA;AAAA,YAEf,YAAY,SAAS,QAAQ,KAAK;AAAA,UACpC;AAAA,QAAA,CACD;AAAA,MAAA,OACI;AACL,qBAAa,SAAS;AAAA,UACpB,iBAAiB;AAAA,UACjB,WAAW;AAAA,UACX,SAAS;AAAA,QAAA,CACV;AAAA,MACH;AAAA,IACF;AAAA,IACA;AAAA,IACA,QAAQ,YAAY;AAClB,YAAM,SAAS;IACjB;AAAA,IACA,OAAO,YAAY;AACjB,YAAM,SAAS;IACjB;AAAA,IACA,WAAW,MAAM,CAAC;AAAA,EAAA;AAEtB;"}
|