@based/type-gen 0.0.3 → 0.0.5

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 (70) hide show
  1. package/dist/src/index.d.ts +16 -0
  2. package/dist/src/index.js +44 -0
  3. package/dist/src/index.js.map +1 -0
  4. package/dist/src/parseCode.d.ts +1 -0
  5. package/dist/{parseCode.js → src/parseCode.js} +1 -0
  6. package/dist/src/parseCode.js.map +1 -0
  7. package/dist/src/updateTypesPath.d.ts +14 -0
  8. package/dist/src/updateTypesPath.js +84 -0
  9. package/dist/src/updateTypesPath.js.map +1 -0
  10. package/package.json +18 -17
  11. package/dist/auth.d.ts +0 -16
  12. package/dist/auth.d.ts.map +0 -1
  13. package/dist/auth.js +0 -3
  14. package/dist/auth.js.map +0 -1
  15. package/dist/channel.d.ts +0 -6
  16. package/dist/channel.d.ts.map +0 -1
  17. package/dist/channel.js +0 -7
  18. package/dist/channel.js.map +0 -1
  19. package/dist/client.d.ts +0 -18
  20. package/dist/client.d.ts.map +0 -1
  21. package/dist/client.js +0 -7
  22. package/dist/client.js.map +0 -1
  23. package/dist/context.d.ts +0 -100
  24. package/dist/context.d.ts.map +0 -1
  25. package/dist/context.js +0 -39
  26. package/dist/context.js.map +0 -1
  27. package/dist/fromAst.d.ts +0 -4
  28. package/dist/fromAst.d.ts.map +0 -1
  29. package/dist/fromAst.js +0 -34
  30. package/dist/fromAst.js.map +0 -1
  31. package/dist/function.d.ts +0 -1
  32. package/dist/function.d.ts.map +0 -1
  33. package/dist/function.js +0 -1
  34. package/dist/function.js.map +0 -1
  35. package/dist/functions.d.ts +0 -181
  36. package/dist/functions.d.ts.map +0 -1
  37. package/dist/functions.js +0 -29
  38. package/dist/functions.js.map +0 -1
  39. package/dist/geo.d.ts +0 -36
  40. package/dist/geo.d.ts.map +0 -1
  41. package/dist/geo.js +0 -3
  42. package/dist/geo.js.map +0 -1
  43. package/dist/index.d.ts +0 -13
  44. package/dist/index.d.ts.map +0 -1
  45. package/dist/index.js +0 -87
  46. package/dist/index.js.map +0 -1
  47. package/dist/parseAst.d.ts +0 -4
  48. package/dist/parseAst.d.ts.map +0 -1
  49. package/dist/parseAst.js +0 -34
  50. package/dist/parseAst.js.map +0 -1
  51. package/dist/parseCode.d.ts +0 -7
  52. package/dist/parseCode.d.ts.map +0 -1
  53. package/dist/parseCode.js.map +0 -1
  54. package/dist/query.d.ts +0 -7
  55. package/dist/query.d.ts.map +0 -1
  56. package/dist/query.js +0 -7
  57. package/dist/query.js.map +0 -1
  58. package/dist/stream.d.ts +0 -40
  59. package/dist/stream.d.ts.map +0 -1
  60. package/dist/stream.js +0 -63
  61. package/dist/stream.js.map +0 -1
  62. package/dist/uws.d.ts +0 -469
  63. package/src/index.ts +0 -122
  64. package/src/parseCode.ts +0 -53
  65. package/test/examples/helloWorld/based.config.json +0 -4
  66. package/test/examples/helloWorld/index.ts +0 -30
  67. package/test/examples/query/based.config.json +0 -4
  68. package/test/examples/query/index.ts +0 -28
  69. package/test/types.ts +0 -48
  70. package/tsconfig.json +0 -10
@@ -0,0 +1,16 @@
1
+ import { BasedFunctionConfig } from "@based/functions";
2
+ export declare const updateTypes: (fns: ({
3
+ config: BasedFunctionConfig;
4
+ path: string;
5
+ } | {
6
+ config: BasedFunctionConfig;
7
+ payload: string;
8
+ result: string;
9
+ })[], opts?: {
10
+ imports?: string[];
11
+ clientPath?: string;
12
+ functionPath?: string;
13
+ }) => Promise<{
14
+ clientPath: string | void;
15
+ functionPath: string | void;
16
+ }>;
@@ -0,0 +1,44 @@
1
+ import { updateTypesPath } from "./updateTypesPath.js";
2
+ import { createRequire } from "node:module";
3
+ const require = createRequire(import.meta.url);
4
+ export const updateTypes = async (fns, opts = {}) => {
5
+ const inputClientPath = opts.clientPath ||
6
+ require.resolve("@based/client", { paths: [process.cwd()] });
7
+ const inputFunctionPath = opts.functionPath ||
8
+ require.resolve("@based/functions", { paths: [process.cwd()] });
9
+ let clientPath;
10
+ let functionPath;
11
+ if (inputClientPath) {
12
+ const declarationPath = inputClientPath.replace("/index.js", "/index.d.ts");
13
+ const originalDeclartionPath = inputClientPath.replace("/index.js", "/index_original.d.ts");
14
+ clientPath = await updateTypesPath(fns, {
15
+ imports: opts.imports,
16
+ originalDeclartionPath,
17
+ declarationPath,
18
+ }).catch((e) => {
19
+ console.error(e, {
20
+ imports: opts.imports,
21
+ originalDeclartionPath,
22
+ declarationPath,
23
+ });
24
+ console.error("Cannot find original declaration file - you may need to upgrade to @based/client ^4.8.8");
25
+ });
26
+ }
27
+ if (inputFunctionPath) {
28
+ const declarationPath = inputFunctionPath.replace("/index.js", "/client.d.ts");
29
+ const originalDeclartionPath = inputFunctionPath.replace("/index.js", "/client_original.d.ts");
30
+ functionPath = await updateTypesPath(fns, {
31
+ imports: opts.imports,
32
+ originalDeclartionPath,
33
+ declarationPath,
34
+ isAbstract: true,
35
+ }).catch(() => {
36
+ console.error("Cannot find original declaration file - you may need to upgrade to @based/functions ^2.2.4");
37
+ });
38
+ }
39
+ return {
40
+ functionPath,
41
+ clientPath,
42
+ };
43
+ };
44
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAE3C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAE9C,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,GAGG,EACH,OAII,EAAE,EAIL,EAAE;IACH,MAAM,eAAe,GACnB,IAAI,CAAC,UAAU;QACf,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;IAE9D,MAAM,iBAAiB,GACrB,IAAI,CAAC,YAAY;QACjB,OAAO,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;IAEjE,IAAI,UAAyB,CAAA;IAC7B,IAAI,YAA2B,CAAA;IAE/B,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,eAAe,GAAG,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,aAAa,CAAC,CAAA;QAC3E,MAAM,sBAAsB,GAAG,eAAe,CAAC,OAAO,CACpD,WAAW,EACX,sBAAsB,CACvB,CAAA;QAED,UAAU,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE;YACtC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,sBAAsB;YACtB,eAAe;SAChB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACb,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;gBACf,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,sBAAsB;gBACtB,eAAe;aAChB,CAAC,CAAA;YACF,OAAO,CAAC,KAAK,CACX,yFAAyF,CAC1F,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,iBAAiB,EAAE,CAAC;QACtB,MAAM,eAAe,GAAG,iBAAiB,CAAC,OAAO,CAC/C,WAAW,EACX,cAAc,CACf,CAAA;QACD,MAAM,sBAAsB,GAAG,iBAAiB,CAAC,OAAO,CACtD,WAAW,EACX,uBAAuB,CACxB,CAAA;QACD,YAAY,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE;YACxC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,sBAAsB;YACtB,eAAe;YACf,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACZ,OAAO,CAAC,KAAK,CACX,4FAA4F,CAC7F,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,OAAO;QACL,YAAY;QACZ,UAAU;KACX,CAAA;AACH,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export {};
@@ -36,6 +36,7 @@ const parseCode = (code) => {
36
36
  }
37
37
  return result;
38
38
  };
39
+ export {};
39
40
  /*
40
41
  import type helloWorld from '../../helloWorld'
41
42
 
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseCode.js","sourceRoot":"","sources":["../../src/parseCode.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;AAC5C,MAAM,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAA;AAEnD,MAAM,SAAS,GAAG,CAChB,IAAY,EAIZ,EAAE;IACF,MAAM,MAAM,GAAG;QACb,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;KACX,CAAA;IAED,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE;QAClC,UAAU,EAAE,QAAQ;QACpB,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;KAC/B,CAAC,CAAA;IACF,MAAM,CAAC,GAAG,EAAE,CAAA;IACZ,MAAM,WAAW,GAAG,EAAE,CAAA;IAEtB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IAEjC,IAAI,CAAC;QACH,QAAQ,CAAC,GAAG,EAAE;YACZ,UAAU,CAAC,CAAC;gBACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBAEf,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC9B,CAAC;YACD,sBAAsB,EAAE,UAAU,IAAI;gBACpC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;oBACtE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAA;oBAErC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACnB,CAAC;yBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;wBACvC,2CAA2C;wBAC3C,gBAAgB;oBAClB,CAAC;gBACH,CAAC;YACH,CAAC;SACF,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACpB,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;;AAED;;;;EAIE"}
@@ -0,0 +1,14 @@
1
+ import { BasedFunctionConfig } from "@based/functions";
2
+ export declare const updateTypesPath: (fns: ({
3
+ config: BasedFunctionConfig;
4
+ path: string;
5
+ } | {
6
+ config: BasedFunctionConfig;
7
+ payload: string;
8
+ result: string;
9
+ })[], opts: {
10
+ isAbstract?: boolean;
11
+ imports?: string[];
12
+ originalDeclartionPath: string;
13
+ declarationPath: string;
14
+ }) => Promise<string | void>;
@@ -0,0 +1,84 @@
1
+ import { readFile, writeFile } from "fs/promises";
2
+ export const updateTypesPath = async (fns, opts) => {
3
+ let decFile = "";
4
+ try {
5
+ decFile = (await readFile(opts.originalDeclartionPath)).toString("utf-8");
6
+ }
7
+ catch (err) {
8
+ throw new Error(`Cannot find ${opts.originalDeclartionPath}`);
9
+ }
10
+ let imports = opts.imports ? opts.imports.join("\n") + "\n" : "\n";
11
+ let callFns = "\n";
12
+ let queryFns = "\n";
13
+ let fnCnt = 0;
14
+ let queryCnt = 0;
15
+ let queryMap = "\n";
16
+ let needsParsing = opts.imports ?? false;
17
+ const abstractPrefix = opts.isAbstract ? "abstract " : "";
18
+ for (const fn of fns) {
19
+ if (fn.config.type === "function") {
20
+ needsParsing = true;
21
+ fnCnt++;
22
+ if ("path" in fn) {
23
+ const name = "FN_Type_" + fnCnt;
24
+ imports += `import type ${name} from '${fn.path}';\n`;
25
+ callFns += `
26
+ ${abstractPrefix}call(
27
+ name: '${fn.config.name}',
28
+ payload: Parameters<typeof ${name}>[1],
29
+ ${opts.isAbstract ? "ctx?: Context" : "opts?: CallOptions"}
30
+ ): ReturnType<typeof ${name}>;
31
+ `;
32
+ }
33
+ else {
34
+ callFns += `
35
+ ${abstractPrefix}call(
36
+ name: '${fn.config.name}',
37
+ payload: ${fn.payload},
38
+ ${opts.isAbstract ? "ctx?: Context" : "opts?: CallOptions"}
39
+ ): Promise<${fn.result}>
40
+ `;
41
+ }
42
+ }
43
+ else if (fn.config.type === "query") {
44
+ queryCnt++;
45
+ if ("path" in fn) {
46
+ const name = "Q_Type_" + queryCnt;
47
+ imports += `import type ${name} from '${fn.path}';\n`;
48
+ queryMap += `'${fn.config.name}': { payload: Parameters<typeof ${name}>[1], result: Parameters<Parameters<typeof ${name}>[2]>[0] },`;
49
+ queryFns += `
50
+ ${abstractPrefix}query(name: '${fn.config.name}', payload: Parameters<typeof ${name}>[1], opts?: QueryOptions): BasedQuery<Parameters<typeof ${name}>[1],Parameters<Parameters<typeof ${name}>[2]>[0]>;
51
+ `;
52
+ }
53
+ else {
54
+ queryMap += `'${fn.config.name}': { payload: ${fn.payload}, result: ${fn.result} },`;
55
+ queryFns += `
56
+ ${abstractPrefix}query(name: '${fn.config.name}', payload: ${fn.payload}, opts?: QueryOptions): BasedQuery<${fn.payload},${fn.result}>;
57
+ `;
58
+ }
59
+ }
60
+ }
61
+ if (needsParsing) {
62
+ let x = imports + decFile;
63
+ if (fnCnt > 0) {
64
+ if (opts.isAbstract) {
65
+ x = x.replace("abstract call(name: string, payload?: any, ctx?: Context): Promise<any>;", callFns);
66
+ }
67
+ else {
68
+ x = x.replace("call(name: string, payload?: any, opts?: CallOptions): Promise<any>;", callFns);
69
+ }
70
+ }
71
+ if (queryCnt > 0) {
72
+ if (opts.isAbstract) {
73
+ x = x.replace(`abstract query(name: string, payload?: any): BasedQuery;`, queryFns);
74
+ }
75
+ else {
76
+ x = x.replace(`query(name: string, payload?: any, opts?: QueryOptions): BasedQuery;`, queryFns);
77
+ }
78
+ x = x.replace(/export type QueryMap = ([^@]*?)\};?([^@]*?)\};?\s*\};?/gm, `export type QueryMap = {${queryMap}}`);
79
+ }
80
+ await writeFile(opts.declarationPath, x);
81
+ return opts.declarationPath;
82
+ }
83
+ };
84
+ //# sourceMappingURL=updateTypesPath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateTypesPath.js","sourceRoot":"","sources":["../../src/updateTypesPath.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,10 +1,11 @@
1
1
  {
2
2
  "name": "@based/type-gen",
3
- "version": "0.0.3",
3
+ "version": "0.0.5",
4
4
  "license": "MIT",
5
- "main": "dist/index.js",
5
+ "type": "module",
6
+ "main": "./dist/src/index.js",
6
7
  "scripts": {
7
- "test": "ava --color --node-arguments='--expose-gc' --timeout 3m --verbose",
8
+ "test": "npx ava",
8
9
  "build": "npx tsc",
9
10
  "watch": "npx tsc --watch",
10
11
  "clean": "rimraf {.turbo,dist,node_modules}"
@@ -15,27 +16,27 @@
15
16
  "@babel/parser": "^7.18.6",
16
17
  "@babel/traverse": "^7.18.6",
17
18
  "utility-types": "^3.10.0",
18
- "@saulx/utils": "^3.5.0",
19
- "@based/functions": "^2.2.3"
19
+ "@saulx/utils": "^4.1.0",
20
+ "@based/functions": "^3.0.0"
20
21
  },
21
22
  "devDependencies": {
22
23
  "@types/fs-extra": "11.0.3",
23
24
  "ts-node": "10.9.1",
24
- "typescript": "^4.3.5",
25
+ "typescript": "^5.2.2",
25
26
  "rimraf": "^3.0.2",
26
- "@based/client": "4.8.7",
27
- "ava": "3.15.0"
27
+ "@based/client": "^5.2.0",
28
+ "ava": "5.3.1"
28
29
  },
29
30
  "ava": {
31
+ "timeout": "2m",
32
+ "workerThreads": false,
30
33
  "files": [
31
- "test/*.ts"
32
- ],
33
- "concurrency": 1,
34
- "extensions": [
35
- "ts"
36
- ],
37
- "require": [
38
- "ts-node/register"
34
+ "./dist/test/*.js"
39
35
  ]
40
- }
36
+ },
37
+ "files": [
38
+ "dist/src",
39
+ "README.md",
40
+ "package.json"
41
+ ]
41
42
  }
package/dist/auth.d.ts DELETED
@@ -1,16 +0,0 @@
1
- import { BasedFunctionClient } from './client';
2
- import { HttpRequest } from './uws';
3
- import { Context, WebSocketSession, HttpSession } from './context';
4
- export type AuthState = {
5
- token?: string;
6
- userId?: string;
7
- refreshToken?: string;
8
- error?: string;
9
- persistent?: boolean;
10
- type?: string;
11
- };
12
- export type Authorize = (based: BasedFunctionClient, context: Context<HttpSession | WebSocketSession>, name: string, // name as generic dope
13
- payload?: any) => Promise<boolean>;
14
- export type VerifyAuthState = (based: BasedFunctionClient, context: Context<HttpSession | WebSocketSession>, authState: AuthState) => Promise<true | AuthState>;
15
- export type AuthorizeConnection = (based: BasedFunctionClient, req: HttpRequest, ip: string) => Promise<boolean>;
16
- //# sourceMappingURL=auth.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAElE,MAAM,MAAM,SAAS,GAAG;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,CACtB,KAAK,EAAE,mBAAmB,EAC1B,OAAO,EAAE,OAAO,CAAC,WAAW,GAAG,gBAAgB,CAAC,EAChD,IAAI,EAAE,MAAM,EAAE,uBAAuB;AACrC,OAAO,CAAC,EAAE,GAAG,KACV,OAAO,CAAC,OAAO,CAAC,CAAA;AAKrB,MAAM,MAAM,eAAe,GAAG,CAC5B,KAAK,EAAE,mBAAmB,EAC1B,OAAO,EAAE,OAAO,CAAC,WAAW,GAAG,gBAAgB,CAAC,EAChD,SAAS,EAAE,SAAS,KACjB,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC,CAAA;AAE9B,MAAM,MAAM,mBAAmB,GAAG,CAChC,KAAK,EAAE,mBAAmB,EAC1B,GAAG,EAAE,WAAW,EAChB,EAAE,EAAE,MAAM,KACP,OAAO,CAAC,OAAO,CAAC,CAAA"}
package/dist/auth.js DELETED
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=auth.js.map
package/dist/auth.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":""}
package/dist/channel.d.ts DELETED
@@ -1,6 +0,0 @@
1
- import { ChannelMessageFunction } from './functions';
2
- export declare abstract class BasedChannel<K = any> {
3
- abstract subscribe(onMessage: ChannelMessageFunction<K>, onError?: (err: any) => void): () => void;
4
- abstract publish(message: K): void;
5
- }
6
- //# sourceMappingURL=channel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAEpD,8BAAsB,YAAY,CAAC,CAAC,GAAG,GAAG;IACxC,QAAQ,CAAC,SAAS,CAChB,SAAS,EAAE,sBAAsB,CAAC,CAAC,CAAC,EACpC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,GAC3B,MAAM,IAAI;IAEb,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI;CACnC"}
package/dist/channel.js DELETED
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BasedChannel = void 0;
4
- class BasedChannel {
5
- }
6
- exports.BasedChannel = BasedChannel;
7
- //# sourceMappingURL=channel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channel.js","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":";;;AAEA,MAAsB,YAAY;CAOjC;AAPD,oCAOC"}
package/dist/client.d.ts DELETED
@@ -1,18 +0,0 @@
1
- import { AuthState } from './auth';
2
- import { BasedChannel } from './channel';
3
- import { Context } from './context';
4
- import { BasedQuery } from './query';
5
- import { StreamFunctionOpts } from './stream';
6
- import { Geo } from './geo';
7
- export declare abstract class BasedFunctionClient {
8
- server: any;
9
- db: any;
10
- abstract call(name: string, payload?: any, ctx?: Context): Promise<any>;
11
- abstract query(name: string, payload?: any): BasedQuery;
12
- abstract channel(name: string, payload?: any): BasedChannel;
13
- abstract stream(name: string, payload: StreamFunctionOpts, ctx?: Context): Promise<any>;
14
- abstract sendAuthState(ctx: Context, authState: AuthState): void;
15
- abstract geo(ctx: Context): Promise<Geo>;
16
- abstract renewAuthState(ctx: Context, authState?: AuthState): Promise<AuthState>;
17
- }
18
- //# sourceMappingURL=client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAE3B,8BAAsB,mBAAmB;IACvC,MAAM,EAAE,GAAG,CAAA;IAEX,EAAE,EAAE,GAAG,CAAA;IAEP,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAEvE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,UAAU;IAEvD,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,YAAY;IAE3D,QAAQ,CAAC,MAAM,CACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,kBAAkB,EAC3B,GAAG,CAAC,EAAE,OAAO,GACZ,OAAO,CAAC,GAAG,CAAC;IAEf,QAAQ,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI;IAEhE,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAExC,QAAQ,CAAC,cAAc,CACrB,GAAG,EAAE,OAAO,EACZ,SAAS,CAAC,EAAE,SAAS,GACpB,OAAO,CAAC,SAAS,CAAC;CACtB"}
package/dist/client.js DELETED
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BasedFunctionClient = void 0;
4
- class BasedFunctionClient {
5
- }
6
- exports.BasedFunctionClient = BasedFunctionClient;
7
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":";;;AAOA,MAAsB,mBAAmB;CAyBxC;AAzBD,kDAyBC"}
package/dist/context.d.ts DELETED
@@ -1,100 +0,0 @@
1
- import { AuthState } from './auth';
2
- import { WebSocket, HttpRequest, HttpResponse } from './uws';
3
- import { parseQuery } from '@saulx/utils';
4
- import { BasedFunctionClient } from './client';
5
- export type WebSocketSession = {
6
- state?: any;
7
- query: string;
8
- ua: string;
9
- ip: string;
10
- id: number;
11
- method: string;
12
- authState: AuthState;
13
- origin: string;
14
- obs: Set<number>;
15
- unauthorizedObs?: Set<{
16
- id: number;
17
- checksum: number;
18
- name: string;
19
- payload: any;
20
- }>;
21
- headers: {
22
- [key: string]: string;
23
- };
24
- unauthorizedChannels?: Set<{
25
- id: number;
26
- name: string;
27
- payload: any;
28
- }>;
29
- c?: Context<WebSocketSession>;
30
- ws?: BasedWebSocket;
31
- };
32
- export type BasedWebSocket = WebSocket<WebSocketSession>;
33
- export type HttpSession = {
34
- state?: any;
35
- res: HttpResponse;
36
- url: string;
37
- origin: string;
38
- req: HttpRequest;
39
- query?: string;
40
- parsedQuery?: ReturnType<typeof parseQuery>;
41
- ua: string;
42
- ip: string;
43
- id: number;
44
- authState: AuthState;
45
- method: string;
46
- rawBody?: string;
47
- headers: {
48
- 'content-length'?: number;
49
- 'content-type'?: string;
50
- 'content-encoding'?: string;
51
- encoding?: string;
52
- } & {
53
- [key: string]: string;
54
- };
55
- };
56
- export type InternalSessionObservable = {
57
- id: number;
58
- name: string;
59
- headers: {
60
- [key: string]: string;
61
- };
62
- type: 'query';
63
- };
64
- export type InternalSessionChannel = {
65
- id: number;
66
- name: string;
67
- headers: {
68
- [key: string]: string;
69
- };
70
- type: 'channel';
71
- };
72
- export type InternalSessionClient = {
73
- client: BasedFunctionClient;
74
- headers: {
75
- [key: string]: string;
76
- };
77
- type: 'client';
78
- };
79
- export type InternalSession = InternalSessionClient | InternalSessionObservable | InternalSessionChannel;
80
- export type MinimalExternalSession = {
81
- ua: string;
82
- ip: string;
83
- headers: {
84
- [key: string]: string;
85
- };
86
- };
87
- export type Session = (WebSocketSession | HttpSession | InternalSession | MinimalExternalSession) & {
88
- origin?: string;
89
- /** Only available in Ws and Http contexts */
90
- authState?: AuthState;
91
- };
92
- export type Context<S extends Session = Session> = {
93
- session?: S;
94
- };
95
- export declare const isHttpContext: (ctx: Context<Session>) => ctx is Context<HttpSession>;
96
- export declare const isWsContext: (ctx: Context<Session>) => ctx is Context<WebSocketSession>;
97
- export declare const isClientContext: (ctx: Context<Session>) => ctx is Context<WebSocketSession | HttpSession>;
98
- export declare const isHttpSession: (session: Session | undefined) => session is HttpSession;
99
- export declare const isWsSession: (session: Session | undefined) => session is WebSocketSession;
100
- //# sourceMappingURL=context.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
package/dist/context.js DELETED
@@ -1,39 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isWsSession = exports.isHttpSession = exports.isClientContext = exports.isWsContext = exports.isHttpContext = void 0;
4
- const isHttpContext = (ctx) => {
5
- if ('res' in ctx?.session) {
6
- return true;
7
- }
8
- return false;
9
- };
10
- exports.isHttpContext = isHttpContext;
11
- const isWsContext = (ctx) => {
12
- if (ctx.session && (0, exports.isWsSession)(ctx.session)) {
13
- return true;
14
- }
15
- return false;
16
- };
17
- exports.isWsContext = isWsContext;
18
- const isClientContext = (ctx) => {
19
- if (ctx.session && ((0, exports.isWsSession)(ctx.session) || (0, exports.isHttpSession)(ctx.session))) {
20
- return true;
21
- }
22
- return false;
23
- };
24
- exports.isClientContext = isClientContext;
25
- const isHttpSession = (session) => {
26
- if (session && 'res' in session) {
27
- return true;
28
- }
29
- return false;
30
- };
31
- exports.isHttpSession = isHttpSession;
32
- const isWsSession = (session) => {
33
- if (session && 'send' in session) {
34
- return true;
35
- }
36
- return false;
37
- };
38
- exports.isWsSession = isWsSession;
39
- //# sourceMappingURL=context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":";;;AA2GO,MAAM,aAAa,GAAG,CAC3B,GAAqB,EACQ,EAAE;IAC/B,IAAI,KAAK,IAAI,GAAG,EAAE,OAAO,EAAE;QACzB,OAAO,IAAI,CAAA;KACZ;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAPY,QAAA,aAAa,iBAOzB;AAEM,MAAM,WAAW,GAAG,CACzB,GAAqB,EACa,EAAE;IACpC,IAAI,GAAG,CAAC,OAAO,IAAI,IAAA,mBAAW,EAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QAC3C,OAAO,IAAI,CAAA;KACZ;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAPY,QAAA,WAAW,eAOvB;AAEM,MAAM,eAAe,GAAG,CAC7B,GAAqB,EAC2B,EAAE;IAClD,IAAI,GAAG,CAAC,OAAO,IAAI,CAAC,IAAA,mBAAW,EAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAA,qBAAa,EAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE;QAC3E,OAAO,IAAI,CAAA;KACZ;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAPY,QAAA,eAAe,mBAO3B;AAEM,MAAM,aAAa,GAAG,CAC3B,OAA4B,EACJ,EAAE;IAC1B,IAAI,OAAO,IAAI,KAAK,IAAI,OAAO,EAAE;QAC/B,OAAO,IAAI,CAAA;KACZ;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAPY,QAAA,aAAa,iBAOzB;AAEM,MAAM,WAAW,GAAG,CACzB,OAA4B,EACC,EAAE;IAC/B,IAAI,OAAO,IAAI,MAAM,IAAI,OAAO,EAAE;QAChC,OAAO,IAAI,CAAA;KACZ;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAPY,QAAA,WAAW,eAOvB"}
package/dist/fromAst.d.ts DELETED
@@ -1,4 +0,0 @@
1
- declare const babelParser: any;
2
- declare const traverse: any;
3
- declare const genTypesFromAst: (code: string) => Promise<any[]>;
4
- //# sourceMappingURL=fromAst.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fromAst.d.ts","sourceRoot":"","sources":["../src/fromAst.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,WAAW,KAA2B,CAAA;AAC5C,QAAA,MAAM,QAAQ,KAAqC,CAAA;AAEnD,QAAA,MAAM,eAAe,SAAgB,MAAM,mBA+B1C,CAAA"}
package/dist/fromAst.js DELETED
@@ -1,34 +0,0 @@
1
- const babelParser = require('@babel/parser');
2
- const traverse = require('@babel/traverse').default;
3
- const genTypesFromAst = async (code) => {
4
- const ast = babelParser.parse(code, {
5
- sourceType: 'module',
6
- plugins: ['jsx', 'typescript'],
7
- });
8
- const p = [];
9
- const identifiers = {};
10
- // console.dir(ast, { depth: 1000 })
11
- try {
12
- traverse(ast, {
13
- Identifier(p) {
14
- identifiers[p.node.name] = p;
15
- },
16
- TSTypeAliasDeclaration: function (path) {
17
- if (path.node.id?.name?.includes('Props') && path.node.typeAnnotation) {
18
- const type = path.node.typeAnnotation;
19
- if (type.members) {
20
- }
21
- else if (type.type === 'TSUnionType') {
22
- // console.info('?', path.node, type.types)
23
- // p.push(props)
24
- }
25
- }
26
- },
27
- });
28
- }
29
- catch (err) {
30
- console.error(err);
31
- }
32
- return p;
33
- };
34
- //# sourceMappingURL=fromAst.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fromAst.js","sourceRoot":"","sources":["../src/fromAst.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;AAC5C,MAAM,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAA;AAEnD,MAAM,eAAe,GAAG,KAAK,EAAE,IAAY,EAAE,EAAE;IAC7C,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE;QAClC,UAAU,EAAE,QAAQ;QACpB,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;KAC/B,CAAC,CAAA;IACF,MAAM,CAAC,GAAG,EAAE,CAAA;IACZ,MAAM,WAAW,GAAG,EAAE,CAAA;IAEtB,oCAAoC;IAEpC,IAAI;QACF,QAAQ,CAAC,GAAG,EAAE;YACZ,UAAU,CAAC,CAAC;gBACV,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC9B,CAAC;YACD,sBAAsB,EAAE,UAAU,IAAI;gBACpC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;oBACrE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAA;oBAErC,IAAI,IAAI,CAAC,OAAO,EAAE;qBACjB;yBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE;wBACtC,2CAA2C;wBAC3C,gBAAgB;qBACjB;iBACF;YACH,CAAC;SACF,CAAC,CAAA;KACH;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;KACnB;IACD,OAAO,CAAC,CAAA;AACV,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=function.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"function.d.ts","sourceRoot":"","sources":["../src/function.ts"],"names":[],"mappings":""}
package/dist/function.js DELETED
@@ -1 +0,0 @@
1
- //# sourceMappingURL=function.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"function.js","sourceRoot":"","sources":["../src/function.ts"],"names":[],"mappings":""}