@maka/maka-cli 5.123.0 → 5.123.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 (254) hide show
  1. package/README.md +64 -64
  2. package/bundle/typescript/package.json +120 -120
  3. package/bundle/typescript/src/README.md +64 -64
  4. package/bundle/typescript/src/commands/aws/aws.command.js +2 -2
  5. package/bundle/typescript/src/commands/aws/ci.sub.cmd.js +5 -5
  6. package/bundle/typescript/src/commands/aws/ckp.sub.cmd.js +12 -12
  7. package/bundle/typescript/src/commands/aws/csg.sub.cmd.js +3 -3
  8. package/bundle/typescript/src/commands/aws/di.sub.cmd.js +8 -8
  9. package/bundle/typescript/src/commands/aws/rkp.sub.cmd.js +5 -5
  10. package/bundle/typescript/src/commands/aws/sth.sub.cmd.js +3 -3
  11. package/bundle/typescript/src/commands/aws/ti.sub.cmd.js +5 -5
  12. package/bundle/typescript/src/commands/build/build.js +16 -16
  13. package/bundle/typescript/src/commands/build/docker.sub.cmd.js +9 -9
  14. package/bundle/typescript/src/commands/create.js +36 -36
  15. package/bundle/typescript/src/commands/debug.js +4 -4
  16. package/bundle/typescript/src/commands/deploy/deploy.command.js +2 -2
  17. package/bundle/typescript/src/commands/deploy/galaxy.sub.cmd.js +2 -2
  18. package/bundle/typescript/src/commands/deploy/github.sub.cmd.js +8 -8
  19. package/bundle/typescript/src/commands/deploy/ubuntu.sub.cmd.js +2 -2
  20. package/bundle/typescript/src/commands/env/env.command.js +8 -8
  21. package/bundle/typescript/src/commands/env/set.sub.cmd.js +11 -11
  22. package/bundle/typescript/src/commands/game/sideQuest/commands/go.js +1 -1
  23. package/bundle/typescript/src/commands/game/sideQuest/commands/search.js +9 -9
  24. package/bundle/typescript/src/commands/game/sideQuest/commands/source.js +7 -7
  25. package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.js +443 -443
  26. package/bundle/typescript/src/commands/game/sideQuest/factories/scene-factory.js +6 -6
  27. package/bundle/typescript/src/commands/game/sideQuest/game.js +1 -1
  28. package/bundle/typescript/src/commands/game/sideQuest/models/npc.js +206 -206
  29. package/bundle/typescript/src/commands/game/sideQuest/models/room.js +9 -9
  30. package/bundle/typescript/src/commands/game/sideQuest/scenes/scene1.json +556 -556
  31. package/bundle/typescript/src/commands/game/sideQuest/scenes/scene2.json +1447 -1447
  32. package/bundle/typescript/src/commands/game/sideQuest/utilities/ephemeral.js +14 -14
  33. package/bundle/typescript/src/commands/game/sideQuest-backlog.sub.cmd.js +2 -2
  34. package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js +2 -2
  35. package/bundle/typescript/src/commands/generate.js +2 -2
  36. package/bundle/typescript/src/commands/lint.js +10 -10
  37. package/bundle/typescript/src/commands/maka.cmd.js +26 -26
  38. package/bundle/typescript/src/commands/murder.js +14 -14
  39. package/bundle/typescript/src/commands/proxy.js +13 -13
  40. package/bundle/typescript/src/commands/remote/reconfig.sub.cmd.js +6 -6
  41. package/bundle/typescript/src/commands/run/docker.sub.cmd.js +11 -11
  42. package/bundle/typescript/src/commands/run/run.command.js +24 -24
  43. package/bundle/typescript/src/commands/set/global.sub.cmd.js +8 -8
  44. package/bundle/typescript/src/commands/set/local.sub.cmd.js +2 -2
  45. package/bundle/typescript/src/commands/set/set.command.js +3 -3
  46. package/bundle/typescript/src/commands/testCmd/test.command.js +2 -2
  47. package/bundle/typescript/src/exec.js +0 -0
  48. package/bundle/typescript/src/generators/api.js +11 -11
  49. package/bundle/typescript/src/generators/collection.js +6 -6
  50. package/bundle/typescript/src/generators/hook.js +10 -10
  51. package/bundle/typescript/src/generators/kits/auth/auth.generator.js +2 -2
  52. package/bundle/typescript/src/generators/kits/auth/auth0-meteor.auth.gen.js +612 -612
  53. package/bundle/typescript/src/generators/kits/auth/basic-meteor.auth.gen.js +48 -48
  54. package/bundle/typescript/src/generators/kits/auth/provider.auth.gen.js +12 -12
  55. package/bundle/typescript/src/generators/kits/esri/esri.generator.js +3 -3
  56. package/bundle/typescript/src/generators/kits/esri/map.esri.gen.js +7 -7
  57. package/bundle/typescript/src/generators/kits/frames/frames.generator.js +16 -16
  58. package/bundle/typescript/src/generators/kits/mui/auth.mui.gen.js +2 -2
  59. package/bundle/typescript/src/generators/kits/mui/auth0.mui.gen.js +5 -5
  60. package/bundle/typescript/src/generators/kits/mui/frame.mui.gen.js +4 -4
  61. package/bundle/typescript/src/generators/kits/mui/mui.generator.js +22 -22
  62. package/bundle/typescript/src/generators/services/translation.js +5 -5
  63. package/bundle/typescript/src/templates/aws/cloudformation/create-ec2-instance.template +14 -14
  64. package/bundle/typescript/src/templates/meteor/api/api.js +20 -20
  65. package/bundle/typescript/src/templates/meteor/api/api.js.ts +20 -20
  66. package/bundle/typescript/src/templates/meteor/api/apollo-gateway.js +50 -50
  67. package/bundle/typescript/src/templates/meteor/api/apollo-gateway.js.ts +55 -55
  68. package/bundle/typescript/src/templates/meteor/api/graphql-api.js +63 -63
  69. package/bundle/typescript/src/templates/meteor/api/graphql-api.js.ts +69 -69
  70. package/bundle/typescript/src/templates/meteor/api/methods.js +39 -39
  71. package/bundle/typescript/src/templates/meteor/api/methods.js.ts +40 -40
  72. package/bundle/typescript/src/templates/meteor/api/register-api.js +3 -3
  73. package/bundle/typescript/src/templates/meteor/api/register-api.js.ts +3 -3
  74. package/bundle/typescript/src/templates/meteor/api/resolvers.js +9 -9
  75. package/bundle/typescript/src/templates/meteor/api/resolvers.js.ts +9 -9
  76. package/bundle/typescript/src/templates/meteor/api/typeDefs.js +6 -6
  77. package/bundle/typescript/src/templates/meteor/api/typeDefs.js.ts +6 -6
  78. package/bundle/typescript/src/templates/meteor/app/client/body.html +3 -3
  79. package/bundle/typescript/src/templates/meteor/app/client/head.html +12 -12
  80. package/bundle/typescript/src/templates/meteor/app/client/main.js +15 -15
  81. package/bundle/typescript/src/templates/meteor/app/client/main.js.jsx +15 -15
  82. package/bundle/typescript/src/templates/meteor/app/client/main.js.ts +17 -17
  83. package/bundle/typescript/src/templates/meteor/app/client/main.js.tsx +17 -17
  84. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/index.js +20 -20
  85. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/index.js.jsx +107 -107
  86. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/index.js.ts +20 -20
  87. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/index.js.tsx +108 -108
  88. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/routes.js +39 -39
  89. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/routes.js.jsx +33 -33
  90. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/routes.js.ts +24 -24
  91. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/routes.js.tsx +33 -33
  92. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/templates.js +9 -9
  93. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/templates.js.jsx +9 -9
  94. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/templates.js.ts +9 -9
  95. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/templates.js.tsx +9 -9
  96. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/index.js +1 -1
  97. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/index.js.jsx +20 -20
  98. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/index.js.ts +1 -1
  99. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/index.js.tsx +20 -20
  100. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/routes.js.jsx +28 -28
  101. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/routes.js.tsx +28 -28
  102. package/bundle/typescript/src/templates/meteor/app/imports/startup/server/index.js +1 -1
  103. package/bundle/typescript/src/templates/meteor/app/imports/startup/server/index.js.jsx +95 -95
  104. package/bundle/typescript/src/templates/meteor/app/imports/startup/server/index.js.tsx +98 -98
  105. package/bundle/typescript/src/templates/meteor/app/imports/ui/test-helpers.js +24 -24
  106. package/bundle/typescript/src/templates/meteor/app/imports/ui/test-helpers.js.ts +24 -24
  107. package/bundle/typescript/src/templates/meteor/app/lib/main.js +3 -3
  108. package/bundle/typescript/src/templates/meteor/app/lib/main.js.jsx +3 -3
  109. package/bundle/typescript/src/templates/meteor/app/lib/main.js.ts +3 -3
  110. package/bundle/typescript/src/templates/meteor/app/lib/main.js.tsx +3 -3
  111. package/bundle/typescript/src/templates/meteor/app/maka.d.ts +533 -533
  112. package/bundle/typescript/src/templates/meteor/app/meteor.d.ts +181 -181
  113. package/bundle/typescript/src/templates/meteor/app/public/manifest.json +27 -27
  114. package/bundle/typescript/src/templates/meteor/app/public/sw.js +30 -30
  115. package/bundle/typescript/src/templates/meteor/app/public/sw.js.jsx +30 -30
  116. package/bundle/typescript/src/templates/meteor/app/public/sw.js.ts +30 -30
  117. package/bundle/typescript/src/templates/meteor/app/public/sw.js.tsx +30 -30
  118. package/bundle/typescript/src/templates/meteor/app/server/helmet-csp.js +179 -179
  119. package/bundle/typescript/src/templates/meteor/app/server/helmet-csp.js.jsx +179 -179
  120. package/bundle/typescript/src/templates/meteor/app/server/helmet-csp.js.ts +179 -179
  121. package/bundle/typescript/src/templates/meteor/app/server/helmet-csp.js.tsx +179 -179
  122. package/bundle/typescript/src/templates/meteor/app/server/main.js +13 -13
  123. package/bundle/typescript/src/templates/meteor/app/server/main.js.jsx +13 -13
  124. package/bundle/typescript/src/templates/meteor/app/server/main.js.ts +14 -14
  125. package/bundle/typescript/src/templates/meteor/app/server/main.js.tsx +14 -14
  126. package/bundle/typescript/src/templates/meteor/app/tsconfig.json +42 -42
  127. package/bundle/typescript/src/templates/meteor/collection/collection.js +51 -51
  128. package/bundle/typescript/src/templates/meteor/collection/collection.js.ts +55 -55
  129. package/bundle/typescript/src/templates/meteor/collection/tests.js +27 -27
  130. package/bundle/typescript/src/templates/meteor/collection/tests.js.ts +27 -27
  131. package/bundle/typescript/src/templates/meteor/config/deploy.sh.template +101 -101
  132. package/bundle/typescript/src/templates/meteor/config/docker-compose.yaml +17 -17
  133. package/bundle/typescript/src/templates/meteor/config/nginx.conf.template +31 -31
  134. package/bundle/typescript/src/templates/meteor/config/pm2.config.js +27 -27
  135. package/bundle/typescript/src/templates/meteor/config/process.env +5 -5
  136. package/bundle/typescript/src/templates/meteor/config/settings.json +11 -11
  137. package/bundle/typescript/src/templates/meteor/config/ssh.json +6 -6
  138. package/bundle/typescript/src/templates/meteor/dbc/config.js +70 -70
  139. package/bundle/typescript/src/templates/meteor/dbc/config.js.ts +70 -70
  140. package/bundle/typescript/src/templates/meteor/dbc/conn.js +37 -37
  141. package/bundle/typescript/src/templates/meteor/dbc/conn.js.ts +37 -37
  142. package/bundle/typescript/src/templates/meteor/dbc/register-dbc.js +3 -3
  143. package/bundle/typescript/src/templates/meteor/dbc/register-dbc.js.ts +3 -3
  144. package/bundle/typescript/src/templates/meteor/github/workflows/deploy.yaml +150 -150
  145. package/bundle/typescript/src/templates/meteor/method/method.js +48 -48
  146. package/bundle/typescript/src/templates/meteor/method/method.js.ts +48 -48
  147. package/bundle/typescript/src/templates/meteor/package/package.js +37 -37
  148. package/bundle/typescript/src/templates/meteor/package/package.js.jsx +37 -37
  149. package/bundle/typescript/src/templates/meteor/package/package.js.ts +36 -36
  150. package/bundle/typescript/src/templates/meteor/package/package.js.tsx +37 -37
  151. package/bundle/typescript/src/templates/meteor/package/tests/client/package.js +5 -5
  152. package/bundle/typescript/src/templates/meteor/package/tests/client/package.js.jsx +5 -5
  153. package/bundle/typescript/src/templates/meteor/package/tests/client/package.js.ts +5 -5
  154. package/bundle/typescript/src/templates/meteor/package/tests/client/package.js.tsx +5 -5
  155. package/bundle/typescript/src/templates/meteor/package/tests/server/package.js +5 -5
  156. package/bundle/typescript/src/templates/meteor/package/tests/server/package.js.jsx +5 -5
  157. package/bundle/typescript/src/templates/meteor/package/tests/server/package.js.ts +5 -5
  158. package/bundle/typescript/src/templates/meteor/package/tests/server/package.js.tsx +5 -5
  159. package/bundle/typescript/src/templates/meteor/project/.maka/config.json +29 -29
  160. package/bundle/typescript/src/templates/meteor/project/README.md +33 -33
  161. package/bundle/typescript/src/templates/meteor/project/build/README +4 -4
  162. package/bundle/typescript/src/templates/meteor/project/gitignore +10 -10
  163. package/bundle/typescript/src/templates/meteor/project/package.json +29 -29
  164. package/bundle/typescript/src/templates/meteor/publish/publish.js +7 -7
  165. package/bundle/typescript/src/templates/meteor/publish/publish.js.ts +7 -7
  166. package/bundle/typescript/src/templates/meteor/service/logger/logger.js +27 -27
  167. package/bundle/typescript/src/templates/meteor/service/logger/logger.js.ts +27 -27
  168. package/bundle/typescript/src/templates/meteor/stylesheet/stylesheet.css +5 -5
  169. package/bundle/typescript/src/templates/meteor/stylesheet/stylesheet.css.less +5 -5
  170. package/bundle/typescript/src/templates/meteor/template/template-tests.js +1 -1
  171. package/bundle/typescript/src/templates/meteor/template/template-tests.js.jsx +55 -55
  172. package/bundle/typescript/src/templates/meteor/template/template-tests.js.ts +1 -1
  173. package/bundle/typescript/src/templates/meteor/template/template-tests.js.tsx +55 -55
  174. package/bundle/typescript/src/templates/meteor/template/template.css +3 -3
  175. package/bundle/typescript/src/templates/meteor/template/template.css.less +3 -3
  176. package/bundle/typescript/src/templates/meteor/template/template.css.scss +3 -3
  177. package/bundle/typescript/src/templates/meteor/template/template.html +5 -5
  178. package/bundle/typescript/src/templates/meteor/template/template.js +20 -20
  179. package/bundle/typescript/src/templates/meteor/template/template.js.jsx +77 -77
  180. package/bundle/typescript/src/templates/meteor/template/template.js.ts +1 -1
  181. package/bundle/typescript/src/templates/meteor/template/template.js.tsx +89 -89
  182. package/bundle/typescript/src/templates/react/component/component.css +6 -6
  183. package/bundle/typescript/src/templates/react/component/component.css.less +6 -6
  184. package/bundle/typescript/src/templates/react/component/component.css.scss +3 -3
  185. package/bundle/typescript/src/templates/react/component/component.js.jsx +59 -59
  186. package/bundle/typescript/src/templates/react/component/component.js.tsx +65 -65
  187. package/bundle/typescript/src/templates/react/hook/hook.css +3 -3
  188. package/bundle/typescript/src/templates/react/hook/hook.css.scss +3 -3
  189. package/bundle/typescript/src/templates/react/hook/hook.js.jsx +19 -19
  190. package/bundle/typescript/src/templates/react/hook/hook.js.tsx +19 -19
  191. package/bundle/typescript/src/templates/react/kit/auth/provider/authentication-provider.js.jsx +306 -306
  192. package/bundle/typescript/src/templates/react/kit/auth/provider/authentication-provider.js.tsx +350 -350
  193. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-client.js.jsx +178 -178
  194. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-client.js.tsx +178 -178
  195. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-config.js.jsx +59 -59
  196. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-config.js.tsx +67 -67
  197. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-methods.js.jsx +273 -273
  198. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-methods.js.tsx +275 -275
  199. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-validator.js.jsx +182 -182
  200. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-validator.js.tsx +199 -199
  201. package/bundle/typescript/src/templates/react/kit/auth/service/meteor-auth-service.js.jsx +138 -138
  202. package/bundle/typescript/src/templates/react/kit/auth/service/meteor-auth-service.js.tsx +153 -153
  203. package/bundle/typescript/src/templates/react/kit/esri/map/basic-map.js.jsx +29 -29
  204. package/bundle/typescript/src/templates/react/kit/esri/map/basic-map.js.tsx +32 -32
  205. package/bundle/typescript/src/templates/react/kit/frames/frames-demo.css +63 -63
  206. package/bundle/typescript/src/templates/react/kit/frames/frames-demo.jsx +153 -153
  207. package/bundle/typescript/src/templates/react/kit/frames/frames-demo.tsx +164 -164
  208. package/bundle/typescript/src/templates/react/kit/frames/workspace-manager.css +105 -105
  209. package/bundle/typescript/src/templates/react/kit/frames/workspace-manager.jsx +158 -158
  210. package/bundle/typescript/src/templates/react/kit/frames/workspace-manager.tsx +166 -166
  211. package/bundle/typescript/src/templates/react/kit/mui/auth/forgot-password/basic-forgot-password-page.js.jsx +34 -34
  212. package/bundle/typescript/src/templates/react/kit/mui/auth/forgot-password/basic-forgot-password-page.js.tsx +33 -33
  213. package/bundle/typescript/src/templates/react/kit/mui/auth/login/basic-login-page.js.jsx +53 -53
  214. package/bundle/typescript/src/templates/react/kit/mui/auth/login/basic-login-page.js.tsx +53 -53
  215. package/bundle/typescript/src/templates/react/kit/mui/auth/logout/basic-logout-page.js.jsx +25 -25
  216. package/bundle/typescript/src/templates/react/kit/mui/auth/logout/basic-logout-page.js.tsx +25 -25
  217. package/bundle/typescript/src/templates/react/kit/mui/auth/password-reset/basic-password-reset-page.js.jsx +41 -41
  218. package/bundle/typescript/src/templates/react/kit/mui/auth/password-reset/basic-password-reset-page.js.tsx +34 -34
  219. package/bundle/typescript/src/templates/react/kit/mui/auth/register/basic-register-page.js.jsx +33 -33
  220. package/bundle/typescript/src/templates/react/kit/mui/auth/register/basic-register-page.js.tsx +33 -33
  221. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth-callback.js.jsx +71 -71
  222. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth-callback.js.tsx +71 -71
  223. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth0-account-settings.js.jsx +123 -123
  224. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth0-account-settings.js.tsx +123 -123
  225. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth0-login-button.js.jsx +56 -56
  226. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth0-login-button.js.tsx +74 -74
  227. package/bundle/typescript/src/templates/react/kit/mui/frame/app-bars/basic-app-bar.js.jsx +43 -43
  228. package/bundle/typescript/src/templates/react/kit/mui/frame/app-bars/basic-app-bar.js.tsx +43 -43
  229. package/bundle/typescript/src/templates/react/kit/mui/frame/drawers/basic-drawer.js.jsx +121 -121
  230. package/bundle/typescript/src/templates/react/kit/mui/frame/drawers/basic-drawer.js.tsx +117 -117
  231. package/bundle/typescript/src/templates/react/kit/mui/frame/footers/basic-sticky-footer.js.jsx +41 -41
  232. package/bundle/typescript/src/templates/react/kit/mui/frame/footers/basic-sticky-footer.js.tsx +41 -41
  233. package/bundle/typescript/src/templates/react/route/route.js +8 -8
  234. package/bundle/typescript/src/templates/react/route/route.js.jsx +5 -5
  235. package/bundle/typescript/src/templates/react/route/route.js.ts +8 -8
  236. package/bundle/typescript/src/templates/react/route/route.js.tsx +5 -5
  237. package/bundle/typescript/src/templates/react/test/test.js +1 -1
  238. package/bundle/typescript/src/templates/react/test/test.js.jsx +40 -40
  239. package/bundle/typescript/src/templates/react/test/test.js.ts +1 -1
  240. package/bundle/typescript/src/templates/react/test/test.js.tsx +40 -40
  241. package/bundle/typescript/src/templates/service/docker/Dockerfile +54 -54
  242. package/bundle/typescript/src/templates/service/eslint/babel.config.js +16 -16
  243. package/bundle/typescript/src/templates/service/eslint/config.eslint.js +69 -69
  244. package/bundle/typescript/src/templates/service/i18n/i18n.js +33 -33
  245. package/bundle/typescript/src/templates/service/i18n/i18n.js.ts +33 -33
  246. package/bundle/typescript/src/templates/service/i18n/locales.js +3 -3
  247. package/bundle/typescript/src/templates/service/i18n/locales.js.ts +3 -3
  248. package/bundle/typescript/src/templates/service/openssl/openssl.conf +22 -22
  249. package/bundle/typescript/src/templates/service/test/jest/jest.config.js +24 -24
  250. package/bundle/typescript/src/templates/service/test/jest/jest.setup.js +7 -7
  251. package/bundle/typescript/src/tools/mpi/sdk-runtime.d.ts +1 -0
  252. package/bundle/typescript/src/tools/mpi/sdk-runtime.js +29 -0
  253. package/bundle/typescript/src/tools/mpi/sdk-runtime.js.map +1 -1
  254. package/package.json +120 -120
@@ -1,178 +1,178 @@
1
- import { Meteor } from 'meteor/meteor';
2
- import { Auth0Client } from '@auth0/auth0-spa-js';
3
- import { getAuth0Config } from '../lib/auth0-config';
4
-
5
- /**
6
- * Auth0 Client Service
7
- *
8
- * This service manages Auth0 authentication on the client side,
9
- * including login, logout, and token management.
10
- */
11
-
12
- let auth0Client: Auth0Client | null = null;
13
-
14
- /**
15
- * Initialize Auth0 client
16
- */
17
- export const getAuth0Client = async (): Promise<Auth0Client> => {
18
- if (auth0Client) {
19
- return auth0Client;
20
- }
21
-
22
- const config = getAuth0Config();
23
-
24
- auth0Client = new Auth0Client({
25
- domain: config.domain,
26
- clientId: config.clientId,
27
- authorizationParams: {
28
- redirect_uri: config.redirectUri,
29
- audience: config.audience,
30
- scope: config.scope,
31
- },
32
- cacheLocation: 'memory',
33
- useRefreshTokens: true,
34
- });
35
-
36
- return auth0Client;
37
- };
38
-
39
- /**
40
- * Login with Auth0 using redirect
41
- */
42
- export const loginWithAuth0Redirect = async () => {
43
- const client = await getAuth0Client();
44
-
45
- await client.loginWithRedirect({
46
- authorizationParams: {
47
- redirect_uri: getAuth0Config().redirectUri,
48
- },
49
- });
50
- };
51
-
52
- /**
53
- * Login with Auth0 using popup
54
- * Returns both ID token and access token
55
- */
56
- export const loginWithAuth0Popup = async (): Promise<{ idToken: string; accessToken: string }> => {
57
- const client = await getAuth0Client();
58
-
59
- await client.loginWithPopup();
60
-
61
- // Get the ID token
62
- const idTokenClaims = await client.getIdTokenClaims();
63
- if (!idTokenClaims?.__raw) {
64
- throw new Error('Failed to get Auth0 ID token');
65
- }
66
-
67
- // Get the access token
68
- const accessToken = await client.getTokenSilently();
69
-
70
- return {
71
- idToken: idTokenClaims.__raw,
72
- accessToken: accessToken,
73
- };
74
- };
75
-
76
- /**
77
- * Handle Auth0 redirect callback
78
- * Call this on your callback page
79
- * Returns both ID token and access token
80
- */
81
- export const handleAuth0Callback = async (): Promise<{ idToken: string; accessToken: string }> => {
82
- const client = await getAuth0Client();
83
-
84
- // Handle the redirect callback
85
- await client.handleRedirectCallback();
86
-
87
- // Get the ID token
88
- const idTokenClaims = await client.getIdTokenClaims();
89
- if (!idTokenClaims?.__raw) {
90
- throw new Error('Failed to get Auth0 ID token after callback');
91
- }
92
-
93
- // Get the access token
94
- const accessToken = await client.getTokenSilently();
95
-
96
- return {
97
- idToken: idTokenClaims.__raw,
98
- accessToken: accessToken,
99
- };
100
- };
101
-
102
- /**
103
- * Get current Auth0 user
104
- */
105
- export const getAuth0User = async () => {
106
- const client = await getAuth0Client();
107
- return await client.getUser();
108
- };
109
-
110
- /**
111
- * Check if user is authenticated with Auth0
112
- */
113
- export const isAuth0Authenticated = async (): Promise<boolean> => {
114
- const client = await getAuth0Client();
115
- return await client.isAuthenticated();
116
- };
117
-
118
- /**
119
- * Logout from Auth0
120
- */
121
- export const logoutAuth0 = async () => {
122
- const client = await getAuth0Client();
123
-
124
- await client.logout({
125
- logoutParams: {
126
- returnTo: window.location.origin,
127
- },
128
- });
129
- };
130
-
131
- /**
132
- * Get Auth0 access token
133
- */
134
- export const getAuth0AccessToken = async (): Promise<string> => {
135
- const client = await getAuth0Client();
136
-
137
- return await client.getTokenSilently();
138
- };
139
-
140
- /**
141
- * Get Auth0 ID token
142
- */
143
- export const getAuth0IdToken = async (): Promise<string> => {
144
- const client = await getAuth0Client();
145
-
146
- const token = await client.getIdTokenClaims();
147
-
148
- if (!token?.__raw) {
149
- throw new Error('No Auth0 token available');
150
- }
151
-
152
- return token.__raw;
153
- };
154
-
155
- /**
156
- * Silently refresh the Auth0 token and update Meteor session
157
- * This is called automatically when the token is about to expire
158
- * Returns both ID token and access token
159
- */
160
- export const refreshAuth0Token = async (): Promise<{ idToken: string; accessToken: string }> => {
161
- const client = await getAuth0Client();
162
-
163
- // Get a fresh access token silently (using refresh token)
164
- const accessToken = await client.getTokenSilently({
165
- cacheMode: 'off', // Force refresh
166
- });
167
-
168
- // Get the new ID token
169
- const idTokenClaims = await client.getIdTokenClaims();
170
- if (!idTokenClaims?.__raw) {
171
- throw new Error('Failed to refresh Auth0 ID token');
172
- }
173
-
174
- return {
175
- idToken: idTokenClaims.__raw,
176
- accessToken: accessToken,
177
- };
178
- };
1
+ import { Meteor } from 'meteor/meteor';
2
+ import { Auth0Client } from '@auth0/auth0-spa-js';
3
+ import { getAuth0Config } from '../lib/auth0-config';
4
+
5
+ /**
6
+ * Auth0 Client Service
7
+ *
8
+ * This service manages Auth0 authentication on the client side,
9
+ * including login, logout, and token management.
10
+ */
11
+
12
+ let auth0Client: Auth0Client | null = null;
13
+
14
+ /**
15
+ * Initialize Auth0 client
16
+ */
17
+ export const getAuth0Client = async (): Promise<Auth0Client> => {
18
+ if (auth0Client) {
19
+ return auth0Client;
20
+ }
21
+
22
+ const config = getAuth0Config();
23
+
24
+ auth0Client = new Auth0Client({
25
+ domain: config.domain,
26
+ clientId: config.clientId,
27
+ authorizationParams: {
28
+ redirect_uri: config.redirectUri,
29
+ audience: config.audience,
30
+ scope: config.scope,
31
+ },
32
+ cacheLocation: 'memory',
33
+ useRefreshTokens: true,
34
+ });
35
+
36
+ return auth0Client;
37
+ };
38
+
39
+ /**
40
+ * Login with Auth0 using redirect
41
+ */
42
+ export const loginWithAuth0Redirect = async () => {
43
+ const client = await getAuth0Client();
44
+
45
+ await client.loginWithRedirect({
46
+ authorizationParams: {
47
+ redirect_uri: getAuth0Config().redirectUri,
48
+ },
49
+ });
50
+ };
51
+
52
+ /**
53
+ * Login with Auth0 using popup
54
+ * Returns both ID token and access token
55
+ */
56
+ export const loginWithAuth0Popup = async (): Promise<{ idToken: string; accessToken: string }> => {
57
+ const client = await getAuth0Client();
58
+
59
+ await client.loginWithPopup();
60
+
61
+ // Get the ID token
62
+ const idTokenClaims = await client.getIdTokenClaims();
63
+ if (!idTokenClaims?.__raw) {
64
+ throw new Error('Failed to get Auth0 ID token');
65
+ }
66
+
67
+ // Get the access token
68
+ const accessToken = await client.getTokenSilently();
69
+
70
+ return {
71
+ idToken: idTokenClaims.__raw,
72
+ accessToken: accessToken,
73
+ };
74
+ };
75
+
76
+ /**
77
+ * Handle Auth0 redirect callback
78
+ * Call this on your callback page
79
+ * Returns both ID token and access token
80
+ */
81
+ export const handleAuth0Callback = async (): Promise<{ idToken: string; accessToken: string }> => {
82
+ const client = await getAuth0Client();
83
+
84
+ // Handle the redirect callback
85
+ await client.handleRedirectCallback();
86
+
87
+ // Get the ID token
88
+ const idTokenClaims = await client.getIdTokenClaims();
89
+ if (!idTokenClaims?.__raw) {
90
+ throw new Error('Failed to get Auth0 ID token after callback');
91
+ }
92
+
93
+ // Get the access token
94
+ const accessToken = await client.getTokenSilently();
95
+
96
+ return {
97
+ idToken: idTokenClaims.__raw,
98
+ accessToken: accessToken,
99
+ };
100
+ };
101
+
102
+ /**
103
+ * Get current Auth0 user
104
+ */
105
+ export const getAuth0User = async () => {
106
+ const client = await getAuth0Client();
107
+ return await client.getUser();
108
+ };
109
+
110
+ /**
111
+ * Check if user is authenticated with Auth0
112
+ */
113
+ export const isAuth0Authenticated = async (): Promise<boolean> => {
114
+ const client = await getAuth0Client();
115
+ return await client.isAuthenticated();
116
+ };
117
+
118
+ /**
119
+ * Logout from Auth0
120
+ */
121
+ export const logoutAuth0 = async () => {
122
+ const client = await getAuth0Client();
123
+
124
+ await client.logout({
125
+ logoutParams: {
126
+ returnTo: window.location.origin,
127
+ },
128
+ });
129
+ };
130
+
131
+ /**
132
+ * Get Auth0 access token
133
+ */
134
+ export const getAuth0AccessToken = async (): Promise<string> => {
135
+ const client = await getAuth0Client();
136
+
137
+ return await client.getTokenSilently();
138
+ };
139
+
140
+ /**
141
+ * Get Auth0 ID token
142
+ */
143
+ export const getAuth0IdToken = async (): Promise<string> => {
144
+ const client = await getAuth0Client();
145
+
146
+ const token = await client.getIdTokenClaims();
147
+
148
+ if (!token?.__raw) {
149
+ throw new Error('No Auth0 token available');
150
+ }
151
+
152
+ return token.__raw;
153
+ };
154
+
155
+ /**
156
+ * Silently refresh the Auth0 token and update Meteor session
157
+ * This is called automatically when the token is about to expire
158
+ * Returns both ID token and access token
159
+ */
160
+ export const refreshAuth0Token = async (): Promise<{ idToken: string; accessToken: string }> => {
161
+ const client = await getAuth0Client();
162
+
163
+ // Get a fresh access token silently (using refresh token)
164
+ const accessToken = await client.getTokenSilently({
165
+ cacheMode: 'off', // Force refresh
166
+ });
167
+
168
+ // Get the new ID token
169
+ const idTokenClaims = await client.getIdTokenClaims();
170
+ if (!idTokenClaims?.__raw) {
171
+ throw new Error('Failed to refresh Auth0 ID token');
172
+ }
173
+
174
+ return {
175
+ idToken: idTokenClaims.__raw,
176
+ accessToken: accessToken,
177
+ };
178
+ };
@@ -1,59 +1,59 @@
1
- /**
2
- * Auth0 Configuration
3
- *
4
- * This file contains the Auth0 configuration settings.
5
- * Set your Auth0 credentials in Meteor settings or environment variables.
6
- */
7
-
8
- /**
9
- * Normalize Auth0 domain by removing protocol and trailing slashes
10
- */
11
- const normalizeDomain = (domain) => {
12
- return domain
13
- .replace(/^https?:\/\//, '') // Remove http:// or https://
14
- .replace(/\/$/, ''); // Remove trailing slash
15
- };
16
-
17
- /**
18
- * Get Auth0 configuration from Meteor settings or environment variables
19
- */
20
- export const getAuth0Config = () => {
21
- if (Meteor.isClient) {
22
- const settings = Meteor.settings.public?.auth0;
23
-
24
- if (!settings?.domain || !settings?.clientId) {
25
- throw new Error(
26
- 'Auth0 configuration missing. Please add auth0 settings to your Meteor settings.json file.'
27
- );
28
- }
29
-
30
- const normalizedDomain = normalizeDomain(settings.domain);
31
-
32
- return {
33
- domain: normalizedDomain,
34
- clientId: settings.clientId,
35
- audience: settings.audience || `https://${normalizedDomain}/api/v2/`,
36
- redirectUri: settings.redirectUri || window.location.origin + '/auth/callback',
37
- scope: settings.scope || 'openid profile email',
38
- };
39
- }
40
-
41
- // Server-side configuration
42
- const settings = Meteor.settings?.auth0;
43
-
44
- if (!settings?.domain || !settings?.clientId) {
45
- throw new Error(
46
- 'Auth0 configuration missing. Please add auth0 settings to your Meteor settings.json file.'
47
- );
48
- }
49
-
50
- const normalizedDomain = normalizeDomain(settings.domain);
51
-
52
- return {
53
- domain: normalizedDomain,
54
- clientId: settings.clientId,
55
- audience: settings.audience || `https://${normalizedDomain}/api/v2/`,
56
- redirectUri: settings.redirectUri || Meteor.absoluteUrl('auth/callback'),
57
- scope: settings.scope || 'openid profile email',
58
- };
59
- };
1
+ /**
2
+ * Auth0 Configuration
3
+ *
4
+ * This file contains the Auth0 configuration settings.
5
+ * Set your Auth0 credentials in Meteor settings or environment variables.
6
+ */
7
+
8
+ /**
9
+ * Normalize Auth0 domain by removing protocol and trailing slashes
10
+ */
11
+ const normalizeDomain = (domain) => {
12
+ return domain
13
+ .replace(/^https?:\/\//, '') // Remove http:// or https://
14
+ .replace(/\/$/, ''); // Remove trailing slash
15
+ };
16
+
17
+ /**
18
+ * Get Auth0 configuration from Meteor settings or environment variables
19
+ */
20
+ export const getAuth0Config = () => {
21
+ if (Meteor.isClient) {
22
+ const settings = Meteor.settings.public?.auth0;
23
+
24
+ if (!settings?.domain || !settings?.clientId) {
25
+ throw new Error(
26
+ 'Auth0 configuration missing. Please add auth0 settings to your Meteor settings.json file.'
27
+ );
28
+ }
29
+
30
+ const normalizedDomain = normalizeDomain(settings.domain);
31
+
32
+ return {
33
+ domain: normalizedDomain,
34
+ clientId: settings.clientId,
35
+ audience: settings.audience || `https://${normalizedDomain}/api/v2/`,
36
+ redirectUri: settings.redirectUri || window.location.origin + '/auth/callback',
37
+ scope: settings.scope || 'openid profile email',
38
+ };
39
+ }
40
+
41
+ // Server-side configuration
42
+ const settings = Meteor.settings?.auth0;
43
+
44
+ if (!settings?.domain || !settings?.clientId) {
45
+ throw new Error(
46
+ 'Auth0 configuration missing. Please add auth0 settings to your Meteor settings.json file.'
47
+ );
48
+ }
49
+
50
+ const normalizedDomain = normalizeDomain(settings.domain);
51
+
52
+ return {
53
+ domain: normalizedDomain,
54
+ clientId: settings.clientId,
55
+ audience: settings.audience || `https://${normalizedDomain}/api/v2/`,
56
+ redirectUri: settings.redirectUri || Meteor.absoluteUrl('auth/callback'),
57
+ scope: settings.scope || 'openid profile email',
58
+ };
59
+ };
@@ -1,67 +1,67 @@
1
- /**
2
- * Auth0 Configuration
3
- *
4
- * This file contains the Auth0 configuration settings.
5
- * Set your Auth0 credentials in Meteor settings or environment variables.
6
- */
7
-
8
- export interface Auth0Config {
9
- domain: string;
10
- clientId: string;
11
- audience?: string;
12
- redirectUri: string;
13
- scope: string;
14
- }
15
-
16
- /**
17
- * Normalize Auth0 domain by removing protocol and trailing slashes
18
- */
19
- const normalizeDomain = (domain: string): string => {
20
- return domain
21
- .replace(/^https?:\/\//, '') // Remove http:// or https://
22
- .replace(/\/$/, ''); // Remove trailing slash
23
- };
24
-
25
- /**
26
- * Get Auth0 configuration from Meteor settings or environment variables
27
- */
28
- export const getAuth0Config = (): Auth0Config => {
29
- if (Meteor.isClient) {
30
- const settings = Meteor.settings.public?.auth0;
31
-
32
- if (!settings?.domain || !settings?.clientId) {
33
- throw new Error(
34
- 'Auth0 configuration missing. Please add auth0 settings to your Meteor settings.json file.'
35
- );
36
- }
37
-
38
- const normalizedDomain = normalizeDomain(settings.domain);
39
-
40
- return {
41
- domain: normalizedDomain,
42
- clientId: settings.clientId,
43
- audience: settings.audience || `https://${normalizedDomain}/api/v2/`,
44
- redirectUri: settings.redirectUri || window.location.origin + '/auth/callback',
45
- scope: settings.scope || 'openid profile email',
46
- };
47
- }
48
-
49
- // Server-side configuration
50
- const settings = Meteor.settings?.auth0;
51
-
52
- if (!settings?.domain || !settings?.clientId) {
53
- throw new Error(
54
- 'Auth0 configuration missing. Please add auth0 settings to your Meteor settings.json file.'
55
- );
56
- }
57
-
58
- const normalizedDomain = normalizeDomain(settings.domain);
59
-
60
- return {
61
- domain: normalizedDomain,
62
- clientId: settings.clientId,
63
- audience: settings.audience || `https://${normalizedDomain}/api/v2/`,
64
- redirectUri: settings.redirectUri || Meteor.absoluteUrl('auth/callback'),
65
- scope: settings.scope || 'openid profile email',
66
- };
67
- };
1
+ /**
2
+ * Auth0 Configuration
3
+ *
4
+ * This file contains the Auth0 configuration settings.
5
+ * Set your Auth0 credentials in Meteor settings or environment variables.
6
+ */
7
+
8
+ export interface Auth0Config {
9
+ domain: string;
10
+ clientId: string;
11
+ audience?: string;
12
+ redirectUri: string;
13
+ scope: string;
14
+ }
15
+
16
+ /**
17
+ * Normalize Auth0 domain by removing protocol and trailing slashes
18
+ */
19
+ const normalizeDomain = (domain: string): string => {
20
+ return domain
21
+ .replace(/^https?:\/\//, '') // Remove http:// or https://
22
+ .replace(/\/$/, ''); // Remove trailing slash
23
+ };
24
+
25
+ /**
26
+ * Get Auth0 configuration from Meteor settings or environment variables
27
+ */
28
+ export const getAuth0Config = (): Auth0Config => {
29
+ if (Meteor.isClient) {
30
+ const settings = Meteor.settings.public?.auth0;
31
+
32
+ if (!settings?.domain || !settings?.clientId) {
33
+ throw new Error(
34
+ 'Auth0 configuration missing. Please add auth0 settings to your Meteor settings.json file.'
35
+ );
36
+ }
37
+
38
+ const normalizedDomain = normalizeDomain(settings.domain);
39
+
40
+ return {
41
+ domain: normalizedDomain,
42
+ clientId: settings.clientId,
43
+ audience: settings.audience || `https://${normalizedDomain}/api/v2/`,
44
+ redirectUri: settings.redirectUri || window.location.origin + '/auth/callback',
45
+ scope: settings.scope || 'openid profile email',
46
+ };
47
+ }
48
+
49
+ // Server-side configuration
50
+ const settings = Meteor.settings?.auth0;
51
+
52
+ if (!settings?.domain || !settings?.clientId) {
53
+ throw new Error(
54
+ 'Auth0 configuration missing. Please add auth0 settings to your Meteor settings.json file.'
55
+ );
56
+ }
57
+
58
+ const normalizedDomain = normalizeDomain(settings.domain);
59
+
60
+ return {
61
+ domain: normalizedDomain,
62
+ clientId: settings.clientId,
63
+ audience: settings.audience || `https://${normalizedDomain}/api/v2/`,
64
+ redirectUri: settings.redirectUri || Meteor.absoluteUrl('auth/callback'),
65
+ scope: settings.scope || 'openid profile email',
66
+ };
67
+ };