@alloy-js/core 0.3.0 → 0.5.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 (147) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/src/binder.d.ts +43 -18
  3. package/dist/src/binder.d.ts.map +1 -1
  4. package/dist/src/binder.js +120 -16
  5. package/dist/src/binder.js.map +1 -1
  6. package/dist/src/components/Declaration.d.ts +2 -2
  7. package/dist/src/components/Declaration.d.ts.map +1 -1
  8. package/dist/src/components/Declaration.js.map +1 -1
  9. package/dist/src/components/Indent.d.ts +2 -2
  10. package/dist/src/components/Indent.d.ts.map +1 -1
  11. package/dist/src/components/Indent.js.map +1 -1
  12. package/dist/src/components/MemberDeclaration.d.ts +2 -2
  13. package/dist/src/components/MemberDeclaration.d.ts.map +1 -1
  14. package/dist/src/components/MemberDeclaration.js.map +1 -1
  15. package/dist/src/components/MemberName.d.ts +1 -1
  16. package/dist/src/components/MemberName.d.ts.map +1 -1
  17. package/dist/src/components/MemberScope.d.ts +2 -2
  18. package/dist/src/components/MemberScope.d.ts.map +1 -1
  19. package/dist/src/components/Name.d.ts +1 -1
  20. package/dist/src/components/Name.d.ts.map +1 -1
  21. package/dist/src/components/Output.d.ts +2 -2
  22. package/dist/src/components/Output.d.ts.map +1 -1
  23. package/dist/src/components/Output.js +6 -2
  24. package/dist/src/components/Output.js.map +1 -1
  25. package/dist/src/components/Scope.d.ts +2 -2
  26. package/dist/src/components/Scope.d.ts.map +1 -1
  27. package/dist/src/components/Scope.js.map +1 -1
  28. package/dist/src/components/SourceDirectory.d.ts +3 -3
  29. package/dist/src/components/SourceDirectory.d.ts.map +1 -1
  30. package/dist/src/components/SourceDirectory.js +1 -1
  31. package/dist/src/components/SourceDirectory.js.map +1 -1
  32. package/dist/src/components/SourceFile.d.ts +3 -3
  33. package/dist/src/components/SourceFile.d.ts.map +1 -1
  34. package/dist/src/components/SourceFile.js +1 -1
  35. package/dist/src/components/SourceFile.js.map +1 -1
  36. package/dist/src/components/stc/index.d.ts +18 -18
  37. package/dist/src/context/assignment.d.ts.map +1 -1
  38. package/dist/src/context/assignment.js +2 -2
  39. package/dist/src/context/assignment.js.map +1 -1
  40. package/dist/src/context/binder.d.ts.map +1 -1
  41. package/dist/src/context/binder.js +2 -2
  42. package/dist/src/context/binder.js.map +1 -1
  43. package/dist/src/context/declaration.d.ts.map +1 -1
  44. package/dist/src/context/declaration.js +2 -2
  45. package/dist/src/context/declaration.js.map +1 -1
  46. package/dist/src/context/indent.d.ts.map +1 -1
  47. package/dist/src/context/indent.js +2 -2
  48. package/dist/src/context/indent.js.map +1 -1
  49. package/dist/src/context/member-declaration.d.ts +1 -0
  50. package/dist/src/context/member-declaration.d.ts.map +1 -1
  51. package/dist/src/context/member-declaration.js +5 -2
  52. package/dist/src/context/member-declaration.js.map +1 -1
  53. package/dist/src/context/member-scope.d.ts.map +1 -1
  54. package/dist/src/context/member-scope.js +2 -2
  55. package/dist/src/context/member-scope.js.map +1 -1
  56. package/dist/src/context/name-policy.d.ts.map +1 -1
  57. package/dist/src/context/name-policy.js +2 -2
  58. package/dist/src/context/name-policy.js.map +1 -1
  59. package/dist/src/context/scope.d.ts.map +1 -1
  60. package/dist/src/context/scope.js +2 -2
  61. package/dist/src/context/scope.js.map +1 -1
  62. package/dist/src/context/source-directory.d.ts.map +1 -1
  63. package/dist/src/context/source-directory.js +2 -2
  64. package/dist/src/context/source-directory.js.map +1 -1
  65. package/dist/src/context/source-file.d.ts.map +1 -1
  66. package/dist/src/context/source-file.js +2 -2
  67. package/dist/src/context/source-file.js.map +1 -1
  68. package/dist/src/context.d.ts +5 -2
  69. package/dist/src/context.d.ts.map +1 -1
  70. package/dist/src/context.js +11 -4
  71. package/dist/src/context.js.map +1 -1
  72. package/dist/src/debug.d.ts +14 -0
  73. package/dist/src/debug.d.ts.map +1 -0
  74. package/dist/src/debug.js +163 -0
  75. package/dist/src/debug.js.map +1 -0
  76. package/dist/src/index.d.ts +3 -1
  77. package/dist/src/index.d.ts.map +1 -1
  78. package/dist/src/index.js +3 -1
  79. package/dist/src/index.js.map +1 -1
  80. package/dist/src/jsx-runtime.d.ts +27 -4
  81. package/dist/src/jsx-runtime.d.ts.map +1 -1
  82. package/dist/src/jsx-runtime.js +20 -7
  83. package/dist/src/jsx-runtime.js.map +1 -1
  84. package/dist/src/render.d.ts +1 -1
  85. package/dist/src/render.d.ts.map +1 -1
  86. package/dist/src/render.js +15 -13
  87. package/dist/src/render.js.map +1 -1
  88. package/dist/src/slot.d.ts +15 -0
  89. package/dist/src/slot.d.ts.map +1 -0
  90. package/dist/src/slot.js +51 -0
  91. package/dist/src/slot.js.map +1 -0
  92. package/dist/src/tap.d.ts +19 -0
  93. package/dist/src/tap.d.ts.map +1 -0
  94. package/dist/src/tap.js +39 -0
  95. package/dist/src/tap.js.map +1 -0
  96. package/dist/src/utils.d.ts +1 -6
  97. package/dist/src/utils.d.ts.map +1 -1
  98. package/dist/src/utils.js +1 -34
  99. package/dist/src/utils.js.map +1 -1
  100. package/dist/src/write-output.browser.d.ts +2 -0
  101. package/dist/src/write-output.browser.d.ts.map +1 -0
  102. package/dist/src/write-output.browser.js +4 -0
  103. package/dist/src/write-output.browser.js.map +1 -0
  104. package/dist/src/write-output.d.ts +7 -0
  105. package/dist/src/write-output.d.ts.map +1 -0
  106. package/dist/src/write-output.js +34 -0
  107. package/dist/src/write-output.js.map +1 -0
  108. package/dist/test/components/slot.test.d.ts +2 -0
  109. package/dist/test/components/slot.test.d.ts.map +1 -0
  110. package/dist/testing/render.d.ts +1 -1
  111. package/dist/testing/render.d.ts.map +1 -1
  112. package/dist/tsconfig.tsbuildinfo +1 -1
  113. package/package.json +10 -6
  114. package/src/binder.ts +214 -50
  115. package/src/components/Declaration.tsx +1 -1
  116. package/src/components/Indent.tsx +1 -1
  117. package/src/components/MemberDeclaration.tsx +1 -1
  118. package/src/components/MemberScope.tsx +1 -1
  119. package/src/components/Output.tsx +4 -2
  120. package/src/components/Scope.tsx +1 -1
  121. package/src/components/SourceDirectory.tsx +2 -2
  122. package/src/components/SourceFile.tsx +2 -6
  123. package/src/context/assignment.ts +6 -2
  124. package/src/context/binder.ts +7 -2
  125. package/src/context/declaration.ts +2 -2
  126. package/src/context/indent.ts +13 -6
  127. package/src/context/member-declaration.ts +10 -2
  128. package/src/context/member-scope.ts +6 -2
  129. package/src/context/name-policy.ts +6 -2
  130. package/src/context/scope.ts +7 -2
  131. package/src/context/source-directory.ts +2 -2
  132. package/src/context/source-file.ts +2 -2
  133. package/src/context.ts +15 -4
  134. package/src/debug.ts +209 -0
  135. package/src/index.ts +3 -1
  136. package/src/jsx-runtime.ts +46 -11
  137. package/src/render.ts +21 -19
  138. package/src/slot.ts +90 -0
  139. package/src/tap.ts +69 -0
  140. package/src/utils.ts +2 -34
  141. package/src/write-output.browser.ts +3 -0
  142. package/src/write-output.ts +33 -0
  143. package/temp/api.json +1848 -203
  144. package/test/components/slot.test.tsx +172 -0
  145. package/test/rendering/basic.test.tsx +1 -1
  146. package/test/symbols.test.ts +161 -3
  147. package/testing/render.ts +1 -1
@@ -0,0 +1,19 @@
1
+ import { ShallowRef } from "@vue/reactivity";
2
+ import { OutputScope, OutputSymbol } from "./binder.js";
3
+ import { SourceFileContext } from "./context/source-file.js";
4
+ import { ComponentDefinition } from "./jsx-runtime.js";
5
+ export interface Tap<T> extends ComponentDefinition {
6
+ ref: ShallowRef<T | undefined>;
7
+ }
8
+ export interface Tapper<T> {
9
+ (): T | undefined;
10
+ }
11
+ export interface Handler<T> {
12
+ (value: T): void;
13
+ }
14
+ export declare function createTap<T = unknown>(tapper: Tapper<T>, handler?: Handler<T>): Tap<T>;
15
+ export declare function createDeclarationTap<TSymbol extends OutputSymbol = OutputSymbol>(handler?: Handler<TSymbol>): Tap<TSymbol>;
16
+ export declare function createMemberTap<TSymbol extends OutputSymbol = OutputSymbol>(handler?: Handler<TSymbol>): Tap<TSymbol>;
17
+ export declare function createScopeTap<TScope extends OutputScope = OutputScope>(handler?: Handler<TScope>): Tap<TScope>;
18
+ export declare function createSourceFileTap(handler?: Handler<SourceFileContext>): Tap<SourceFileContext>;
19
+ //# sourceMappingURL=tap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tap.d.ts","sourceRoot":"","sources":["../../src/tap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAc,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAKxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,MAAM,WAAW,GAAG,CAAC,CAAC,CAAE,SAAQ,mBAAmB;IACjD,GAAG,EAAE,UAAU,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,MAAM,CAAC,CAAC;IACvB,IAAI,CAAC,GAAG,SAAS,CAAC;CACnB;AAED,MAAM,WAAW,OAAO,CAAC,CAAC;IACxB,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;CAClB;AAED,wBAAgB,SAAS,CAAC,CAAC,GAAG,OAAO,EACnC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EACjB,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,GACnB,GAAG,CAAC,CAAC,CAAC,CAcR;AAED,wBAAgB,oBAAoB,CAClC,OAAO,SAAS,YAAY,GAAG,YAAY,EAC3C,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,gBAI3B;AAED,wBAAgB,eAAe,CAAC,OAAO,SAAS,YAAY,GAAG,YAAY,EACzE,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,gBAK3B;AAED,wBAAgB,cAAc,CAAC,MAAM,SAAS,WAAW,GAAG,WAAW,EACrE,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,eAK1B;AAED,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,0BAIvE"}
@@ -0,0 +1,39 @@
1
+ import { shallowRef } from "@vue/reactivity";
2
+ import { useContext } from "./context.js";
3
+ import { DeclarationContext } from "./context/declaration.js";
4
+ import { MemberDeclarationContext } from "./context/member-declaration.js";
5
+ import { useScope } from "./context/scope.js";
6
+ import { SourceFileContext } from "./context/source-file.js";
7
+ export function createTap(tapper, handler) {
8
+ const signal = shallowRef(undefined);
9
+ const fn = () => {
10
+ signal.value = tapper();
11
+ if (handler && signal.value !== undefined) {
12
+ handler(signal.value);
13
+ }
14
+ return "";
15
+ };
16
+ fn.ref = signal;
17
+ return fn;
18
+ }
19
+ export function createDeclarationTap(handler) {
20
+ return createTap(() => {
21
+ return useContext(DeclarationContext);
22
+ }, handler);
23
+ }
24
+ export function createMemberTap(handler) {
25
+ return createTap(() => {
26
+ return useContext(MemberDeclarationContext);
27
+ }, handler);
28
+ }
29
+ export function createScopeTap(handler) {
30
+ return createTap(() => {
31
+ return useScope();
32
+ }, handler);
33
+ }
34
+ export function createSourceFileTap(handler) {
35
+ return createTap(() => {
36
+ return useContext(SourceFileContext);
37
+ }, handler);
38
+ }
39
+ //# sourceMappingURL=tap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tap.js","names":["shallowRef","useContext","DeclarationContext","MemberDeclarationContext","useScope","SourceFileContext","createTap","tapper","handler","signal","undefined","fn","value","ref","createDeclarationTap","createMemberTap","createScopeTap","createSourceFileTap"],"sources":["../../src/tap.ts"],"sourcesContent":[null],"mappings":"AAAA,SAAqBA,UAAU,QAAQ,iBAAiB;AAExD,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,kBAAkB,QAAQ,0BAA0B;AAC7D,SAASC,wBAAwB,QAAQ,iCAAiC;AAC1E,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,iBAAiB,QAAQ,0BAA0B;AAe5D,OAAO,SAASC,SAASA,CACvBC,MAAiB,EACjBC,OAAoB,EACZ;EACR,MAAMC,MAAM,GAAGT,UAAU,CAAgBU,SAAS,CAAC;EACnD,MAAMC,EAAE,GAAGA,CAAA,KAAM;IACfF,MAAM,CAACG,KAAK,GAAGL,MAAM,CAAC,CAAC;IACvB,IAAIC,OAAO,IAAIC,MAAM,CAACG,KAAK,KAAKF,SAAS,EAAE;MACzCF,OAAO,CAACC,MAAM,CAACG,KAAK,CAAC;IACvB;IAEA,OAAO,EAAE;EACX,CAAC;EAEDD,EAAE,CAACE,GAAG,GAAGJ,MAAM;EAEf,OAAOE,EAAE;AACX;AAEA,OAAO,SAASG,oBAAoBA,CAElCN,OAA0B,EAAE;EAC5B,OAAOF,SAAS,CAAU,MAAM;IAC9B,OAAOL,UAAU,CAACC,kBAAkB,CAAC;EACvC,CAAC,EAAEM,OAAO,CAAC;AACb;AAEA,OAAO,SAASO,eAAeA,CAC7BP,OAA0B,EAC1B;EACA,OAAOF,SAAS,CAAU,MAAM;IAC9B,OAAOL,UAAU,CAACE,wBAAwB,CAAC;EAC7C,CAAC,EAAEK,OAAO,CAAC;AACb;AAEA,OAAO,SAASQ,cAAcA,CAC5BR,OAAyB,EACzB;EACA,OAAOF,SAAS,CAAS,MAAM;IAC7B,OAAOF,QAAQ,CAAC,CAAC;EACnB,CAAC,EAAEI,OAAO,CAAC;AACb;AAEA,OAAO,SAASS,mBAAmBA,CAACT,OAAoC,EAAE;EACxE,OAAOF,SAAS,CAAC,MAAM;IACrB,OAAOL,UAAU,CAACI,iBAAiB,CAAC;EACtC,CAAC,EAAEG,OAAO,CAAC;AACb","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { Child, Children, ComponentCreator, ComponentDefinition } from "@alloy-js/core/jsx-runtime";
1
+ import { Child, Children, ComponentCreator, ComponentDefinition } from "./jsx-runtime.js";
2
2
  import { OutputDirectory, OutputFile } from "./render.js";
3
3
  export interface JoinOptions {
4
4
  /**
@@ -72,9 +72,4 @@ export interface OutputVisitor {
72
72
  * @param visitor - The visitor to call for each file and directory.
73
73
  */
74
74
  export declare function traverseOutput(sourceDirectory: OutputDirectory, visitor: OutputVisitor): void;
75
- /**
76
- * Write the output from {@link render} to the file system.
77
- *
78
- */
79
- export declare function writeOutput(output: OutputDirectory, basePath?: string): void;
80
75
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,QAAQ,EACR,gBAAgB,EAChB,mBAAmB,EAGpB,MAAM,4BAA4B,CAAC;AAKpC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAU,MAAM,aAAa,CAAC;AAElE,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAC7B,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EACd,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,EAC3B,OAAO,CAAC,EAAE,WAAW,GACpB,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC;AAClB;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAC1B,GAAG,EAAE,CAAC,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC,EAC9B,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,EACnB,OAAO,CAAC,EAAE,WAAW,GACpB,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC;AAwClB;;;;;;GAMG;AACH,wBAAgB,IAAI,CAAC,CAAC,EACpB,GAAG,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,EACtB,OAAO,GAAE,WAAgB,GACxB,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,CAmBhB;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAe3D;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,QAAQ,GAAG,KAAK,EAAE,CASzD;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,MAAM,uEAQ5D;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,KAAK,EAAE,WAEpD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,gBAAgB,CAEpE;AAED,wBAAgB,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC,CAAC,aAEtD,OAAO,SAAS,CAAC,GAAG,EAAE,GAC7B,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAC5C,CAAC,KAAK,EAAE,CAAC,CAAC;mBAIE,oBAAoB,oBACZ,QAAQ,EAAE,GAC3B,gBAAgB,CAAC,CAAC,CAAC;0BACA,QAAQ,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC;EAiC3D;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,cAAc,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI,CAAC;IACjD,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;CACnC;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,aAAa,QAUvB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,eAAe,EAAE,QAAQ,GAAE,MAAW,QAwBzE"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,EACL,QAAQ,EACR,gBAAgB,EAChB,mBAAmB,EAGpB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,UAAU,EAAU,MAAM,aAAa,CAAC;AAElE,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAC7B,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EACd,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,EAC3B,OAAO,CAAC,EAAE,WAAW,GACpB,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC;AAClB;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAC1B,GAAG,EAAE,CAAC,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC,EAC9B,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,EACnB,OAAO,CAAC,EAAE,WAAW,GACpB,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC;AAwClB;;;;;;GAMG;AACH,wBAAgB,IAAI,CAAC,CAAC,EACpB,GAAG,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,EACtB,OAAO,GAAE,WAAgB,GACxB,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,CAmBhB;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAe3D;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,QAAQ,GAAG,KAAK,EAAE,CASzD;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,MAAM,uEAQ5D;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,KAAK,EAAE,WAEpD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,gBAAgB,CAEpE;AAED,wBAAgB,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC,CAAC,aAEtD,OAAO,SAAS,CAAC,GAAG,EAAE,GAC7B,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAC5C,CAAC,KAAK,EAAE,CAAC,CAAC;mBAIE,oBAAoB,oBACZ,QAAQ,EAAE,GAC3B,gBAAgB,CAAC,CAAC,CAAC;0BACA,QAAQ,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC;EAiC3D;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,cAAc,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI,CAAC;IACjD,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;CACnC;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,aAAa,QAUvB"}
package/dist/src/utils.js CHANGED
@@ -1,7 +1,5 @@
1
- import { isComponentCreator, memo } from "@alloy-js/core/jsx-runtime";
2
- import { mkdirSync, statSync, writeFileSync } from "node:fs";
3
- import { relative, resolve } from "pathe";
4
1
  import { code } from "./code.js";
2
+ import { isComponentCreator, memo } from "./jsx-runtime.js";
5
3
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
6
4
 
7
5
  const defaultJoinOptions = {
@@ -185,35 +183,4 @@ export function traverseOutput(sourceDirectory, visitor) {
185
183
  }
186
184
  }
187
185
  }
188
-
189
- /**
190
- * Write the output from {@link render} to the file system.
191
- *
192
- */
193
- export function writeOutput(output, basePath = "") {
194
- traverseOutput(output, {
195
- visitDirectory(directory) {
196
- const path = resolve(basePath, directory.path);
197
- if (statSync(path)) {
198
- return;
199
- }
200
- // eslint-disable-next-line no-console
201
- console.log("create", relative(process.cwd(), path));
202
- mkdirSync(path, {
203
- recursive: true
204
- });
205
- },
206
- visitFile(file) {
207
- const path = resolve(basePath, file.path);
208
- if (statSync(path)) {
209
- // eslint-disable-next-line no-console
210
- console.log("overwrite", relative(process.cwd(), path));
211
- } else {
212
- // eslint-disable-next-line no-console
213
- console.log("create", relative(process.cwd(), path));
214
- }
215
- writeFileSync(path, file.contents);
216
- }
217
- });
218
- }
219
186
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["isComponentCreator","memo","mkdirSync","statSync","writeFileSync","relative","resolve","code","defaultJoinOptions","joiner","ender","mapJoin","src","cb","rawOptions","options","mapped","next","Array","from","isArray","index","item","entries","push","length","key","value","join","mergedOptions","joined","children","fn","collectChildren","map","flat","childrenArray","c","undefined","findKeyedChild","tag","child","isKeyedChild","findUnkeyedChildren","filter","stc","Component","args","component","props","template","substitutions","propsWithChildren","traverseOutput","sourceDirectory","visitor","visitDirectory","contents","kind","visitFile","writeOutput","output","basePath","directory","path","console","log","process","cwd","recursive","file"],"sources":["../../src/utils.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"utils.js","names":["code","isComponentCreator","memo","defaultJoinOptions","joiner","ender","mapJoin","src","cb","rawOptions","options","mapped","next","Array","from","isArray","index","item","entries","push","length","key","value","join","mergedOptions","joined","children","fn","collectChildren","map","flat","childrenArray","c","undefined","findKeyedChild","tag","child","isKeyedChild","findUnkeyedChildren","filter","stc","Component","args","component","props","template","substitutions","propsWithChildren","traverseOutput","sourceDirectory","visitor","visitDirectory","contents","kind","visitFile"],"sources":["../../src/utils.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export declare function writeOutput(output: any, basePath?: string): void;
2
+ //# sourceMappingURL=write-output.browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-output.browser.d.ts","sourceRoot":"","sources":["../../src/write-output.browser.ts"],"names":[],"mappings":"AAAA,wBAAgB,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,GAAE,MAAW,QAE7D"}
@@ -0,0 +1,4 @@
1
+ export function writeOutput(output, basePath = "") {
2
+ console.warn("writeOutput is not supported in a browser environment.");
3
+ }
4
+ //# sourceMappingURL=write-output.browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-output.browser.js","names":["writeOutput","output","basePath","console","warn"],"sources":["../../src/write-output.browser.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,SAASA,WAAWA,CAACC,MAAW,EAAEC,QAAgB,GAAG,EAAE,EAAE;EAC9DC,OAAO,CAACC,IAAI,CAAC,wDAAwD,CAAC;AACxE","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ import { OutputDirectory } from "./render.js";
2
+ /**
3
+ * Write the output from {@link render} to the file system.
4
+ *
5
+ */
6
+ export declare function writeOutput(output: OutputDirectory, basePath?: string): void;
7
+ //# sourceMappingURL=write-output.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-output.d.ts","sourceRoot":"","sources":["../../src/write-output.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,eAAe,EAAE,QAAQ,GAAE,MAAW,QAwBzE"}
@@ -0,0 +1,34 @@
1
+ import { mkdirSync, statSync, writeFileSync } from "node:fs";
2
+ import { relative, resolve } from "pathe";
3
+ import { traverseOutput } from "./utils.js";
4
+ /**
5
+ * Write the output from {@link render} to the file system.
6
+ *
7
+ */
8
+ export function writeOutput(output, basePath = "") {
9
+ traverseOutput(output, {
10
+ visitDirectory(directory) {
11
+ const path = resolve(basePath, directory.path);
12
+ if (statSync(path)) {
13
+ return;
14
+ }
15
+ // eslint-disable-next-line no-console
16
+ console.log("create", relative(process.cwd(), path));
17
+ mkdirSync(path, {
18
+ recursive: true
19
+ });
20
+ },
21
+ visitFile(file) {
22
+ const path = resolve(basePath, file.path);
23
+ if (statSync(path)) {
24
+ // eslint-disable-next-line no-console
25
+ console.log("overwrite", relative(process.cwd(), path));
26
+ } else {
27
+ // eslint-disable-next-line no-console
28
+ console.log("create", relative(process.cwd(), path));
29
+ }
30
+ writeFileSync(path, file.contents);
31
+ }
32
+ });
33
+ }
34
+ //# sourceMappingURL=write-output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-output.js","names":["mkdirSync","statSync","writeFileSync","relative","resolve","traverseOutput","writeOutput","output","basePath","visitDirectory","directory","path","console","log","process","cwd","recursive","visitFile","file","contents"],"sources":["../../src/write-output.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAS,EAAEC,QAAQ,EAAEC,aAAa,QAAQ,SAAS;AAC5D,SAASC,QAAQ,EAAEC,OAAO,QAAQ,OAAO;AAEzC,SAASC,cAAc,QAAQ,YAAY;AAC3C;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAACC,MAAuB,EAAEC,QAAgB,GAAG,EAAE,EAAE;EAC1EH,cAAc,CAACE,MAAM,EAAE;IACrBE,cAAcA,CAACC,SAAS,EAAE;MACxB,MAAMC,IAAI,GAAGP,OAAO,CAACI,QAAQ,EAAEE,SAAS,CAACC,IAAI,CAAC;MAC9C,IAAIV,QAAQ,CAACU,IAAI,CAAC,EAAE;QAClB;MACF;MACA;MACAC,OAAO,CAACC,GAAG,CAAC,QAAQ,EAAEV,QAAQ,CAACW,OAAO,CAACC,GAAG,CAAC,CAAC,EAAEJ,IAAI,CAAC,CAAC;MACpDX,SAAS,CAACW,IAAI,EAAE;QAAEK,SAAS,EAAE;MAAK,CAAC,CAAC;IACtC,CAAC;IACDC,SAASA,CAACC,IAAI,EAAE;MACd,MAAMP,IAAI,GAAGP,OAAO,CAACI,QAAQ,EAAEU,IAAI,CAACP,IAAI,CAAC;MACzC,IAAIV,QAAQ,CAACU,IAAI,CAAC,EAAE;QAClB;QACAC,OAAO,CAACC,GAAG,CAAC,WAAW,EAAEV,QAAQ,CAACW,OAAO,CAACC,GAAG,CAAC,CAAC,EAAEJ,IAAI,CAAC,CAAC;MACzD,CAAC,MAAM;QACL;QACAC,OAAO,CAACC,GAAG,CAAC,QAAQ,EAAEV,QAAQ,CAACW,OAAO,CAACC,GAAG,CAAC,CAAC,EAAEJ,IAAI,CAAC,CAAC;MACtD;MAEAT,aAAa,CAACS,IAAI,EAAEO,IAAI,CAACC,QAAQ,CAAC;IACpC;EACF,CAAC,CAAC;AACJ","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import "../../testing/extend-expect.js";
2
+ //# sourceMappingURL=slot.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slot.test.d.ts","sourceRoot":"","sources":["../../../test/components/slot.test.tsx"],"names":[],"mappings":"AAcA,OAAO,gCAAgC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { RenderTextTree } from "@alloy-js/core";
2
- import { Children } from "@alloy-js/core/jsx-runtime";
2
+ import { Children } from "../src/jsx-runtime.js";
3
3
  export declare function printTree(tree: RenderTextTree): any;
4
4
  export declare function renderToString(element: Children): any;
5
5
  export declare function d(strings: TemplateStringsArray, ...values: any[]): string;
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../testing/render.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAc,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,wBAAgB,SAAS,CAAC,IAAI,EAAE,cAAc,OAE7C;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,QAAQ,OAE/C;AAED,wBAAgB,CAAC,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAQzE;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAe1C"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../testing/render.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAc,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,wBAAgB,SAAS,CAAC,IAAI,EAAE,cAAc,OAE7C;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,QAAQ,OAE/C;AAED,wBAAgB,CAAC,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAQzE;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAe1C"}