@nestia/core 12.0.0 → 13.0.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 (65) hide show
  1. package/lib/adaptors/McpAdaptor.js +21 -18
  2. package/lib/adaptors/McpAdaptor.js.map +1 -1
  3. package/lib/decorators/EncryptedBody.js +2 -7
  4. package/lib/decorators/EncryptedBody.js.map +1 -1
  5. package/lib/decorators/EncryptedRoute.js +1 -1
  6. package/lib/decorators/EncryptedRoute.js.map +1 -1
  7. package/lib/decorators/McpRoute.js +1 -1
  8. package/lib/decorators/McpRoute.js.map +1 -1
  9. package/lib/decorators/NoTransformConfigurationError.js +2 -2
  10. package/lib/decorators/PlainBody.js +2 -7
  11. package/lib/decorators/PlainBody.js.map +1 -1
  12. package/lib/decorators/SwaggerCustomizer.js +2 -2
  13. package/lib/decorators/SwaggerCustomizer.js.map +1 -1
  14. package/lib/decorators/SwaggerExample.d.ts +37 -40
  15. package/lib/decorators/SwaggerExample.js +24 -26
  16. package/lib/decorators/SwaggerExample.js.map +1 -1
  17. package/lib/decorators/TypedBody.js +3 -7
  18. package/lib/decorators/TypedBody.js.map +1 -1
  19. package/lib/decorators/TypedException.d.ts +1 -1
  20. package/lib/decorators/TypedFormData.js +2 -7
  21. package/lib/decorators/TypedFormData.js.map +1 -1
  22. package/lib/decorators/TypedQuery.js +2 -9
  23. package/lib/decorators/TypedQuery.js.map +1 -1
  24. package/lib/decorators/WebSocketRoute.js +1 -1
  25. package/lib/decorators/WebSocketRoute.js.map +1 -1
  26. package/lib/decorators/internal/get_path_and_querify.js +1 -1
  27. package/lib/decorators/internal/get_path_and_querify.js.map +1 -1
  28. package/lib/decorators/internal/is_media_type.d.ts +1 -0
  29. package/lib/decorators/internal/is_media_type.js +11 -0
  30. package/lib/decorators/internal/is_media_type.js.map +1 -0
  31. package/lib/decorators/internal/validate_request_query.js.map +1 -1
  32. package/native/go.mod +1 -1
  33. package/native/go.sum +32 -32
  34. package/native/plugin/plan.go +17 -0
  35. package/native/transform/build.go +41 -80
  36. package/native/transform/contributor.go +4 -64
  37. package/native/transform/core_transform.go +42 -705
  38. package/native/transform/node_transform.go +3 -5
  39. package/native/transform/printer.go +0 -217
  40. package/native/transform/run.go +29 -0
  41. package/native/transform/transform.go +54 -99
  42. package/native/transform/typia_dependency.go +117 -0
  43. package/native/transform/typia_fast.go +0 -320
  44. package/native/transform/typia_registry.go +40 -0
  45. package/package.json +12 -8
  46. package/src/adaptors/McpAdaptor.ts +29 -21
  47. package/src/decorators/EncryptedBody.ts +2 -9
  48. package/src/decorators/EncryptedRoute.ts +1 -1
  49. package/src/decorators/McpRoute.ts +2 -5
  50. package/src/decorators/NoTransformConfigurationError.ts +2 -2
  51. package/src/decorators/PlainBody.ts +2 -9
  52. package/src/decorators/SwaggerCustomizer.ts +4 -2
  53. package/src/decorators/SwaggerExample.ts +38 -41
  54. package/src/decorators/TypedBody.ts +5 -9
  55. package/src/decorators/TypedException.ts +1 -1
  56. package/src/decorators/TypedFormData.ts +7 -9
  57. package/src/decorators/TypedQuery.ts +7 -12
  58. package/src/decorators/WebSocketRoute.ts +1 -1
  59. package/src/decorators/internal/get_path_and_querify.ts +1 -1
  60. package/src/decorators/internal/is_media_type.ts +10 -0
  61. package/src/decorators/internal/validate_request_query.ts +2 -1
  62. package/native/transform/cleanup.go +0 -408
  63. package/native/transform/exports.go +0 -13
  64. package/native/transform/rewrite.go +0 -668
  65. package/native/transform/typia_replacement.go +0 -24
@@ -1 +1 @@
1
- {"version":3,"file":"WebSocketRoute.js","sourceRoot":"","sources":["../../src/decorators/WebSocketRoute.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebSocketRoute.js","sourceRoot":"","sources":["../../src/decorators/WebSocketRoute.ts"],"names":[],"mappings":"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"}
@@ -40,7 +40,7 @@ const take = (method) => (functor) => {
40
40
  const querify = (input) => {
41
41
  const output = new URLSearchParams();
42
42
  for (const [key, value] of Object.entries(input))
43
- if (key === undefined)
43
+ if (value === undefined)
44
44
  continue;
45
45
  else if (Array.isArray(value))
46
46
  for (const elem of value)
@@ -1 +1 @@
1
- {"version":3,"file":"get_path_and_querify.js","sourceRoot":"","sources":["../../../src/decorators/internal/get_path_and_querify.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get_path_and_querify.js","sourceRoot":"","sources":["../../../src/decorators/internal/get_path_and_querify.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.is_media_type = void 0;
4
+ /** @internal */
5
+ const is_media_type = (text, expected) => text !== undefined &&
6
+ text
7
+ .split(";")
8
+ .map((str) => str.trim().toLowerCase())
9
+ .some((str) => str === expected.toLowerCase());
10
+ exports.is_media_type = is_media_type;
11
+ //# sourceMappingURL=is_media_type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is_media_type.js","sourceRoot":"","sources":["../../../src/decorators/internal/is_media_type.ts"],"names":[],"mappings":";;;AAAA,gBAAgB;AACT,MAAM,aAAa,GAAG,CAC3B,IAAwB,EACxB,QAAgB,EACP,EAAE,CACX,IAAI,KAAK,SAAS;IAClB,IAAI;SACD,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;SACtC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;AARtC,QAAA,aAAa,GAAb,aAAa,CAQyB"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate_request_query.js","sourceRoot":"","sources":["../../../src/decorators/internal/validate_request_query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate_request_query.js","sourceRoot":"","sources":["../../../src/decorators/internal/validate_request_query.ts"],"names":[],"mappings":"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"}
package/native/go.mod CHANGED
@@ -10,7 +10,7 @@ require (
10
10
  github.com/microsoft/typescript-go/shim/printer v0.0.0
11
11
  github.com/microsoft/typescript-go/shim/scanner v0.0.0
12
12
  github.com/samchon/ttsc/packages/ttsc v0.0.0
13
- github.com/samchon/typia/packages/typia/native v0.0.0-20260709134626-fd1c6686950f
13
+ github.com/samchon/typia/packages/typia/native v0.0.0-20260818045905-f692fd63a846
14
14
  )
15
15
 
16
16
  require (
package/native/go.sum CHANGED
@@ -8,38 +8,38 @@ github.com/microsoft/typescript-go v0.0.0-20260429010842-56ab4af42157 h1:llOMPhK
8
8
  github.com/microsoft/typescript-go v0.0.0-20260429010842-56ab4af42157/go.mod h1:m8YA0PMC7ti0GW0RI05D6fEcjQeu98XVS+FWF+VDW2k=
9
9
  github.com/peter-evans/patience v0.3.0 h1:rX0JdJeepqdQl1Sk9c9uvorjYYzL2TfgLX1adqYm9cA=
10
10
  github.com/peter-evans/patience v0.3.0/go.mod h1:Kmxu5sY1NmBLFSStvXjX1wS9mIv7wMcP/ubucyMOAu0=
11
- github.com/samchon/ttsc/packages/ttsc v0.0.0-20260709053824-84bdc4acccb0 h1:j6jDYzWEow5+0KacfIzsi8xV9t0MTcShfNHYiPJk2LA=
12
- github.com/samchon/ttsc/packages/ttsc v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:w1lJWUKJ3tMV+vAG2S8aj4c5E5m+OzA66tLh8a0dlUY=
13
- github.com/samchon/ttsc/packages/ttsc/shim/ast v0.0.0-20260709053824-84bdc4acccb0 h1:v015/xr8MaQMLoYqPQXu5lUrEQmnG1D3V5zzlDUus6U=
14
- github.com/samchon/ttsc/packages/ttsc/shim/ast v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:BCVAEArtMC+X1laJmDwxlsRROIQIYvHeT7Dl0gNjT0A=
15
- github.com/samchon/ttsc/packages/ttsc/shim/bundled v0.0.0-20260709053824-84bdc4acccb0 h1:EEeHe7pRKahBDyoUkBwQ8zFpzSswNj0JEhhrKwFpQTg=
16
- github.com/samchon/ttsc/packages/ttsc/shim/bundled v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:0tz+Y8szXmEpXWHWVrLrv11ga1z6tQJQErkUyIWJ9RQ=
17
- github.com/samchon/ttsc/packages/ttsc/shim/checker v0.0.0-20260709053824-84bdc4acccb0 h1:sMwvPvb2gbVJ9JODyPYAmUPObU5YX5XkBihrex9pw7s=
18
- github.com/samchon/ttsc/packages/ttsc/shim/checker v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:4xfafgG/qosSp8f0tCf83assFoUKRdGHhvPD1EI9LKg=
19
- github.com/samchon/ttsc/packages/ttsc/shim/compiler v0.0.0-20260709053824-84bdc4acccb0 h1:jmrwyhAcdD56mQSAm96sUZxs2F+5902VnHhNzYTAdhw=
20
- github.com/samchon/ttsc/packages/ttsc/shim/compiler v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:s12vcy3pf6RYDxXcyiK7448DiK+Ol9qx3cjiInd1uxw=
21
- github.com/samchon/ttsc/packages/ttsc/shim/core v0.0.0-20260709053824-84bdc4acccb0 h1:Y8wMEDosAZu6lELpWWbJf2IyCZNQZBLQQX+K//8nwc8=
22
- github.com/samchon/ttsc/packages/ttsc/shim/core v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:DUewcVNEdXyDveQholE4GAsiqqA3C2+SJYqia3nCf00=
23
- github.com/samchon/ttsc/packages/ttsc/shim/diagnosticwriter v0.0.0-20260709053824-84bdc4acccb0 h1:rpRxTBX5DOVeuzMDojBU0PRfdUZXQ7T/rp+Md0yP2VY=
24
- github.com/samchon/ttsc/packages/ttsc/shim/diagnosticwriter v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:v86GtrD7qALo6Xkgz1MDomPMSV2D9NdniQWB5t8eY6k=
25
- github.com/samchon/ttsc/packages/ttsc/shim/parser v0.0.0-20260709053824-84bdc4acccb0 h1:sWGdmZHFtlgdAI3m4LNKZSTCf7jK1+GMs5sJDGSep+M=
26
- github.com/samchon/ttsc/packages/ttsc/shim/parser v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:inUjC/bNlCkO0zIzHZRXlHR/WgLcK0vi2KLc7tpQ1ek=
27
- github.com/samchon/ttsc/packages/ttsc/shim/printer v0.0.0-20260709053824-84bdc4acccb0 h1:7cxbkCAQ85dKpeuB0uwkAcQr8akOSDcVRNp6RJCiFYg=
28
- github.com/samchon/ttsc/packages/ttsc/shim/printer v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:Hz8BbCqKCrykLfIX+PburWsGEKR8+bkrBJDe2TMLLS0=
29
- github.com/samchon/ttsc/packages/ttsc/shim/scanner v0.0.0-20260709053824-84bdc4acccb0 h1:Ua1uEGKXX/SPrbNPFoS5FAoFrBlM56ecX2s+eeHmbQQ=
30
- github.com/samchon/ttsc/packages/ttsc/shim/scanner v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:abIC7C28cUA5IQKmLJulsl2qOvmimhkMNOfjJhRm5jM=
31
- github.com/samchon/ttsc/packages/ttsc/shim/tsoptions v0.0.0-20260709053824-84bdc4acccb0 h1:ySIVZhDxe0u5sb3GtFFQ8leXar69QZjCYgPKGBEkIQA=
32
- github.com/samchon/ttsc/packages/ttsc/shim/tsoptions v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:EQwrCr3nY0U1SZBNyp6cQSogAiXsjFxTuT8NlMit1lc=
33
- github.com/samchon/ttsc/packages/ttsc/shim/tspath v0.0.0-20260709053824-84bdc4acccb0 h1:bY1Rdiqs6rc7S7/YbY3gWJoXvTeb7LhXMNYrl6fvp1E=
34
- github.com/samchon/ttsc/packages/ttsc/shim/tspath v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:hsE2c1bZquSNlDLIkT3SfLH3MrDmMk1BLzWI/KomT1A=
35
- github.com/samchon/ttsc/packages/ttsc/shim/vfs v0.0.0-20260709053824-84bdc4acccb0 h1:FU0AuiZLsw9kMU4Fy56XvhJ3bD99n5WTkjJh93gB0m0=
36
- github.com/samchon/ttsc/packages/ttsc/shim/vfs v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:HoQcoC0FEG3iMI6zvjg8r6j/ves+RVH6SRn48VSi5H0=
37
- github.com/samchon/ttsc/packages/ttsc/shim/vfs/cachedvfs v0.0.0-20260709053824-84bdc4acccb0 h1:rOw6pmYXNlaC0KKG9D38HTJEsfNiDI1+u2mBA8QRbZ8=
38
- github.com/samchon/ttsc/packages/ttsc/shim/vfs/cachedvfs v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:XS3LhXkn5xadyRe3tW+9+suW/7gh7dPdL43Q+s/lUDo=
39
- github.com/samchon/ttsc/packages/ttsc/shim/vfs/osvfs v0.0.0-20260709053824-84bdc4acccb0 h1:LXPQxe57qlWiHG5s8pQOKZD4nZRnRkrKIDsdJVfh2ws=
40
- github.com/samchon/ttsc/packages/ttsc/shim/vfs/osvfs v0.0.0-20260709053824-84bdc4acccb0/go.mod h1:otX+qw8aZLNCoBmCwMAn53Nw0RQTPzSoId3DxmE67So=
41
- github.com/samchon/typia/packages/typia/native v0.0.0-20260709134626-fd1c6686950f h1:8axuxtT7YdYhJy7so6SDxVK2oJPDkq8vl55K+nTudtw=
42
- github.com/samchon/typia/packages/typia/native v0.0.0-20260709134626-fd1c6686950f/go.mod h1:SJDrfiCEK5dtObhJeAl0iqelqmmFm/JIjfJ6z0kID60=
11
+ github.com/samchon/ttsc/packages/ttsc v0.0.0-20260820075544-3fe6b732f888 h1:N4jvJNOiHPpelrsNowlY1ubn5tDIJ7VV9/uEYogFMqU=
12
+ github.com/samchon/ttsc/packages/ttsc v0.0.0-20260820075544-3fe6b732f888/go.mod h1:mHD0o2ZFVv6wSNzKZi+ux6u0Wz34Kq33YrPj2tdSyU8=
13
+ github.com/samchon/ttsc/packages/ttsc/shim/ast v0.0.0-20260820075544-3fe6b732f888 h1:9Gi+v6ZIJfs+vGuuVoZrPM0ZusY9aY9u3XwwlRBREc0=
14
+ github.com/samchon/ttsc/packages/ttsc/shim/ast v0.0.0-20260820075544-3fe6b732f888/go.mod h1:BCVAEArtMC+X1laJmDwxlsRROIQIYvHeT7Dl0gNjT0A=
15
+ github.com/samchon/ttsc/packages/ttsc/shim/bundled v0.0.0-20260820075544-3fe6b732f888 h1:wH6goeOwavAxUjlyOo7LqOkOr6PnoJSw4JBTPrZSFFM=
16
+ github.com/samchon/ttsc/packages/ttsc/shim/bundled v0.0.0-20260820075544-3fe6b732f888/go.mod h1:0tz+Y8szXmEpXWHWVrLrv11ga1z6tQJQErkUyIWJ9RQ=
17
+ github.com/samchon/ttsc/packages/ttsc/shim/checker v0.0.0-20260820075544-3fe6b732f888 h1:MzAA30HyHf8eLzEN3+vTohyAETv+lyx8p67ag6hSXyc=
18
+ github.com/samchon/ttsc/packages/ttsc/shim/checker v0.0.0-20260820075544-3fe6b732f888/go.mod h1:lX+u4ZMEyydpdGXSRaOAi5gkP6VIl7WE+Ue7eokwMjM=
19
+ github.com/samchon/ttsc/packages/ttsc/shim/compiler v0.0.0-20260820075544-3fe6b732f888 h1:RkUrnwWL67tR6CtKGz5Uv1unwlmYOmZOmh5mcnHpiyg=
20
+ github.com/samchon/ttsc/packages/ttsc/shim/compiler v0.0.0-20260820075544-3fe6b732f888/go.mod h1:s12vcy3pf6RYDxXcyiK7448DiK+Ol9qx3cjiInd1uxw=
21
+ github.com/samchon/ttsc/packages/ttsc/shim/core v0.0.0-20260820075544-3fe6b732f888 h1:oTcsePbFgh4VIRQlJSWs83uG6VwOXkvs1vt9PJHg/SY=
22
+ github.com/samchon/ttsc/packages/ttsc/shim/core v0.0.0-20260820075544-3fe6b732f888/go.mod h1:DUewcVNEdXyDveQholE4GAsiqqA3C2+SJYqia3nCf00=
23
+ github.com/samchon/ttsc/packages/ttsc/shim/diagnosticwriter v0.0.0-20260820075544-3fe6b732f888 h1:lfw9JjPoUilJPkP/2sWmHPPk7hupGjvVUS51jO9JVYM=
24
+ github.com/samchon/ttsc/packages/ttsc/shim/diagnosticwriter v0.0.0-20260820075544-3fe6b732f888/go.mod h1:v86GtrD7qALo6Xkgz1MDomPMSV2D9NdniQWB5t8eY6k=
25
+ github.com/samchon/ttsc/packages/ttsc/shim/parser v0.0.0-20260820075544-3fe6b732f888 h1:VfBPOZsU736NVxZncttHSSnTHg3wmGJciamo2WK/mXQ=
26
+ github.com/samchon/ttsc/packages/ttsc/shim/parser v0.0.0-20260820075544-3fe6b732f888/go.mod h1:inUjC/bNlCkO0zIzHZRXlHR/WgLcK0vi2KLc7tpQ1ek=
27
+ github.com/samchon/ttsc/packages/ttsc/shim/printer v0.0.0-20260820075544-3fe6b732f888 h1:rWSO7jtTdfmthgJvkQ3875LfrGL6kQM+eU4hakjT9zQ=
28
+ github.com/samchon/ttsc/packages/ttsc/shim/printer v0.0.0-20260820075544-3fe6b732f888/go.mod h1:Hz8BbCqKCrykLfIX+PburWsGEKR8+bkrBJDe2TMLLS0=
29
+ github.com/samchon/ttsc/packages/ttsc/shim/scanner v0.0.0-20260820075544-3fe6b732f888 h1:PWwuDTnPxbj0tVl0B7/wDoZHgysUqnyQMsoKwJ1D6Q4=
30
+ github.com/samchon/ttsc/packages/ttsc/shim/scanner v0.0.0-20260820075544-3fe6b732f888/go.mod h1:abIC7C28cUA5IQKmLJulsl2qOvmimhkMNOfjJhRm5jM=
31
+ github.com/samchon/ttsc/packages/ttsc/shim/tsoptions v0.0.0-20260820075544-3fe6b732f888 h1:lz0eJbiPb4e0DnWNfZRIW2+FEtEdkStClUCEko481s8=
32
+ github.com/samchon/ttsc/packages/ttsc/shim/tsoptions v0.0.0-20260820075544-3fe6b732f888/go.mod h1:EQwrCr3nY0U1SZBNyp6cQSogAiXsjFxTuT8NlMit1lc=
33
+ github.com/samchon/ttsc/packages/ttsc/shim/tspath v0.0.0-20260820075544-3fe6b732f888 h1:gx0BaA7+aiZH8gadWxlUc1rJ0uFS9lyP2FIDPMTcxD0=
34
+ github.com/samchon/ttsc/packages/ttsc/shim/tspath v0.0.0-20260820075544-3fe6b732f888/go.mod h1:hsE2c1bZquSNlDLIkT3SfLH3MrDmMk1BLzWI/KomT1A=
35
+ github.com/samchon/ttsc/packages/ttsc/shim/vfs v0.0.0-20260820075544-3fe6b732f888 h1:hluGlN8yDeNO9fOn3nmPuEpnrQ7HLqb+kZITTwlc2jc=
36
+ github.com/samchon/ttsc/packages/ttsc/shim/vfs v0.0.0-20260820075544-3fe6b732f888/go.mod h1:HoQcoC0FEG3iMI6zvjg8r6j/ves+RVH6SRn48VSi5H0=
37
+ github.com/samchon/ttsc/packages/ttsc/shim/vfs/cachedvfs v0.0.0-20260820075544-3fe6b732f888 h1:rFmIUXTH4TVyii/qidmmHDRtwYwORquRd83WUoUkdmk=
38
+ github.com/samchon/ttsc/packages/ttsc/shim/vfs/cachedvfs v0.0.0-20260820075544-3fe6b732f888/go.mod h1:XS3LhXkn5xadyRe3tW+9+suW/7gh7dPdL43Q+s/lUDo=
39
+ github.com/samchon/ttsc/packages/ttsc/shim/vfs/osvfs v0.0.0-20260820075544-3fe6b732f888 h1:ihiKD2OhuYc7Dngxw3uFYbVoiA/xuPwwQoUakB59E40=
40
+ github.com/samchon/ttsc/packages/ttsc/shim/vfs/osvfs v0.0.0-20260820075544-3fe6b732f888/go.mod h1:otX+qw8aZLNCoBmCwMAn53Nw0RQTPzSoId3DxmE67So=
41
+ github.com/samchon/typia/packages/typia/native v0.0.0-20260818045905-f692fd63a846 h1:x9xL0zn2AqPf19lTp8dNal+Ia3cIu0uYnyXlY4mo3QI=
42
+ github.com/samchon/typia/packages/typia/native v0.0.0-20260818045905-f692fd63a846/go.mod h1:pUTSG5IZxw8Hohle//RsDXnE+8ZhAus7mPDKFqzvZnk=
43
43
  github.com/zeebo/assert v1.3.0 h1:g7C04CbJuIDKNPFHmsk4hwZDO5O+kntRxzaUoNXj+IQ=
44
44
  github.com/zeebo/assert v1.3.0/go.mod h1:Pq9JiuJQpG8JLJdtkwrJESF0Foym2/D9XMU5ciN/wJ0=
45
45
  github.com/zeebo/xxh3 v1.1.0 h1:s7DLGDK45Dyfg7++yxI0khrfwq9661w9EN78eP/UZVs=
@@ -32,6 +32,23 @@ func (p Plan) UsesNestia() bool {
32
32
  return p.Core || p.SDK
33
33
  }
34
34
 
35
+ // Kind reports which plugin family an entry belongs to: "core", "sdk", "typia",
36
+ // or "" when it is none of them.
37
+ func (e Entry) Kind() string {
38
+ return classify(e)
39
+ }
40
+
41
+ // BoolConfig reads a boolean option from an entry's resolved plugin config. The
42
+ // second result distinguishes an option explicitly set to false from one that is
43
+ // absent, which the tri-state options depend on.
44
+ func (e Entry) BoolConfig(key string) (bool, bool) {
45
+ if e.Config == nil {
46
+ return false, false
47
+ }
48
+ value, ok := e.Config[key].(bool)
49
+ return value, ok
50
+ }
51
+
35
52
  func ParsePlan(payload string) (Plan, error) {
36
53
  payload = strings.TrimSpace(payload)
37
54
  if payload == "" {
@@ -8,12 +8,9 @@ import (
8
8
  "io"
9
9
  "os"
10
10
  "path/filepath"
11
- "regexp"
12
11
  "time"
13
12
 
14
- shimast "github.com/microsoft/typescript-go/shim/ast"
15
13
  shimcompiler "github.com/microsoft/typescript-go/shim/compiler"
16
- shimscanner "github.com/microsoft/typescript-go/shim/scanner"
17
14
  "github.com/samchon/nestia/packages/core/native/plugin"
18
15
  "github.com/samchon/ttsc/packages/ttsc/driver"
19
16
  typiaadapter "github.com/samchon/typia/packages/typia/native/adapter"
@@ -75,6 +72,8 @@ func runBuild(args []string) int {
75
72
  return 2
76
73
  }
77
74
  defer prog.Close()
75
+ releaseTypiaRegistries := registerTypiaDefaultLibraryClassifier(prog)
76
+ defer releaseTypiaRegistries()
78
77
  if profile {
79
78
  started = time.Now()
80
79
  }
@@ -105,7 +104,7 @@ func runBuild(args []string) int {
105
104
  // AST-integration emit: typia's per-file transformer and @nestia/core's own
106
105
  // per-file transformer both run inside tsgo's emit pipeline (sharing the
107
106
  // EmitContext), so they return AST and tsgo's module-transform aliases the
108
- // namespace imports they inject. No text-splice RewriteSet, no cleanup pass.
107
+ // namespace imports they inject. This is the only emit path.
109
108
  transformDiags := []Diagnostic{}
110
109
  addDiagnostic := func(diag Diagnostic) {
111
110
  transformDiags = append(transformDiags, diag)
@@ -116,7 +115,7 @@ func runBuild(args []string) int {
116
115
  newPathsRewriter(prog).applyAll(prog.SourceFiles())
117
116
  profileBuildStep(profile, "paths-rewrite", started)
118
117
 
119
- typiaTransform := nestiaTypiaNodeTransform(prog, readTypiaPluginOptions(cwd, *tsconfigPath), addDiagnostic)
118
+ typiaTransform := nestiaTypiaNodeTransform(prog, readTypiaPluginOptions(plan), addDiagnostic)
120
119
  coreTransform := nestiaCoreNodeTransform(prog, plan, addDiagnostic)
121
120
 
122
121
  // Statically linked contributors (e.g. the @nestia/sdk OperationMetadata
@@ -286,95 +285,57 @@ func profileBuildStep(enabled bool, name string, started time.Time) {
286
285
  profileBuildDuration(enabled, name, time.Since(started))
287
286
  }
288
287
  }
289
-
290
- func profileBuildStepCount(enabled bool, name string, started time.Time, count int) {
291
- if enabled {
292
- fmt.Fprintf(stderr, "ttsc-nestia profile: %s=%s count=%d\n", name, time.Since(started), count)
293
- }
294
- }
295
-
296
288
  func profileBuildDuration(enabled bool, name string, elapsed time.Duration) {
297
289
  if enabled {
298
290
  fmt.Fprintf(stderr, "ttsc-nestia profile: %s=%s\n", name, elapsed)
299
291
  }
300
292
  }
301
293
 
302
- func NewDiagnostic(site typiaadapter.CallSite, message string) Diagnostic {
303
- line, column := 0, 0
304
- if site.File != nil && site.Call != nil {
305
- pos := site.Call.AsNode().Pos()
306
- if pos >= 0 {
307
- l, c := shimscanner.GetECMALineAndByteOffsetOfPosition(site.File, pos)
308
- line, column = l+1, c+1
294
+ // readTypiaPluginOptions takes typia's transform options from the resolved plugin
295
+ // payload ttsc hands this binary, not from the text of one tsconfig file.
296
+ //
297
+ // The file is the wrong source twice over. It is only the *entry* of an `extends`
298
+ // chain, so an option declared in a base was invisible — the compile then
299
+ // succeeded with a weaker validator than the project asked for, and nothing said
300
+ // so. And a text scan matches anywhere, so `"numeric": true` inside a comment or
301
+ // an unrelated object turned the option on for a project that never set it. ttsc
302
+ // has already resolved the whole chain by the time it builds --plugins-json.
303
+ //
304
+ // Options are read from every plugin entry, with typia's own entry winning, so a
305
+ // project that sets them on the composing @nestia/core entry keeps working.
306
+ func readTypiaPluginOptions(plan plugin.Plan) typiaadapter.PluginOptions {
307
+ options := typiaadapter.PluginOptions{}
308
+ apply := func(entry plugin.Entry) {
309
+ if value, ok := entry.BoolConfig("functional"); ok {
310
+ options.Functional = value
309
311
  }
310
- }
311
- return Diagnostic{
312
- File: site.FilePath,
313
- Line: line,
314
- Column: column,
315
- Code: "typia." + site.Module + "." + site.Method,
316
- Message: message,
317
- }
318
- }
319
-
320
- func typiaBuildRewriteSortKey(site typiaadapter.CallSite) int {
321
- node := site.Call.AsNode()
322
- if node == nil {
323
- return 0
324
- }
325
- insideDecorator := false
326
- classEnd := 0
327
- for current := node.Parent; current != nil; current = current.Parent {
328
- if current.Kind == NestiaCoreKindDecorator {
329
- insideDecorator = true
312
+ if value, ok := entry.BoolConfig("numeric"); ok {
313
+ options.Numeric = value
330
314
  }
331
- if current.Kind == shimast.KindClassDeclaration || current.Kind == shimast.KindClassExpression {
332
- classEnd = current.End()
333
- break
315
+ if value, ok := entry.BoolConfig("finite"); ok {
316
+ options.Finite = value
317
+ }
318
+ // `undefined` is tri-state: an explicit false must stay distinguishable
319
+ // from an absent option, so copy into a fresh variable rather than
320
+ // aliasing the closure's parameter.
321
+ if value, ok := entry.BoolConfig("undefined"); ok {
322
+ flag := value
323
+ options.Undefined = &flag
334
324
  }
335
325
  }
336
- if insideDecorator == false {
337
- return node.Pos()
338
- }
339
- if classEnd != 0 {
340
- return classEnd + node.Pos()
341
- }
342
- return node.Pos() + 1_000_000_000
343
- }
344
-
345
- func readTypiaPluginOptions(cwd, tsconfigPath string) typiaadapter.PluginOptions {
346
- path := tsconfigPath
347
- if !filepath.IsAbs(path) {
348
- path = filepath.Join(cwd, path)
349
- }
350
- data, err := os.ReadFile(path)
351
- if err != nil {
352
- return typiaadapter.PluginOptions{}
353
- }
354
- text := string(data)
355
- return typiaadapter.PluginOptions{
356
- Functional: typiaOptionFunctionalPattern.MatchString(text),
357
- Numeric: typiaOptionNumericPattern.MatchString(text),
358
- Finite: typiaOptionFinitePattern.MatchString(text),
359
- Undefined: readBooleanPluginOption(text, "undefined"),
326
+ for _, entry := range plan.Entries {
327
+ if entry.Kind() != "typia" {
328
+ apply(entry)
329
+ }
360
330
  }
361
- }
362
-
363
- func readBooleanPluginOption(text string, name string) *bool {
364
- matched := regexp.MustCompile(`(?s)"` + regexp.QuoteMeta(name) + `"\s*:\s*(true|false)`).FindStringSubmatch(text)
365
- if matched == nil {
366
- return nil
331
+ for _, entry := range plan.Entries {
332
+ if entry.Kind() == "typia" {
333
+ apply(entry)
334
+ }
367
335
  }
368
- value := matched[1] == "true"
369
- return &value
336
+ return options
370
337
  }
371
338
 
372
- var (
373
- typiaOptionFunctionalPattern = regexp.MustCompile(`(?s)"functional"\s*:\s*true`)
374
- typiaOptionNumericPattern = regexp.MustCompile(`(?s)"numeric"\s*:\s*true`)
375
- typiaOptionFinitePattern = regexp.MustCompile(`(?s)"finite"\s*:\s*true`)
376
- )
377
-
378
339
  func resolveCWD(label string, cwdOverride string) (string, bool) {
379
340
  if cwdOverride != "" {
380
341
  return cwdOverride, true
@@ -5,81 +5,21 @@ import (
5
5
  "github.com/samchon/ttsc/packages/ttsc/driver"
6
6
  )
7
7
 
8
- // BuildOutputRewriter patches emitted JavaScript after the core native
9
- // rewrites have been applied. Contributor packages register these from init().
10
- type BuildOutputRewriter struct {
11
- Len func() int
12
- Apply func(outputName string, text string) (string, error)
13
- }
14
-
15
- type buildOutputRewriteCollector func(*driver.Program, plugin.Plan) (*BuildOutputRewriter, []Diagnostic)
16
- type sourceRewriteCollector func(*driver.Program, plugin.Plan, string) (map[string][]SourceRewrite, []Diagnostic)
17
8
  type emitTransformCollector func(*driver.Program, plugin.Plan) (driver.PluginTransform, []Diagnostic)
18
9
 
19
- var buildOutputRewriteCollectors []buildOutputRewriteCollector
20
- var sourceRewriteCollectors []sourceRewriteCollector
21
10
  var emitTransformCollectors []emitTransformCollector
22
11
 
23
- // RegisterBuildOutputRewriteCollector registers a statically linked
24
- // contributor's emitted-JavaScript rewrite pass.
25
- func RegisterBuildOutputRewriteCollector(collector buildOutputRewriteCollector) {
26
- if collector != nil {
27
- buildOutputRewriteCollectors = append(buildOutputRewriteCollectors, collector)
28
- }
29
- }
30
-
31
- // RegisterSourceRewriteCollector registers a statically linked contributor's
32
- // TypeScript source-to-source rewrite pass.
33
- func RegisterSourceRewriteCollector(collector sourceRewriteCollector) {
34
- if collector != nil {
35
- sourceRewriteCollectors = append(sourceRewriteCollectors, collector)
36
- }
37
- }
38
-
39
12
  // RegisterEmitTransformCollector registers a statically linked contributor's
40
- // emit-phase AST transformer. The `transform` subcommand runs these inside the
41
- // shared EmitContext alongside the typia and core node transforms, so a linked
42
- // contributor (e.g. @nestia/sdk) participates in the node-path source-to-source
43
- // output the same way its source-rewrite collector did on the legacy text path.
13
+ // emit-phase AST transformer. The `build` and `transform` subcommands run these
14
+ // inside the shared EmitContext alongside the typia and core node transforms, so
15
+ // a linked contributor (e.g. @nestia/sdk) participates in the same emit pass
16
+ // rather than patching its output afterwards.
44
17
  func RegisterEmitTransformCollector(collector emitTransformCollector) {
45
18
  if collector != nil {
46
19
  emitTransformCollectors = append(emitTransformCollectors, collector)
47
20
  }
48
21
  }
49
22
 
50
- func collectContributorBuildOutputRewriters(
51
- prog *driver.Program,
52
- plan plugin.Plan,
53
- ) ([]BuildOutputRewriter, []Diagnostic) {
54
- output := []BuildOutputRewriter{}
55
- diagnostics := []Diagnostic{}
56
- for _, collector := range buildOutputRewriteCollectors {
57
- rewriter, diags := collector(prog, plan)
58
- diagnostics = append(diagnostics, diags...)
59
- if rewriter != nil && rewriter.Apply != nil {
60
- output = append(output, *rewriter)
61
- }
62
- }
63
- return output, diagnostics
64
- }
65
-
66
- func collectContributorSourceRewriteMap(
67
- prog *driver.Program,
68
- plan plugin.Plan,
69
- onlyFile string,
70
- ) (map[string][]SourceRewrite, []Diagnostic) {
71
- output := map[string][]SourceRewrite{}
72
- diagnostics := []Diagnostic{}
73
- for _, collector := range sourceRewriteCollectors {
74
- rewrites, diags := collector(prog, plan, onlyFile)
75
- diagnostics = append(diagnostics, diags...)
76
- for file, entries := range rewrites {
77
- output[file] = append(output[file], entries...)
78
- }
79
- }
80
- return output, diagnostics
81
- }
82
-
83
23
  func collectContributorEmitTransforms(
84
24
  prog *driver.Program,
85
25
  plan plugin.Plan,