limen-auth 0.0.0 → 0.0.1

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 (118) hide show
  1. package/README.md +16 -41
  2. package/dist/broadcast-channel.mjs +51 -0
  3. package/dist/build-tree.mjs +73 -0
  4. package/dist/client.d.mts +7 -0
  5. package/dist/client.mjs +71 -0
  6. package/dist/{constants-CsR2pQ_9.mjs → constants.mjs} +1 -3
  7. package/dist/context.d.mts +32 -0
  8. package/dist/define-plugin.d.mts +40 -0
  9. package/dist/{define-plugin-C7WOGU4b.mjs → define-plugin.mjs} +1 -3
  10. package/dist/envelope.mjs +39 -0
  11. package/dist/errors.d.mts +19 -0
  12. package/dist/{errors-4YJYt6f0.mjs → errors.mjs} +1 -3
  13. package/dist/fetcher.d.mts +17 -0
  14. package/dist/fetcher.mjs +112 -0
  15. package/dist/{helpers-CvmKjWi2.d.mts → helpers.d.mts} +1 -2
  16. package/dist/{helpers-Cs3VtXdv.mjs → helpers.mjs} +1 -3
  17. package/dist/hooks.d.mts +1 -0
  18. package/dist/hooks.mjs +34 -0
  19. package/dist/index.d.mts +14 -30
  20. package/dist/index.mjs +9 -11
  21. package/dist/infer.d.mts +42 -0
  22. package/dist/json-deep-equal.mjs +27 -0
  23. package/dist/normalize.d.mts +12 -0
  24. package/dist/normalize.mjs +19 -0
  25. package/dist/package.mjs +4 -0
  26. package/dist/path.mjs +41 -0
  27. package/dist/pipeline.mjs +65 -0
  28. package/dist/plugin.d.mts +71 -0
  29. package/dist/plugins/bearer/index.d.mts +13 -1
  30. package/dist/plugins/bearer/index.mjs +43 -1
  31. package/dist/plugins/bearer/storage.d.mts +8 -0
  32. package/dist/plugins/bearer/storage.mjs +41 -0
  33. package/dist/{index-B8SpHkSd.d.mts → plugins/bearer/types.d.mts} +1 -18
  34. package/dist/plugins/credential/index.d.mts +54 -1
  35. package/dist/plugins/credential/index.mjs +2 -4
  36. package/dist/plugins/credential/types.d.mts +35 -0
  37. package/dist/plugins/index.d.mts +13 -6
  38. package/dist/plugins/index.mjs +3 -2
  39. package/dist/plugins/magic-link/index.d.mts +17 -1
  40. package/dist/plugins/magic-link/index.mjs +2 -4
  41. package/dist/plugins/magic-link/types.d.mts +13 -0
  42. package/dist/plugins/oauth/index.d.mts +47 -1
  43. package/dist/plugins/oauth/index.mjs +3 -5
  44. package/dist/plugins/oauth/types.d.mts +35 -0
  45. package/dist/plugins/session-jwt/index.d.mts +24 -1
  46. package/dist/plugins/session-jwt/index.mjs +95 -1
  47. package/dist/plugins/session-jwt/jwt.mjs +34 -0
  48. package/dist/plugins/session-jwt/types.d.mts +11 -0
  49. package/dist/plugins/two-factor/index.d.mts +41 -1
  50. package/dist/plugins/two-factor/index.mjs +2 -4
  51. package/dist/plugins/two-factor/types.d.mts +26 -0
  52. package/dist/react/index.d.mts +6 -7
  53. package/dist/react/index.mjs +2 -20
  54. package/dist/react/react-store.d.mts +6 -0
  55. package/dist/react/react-store.mjs +18 -0
  56. package/dist/route.d.mts +80 -0
  57. package/dist/{route-DGxvFqWl.mjs → route.mjs} +1 -3
  58. package/dist/routes.d.mts +53 -0
  59. package/dist/routes.mjs +58 -0
  60. package/dist/serialize.d.mts +11 -0
  61. package/dist/serialize.mjs +23 -0
  62. package/dist/session-store.d.mts +29 -0
  63. package/dist/session-store.mjs +79 -0
  64. package/dist/session-sync.mjs +47 -0
  65. package/dist/solid/index.d.mts +6 -7
  66. package/dist/solid/index.mjs +2 -17
  67. package/dist/solid/solid-store.d.mts +7 -0
  68. package/dist/solid/solid-store.mjs +15 -0
  69. package/dist/svelte/index.d.mts +5 -3
  70. package/dist/svelte/index.mjs +1 -3
  71. package/dist/type-utils.d.mts +15 -0
  72. package/dist/types.d.mts +97 -0
  73. package/dist/version.d.mts +4 -0
  74. package/dist/version.mjs +5 -0
  75. package/dist/vue/index.d.mts +6 -19
  76. package/dist/vue/index.mjs +2 -25
  77. package/dist/vue/vue-store.d.mts +18 -0
  78. package/dist/vue/vue-store.mjs +23 -0
  79. package/package.json +4 -3
  80. package/dist/bearer-Cqmrmjjf.mjs +0 -84
  81. package/dist/bearer-Cqmrmjjf.mjs.map +0 -1
  82. package/dist/client-Er91De-z.mjs +0 -705
  83. package/dist/client-Er91De-z.mjs.map +0 -1
  84. package/dist/constants-CsR2pQ_9.mjs.map +0 -1
  85. package/dist/define-plugin-C7WOGU4b.mjs.map +0 -1
  86. package/dist/define-plugin-Dv0xXIaH.d.mts +0 -450
  87. package/dist/define-plugin-Dv0xXIaH.d.mts.map +0 -1
  88. package/dist/errors-4YJYt6f0.mjs.map +0 -1
  89. package/dist/helpers-Cs3VtXdv.mjs.map +0 -1
  90. package/dist/helpers-CvmKjWi2.d.mts.map +0 -1
  91. package/dist/index-B8SpHkSd.d.mts.map +0 -1
  92. package/dist/index-C6atwjEq.d.mts +0 -65
  93. package/dist/index-C6atwjEq.d.mts.map +0 -1
  94. package/dist/index-C9EuA9UZ.d.mts +0 -32
  95. package/dist/index-C9EuA9UZ.d.mts.map +0 -1
  96. package/dist/index-Cgr2wHmM.d.mts +0 -87
  97. package/dist/index-Cgr2wHmM.d.mts.map +0 -1
  98. package/dist/index-DV6YcNSu.d.mts +0 -81
  99. package/dist/index-DV6YcNSu.d.mts.map +0 -1
  100. package/dist/index-dEksIImj.d.mts +0 -28
  101. package/dist/index-dEksIImj.d.mts.map +0 -1
  102. package/dist/index.d.mts.map +0 -1
  103. package/dist/index.mjs.map +0 -1
  104. package/dist/plugins/credential/index.mjs.map +0 -1
  105. package/dist/plugins/magic-link/index.mjs.map +0 -1
  106. package/dist/plugins/oauth/index.mjs.map +0 -1
  107. package/dist/plugins/two-factor/index.mjs.map +0 -1
  108. package/dist/react/index.d.mts.map +0 -1
  109. package/dist/react/index.mjs.map +0 -1
  110. package/dist/route-DGxvFqWl.mjs.map +0 -1
  111. package/dist/session-jwt-DgLdMQxP.mjs +0 -129
  112. package/dist/session-jwt-DgLdMQxP.mjs.map +0 -1
  113. package/dist/solid/index.d.mts.map +0 -1
  114. package/dist/solid/index.mjs.map +0 -1
  115. package/dist/svelte/index.d.mts.map +0 -1
  116. package/dist/svelte/index.mjs.map +0 -1
  117. package/dist/vue/index.d.mts.map +0 -1
  118. package/dist/vue/index.mjs.map +0 -1
@@ -1,84 +0,0 @@
1
- import { a as SET_REFRESH_TOKEN_HEADER, i as SET_AUTH_TOKEN_HEADER, r as DEFAULT_TOKEN_STORAGE_KEY } from "./constants-CsR2pQ_9.mjs";
2
- import { n as defineRoutes, t as defineClientPlugin } from "./define-plugin-C7WOGU4b.mjs";
3
- //#region src/plugins/bearer/storage.ts
4
- function memoryBearerStorage() {
5
- let tokens = null;
6
- return {
7
- get: () => tokens,
8
- set: (next) => {
9
- tokens = next;
10
- },
11
- clear: () => {
12
- tokens = null;
13
- }
14
- };
15
- }
16
- function localStorageBearerStorage(key = DEFAULT_TOKEN_STORAGE_KEY) {
17
- return {
18
- get: () => {
19
- try {
20
- const raw = globalThis.localStorage.getItem(key);
21
- if (!raw) return null;
22
- const parsed = JSON.parse(raw);
23
- if (typeof parsed?.accessToken !== "string") return null;
24
- return parsed;
25
- } catch {
26
- return null;
27
- }
28
- },
29
- set: (tokens) => {
30
- globalThis.localStorage.setItem(key, JSON.stringify(tokens));
31
- },
32
- clear: () => {
33
- globalThis.localStorage.removeItem(key);
34
- }
35
- };
36
- }
37
- function resolveDefaultStorage(key) {
38
- if (typeof globalThis.localStorage !== "undefined") return localStorageBearerStorage(key);
39
- return memoryBearerStorage();
40
- }
41
- //#endregion
42
- //#region src/plugins/bearer/index.ts
43
- function bearerPlugin(config = {}) {
44
- const store = config.storage ?? resolveDefaultStorage(config.storageKey ?? "limen.tokens");
45
- return defineClientPlugin({
46
- id: "bearer",
47
- routes: defineRoutes(),
48
- actions: () => ({ bearer: {
49
- getTokens: () => store.get(),
50
- setTokens: (tokens) => store.set(tokens),
51
- clear: () => store.clear()
52
- } }),
53
- hooks: {
54
- beforeRequest: [{ run: (req) => {
55
- const tokens = store.get();
56
- if (tokens?.accessToken && !req.headers.has("Authorization")) req.headers.set("Authorization", `Bearer ${tokens.accessToken}`);
57
- return req;
58
- } }],
59
- afterResponse: [{
60
- allowOnFailure: true,
61
- run: (res) => {
62
- const accessToken = res.headers.get(SET_AUTH_TOKEN_HEADER);
63
- if (accessToken) {
64
- const tokens = { accessToken };
65
- const refreshToken = res.headers.get(SET_REFRESH_TOKEN_HEADER);
66
- if (refreshToken) tokens.refreshToken = refreshToken;
67
- store.set(tokens);
68
- }
69
- return res;
70
- }
71
- }, {
72
- match: ["/signout", "/revoke-sessions"],
73
- run: (res) => {
74
- store.clear();
75
- return res;
76
- }
77
- }]
78
- }
79
- });
80
- }
81
- //#endregion
82
- export { resolveDefaultStorage as i, localStorageBearerStorage as n, memoryBearerStorage as r, bearerPlugin as t };
83
-
84
- //# sourceMappingURL=bearer-Cqmrmjjf.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bearer-Cqmrmjjf.mjs","names":[],"sources":["../src/plugins/bearer/storage.ts","../src/plugins/bearer/index.ts"],"sourcesContent":["import { DEFAULT_TOKEN_STORAGE_KEY } from \"../../constants\";\nimport type { BearerStorage, BearerTokens } from \"./types\";\n\nexport function memoryBearerStorage(): BearerStorage {\n let tokens: BearerTokens | null = null;\n return {\n get: () => tokens,\n set: (next) => {\n tokens = next;\n },\n clear: () => {\n tokens = null;\n },\n };\n}\n\nexport function localStorageBearerStorage(key: string = DEFAULT_TOKEN_STORAGE_KEY): BearerStorage {\n return {\n get: () => {\n try {\n const raw = globalThis.localStorage.getItem(key);\n if (!raw) {\n return null;\n }\n const parsed = JSON.parse(raw) as Partial<BearerTokens>;\n if (typeof parsed?.accessToken !== \"string\") {\n return null;\n }\n return parsed as BearerTokens;\n } catch {\n return null;\n }\n },\n set: (tokens) => {\n globalThis.localStorage.setItem(key, JSON.stringify(tokens));\n },\n clear: () => {\n globalThis.localStorage.removeItem(key);\n },\n };\n}\n\nexport function resolveDefaultStorage(key: string): BearerStorage {\n if (typeof globalThis.localStorage !== \"undefined\") {\n return localStorageBearerStorage(key);\n }\n return memoryBearerStorage();\n}\n","import { DEFAULT_TOKEN_STORAGE_KEY, SET_AUTH_TOKEN_HEADER, SET_REFRESH_TOKEN_HEADER } from \"../../constants\";\nimport { defineClientPlugin, defineRoutes } from \"../../define-plugin\";\nimport { resolveDefaultStorage } from \"./storage\";\nimport type { BearerPluginConfig, BearerTokens } from \"./types\";\n\nexport function bearerPlugin(config: BearerPluginConfig = {}) {\n const store = config.storage ?? resolveDefaultStorage(config.storageKey ?? DEFAULT_TOKEN_STORAGE_KEY);\n\n return defineClientPlugin({\n id: \"bearer\",\n routes: defineRoutes(),\n actions: () => ({\n bearer: {\n getTokens: () => store.get(),\n setTokens: (tokens: BearerTokens) => store.set(tokens),\n clear: () => store.clear(),\n },\n }),\n hooks: {\n beforeRequest: [\n {\n run: (req) => {\n const tokens = store.get();\n if (tokens?.accessToken && !req.headers.has(\"Authorization\")) {\n req.headers.set(\"Authorization\", `Bearer ${tokens.accessToken}`);\n }\n return req;\n },\n },\n ],\n afterResponse: [\n {\n allowOnFailure: true,\n run: (res) => {\n const accessToken = res.headers.get(SET_AUTH_TOKEN_HEADER);\n if (accessToken) {\n const tokens: BearerTokens = { accessToken };\n const refreshToken = res.headers.get(SET_REFRESH_TOKEN_HEADER);\n if (refreshToken) {\n tokens.refreshToken = refreshToken;\n }\n store.set(tokens);\n }\n return res;\n },\n },\n {\n match: [\"/signout\", \"/revoke-sessions\"],\n run: (res) => {\n store.clear();\n return res;\n },\n },\n ],\n },\n });\n}\n\nexport { localStorageBearerStorage, memoryBearerStorage, resolveDefaultStorage } from \"./storage\";\nexport type { BearerPluginConfig, BearerPlugin as BearerPublic, BearerStorage, BearerTokens } from \"./types\";\n"],"mappings":";;;AAGA,SAAgB,sBAAqC;CACnD,IAAI,SAA8B;CAClC,OAAO;EACL,WAAW;EACX,MAAM,SAAS;GACb,SAAS;EACX;EACA,aAAa;GACX,SAAS;EACX;CACF;AACF;AAEA,SAAgB,0BAA0B,MAAc,2BAA0C;CAChG,OAAO;EACL,WAAW;GACT,IAAI;IACF,MAAM,MAAM,WAAW,aAAa,QAAQ,GAAG;IAC/C,IAAI,CAAC,KACH,OAAO;IAET,MAAM,SAAS,KAAK,MAAM,GAAG;IAC7B,IAAI,OAAO,QAAQ,gBAAgB,UACjC,OAAO;IAET,OAAO;GACT,QAAQ;IACN,OAAO;GACT;EACF;EACA,MAAM,WAAW;GACf,WAAW,aAAa,QAAQ,KAAK,KAAK,UAAU,MAAM,CAAC;EAC7D;EACA,aAAa;GACX,WAAW,aAAa,WAAW,GAAG;EACxC;CACF;AACF;AAEA,SAAgB,sBAAsB,KAA4B;CAChE,IAAI,OAAO,WAAW,iBAAiB,aACrC,OAAO,0BAA0B,GAAG;CAEtC,OAAO,oBAAoB;AAC7B;;;AC1CA,SAAgB,aAAa,SAA6B,CAAC,GAAG;CAC5D,MAAM,QAAQ,OAAO,WAAW,sBAAsB,OAAO,cAAA,cAAuC;CAEpG,OAAO,mBAAmB;EACxB,IAAI;EACJ,QAAQ,aAAa;EACrB,gBAAgB,EACd,QAAQ;GACN,iBAAiB,MAAM,IAAI;GAC3B,YAAY,WAAyB,MAAM,IAAI,MAAM;GACrD,aAAa,MAAM,MAAM;EAC3B,EACF;EACA,OAAO;GACL,eAAe,CACb,EACE,MAAM,QAAQ;IACZ,MAAM,SAAS,MAAM,IAAI;IACzB,IAAI,QAAQ,eAAe,CAAC,IAAI,QAAQ,IAAI,eAAe,GACzD,IAAI,QAAQ,IAAI,iBAAiB,UAAU,OAAO,aAAa;IAEjE,OAAO;GACT,EACF,CACF;GACA,eAAe,CACb;IACE,gBAAgB;IAChB,MAAM,QAAQ;KACZ,MAAM,cAAc,IAAI,QAAQ,IAAI,qBAAqB;KACzD,IAAI,aAAa;MACf,MAAM,SAAuB,EAAE,YAAY;MAC3C,MAAM,eAAe,IAAI,QAAQ,IAAI,wBAAwB;MAC7D,IAAI,cACF,OAAO,eAAe;MAExB,MAAM,IAAI,MAAM;KAClB;KACA,OAAO;IACT;GACF,GACA;IACE,OAAO,CAAC,YAAY,kBAAkB;IACtC,MAAM,QAAQ;KACZ,MAAM,MAAM;KACZ,OAAO;IACT;GACF,CACF;EACF;CACF,CAAC;AACH"}