zard-cli 1.0.0-beta.114 → 1.0.0-beta.116

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 (202) hide show
  1. package/commands/add/component-installer.js +3 -3
  2. package/commands/add/component-installer.js.map +1 -1
  3. package/commands/add/component-selector.d.ts +3 -3
  4. package/commands/add/component-selector.js +3 -3
  5. package/commands/add/dependency-resolver.js +10 -7
  6. package/commands/add/dependency-resolver.js.map +1 -1
  7. package/commands/add/index.d.ts.map +1 -1
  8. package/commands/add/index.js +12 -20
  9. package/commands/add/index.js.map +1 -1
  10. package/commands/add/wizard.d.ts +8 -7
  11. package/commands/add/wizard.d.ts.map +1 -1
  12. package/commands/add/wizard.js +2 -2
  13. package/commands/add/wizard.js.map +1 -1
  14. package/commands/init/config-prompter.d.ts +18 -13
  15. package/commands/init/config-prompter.d.ts.map +1 -1
  16. package/commands/init/config-prompter.js +25 -19
  17. package/commands/init/config-prompter.js.map +1 -1
  18. package/commands/init/dependencies.d.ts.map +1 -1
  19. package/commands/init/dependencies.js +21 -24
  20. package/commands/init/dependencies.js.map +1 -1
  21. package/commands/init/index.js +20 -20
  22. package/commands/init/index.js.map +1 -1
  23. package/commands/init/project-kind.d.ts +39 -39
  24. package/commands/init/project-kind.d.ts.map +1 -1
  25. package/commands/init/project-kind.js +44 -44
  26. package/commands/init/project-kind.js.map +1 -1
  27. package/commands/init/steps.d.ts +3 -4
  28. package/commands/init/steps.d.ts.map +1 -1
  29. package/commands/init/steps.js +25 -24
  30. package/commands/init/steps.js.map +1 -1
  31. package/commands/init/tailwind-setup.d.ts +5 -5
  32. package/commands/init/tailwind-setup.js +14 -14
  33. package/commands/init/tailwind-setup.js.map +1 -1
  34. package/commands/init/tsconfig-updater.d.ts +4 -4
  35. package/commands/init/tsconfig-updater.js +12 -12
  36. package/commands/init/tsconfig-updater.js.map +1 -1
  37. package/commands/init/update-angular-config.js +4 -4
  38. package/commands/init/vite-setup.d.ts +5 -4
  39. package/commands/init/vite-setup.d.ts.map +1 -1
  40. package/commands/init/vite-setup.js +11 -10
  41. package/commands/init/vite-setup.js.map +1 -1
  42. package/commands/init/wizard.d.ts +5 -5
  43. package/commands/init/wizard.d.ts.map +1 -1
  44. package/commands/init/wizard.js +29 -29
  45. package/commands/init/wizard.js.map +1 -1
  46. package/core/icons/families.d.ts +20 -20
  47. package/core/icons/families.d.ts.map +1 -1
  48. package/core/icons/families.js +11 -11
  49. package/core/icons/families.js.map +1 -1
  50. package/core/icons/icon-map.d.ts.map +1 -1
  51. package/core/icons/icon-map.js +9 -4
  52. package/core/icons/icon-map.js.map +1 -1
  53. package/core/icons/index.d.ts +50 -50
  54. package/core/icons/index.d.ts.map +1 -1
  55. package/core/icons/index.js +45 -45
  56. package/core/icons/index.js.map +1 -1
  57. package/core/registry/registry-data.d.ts.map +1 -1
  58. package/core/registry/registry-data.js +103 -14
  59. package/core/registry/registry-data.js.map +1 -1
  60. package/core/themes/theme-definitions.d.ts.map +1 -1
  61. package/core/themes/theme-definitions.js +10 -0
  62. package/core/themes/theme-definitions.js.map +1 -1
  63. package/index.js +3 -2
  64. package/index.js.map +1 -1
  65. package/package.json +6 -8
  66. package/ui/blocks.d.ts +29 -28
  67. package/ui/blocks.d.ts.map +1 -1
  68. package/ui/blocks.js +27 -27
  69. package/ui/blocks.js.map +1 -1
  70. package/ui/brand.d.ts +5 -5
  71. package/ui/brand.d.ts.map +1 -1
  72. package/ui/brand.js +6 -6
  73. package/ui/brand.js.map +1 -1
  74. package/ui/engine/animation/index.d.ts +2 -3
  75. package/ui/engine/animation/index.d.ts.map +1 -1
  76. package/ui/engine/animation/index.js +2 -3
  77. package/ui/engine/animation/index.js.map +1 -1
  78. package/ui/engine/ansi/index.d.ts +10 -11
  79. package/ui/engine/ansi/index.d.ts.map +1 -1
  80. package/ui/engine/ansi/index.js +6 -7
  81. package/ui/engine/ansi/index.js.map +1 -1
  82. package/ui/engine/components/index.d.ts +3 -3
  83. package/ui/engine/components/index.js +4 -4
  84. package/ui/engine/cursor/index.d.ts +3 -4
  85. package/ui/engine/cursor/index.d.ts.map +1 -1
  86. package/ui/engine/cursor/index.js +2 -3
  87. package/ui/engine/cursor/index.js.map +1 -1
  88. package/ui/engine/diff/index.d.ts +2 -3
  89. package/ui/engine/diff/index.d.ts.map +1 -1
  90. package/ui/engine/diff/index.js +5 -6
  91. package/ui/engine/diff/index.js.map +1 -1
  92. package/ui/engine/events/index.d.ts +2 -2
  93. package/ui/engine/events/index.js +3 -3
  94. package/ui/engine/events/index.js.map +1 -1
  95. package/ui/engine/focus/index.d.ts +2 -2
  96. package/ui/engine/focus/index.js +2 -2
  97. package/ui/engine/frame/index.d.ts +4 -4
  98. package/ui/engine/frame/index.js +0 -0
  99. package/ui/engine/index.d.ts +7 -7
  100. package/ui/engine/index.js +7 -7
  101. package/ui/engine/input/index.d.ts +2 -2
  102. package/ui/engine/input/index.js +11 -11
  103. package/ui/engine/input/index.js.map +1 -1
  104. package/ui/engine/layout/index.d.ts +3 -3
  105. package/ui/engine/layout/index.js +7 -7
  106. package/ui/engine/layout/index.js.map +1 -1
  107. package/ui/engine/renderer/index.d.ts +4 -4
  108. package/ui/engine/renderer/index.d.ts.map +1 -1
  109. package/ui/engine/renderer/index.js +3 -3
  110. package/ui/engine/scheduler/index.d.ts +3 -3
  111. package/ui/engine/scheduler/index.js +5 -5
  112. package/ui/engine/scheduler/index.js.map +1 -1
  113. package/ui/engine/screen/index.d.ts +5 -5
  114. package/ui/engine/screen/index.d.ts.map +1 -1
  115. package/ui/engine/screen/index.js +7 -7
  116. package/ui/engine/screen/index.js.map +1 -1
  117. package/ui/engine/terminal/index.d.ts +29 -29
  118. package/ui/engine/terminal/index.d.ts.map +1 -1
  119. package/ui/engine/terminal/index.js +47 -47
  120. package/ui/engine/terminal/index.js.map +1 -1
  121. package/ui/engine/testing/index.d.ts +4 -4
  122. package/ui/engine/testing/index.d.ts.map +1 -1
  123. package/ui/engine/testing/index.js +2 -2
  124. package/ui/engine/theme/index.d.ts +2 -3
  125. package/ui/engine/theme/index.d.ts.map +1 -1
  126. package/ui/engine/theme/index.js +3 -4
  127. package/ui/engine/theme/index.js.map +1 -1
  128. package/ui/engine/utils/index.d.ts +2 -2
  129. package/ui/engine/utils/index.js +4 -4
  130. package/ui/engine/utils/index.js.map +1 -1
  131. package/ui/gate.d.ts +7 -7
  132. package/ui/gate.d.ts.map +1 -1
  133. package/ui/gate.js +5 -5
  134. package/ui/index.d.ts +3 -3
  135. package/ui/index.js +3 -3
  136. package/ui/log-sink.d.ts +9 -9
  137. package/ui/log-sink.d.ts.map +1 -1
  138. package/ui/log-sink.js +9 -9
  139. package/ui/log-sink.js.map +1 -1
  140. package/ui/output.d.ts +6 -6
  141. package/ui/output.d.ts.map +1 -1
  142. package/ui/output.js +6 -6
  143. package/ui/output.js.map +1 -1
  144. package/ui/report.d.ts +8 -8
  145. package/ui/report.d.ts.map +1 -1
  146. package/ui/report.js +7 -7
  147. package/ui/report.js.map +1 -1
  148. package/ui/runner.d.ts +25 -25
  149. package/ui/runner.d.ts.map +1 -1
  150. package/ui/runner.js +27 -27
  151. package/ui/runner.js.map +1 -1
  152. package/ui/style.d.ts +7 -7
  153. package/ui/style.d.ts.map +1 -1
  154. package/ui/style.js +8 -8
  155. package/ui/style.js.map +1 -1
  156. package/ui/testing/fake-tty.d.ts +4 -4
  157. package/ui/testing/fake-tty.js +4 -4
  158. package/ui/text-input.d.ts +14 -13
  159. package/ui/text-input.d.ts.map +1 -1
  160. package/ui/text-input.js +15 -13
  161. package/ui/text-input.js.map +1 -1
  162. package/ui/theme.d.ts +4 -4
  163. package/ui/theme.js +4 -4
  164. package/utils/angular-compat.d.ts +21 -0
  165. package/utils/angular-compat.d.ts.map +1 -0
  166. package/utils/angular-compat.js +52 -0
  167. package/utils/angular-compat.js.map +1 -0
  168. package/utils/config.d.ts +6 -6
  169. package/utils/config.d.ts.map +1 -1
  170. package/utils/config.js +20 -20
  171. package/utils/config.js.map +1 -1
  172. package/utils/errors.d.ts +5 -5
  173. package/utils/errors.js +5 -5
  174. package/utils/get-project-info.d.ts +6 -6
  175. package/utils/get-project-info.d.ts.map +1 -1
  176. package/utils/get-project-info.js +35 -35
  177. package/utils/get-project-info.js.map +1 -1
  178. package/utils/http-client.d.ts.map +1 -1
  179. package/utils/http-client.js +18 -3
  180. package/utils/http-client.js.map +1 -1
  181. package/utils/icon-catalog.d.ts +16 -15
  182. package/utils/icon-catalog.d.ts.map +1 -1
  183. package/utils/icon-catalog.js +21 -20
  184. package/utils/icon-catalog.js.map +1 -1
  185. package/utils/logger.d.ts +3 -3
  186. package/utils/logger.js +9 -9
  187. package/utils/logger.js.map +1 -1
  188. package/utils/package-manager.d.ts +25 -25
  189. package/utils/package-manager.js +48 -48
  190. package/utils/package-manager.js.map +1 -1
  191. package/utils/registry.d.ts +14 -14
  192. package/utils/registry.d.ts.map +1 -1
  193. package/utils/registry.js +23 -19
  194. package/utils/registry.js.map +1 -1
  195. package/utils/schema-version.d.ts +11 -10
  196. package/utils/schema-version.d.ts.map +1 -1
  197. package/utils/schema-version.js +11 -10
  198. package/utils/schema-version.js.map +1 -1
  199. package/utils/source-file.d.ts +21 -21
  200. package/utils/source-file.d.ts.map +1 -1
  201. package/utils/source-file.js +24 -24
  202. package/utils/source-file.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/engine/ansi/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,sEAAsE;AACtE,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AAErE,6EAA6E;AAC7E,MAAM,MAAM,SAAS,GACjB;IAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GACpF;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC;AAEjC;;;GAGG;AACH,eAAO,MAAM,IAAI;;;;;;;;;CASP,CAAC;AACX,mEAAmE;AACnE,MAAM,MAAM,IAAI,GAAG,MAAM,CAAC;AAE1B,eAAO,MAAM,GAAG,WAAS,CAAC;AAE1B,+EAA+E;AAC/E,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExC;AAsCD;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,GAAG,MAAM,CAAC;IAC9D,KAAK,IAAI,MAAM,CAAC;IAChB,KAAK,IAAI,IAAI,CAAC;CACf;AAED,wBAAgB,gBAAgB,IAAI,UAAU,CA8C7C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/engine/ansi/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,yEAAyE;AACzE,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AAErE,kFAAkF;AAClF,MAAM,MAAM,SAAS,GACjB;IAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GACpF;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC;AAEjC;;;GAGG;AACH,eAAO,MAAM,IAAI;;;;;;;;;CASP,CAAC;AACX,+DAA+D;AAC/D,MAAM,MAAM,IAAI,GAAG,MAAM,CAAC;AAE1B,eAAO,MAAM,GAAG,WAAS,CAAC;AAE1B,6EAA6E;AAC7E,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExC;AAsCD;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,GAAG,MAAM,CAAC;IAC9D,KAAK,IAAI,MAAM,CAAC;IAChB,KAAK,IAAI,IAAI,CAAC;CACf;AAED,wBAAgB,gBAAgB,IAAI,UAAU,CA8C7C"}
@@ -1,11 +1,10 @@
1
1
  /**
2
- * ansi — geração de sequências de escape (CSI/SGR) e o vocabulário de cor.
3
- * Nível mais baixo que "conhece" o protocolo do terminal. Sem I/O.
4
- * (Fatia vertical / PoC: implementação real.)
2
+ * ansi — generates escape sequences (CSI/SGR) and defines the colour vocabulary.
3
+ * The lowest level that "knows" the terminal protocol. No I/O.
5
4
  */
6
5
  /**
7
- * Atributos de texto como bitmask (comparável por valor, barato de diffar).
8
- * Objeto const (não `const enum`) para ser compatível com `isolatedModules`.
6
+ * Text attributes as a bitmask (comparable by value, cheap to diff).
7
+ * A const object, not a `const enum`, to stay compatible with `isolatedModules`.
9
8
  */
10
9
  export const Attr = {
11
10
  None: 0,
@@ -18,7 +17,7 @@ export const Attr = {
18
17
  Blink: 1 << 6,
19
18
  };
20
19
  export const ESC = '\x1b';
21
- /** Monta uma sequência CSI (`ESC [ … `). Ex.: csi("2J"), csi(`${y};${x}H`). */
20
+ /** Builds a CSI sequence (`ESC [ … `). e.g. csi("2J"), csi(`${y};${x}H`). */
22
21
  export function csi(body) {
23
22
  return ESC + '[' + body;
24
23
  }
@@ -75,7 +74,7 @@ export function createSgrBuilder() {
75
74
  const fgToDefault = fg.kind === 'default' && curFg.kind !== 'default';
76
75
  const bgToDefault = bg.kind === 'default' && curBg.kind !== 'default';
77
76
  if (removingAttr || fgToDefault || bgToDefault) {
78
- // Não dá para "desligar" seletivamente de forma barata → reset e reconstrói.
77
+ // There is no cheap way to turn attributes off selectively → reset and rebuild.
79
78
  const codes = [0, ...attrCodes(attrs)];
80
79
  if (fg.kind !== 'default')
81
80
  codes.push(...colorCodes(fg, true));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/engine/ansi/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/engine/ansi/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
- * components — fábricas puras que retornam `Node` imutável (immediate-mode
3
- * declarativo, ADR-0002). Sem JSX, sem classes, sem estado oculto.
4
- * (Fatia vertical / PoC: fábricas reais. A pintura de cada tipo vive no renderer.)
2
+ * components — pure factories returning an immutable `Node` (declarative
3
+ * immediate mode, ADR-0002). No JSX, no classes, no hidden state. Painting each
4
+ * type lives in the renderer.
5
5
  */
6
6
  import type { Attr } from '../ansi/index.js';
7
7
  import type { ColorRef } from '../frame/index.js';
@@ -1,13 +1,13 @@
1
1
  /**
2
- * components — fábricas puras que retornam `Node` imutável (immediate-mode
3
- * declarativo, ADR-0002). Sem JSX, sem classes, sem estado oculto.
4
- * (Fatia vertical / PoC: fábricas reais. A pintura de cada tipo vive no renderer.)
2
+ * components — pure factories returning an immutable `Node` (declarative
3
+ * immediate mode, ADR-0002). No JSX, no classes, no hidden state. Painting each
4
+ * type lives in the renderer.
5
5
  */
6
6
  function node(type, props = {}, children = [], key) {
7
7
  const p = props;
8
8
  return key === undefined ? { type, props: p, children } : { type, props: p, children, key };
9
9
  }
10
- // texto e contêineres
10
+ // text and containers
11
11
  export function text(content, style = {}) {
12
12
  return node('text', { content, ...style });
13
13
  }
@@ -1,9 +1,8 @@
1
1
  /**
2
- * cursor — geração de sequências de posicionamento/visibilidade do cursor.
3
- * Funções puras (retornam bytes); quem escreve é o `terminal`.
4
- * (Fatia vertical / PoC: implementação real.)
2
+ * cursor — generates cursor positioning and visibility sequences.
3
+ * Pure functions returning bytes; `terminal` is what writes them.
5
4
  */
6
- /** Fábrica de sequências de cursor. Coordenadas base 0 na API; 1-based no CSI. */
5
+ /** Cursor sequence factory. Coordinates are 0-based in the API, 1-based in CSI. */
7
6
  export interface Cursor {
8
7
  moveTo(x: number, y: number): string;
9
8
  moveBy(dx: number, dy: number): string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/engine/cursor/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,kFAAkF;AAClF,MAAM,WAAW,MAAM;IACrB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACvC,IAAI,IAAI,MAAM,CAAC;IACf,IAAI,IAAI,MAAM,CAAC;IACf,IAAI,IAAI,MAAM,CAAC;IACf,OAAO,IAAI,MAAM,CAAC;IAClB,aAAa,IAAI,MAAM,CAAC;CACzB;AAED,wBAAgB,YAAY,IAAI,MAAM,CA6BrC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/engine/cursor/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,mFAAmF;AACnF,MAAM,WAAW,MAAM;IACrB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACvC,IAAI,IAAI,MAAM,CAAC;IACf,IAAI,IAAI,MAAM,CAAC;IACf,IAAI,IAAI,MAAM,CAAC;IACf,OAAO,IAAI,MAAM,CAAC;IAClB,aAAa,IAAI,MAAM,CAAC;CACzB;AAED,wBAAgB,YAAY,IAAI,MAAM,CA6BrC"}
@@ -1,7 +1,6 @@
1
1
  /**
2
- * cursor — geração de sequências de posicionamento/visibilidade do cursor.
3
- * Funções puras (retornam bytes); quem escreve é o `terminal`.
4
- * (Fatia vertical / PoC: implementação real.)
2
+ * cursor — generates cursor positioning and visibility sequences.
3
+ * Pure functions returning bytes; `terminal` is what writes them.
5
4
  */
6
5
  import { csi } from '../ansi/index.js';
7
6
  export function createCursor() {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/engine/cursor/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAavC,MAAM,UAAU,YAAY;IAC1B,OAAO;QACL,MAAM,CAAC,CAAC,EAAE,CAAC;YACT,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC;QACD,MAAM,CAAC,EAAE,EAAE,EAAE;YACX,IAAI,GAAG,GAAG,EAAE,CAAC;YACb,IAAI,EAAE,GAAG,CAAC;gBAAE,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;iBAC7B,IAAI,EAAE,GAAG,CAAC;gBAAE,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACtC,IAAI,EAAE,GAAG,CAAC;gBAAE,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;iBAC5B,IAAI,EAAE,GAAG,CAAC;gBAAE,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YACvC,OAAO,GAAG,CAAC;QACb,CAAC;QACD,IAAI;YACF,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;QACD,IAAI;YACF,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;QACD,IAAI;YACF,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC;QACD,OAAO;YACL,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC;QACD,aAAa;YACX,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/engine/cursor/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAavC,MAAM,UAAU,YAAY;IAC1B,OAAO;QACL,MAAM,CAAC,CAAC,EAAE,CAAC;YACT,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC;QACD,MAAM,CAAC,EAAE,EAAE,EAAE;YACX,IAAI,GAAG,GAAG,EAAE,CAAC;YACb,IAAI,EAAE,GAAG,CAAC;gBAAE,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;iBAC7B,IAAI,EAAE,GAAG,CAAC;gBAAE,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACtC,IAAI,EAAE,GAAG,CAAC;gBAAE,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;iBAC5B,IAAI,EAAE,GAAG,CAAC;gBAAE,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YACvC,OAAO,GAAG,CAAC;QACb,CAAC;QACD,IAAI;YACF,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;QACD,IAAI;YACF,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;QACD,IAAI;YACF,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC;QACD,OAAO;YACL,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC;QACD,aAAa;YACX,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,7 +1,6 @@
1
1
  /**
2
- * diff — compara dois Frames e emite o conjunto MÍNIMO de mudanças, como
3
- * runs (segmentos contíguos) por linha alterada. Função pura (ADR-0001).
4
- * (Fatia vertical / PoC: implementação real.)
2
+ * diff — compares two Frames and emits the MINIMAL set of changes, as runs
3
+ * (contiguous segments) per changed line. A pure function (ADR-0001).
5
4
  */
6
5
  import type { Cell, Frame, Size } from '../frame/index.js';
7
6
  export interface Run {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/engine/diff/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE3D,MAAM,WAAW,GAAG;IAClB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;CACjC;AACD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,EAAE,CAAC;CAC/B;AACD,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,SAAS,SAAS,EAAE,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AACD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AACD,MAAM,WAAW,MAAM;IACrB,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,CAAC;CACvC;AASD,wBAAgB,YAAY,CAAC,OAAO,GAAE,aAAkB,GAAG,MAAM,CA4ChE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/engine/diff/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE3D,MAAM,WAAW,GAAG;IAClB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;CACjC;AACD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,EAAE,CAAC;CAC/B;AACD,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,SAAS,SAAS,EAAE,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AACD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AACD,MAAM,WAAW,MAAM;IACrB,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,CAAC;CACvC;AASD,wBAAgB,YAAY,CAAC,OAAO,GAAE,aAAkB,GAAG,MAAM,CA4ChE"}
@@ -1,7 +1,6 @@
1
1
  /**
2
- * diff — compara dois Frames e emite o conjunto MÍNIMO de mudanças, como
3
- * runs (segmentos contíguos) por linha alterada. Função pura (ADR-0001).
4
- * (Fatia vertical / PoC: implementação real.)
2
+ * diff — compares two Frames and emits the MINIMAL set of changes, as runs
3
+ * (contiguous segments) per changed line. A pure function (ADR-0001).
5
4
  */
6
5
  function styleEquals(a, b) {
7
6
  return a.fg === b.fg && a.bg === b.bg && a.attrs === b.attrs;
@@ -25,7 +24,7 @@ export function createDiffer(options = {}) {
25
24
  const runs = [];
26
25
  let x = 0;
27
26
  while (x < cols) {
28
- // avança sobre células iguais
27
+ // skip over identical cells
29
28
  while (x < cols && cellEquals(a[x], b[x]))
30
29
  x++;
31
30
  if (x >= cols)
@@ -33,13 +32,13 @@ export function createDiffer(options = {}) {
33
32
  const start = x;
34
33
  while (x < cols) {
35
34
  if (cellEquals(a[x], b[x])) {
36
- // coalescing: só encerra o run se o trecho igual for >= minGap
35
+ // coalescing: only end the run when the identical stretch is >= minGap
37
36
  let k = x;
38
37
  while (k < cols && cellEquals(a[k], b[k]))
39
38
  k++;
40
39
  if (k >= cols || k - x >= minGap)
41
40
  break;
42
- x = k; // funde o trecho igual curto dentro do run
41
+ x = k; // fold the short identical stretch into the run
43
42
  }
44
43
  else {
45
44
  x++;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/engine/diff/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/engine/diff/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /**
2
- * events — primitivas de eventos tipadas. Base de input/focus/scheduler.
3
- * Sem dependências. Sem I/O. (Implementação real.)
2
+ * events — typed event primitives. The basis of input/focus/scheduler.
3
+ * No dependencies. No I/O.
4
4
  */
5
5
  export interface Disposable {
6
6
  dispose(): void;
@@ -1,6 +1,6 @@
1
1
  /**
2
- * events — primitivas de eventos tipadas. Base de input/focus/scheduler.
3
- * Sem dependências. Sem I/O. (Implementação real.)
2
+ * events — typed event primitives. The basis of input/focus/scheduler.
3
+ * No dependencies. No I/O.
4
4
  */
5
5
  export function createEmitter() {
6
6
  const listeners = new Set();
@@ -18,7 +18,7 @@ export function createEmitter() {
18
18
  return { dispose: () => listeners.delete(wrap) };
19
19
  },
20
20
  emit(payload) {
21
- // itera sobre cópia: listeners podem se remover durante o emit
21
+ // iterate over a copy: listeners may remove themselves during the emit
22
22
  for (const l of [...listeners])
23
23
  l(payload);
24
24
  },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/engine/events/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAcH,MAAM,UAAU,aAAa;IAC3B,MAAM,SAAS,GAAG,IAAI,GAAG,EAAwB,CAAC;IAClD,OAAO;QACL,EAAE,CAAC,QAAQ;YACT,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACxB,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvD,CAAC;QACD,IAAI,CAAC,QAAQ;YACX,MAAM,IAAI,GAAG,CAAC,OAAU,EAAQ,EAAE;gBAChC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvB,QAAQ,CAAC,OAAO,CAAC,CAAC;YACpB,CAAC,CAAC;YACF,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpB,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,CAAC;QACD,IAAI,CAAC,OAAO;YACV,+DAA+D;YAC/D,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;gBAAE,CAAC,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;QACD,KAAK;YACH,SAAS,CAAC,KAAK,EAAE,CAAC;QACpB,CAAC;QACD,IAAI,IAAI;YACN,OAAO,SAAS,CAAC,IAAI,CAAC;QACxB,CAAC;KACF,CAAC;AACJ,CAAC;AASD,MAAM,UAAU,MAAM,CAAI,OAAU;IAClC,IAAI,KAAK,GAAG,OAAO,CAAC;IACpB,MAAM,OAAO,GAAG,aAAa,EAAK,CAAC;IACnC,OAAO;QACL,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK;QAChB,GAAG,CAAC,IAAI;YACN,IAAI,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;gBAAE,OAAO;YACnC,KAAK,GAAG,IAAI,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;QACD,MAAM,CAAC,EAAE;YACP,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;QACtB,CAAC;QACD,SAAS,CAAC,QAAQ;YAChB,OAAO,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,GAAG,WAAyB;IAClD,OAAO;QACL,OAAO;YACL,KAAK,MAAM,CAAC,IAAI,WAAW;gBAAE,CAAC,CAAC,OAAO,EAAE,CAAC;QAC3C,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/engine/events/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAcH,MAAM,UAAU,aAAa;IAC3B,MAAM,SAAS,GAAG,IAAI,GAAG,EAAwB,CAAC;IAClD,OAAO;QACL,EAAE,CAAC,QAAQ;YACT,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACxB,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvD,CAAC;QACD,IAAI,CAAC,QAAQ;YACX,MAAM,IAAI,GAAG,CAAC,OAAU,EAAQ,EAAE;gBAChC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvB,QAAQ,CAAC,OAAO,CAAC,CAAC;YACpB,CAAC,CAAC;YACF,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpB,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,CAAC;QACD,IAAI,CAAC,OAAO;YACV,uEAAuE;YACvE,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;gBAAE,CAAC,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;QACD,KAAK;YACH,SAAS,CAAC,KAAK,EAAE,CAAC;QACpB,CAAC;QACD,IAAI,IAAI;YACN,OAAO,SAAS,CAAC,IAAI,CAAC;QACxB,CAAC;KACF,CAAC;AACJ,CAAC;AASD,MAAM,UAAU,MAAM,CAAI,OAAU;IAClC,IAAI,KAAK,GAAG,OAAO,CAAC;IACpB,MAAM,OAAO,GAAG,aAAa,EAAK,CAAC;IACnC,OAAO;QACL,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK;QAChB,GAAG,CAAC,IAAI;YACN,IAAI,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;gBAAE,OAAO;YACnC,KAAK,GAAG,IAAI,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;QACD,MAAM,CAAC,EAAE;YACP,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;QACtB,CAAC;QACD,SAAS,CAAC,QAAQ;YAChB,OAAO,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,GAAG,WAAyB;IAClD,OAAO;QACL,OAAO;YACL,KAAK,MAAM,CAAC,IAAI,WAAW;gBAAE,CAAC,CAAC,OAAO,EAAE,CAAC;QAC3C,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
- * focus — gerenciamento de foco como ESTADO RETIDO, keyed por identidade
3
- * estável de componente. Ordem de tabulação e roteamento de teclado. (Real.)
2
+ * focus — focus management as RETAINED STATE, keyed by a stable component
3
+ * identity. Tab order and keyboard routing.
4
4
  */
5
5
  import { type Disposable } from '../events/index.js';
6
6
  import type { KeyEvent } from '../input/index.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
- * focus — gerenciamento de foco como ESTADO RETIDO, keyed por identidade
3
- * estável de componente. Ordem de tabulação e roteamento de teclado. (Real.)
2
+ * focus — focus management as RETAINED STATE, keyed by a stable component
3
+ * identity. Tab order and keyboard routing.
4
4
  */
5
5
  import { createEmitter } from '../events/index.js';
6
6
  export function createFocusManager() {
@@ -1,9 +1,9 @@
1
1
  /**
2
- * frame — o modelo de dados central: Cell, CellStyle e Frame (grade 2D).
3
- * É o ALVO do diff. Escrita sem I/O.
2
+ * frame — the central data model: Cell, CellStyle and Frame (a 2D grid).
3
+ * It is the TARGET of the diff. Written without I/O.
4
4
  *
5
- * (Fatia vertical / PoC): buffers paralelos + string interning de estilo
6
- * (ADR-0005) e hash de linha lazy com dirty flags (ADR-0001).
5
+ * Parallel buffers plus style string interning (ADR-0005), and lazy per-line
6
+ * hashes with dirty flags (ADR-0001).
7
7
  */
8
8
  import { Attr } from '../ansi/index.js';
9
9
  export interface Size {
Binary file
@@ -1,13 +1,13 @@
1
1
  /**
2
- * terminal-engine — superfície pública da engine de renderização do terminal.
2
+ * terminal-engine — the public surface of the terminal rendering engine.
3
3
  *
4
- * Engine orientada a diff sobre Node.js + ANSI puro: sem React, sem Ink, sem
5
- * Virtual DOM e sem dependências externas. A aplicação descreve o que aparece
6
- * a cada frame; a engine descobre o que mudou e escreve o mínimo de bytes.
4
+ * A diff-driven engine over Node.js and plain ANSI: no React, no Ink, no virtual
5
+ * DOM and no external dependencies. The application describes what appears each
6
+ * frame; the engine works out what changed and writes the fewest bytes it can.
7
7
  *
8
- * Este diretório é código vendorizado — a fonte original vive no pacote
9
- * `@zardui/terminal-engine`. Ajustes de comportamento devem ser feitos lá e
10
- * ressincronizados aqui, para que os dois lados não divirjam.
8
+ * This directory is vendored code — the original source lives in the
9
+ * `@zardui/terminal-engine` package. Behavioural changes belong there and should
10
+ * be resynced here, so the two sides cannot diverge.
11
11
  */
12
12
  export * from './utils/index.js';
13
13
  export * from './ansi/index.js';
@@ -1,13 +1,13 @@
1
1
  /**
2
- * terminal-engine — superfície pública da engine de renderização do terminal.
2
+ * terminal-engine — the public surface of the terminal rendering engine.
3
3
  *
4
- * Engine orientada a diff sobre Node.js + ANSI puro: sem React, sem Ink, sem
5
- * Virtual DOM e sem dependências externas. A aplicação descreve o que aparece
6
- * a cada frame; a engine descobre o que mudou e escreve o mínimo de bytes.
4
+ * A diff-driven engine over Node.js and plain ANSI: no React, no Ink, no virtual
5
+ * DOM and no external dependencies. The application describes what appears each
6
+ * frame; the engine works out what changed and writes the fewest bytes it can.
7
7
  *
8
- * Este diretório é código vendorizado — a fonte original vive no pacote
9
- * `@zardui/terminal-engine`. Ajustes de comportamento devem ser feitos lá e
10
- * ressincronizados aqui, para que os dois lados não divirjam.
8
+ * This directory is vendored code — the original source lives in the
9
+ * `@zardui/terminal-engine` package. Behavioural changes belong there and should
10
+ * be resynced here, so the two sides cannot diverge.
11
11
  */
12
12
  export * from './utils/index.js';
13
13
  export * from './ansi/index.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
- * input — parser (máquina de estados sobre bytes, ADR-0008) que transforma
3
- * o stdin cru em KeyEvent/MouseEvent/paste semânticos. (Implementação real.)
2
+ * input — a parser (a byte-level state machine, ADR-0008) that turns raw stdin
3
+ * into semantic KeyEvent / MouseEvent / paste events.
4
4
  */
5
5
  import { type Disposable } from '../events/index.js';
6
6
  export type Key = string | 'enter' | 'escape' | 'tab' | 'backspace' | 'delete' | 'insert' | 'home' | 'end' | 'pageup' | 'pagedown' | 'up' | 'down' | 'left' | 'right' | 'space';
@@ -1,6 +1,6 @@
1
1
  /**
2
- * input — parser (máquina de estados sobre bytes, ADR-0008) que transforma
3
- * o stdin cru em KeyEvent/MouseEvent/paste semânticos. (Implementação real.)
2
+ * input — a parser (a byte-level state machine, ADR-0008) that turns raw stdin
3
+ * into semantic KeyEvent / MouseEvent / paste events.
4
4
  */
5
5
  import { createEmitter } from '../events/index.js';
6
6
  const CSI_KEY = {
@@ -21,7 +21,7 @@ const TILDE_KEY = {
21
21
  7: 'home',
22
22
  8: 'end',
23
23
  };
24
- /** Decodifica uma tecla simples (não-escape) do início de `buf`. consumed=0 ⇒ incompleto. */
24
+ /** Decodes one simple (non-escape) key from the start of `buf`. consumed=0 ⇒ incomplete. */
25
25
  function decodeSimple(buf) {
26
26
  const b = buf[0];
27
27
  if (b === undefined)
@@ -49,8 +49,8 @@ export function createInputManager(onData, options = {}) {
49
49
  const mouse = createEmitter();
50
50
  const paste = createEmitter();
51
51
  const escTimeout = options.escTimeout ?? 50;
52
- // Anotação explícita: Buffer.concat devolve Buffer<ArrayBufferLike>, que não
53
- // é atribuível ao Buffer<ArrayBuffer> inferido de Buffer.alloc.
52
+ // Explicit annotation: Buffer.concat returns Buffer<ArrayBufferLike>, which is
53
+ // not assignable to the Buffer<ArrayBuffer> inferred from Buffer.alloc.
54
54
  let pending = Buffer.alloc(0);
55
55
  let pasteMode = false;
56
56
  let pasteBuf = '';
@@ -60,7 +60,7 @@ export function createInputManager(onData, options = {}) {
60
60
  keys.emit({ key, ctrl, alt, shift, raw });
61
61
  };
62
62
  const PASTE_END = Buffer.from('\x1b[201~');
63
- /** Consome UM token do início de `pending`; retorna bytes consumidos ou 0 (incompleto). */
63
+ /** Consumes ONE token from the start of `pending`; returns bytes consumed, or 0 (incomplete). */
64
64
  function step() {
65
65
  if (pending.length === 0)
66
66
  return 0;
@@ -82,7 +82,7 @@ export function createInputManager(onData, options = {}) {
82
82
  emitKey(d.key, d.ctrl, false, d.shift, pending.subarray(0, d.consumed).toString('utf8'));
83
83
  return d.consumed;
84
84
  }
85
- // ── sequência de escape ──
85
+ // ── escape sequence ──
86
86
  if (pending.length === 1)
87
87
  return 0; // ESC sozinho → timeout decide
88
88
  const b1 = pending[1];
@@ -102,15 +102,15 @@ export function createInputManager(onData, options = {}) {
102
102
  while (i < pending.length) {
103
103
  const c = pending[i];
104
104
  if (c >= 0x30 && c <= 0x3f)
105
- i++; // bytes de parâmetro (dígitos, ';', '<', '?')
105
+ i++; // parameter bytes (digits, ';', '<', '?')
106
106
  else
107
107
  break;
108
108
  }
109
109
  if (i >= pending.length)
110
- return 0; // falta o byte final
110
+ return 0; // the final byte is missing
111
111
  const final = pending[i];
112
112
  if (final < 0x40 || final > 0x7e) {
113
- // inválido: descarta ESC[ e segue
113
+ // invalid: drop ESC[ and carry on
114
114
  return 2;
115
115
  }
116
116
  const paramStr = pending.subarray(2, i).toString('latin1');
@@ -145,7 +145,7 @@ export function createInputManager(onData, options = {}) {
145
145
  });
146
146
  return consumed;
147
147
  }
148
- // teclas de navegação (com modificadores opcionais)
148
+ // navigation keys (with optional modifiers)
149
149
  const nums = paramStr.split(';');
150
150
  const mod = nums.length > 1 ? Number(nums[1]) : 0;
151
151
  const bits = mod > 0 ? mod - 1 : 0;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/engine/input/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/engine/input/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
- * layout — engine de layout tipo Flexbox, em inteiros, duas passagens
3
- * (medir bottom-up, posicionar top-down). Função pura: (Node, Size) → boxes.
4
- * (Fatia vertical / PoC: subconjunto real — column/row/center + box/panel + leafs.)
2
+ * layout — a Flexbox-like layout engine, in integers, in two passes (measure
3
+ * bottom-up, position top-down). A pure function: (Node, Size) → boxes.
4
+ * Supports column/row/center, box/panel and leaves.
5
5
  */
6
6
  import type { Node } from '../components/index.js';
7
7
  import type { Rect, Size } from '../frame/index.js';
@@ -1,7 +1,7 @@
1
1
  /**
2
- * layout — engine de layout tipo Flexbox, em inteiros, duas passagens
3
- * (medir bottom-up, posicionar top-down). Função pura: (Node, Size) → boxes.
4
- * (Fatia vertical / PoC: subconjunto real — column/row/center + box/panel + leafs.)
2
+ * layout — a Flexbox-like layout engine, in integers, in two passes (measure
3
+ * bottom-up, position top-down). A pure function: (Node, Size) → boxes.
4
+ * Supports column/row/center, box/panel and leaves.
5
5
  */
6
6
  import { stringWidth, wrapText } from '../utils/index.js';
7
7
  const CONTAINERS = new Set(['screen', 'box', 'panel', 'card', 'stack', 'row', 'column', 'center', 'grid']);
@@ -38,7 +38,7 @@ function gapOf(n) {
38
38
  function isContainer(n) {
39
39
  return CONTAINERS.has(n.type);
40
40
  }
41
- /** Largura/altura intrínseca de uma folha, dada a largura disponível. */
41
+ /** A leaf's intrinsic width and height, given the available width. */
42
42
  function measureLeaf(n, availW) {
43
43
  const p = n.props;
44
44
  switch (n.type) {
@@ -50,8 +50,8 @@ function measureLeaf(n, availW) {
50
50
  case 'separator':
51
51
  return { w: availW, h: 1 };
52
52
  case 'spinner': {
53
- // Sem label o renderer pinta só o glifo; medir '⠋ ' deixaria uma coluna
54
- // fantasma e desalinharia a linha em relação às irmãs (✔, ○).
53
+ // With no label the renderer paints only the glyph; measuring '⠋ ' would
54
+ // leave a phantom column and misalign the row against its siblings (✔, ○).
55
55
  const label = str(p['label']);
56
56
  return { w: stringWidth(label ? '⠋ ' + label : '⠋'), h: 1 };
57
57
  }
@@ -191,7 +191,7 @@ function place(n, rect, out) {
191
191
  const grows = kids.map(flexGrowOf);
192
192
  const totalGrow = grows.reduce((a, b) => a + b, 0);
193
193
  const extra = kids.map((_, i) => (totalGrow > 0 ? Math.floor((leftover * (grows[i] ?? 0)) / totalGrow) : 0));
194
- // justify: só quando não há flexGrow para consumir a sobra
194
+ // justify: only when no flexGrow is there to absorb the slack
195
195
  let startOffset = 0;
196
196
  let between = gap;
197
197
  if (totalGrow === 0 && leftover > 0 && kids.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/engine/layout/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AA0C1D,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;AAC3G,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAEnD,SAAS,GAAG,CAAC,CAAU,EAAE,CAAC,GAAG,CAAC;IAC5B,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACvC,CAAC;AACD,SAAS,GAAG,CAAC,CAAU;IACrB,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,QAAQ,CAAC,CAAO;IACvB,MAAM,CAAC,GAAG,CAAC,CAAC,KAA0C,CAAC;IACvD,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/E,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC;IACtB,IAAI,CAAC,GAAG,CAAC,EACP,CAAC,GAAG,CAAC,EACL,CAAC,GAAG,CAAC,EACL,CAAC,GAAG,CAAC,CAAC;IACR,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;SAC5C,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QACxC,CAAC,GAAG,GAAG,CAAE,GAAkB,CAAC,GAAG,CAAC,CAAC;QACjC,CAAC,GAAG,GAAG,CAAE,GAAkB,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,GAAG,GAAG,CAAE,GAAkB,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC,GAAG,GAAG,CAAE,GAAkB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC;AACtF,CAAC;AAED,SAAS,KAAK,CAAC,CAAO;IACpB,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IACnC,OAAQ,CAAC,CAAC,KAAqB,CAAC,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AACzE,CAAC;AACD,SAAS,KAAK,CAAC,CAAO;IACpB,OAAO,GAAG,CAAE,CAAC,CAAC,KAAqB,CAAC,GAAG,CAAC,CAAC;AAC3C,CAAC;AACD,SAAS,WAAW,CAAC,CAAO;IAC1B,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED,yEAAyE;AACzE,SAAS,WAAW,CAAC,CAAO,EAAE,MAAc;IAC1C,MAAM,CAAC,GAAG,CAAC,CAAC,KAAgC,CAAC;IAC7C,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;YAC/D,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACzD,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAClE,CAAC;QACD,KAAK,WAAW;YACd,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAC7B,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,wEAAwE;YACxE,8DAA8D;YAC9D,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAC9B,OAAO,EAAE,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9D,CAAC;QACD,KAAK,QAAQ;YACX,OAAO,EAAE,CAAC,EAAE,WAAW,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAC1D,KAAK,OAAO;YACV,OAAO,EAAE,CAAC,EAAE,WAAW,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9D,KAAK,aAAa;YAChB,OAAO,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAC5D,KAAK,QAAQ;YACX,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,KAAK,QAAQ;YACX,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAC7B,KAAK,QAAQ;YACX,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACxB,KAAK,OAAO,CAAC;QACb,KAAK,UAAU,CAAC;QAChB,KAAK,SAAS,CAAC;QACf,KAAK,UAAU;YACb,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAC7B,KAAK,UAAU;YACb,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QACjD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,SAAS,CAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAClF,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,CAAC;QACD,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,OAAO,CAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/E,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;QAC9C,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,MAAM,CAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5E,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC;QAC7C,CAAC;QACD,KAAK,MAAM;YACT,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QAChD,KAAK,YAAY;YACf,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1F,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,OAAO,CAAc,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACzD,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7C,CAAC;QACD,KAAK,cAAc;YACjB,OAAO,EAAE,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACrD;YACE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAC1B,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAAa;IAC9B,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC;IAChD,MAAM,CAAC,GAAG,IAAoD,CAAC;IAC/D,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,IAAI,CAAC,CAAC,QAAQ,KAAK,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtD,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ;YAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,OAAO,CAAC,CAAO,EAAE,MAAc;IACtC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAAE,OAAO,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAEnD,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;IAC/D,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC;IAExB,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;YAClB,IAAI,EAAE,GAAG,CAAC,CAAC;YACX,IAAI,EAAE,GAAG,CAAC,CAAC;YACX,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACpB,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;gBAClC,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5C,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC;YACH,MAAM,GAAG,EAAE,CAAC;YACZ,MAAM,GAAG,EAAE,CAAC;QACd,CAAC;aAAM,CAAC;YACN,IAAI,EAAE,GAAG,CAAC,CAAC;YACX,IAAI,EAAE,GAAG,CAAC,CAAC;YACX,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACpB,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;gBAClC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvB,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;YACH,MAAM,GAAG,EAAE,CAAC;YACZ,MAAM,GAAG,EAAE,CAAC;QACd,CAAC;IACH,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,CAAC,KAAoB,CAAC;IACjC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,yDAAyD;IACtK,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;IAClF,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAClB,CAAC;AAED,SAAS,WAAW,CAAC,CAAO,EAAE,IAAU;IACtC,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxB,OAAO;QACL,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI;QACpB,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG;QACnB,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC;QAC7C,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;KAC9C,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,CAAO;IACzB,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAE,CAAC,CAAC,KAAqB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC1E,OAAO,GAAG,CAAE,CAAC,CAAC,KAAqB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AACnD,CAAC;AACD,SAAS,OAAO,CAAC,CAAO;IACtB,MAAM,CAAC,GAAI,CAAC,CAAC,KAAqB,CAAC,KAAK,CAAC;IACzC,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IAChB,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AACpD,CAAC;AACD,SAAS,SAAS,CAAC,CAAO;IACxB,OAAQ,CAAC,CAAC,KAAqB,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;AACxF,CAAC;AAED,SAAS,KAAK,CAAC,CAAO,EAAE,IAAU,EAAE,GAAgB;IAClD,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7D,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACrC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEvD,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC;IACxB,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAEzB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAClH,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC,CAAC;IAEnD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7G,2DAA2D;IAC3D,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,OAAO,GAAG,GAAG,CAAC;IAClB,IAAI,SAAS,KAAK,CAAC,IAAI,QAAQ,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvD,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,QAAQ;YAAE,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;aACtD,IAAI,CAAC,KAAK,KAAK;YAAE,WAAW,GAAG,QAAQ,CAAC;aACxC,IAAI,CAAC,KAAK,eAAe,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,GAAG,GAAG,GAAG,QAAQ,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;aAC3F,IAAI,CAAC,KAAK,cAAc,EAAE,CAAC;YAC9B,WAAW,GAAG,QAAQ,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC3C,OAAO,GAAG,GAAG,GAAG,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;QACzC,CAAC;IACH,CAAC;IAED,IAAI,GAAG,GAAG,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC5E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACnB,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;QACpB,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/D,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;YAClB,MAAM,EAAE,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,MAAM,EAAE,GACN,KAAK,KAAK,QAAQ;gBAChB,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC/C,CAAC,CAAC,KAAK,KAAK,KAAK;oBACf,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBAC/B,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAClB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YACnF,MAAM,EAAE,GACN,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ;gBACvC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;gBAC9C,CAAC,CAAC,KAAK,KAAK,KAAK;oBACf,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC;oBAC9B,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAClB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC;QACzF,CAAC;QACD,GAAG,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAU,EAAE,QAAc;IACtD,MAAM,GAAG,GAAgB,EAAE,CAAC;IAC5B,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IACrE,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/engine/layout/index.ts"],"names":[],"mappings":"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"}