@faicad/faijs 0.17.0 → 0.18.0

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 (72) hide show
  1. package/dist/api/api-namespace.js +2 -2
  2. package/dist/api/api-namespace.js.map +1 -1
  3. package/dist/api/boolean.d.ts.map +1 -1
  4. package/dist/api/boolean.js +64 -26
  5. package/dist/api/boolean.js.map +1 -1
  6. package/dist/api/brep-mirror/booleanFns.d.ts.map +1 -1
  7. package/dist/api/brep-mirror/booleanFns.js +11 -6
  8. package/dist/api/brep-mirror/booleanFns.js.map +1 -1
  9. package/dist/api/brep-mirror/topologyFns.d.ts.map +1 -1
  10. package/dist/api/brep-mirror/topologyFns.js +4 -1
  11. package/dist/api/brep-mirror/topologyFns.js.map +1 -1
  12. package/dist/api/chamfer.d.ts +12 -8
  13. package/dist/api/chamfer.d.ts.map +1 -1
  14. package/dist/api/chamfer.js +52 -23
  15. package/dist/api/chamfer.js.map +1 -1
  16. package/dist/api/extrude.d.ts.map +1 -1
  17. package/dist/api/extrude.js +17 -2
  18. package/dist/api/extrude.js.map +1 -1
  19. package/dist/api/generated/operations.js +5 -5
  20. package/dist/api/generated/operations.js.map +1 -1
  21. package/dist/api/generated/script-face-manifest.js +12 -12
  22. package/dist/api/generated/script-face-manifest.js.map +1 -1
  23. package/dist/api/generated/sketching.js +1 -1
  24. package/dist/api/generated/sketching.js.map +1 -1
  25. package/dist/api/generated/topology.js +7 -7
  26. package/dist/api/generated/topology.js.map +1 -1
  27. package/dist/api/index.d.ts +2 -1
  28. package/dist/api/index.d.ts.map +1 -1
  29. package/dist/api/index.js +1 -1
  30. package/dist/api/index.js.map +1 -1
  31. package/dist/api/internal/profile-wire.d.ts +3 -3
  32. package/dist/api/internal/profile-wire.js +3 -3
  33. package/dist/api/internal/profile-wire.js.map +1 -1
  34. package/dist/api/loft.d.ts +3 -3
  35. package/dist/api/loft.js +3 -3
  36. package/dist/api/loft.js.map +1 -1
  37. package/dist/api/profile.d.ts +89 -0
  38. package/dist/api/profile.d.ts.map +1 -0
  39. package/dist/api/profile.js +194 -0
  40. package/dist/api/profile.js.map +1 -0
  41. package/dist/api/replicate.d.ts.map +1 -1
  42. package/dist/api/replicate.js +15 -14
  43. package/dist/api/replicate.js.map +1 -1
  44. package/dist/api/surface/arg-spec.d.ts.map +1 -1
  45. package/dist/api/surface/arg-spec.js +20 -15
  46. package/dist/api/surface/arg-spec.js.map +1 -1
  47. package/dist/api/sweep.d.ts +2 -2
  48. package/dist/api/sweep.js +2 -2
  49. package/dist/api/sweep.js.map +1 -1
  50. package/dist/api/thicken.d.ts +3 -3
  51. package/dist/api/thicken.js +3 -3
  52. package/dist/api/thicken.js.map +1 -1
  53. package/dist/brep/engine/adapters/brepkit.d.ts.map +1 -1
  54. package/dist/brep/engine/adapters/brepkit.js +28 -1
  55. package/dist/brep/engine/adapters/brepkit.js.map +1 -1
  56. package/dist/brep/engine/adapters/occt.d.ts.map +1 -1
  57. package/dist/brep/engine/adapters/occt.js +12 -0
  58. package/dist/brep/engine/adapters/occt.js.map +1 -1
  59. package/dist/brep/engine/types.d.ts +1 -1
  60. package/dist/brep/engine/types.d.ts.map +1 -1
  61. package/dist/brep/engine/types.js.map +1 -1
  62. package/dist/brepkit-kernel/brepkitKernel.d.ts.map +1 -1
  63. package/dist/brepkit-kernel/brepkitKernel.js +463 -91
  64. package/dist/brepkit-kernel/brepkitKernel.js.map +1 -1
  65. package/dist/brepkit-kernel/multi-version-test.d.ts +40 -0
  66. package/dist/brepkit-kernel/multi-version-test.d.ts.map +1 -0
  67. package/dist/brepkit-kernel/multi-version-test.js +89 -0
  68. package/dist/brepkit-kernel/multi-version-test.js.map +1 -0
  69. package/dist/lang/symbol-table.generated.d.ts +1 -1
  70. package/dist/lang/symbol-table.generated.js +1 -1
  71. package/dist/lang/symbol-table.generated.js.map +1 -1
  72. package/package.json +1 -1
@@ -0,0 +1,89 @@
1
+ /**
2
+ * brepkit-kernel/multi-version-test — 同进程多版本 brepkit-wasm 装载辅助(仅测试用)
3
+ *
4
+ * 让 faijs 测试在同一 Node 进程内切换三个 brepkit-wasm 版本:
5
+ * - 2.129.15(MIT OR Apache-2.0,用户目标版本线末代)
6
+ * - 3.4.18(仓库当前 devDependency,node_modules 默认路径)
7
+ * - 4.0.32(npm dist-tag latest)
8
+ *
9
+ * 解包产物位于 `_test-kernels/brepkit-<version>/package/`(由 `npm pack` 拉取并解包,
10
+ * 已 gitignore,不进入 dist / 不提交)。3.4.18 直接走 node_modules。
11
+ *
12
+ * 切换序列(与 brep/engine/measurement-parity.test.ts 的 reset+重注册范式一致,
13
+ * 全程只经公开导出 API 操作,不改动内核源码):
14
+ * 1. disposeBrepkit() —— 释放 liveKernel 单例
15
+ * 2. setBrepkitWasmInitFn(customFn) —— 重置 initPromise 并注入新版本装载函数
16
+ * 3. __resetEngineRegistriesForTests() —— 清空引擎注册表(provider/cache/默认)
17
+ * 4. registerBrepkitBrepEngine() —— 用新版本重新注册(内部触发 wasm 装载)
18
+ *
19
+ * customFn 内从对应版本的绝对路径取 BrepKernel 类并 `new` 之——三个版本的 cjs
20
+ * 入口(brepkit_wasm_node.cjs)在加载时同步 readFileSync 自身同目录的 wasm 并
21
+ * 实例化,故按绝对路径 import 即天然隔离,不会与 node_modules 的包名缓存冲突。
22
+ */
23
+ import { fileURLToPath, pathToFileURL } from 'node:url';
24
+ import { dirname, join } from 'node:path';
25
+ import { setBrepkitWasmInitFn } from './brepkitWasm.js';
26
+ import { disposeBrepkit } from './brepkitKernel.js';
27
+ import { __resetEngineRegistriesForTests } from '../brep/engine/registry.js';
28
+ import { registerBrepkitBrepEngine } from '../brep/engine/adapters/brepkit.js';
29
+ /** 解包版本(2.x/4.x)相对本辅助文件的目录名;3.4.18 走 node_modules。 */
30
+ const UNPACKED_PKG_DIR = ['2.129.15', '4.0.32'];
31
+ /** 本辅助文件所在目录(vite-node / 原生 ESM 在 node 环境下均暴露 file:// 源文件 URL)。 */
32
+ const hereDir = dirname(fileURLToPath(import.meta.url));
33
+ /**
34
+ * 从指定版本装载 BrepKernel 类。
35
+ *
36
+ * - 3.4.18:复用 node_modules 默认包路径(与 brepkitWasm.ts 生产路径一致)。
37
+ * - 2.129.15 / 4.0.32:按绝对路径动态 import 解包后的 node cjs 入口;
38
+ * vite 注释标记让 vite-node 不拦截、交回原生 Node ESM 装载,
39
+ * cjs 入口内部用 __dirname 相对定位 wasm,因此与 cwd 无关。
40
+ */
41
+ async function loadBrepKernelClass(version) {
42
+ if (version === '3.4.18') {
43
+ // node_modules 默认路径(与 brepkitWasm.ts 生产装载同 specifier)。
44
+ const mod = (await import(/* @vite-ignore */ 'brepkit-wasm'));
45
+ if (!mod?.BrepKernel) {
46
+ throw new Error(`[multi-version] 3.4.18: node_modules brepkit-wasm 未导出 BrepKernel`);
47
+ }
48
+ return mod.BrepKernel;
49
+ }
50
+ const cjsPath = join(hereDir, '_test-kernels', `brepkit-${version}`, 'package', 'brepkit_wasm_node.cjs');
51
+ // 原生 Node ESM import CJS:返回 namespace,命名导出经 cjs-module-lexer 暴露。
52
+ const mod = (await import(/* @vite-ignore */ pathToFileURL(cjsPath).href));
53
+ if (!mod?.BrepKernel) {
54
+ throw new Error(`[multi-version] ${version}: ${cjsPath} 未导出 BrepKernel`);
55
+ }
56
+ return mod.BrepKernel;
57
+ }
58
+ /**
59
+ * 切换到指定 brepkit-wasm 版本并重新注册为 BREP 引擎。
60
+ *
61
+ * 抛出的错误(wasm 装载失败 / BrepKernel 缺失 / 构造抛错)一律原样上抛,
62
+ * 不在此 try-catch 掩盖——测试需要看到真实失败原因。
63
+ * @param version - 目标 brepkit-wasm 版本标识(BrepkitTestVersion 联合类型之一)。
64
+ */
65
+ export async function loadBrepkitVersion(version) {
66
+ // 1. 释放旧 liveKernel(wasm 模块级实例仍驻留,但 JS 句柄与 liveKernel 解绑)。
67
+ disposeBrepkit();
68
+ // 2. 注入新版本装载函数(setBrepkitWasmInitFn 内部同时清空 initPromise)。
69
+ setBrepkitWasmInitFn(async () => {
70
+ const Ctor = await loadBrepKernelClass(version);
71
+ return new Ctor();
72
+ });
73
+ // 3. 清空引擎注册表(provider/cache/默认 id/frozen 标志)。
74
+ __resetEngineRegistriesForTests();
75
+ // 4. 重新注册:内部 createBrepkitPrimitives → initBrepkitWasm → 上面注入的 customFn。
76
+ await registerBrepkitBrepEngine();
77
+ }
78
+ /**
79
+ * 测试收尾:dispose + 清掉自定义 initFn(恢复默认 node_modules 装载路径)+ 清注册表。
80
+ * 不重新注册任何引擎——收尾后本进程不再假定默认 BREP 引擎。
81
+ */
82
+ export async function resetToDefaultBrepkit() {
83
+ disposeBrepkit();
84
+ setBrepkitWasmInitFn(null);
85
+ __resetEngineRegistriesForTests();
86
+ }
87
+ /** 解包版本目录清单(诊断/校验用)。 */
88
+ export const UNPACKED_VERSIONS = UNPACKED_PKG_DIR;
89
+ //# sourceMappingURL=multi-version-test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-version-test.js","sourceRoot":"","sources":["../../src/brepkit-kernel/multi-version-test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACvD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,oBAAoB,EAAsB,MAAM,eAAe,CAAA;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAA;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAA;AAK3E,sDAAsD;AACtD,MAAM,gBAAgB,GAA4C,CAAC,UAAU,EAAE,QAAQ,CAAU,CAAA;AAEjG,mEAAmE;AACnE,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAIvD;;;;;;;GAOG;AACH,KAAK,UAAU,mBAAmB,CAAC,OAA2B;IAC5D,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,uDAAuD;QACvD,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAE3D,CAAA;QACD,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;QACrF,CAAC;QACD,OAAO,GAAG,CAAC,UAAU,CAAA;IACvB,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAClB,OAAO,EACP,eAAe,EACf,WAAW,OAAO,EAAE,EACpB,SAAS,EACT,uBAAuB,CACxB,CAAA;IACD,iEAAiE;IACjE,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAExE,CAAA;IACD,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,mBAAmB,OAAO,KAAK,OAAO,iBAAiB,CAAC,CAAA;IAC1E,CAAC;IACD,OAAO,GAAG,CAAC,UAAU,CAAA;AACvB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAA2B;IAClE,2DAA2D;IAC3D,cAAc,EAAE,CAAA;IAChB,yDAAyD;IACzD,oBAAoB,CAAC,KAAK,IAAI,EAAE;QAC9B,MAAM,IAAI,GAAG,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAA;QAC/C,OAAO,IAAI,IAAI,EAAE,CAAA;IACnB,CAAC,CAAC,CAAA;IACF,8CAA8C;IAC9C,+BAA+B,EAAE,CAAA;IACjC,yEAAyE;IACzE,MAAM,yBAAyB,EAAE,CAAA;AACnC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB;IACzC,cAAc,EAAE,CAAA;IAChB,oBAAoB,CAAC,IAAI,CAAC,CAAA;IAC1B,+BAA+B,EAAE,CAAA;AACnC,CAAC;AAED,wBAAwB;AACxB,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,CAAA","sourcesContent":["/**\n * brepkit-kernel/multi-version-test — 同进程多版本 brepkit-wasm 装载辅助(仅测试用)\n *\n * 让 faijs 测试在同一 Node 进程内切换三个 brepkit-wasm 版本:\n * - 2.129.15(MIT OR Apache-2.0,用户目标版本线末代)\n * - 3.4.18(仓库当前 devDependency,node_modules 默认路径)\n * - 4.0.32(npm dist-tag latest)\n *\n * 解包产物位于 `_test-kernels/brepkit-<version>/package/`(由 `npm pack` 拉取并解包,\n * 已 gitignore,不进入 dist / 不提交)。3.4.18 直接走 node_modules。\n *\n * 切换序列(与 brep/engine/measurement-parity.test.ts 的 reset+重注册范式一致,\n * 全程只经公开导出 API 操作,不改动内核源码):\n * 1. disposeBrepkit() —— 释放 liveKernel 单例\n * 2. setBrepkitWasmInitFn(customFn) —— 重置 initPromise 并注入新版本装载函数\n * 3. __resetEngineRegistriesForTests() —— 清空引擎注册表(provider/cache/默认)\n * 4. registerBrepkitBrepEngine() —— 用新版本重新注册(内部触发 wasm 装载)\n *\n * customFn 内从对应版本的绝对路径取 BrepKernel 类并 `new` 之——三个版本的 cjs\n * 入口(brepkit_wasm_node.cjs)在加载时同步 readFileSync 自身同目录的 wasm 并\n * 实例化,故按绝对路径 import 即天然隔离,不会与 node_modules 的包名缓存冲突。\n */\n\nimport { fileURLToPath, pathToFileURL } from 'node:url'\nimport { dirname, join } from 'node:path'\nimport { setBrepkitWasmInitFn, type BrepKitKernel } from './brepkitWasm'\nimport { disposeBrepkit } from './brepkitKernel'\nimport { __resetEngineRegistriesForTests } from '../brep/engine/registry'\nimport { registerBrepkitBrepEngine } from '../brep/engine/adapters/brepkit'\n\n/** 可在同进程切换的 brepkit-wasm 版本。 */\nexport type BrepkitTestVersion = '2.129.15' | '3.4.18' | '4.0.32'\n\n/** 解包版本(2.x/4.x)相对本辅助文件的目录名;3.4.18 走 node_modules。 */\nconst UNPACKED_PKG_DIR: Exclude<BrepkitTestVersion, '3.4.18'>[] = ['2.129.15', '4.0.32'] as const\n\n/** 本辅助文件所在目录(vite-node / 原生 ESM 在 node 环境下均暴露 file:// 源文件 URL)。 */\nconst hereDir = dirname(fileURLToPath(import.meta.url))\n\ntype BrepKernelCtor = new () => BrepKitKernel\n\n/**\n * 从指定版本装载 BrepKernel 类。\n *\n * - 3.4.18:复用 node_modules 默认包路径(与 brepkitWasm.ts 生产路径一致)。\n * - 2.129.15 / 4.0.32:按绝对路径动态 import 解包后的 node cjs 入口;\n * vite 注释标记让 vite-node 不拦截、交回原生 Node ESM 装载,\n * cjs 入口内部用 __dirname 相对定位 wasm,因此与 cwd 无关。\n */\nasync function loadBrepKernelClass(version: BrepkitTestVersion): Promise<BrepKernelCtor> {\n if (version === '3.4.18') {\n // node_modules 默认路径(与 brepkitWasm.ts 生产装载同 specifier)。\n const mod = (await import(/* @vite-ignore */ 'brepkit-wasm')) as {\n BrepKernel?: BrepKernelCtor\n }\n if (!mod?.BrepKernel) {\n throw new Error(`[multi-version] 3.4.18: node_modules brepkit-wasm 未导出 BrepKernel`)\n }\n return mod.BrepKernel\n }\n\n const cjsPath = join(\n hereDir,\n '_test-kernels',\n `brepkit-${version}`,\n 'package',\n 'brepkit_wasm_node.cjs',\n )\n // 原生 Node ESM import CJS:返回 namespace,命名导出经 cjs-module-lexer 暴露。\n const mod = (await import(/* @vite-ignore */ pathToFileURL(cjsPath).href)) as {\n BrepKernel?: BrepKernelCtor\n }\n if (!mod?.BrepKernel) {\n throw new Error(`[multi-version] ${version}: ${cjsPath} 未导出 BrepKernel`)\n }\n return mod.BrepKernel\n}\n\n/**\n * 切换到指定 brepkit-wasm 版本并重新注册为 BREP 引擎。\n *\n * 抛出的错误(wasm 装载失败 / BrepKernel 缺失 / 构造抛错)一律原样上抛,\n * 不在此 try-catch 掩盖——测试需要看到真实失败原因。\n * @param version - 目标 brepkit-wasm 版本标识(BrepkitTestVersion 联合类型之一)。\n */\nexport async function loadBrepkitVersion(version: BrepkitTestVersion): Promise<void> {\n // 1. 释放旧 liveKernel(wasm 模块级实例仍驻留,但 JS 句柄与 liveKernel 解绑)。\n disposeBrepkit()\n // 2. 注入新版本装载函数(setBrepkitWasmInitFn 内部同时清空 initPromise)。\n setBrepkitWasmInitFn(async () => {\n const Ctor = await loadBrepKernelClass(version)\n return new Ctor()\n })\n // 3. 清空引擎注册表(provider/cache/默认 id/frozen 标志)。\n __resetEngineRegistriesForTests()\n // 4. 重新注册:内部 createBrepkitPrimitives → initBrepkitWasm → 上面注入的 customFn。\n await registerBrepkitBrepEngine()\n}\n\n/**\n * 测试收尾:dispose + 清掉自定义 initFn(恢复默认 node_modules 装载路径)+ 清注册表。\n * 不重新注册任何引擎——收尾后本进程不再假定默认 BREP 引擎。\n */\nexport async function resetToDefaultBrepkit(): Promise<void> {\n disposeBrepkit()\n setBrepkitWasmInitFn(null)\n __resetEngineRegistriesForTests()\n}\n\n/** 解包版本目录清单(诊断/校验用)。 */\nexport const UNPACKED_VERSIONS = UNPACKED_PKG_DIR\n"]}
@@ -11,7 +11,7 @@ declare const _default: {
11
11
  cone: {};
12
12
  wedge: {};
13
13
  screw: {};
14
- sketch: {};
14
+ profile: {};
15
15
  wire: {};
16
16
  helix: {};
17
17
  sdf: {};
@@ -11,7 +11,7 @@ export default {
11
11
  "cone": {},
12
12
  "wedge": {},
13
13
  "screw": {},
14
- "sketch": {},
14
+ "profile": {},
15
15
  "wire": {},
16
16
  "helix": {},
17
17
  "sdf": {},
@@ -1 +1 @@
1
- {"version":3,"file":"symbol-table.generated.js","sourceRoot":"","sources":["../../src/lang/symbol-table.generated.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAe;IACb,KAAK,EAAE,EAAE;IACT,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,EAAE;IACd,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,QAAQ,EAAE,EAAE;IACZ,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,EAAE;IACX,KAAK,EAAE,EAAE;IACT,WAAW,EAAE,EAAE;IACf,cAAc,EAAE,EAAE;IAClB,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,EAAE;IACb,gBAAgB,EAAE,EAAE;IACpB,cAAc,EAAE,EAAE;IAClB,gBAAgB,EAAE,EAAE;IACpB,WAAW,EAAE,EAAE;IACf,cAAc,EAAE,EAAE;IAClB,iBAAiB,EAAE,EAAE;IACrB,KAAK,EAAE,EAAE;IACT,gBAAgB,EAAE,EAAE;IACpB,qBAAqB,EAAE,EAAE;IACzB,OAAO,EAAE,EAAE;IACX,UAAU,EAAE,EAAE;IACd,WAAW,EAAE,EAAE;IACf,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,OAAO,EAAE,EAAE;IACX,MAAM,EAAE,EAAE;IACV,YAAY,EAAE,EAAE;IAChB,YAAY,EAAE,EAAE;IAChB,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,iBAAiB,EAAE,EAAE;IACrB,mBAAmB,EAAE,EAAE;IACvB,cAAc,EAAE,EAAE;IAClB,OAAO,EAAE,EAAE;IACX,aAAa,EAAE,EAAE;IACjB,aAAa,EAAE,EAAE;IACjB,UAAU,EAAE,EAAE;IACd,OAAO,EAAE,EAAE;IACX,KAAK,EAAE,EAAE;IACT,OAAO,EAAE,EAAE;IACX,eAAe,EAAE,EAAE;IACnB,iBAAiB,EAAE,EAAE;IACrB,aAAa,EAAE,EAAE;IACjB,oBAAoB,EAAE,EAAE;IACxB,YAAY,EAAE,EAAE;IAChB,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,MAAM,EAAE,EAAE;IACV,kBAAkB,EAAE,EAAE;IACtB,MAAM,EAAE,EAAE;IACV,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE,EAAE;IACZ,cAAc,EAAE,EAAE;IAClB,YAAY,EAAE,EAAE;IAChB,aAAa,EAAE,EAAE;IACjB,cAAc,EAAE,EAAE;IAClB,gBAAgB,EAAE,EAAE;IACpB,cAAc,EAAE,EAAE;IAClB,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,EAAE;IACX,QAAQ,EAAE,EAAE;IACZ,MAAM,EAAE,EAAE;IACV,QAAQ,EAAE,EAAE;IACZ,YAAY,EAAE,EAAE;IAChB,aAAa,EAAE,EAAE;IACjB,WAAW,EAAE,EAAE;IACf,QAAQ,EAAE,EAAE;IACZ,aAAa,EAAE,EAAE;IACjB,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE,EAAE;IACZ,MAAM,EAAE,EAAE;IACV,UAAU,EAAE,EAAE;IACd,SAAS,EAAE,EAAE;IACb,aAAa,EAAE,EAAE;IACjB,UAAU,EAAE,EAAE;IACd,UAAU,EAAE,EAAE;IACd,WAAW,EAAE,EAAE;IACf,qBAAqB,EAAE,EAAE;CAC1B,CAAA","sourcesContent":["/**\n * symbol-table 生成文件 — 禁手改。\n * 由 scripts/gen-symbol-table.ts 从 api-namespace 的 cad 命名空间生成(键存在性)。\n * keep-syntax P1 后符号表只承载 check() 符号检查(\"函数不存在\"判定);\n * 保留语义由 keep 声明表达,不再有 readonly 标注。\n */\nexport default {\n \"box\": {},\n \"sphere\": {},\n \"cylinder\": {},\n \"cone\": {},\n \"wedge\": {},\n \"screw\": {},\n \"sketch\": {},\n \"wire\": {},\n \"helix\": {},\n \"sdf\": {},\n \"translate\": {},\n \"rotate_euler\": {},\n \"scale\": {},\n \"scale3d\": {},\n \"engrave\": {},\n \"chamfer\": {},\n \"fillet\": {},\n \"knurl\": {},\n \"shell\": {},\n \"draft\": {},\n \"thicken\": {},\n \"filletVariable\": {},\n \"splitByPlane\": {},\n \"sectionByPlane\": {},\n \"defeature\": {},\n \"reverseShape\": {},\n \"unifySameDomain\": {},\n \"sew\": {},\n \"sewAndSolidify\": {},\n \"removeHolesFromFace\": {},\n \"union\": {},\n \"subtract\": {},\n \"intersect\": {},\n \"extrude\": {},\n \"revolve\": {},\n \"sweep\": {},\n \"loft\": {},\n \"faceNormal\": {},\n \"bboxCenter\": {},\n \"bboxMin\": {},\n \"bboxMax\": {},\n \"edgeRef\": {},\n \"faceRef\": {},\n \"jointTrajectory\": {},\n \"inverseKinematics\": {},\n \"mechanismDOF\": {},\n \"asset\": {},\n \"import_brep\": {},\n \"import_step\": {},\n \"compound\": {},\n \"place\": {},\n \"cut\": {},\n \"split\": {},\n \"linearPattern\": {},\n \"circularPattern\": {},\n \"gridPattern\": {},\n \"rectangularPattern\": {},\n \"mirrorJoin\": {},\n \"mirror\": {},\n \"clone\": {},\n \"torus\": {},\n \"fuse\": {},\n \"inspectMassProps\": {},\n \"area\": {},\n \"length\": {},\n \"volume\": {},\n \"centerOfMass\": {},\n \"viewCamera\": {},\n \"projectView\": {},\n \"projectSheet\": {},\n \"complexExtrude\": {},\n \"twistExtrude\": {},\n \"roof\": {},\n \"drill\": {},\n \"pocket\": {},\n \"boss\": {},\n \"thread\": {},\n \"convexHull\": {},\n \"makeBaseBox\": {},\n \"ellipsoid\": {},\n \"rotate\": {},\n \"applyMatrix\": {},\n \"locate\": {},\n \"offset\": {},\n \"heal\": {},\n \"simplify\": {},\n \"isValid\": {},\n \"isSameShape\": {},\n \"autoHeal\": {},\n \"fixShape\": {},\n \"healSolid\": {},\n \"fixSelfIntersection\": {}\n}\n"]}
1
+ {"version":3,"file":"symbol-table.generated.js","sourceRoot":"","sources":["../../src/lang/symbol-table.generated.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAe;IACb,KAAK,EAAE,EAAE;IACT,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,EAAE;IACd,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,EAAE;IACb,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,EAAE;IACX,KAAK,EAAE,EAAE;IACT,WAAW,EAAE,EAAE;IACf,cAAc,EAAE,EAAE;IAClB,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,EAAE;IACb,gBAAgB,EAAE,EAAE;IACpB,cAAc,EAAE,EAAE;IAClB,gBAAgB,EAAE,EAAE;IACpB,WAAW,EAAE,EAAE;IACf,cAAc,EAAE,EAAE;IAClB,iBAAiB,EAAE,EAAE;IACrB,KAAK,EAAE,EAAE;IACT,gBAAgB,EAAE,EAAE;IACpB,qBAAqB,EAAE,EAAE;IACzB,OAAO,EAAE,EAAE;IACX,UAAU,EAAE,EAAE;IACd,WAAW,EAAE,EAAE;IACf,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,OAAO,EAAE,EAAE;IACX,MAAM,EAAE,EAAE;IACV,YAAY,EAAE,EAAE;IAChB,YAAY,EAAE,EAAE;IAChB,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,iBAAiB,EAAE,EAAE;IACrB,mBAAmB,EAAE,EAAE;IACvB,cAAc,EAAE,EAAE;IAClB,OAAO,EAAE,EAAE;IACX,aAAa,EAAE,EAAE;IACjB,aAAa,EAAE,EAAE;IACjB,UAAU,EAAE,EAAE;IACd,OAAO,EAAE,EAAE;IACX,KAAK,EAAE,EAAE;IACT,OAAO,EAAE,EAAE;IACX,eAAe,EAAE,EAAE;IACnB,iBAAiB,EAAE,EAAE;IACrB,aAAa,EAAE,EAAE;IACjB,oBAAoB,EAAE,EAAE;IACxB,YAAY,EAAE,EAAE;IAChB,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,MAAM,EAAE,EAAE;IACV,kBAAkB,EAAE,EAAE;IACtB,MAAM,EAAE,EAAE;IACV,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE,EAAE;IACZ,cAAc,EAAE,EAAE;IAClB,YAAY,EAAE,EAAE;IAChB,aAAa,EAAE,EAAE;IACjB,cAAc,EAAE,EAAE;IAClB,gBAAgB,EAAE,EAAE;IACpB,cAAc,EAAE,EAAE;IAClB,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,EAAE;IACX,QAAQ,EAAE,EAAE;IACZ,MAAM,EAAE,EAAE;IACV,QAAQ,EAAE,EAAE;IACZ,YAAY,EAAE,EAAE;IAChB,aAAa,EAAE,EAAE;IACjB,WAAW,EAAE,EAAE;IACf,QAAQ,EAAE,EAAE;IACZ,aAAa,EAAE,EAAE;IACjB,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE,EAAE;IACZ,MAAM,EAAE,EAAE;IACV,UAAU,EAAE,EAAE;IACd,SAAS,EAAE,EAAE;IACb,aAAa,EAAE,EAAE;IACjB,UAAU,EAAE,EAAE;IACd,UAAU,EAAE,EAAE;IACd,WAAW,EAAE,EAAE;IACf,qBAAqB,EAAE,EAAE;CAC1B,CAAA","sourcesContent":["/**\n * symbol-table 生成文件 — 禁手改。\n * 由 scripts/gen-symbol-table.ts 从 api-namespace 的 cad 命名空间生成(键存在性)。\n * keep-syntax P1 后符号表只承载 check() 符号检查(\"函数不存在\"判定);\n * 保留语义由 keep 声明表达,不再有 readonly 标注。\n */\nexport default {\n \"box\": {},\n \"sphere\": {},\n \"cylinder\": {},\n \"cone\": {},\n \"wedge\": {},\n \"screw\": {},\n \"profile\": {},\n \"wire\": {},\n \"helix\": {},\n \"sdf\": {},\n \"translate\": {},\n \"rotate_euler\": {},\n \"scale\": {},\n \"scale3d\": {},\n \"engrave\": {},\n \"chamfer\": {},\n \"fillet\": {},\n \"knurl\": {},\n \"shell\": {},\n \"draft\": {},\n \"thicken\": {},\n \"filletVariable\": {},\n \"splitByPlane\": {},\n \"sectionByPlane\": {},\n \"defeature\": {},\n \"reverseShape\": {},\n \"unifySameDomain\": {},\n \"sew\": {},\n \"sewAndSolidify\": {},\n \"removeHolesFromFace\": {},\n \"union\": {},\n \"subtract\": {},\n \"intersect\": {},\n \"extrude\": {},\n \"revolve\": {},\n \"sweep\": {},\n \"loft\": {},\n \"faceNormal\": {},\n \"bboxCenter\": {},\n \"bboxMin\": {},\n \"bboxMax\": {},\n \"edgeRef\": {},\n \"faceRef\": {},\n \"jointTrajectory\": {},\n \"inverseKinematics\": {},\n \"mechanismDOF\": {},\n \"asset\": {},\n \"import_brep\": {},\n \"import_step\": {},\n \"compound\": {},\n \"place\": {},\n \"cut\": {},\n \"split\": {},\n \"linearPattern\": {},\n \"circularPattern\": {},\n \"gridPattern\": {},\n \"rectangularPattern\": {},\n \"mirrorJoin\": {},\n \"mirror\": {},\n \"clone\": {},\n \"torus\": {},\n \"fuse\": {},\n \"inspectMassProps\": {},\n \"area\": {},\n \"length\": {},\n \"volume\": {},\n \"centerOfMass\": {},\n \"viewCamera\": {},\n \"projectView\": {},\n \"projectSheet\": {},\n \"complexExtrude\": {},\n \"twistExtrude\": {},\n \"roof\": {},\n \"drill\": {},\n \"pocket\": {},\n \"boss\": {},\n \"thread\": {},\n \"convexHull\": {},\n \"makeBaseBox\": {},\n \"ellipsoid\": {},\n \"rotate\": {},\n \"applyMatrix\": {},\n \"locate\": {},\n \"offset\": {},\n \"heal\": {},\n \"simplify\": {},\n \"isValid\": {},\n \"isSameShape\": {},\n \"autoHeal\": {},\n \"fixShape\": {},\n \"healSolid\": {},\n \"fixSelfIntersection\": {}\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@faicad/faijs",
3
- "version": "0.17.0",
3
+ "version": "0.18.0",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "repository": {