@owlmeans/client-auth 0.1.18-rc.8 → 0.1.18

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.
Files changed (259) hide show
  1. package/README.md +283 -37
  2. package/agent-meta/manifest.json +50 -4
  3. package/agent-meta/skills/client-auth/SKILL.md +85 -23
  4. package/agent-meta/skills/client-auth/parts/login.md +77 -0
  5. package/agent-meta/skills/client-auth/parts/manager.md +37 -0
  6. package/build/components/dispatcher/component.d.ts.map +1 -1
  7. package/build/components/dispatcher/component.js +26 -6
  8. package/build/components/dispatcher/component.js.map +1 -1
  9. package/build/components/dispatcher/types.local.d.ts +7 -0
  10. package/build/components/dispatcher/types.local.d.ts.map +1 -0
  11. package/build/components/dispatcher/types.local.js +2 -0
  12. package/build/components/dispatcher/types.local.js.map +1 -0
  13. package/build/entrypoints.d.ts +7 -0
  14. package/build/entrypoints.d.ts.map +1 -0
  15. package/build/entrypoints.js +7 -0
  16. package/build/entrypoints.js.map +1 -0
  17. package/build/helper.d.ts +2 -1
  18. package/build/helper.d.ts.map +1 -1
  19. package/build/helper.js +28 -5
  20. package/build/helper.js.map +1 -1
  21. package/build/index.d.ts +1 -1
  22. package/build/index.d.ts.map +1 -1
  23. package/build/index.js +1 -1
  24. package/build/index.js.map +1 -1
  25. package/build/login/adopt/types.d.ts +26 -0
  26. package/build/login/adopt/types.d.ts.map +1 -0
  27. package/build/login/adopt/types.js +2 -0
  28. package/build/login/adopt/types.js.map +1 -0
  29. package/build/login/adopt.d.ts +7 -12
  30. package/build/login/adopt.d.ts.map +1 -1
  31. package/build/login/adopt.js +15 -14
  32. package/build/login/adopt.js.map +1 -1
  33. package/build/login/consts.d.ts +89 -4
  34. package/build/login/consts.d.ts.map +1 -1
  35. package/build/login/consts.js +93 -5
  36. package/build/login/consts.js.map +1 -1
  37. package/build/login/consts.local.d.ts +16 -0
  38. package/build/login/consts.local.d.ts.map +1 -0
  39. package/build/login/consts.local.js +30 -0
  40. package/build/login/consts.local.js.map +1 -0
  41. package/build/login/credit/types.d.ts +7 -0
  42. package/build/login/credit/types.d.ts.map +1 -0
  43. package/build/login/credit/types.js +2 -0
  44. package/build/login/credit/types.js.map +1 -0
  45. package/build/login/credit.d.ts +19 -0
  46. package/build/login/credit.d.ts.map +1 -0
  47. package/build/login/credit.js +58 -0
  48. package/build/login/credit.js.map +1 -0
  49. package/build/login/env/types.d.ts +35 -0
  50. package/build/login/env/types.d.ts.map +1 -0
  51. package/build/login/env/types.js +2 -0
  52. package/build/login/env/types.js.map +1 -0
  53. package/build/login/env.d.ts +5 -29
  54. package/build/login/env.d.ts.map +1 -1
  55. package/build/login/env.js +63 -80
  56. package/build/login/env.js.map +1 -1
  57. package/build/login/flow.d.ts +20 -0
  58. package/build/login/flow.d.ts.map +1 -0
  59. package/build/login/flow.js +39 -0
  60. package/build/login/flow.js.map +1 -0
  61. package/build/login/hook.d.ts +30 -4
  62. package/build/login/hook.d.ts.map +1 -1
  63. package/build/login/hook.js +53 -18
  64. package/build/login/hook.js.map +1 -1
  65. package/build/login/i18n/be.json +41 -0
  66. package/build/login/i18n/de.json +41 -0
  67. package/build/login/i18n/en.json +41 -0
  68. package/build/login/i18n/es.json +41 -0
  69. package/build/login/i18n/fr.json +41 -0
  70. package/build/login/i18n/pl.json +41 -0
  71. package/build/login/i18n/ru.json +41 -0
  72. package/build/login/i18n/uk.json +41 -0
  73. package/build/login/i18n.d.ts +2 -0
  74. package/build/login/i18n.d.ts.map +1 -0
  75. package/build/login/i18n.js +27 -0
  76. package/build/login/i18n.js.map +1 -0
  77. package/build/login/index.d.ts +20 -0
  78. package/build/login/index.d.ts.map +1 -1
  79. package/build/login/index.js +11 -0
  80. package/build/login/index.js.map +1 -1
  81. package/build/login/land/types.d.ts +52 -0
  82. package/build/login/land/types.d.ts.map +1 -0
  83. package/build/login/land/types.js +2 -0
  84. package/build/login/land/types.js.map +1 -0
  85. package/build/login/land.d.ts +6 -0
  86. package/build/login/land.d.ts.map +1 -0
  87. package/build/login/land.js +122 -0
  88. package/build/login/land.js.map +1 -0
  89. package/build/login/methods/types.d.ts +30 -0
  90. package/build/login/methods/types.d.ts.map +1 -0
  91. package/build/login/methods/types.js +2 -0
  92. package/build/login/methods/types.js.map +1 -0
  93. package/build/login/methods.d.ts +7 -0
  94. package/build/login/methods.d.ts.map +1 -0
  95. package/build/login/methods.js +87 -0
  96. package/build/login/methods.js.map +1 -0
  97. package/build/login/resume/types.d.ts +24 -0
  98. package/build/login/resume/types.d.ts.map +1 -0
  99. package/build/login/resume/types.js +2 -0
  100. package/build/login/resume/types.js.map +1 -0
  101. package/build/login/resume.d.ts +9 -0
  102. package/build/login/resume.d.ts.map +1 -0
  103. package/build/login/resume.js +38 -0
  104. package/build/login/resume.js.map +1 -0
  105. package/build/login/screen.d.ts +17 -0
  106. package/build/login/screen.d.ts.map +1 -0
  107. package/build/login/screen.js +66 -0
  108. package/build/login/screen.js.map +1 -0
  109. package/build/login/service.d.ts +6 -5
  110. package/build/login/service.d.ts.map +1 -1
  111. package/build/login/service.js +141 -15
  112. package/build/login/service.js.map +1 -1
  113. package/build/login/start/types.d.ts +29 -0
  114. package/build/login/start/types.d.ts.map +1 -0
  115. package/build/login/start/types.js +2 -0
  116. package/build/login/start/types.js.map +1 -0
  117. package/build/login/start.d.ts +5 -0
  118. package/build/login/start.d.ts.map +1 -0
  119. package/build/login/start.js +36 -0
  120. package/build/login/start.js.map +1 -0
  121. package/build/login/surrogate/types.d.ts +9 -0
  122. package/build/login/surrogate/types.d.ts.map +1 -0
  123. package/build/login/surrogate/types.js +2 -0
  124. package/build/login/surrogate/types.js.map +1 -0
  125. package/build/login/surrogate.d.ts +13 -0
  126. package/build/login/surrogate.d.ts.map +1 -0
  127. package/build/login/surrogate.js +33 -0
  128. package/build/login/surrogate.js.map +1 -0
  129. package/build/login/terms/types.d.ts +112 -0
  130. package/build/login/terms/types.d.ts.map +1 -0
  131. package/build/login/terms/types.js +2 -0
  132. package/build/login/terms/types.js.map +1 -0
  133. package/build/login/terms-config.d.ts +65 -0
  134. package/build/login/terms-config.d.ts.map +1 -0
  135. package/build/login/terms-config.js +2 -0
  136. package/build/login/terms-config.js.map +1 -0
  137. package/build/login/terms.d.ts +21 -0
  138. package/build/login/terms.d.ts.map +1 -0
  139. package/build/login/terms.js +235 -0
  140. package/build/login/terms.js.map +1 -0
  141. package/build/login/types.d.ts +223 -16
  142. package/build/login/types.d.ts.map +1 -1
  143. package/build/login/types.js +1 -16
  144. package/build/login/types.js.map +1 -1
  145. package/build/manager/components/authentication/control.d.ts.map +1 -1
  146. package/build/manager/components/authentication/control.js +3 -3
  147. package/build/manager/components/authentication/control.js.map +1 -1
  148. package/build/manager/components/authentication/types.d.ts +2 -2
  149. package/build/manager/components/authentication/types.d.ts.map +1 -1
  150. package/build/manager/components/tunnel-consumer.js +2 -2
  151. package/build/manager/components/tunnel-consumer.js.map +1 -1
  152. package/build/manager/entrypoints.d.ts +11 -0
  153. package/build/manager/entrypoints.d.ts.map +1 -0
  154. package/build/manager/entrypoints.js +17 -0
  155. package/build/manager/entrypoints.js.map +1 -0
  156. package/build/manager/errors.d.ts.map +1 -1
  157. package/build/manager/errors.js.map +1 -1
  158. package/build/manager/plugins/basic-ed25519.d.ts.map +1 -1
  159. package/build/manager/plugins/basic-ed25519.js +5 -0
  160. package/build/manager/plugins/basic-ed25519.js.map +1 -1
  161. package/build/manager/plugins/exports.d.ts +3 -0
  162. package/build/manager/plugins/exports.d.ts.map +1 -1
  163. package/build/manager/plugins/exports.js +2 -0
  164. package/build/manager/plugins/exports.js.map +1 -1
  165. package/build/manager/plugins/index.d.ts +2 -5
  166. package/build/manager/plugins/index.d.ts.map +1 -1
  167. package/build/manager/plugins/index.js +9 -1
  168. package/build/manager/plugins/index.js.map +1 -1
  169. package/build/manager/plugins/methods.d.ts +6 -0
  170. package/build/manager/plugins/methods.d.ts.map +1 -0
  171. package/build/manager/plugins/methods.js +65 -0
  172. package/build/manager/plugins/methods.js.map +1 -0
  173. package/build/manager/plugins/re-captcha.d.ts.map +1 -1
  174. package/build/manager/plugins/re-captcha.js +5 -0
  175. package/build/manager/plugins/re-captcha.js.map +1 -1
  176. package/build/manager/plugins/registry/types.d.ts +10 -0
  177. package/build/manager/plugins/registry/types.d.ts.map +1 -0
  178. package/build/manager/plugins/registry/types.js +2 -0
  179. package/build/manager/plugins/registry/types.js.map +1 -0
  180. package/build/manager/plugins/registry.d.ts +20 -0
  181. package/build/manager/plugins/registry.d.ts.map +1 -0
  182. package/build/manager/plugins/registry.js +23 -0
  183. package/build/manager/plugins/registry.js.map +1 -0
  184. package/build/manager/plugins/tunnel/wallet.d.ts.map +1 -1
  185. package/build/manager/plugins/tunnel-consumer.d.ts.map +1 -1
  186. package/build/manager/plugins/tunnel-consumer.js +10 -3
  187. package/build/manager/plugins/tunnel-consumer.js.map +1 -1
  188. package/build/manager/plugins/types.d.ts +53 -0
  189. package/build/manager/plugins/types.d.ts.map +1 -1
  190. package/build/service.d.ts.map +1 -1
  191. package/build/service.js +1 -1
  192. package/build/service.js.map +1 -1
  193. package/package.json +33 -30
  194. package/src/components/dispatcher/component.tsx +37 -14
  195. package/src/components/dispatcher/types.local.ts +7 -0
  196. package/src/entrypoints.ts +10 -0
  197. package/src/helper.ts +31 -5
  198. package/src/index.ts +1 -1
  199. package/src/login/adopt/types.ts +25 -0
  200. package/src/login/adopt.ts +21 -14
  201. package/src/login/consts.local.ts +34 -0
  202. package/src/login/consts.ts +105 -5
  203. package/src/login/credit/types.ts +6 -0
  204. package/src/login/credit.ts +69 -0
  205. package/src/login/env/types.ts +35 -0
  206. package/src/login/env.ts +60 -72
  207. package/src/login/flow.ts +44 -0
  208. package/src/login/hook.ts +58 -22
  209. package/src/login/i18n/be.json +41 -0
  210. package/src/login/i18n/de.json +41 -0
  211. package/src/login/i18n/en.json +41 -0
  212. package/src/login/i18n/es.json +41 -0
  213. package/src/login/i18n/fr.json +41 -0
  214. package/src/login/i18n/pl.json +41 -0
  215. package/src/login/i18n/ru.json +41 -0
  216. package/src/login/i18n/uk.json +41 -0
  217. package/src/login/i18n.ts +29 -0
  218. package/src/login/index.ts +21 -0
  219. package/src/login/land/types.ts +54 -0
  220. package/src/login/land.ts +149 -0
  221. package/src/login/methods/types.ts +32 -0
  222. package/src/login/methods.ts +109 -0
  223. package/src/login/resume/types.ts +24 -0
  224. package/src/login/resume.ts +45 -0
  225. package/src/login/screen.tsx +140 -0
  226. package/src/login/service.ts +181 -18
  227. package/src/login/start/types.ts +30 -0
  228. package/src/login/start.ts +44 -0
  229. package/src/login/surrogate/types.ts +9 -0
  230. package/src/login/surrogate.ts +37 -0
  231. package/src/login/terms/types.ts +126 -0
  232. package/src/login/terms-config.ts +55 -0
  233. package/src/login/terms.ts +315 -0
  234. package/src/login/types.ts +233 -17
  235. package/src/manager/README.md +37 -80
  236. package/src/manager/components/authentication/control.ts +3 -3
  237. package/src/manager/components/authentication/types.ts +2 -2
  238. package/src/manager/components/tunnel-consumer.tsx +2 -2
  239. package/src/manager/entrypoints.ts +18 -0
  240. package/src/manager/plugins/basic-ed25519.tsx +7 -0
  241. package/src/manager/plugins/exports.ts +3 -0
  242. package/src/manager/plugins/index.ts +11 -4
  243. package/src/manager/plugins/methods.ts +74 -0
  244. package/src/manager/plugins/re-captcha.tsx +7 -0
  245. package/src/manager/plugins/registry/types.ts +10 -0
  246. package/src/manager/plugins/registry.ts +33 -0
  247. package/src/manager/plugins/tunnel-consumer.tsx +12 -3
  248. package/src/manager/plugins/types.ts +54 -0
  249. package/src/service.ts +1 -1
  250. package/tests/context.ts +1 -2
  251. package/tests/i18n.spec.ts +68 -0
  252. package/tests/land.spec.ts +292 -0
  253. package/tests/login.spec.ts +332 -0
  254. package/tests/target.spec.ts +210 -0
  255. package/tests/terms-deferred.spec.ts +65 -0
  256. package/tests/terms.spec.ts +314 -0
  257. package/build/.gitkeep +0 -0
  258. package/src/manager/modules.ts +0 -18
  259. package/src/modules.ts +0 -13
@@ -1,11 +1,11 @@
1
1
  import type { AllowanceRequest, AllowanceResponse, AuthCredentials, AuthenticationStage, AuthenticationType, AuthToken } from '@owlmeans/auth';
2
- import type { ModuleContextParams } from '@owlmeans/client';
2
+ import type { EntrypointContextParams } from '@owlmeans/client';
3
3
  import type { FC } from 'react';
4
4
  import type { ClientContext } from '@owlmeans/client';
5
5
  import type { FlowService } from '@owlmeans/client-flow';
6
6
  import type { ResilientError } from '@owlmeans/error';
7
7
  export type ClientAuthType = AuthenticationType | string;
8
- export interface AuthenticationProps extends ModuleContextParams {
8
+ export interface AuthenticationProps extends EntrypointContextParams {
9
9
  type?: ClientAuthType;
10
10
  callback?: AuthenticationCallback;
11
11
  source?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/manager/components/authentication/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/manager/components/authentication/types.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,9 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { AuthenticationType } from '@owlmeans/auth';
3
3
  import { AuthenticationHOC } from './authentication/component.js';
4
4
  import { useMemo } from 'react';
5
- import { useModule } from '@owlmeans/client';
5
+ import { useEntrypoint } from '@owlmeans/client';
6
6
  export const TunnelConsumer = ({ ...props }) => {
7
- const mod = useModule();
7
+ const mod = useEntrypoint();
8
8
  const Implementation = useMemo(() => AuthenticationHOC(undefined, AuthenticationType.WalletConsumer), []);
9
9
  return _jsx(Implementation, { ...mod, ...props, type: AuthenticationType.WalletConsumer });
10
10
  };
@@ -1 +1 @@
1
- {"version":3,"file":"tunnel-consumer.js","sourceRoot":"","sources":["../../../src/manager/components/tunnel-consumer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AAEjE,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAG5C,MAAM,CAAC,MAAM,cAAc,GAA2C,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IACrF,MAAM,GAAG,GAAG,SAAS,EAAE,CAAA;IACvB,MAAM,cAAc,GAAG,OAAO,CAC5B,GAAG,EAAE,CAAC,iBAAiB,CAAC,SAAS,EAAE,kBAAkB,CAAC,cAAc,CAAC,EAAE,EAAE,CAC1E,CAAA;IAED,OAAO,KAAC,cAAc,OAAK,GAAG,KAAM,KAAK,EAAE,IAAI,EAAE,kBAAkB,CAAC,cAAc,GAAG,CAAA;AACvF,CAAC,CAAA"}
1
+ {"version":3,"file":"tunnel-consumer.js","sourceRoot":"","sources":["../../../src/manager/components/tunnel-consumer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AAEjE,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAGhD,MAAM,CAAC,MAAM,cAAc,GAA2C,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IACrF,MAAM,GAAG,GAAG,aAAa,EAAE,CAAA;IAC3B,MAAM,cAAc,GAAG,OAAO,CAC5B,GAAG,EAAE,CAAC,iBAAiB,CAAC,SAAS,EAAE,kBAAkB,CAAC,cAAc,CAAC,EAAE,EAAE,CAC1E,CAAA;IAED,OAAO,KAAC,cAAc,OAAK,GAAG,KAAM,KAAK,EAAE,IAAI,EAAE,kBAAkB,CAAC,cAAc,GAAG,CAAA;AACvF,CAAC,CAAA"}
@@ -0,0 +1,11 @@
1
+ /** Browser entrypoints for the manager's authentication flows. */
2
+ export declare const entrypoints: (import("@owlmeans/client-entrypoint").ClientProtocolEntrypoint<import("@owlmeans/entrypoint").EntrypointProtocol<import("@owlmeans/entrypoint").OpenRequest, import("@owlmeans/entrypoint").OpenValue>> | import("@owlmeans/client-entrypoint").ClientProtocolEntrypoint<import("@owlmeans/entrypoint").EntrypointProtocol<{
3
+ body: import("@owlmeans/auth").AllowanceRequest;
4
+ }, import("@owlmeans/auth").AllowanceResponse>> | import("@owlmeans/client-entrypoint").ClientProtocolEntrypoint<import("@owlmeans/entrypoint").EntrypointProtocol<{
5
+ body: import("@owlmeans/auth").AuthCredentials;
6
+ }, import("@owlmeans/auth").AuthToken>> | import("@owlmeans/client-entrypoint").ClientProtocolEntrypoint<import("@owlmeans/entrypoint").EntrypointProtocol<{
7
+ query: Partial<import("@owlmeans/auth").AuthToken>;
8
+ }, undefined>> | import("@owlmeans/client-entrypoint").ClientProtocolEntrypoint<import("@owlmeans/entrypoint").EntrypointProtocol<{
9
+ query: import("@owlmeans/auth").AuthToken;
10
+ }, unknown>>)[];
11
+ //# sourceMappingURL=entrypoints.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entrypoints.d.ts","sourceRoot":"","sources":["../../src/manager/entrypoints.ts"],"names":[],"mappings":"AAMA,kEAAkE;AAClE,eAAO,MAAM,WAAW;;;;;;;;eAUvB,CAAA"}
@@ -0,0 +1,17 @@
1
+ import { authProtocols } from '@owlmeans/auth-common';
2
+ import { handler } from '@owlmeans/client';
3
+ import { bind, bindScreen, stab } from '@owlmeans/client-entrypoint';
4
+ import { AuthenticationHOC } from './components/authentication/component.js';
5
+ /** Browser entrypoints for the manager's authentication flows. */
6
+ export const entrypoints = [
7
+ bind(authProtocols.authen),
8
+ bind(authProtocols.init),
9
+ bind(authProtocols.authenticate),
10
+ bind(authProtocols.rely),
11
+ bind(authProtocols.client),
12
+ bind(authProtocols.login),
13
+ bindScreen(authProtocols.loginDefault, handler(AuthenticationHOC())),
14
+ bindScreen(authProtocols.loginTyped, handler(AuthenticationHOC())),
15
+ bindScreen(authProtocols.dispatcher, stab),
16
+ ];
17
+ //# sourceMappingURL=entrypoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entrypoints.js","sourceRoot":"","sources":["../../src/manager/entrypoints.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAA;AAE5E,kEAAkE;AAClE,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;IAC1B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;IACxB,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;IAChC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;IACxB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;IAC1B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;IACzB,UAAU,CAAC,aAAa,CAAC,YAAY,EAAE,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACpE,UAAU,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAClE,UAAU,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC;CAC3C,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/manager/errors.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEjD,qBAAa,eAAgB,SAAQ,gBAAgB;IACnD,OAAuB,QAAQ,EAAE,MAAM,CAAqC;gBAEhE,OAAO,GAAE,MAAgB;CAItC"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/manager/errors.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEjD,qBAAa,eAAgB,SAAQ,gBAAgB;IACnD,OAAuB,QAAQ,EAAE,MAAM,CAAqC;IAE5E,YAAY,OAAO,GAAE,MAAgB,EAGpC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/manager/errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEjD,MAAM,OAAO,eAAgB,SAAQ,gBAAgB;IAC5C,MAAM,CAAU,QAAQ,GAAW,GAAG,gBAAgB,CAAC,QAAQ,MAAM,CAAA;IAE5E,YAAY,UAAkB,OAAO;QACnC,KAAK,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAA;QACxB,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC,QAAQ,CAAA;IACtC,CAAC;;AAGH,cAAc,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAA"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/manager/errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEjD,MAAM,OAAO,eAAgB,SAAQ,gBAAgB;IAC5C,MAAM,CAAU,QAAQ,GAAW,GAAG,gBAAgB,CAAC,QAAQ,MAAM,CAAA;IAE5E,YAAY,OAAO,GAAW,OAAO;QACnC,KAAK,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAA;QACxB,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC,QAAQ,CAAA;IACtC,CAAC;CACF;AAED,cAAc,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"basic-ed25519.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/basic-ed25519.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAKtD,eAAO,MAAM,oBAAoB,EAAE,oBAmClC,CAAA"}
1
+ {"version":3,"file":"basic-ed25519.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/basic-ed25519.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAKtD,eAAO,MAAM,oBAAoB,EAAE,oBA0ClC,CAAA"}
@@ -5,6 +5,11 @@ import { makeKeyPairModel } from '@owlmeans/basic-keys';
5
5
  import { AuthenCredError } from '../errors.js';
6
6
  export const ed25519BasicUIPlugin = {
7
7
  type: AuthenticationType.BasicEd25519,
8
+ method: { order: 300, icon: 'key', emphasis: 'secondary' },
9
+ // This package ships no UI family, so the form below is a `Renderer` a panel package assigns
10
+ // (`@owlmeans/web-panel/auth/plugins`, `@owlmeans/mui-panel/auth/plugins`). Until one does, the
11
+ // Implementation throws on mount — so the sign-in screen must not offer the method.
12
+ requiresRenderer: true,
8
13
  Implementation: Renderer => ({ type, stage, control, params }) => {
9
14
  type = type ?? AuthenticationType.BasicEd25519;
10
15
  Renderer = Renderer ?? ed25519BasicUIPlugin.Renderer;
@@ -1 +1 @@
1
- {"version":3,"file":"basic-ed25519.js","sourceRoot":"","sources":["../../../src/manager/plugins/basic-ed25519.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAExE,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE9C,MAAM,CAAC,MAAM,oBAAoB,GAAyB;IACxD,IAAI,EAAE,kBAAkB,CAAC,YAAY;IAErC,cAAc,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;QAE/D,IAAI,GAAG,IAAI,IAAI,kBAAkB,CAAC,YAAY,CAAA;QAC9C,QAAQ,GAAG,QAAQ,IAAI,oBAAoB,CAAC,QAAQ,CAAA;QAEpD,iEAAiE;QACjE,+CAA+C;QAC/C,SAAS,CAAC,GAAG,EAAE;YACb,IAAI,OAAO,CAAC,KAAK,KAAK,mBAAmB,CAAC,IAAI,EAAE,CAAC;gBAC/C,KAAK,OAAO,CAAC,gBAAgB,EAAE,CAAA;YACjC,CAAC;QACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;QAEV,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,IAAI,WAAW,CAAC,iDAAiD,CAAC,CAAA;QAC1E,CAAC;QAED,OAAO,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAI,CAAA;IACjF,CAAC;IAED,YAAY,EAAE,KAAK,EAAC,WAAW,EAAC,EAAE;QAChC,MAAM,GAAG,GAAG,gBAAgB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;QAEpD,IAAI,WAAW,CAAC,MAAM,KAAK,GAAG,CAAC,aAAa,EAAE,EAAE,CAAC;YAC/C,MAAM,IAAI,eAAe,CAAC,uBAAuB,CAAC,CAAA;QACpD,CAAC;QAED,WAAW,CAAC,UAAU,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QAE9D,4CAA4C;QAC5C,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;IACtB,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"basic-ed25519.js","sourceRoot":"","sources":["../../../src/manager/plugins/basic-ed25519.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAExE,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE9C,MAAM,CAAC,MAAM,oBAAoB,GAAyB;IACxD,IAAI,EAAE,kBAAkB,CAAC,YAAY;IAErC,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE;IAE1D,6FAA6F;IAC7F,gGAAgG;IAChG,oFAAoF;IACpF,gBAAgB,EAAE,IAAI;IAEtB,cAAc,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;QAE/D,IAAI,GAAG,IAAI,IAAI,kBAAkB,CAAC,YAAY,CAAA;QAC9C,QAAQ,GAAG,QAAQ,IAAI,oBAAoB,CAAC,QAAQ,CAAA;QAEpD,iEAAiE;QACjE,+CAA+C;QAC/C,SAAS,CAAC,GAAG,EAAE;YACb,IAAI,OAAO,CAAC,KAAK,KAAK,mBAAmB,CAAC,IAAI,EAAE,CAAC;gBAC/C,KAAK,OAAO,CAAC,gBAAgB,EAAE,CAAA;YACjC,CAAC;QACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;QAEV,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,IAAI,WAAW,CAAC,iDAAiD,CAAC,CAAA;QAC1E,CAAC;QAED,OAAO,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAI,CAAA;IACjF,CAAC;IAED,YAAY,EAAE,KAAK,EAAC,WAAW,EAAC,EAAE;QAChC,MAAM,GAAG,GAAG,gBAAgB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;QAEpD,IAAI,WAAW,CAAC,MAAM,KAAK,GAAG,CAAC,aAAa,EAAE,EAAE,CAAC;YAC/C,MAAM,IAAI,eAAe,CAAC,uBAAuB,CAAC,CAAA;QACpD,CAAC;QAED,WAAW,CAAC,UAAU,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QAE9D,4CAA4C;QAC5C,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;IACtB,CAAC;CACF,CAAA"}
@@ -1,4 +1,7 @@
1
1
  export type * from './types.js';
2
+ export * from './registry.js';
3
+ export type * from './registry/types.js';
4
+ export * from './methods.js';
2
5
  export * from './tunnel/index.js';
3
6
  export * from './basic-ed25519.js';
4
7
  export * from './re-captcha.js';
@@ -1 +1 @@
1
- {"version":3,"file":"exports.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/exports.ts"],"names":[],"mappings":"AAAA,mBAAmB,YAAY,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA"}
1
+ {"version":3,"file":"exports.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/exports.ts"],"names":[],"mappings":"AAAA,mBAAmB,YAAY,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,mBAAmB,qBAAqB,CAAA;AACxC,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA"}
@@ -1,3 +1,5 @@
1
+ export * from './registry.js';
2
+ export * from './methods.js';
1
3
  export * from './tunnel/index.js';
2
4
  export * from './basic-ed25519.js';
3
5
  export * from './re-captcha.js';
@@ -1 +1 @@
1
- {"version":3,"file":"exports.js","sourceRoot":"","sources":["../../../src/manager/plugins/exports.ts"],"names":[],"mappings":"AACA,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA"}
1
+ {"version":3,"file":"exports.js","sourceRoot":"","sources":["../../../src/manager/plugins/exports.ts"],"names":[],"mappings":"AACA,cAAc,eAAe,CAAA;AAE7B,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA"}
@@ -1,6 +1,3 @@
1
- import type { ClientAuthType } from '../components/index.js';
2
- import { AuthenticationPlugin } from './types.js';
3
- export declare const plugins: {
4
- [type: ClientAuthType]: AuthenticationPlugin;
5
- };
1
+ export { plugins, createAuthPluginHelper, authPluginHelper } from './registry.js';
2
+ export type { AuthPluginHelper } from './registry/types.js';
6
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAI5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAIjD,eAAO,MAAM,OAAO,EAAE;IAAE,CAAC,IAAI,EAAE,cAAc,GAAG,oBAAoB,CAAA;CAAO,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACjF,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA"}
@@ -2,8 +2,16 @@ import { AuthenticationType } from '@owlmeans/auth';
2
2
  import { ed25519BasicUIPlugin } from './basic-ed25519.js';
3
3
  import { reCaptchaPlugin } from './re-captcha.js';
4
4
  import { tunnelConsumerUIPlugin } from './tunnel-consumer.js';
5
- export const plugins = {};
5
+ import { pluginMethodSource } from './methods.js';
6
+ import { loginMethodsHelper } from '../../login/methods.js';
7
+ import { plugins } from './registry.js';
8
+ export { plugins, createAuthPluginHelper, authPluginHelper } from './registry.js';
6
9
  plugins[AuthenticationType.BasicEd25519] = ed25519BasicUIPlugin;
7
10
  plugins[AuthenticationType.ReCaptcha] = reCaptchaPlugin;
8
11
  plugins[AuthenticationType.WalletConsumer] = tunnelConsumerUIPlugin;
12
+ // Registered from here, not from `login/`, so that importing `@owlmeans/client-auth/login` never
13
+ // drags this module's React plugin implementations into a bundle that only wanted the login host.
14
+ // A generated application imports the login subpath through `client-iam`; it must not gain three
15
+ // authentication methods it never registered as a side effect of that.
16
+ loginMethodsHelper.registerMethodSource(pluginMethodSource);
9
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/manager/plugins/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAE7D,MAAM,CAAC,MAAM,OAAO,GAAqD,EAAE,CAAA;AAE3E,OAAO,CAAC,kBAAkB,CAAC,YAAY,CAAC,GAAG,oBAAoB,CAAA;AAC/D,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,GAAG,eAAe,CAAA;AACvD,OAAO,CAAC,kBAAkB,CAAC,cAAc,CAAC,GAAG,sBAAsB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/manager/plugins/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAGjF,OAAO,CAAC,kBAAkB,CAAC,YAAY,CAAC,GAAG,oBAAoB,CAAA;AAC/D,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,GAAG,eAAe,CAAA;AACvD,OAAO,CAAC,kBAAkB,CAAC,cAAc,CAAC,GAAG,sBAAsB,CAAA;AAEnE,iGAAiG;AACjG,kGAAkG;AAClG,iGAAiG;AACjG,uEAAuE;AACvE,kBAAkB,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,CAAA"}
@@ -0,0 +1,6 @@
1
+ import type { LoginMethodSource } from '../../login/types.js';
2
+ /**
3
+ * Every registered authentication plugin that declares itself offerable, as a sign-in method.
4
+ */
5
+ export declare const pluginMethodSource: LoginMethodSource;
6
+ //# sourceMappingURL=methods.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"methods.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/methods.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAmC,iBAAiB,EAAgB,MAAM,sBAAsB,CAAA;AA6B5G;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,iBAsChC,CAAA"}
@@ -0,0 +1,65 @@
1
+ import { CAUTHEN_AUTHEN_TYPED } from '@owlmeans/auth';
2
+ import { DEFAULT_METHOD_ORDER, LOGIN_SERVICE } from '../../login/consts.js';
3
+ import { authPluginHelper } from './registry.js';
4
+ /**
5
+ * Whether a registered plugin may be put on the sign-in screen of THIS application.
6
+ *
7
+ * The registry is global and is filled by side-effect imports, so "registered" means only that
8
+ * some module was pulled into the bundle — three separate reasons why that is not enough:
9
+ *
10
+ * 1. No `method`: `re-captcha` is a STEP inside another flow, not a way to sign in.
11
+ * 2. No renderer: a plugin that declares `requiresRenderer` throws the moment its screen mounts
12
+ * unless a UI package (`web-panel`, `mui-panel`) assigned one. An app that imported the plugin
13
+ * host without that package would be offering buttons whose only outcome is a broken page.
14
+ * 3. Not wired: a plugin whose flow needs a service its context never appended fails on the
15
+ * lookup instead. Packages register their plugins in groups, so an app that wanted one of them
16
+ * gets the rest too, and the rest have to be able to say they do not apply here.
17
+ */
18
+ const offerable = (plugin, ctx) => {
19
+ if (plugin.method == null || plugin.method.hidden === true) {
20
+ return false;
21
+ }
22
+ if (plugin.requiresRenderer === true && plugin.Renderer == null) {
23
+ return false;
24
+ }
25
+ return plugin.method.available?.(ctx) !== false;
26
+ };
27
+ /**
28
+ * Every registered authentication plugin that declares itself offerable, as a sign-in method.
29
+ */
30
+ export const pluginMethodSource = {
31
+ alias: 'authentication-plugins',
32
+ list: ctx => authPluginHelper.listAuthPlugins()
33
+ .filter(plugin => offerable(plugin, ctx))
34
+ .map((plugin) => {
35
+ const meta = plugin.method;
36
+ const type = plugin.type;
37
+ const id = meta.id ?? type;
38
+ return {
39
+ id, type,
40
+ ...(meta.label != null ? { label: meta.label } : {}),
41
+ i18nKey: meta.i18nKey ?? id,
42
+ ...(meta.icon != null ? { icon: meta.icon } : {}),
43
+ order: meta.order ?? DEFAULT_METHOD_ORDER,
44
+ ...(meta.emphasis != null ? { emphasis: meta.emphasis } : {}),
45
+ ...(meta.restricted === true ? { restricted: true } : {}),
46
+ params: { type },
47
+ // Non-async through the whole chain: `login.begin` opens the surrogate window in its first
48
+ // statement, and a window opened after the gesture has been handled is blocked.
49
+ start: methodCtx => {
50
+ const login = methodCtx.context.service(LOGIN_SERVICE);
51
+ const entrypoint = methodCtx.context.entrypoint(CAUTHEN_AUTHEN_TYPED);
52
+ const url = entrypoint.path().replace(':type', encodeURIComponent(type));
53
+ return login.begin({
54
+ url,
55
+ // In an ordinary tab this keeps the application mounted, exactly as the pre-chooser
56
+ // dispatcher did; the surrogate plugin ignores it and opens a window instead.
57
+ ...(methodCtx.navigate != null
58
+ ? { navigate: () => methodCtx.navigate?.(CAUTHEN_AUTHEN_TYPED, { type }) }
59
+ : {}),
60
+ });
61
+ },
62
+ };
63
+ }),
64
+ };
65
+ //# sourceMappingURL=methods.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"methods.js","sourceRoot":"","sources":["../../../src/manager/plugins/methods.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"re-captcha.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/re-captcha.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAGtD,eAAO,MAAM,eAAe,EAAE,oBA0B7B,CAAA"}
1
+ {"version":3,"file":"re-captcha.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/re-captcha.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAGtD,eAAO,MAAM,eAAe,EAAE,oBAiC7B,CAAA"}
@@ -3,6 +3,11 @@ import { AuthenticationStage, AuthenticationType } from '@owlmeans/auth';
3
3
  import { useEffect } from 'react';
4
4
  export const reCaptchaPlugin = {
5
5
  type: AuthenticationType.ReCaptcha,
6
+ // A STEP inside another flow, never a way to sign in — so it is registered and never offered.
7
+ method: { hidden: true },
8
+ // Its widget is a `Renderer` a panel package assigns. `hidden` already keeps it off the sign-in
9
+ // screen; this is what the flow that DOES drive it can check before handing it a stage.
10
+ requiresRenderer: true,
6
11
  Implementation: Renderer => ({ type, stage, control, params }) => {
7
12
  Renderer = Renderer ?? reCaptchaPlugin.Renderer;
8
13
  // ReCaptcha authentication requests allowance unconditionally
@@ -1 +1 @@
1
- {"version":3,"file":"re-captcha.js","sourceRoot":"","sources":["../../../src/manager/plugins/re-captcha.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAExE,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,MAAM,CAAC,MAAM,eAAe,GAAyB;IACnD,IAAI,EAAE,kBAAkB,CAAC,SAAS;IAElC,cAAc,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;QAC/D,QAAQ,GAAG,QAAQ,IAAI,eAAe,CAAC,QAAQ,CAAA;QAE/C,+DAA+D;QAC/D,+CAA+C;QAC/C,SAAS,CAAC,GAAG,EAAE;YACb,IAAI,OAAO,CAAC,KAAK,KAAK,mBAAmB,CAAC,IAAI,EAAE,CAAC;gBAC/C,KAAK,OAAO,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;YACjE,CAAC;QACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;QAEV,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,IAAI,WAAW,CAAC,8CAA8C,CAAC,CAAA;QACvE,CAAC;QAED,OAAO,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAI,CAAA;IACjF,CAAC;IAED;;;OAGG;IACH,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;CAC1C,CAAA"}
1
+ {"version":3,"file":"re-captcha.js","sourceRoot":"","sources":["../../../src/manager/plugins/re-captcha.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAExE,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,MAAM,CAAC,MAAM,eAAe,GAAyB;IACnD,IAAI,EAAE,kBAAkB,CAAC,SAAS;IAElC,8FAA8F;IAC9F,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;IAExB,gGAAgG;IAChG,wFAAwF;IACxF,gBAAgB,EAAE,IAAI;IAEtB,cAAc,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;QAC/D,QAAQ,GAAG,QAAQ,IAAI,eAAe,CAAC,QAAQ,CAAA;QAE/C,+DAA+D;QAC/D,+CAA+C;QAC/C,SAAS,CAAC,GAAG,EAAE;YACb,IAAI,OAAO,CAAC,KAAK,KAAK,mBAAmB,CAAC,IAAI,EAAE,CAAC;gBAC/C,KAAK,OAAO,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;YACjE,CAAC;QACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;QAEV,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,IAAI,WAAW,CAAC,8CAA8C,CAAC,CAAA;QACvE,CAAC;QAED,OAAO,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAI,CAAA;IACjF,CAAC;IAED;;;OAGG;IACH,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;CAC1C,CAAA"}
@@ -0,0 +1,10 @@
1
+ import type { ClientAuthType } from '../../components/authentication/types.js';
2
+ import type { AuthenticationPlugin } from '../types.js';
3
+ /** Reads and writes of the global authentication-plugin registry. */
4
+ export interface AuthPluginHelper {
5
+ /** Register a plugin under its own `type`, replacing an earlier one; answers the plugin. */
6
+ registerAuthPlugin: (plugin: AuthenticationPlugin) => AuthenticationPlugin;
7
+ getAuthPlugin: (type: ClientAuthType) => AuthenticationPlugin | undefined;
8
+ listAuthPlugins: () => AuthenticationPlugin[];
9
+ }
10
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/manager/plugins/registry/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAA;AAC9E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAEvD,qEAAqE;AACrE,MAAM,WAAW,gBAAgB;IAC/B,4FAA4F;IAC5F,kBAAkB,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,oBAAoB,CAAA;IAC1E,aAAa,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,oBAAoB,GAAG,SAAS,CAAA;IACzE,eAAe,EAAE,MAAM,oBAAoB,EAAE,CAAA;CAC9C"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/manager/plugins/registry/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ import type { ClientAuthType } from '../components/authentication/types.js';
2
+ import type { AuthenticationPlugin } from './types.js';
3
+ import type { AuthPluginHelper } from './registry/types.js';
4
+ /**
5
+ * The registry every authentication plugin lands in.
6
+ *
7
+ * It stays a plain exported object, and every registration stays a plain assignment, because four
8
+ * packages already write into it from side-effect imports (`web-oidc-rp`, `mui-oidc-rp`,
9
+ * `web-auth`, and this package's own `index`). Hiding it behind an API would break all of them for
10
+ * no gain — the helper below simply reads it.
11
+ *
12
+ * It lives in its own module rather than in `index.ts` so that the method source can read it
13
+ * without the two importing each other.
14
+ */
15
+ export declare const plugins: {
16
+ [type: ClientAuthType]: AuthenticationPlugin;
17
+ };
18
+ export declare const createAuthPluginHelper: () => AuthPluginHelper;
19
+ export declare const authPluginHelper: AuthPluginHelper;
20
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AAC3E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAE3D;;;;;;;;;;GAUG;AACH,eAAO,MAAM,OAAO,EAAE;IAAE,CAAC,IAAI,EAAE,cAAc,GAAG,oBAAoB,CAAA;CAAO,CAAA;AAE3E,eAAO,MAAM,sBAAsB,QAAO,gBAazC,CAAA;AAED,eAAO,MAAM,gBAAgB,kBAA2B,CAAA"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * The registry every authentication plugin lands in.
3
+ *
4
+ * It stays a plain exported object, and every registration stays a plain assignment, because four
5
+ * packages already write into it from side-effect imports (`web-oidc-rp`, `mui-oidc-rp`,
6
+ * `web-auth`, and this package's own `index`). Hiding it behind an API would break all of them for
7
+ * no gain — the helper below simply reads it.
8
+ *
9
+ * It lives in its own module rather than in `index.ts` so that the method source can read it
10
+ * without the two importing each other.
11
+ */
12
+ export const plugins = {};
13
+ export const createAuthPluginHelper = () => {
14
+ const registerAuthPlugin = (plugin) => {
15
+ plugins[plugin.type] = plugin;
16
+ return plugin;
17
+ };
18
+ const getAuthPlugin = (type) => plugins[type];
19
+ const listAuthPlugins = () => Object.values(plugins);
20
+ return { registerAuthPlugin, getAuthPlugin, listAuthPlugins };
21
+ };
22
+ export const authPluginHelper = createAuthPluginHelper();
23
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/manager/plugins/registry.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,OAAO,GAAqD,EAAE,CAAA;AAE3E,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAqB,EAAE;IAC3D,MAAM,kBAAkB,GAAG,CAAC,MAA4B,EAAwB,EAAE;QAChF,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAA;QAE7B,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,CAAC,IAAoB,EAAoC,EAAE,CAC/E,OAAO,CAAC,IAAI,CAAC,CAAA;IAEf,MAAM,eAAe,GAAG,GAA2B,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAE5E,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,eAAe,EAAE,CAAA;AAC/D,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,sBAAsB,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../../src/manager/plugins/tunnel/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAGlD,eAAO,MAAM,kBAAkB,GAAI,MAAM,UAAU,KAAG,YAsCrD,CAAA"}
1
+ {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../../src/manager/plugins/tunnel/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAGlD,eAAO,MAAM,kBAAkB,SAAU,UAAU,KAAG,YAsCrD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"tunnel-consumer.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/tunnel-consumer.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAStD,eAAO,MAAM,sBAAsB,EAAE,oBA8DpC,CAAA"}
1
+ {"version":3,"file":"tunnel-consumer.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/tunnel-consumer.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAStD,eAAO,MAAM,sBAAsB,EAAE,oBAuEpC,CAAA"}
@@ -2,16 +2,23 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useWs } from '@owlmeans/client-socket';
3
3
  import { AUTH_SCOPE, AUTHEN_RELY, AuthenticationStage, AuthenticationType, AuthRole } from '@owlmeans/auth';
4
4
  import { useCallback, useEffect } from 'react';
5
- import { isEventMessage, SocketTimeout } from '@owlmeans/socket';
5
+ import { SocketTimeout, socketMessageHelper } from '@owlmeans/socket';
6
6
  import { RELY_ACTION_TIMEOUT, RELY_PIN_PERFIX } from '@owlmeans/auth-common';
7
7
  import { createWalletFacade } from './tunnel/wallet.js';
8
8
  export const tunnelConsumerUIPlugin = {
9
9
  type: AuthenticationType.WalletConsumer,
10
+ method: { order: 400, icon: 'wallet' },
11
+ // The PIN form is a `Renderer` a panel package assigns; without one the Implementation throws on
12
+ // mount, so the method must not be offered.
13
+ requiresRenderer: true,
10
14
  Implementation: renderer => ({ type, stage, control, params }) => {
11
15
  type = type ?? AuthenticationType.WalletConsumer;
12
16
  const Renderer = renderer
13
17
  ?? tunnelConsumerUIPlugin.Renderer;
14
- const connection = useWs(AUTHEN_RELY);
18
+ // A wallet-tunnel handshake is one-shot and stateful in the browser tab that started it — a
19
+ // reconnect would dial a brand-new rely session the wallet was never asked to approve, so a
20
+ // drop here is a real failure (`SocketTimeout` below), never something to retry underneath.
21
+ const connection = useWs(AUTHEN_RELY, undefined, { reconnect: false });
15
22
  if (Renderer == null) {
16
23
  throw new SyntaxError('Renderer is not defined for WalletConsumer plugin');
17
24
  }
@@ -40,7 +47,7 @@ export const tunnelConsumerUIPlugin = {
40
47
  return [null, null];
41
48
  };
42
49
  return connection.listen(async (message) => {
43
- if (isEventMessage(message) && message.event === 'close') {
50
+ if (socketMessageHelper.isEventMessage(message) && message.event === 'close') {
44
51
  await control.setError(new SocketTimeout('rely'));
45
52
  }
46
53
  });
@@ -1 +1 @@
1
- {"version":3,"file":"tunnel-consumer.js","sourceRoot":"","sources":["../../../src/manager/plugins/tunnel-consumer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tunnel-consumer.js","sourceRoot":"","sources":["../../../src/manager/plugins/tunnel-consumer.tsx"],"names":[],"mappings":"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"}
@@ -1,9 +1,62 @@
1
1
  import type { FC } from 'react';
2
+ import type { LoginMethodEmphasis } from '@owlmeans/config';
3
+ import type { LoginMethodContext } from '../../login/types.js';
2
4
  import type { AuthenticationControl, AuthenticationRenderer, AuthenticationRendererProps } from '../components/authentication/types.js';
3
5
  export interface AuthenticationPlugin extends Pick<AuthenticationControl, "beforeAuthenticate" | "afterAuthenticate">, Pick<Partial<AuthenticationControl>, "authenticate"> {
4
6
  type: string;
5
7
  Implementation: PluginImplemnetation;
6
8
  Renderer?: AuthenticationRenderer;
9
+ /**
10
+ * This plugin's `Implementation` cannot render without a `Renderer` a UI package supplies.
11
+ *
12
+ * It is declared rather than inferred because there is nothing to infer it from: a plugin that
13
+ * renders its own form and one that throws `Renderer is not defined` are the same object until
14
+ * the screen mounts. Declaring it is what lets the sign-in screen leave out a method whose
15
+ * renderer nobody registered, instead of offering a button that crashes the page it opens.
16
+ */
17
+ requiresRenderer?: boolean;
18
+ /**
19
+ * How this method presents itself on the sign-in screen.
20
+ *
21
+ * Absent means the plugin is never OFFERED — it is still reachable by type, which is what a
22
+ * step-in-a-flow (re-captcha) and a plugin an app deep-links to both need. Every field is
23
+ * optional so an existing plugin object keeps type-checking without being touched.
24
+ */
25
+ method?: AuthMethodMeta;
26
+ }
27
+ export interface AuthMethodMeta {
28
+ /** Defaults to the plugin's `type`. */
29
+ id?: string;
30
+ /** Literal fallback used when no translation resolves. */
31
+ label?: string;
32
+ /** Key under the `auth` library's `login.method.*`; defaults to the id. */
33
+ i18nKey?: string;
34
+ /** Icon registry NAME, never markup — this package must stay free of an icon library. */
35
+ icon?: string;
36
+ /** Ascending; default 100. */
37
+ order?: number;
38
+ emphasis?: LoginMethodEmphasis;
39
+ /**
40
+ * Never offered unless the configuration explicitly enables it.
41
+ *
42
+ * This is the secret-key gate: an operator login is registered like any other method and must
43
+ * not become offerable merely by being registered.
44
+ */
45
+ restricted?: boolean;
46
+ /** Registered, but never a choice. */
47
+ hidden?: boolean;
48
+ /**
49
+ * Whether the application this method is about to be offered in actually wired it.
50
+ *
51
+ * The plugin registry is global and is written to by side-effect imports, so being registered
52
+ * says only that some bundle pulled the module in — and modules arrive in groups. An app that
53
+ * wanted one method out of a package gets every method that package registers, including ones
54
+ * whose first act is to look up a service its context never appended. This is where a plugin
55
+ * says so, per context, at render time; `false` leaves it off the screen.
56
+ *
57
+ * Absent means "always", which is right for a plugin that needs nothing but itself.
58
+ */
59
+ available?: (ctx: LoginMethodContext) => boolean;
7
60
  }
8
61
  export interface PluginImplemnetation {
9
62
  (Renderer?: AuthenticationRenderer): FC<AuthenticationRendererProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,KAAK,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,2BAA2B,EAAG,MAAM,uCAAuC,CAAA;AAExI,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAChD,qBAAqB,EAAE,oBAAoB,GAAG,mBAAmB,CAClE,EAAE,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,cAAc,CAAC;IACrD,IAAI,EAAE,MAAM,CAAA;IACZ,cAAc,EAAE,oBAAoB,CAAA;IACpC,QAAQ,CAAC,EAAE,sBAAsB,CAAA;CAClC;AAED,MAAM,WAAW,oBAAoB;IACnC,CAAC,QAAQ,CAAC,EAAE,sBAAsB,GAAG,EAAE,CAAC,2BAA2B,CAAC,CAAA;CACrE"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAC9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,2BAA2B,EAAG,MAAM,uCAAuC,CAAA;AAExI,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAChD,qBAAqB,EAAE,oBAAoB,GAAG,mBAAmB,CAClE,EAAE,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,cAAc,CAAC;IACrD,IAAI,EAAE,MAAM,CAAA;IACZ,cAAc,EAAE,oBAAoB,CAAA;IACpC,QAAQ,CAAC,EAAE,sBAAsB,CAAA;IACjC;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,cAAc,CAAA;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,uCAAuC;IACvC,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,2EAA2E;IAC3E,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,yFAAyF;IACzF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,mBAAmB,CAAA;IAC9B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,sCAAsC;IACtC,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,OAAO,CAAA;CACjD;AAED,MAAM,WAAW,oBAAoB;IACnC,CAAC,QAAQ,CAAC,EAAE,sBAAsB,GAAG,EAAE,CAAC,2BAA2B,CAAC,CAAA;CACrE"}
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAoB,MAAM,YAAY,CAAA;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAGxD,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAO3E,eAAO,MAAM,eAAe,GAAI,QAAO,MAAsB,KAAG,WA8E/D,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,YAAY,EAAE,CAAC,SAAS,aAAa,CAAC,CAAC,CAAC,EAClF,KAAK,CAAC,EAAE,QAAO,MAAsB,KACpC,CAAC,GAAG,iBAYN,CAAA"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAoB,MAAM,YAAY,CAAA;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAGxD,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAO3E,eAAO,MAAM,eAAe,WAAW,MAAM,KAAmB,WA8E/D,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,YAAY,EAAE,CAAC,SAAS,aAAa,CAAC,CAAC,CAAC,OAC7E,CAAC,UAAS,MAAM,KACpB,CAAC,GAAG,iBAYN,CAAA"}
package/build/service.js CHANGED
@@ -12,7 +12,7 @@ export const makeAuthService = (alias = DEFAULT_ALIAS) => {
12
12
  },
13
13
  authenticate: async (token) => {
14
14
  const context = assertContext(service.ctx, location);
15
- const [authToken] = await context.entrypoint(DISPATCHER_AUTHEN)
15
+ const authToken = await context.entrypoint(DISPATCHER_AUTHEN)
16
16
  .call({ body: token });
17
17
  await service.update(authToken.token);
18
18
  },
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEhE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAGtE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAEtD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAgB,aAAa,EAAe,EAAE;IAC5E,MAAM,QAAQ,GAAG,gBAAgB,KAAK,EAAE,CAAA;IACxC,MAAM,OAAO,GAAgB,aAAa,CAAc,KAAK,EAAE;QAC7D,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,IAAI;QAElD,MAAM,EAAE,KAAK,IAAO,EAAE;YACpB,OAAO,KAAK,CAAM,CAAA;QACpB,CAAC;QAED,YAAY,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;YAC1B,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;YAEpD,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,OAAO,CAAC,UAAU,CAA8B,iBAAiB,CAAC;iBACzF,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;YAExB,MAAM,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QACvC,CAAC;QAED,MAAM,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;YACpB,OAAO,CAAC,KAAK,GAAG,KAAK,CAAA;YAErB,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;gBAClB,OAAO,CAAC,IAAI,GAAG,SAAS,CAAA;gBAExB,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,EAAoB,CAAA;gBACtD,MAAM,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;gBAElC,OAAM;YACR,CAAC;YAED,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,EAAoB,CAAA;YACtD,MAAM,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;YAE/C,MAAM,CAAC,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC1C,MAAM,QAAQ,GAAG,iBAAiB,CAAO,aAAa,EAAE,YAAY,CAAC,KAAK,CAAC,CAAA;YAC3E,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAA;QACnC,CAAC;QAED,aAAa,EAAE,KAAK,IAAI,EAAE;YACxB,IAAI,OAAO,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;gBAC1B,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,EAAoB,CAAA;gBACtD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBAE/C,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;oBACnB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;oBAE1B,IAAI,KAAK,IAAI,EAAE,EAAE,CAAC;wBAChB,OAAO,CAAC,KAAK,GAAG,SAAS,CAAA;wBACzB,OAAO,CAAC,IAAI,GAAG,SAAS,CAAA;wBACxB,MAAM,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;wBAElC,OAAO,IAAI,CAAA;oBACb,CAAC;oBAED,MAAM,CAAC,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;oBAC1C,OAAO,CAAC,KAAK,GAAG,KAAK,CAAA;oBAErB,MAAM,QAAQ,GAAG,iBAAiB,CAAO,aAAa,EAAE,YAAY,CAAC,KAAK,CAAC,CAAA;oBAE3E,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAA;gBACnC,CAAC;YACH,CAAC;YAED,OAAO,OAAO,CAAC,KAAK,IAAI,IAAI,CAAA;QAC9B,CAAC;QAED,IAAI,EAAE,GAAG,EAAE;YACT,IAAI,OAAO,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;gBACzB,MAAM,IAAI,kBAAkB,EAAE,CAAA;YAChC,CAAC;YAED,OAAO,OAAO,CAAC,IAAI,CAAA;QACrB,CAAC;QAED,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;KACjE,CAAC,CAAA;IAEF,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,GAAM,EAAE,QAAgB,aAAa,EACd,EAAE;IACzB,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;IAEtC,MAAM,OAAO,GAAG,GAA4B,CAAA;IAE5C,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;IAEhC,OAAO,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAA;IAE1C,OAAO,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAE/C,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}