@hotfusion/modeller 0.0.7 → 0.0.8

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 (44) hide show
  1. package/README.md +802 -38
  2. package/dist/View.js +3 -0
  3. package/dist/View.js.map +1 -0
  4. package/dist/connector.js +1 -0
  5. package/dist/connector.js.map +1 -1
  6. package/dist/extensions/oidc/client.js +221 -0
  7. package/dist/extensions/oidc/client.js.map +1 -0
  8. package/dist/extensions/oidc/index.js +192 -0
  9. package/dist/extensions/oidc/index.js.map +1 -0
  10. package/dist/logger.js +129 -0
  11. package/dist/logger.js.map +1 -0
  12. package/dist/model.js +53 -24
  13. package/dist/model.js.map +1 -1
  14. package/dist/server.js +333 -183
  15. package/dist/server.js.map +1 -1
  16. package/dist/types/View.d.ts +2 -0
  17. package/dist/types/View.d.ts.map +1 -0
  18. package/dist/types/connector.d.ts +1 -1
  19. package/dist/types/connector.d.ts.map +1 -1
  20. package/dist/types/extensions/oidc/client.d.ts +32 -0
  21. package/dist/types/extensions/oidc/client.d.ts.map +1 -0
  22. package/dist/types/extensions/oidc/index.d.ts +20 -0
  23. package/dist/types/extensions/oidc/index.d.ts.map +1 -0
  24. package/dist/types/extensions/oidc/oidc.d.ts +20 -0
  25. package/dist/types/extensions/oidc/oidc.d.ts.map +1 -0
  26. package/dist/types/extensions/oidc.d.ts +20 -0
  27. package/dist/types/extensions/oidc.d.ts.map +1 -0
  28. package/dist/types/index.d.ts +2 -0
  29. package/dist/types/index.d.ts.map +1 -1
  30. package/dist/types/logger.d.ts +24 -0
  31. package/dist/types/logger.d.ts.map +1 -0
  32. package/dist/types/model.d.ts +13 -0
  33. package/dist/types/model.d.ts.map +1 -1
  34. package/dist/types/server.d.ts +23 -4
  35. package/dist/types/server.d.ts.map +1 -1
  36. package/dist/types/utils/bundler.d.ts +2 -0
  37. package/dist/types/utils/bundler.d.ts.map +1 -1
  38. package/dist/types/view.d.ts +13 -0
  39. package/dist/types/view.d.ts.map +1 -0
  40. package/dist/utils/bundler.js +138 -39
  41. package/dist/utils/bundler.js.map +1 -1
  42. package/dist/view.js +34 -0
  43. package/dist/view.js.map +1 -0
  44. package/package.json +16 -7
package/dist/View.js ADDED
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=View.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"View.js","sourceRoot":"","sources":["../src/View.ts"],"names":[],"mappings":""}
package/dist/connector.js CHANGED
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Connector = void 0;
4
+ //@ts-ignore
4
5
  const socket_io_client_1 = require("socket.io-client");
5
6
  const eventemitter3_1 = require("eventemitter3");
6
7
  const core_1 = require("./core");
@@ -1 +1 @@
1
- {"version":3,"file":"connector.js","sourceRoot":"","sources":["../src/connector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connector.js","sourceRoot":"","sources":["../src/connector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,221 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.OIDCClient = void 0;
37
+ const Client = __importStar(require("openid-client"));
38
+ const jose_1 = require("jose");
39
+ class OIDCClient {
40
+ client;
41
+ constructor(client) {
42
+ this.client = client;
43
+ }
44
+ static decodeIdToken(idToken) {
45
+ return (0, jose_1.decodeJwt)(idToken);
46
+ }
47
+ async validateIdToken(idToken) {
48
+ const configuration = await Client.discovery(new URL(this.client.endpoints.authentication), this.client.clientId, this.client.clientSecret);
49
+ if (configuration.serverMetadata()) {
50
+ const jwks = (0, jose_1.createRemoteJWKSet)(new URL(configuration.serverMetadata().jwks_uri));
51
+ try {
52
+ const { payload } = await (0, jose_1.jwtVerify)(idToken, jwks, {
53
+ issuer: configuration.serverMetadata().issuer,
54
+ audience: configuration.clientMetadata().client_id,
55
+ clockTolerance: 60
56
+ });
57
+ // payload is the validated claims (sub, email, etc.)
58
+ return payload;
59
+ }
60
+ catch (err) {
61
+ console.error('ID token validation failed:', err);
62
+ throw new Error('Invalid ID token');
63
+ }
64
+ }
65
+ }
66
+ async retrieveUser(accessToken) {
67
+ if (this.client.endpoints.profile)
68
+ return await fetch(this.client.endpoints.profile, {
69
+ headers: { Authorization: `Bearer ${accessToken}` }
70
+ }).then(r => r.json());
71
+ }
72
+ async retrieveAccessToken(code) {
73
+ if (!this.client?.endpoints?.token)
74
+ throw new Error('tokenUri must be provided inside the client object');
75
+ return (await (await fetch(this.client.endpoints.token, {
76
+ method: 'POST',
77
+ headers: {
78
+ 'Accept': 'application/json',
79
+ 'Content-Type': 'application/json'
80
+ },
81
+ body: JSON.stringify({
82
+ grant_type: 'authorization_code',
83
+ code,
84
+ client_id: this.client.clientId,
85
+ client_secret: this.client.clientSecret,
86
+ redirect_uri: this.client.redirectUri
87
+ })
88
+ })).json());
89
+ }
90
+ async isDiscoverable() {
91
+ try {
92
+ (await Client.discovery(new URL(this.client.endpoints.authentication), this.client.clientId, this.client.clientSecret)).serverMetadata();
93
+ return true;
94
+ }
95
+ catch (err) {
96
+ return false;
97
+ }
98
+ }
99
+ async getProfile(code, code_verifier) {
100
+ // try to discover the server
101
+ let claims, idToken, accessToken, refreshToken, protocol = 'oidc';
102
+ if (await this.isDiscoverable()) {
103
+ let configuration = await Client.discovery(new URL(this.client.endpoints.authentication), this.client.clientId, this.client.clientSecret);
104
+ let callbackUrl = new URL(this.client.redirectUri);
105
+ callbackUrl.searchParams.append('code', code);
106
+ let checks = {};
107
+ if (code_verifier)
108
+ checks.pkceCodeVerifier = code_verifier;
109
+ let tokenSet;
110
+ try {
111
+ tokenSet = await Client.authorizationCodeGrant(configuration, callbackUrl, checks);
112
+ refreshToken = tokenSet.refresh_token;
113
+ }
114
+ catch (err) {
115
+ console.error('Token exchange failed:', err);
116
+ console.error('Provider error response:', err.response?.body);
117
+ throw err;
118
+ }
119
+ claims = tokenSet.claims(); // ID token claims (profile/email)
120
+ idToken = tokenSet.id_token; // for authentication / profile
121
+ accessToken = tokenSet.access_token; // for Cosmos DB or other API
122
+ }
123
+ else {
124
+ if (!this.client.endpoints?.token)
125
+ throw new Error('No token endpoint found in the client');
126
+ protocol = 'oauth2';
127
+ let T = await this.retrieveAccessToken(code);
128
+ accessToken = T.access_token;
129
+ claims = await this.retrieveUser(T.access_token);
130
+ }
131
+ return {
132
+ protocol,
133
+ claims,
134
+ idToken,
135
+ accessToken,
136
+ refreshToken
137
+ };
138
+ }
139
+ async getToken(code, code_verifier, callbackUrlFull) {
140
+ const configuration = await Client.discovery(new URL(this.client.endpoints.authentication), this.client.clientId, this.client.clientSecret);
141
+ // Use the full callback URL if provided (with all Google's query parameters like iss)
142
+ // Otherwise construct from code only (fallback)
143
+ let callbackUrl;
144
+ if (callbackUrlFull) {
145
+ callbackUrl = new URL(callbackUrlFull);
146
+ console.log('[OIDCClient] Using provided callback URL:', callbackUrl.toString());
147
+ }
148
+ else {
149
+ callbackUrl = new URL(this.client.redirectUri);
150
+ callbackUrl.searchParams.append('code', code);
151
+ console.log('[OIDCClient] Constructed callback URL from code:', callbackUrl.toString());
152
+ }
153
+ const tokenSet = await Client.authorizationCodeGrant(configuration, callbackUrl, { pkceCodeVerifier: code_verifier });
154
+ if (!tokenSet.refresh_token) {
155
+ throw new Error('Google did not return a refresh token. Make sure the user visited the consent URL.');
156
+ }
157
+ return {
158
+ refreshToken: tokenSet.refresh_token,
159
+ accessToken: tokenSet.access_token,
160
+ //idToken: tokenSet.id_token,
161
+ claims: tokenSet.claims()
162
+ };
163
+ }
164
+ async readWHATWGStream(body) {
165
+ const reader = body.getReader();
166
+ const chunks = [];
167
+ while (true) {
168
+ const { done, value } = await reader.read();
169
+ if (done)
170
+ break;
171
+ if (value)
172
+ chunks.push(value);
173
+ }
174
+ // Convert Uint8Array chunks to string
175
+ const combined = Buffer.concat(chunks.map(c => Buffer.from(c)));
176
+ return combined.toString('utf-8');
177
+ }
178
+ async buildURL(scope) {
179
+ if (!scope.includes('openid')) {
180
+ const state = Client.randomState();
181
+ const url = new URL(this.client.endpoints.authentication);
182
+ url.searchParams.set('client_id', this.client.clientId);
183
+ url.searchParams.set('redirect_uri', this.client.redirectUri);
184
+ url.searchParams.set('scope', scope);
185
+ url.searchParams.set('state', state);
186
+ return {
187
+ url,
188
+ code_verifier: '', // not used
189
+ code_challenge: '', // not used
190
+ state
191
+ };
192
+ }
193
+ else
194
+ try {
195
+ let configuration = await Client.discovery(new URL(this.client.endpoints.authentication), this.client.clientId, this.client.clientSecret);
196
+ let code_verifier = Client.randomPKCECodeVerifier();
197
+ let code_challenge = await Client.calculatePKCECodeChallenge(code_verifier);
198
+ let state;
199
+ let parameters = {
200
+ redirect_uri: this.client.redirectUri,
201
+ scope: scope,
202
+ code_challenge,
203
+ code_challenge_method: 'S256', access_type: "offline", prompt: "consent"
204
+ };
205
+ if (!configuration.serverMetadata().supportsPKCE()) {
206
+ state = Client.randomState();
207
+ parameters.state = state;
208
+ }
209
+ let url = Client.buildAuthorizationUrl(configuration, parameters);
210
+ return {
211
+ url, code_verifier, code_challenge, state
212
+ };
213
+ }
214
+ catch (err) {
215
+ const body = await this.readWHATWGStream(err.cause.body);
216
+ throw new Error(body || err.code || err.message);
217
+ }
218
+ }
219
+ }
220
+ exports.OIDCClient = OIDCClient;
221
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/extensions/oidc/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,192 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OIDCExtension = void 0;
4
+ const jose_1 = require("jose");
5
+ const client_1 = require("./client");
6
+ class OIDCExtensionImpl {
7
+ id = 'oidc';
8
+ providers = [];
9
+ authPath = 'auth';
10
+ async setup(server, config) {
11
+ console.log('[OIDCExtension] setup called with config:', config);
12
+ this.providers = config.providers || [];
13
+ this.authPath = config.authPath || 'auth';
14
+ console.log('[OIDCExtension] Providers:', this.providers.map(p => p.id));
15
+ console.log('[OIDCExtension] Auth path:', this.authPath);
16
+ // Register auth routes
17
+ await this._setupAuthRoutes(server);
18
+ console.log('[OIDCExtension] Auth routes setup complete');
19
+ }
20
+ async _setupAuthRoutes(server) {
21
+ try {
22
+ console.log('[OIDCExtension] _setupAuthRoutes called');
23
+ let path = this.authPath;
24
+ if (server.config?.domain)
25
+ path = `${server.config.domain}/${path}`;
26
+ path = path.split('/').filter((x) => x).join('/');
27
+ const trimmedPath = '/' + path.split('/').filter((x) => x).join('/');
28
+ console.log('[OIDCExtension] Registering routes with path:', trimmedPath);
29
+ // ?? Callback route ??????????????????????????????????????????????????????
30
+ console.log('[OIDCExtension] About to register callback route at:', trimmedPath + '/callback');
31
+ server.router.get(trimmedPath + '/callback', async (ctx) => {
32
+ console.log('[OIDCExtension] Callback handler called');
33
+ try {
34
+ let origin = ctx.session?.oidc?.query?.origin || '';
35
+ const session = ctx.session?.oidc;
36
+ console.log('[OIDCExtension] Session data in callback:', {
37
+ hasSession: !!session,
38
+ hasProvider: !!session?.provider,
39
+ hasCodeVerifier: !!session?.code_verifier,
40
+ codeVerifierLength: session?.code_verifier?.length,
41
+ providerId: session?.provider?.id,
42
+ });
43
+ if (session?.code_verifier) {
44
+ console.log('[OIDCExtension] Code verifier found:', session.code_verifier.substring(0, 20) + '...');
45
+ }
46
+ if (!session) {
47
+ ctx.status = 400;
48
+ ctx.body = { error: 'No session found' };
49
+ return;
50
+ }
51
+ const code = ctx.query.code;
52
+ if (!code) {
53
+ ctx.status = 400;
54
+ ctx.body = { error: 'No authorization code provided' };
55
+ return;
56
+ }
57
+ console.log('[OIDCExtension] Token exchange params:', {
58
+ code: code.substring(0, 20) + '...',
59
+ codeVerifier: session.code_verifier.substring(0, 20) + '...',
60
+ provider: session.provider.id,
61
+ });
62
+ // Build IClient config from session provider
63
+ const clientConfig = {
64
+ clientId: session.provider.clientId,
65
+ clientSecret: session.provider.clientSecret,
66
+ redirectUri: `http://localhost:${server['port'] || 3030}/auth/callback`,
67
+ endpoints: {
68
+ authentication: session.provider.endpoints?.authentication || 'https://accounts.google.com',
69
+ token: session.provider.endpoints?.token || 'https://oauth2.googleapis.com/token',
70
+ profile: session.provider.endpoints?.profile || 'https://www.googleapis.com/oauth2/v1/userinfo',
71
+ }
72
+ };
73
+ console.log('[OIDCExtension] Creating OIDCClient with config:', {
74
+ clientId: clientConfig.clientId,
75
+ redirectUri: clientConfig.redirectUri,
76
+ });
77
+ const oidcClient = new client_1.OIDCClient(clientConfig);
78
+ console.log('[OIDCExtension] Calling getToken with full URL...');
79
+ // Construct full callback URL - ctx.originalUrl already includes the path and query
80
+ const fullCallbackUrl = `http://localhost:${server['port'] || 3030}${ctx.originalUrl}`;
81
+ console.log('[OIDCExtension] Full callback URL:', fullCallbackUrl);
82
+ const TokenCollection = await oidcClient.getToken(code, session.code_verifier, fullCallbackUrl);
83
+ console.log('[OIDCExtension] Token received:', {
84
+ hasAccessToken: !!TokenCollection.accessToken,
85
+ hasRefreshToken: !!TokenCollection.refreshToken,
86
+ claimsEmail: TokenCollection.claims?.email,
87
+ });
88
+ server.emit('provider', { token: TokenCollection, sid: session.__SID, session });
89
+ ctx.type = 'html';
90
+ ctx.body = `<script>window?.close?.()</script>`;
91
+ }
92
+ catch (err) {
93
+ console.error('[OIDCExtension] Error in callback handler:', err.message);
94
+ console.error('[OIDCExtension] Full error:', err);
95
+ ctx.status = 500;
96
+ ctx.body = { error: err.message, details: err.toString() };
97
+ }
98
+ });
99
+ // ?? Login route ????????????????????????????????????????????????????????
100
+ server.router.get(trimmedPath + '/:provider', async (ctx) => {
101
+ if (ctx.params.provider === 'callback')
102
+ return;
103
+ let provider = this.providers.find(x => x.id === ctx.params.provider);
104
+ if (provider) {
105
+ try {
106
+ console.log('[OIDCExtension] Login handler called for provider:', provider.id);
107
+ // Build IClient config from IOIDCProvider
108
+ const clientConfig = {
109
+ clientId: provider.clientId,
110
+ clientSecret: provider.clientSecret,
111
+ redirectUri: `http://localhost:${server['port'] || 3030}/auth/callback`,
112
+ endpoints: {
113
+ authentication: provider.endpoints?.authentication || 'https://accounts.google.com',
114
+ token: provider.endpoints?.token || 'https://oauth2.googleapis.com/token',
115
+ profile: provider.endpoints?.profile || 'https://www.googleapis.com/oauth2/v1/userinfo',
116
+ }
117
+ };
118
+ console.log('[OIDCExtension] Client config:', clientConfig);
119
+ let { url, code_verifier, state } = await new client_1.OIDCClient(clientConfig).buildURL(provider.scopes.join(' '));
120
+ console.log('[OIDCExtension] Got OAuth URL:', url.toString());
121
+ let { middleware } = ctx.request.query || {};
122
+ if (!ctx.session)
123
+ ctx.session = {};
124
+ ctx.session.oidc = {
125
+ __SID: ctx.query.__SID,
126
+ provider,
127
+ code_verifier,
128
+ state,
129
+ middleware: middleware || false,
130
+ query: (ctx.request.querystring || '').replace(/^\?/, '')
131
+ .split('&')
132
+ .filter(Boolean)
133
+ .reduce((acc, pair) => {
134
+ const [key, value = ''] = pair.split('=');
135
+ acc[decodeURIComponent(key)] = decodeURIComponent(value);
136
+ return acc;
137
+ }, {})
138
+ };
139
+ await ctx.session.save?.();
140
+ console.log('[OIDCExtension] Session saved with OIDC data:', {
141
+ hasSID: !!ctx.session.oidc?.__SID,
142
+ hasProvider: !!ctx.session.oidc?.provider?.id,
143
+ hasCodeVerifier: !!ctx.session.oidc?.code_verifier,
144
+ hasState: !!ctx.session.oidc?.state,
145
+ codeVerifierLength: ctx.session.oidc?.code_verifier?.length,
146
+ });
147
+ console.log('[OIDCExtension] Full session OIDC:', JSON.stringify(ctx.session.oidc, null, 2));
148
+ console.log('[OIDCExtension] Redirecting to OAuth URL');
149
+ ctx.redirect(url.toString());
150
+ return;
151
+ }
152
+ catch (e) {
153
+ console.error('[OIDCExtension] Error in login handler:', e.message, e.stack);
154
+ ctx.status = 500;
155
+ ctx.body = { error: e.message, stack: e.stack };
156
+ }
157
+ }
158
+ });
159
+ // ?? Logout route ???????????????????????????????????????????????????????
160
+ server.router.post(trimmedPath + '/:provider/logout', async (ctx) => {
161
+ if (ctx.params.provider === 'callback' || !ctx.path.includes('/logout'))
162
+ return;
163
+ let provider = this.providers.find(x => x.id === ctx.params.provider);
164
+ if (provider) {
165
+ let SESSION = ctx.headers.authorization || '';
166
+ if (!SESSION)
167
+ ctx.throw(401, 'Unauthorized');
168
+ if (SESSION) {
169
+ SESSION = SESSION.split(' ').pop() || '';
170
+ let token;
171
+ try {
172
+ token = (await (0, jose_1.jwtVerify)(SESSION, new TextEncoder().encode(Array.isArray(server.app?.keys) ? server.app.keys[0] : undefined))).payload;
173
+ }
174
+ catch (e) {
175
+ token = (0, jose_1.decodeJwt)(SESSION);
176
+ }
177
+ let body = {};
178
+ await new Promise(resolve => setTimeout(resolve, 1000));
179
+ ctx.body = body;
180
+ }
181
+ }
182
+ });
183
+ console.log('[OIDCExtension] All routes registered successfully');
184
+ }
185
+ catch (err) {
186
+ console.error('[OIDCExtension] ERROR in _setupAuthRoutes:', err.message, err.stack);
187
+ throw err;
188
+ }
189
+ }
190
+ }
191
+ exports.OIDCExtension = new OIDCExtensionImpl();
192
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/extensions/oidc/index.ts"],"names":[],"mappings":"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"}