@owlmeans/web-oidc-rp 0.1.1 → 0.1.2

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/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2024 OwlMeans Common — Fullstack typescript framework
3
+ Copyright (c) 2026 OwlMeans Common — Fullstack typescript framework
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -1 +1 @@
1
- {"version":3,"file":"oidc-client.d.ts","sourceRoot":"","sources":["../../../src/auth/plugins/oidc-client.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAA;AAajF,eAAO,MAAM,gBAAgB,EAAE,oBAmG9B,CAAA"}
1
+ {"version":3,"file":"oidc-client.d.ts","sourceRoot":"","sources":["../../../src/auth/plugins/oidc-client.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAA;AAajF,eAAO,MAAM,gBAAgB,EAAE,oBAuG9B,CAAA"}
@@ -56,8 +56,11 @@ export const oidcClientPlugin = {
56
56
  // 1. Initialize OIDC server side authentication
57
57
  const oidc = context.service(DEFAULT_ALIAS);
58
58
  // @TODO we need to provide an identity provider client as entityId here for flexibel usage
59
+ const flow = await control.flow();
60
+ const state = await flow?.state();
59
61
  const _source = await oidc.proceedToRedirectUrl({
60
62
  purpose: control.source ?? OidcAuthPurposes.Unknown,
63
+ simplified: state?.payload().simplified,
61
64
  uid: 'uid' in module.params ? `${module.params.uid}` : undefined,
62
65
  alias: module.alias
63
66
  });
@@ -78,6 +81,7 @@ export const oidcClientPlugin = {
78
81
  const envelope = makeEnvelopeModel(control.allowance?.challenge, EnvelopeKind.Wrap);
79
82
  const challenge = envelope.message(true);
80
83
  const parts = challenge.split(':http');
84
+ // This thing includes url with flow state so the OIDC redirect it back a correct way
81
85
  const url = 'http' + parts[1];
82
86
  // 2. Include additional parameters (control state with allowance to flow state)
83
87
  await control.persist();
@@ -1 +1 @@
1
- {"version":3,"file":"oidc-client.js","sourceRoot":"","sources":["../../../src/auth/plugins/oidc-client.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oidc-client.js","sourceRoot":"","sources":["../../../src/auth/plugins/oidc-client.tsx"],"names":[],"mappings":"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"}
package/build/guard.d.ts CHANGED
@@ -1,6 +1,7 @@
1
+ import type { CommonModule } from '@owlmeans/module';
1
2
  import type { OidcGuardOptions } from '@owlmeans/oidc';
3
+ import type { ParametrisedProps } from '@owlmeans/web-client';
2
4
  import type { Config, Context } from './types.js';
3
- import type { CommonModule } from '@owlmeans/module';
4
5
  export declare const appendOidcGuard: <C extends Config, T extends Context<C>>(context: T, opts?: OidcGuardOptions) => T;
5
- export declare const setupOidcGuard: (modules: CommonModule[], coguards?: string | string[]) => void;
6
+ export declare const setupOidcGuard: (modules: CommonModule[], coguards?: string | string[], extras?: Partial<ParametrisedProps>) => void;
6
7
  //# sourceMappingURL=guard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"guard.d.ts","sourceRoot":"","sources":["../src/guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAYpD,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,OAAO,CAAC,CAAC,CAAC,EACpE,SAAS,CAAC,EAAE,OAAO,gBAAgB,MAOpC,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,SAAS,YAAY,EAAE,EAAE,WAAW,MAAM,GAAG,MAAM,EAAE,SAMnF,CAAA"}
1
+ {"version":3,"file":"guard.d.ts","sourceRoot":"","sources":["../src/guard.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAMtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAI7D,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAEjD,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,OAAO,CAAC,CAAC,CAAC,EACpE,SAAS,CAAC,EAAE,OAAO,gBAAgB,MAOpC,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,SAAS,YAAY,EAAE,EAAE,WAAW,MAAM,GAAG,MAAM,EAAE,EAAE,SAAS,OAAO,CAAC,iBAAiB,CAAC,SAQxH,CAAA"}
package/build/guard.js CHANGED
@@ -1,7 +1,7 @@
1
- import { appendOidcGuard as appendBasicOidcGuard, setupOidcGuard as setupBasicOidcGuard, DISPATCHER_OIDC, DISPATCHER_OIDC_INIT } from '@owlmeans/oidc';
2
- import { elevate } from '@owlmeans/web-client';
3
1
  import { DISPATCHER } from '@owlmeans/auth';
4
2
  import { handler } from '@owlmeans/client';
3
+ import { appendOidcGuard as appendBasicOidcGuard, DISPATCHER_OIDC, DISPATCHER_OIDC_INIT, setupOidcGuard as setupBasicOidcGuard } from '@owlmeans/oidc';
4
+ import { elevate, parametriseDispatcher } from '@owlmeans/web-client';
5
5
  import { Dispatcher } from './components/dispatcher.js';
6
6
  import { makeOidcAuthService } from './service.js';
7
7
  export const appendOidcGuard = (context, opts) => {
@@ -9,10 +9,11 @@ export const appendOidcGuard = (context, opts) => {
9
9
  const ctx = appendBasicOidcGuard(context, opts);
10
10
  return ctx;
11
11
  };
12
- export const setupOidcGuard = (modules, coguards) => {
12
+ export const setupOidcGuard = (modules, coguards, extras) => {
13
+ const DispatcherCom = extras ? parametriseDispatcher(extras, Dispatcher) : Dispatcher;
13
14
  setupBasicOidcGuard(modules, coguards);
14
15
  elevate(modules, DISPATCHER_OIDC_INIT);
15
16
  elevate(modules, DISPATCHER_OIDC);
16
- elevate(modules, DISPATCHER, handler(Dispatcher), { force: true });
17
+ elevate(modules, DISPATCHER, handler(DispatcherCom), { force: true });
17
18
  };
18
19
  //# sourceMappingURL=guard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"guard.js","sourceRoot":"","sources":["../src/guard.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,eAAe,IAAI,oBAAoB,EACvC,cAAc,IAAI,mBAAmB,EACrC,eAAe,EAAE,oBAAoB,EACtC,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAElD,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,OAAU,EAAE,IAAuB,EACnC,EAAE;IACF,OAAO,CAAC,eAAe,CAAC,mBAAmB,EAAE,CAAC,CAAA;IAE9C,MAAM,GAAG,GAAG,oBAAoB,CAAO,OAAO,EAAE,IAAI,CAAC,CAAA;IAErD,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAAuB,EAAE,QAA4B,EAAE,EAAE;IACtF,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAEtC,OAAO,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAA;IACtC,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC,CAAA;IACjC,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;AACpE,CAAC,CAAA"}
1
+ {"version":3,"file":"guard.js","sourceRoot":"","sources":["../src/guard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAG1C,OAAO,EACL,eAAe,IAAI,oBAAoB,EACvC,eAAe,EAAE,oBAAoB,EACrC,cAAc,IAAI,mBAAmB,EACtC,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAGlD,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,OAAU,EAAE,IAAuB,EACnC,EAAE;IACF,OAAO,CAAC,eAAe,CAAC,mBAAmB,EAAE,CAAC,CAAA;IAE9C,MAAM,GAAG,GAAG,oBAAoB,CAAO,OAAO,EAAE,IAAI,CAAC,CAAA;IAErD,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAAuB,EAAE,QAA4B,EAAE,MAAmC,EAAE,EAAE;IAC3H,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAA;IAErF,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAEtC,OAAO,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAA;IACtC,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC,CAAA;IACjC,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;AACvE,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,eAAe,EAAmB,MAAM,YAAY,CAAA;AAenF,eAAO,MAAM,mBAAmB,GAAI,QAAO,MAAsB,KAAG,eAqInE,CAAA"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,eAAe,EAAmB,MAAM,YAAY,CAAA;AAenF,eAAO,MAAM,mBAAmB,GAAI,QAAO,MAAsB,KAAG,eA+InE,CAAA"}
package/build/service.js CHANGED
@@ -53,8 +53,11 @@ export const makeOidcAuthService = (alias = DEFAULT_ALIAS) => {
53
53
  }
54
54
  params.entity ??= state.entityId;
55
55
  const ctx = service.assertCtx();
56
- const [redirectTo] = await ctx.module(DISPATCHER_OIDC_INIT)
56
+ let [redirectTo] = await ctx.module(DISPATCHER_OIDC_INIT)
57
57
  .call({ body: params });
58
+ if (flow.payload().simplified === 'true') {
59
+ redirectTo += '&simplified=true';
60
+ }
58
61
  const context = service.assertCtx();
59
62
  await store(context).save({ id: storeKey, authUrl: redirectTo });
60
63
  return redirectTo;
@@ -67,11 +70,17 @@ export const makeOidcAuthService = (alias = DEFAULT_ALIAS) => {
67
70
  throw new UnknownFlow('oidc.dispatch');
68
71
  }
69
72
  const authorityTransition = flowModel.next();
70
- flowModel.transit(authorityTransition.transition, true, { purpose: extras.purpose });
73
+ flowModel.transit(authorityTransition.transition, true, {
74
+ purpose: extras.purpose,
75
+ simplified: extras.simplified,
76
+ });
71
77
  // @TODO I'm not sure that this dirty hack is a correct approach
72
78
  if (extras.alias === HOME) {
73
79
  const redirectTransition = flowModel.next();
74
- flowModel.transit(redirectTransition.transition, true, { purpose: extras.purpose });
80
+ flowModel.transit(redirectTransition.transition, true, {
81
+ purpose: extras.purpose,
82
+ simplified: extras.simplified
83
+ });
75
84
  }
76
85
  const redirectUrl = await flow.proceed({ params: { uid: extras.uid } }, true);
77
86
  return redirectUrl;
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
package/build/types.d.ts CHANGED
@@ -4,6 +4,7 @@ import type { OIDCAuthInitParams, WithSharedConfig } from '@owlmeans/oidc';
4
4
  import type { OidcAuthPurposes } from './consts.js';
5
5
  import type { FlowModel, FlowPayload } from '@owlmeans/flow';
6
6
  import type { ResourceRecord } from '@owlmeans/resource';
7
+ import type { AuthToken } from '@owlmeans/auth';
7
8
  export interface OidcAuthService extends InitializedService {
8
9
  dispatch: (params: Record<string, string>) => Promise<boolean>;
9
10
  authenticate: (flow: FlowModel, params: OIDCAuthInitParams) => Promise<string | null>;
@@ -12,9 +13,14 @@ export interface OidcAuthService extends InitializedService {
12
13
  }
13
14
  export interface OidcAuthRedirectExtras extends FlowPayload {
14
15
  purpose: OidcAuthPurposes;
16
+ simplified?: string;
15
17
  uid?: string;
16
18
  alias?: string;
17
19
  }
20
+ export interface OidcPostAuthPayload extends FlowPayload, AuthToken {
21
+ purpose: OidcAuthPurposes;
22
+ simplified?: string;
23
+ }
18
24
  export interface Config extends AppConfig, WithSharedConfig {
19
25
  }
20
26
  export interface Context<C extends Config = Config> extends AppContext<C> {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAC1E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAExD,MAAM,WAAW,eAAgB,SAAQ,kBAAkB;IACzD,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAE9D,YAAY,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,kBAAkB,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAGrF,oBAAoB,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAGzE,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CACxC;AAED,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IACzD,OAAO,EAAE,gBAAgB,CAAA;IACzB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,MAAO,SAAQ,SAAS,EAAE,gBAAgB;CAAI;AAE/D,MAAM,WAAW,OAAO,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;CAAI;AAE7E,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACrD,OAAO,EAAE,MAAM,CAAA;CAChB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAC1E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C,MAAM,WAAW,eAAgB,SAAQ,kBAAkB;IACzD,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAE9D,YAAY,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,kBAAkB,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAGrF,oBAAoB,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAGzE,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CACxC;AAED,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IACzD,OAAO,EAAE,gBAAgB,CAAA;IACzB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,mBAAoB,SAAQ,WAAW,EAAG,SAAS;IAClE,OAAO,EAAE,gBAAgB,CAAA;IACzB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,MAAO,SAAQ,SAAS,EAAE,gBAAgB;CAAI;AAE/D,MAAM,WAAW,OAAO,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;CAAI;AAE7E,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACrD,OAAO,EAAE,MAAM,CAAA;CAChB"}
package/package.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "@owlmeans/web-oidc-rp",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
+ "license": "MIT",
4
5
  "type": "module",
5
6
  "scripts": {
6
7
  "build": "tsc -b",
@@ -27,19 +28,19 @@
27
28
  }
28
29
  },
29
30
  "dependencies": {
30
- "@owlmeans/auth": "^0.1.1",
31
- "@owlmeans/basic-envelope": "^0.1.1",
32
- "@owlmeans/client": "^0.1.1",
33
- "@owlmeans/client-auth": "^0.1.1",
34
- "@owlmeans/client-flow": "^0.1.1",
35
- "@owlmeans/client-i18n": "^0.1.1",
36
- "@owlmeans/context": "^0.1.1",
37
- "@owlmeans/flow": "^0.1.1",
38
- "@owlmeans/module": "^0.1.1",
39
- "@owlmeans/oidc": "^0.1.1",
40
- "@owlmeans/resource": "^0.1.1",
41
- "@owlmeans/web-client": "^0.1.1",
42
- "@owlmeans/web-flow": "^0.1.1",
31
+ "@owlmeans/auth": "^0.1.2",
32
+ "@owlmeans/basic-envelope": "^0.1.2",
33
+ "@owlmeans/client": "^0.1.2",
34
+ "@owlmeans/client-auth": "^0.1.2",
35
+ "@owlmeans/client-flow": "^0.1.2",
36
+ "@owlmeans/client-i18n": "^0.1.2",
37
+ "@owlmeans/context": "^0.1.2",
38
+ "@owlmeans/flow": "^0.1.2",
39
+ "@owlmeans/module": "^0.1.2",
40
+ "@owlmeans/oidc": "^0.1.2",
41
+ "@owlmeans/resource": "^0.1.2",
42
+ "@owlmeans/web-client": "^0.1.2",
43
+ "@owlmeans/web-flow": "^0.1.2",
43
44
  "oidc-client-ts": "^3.1.0"
44
45
  },
45
46
  "peerDependencies": {
@@ -67,8 +67,11 @@ export const oidcClientPlugin: AuthenticationPlugin = {
67
67
  const oidc = context.service<OidcAuthService>(DEFAULT_ALIAS)
68
68
 
69
69
  // @TODO we need to provide an identity provider client as entityId here for flexibel usage
70
+ const flow = await control.flow()
71
+ const state = await flow?.state()
70
72
  const _source = await oidc.proceedToRedirectUrl({
71
73
  purpose: control.source as OidcAuthPurposes ?? OidcAuthPurposes.Unknown,
74
+ simplified: state?.payload().simplified as string,
72
75
  uid: 'uid' in module.params ? `${module.params.uid}` : undefined,
73
76
  alias: module.alias
74
77
  })
@@ -90,6 +93,7 @@ export const oidcClientPlugin: AuthenticationPlugin = {
90
93
  const envelope = makeEnvelopeModel(control.allowance?.challenge, EnvelopeKind.Wrap)
91
94
  const challenge = envelope.message<string>(true)
92
95
  const parts = challenge.split(':http')
96
+ // This thing includes url with flow state so the OIDC redirect it back a correct way
93
97
  const url = 'http' + parts[1]
94
98
 
95
99
  // 2. Include additional parameters (control state with allowance to flow state)
package/src/guard.ts CHANGED
@@ -1,16 +1,17 @@
1
- import type { OidcGuardOptions } from '@owlmeans/oidc'
2
- import type { Config, Context } from './types.js'
1
+ import { DISPATCHER } from '@owlmeans/auth'
2
+ import { handler } from '@owlmeans/client'
3
3
  import type { CommonModule } from '@owlmeans/module'
4
+ import type { OidcGuardOptions } from '@owlmeans/oidc'
4
5
  import {
5
6
  appendOidcGuard as appendBasicOidcGuard,
6
- setupOidcGuard as setupBasicOidcGuard,
7
- DISPATCHER_OIDC, DISPATCHER_OIDC_INIT
7
+ DISPATCHER_OIDC, DISPATCHER_OIDC_INIT,
8
+ setupOidcGuard as setupBasicOidcGuard
8
9
  } from '@owlmeans/oidc'
9
- import { elevate } from '@owlmeans/web-client'
10
- import { DISPATCHER } from '@owlmeans/auth'
11
- import { handler } from '@owlmeans/client'
10
+ import type { ParametrisedProps } from '@owlmeans/web-client'
11
+ import { elevate, parametriseDispatcher } from '@owlmeans/web-client'
12
12
  import { Dispatcher } from './components/dispatcher.js'
13
13
  import { makeOidcAuthService } from './service.js'
14
+ import type { Config, Context } from './types.js'
14
15
 
15
16
  export const appendOidcGuard = <C extends Config, T extends Context<C>>(
16
17
  context: T, opts?: OidcGuardOptions
@@ -18,14 +19,16 @@ export const appendOidcGuard = <C extends Config, T extends Context<C>>(
18
19
  context.registerService(makeOidcAuthService())
19
20
 
20
21
  const ctx = appendBasicOidcGuard<C, T>(context, opts)
21
-
22
+
22
23
  return ctx
23
24
  }
24
25
 
25
- export const setupOidcGuard = (modules: CommonModule[], coguards?: string | string[]) => {
26
+ export const setupOidcGuard = (modules: CommonModule[], coguards?: string | string[], extras?: Partial<ParametrisedProps>) => {
27
+ const DispatcherCom = extras ? parametriseDispatcher(extras, Dispatcher) : Dispatcher
28
+
26
29
  setupBasicOidcGuard(modules, coguards)
27
30
 
28
31
  elevate(modules, DISPATCHER_OIDC_INIT)
29
32
  elevate(modules, DISPATCHER_OIDC)
30
- elevate(modules, DISPATCHER, handler(Dispatcher), { force: true })
33
+ elevate(modules, DISPATCHER, handler(DispatcherCom), { force: true })
31
34
  }
package/src/service.ts CHANGED
@@ -72,8 +72,12 @@ export const makeOidcAuthService = (alias: string = DEFAULT_ALIAS): OidcAuthServ
72
72
 
73
73
  const ctx = service.assertCtx<Config, Context>()
74
74
 
75
- const [redirectTo] = await ctx.module<Module<string>>(DISPATCHER_OIDC_INIT)
75
+ let [redirectTo] = await ctx.module<Module<string>>(DISPATCHER_OIDC_INIT)
76
76
  .call({ body: params })
77
+
78
+ if (flow.payload().simplified === 'true') {
79
+ redirectTo += '&simplified=true'
80
+ }
77
81
 
78
82
  const context = service.assertCtx<Config, Context>()
79
83
  await store(context).save({ id: storeKey, authUrl: redirectTo })
@@ -91,12 +95,18 @@ export const makeOidcAuthService = (alias: string = DEFAULT_ALIAS): OidcAuthServ
91
95
  }
92
96
 
93
97
  const authorityTransition = flowModel.next()
94
- flowModel.transit(authorityTransition.transition, true, { purpose: extras.purpose })
98
+ flowModel.transit(authorityTransition.transition, true, {
99
+ purpose: extras.purpose,
100
+ simplified: extras.simplified,
101
+ })
95
102
 
96
103
  // @TODO I'm not sure that this dirty hack is a correct approach
97
104
  if (extras.alias === HOME) {
98
105
  const redirectTransition = flowModel.next()
99
- flowModel.transit(redirectTransition.transition, true, { purpose: extras.purpose })
106
+ flowModel.transit(redirectTransition.transition, true, {
107
+ purpose: extras.purpose,
108
+ simplified: extras.simplified
109
+ })
100
110
  }
101
111
 
102
112
  const redirectUrl = await flow.proceed({ params: { uid: extras.uid } }, true)
package/src/types.ts CHANGED
@@ -4,6 +4,7 @@ import type { OIDCAuthInitParams, WithSharedConfig } from '@owlmeans/oidc'
4
4
  import type { OidcAuthPurposes } from './consts.js'
5
5
  import type { FlowModel, FlowPayload } from '@owlmeans/flow'
6
6
  import type { ResourceRecord } from '@owlmeans/resource'
7
+ import type { AuthToken } from '@owlmeans/auth'
7
8
 
8
9
  export interface OidcAuthService extends InitializedService {
9
10
  dispatch: (params: Record<string, string>) => Promise<boolean>
@@ -19,10 +20,16 @@ export interface OidcAuthService extends InitializedService {
19
20
 
20
21
  export interface OidcAuthRedirectExtras extends FlowPayload {
21
22
  purpose: OidcAuthPurposes
23
+ simplified?: string
22
24
  uid?: string
23
25
  alias?: string
24
26
  }
25
27
 
28
+ export interface OidcPostAuthPayload extends FlowPayload , AuthToken {
29
+ purpose: OidcAuthPurposes
30
+ simplified?: string
31
+ }
32
+
26
33
  export interface Config extends AppConfig, WithSharedConfig { }
27
34
 
28
35
  export interface Context<C extends Config = Config> extends AppContext<C> { }