@elench/testkit 0.1.113 → 0.1.115

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 (196) hide show
  1. package/lib/cli/assistant/app.mjs +4 -2
  2. package/lib/cli/assistant/session.mjs +5 -1
  3. package/lib/cli/assistant/state.mjs +1 -2
  4. package/lib/cli/components/blocks/run-tree.mjs +7 -2
  5. package/lib/cli/components/hooks/use-element-layout.mjs +63 -0
  6. package/lib/cli/components/hooks/use-spinner-frame.mjs +26 -0
  7. package/lib/playwright/index.d.ts +1 -0
  8. package/lib/playwright/index.mjs +1 -0
  9. package/lib/runner/default-runtime-runner.mjs +5 -28
  10. package/lib/runner/lifecycle.mjs +2 -51
  11. package/lib/runner/managed-processes.mjs +2 -1
  12. package/lib/runner/playwright-config.mjs +13 -1
  13. package/lib/runner/playwright-runner.mjs +85 -15
  14. package/lib/runner/processes.mjs +59 -3
  15. package/lib/runner/subprocess.mjs +155 -0
  16. package/lib/shared/file-timeout.mjs +1 -1
  17. package/lib/ui/index.d.ts +2 -0
  18. package/lib/ui/index.mjs +1 -0
  19. package/node_modules/@alcalzone/ansi-tokenize/README.md +0 -5
  20. package/node_modules/@alcalzone/ansi-tokenize/build/ansiCodes.d.ts +8 -0
  21. package/node_modules/@alcalzone/ansi-tokenize/build/ansiCodes.js +10 -8
  22. package/node_modules/@alcalzone/ansi-tokenize/build/ansiCodes.js.map +1 -1
  23. package/node_modules/@alcalzone/ansi-tokenize/build/tokenize.d.ts +1 -5
  24. package/node_modules/@alcalzone/ansi-tokenize/build/tokenize.js +9 -45
  25. package/node_modules/@alcalzone/ansi-tokenize/build/tokenize.js.map +1 -1
  26. package/node_modules/@alcalzone/ansi-tokenize/package.json +1 -1
  27. package/node_modules/@elench/next-analysis/package.json +1 -1
  28. package/node_modules/@elench/testkit-bridge/package.json +2 -2
  29. package/node_modules/@elench/testkit-protocol/package.json +1 -1
  30. package/node_modules/@elench/ts-analysis/package.json +1 -1
  31. package/node_modules/cli-boxes/index.d.ts +95 -90
  32. package/node_modules/cli-boxes/index.js +5 -2
  33. package/node_modules/cli-boxes/package.json +6 -13
  34. package/node_modules/cli-boxes/readme.md +15 -3
  35. package/node_modules/cli-truncate/index.d.ts +1 -1
  36. package/node_modules/cli-truncate/package.json +4 -4
  37. package/node_modules/cli-truncate/readme.md +1 -0
  38. package/node_modules/ink/build/apply-styles.js +175 -0
  39. package/node_modules/ink/build/build-layout.js +77 -0
  40. package/node_modules/ink/build/calculate-wrapped-text.js +53 -0
  41. package/node_modules/ink/build/components/App.d.ts +1 -4
  42. package/node_modules/ink/build/components/App.js +22 -142
  43. package/node_modules/ink/build/components/App.js.map +1 -1
  44. package/node_modules/ink/build/components/AppContext.d.ts +3 -23
  45. package/node_modules/ink/build/components/AppContext.js +4 -7
  46. package/node_modules/ink/build/components/AppContext.js.map +1 -1
  47. package/node_modules/ink/build/components/Box.d.ts +3 -16
  48. package/node_modules/ink/build/components/Color.js +62 -0
  49. package/node_modules/ink/build/components/Cursor.d.ts +83 -0
  50. package/node_modules/ink/build/components/Cursor.js +53 -0
  51. package/node_modules/ink/build/components/Cursor.js.map +1 -0
  52. package/node_modules/ink/build/components/ErrorBoundary.d.ts +2 -2
  53. package/node_modules/ink/build/components/ErrorOverview.js +6 -6
  54. package/node_modules/ink/build/components/ErrorOverview.js.map +1 -1
  55. package/node_modules/ink/build/components/Static.js.map +1 -1
  56. package/node_modules/ink/build/components/StdinContext.d.ts +1 -7
  57. package/node_modules/ink/build/components/StdinContext.js +0 -1
  58. package/node_modules/ink/build/components/StdinContext.js.map +1 -1
  59. package/node_modules/ink/build/components/Text.d.ts +1 -1
  60. package/node_modules/ink/build/components/Text.js +1 -1
  61. package/node_modules/ink/build/components/Text.js.map +1 -1
  62. package/node_modules/ink/build/components/Transform.d.ts +1 -1
  63. package/node_modules/ink/build/devtools-window-polyfill.js +4 -7
  64. package/node_modules/ink/build/devtools-window-polyfill.js.map +1 -1
  65. package/node_modules/ink/build/devtools.js +6 -31
  66. package/node_modules/ink/build/devtools.js.map +1 -1
  67. package/node_modules/ink/build/dom.d.ts +1 -5
  68. package/node_modules/ink/build/dom.js +1 -20
  69. package/node_modules/ink/build/dom.js.map +1 -1
  70. package/node_modules/ink/build/experimental/apply-style.js +140 -0
  71. package/node_modules/ink/build/experimental/dom.js +123 -0
  72. package/node_modules/ink/build/experimental/output.js +91 -0
  73. package/node_modules/ink/build/experimental/reconciler.js +141 -0
  74. package/node_modules/ink/build/experimental/renderer.js +81 -0
  75. package/node_modules/ink/build/hooks/use-app.d.ts +1 -1
  76. package/node_modules/ink/build/hooks/use-app.js +1 -1
  77. package/node_modules/ink/build/hooks/use-cursor.d.ts +1 -1
  78. package/node_modules/ink/build/hooks/use-cursor.js +1 -1
  79. package/node_modules/ink/build/hooks/use-focus-manager.d.ts +2 -17
  80. package/node_modules/ink/build/hooks/use-focus-manager.js +1 -2
  81. package/node_modules/ink/build/hooks/use-focus-manager.js.map +1 -1
  82. package/node_modules/ink/build/hooks/use-focus.d.ts +1 -2
  83. package/node_modules/ink/build/hooks/use-focus.js +4 -5
  84. package/node_modules/ink/build/hooks/use-focus.js.map +1 -1
  85. package/node_modules/ink/build/hooks/use-input.d.ts +1 -2
  86. package/node_modules/ink/build/hooks/use-input.js +80 -82
  87. package/node_modules/ink/build/hooks/use-input.js.map +1 -1
  88. package/node_modules/ink/build/hooks/use-is-screen-reader-enabled.d.ts +1 -2
  89. package/node_modules/ink/build/hooks/use-is-screen-reader-enabled.js +1 -2
  90. package/node_modules/ink/build/hooks/use-is-screen-reader-enabled.js.map +1 -1
  91. package/node_modules/ink/build/hooks/use-stderr.d.ts +1 -1
  92. package/node_modules/ink/build/hooks/use-stderr.js +1 -1
  93. package/node_modules/ink/build/hooks/use-stdin.d.ts +2 -4
  94. package/node_modules/ink/build/hooks/use-stdin.js +1 -2
  95. package/node_modules/ink/build/hooks/use-stdin.js.map +1 -1
  96. package/node_modules/ink/build/hooks/use-stdout.d.ts +1 -1
  97. package/node_modules/ink/build/hooks/use-stdout.js +1 -1
  98. package/node_modules/ink/build/hooks/useInput.js +38 -0
  99. package/node_modules/ink/build/index.d.ts +1 -8
  100. package/node_modules/ink/build/index.js +0 -4
  101. package/node_modules/ink/build/index.js.map +1 -1
  102. package/node_modules/ink/build/ink.d.ts +3 -48
  103. package/node_modules/ink/build/ink.js +155 -325
  104. package/node_modules/ink/build/ink.js.map +1 -1
  105. package/node_modules/ink/build/input-parser.d.ts +1 -4
  106. package/node_modules/ink/build/input-parser.js +30 -70
  107. package/node_modules/ink/build/input-parser.js.map +1 -1
  108. package/node_modules/ink/build/instance.js +205 -0
  109. package/node_modules/ink/build/layout.d.ts +7 -0
  110. package/node_modules/ink/build/layout.js +33 -0
  111. package/node_modules/ink/build/layout.js.map +1 -0
  112. package/node_modules/ink/build/log-update.d.ts +0 -1
  113. package/node_modules/ink/build/log-update.js +1 -13
  114. package/node_modules/ink/build/log-update.js.map +1 -1
  115. package/node_modules/ink/build/measure-element.d.ts +0 -4
  116. package/node_modules/ink/build/measure-element.js +0 -4
  117. package/node_modules/ink/build/measure-element.js.map +1 -1
  118. package/node_modules/ink/build/options.d.ts +52 -0
  119. package/node_modules/ink/build/options.js +2 -0
  120. package/node_modules/ink/build/options.js.map +1 -0
  121. package/node_modules/ink/build/output.js +0 -25
  122. package/node_modules/ink/build/output.js.map +1 -1
  123. package/node_modules/ink/build/parse-keypress.d.ts +3 -1
  124. package/node_modules/ink/build/parse-keypress.js +17 -19
  125. package/node_modules/ink/build/parse-keypress.js.map +1 -1
  126. package/node_modules/ink/build/reconciler.js +27 -46
  127. package/node_modules/ink/build/reconciler.js.map +1 -1
  128. package/node_modules/ink/build/render-border.js +18 -29
  129. package/node_modules/ink/build/render-border.js.map +1 -1
  130. package/node_modules/ink/build/render-to-string.js +1 -2
  131. package/node_modules/ink/build/render-to-string.js.map +1 -1
  132. package/node_modules/ink/build/render.d.ts +2 -57
  133. package/node_modules/ink/build/render.js +11 -18
  134. package/node_modules/ink/build/render.js.map +1 -1
  135. package/node_modules/ink/build/screen-reader-update.d.ts +13 -0
  136. package/node_modules/ink/build/screen-reader-update.js +38 -0
  137. package/node_modules/ink/build/screen-reader-update.js.map +1 -0
  138. package/node_modules/ink/build/styles.d.ts +16 -78
  139. package/node_modules/ink/build/styles.js +31 -102
  140. package/node_modules/ink/build/styles.js.map +1 -1
  141. package/node_modules/ink/build/utils.d.ts +2 -9
  142. package/node_modules/ink/build/utils.js +3 -18
  143. package/node_modules/ink/build/utils.js.map +1 -1
  144. package/node_modules/ink/build/wrap-text.js +0 -7
  145. package/node_modules/ink/build/wrap-text.js.map +1 -1
  146. package/node_modules/ink/build/write-synchronized.d.ts +1 -1
  147. package/node_modules/ink/build/write-synchronized.js +2 -4
  148. package/node_modules/ink/build/write-synchronized.js.map +1 -1
  149. package/node_modules/ink/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
  150. package/node_modules/ink/node_modules/emoji-regex/README.md +107 -0
  151. package/node_modules/ink/node_modules/emoji-regex/index.d.ts +3 -0
  152. package/node_modules/ink/node_modules/emoji-regex/index.js +4 -0
  153. package/node_modules/ink/node_modules/emoji-regex/index.mjs +4 -0
  154. package/node_modules/ink/node_modules/emoji-regex/package.json +45 -0
  155. package/node_modules/{wrap-ansi → ink/node_modules/wrap-ansi}/index.d.ts +1 -1
  156. package/node_modules/ink/node_modules/wrap-ansi/index.js +222 -0
  157. package/node_modules/ink/node_modules/wrap-ansi/node_modules/string-width/index.d.ts +39 -0
  158. package/node_modules/ink/node_modules/wrap-ansi/node_modules/string-width/index.js +82 -0
  159. package/node_modules/ink/node_modules/wrap-ansi/node_modules/string-width/license +9 -0
  160. package/node_modules/ink/node_modules/wrap-ansi/node_modules/string-width/package.json +64 -0
  161. package/node_modules/ink/node_modules/wrap-ansi/node_modules/string-width/readme.md +66 -0
  162. package/node_modules/{wrap-ansi → ink/node_modules/wrap-ansi}/package.json +11 -11
  163. package/node_modules/{wrap-ansi → ink/node_modules/wrap-ansi}/readme.md +0 -2
  164. package/node_modules/ink/package.json +98 -34
  165. package/node_modules/ink/readme.md +48 -554
  166. package/node_modules/slice-ansi/index.d.ts +1 -1
  167. package/node_modules/slice-ansi/index.js +89 -146
  168. package/node_modules/slice-ansi/package.json +5 -5
  169. package/node_modules/slice-ansi/readme.md +0 -1
  170. package/node_modules/slice-ansi/tokenize-ansi.js +1 -1
  171. package/package.json +11 -10
  172. package/packages/testkit-bridge/node_modules/@elench/testkit-protocol/dist/index.d.ts +188 -0
  173. package/packages/testkit-bridge/node_modules/@elench/testkit-protocol/dist/index.d.ts.map +1 -0
  174. package/packages/testkit-bridge/node_modules/@elench/testkit-protocol/dist/index.js +293 -0
  175. package/packages/testkit-bridge/node_modules/@elench/testkit-protocol/dist/index.js.map +1 -0
  176. package/packages/testkit-bridge/node_modules/@elench/testkit-protocol/package.json +25 -0
  177. package/node_modules/@alcalzone/ansi-tokenize/build/consts.d.ts +0 -17
  178. package/node_modules/@alcalzone/ansi-tokenize/build/consts.js +0 -28
  179. package/node_modules/@alcalzone/ansi-tokenize/build/consts.js.map +0 -1
  180. package/node_modules/ink/build/components/AnimationContext.d.ts +0 -9
  181. package/node_modules/ink/build/components/AnimationContext.js +0 -13
  182. package/node_modules/ink/build/components/AnimationContext.js.map +0 -1
  183. package/node_modules/ink/build/hooks/use-animation.d.ts +0 -49
  184. package/node_modules/ink/build/hooks/use-animation.js +0 -87
  185. package/node_modules/ink/build/hooks/use-animation.js.map +0 -1
  186. package/node_modules/ink/build/hooks/use-box-metrics.d.ts +0 -59
  187. package/node_modules/ink/build/hooks/use-box-metrics.js +0 -88
  188. package/node_modules/ink/build/hooks/use-box-metrics.js.map +0 -1
  189. package/node_modules/ink/build/hooks/use-paste.d.ts +0 -35
  190. package/node_modules/ink/build/hooks/use-paste.js +0 -62
  191. package/node_modules/ink/build/hooks/use-paste.js.map +0 -1
  192. package/node_modules/ink/build/hooks/use-window-size.d.ts +0 -18
  193. package/node_modules/ink/build/hooks/use-window-size.js +0 -22
  194. package/node_modules/ink/build/hooks/use-window-size.js.map +0 -1
  195. package/node_modules/wrap-ansi/index.js +0 -468
  196. /package/node_modules/{wrap-ansi → ink/node_modules/wrap-ansi}/license +0 -0
@@ -38,22 +38,22 @@ export default function ErrorOverview({ error }) {
38
38
  React.createElement(Text, null,
39
39
  " ",
40
40
  error.message)),
41
- origin && filePath ? (React.createElement(Box, { marginTop: 1 },
41
+ origin && filePath && (React.createElement(Box, { marginTop: 1 },
42
42
  React.createElement(Text, { dimColor: true },
43
43
  filePath,
44
44
  ":",
45
45
  origin.line,
46
46
  ":",
47
- origin.column))) : null,
48
- origin && excerpt ? (React.createElement(Box, { marginTop: 1, flexDirection: "column" }, excerpt.map(({ line, value }) => (React.createElement(Box, { key: line },
47
+ origin.column))),
48
+ origin && excerpt && (React.createElement(Box, { marginTop: 1, flexDirection: "column" }, excerpt.map(({ line, value }) => (React.createElement(Box, { key: line },
49
49
  React.createElement(Box, { width: lineWidth + 1 },
50
50
  React.createElement(Text, { dimColor: line !== origin.line, backgroundColor: line === origin.line ? 'red' : undefined, color: line === origin.line ? 'white' : undefined, "aria-label": line === origin.line
51
51
  ? `Line ${line}, error`
52
52
  : `Line ${line}` },
53
53
  String(line).padStart(lineWidth, ' '),
54
54
  ":")),
55
- React.createElement(Text, { key: line, backgroundColor: line === origin.line ? 'red' : undefined, color: line === origin.line ? 'white' : undefined }, ' ' + value)))))) : null,
56
- error.stack ? (React.createElement(Box, { marginTop: 1, flexDirection: "column" }, error.stack
55
+ React.createElement(Text, { key: line, backgroundColor: line === origin.line ? 'red' : undefined, color: line === origin.line ? 'white' : undefined }, ' ' + value)))))),
56
+ error.stack && (React.createElement(Box, { marginTop: 1, flexDirection: "column" }, error.stack
57
57
  .split('\n')
58
58
  .slice(1)
59
59
  .map(line => {
@@ -79,6 +79,6 @@ export default function ErrorOverview({ error }) {
79
79
  ":",
80
80
  parsedLine.column,
81
81
  ")")));
82
- }))) : null));
82
+ })))));
83
83
  }
84
84
  //# sourceMappingURL=ErrorOverview.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorOverview.js","sourceRoot":"","sources":["../../src/components/ErrorOverview.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ErrorOverview.js","sourceRoot":"","sources":["../../src/components/ErrorOverview.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Static.js","sourceRoot":"","sources":["../../src/components/Static.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAiB,MAAM,OAAO,CAAC;AAoBhF;;;;;;EAME;AACF,MAAM,CAAC,OAAO,UAAU,MAAM,CAAI,KAAe;IAChD,MAAM,EAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAC,GAAG,KAAK,CAAC;IAC5D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEtC,MAAM,aAAa,GAAQ,OAAO,CAAC,GAAG,EAAE;QACvC,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAEnB,eAAe,CAAC,GAAG,EAAE;QACpB,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAEnB,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,SAAS,EAAa,EAAE;QACjE,OAAO,MAAM,CAAC,IAAI,EAAE,KAAK,GAAG,SAAS,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,MAAM,KAAK,GAAW,OAAO,CAC5B,GAAG,EAAE,CAAC,CAAC;QACN,QAAQ,EAAE,UAAU;QACpB,aAAa,EAAE,QAAQ;QACvB,GAAG,WAAW;KACd,CAAC,EACF,CAAC,WAAW,CAAC,CACb,CAAC;IAEF,OAAO,CACN,iCAAS,eAAe,QAAC,KAAK,EAAE,KAAK,IACnC,QAAQ,CACA,CACV,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"Static.js","sourceRoot":"","sources":["../../src/components/Static.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAiB,MAAM,OAAO,CAAC;AAoBhF;;;;;;EAME;AACF,MAAM,CAAC,OAAO,UAAU,MAAM,CAAI,KAAe;IAChD,MAAM,EAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAC,GAAG,KAAK,CAAC;IAC5D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEtC,MAAM,aAAa,GAAQ,OAAO,CAAC,GAAG,EAAE;QACvC,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAEnB,eAAe,CAAC,GAAG,EAAE;QACpB,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAEnB,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE;QACtD,OAAO,MAAM,CAAC,IAAI,EAAE,KAAK,GAAG,SAAS,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,MAAM,KAAK,GAAW,OAAO,CAC5B,GAAG,EAAE,CAAC,CAAC;QACN,QAAQ,EAAE,UAAU;QACpB,aAAa,EAAE,QAAQ;QACvB,GAAG,WAAW;KACd,CAAC,EACF,CAAC,WAAW,CAAC,CACb,CAAC;IAEF,OAAO,CACN,iCAAS,eAAe,QAAC,KAAK,EAAE,KAAK,IACnC,QAAQ,CACA,CACV,CAAC;AACH,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter } from 'node:events';
2
- export type PublicProps = {
2
+ export type Props = {
3
3
  /**
4
4
  The stdin stream passed to `render()` in `options.stdin`, or `process.stdin` by default. Useful if your app needs to handle user input.
5
5
  */
@@ -12,12 +12,6 @@ export type PublicProps = {
12
12
  A boolean flag determining if the current `stdin` supports `setRawMode`. A component using `setRawMode` might want to use `isRawModeSupported` to nicely fall back in environments where raw mode is not supported.
13
13
  */
14
14
  readonly isRawModeSupported: boolean;
15
- };
16
- export type Props = PublicProps & {
17
- /**
18
- Enable or disable bracketed paste mode on the terminal. When enabled, pasted text is wrapped in escape sequences that allow it to be distinguished from typed input.
19
- */
20
- readonly setBracketedPasteMode: (value: boolean) => void;
21
15
  readonly internal_exitOnCtrlC: boolean;
22
16
  readonly internal_eventEmitter: EventEmitter;
23
17
  };
@@ -10,7 +10,6 @@ const StdinContext = createContext({
10
10
  // eslint-disable-next-line @typescript-eslint/naming-convention
11
11
  internal_eventEmitter: new EventEmitter(),
12
12
  setRawMode() { },
13
- setBracketedPasteMode() { },
14
13
  isRawModeSupported: false,
15
14
  // eslint-disable-next-line @typescript-eslint/naming-convention
16
15
  internal_exitOnCtrlC: true,
@@ -1 +1 @@
1
- {"version":3,"file":"StdinContext.js","sourceRoot":"","sources":["../../src/components/StdinContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AACzC,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAAC,aAAa,EAAC,MAAM,OAAO,CAAC;AA8BpC;;EAEE;AACF,gEAAgE;AAChE,MAAM,YAAY,GAAG,aAAa,CAAQ;IACzC,KAAK,EAAE,OAAO,CAAC,KAAK;IACpB,gEAAgE;IAChE,qBAAqB,EAAE,IAAI,YAAY,EAAE;IACzC,UAAU,KAAI,CAAC;IACf,qBAAqB,KAAI,CAAC;IAC1B,kBAAkB,EAAE,KAAK;IACzB,gEAAgE;IAChE,oBAAoB,EAAE,IAAI;CAC1B,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,GAAG,sBAAsB,CAAC;AAElD,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"StdinContext.js","sourceRoot":"","sources":["../../src/components/StdinContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AACzC,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAAC,aAAa,EAAC,MAAM,OAAO,CAAC;AAuBpC;;EAEE;AACF,gEAAgE;AAChE,MAAM,YAAY,GAAG,aAAa,CAAQ;IACzC,KAAK,EAAE,OAAO,CAAC,KAAK;IACpB,gEAAgE;IAChE,qBAAqB,EAAE,IAAI,YAAY,EAAE;IACzC,UAAU,KAAI,CAAC;IACf,kBAAkB,EAAE,KAAK;IACzB,gEAAgE;IAChE,oBAAoB,EAAE,IAAI;CAC1B,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,GAAG,sBAAsB,CAAC;AAElD,eAAe,YAAY,CAAC"}
@@ -44,7 +44,7 @@ export type Props = {
44
44
  */
45
45
  readonly inverse?: boolean;
46
46
  /**
47
- This property tells Ink to wrap or truncate text if its width is larger than the container. If `wrap` is passed (the default), Ink will wrap text and split it into multiple lines. If `hard` is passed, Ink will fill each line to the full column width, breaking words as necessary. If `truncate-*` is passed, Ink will truncate text instead, resulting in one line of text with the rest cut off.
47
+ This property tells Ink to wrap or truncate text if its width is larger than the container. If `wrap` is passed (the default), Ink will wrap text and split it into multiple lines. If `truncate-*` is passed, Ink will truncate text instead, resulting in one line of text with the rest cut off.
48
48
  */
49
49
  readonly wrap?: Styles['textWrap'];
50
50
  readonly children?: ReactNode;
@@ -45,6 +45,6 @@ export default function Text({ color, backgroundColor, dimColor = false, bold =
45
45
  if (isScreenReaderEnabled && ariaHidden) {
46
46
  return null;
47
47
  }
48
- return (React.createElement("ink-text", { style: { flexGrow: 0, flexShrink: 1, flexDirection: 'row', textWrap: wrap }, internal_transform: transform }, childrenOrAriaLabel));
48
+ return (React.createElement("ink-text", { style: { flexGrow: 0, flexShrink: 1, flexDirection: 'row', textWrap: wrap }, internal_transform: transform }, isScreenReaderEnabled && ariaLabel ? ariaLabel : children));
49
49
  }
50
50
  //# sourceMappingURL=Text.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Text.js","sourceRoot":"","sources":["../../src/components/Text.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,UAAU,EAAiB,MAAM,OAAO,CAAC;AACxD,OAAO,KAAiC,MAAM,OAAO,CAAC;AAEtD,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AA6DzD;;EAEE;AACF,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,EAC5B,KAAK,EACL,eAAe,EACf,QAAQ,GAAG,KAAK,EAChB,IAAI,GAAG,KAAK,EACZ,MAAM,GAAG,KAAK,EACd,SAAS,GAAG,KAAK,EACjB,aAAa,GAAG,KAAK,EACrB,OAAO,GAAG,KAAK,EACf,IAAI,GAAG,MAAM,EACb,QAAQ,EACR,YAAY,EAAE,SAAS,EACvB,aAAa,EAAE,UAAU,GAAG,KAAK,GAC1B;IACP,MAAM,EAAC,qBAAqB,EAAC,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IACjE,MAAM,wBAAwB,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAC/D,MAAM,mBAAmB,GACxB,qBAAqB,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;IAE3D,IAAI,mBAAmB,KAAK,SAAS,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,SAAS,GAAG,CAAC,QAAgB,EAAU,EAAE;QAC9C,IAAI,QAAQ,EAAE,CAAC;YACd,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACX,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;QACpD,CAAC;QAED,oFAAoF;QACpF,MAAM,wBAAwB,GAC7B,eAAe,IAAI,wBAAwB,CAAC;QAC7C,IAAI,wBAAwB,EAAE,CAAC;YAC9B,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,EAAE,YAAY,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,IAAI,EAAE,CAAC;YACV,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACZ,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACf,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YACnB,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACb,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,QAAQ,CAAC;IACjB,CAAC,CAAC;IAEF,IAAI,qBAAqB,IAAI,UAAU,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,CACN,kCACC,KAAK,EAAE,EAAC,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAC,EACzE,kBAAkB,EAAE,SAAS,IAE5B,mBAAmB,CACV,CACX,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"Text.js","sourceRoot":"","sources":["../../src/components/Text.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,UAAU,EAAiB,MAAM,OAAO,CAAC;AACxD,OAAO,KAAiC,MAAM,OAAO,CAAC;AAEtD,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AA6DzD;;EAEE;AACF,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,EAC5B,KAAK,EACL,eAAe,EACf,QAAQ,GAAG,KAAK,EAChB,IAAI,GAAG,KAAK,EACZ,MAAM,GAAG,KAAK,EACd,SAAS,GAAG,KAAK,EACjB,aAAa,GAAG,KAAK,EACrB,OAAO,GAAG,KAAK,EACf,IAAI,GAAG,MAAM,EACb,QAAQ,EACR,YAAY,EAAE,SAAS,EACvB,aAAa,EAAE,UAAU,GAAG,KAAK,GAC1B;IACP,MAAM,EAAC,qBAAqB,EAAC,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IACjE,MAAM,wBAAwB,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAC/D,MAAM,mBAAmB,GACxB,qBAAqB,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;IAE3D,IAAI,mBAAmB,KAAK,SAAS,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,SAAS,GAAG,CAAC,QAAgB,EAAU,EAAE;QAC9C,IAAI,QAAQ,EAAE,CAAC;YACd,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACX,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;QACpD,CAAC;QAED,oFAAoF;QACpF,MAAM,wBAAwB,GAC7B,eAAe,IAAI,wBAAwB,CAAC;QAC7C,IAAI,wBAAwB,EAAE,CAAC;YAC9B,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,EAAE,YAAY,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,IAAI,EAAE,CAAC;YACV,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACZ,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACf,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YACnB,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACb,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,QAAQ,CAAC;IACjB,CAAC,CAAC;IAEF,IAAI,qBAAqB,IAAI,UAAU,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,CACN,kCACC,KAAK,EAAE,EAAC,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAC,EACzE,kBAAkB,EAAE,SAAS,IAE5B,qBAAqB,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAChD,CACX,CAAC;AACH,CAAC"}
@@ -5,7 +5,7 @@ export type Props = {
5
5
  */
6
6
  readonly accessibilityLabel?: string;
7
7
  /**
8
- Function that transforms children output. It accepts children and must return transformed children as well. Note that when children use `<Text>` styling props (e.g. `color`, `bold`), the string will contain ANSI escape codes.
8
+ Function that transforms children output. It accepts children and must return transformed children as well.
9
9
  */
10
10
  readonly transform: (children: string, index: number) => string;
11
11
  readonly children?: ReactNode;
@@ -1,15 +1,12 @@
1
1
  // Ignoring missing types error to avoid adding another dependency for this hack to work
2
2
  import ws from 'ws';
3
3
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
4
- const customGlobal = globalThis;
4
+ const customGlobal = global;
5
5
  // These things must exist before importing `react-devtools-core`
6
- // Using ||= intentionally to set falsy values, not just null/undefined
7
- // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
6
+ // eslint-disable-next-line n/no-unsupported-features/node-builtins
8
7
  customGlobal.WebSocket ||= ws;
9
- // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
10
- customGlobal.window ||= globalThis;
11
- // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
12
- customGlobal.self ||= globalThis;
8
+ customGlobal.window ||= global;
9
+ customGlobal.self ||= global;
13
10
  // Filter out Ink's internal components from devtools for a cleaner view.
14
11
  // Also, ince `react-devtools-shared` package isn't published on npm, we can't
15
12
  // use its types, that's why there are hard-coded values in `type` fields below.
@@ -1 +1 @@
1
- {"version":3,"file":"devtools-window-polyfill.js","sourceRoot":"","sources":["../src/devtools-window-polyfill.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,mEAAmE;AACnE,MAAM,YAAY,GAAG,UAAiB,CAAC;AAEvC,iEAAiE;AACjE,uEAAuE;AAEvE,wEAAwE;AACxE,YAAY,CAAC,SAAS,KAAK,EAAE,CAAC;AAE9B,wEAAwE;AACxE,YAAY,CAAC,MAAM,KAAK,UAAU,CAAC;AAEnC,wEAAwE;AACxE,YAAY,CAAC,IAAI,KAAK,UAAU,CAAC;AAEjC,yEAAyE;AACzE,8EAA8E;AAC9E,gFAAgF;AAChF,sIAAsI;AACtI,YAAY,CAAC,MAAM,CAAC,oCAAoC,GAAG;IAC1D;QACC,6BAA6B;QAC7B,IAAI,EAAE,CAAC;QACP,2BAA2B;QAC3B,KAAK,EAAE,CAAC;QACR,SAAS,EAAE,IAAI;KACf;IACD;QACC,6BAA6B;QAC7B,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,aAAa;QACpB,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;KACb;IACD;QACC,6BAA6B;QAC7B,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,oBAAoB;QAC3B,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;KACb;IACD;QACC,6BAA6B;QAC7B,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,uBAAuB;QAC9B,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;KACb;IACD;QACC,6BAA6B;QAC7B,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,uBAAuB;QAC9B,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;KACb;IACD;QACC,6BAA6B;QAC7B,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,sBAAsB;QAC7B,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;KACb;IACD;QACC,6BAA6B;QAC7B,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,sBAAsB;QAC7B,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;KACb;CACD,CAAC"}
1
+ {"version":3,"file":"devtools-window-polyfill.js","sourceRoot":"","sources":["../src/devtools-window-polyfill.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,mEAAmE;AACnE,MAAM,YAAY,GAAG,MAAa,CAAC;AAEnC,iEAAiE;AAEjE,mEAAmE;AACnE,YAAY,CAAC,SAAS,KAAK,EAAE,CAAC;AAE9B,YAAY,CAAC,MAAM,KAAK,MAAM,CAAC;AAE/B,YAAY,CAAC,IAAI,KAAK,MAAM,CAAC;AAE7B,yEAAyE;AACzE,8EAA8E;AAC9E,gFAAgF;AAChF,sIAAsI;AACtI,YAAY,CAAC,MAAM,CAAC,oCAAoC,GAAG;IAC1D;QACC,6BAA6B;QAC7B,IAAI,EAAE,CAAC;QACP,2BAA2B;QAC3B,KAAK,EAAE,CAAC;QACR,SAAS,EAAE,IAAI;KACf;IACD;QACC,6BAA6B;QAC7B,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,aAAa;QACpB,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;KACb;IACD;QACC,6BAA6B;QAC7B,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,oBAAoB;QAC3B,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;KACb;IACD;QACC,6BAA6B;QAC7B,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,uBAAuB;QAC9B,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;KACb;IACD;QACC,6BAA6B;QAC7B,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,uBAAuB;QAC9B,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;KACb;IACD;QACC,6BAA6B;QAC7B,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,sBAAsB;QAC7B,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;KACb;IACD;QACC,6BAA6B;QAC7B,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,sBAAsB;QAC7B,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;KACb;CACD,CAAC"}
@@ -1,36 +1,11 @@
1
- /* eslint-disable import-x/order */
2
- // eslint-disable-next-line import-x/no-unassigned-import
1
+ /* eslint-disable import/order */
2
+ // eslint-disable-next-line import/no-unassigned-import
3
3
  import './devtools-window-polyfill.js';
4
- import WebSocket from 'ws';
5
4
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
6
5
  // @ts-expect-error
7
6
  import devtools from 'react-devtools-core';
8
- const isDevToolsReachable = async () => new Promise(resolve => {
9
- const socket = new WebSocket('ws://localhost:8097');
10
- const timeout = setTimeout(() => {
11
- socket.terminate();
12
- resolve(false);
13
- }, 2000);
14
- // Don't let the timeout keep the process alive on its own
15
- timeout.unref();
16
- socket.on('open', () => {
17
- clearTimeout(timeout);
18
- socket.terminate();
19
- resolve(true);
20
- });
21
- socket.on('error', () => {
22
- clearTimeout(timeout);
23
- socket.terminate();
24
- resolve(false);
25
- });
26
- });
27
- if (await isDevToolsReachable()) {
28
- // eslint-disable-next-line @typescript-eslint/no-unsafe-call
29
- devtools.initialize();
30
- // eslint-disable-next-line @typescript-eslint/no-unsafe-call
31
- devtools.connectToDevTools();
32
- }
33
- else {
34
- console.warn('DEV is set to true, but the React DevTools server is not running. Start it with:\n\n$ npx react-devtools\n');
35
- }
7
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call
8
+ devtools.initialize();
9
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call
10
+ devtools.connectToDevTools();
36
11
  //# sourceMappingURL=devtools.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"devtools.js","sourceRoot":"","sources":["../src/devtools.ts"],"names":[],"mappings":"AAAA,mCAAmC;AAEnC,yDAAyD;AACzD,OAAO,+BAA+B,CAAC;AAEvC,OAAO,SAAS,MAAM,IAAI,CAAC;AAE3B,6DAA6D;AAC7D,mBAAmB;AACnB,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAE3C,MAAM,mBAAmB,GAAG,KAAK,IAAsB,EAAE,CACxD,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;IACrB,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,qBAAqB,CAAC,CAAC;IAEpD,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;QAC/B,MAAM,CAAC,SAAS,EAAE,CAAC;QACnB,OAAO,CAAC,KAAK,CAAC,CAAC;IAChB,CAAC,EAAE,IAAI,CAAC,CAAC;IACT,0DAA0D;IAC1D,OAAO,CAAC,KAAK,EAAE,CAAC;IAEhB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;QACtB,YAAY,CAAC,OAAO,CAAC,CAAC;QACtB,MAAM,CAAC,SAAS,EAAE,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;QACvB,YAAY,CAAC,OAAO,CAAC,CAAC;QACtB,MAAM,CAAC,SAAS,EAAE,CAAC;QACnB,OAAO,CAAC,KAAK,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEJ,IAAI,MAAM,mBAAmB,EAAE,EAAE,CAAC;IACjC,6DAA6D;IAC5D,QAAgB,CAAC,UAAU,EAAE,CAAC;IAC/B,6DAA6D;IAC5D,QAAgB,CAAC,iBAAiB,EAAE,CAAC;AACvC,CAAC;KAAM,CAAC;IACP,OAAO,CAAC,IAAI,CACX,4GAA4G,CAC5G,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"devtools.js","sourceRoot":"","sources":["../src/devtools.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAEjC,uDAAuD;AACvD,OAAO,+BAA+B,CAAC;AAEvC,6DAA6D;AAC7D,mBAAmB;AACnB,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAE3C,6DAA6D;AAC5D,QAAgB,CAAC,UAAU,EAAE,CAAC;AAC/B,6DAA6D;AAC5D,QAAgB,CAAC,iBAAiB,EAAE,CAAC"}
@@ -7,7 +7,6 @@ type InkNode = {
7
7
  internal_static?: boolean;
8
8
  style: Styles;
9
9
  };
10
- type LayoutListener = () => void;
11
10
  export type TextName = '#text';
12
11
  export type ElementNames = 'ink-root' | 'ink-box' | 'ink-text' | 'ink-virtual-text';
13
12
  export type NodeNames = ElementNames | TextName;
@@ -35,7 +34,6 @@ export type DOMElement = {
35
34
  onComputeLayout?: () => void;
36
35
  onRender?: () => void;
37
36
  onImmediateRender?: () => void;
38
- internal_layoutListeners?: Set<LayoutListener>;
39
37
  } & InkNode;
40
38
  export type TextNode = {
41
39
  nodeName: TextName;
@@ -52,9 +50,7 @@ export declare const appendChildNode: (node: DOMElement, childNode: DOMElement)
52
50
  export declare const insertBeforeNode: (node: DOMElement, newChildNode: DOMNode, beforeChildNode: DOMNode) => void;
53
51
  export declare const removeChildNode: (node: DOMElement, removeNode: DOMNode) => void;
54
52
  export declare const setAttribute: (node: DOMElement, key: string, value: DOMNodeAttribute) => void;
55
- export declare const setStyle: (node: DOMNode, style?: Styles) => void;
53
+ export declare const setStyle: (node: DOMNode, style: Styles) => void;
56
54
  export declare const createTextNode: (text: string) => TextNode;
57
55
  export declare const setTextNodeValue: (node: TextNode, text: string) => void;
58
- export declare const addLayoutListener: (rootNode: DOMElement, listener: LayoutListener) => (() => void);
59
- export declare const emitLayoutListeners: (rootNode: DOMElement) => void;
60
56
  export {};
@@ -74,8 +74,7 @@ export const setAttribute = (node, key, value) => {
74
74
  node.attributes[key] = value;
75
75
  };
76
76
  export const setStyle = (node, style) => {
77
- // Rendering code assumes style is always an object.
78
- node.style = style ?? {};
77
+ node.style = style;
79
78
  };
80
79
  export const createTextNode = (text) => {
81
80
  const node = {
@@ -122,22 +121,4 @@ export const setTextNodeValue = (node, text) => {
122
121
  node.nodeValue = text;
123
122
  markNodeAsDirty(node);
124
123
  };
125
- export const addLayoutListener = (rootNode, listener) => {
126
- if (rootNode.nodeName !== 'ink-root') {
127
- return () => { };
128
- }
129
- rootNode.internal_layoutListeners ??= new Set();
130
- rootNode.internal_layoutListeners.add(listener);
131
- return () => {
132
- rootNode.internal_layoutListeners?.delete(listener);
133
- };
134
- };
135
- export const emitLayoutListeners = (rootNode) => {
136
- if (rootNode.nodeName !== 'ink-root' || !rootNode.internal_layoutListeners) {
137
- return;
138
- }
139
- for (const listener of rootNode.internal_layoutListeners) {
140
- listener();
141
- }
142
- };
143
124
  //# sourceMappingURL=dom.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dom.js","sourceRoot":"","sources":["../src/dom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dom.js","sourceRoot":"","sources":["../src/dom.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _yogaLayoutPrebuilt = _interopRequireDefault(require("yoga-layout-prebuilt"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ const applyPositionStyles = (node, style) => {
13
+ if (!style.position) {
14
+ node.setPositionType(NaN);
15
+ }
16
+
17
+ if (style.position === 'absolute') {
18
+ node.setPositionType(_yogaLayoutPrebuilt.default.POSITION_TYPE_ABSOLUTE);
19
+ }
20
+ };
21
+
22
+ const applyMarginStyles = (node, style) => {
23
+ node.setMargin(_yogaLayoutPrebuilt.default.EDGE_START, style.marginLeft || style.marginX || style.margin || 0);
24
+ node.setMargin(_yogaLayoutPrebuilt.default.EDGE_END, style.marginRight || style.marginX || style.margin || 0);
25
+ node.setMargin(_yogaLayoutPrebuilt.default.EDGE_TOP, style.marginTop || style.marginY || style.margin || 0);
26
+ node.setMargin(_yogaLayoutPrebuilt.default.EDGE_BOTTOM, style.marginBottom || style.marginY || style.margin || 0);
27
+ };
28
+
29
+ const applyPaddingStyles = (node, style) => {
30
+ node.setPadding(_yogaLayoutPrebuilt.default.EDGE_LEFT, style.paddingLeft || style.paddingX || style.padding || 0);
31
+ node.setPadding(_yogaLayoutPrebuilt.default.EDGE_RIGHT, style.paddingRight || style.paddingX || style.padding || 0);
32
+ node.setPadding(_yogaLayoutPrebuilt.default.EDGE_TOP, style.paddingTop || style.paddingY || style.padding || 0);
33
+ node.setPadding(_yogaLayoutPrebuilt.default.EDGE_BOTTOM, style.paddingBottom || style.paddingY || style.padding || 0);
34
+ };
35
+
36
+ const applyFlexStyles = (node, style) => {
37
+ node.setFlexGrow(style.flexGrow || 0);
38
+ node.setFlexShrink(typeof style.flexShrink === 'number' ? style.flexShrink : 1);
39
+
40
+ if (style.flexDirection === 'row') {
41
+ node.setFlexDirection(_yogaLayoutPrebuilt.default.FLEX_DIRECTION_ROW);
42
+ }
43
+
44
+ if (style.flexDirection === 'row-reverse') {
45
+ node.setFlexDirection(_yogaLayoutPrebuilt.default.FLEX_DIRECTION_ROW_REVERSE);
46
+ }
47
+
48
+ if (style.flexDirection === 'column') {
49
+ node.setFlexDirection(_yogaLayoutPrebuilt.default.FLEX_DIRECTION_COLUMN);
50
+ }
51
+
52
+ if (style.flexDirection === 'column-reverse') {
53
+ node.setFlexDirection(_yogaLayoutPrebuilt.default.FLEX_DIRECTION_COLUMN_REVERSE);
54
+ }
55
+
56
+ if (typeof style.flexBasis === 'number') {
57
+ node.setFlexBasis(style.flexBasis);
58
+ } else if (typeof style.flexBasis === 'string') {
59
+ node.setFlexBasisPercent(parseInt(style.flexBasis, 10));
60
+ } else {
61
+ // This should be replaced with node.setFlexBasisAuto() when new Yoga release is out
62
+ node.setFlexBasis(NaN);
63
+ }
64
+
65
+ if (style.alignItems === 'stretch' || !style.alignItems) {
66
+ node.setAlignItems(_yogaLayoutPrebuilt.default.ALIGN_STRETCH);
67
+ }
68
+
69
+ if (style.alignItems === 'flex-start') {
70
+ node.setAlignItems(_yogaLayoutPrebuilt.default.ALIGN_FLEX_START);
71
+ }
72
+
73
+ if (style.alignItems === 'center') {
74
+ node.setAlignItems(_yogaLayoutPrebuilt.default.ALIGN_CENTER);
75
+ }
76
+
77
+ if (style.alignItems === 'flex-end') {
78
+ node.setAlignItems(_yogaLayoutPrebuilt.default.ALIGN_FLEX_END);
79
+ }
80
+
81
+ if (style.justifyContent === 'flex-start' || !style.justifyContent) {
82
+ node.setJustifyContent(_yogaLayoutPrebuilt.default.JUSTIFY_FLEX_START);
83
+ }
84
+
85
+ if (style.justifyContent === 'center') {
86
+ node.setJustifyContent(_yogaLayoutPrebuilt.default.JUSTIFY_CENTER);
87
+ }
88
+
89
+ if (style.justifyContent === 'flex-end') {
90
+ node.setJustifyContent(_yogaLayoutPrebuilt.default.JUSTIFY_FLEX_END);
91
+ }
92
+
93
+ if (style.justifyContent === 'space-between') {
94
+ node.setJustifyContent(_yogaLayoutPrebuilt.default.JUSTIFY_SPACE_BETWEEN);
95
+ }
96
+
97
+ if (style.justifyContent === 'space-around') {
98
+ node.setJustifyContent(_yogaLayoutPrebuilt.default.JUSTIFY_SPACE_AROUND);
99
+ }
100
+ };
101
+
102
+ const applyDimensionStyles = (node, style) => {
103
+ if (typeof style.width === 'number') {
104
+ node.setWidth(style.width);
105
+ } else if (typeof style.width === 'string') {
106
+ node.setWidthPercent(parseInt(style.width, 10));
107
+ } else {
108
+ node.setWidthAuto();
109
+ }
110
+
111
+ if (typeof style.height === 'number') {
112
+ node.setHeight(style.height);
113
+ } else if (typeof style.height === 'string') {
114
+ node.setHeightPercent(parseInt(style.height, 10));
115
+ } else {
116
+ node.setHeightAuto();
117
+ }
118
+
119
+ if (typeof style.minWidth === 'string') {
120
+ node.setMinWidthPercent(parseInt(style.minWidth, 10));
121
+ } else {
122
+ node.setMinWidth(style.minWidth || 0);
123
+ }
124
+
125
+ if (typeof style.minHeight === 'string') {
126
+ node.setMinHeightPercent(parseInt(style.minHeight, 10));
127
+ } else {
128
+ node.setMinHeight(style.minHeight || 0);
129
+ }
130
+ };
131
+
132
+ var _default = (node, style = {}) => {
133
+ applyPositionStyles(node, style);
134
+ applyMarginStyles(node, style);
135
+ applyPaddingStyles(node, style);
136
+ applyFlexStyles(node, style);
137
+ applyDimensionStyles(node, style);
138
+ };
139
+
140
+ exports.default = _default;
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.setTextContent = exports.createTextNode = exports.setAttribute = exports.setStyle = exports.removeChildNode = exports.insertBeforeNode = exports.appendChildNode = exports.createNode = void 0;
7
+
8
+ var _yogaLayoutPrebuilt = _interopRequireDefault(require("yoga-layout-prebuilt"));
9
+
10
+ var _measureText = _interopRequireDefault(require("../measure-text"));
11
+
12
+ var _applyStyle = _interopRequireDefault(require("./apply-style"));
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
+
16
+ // Helper utilities implementing some common DOM methods to simplify reconciliation code
17
+ const createNode = tagName => ({
18
+ nodeName: tagName.toUpperCase(),
19
+ style: {},
20
+ attributes: {},
21
+ childNodes: [],
22
+ parentNode: null,
23
+ textContent: null,
24
+ yogaNode: _yogaLayoutPrebuilt.default.Node.create()
25
+ });
26
+
27
+ exports.createNode = createNode;
28
+
29
+ const appendChildNode = (node, childNode) => {
30
+ if (childNode.parentNode) {
31
+ removeChildNode(childNode.parentNode, childNode);
32
+ }
33
+
34
+ childNode.parentNode = node;
35
+ node.childNodes.push(childNode);
36
+ node.yogaNode.insertChild(childNode.yogaNode, node.yogaNode.getChildCount());
37
+ };
38
+
39
+ exports.appendChildNode = appendChildNode;
40
+
41
+ const insertBeforeNode = (node, newChildNode, beforeChildNode) => {
42
+ if (newChildNode.parentNode) {
43
+ removeChildNode(newChildNode.parentNode, newChildNode);
44
+ }
45
+
46
+ newChildNode.parentNode = node;
47
+ const index = node.childNodes.indexOf(beforeChildNode);
48
+
49
+ if (index >= 0) {
50
+ node.childNodes.splice(index, 0, newChildNode);
51
+ node.yogaNode.insertChild(newChildNode.yogaNode, index);
52
+ return;
53
+ }
54
+
55
+ node.childNodes.push(newChildNode);
56
+ node.yogaNode.insertChild(newChildNode.yogaNode, node.yogaNode.getChildCount());
57
+ };
58
+
59
+ exports.insertBeforeNode = insertBeforeNode;
60
+
61
+ const removeChildNode = (node, removeNode) => {
62
+ removeNode.parentNode.yogaNode.removeChild(removeNode.yogaNode);
63
+ removeNode.parentNode = null;
64
+ const index = node.childNodes.indexOf(removeNode);
65
+
66
+ if (index >= 0) {
67
+ node.childNodes.splice(index, 1);
68
+ }
69
+ };
70
+
71
+ exports.removeChildNode = removeChildNode;
72
+
73
+ const setStyle = (node, style) => {
74
+ node.style = style;
75
+ (0, _applyStyle.default)(node.yogaNode, style);
76
+ };
77
+
78
+ exports.setStyle = setStyle;
79
+
80
+ const setAttribute = (node, key, value) => {
81
+ node.attributes[key] = value;
82
+ };
83
+
84
+ exports.setAttribute = setAttribute;
85
+
86
+ const createTextNode = text => {
87
+ const node = {
88
+ nodeName: '#text',
89
+ nodeValue: text,
90
+ yogaNode: _yogaLayoutPrebuilt.default.Node.create()
91
+ };
92
+ setTextContent(node, text);
93
+ return node;
94
+ };
95
+
96
+ exports.createTextNode = createTextNode;
97
+
98
+ const setTextContent = (node, text) => {
99
+ if (typeof text !== 'string') {
100
+ text = String(text);
101
+ }
102
+
103
+ let width = 0;
104
+ let height = 0;
105
+
106
+ if (text.length > 0) {
107
+ const dimensions = (0, _measureText.default)(text);
108
+ width = dimensions.width;
109
+ height = dimensions.height;
110
+ }
111
+
112
+ if (node.nodeName === '#text') {
113
+ node.nodeValue = text;
114
+ node.yogaNode.setWidth(width);
115
+ node.yogaNode.setHeight(height);
116
+ } else {
117
+ node.textContent = text;
118
+ node.yogaNode.setWidth(node.style.width || width);
119
+ node.yogaNode.setHeight(node.style.height || height);
120
+ }
121
+ };
122
+
123
+ exports.setTextContent = setTextContent;