take4-console 0.25.0 → 0.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +253 -0
- package/README.md +3 -2
- package/dist/Screen/ErrorHolder.d.mts +10 -0
- package/dist/Screen/ErrorHolder.d.mts.map +1 -0
- package/dist/Screen/ErrorHolder.mjs +14 -0
- package/dist/Screen/ErrorHolder.mjs.map +1 -0
- package/dist/Screen/InterfaceBuilder.d.mts.map +1 -1
- package/dist/Screen/InterfaceBuilder.mjs +7 -0
- package/dist/Screen/InterfaceBuilder.mjs.map +1 -1
- package/dist/Screen/Screen.d.mts +90 -1
- package/dist/Screen/Screen.d.mts.map +1 -1
- package/dist/Screen/Screen.mjs +300 -1
- package/dist/Screen/Screen.mjs.map +1 -1
- package/dist/Screen/StyleRegistry.d.mts.map +1 -1
- package/dist/Screen/StyleRegistry.mjs +3 -1
- package/dist/Screen/StyleRegistry.mjs.map +1 -1
- package/dist/Screen/VirtualCursor.d.mts +57 -0
- package/dist/Screen/VirtualCursor.d.mts.map +1 -0
- package/dist/Screen/VirtualCursor.mjs +148 -0
- package/dist/Screen/VirtualCursor.mjs.map +1 -0
- package/dist/Screen/Window.d.mts +116 -6
- package/dist/Screen/Window.d.mts.map +1 -1
- package/dist/Screen/Window.mjs +359 -34
- package/dist/Screen/Window.mjs.map +1 -1
- package/dist/Screen/WindowManager.d.mts +78 -2
- package/dist/Screen/WindowManager.d.mts.map +1 -1
- package/dist/Screen/WindowManager.mjs +197 -3
- package/dist/Screen/WindowManager.mjs.map +1 -1
- package/dist/Screen/controls/BarChart.d.mts.map +1 -1
- package/dist/Screen/controls/BarChart.mjs +3 -0
- package/dist/Screen/controls/BarChart.mjs.map +1 -1
- package/dist/Screen/controls/Checkbox.d.mts.map +1 -1
- package/dist/Screen/controls/Checkbox.mjs +4 -0
- package/dist/Screen/controls/Checkbox.mjs.map +1 -1
- package/dist/Screen/controls/LineChart.d.mts.map +1 -1
- package/dist/Screen/controls/LineChart.mjs +3 -0
- package/dist/Screen/controls/LineChart.mjs.map +1 -1
- package/dist/Screen/controls/ListBox.d.mts.map +1 -1
- package/dist/Screen/controls/ListBox.mjs +9 -0
- package/dist/Screen/controls/ListBox.mjs.map +1 -1
- package/dist/Screen/controls/ProgressBar.d.mts.map +1 -1
- package/dist/Screen/controls/ProgressBar.mjs +2 -0
- package/dist/Screen/controls/ProgressBar.mjs.map +1 -1
- package/dist/Screen/controls/ProgressBarV.d.mts.map +1 -1
- package/dist/Screen/controls/ProgressBarV.mjs +2 -0
- package/dist/Screen/controls/ProgressBarV.mjs.map +1 -1
- package/dist/Screen/controls/Radio.d.mts.map +1 -1
- package/dist/Screen/controls/Radio.mjs +7 -1
- package/dist/Screen/controls/Radio.mjs.map +1 -1
- package/dist/Screen/controls/Sparkline.d.mts.map +1 -1
- package/dist/Screen/controls/Sparkline.mjs +3 -0
- package/dist/Screen/controls/Sparkline.mjs.map +1 -1
- package/dist/Screen/controls/Spinner.d.mts.map +1 -1
- package/dist/Screen/controls/Spinner.mjs +8 -0
- package/dist/Screen/controls/Spinner.mjs.map +1 -1
- package/dist/Screen/controls/StatusLED.d.mts.map +1 -1
- package/dist/Screen/controls/StatusLED.mjs +3 -0
- package/dist/Screen/controls/StatusLED.mjs.map +1 -1
- package/dist/Screen/controls/Tabs.d.mts.map +1 -1
- package/dist/Screen/controls/Tabs.mjs +2 -0
- package/dist/Screen/controls/Tabs.mjs.map +1 -1
- package/dist/Screen/controls/TextArea.d.mts +68 -2
- package/dist/Screen/controls/TextArea.d.mts.map +1 -1
- package/dist/Screen/controls/TextArea.mjs +291 -46
- package/dist/Screen/controls/TextArea.mjs.map +1 -1
- package/dist/Screen/controls/TextBox.d.mts +52 -5
- package/dist/Screen/controls/TextBox.d.mts.map +1 -1
- package/dist/Screen/controls/TextBox.mjs +192 -10
- package/dist/Screen/controls/TextBox.mjs.map +1 -1
- package/dist/Screen/controls/Toast.d.mts +72 -0
- package/dist/Screen/controls/Toast.d.mts.map +1 -0
- package/dist/Screen/controls/Toast.mjs +112 -0
- package/dist/Screen/controls/Toast.mjs.map +1 -0
- package/dist/Screen/types.d.mts +169 -0
- package/dist/Screen/types.d.mts.map +1 -1
- package/dist/Screen/types.mjs +8 -0
- package/dist/Screen/types.mjs.map +1 -1
- package/dist/index.d.mts +4 -2
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +3 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/Screen/ErrorHolder.mts +22 -0
- package/src/Screen/InterfaceBuilder.mts +12 -5
- package/src/Screen/Screen.mts +313 -2
- package/src/Screen/StyleRegistry.mts +4 -0
- package/src/Screen/VirtualCursor.mts +175 -0
- package/src/Screen/Window.mts +352 -34
- package/src/Screen/WindowManager.mts +203 -3
- package/src/Screen/controls/BarChart.mts +3 -0
- package/src/Screen/controls/Checkbox.mts +3 -0
- package/src/Screen/controls/LineChart.mts +3 -0
- package/src/Screen/controls/ListBox.mts +8 -0
- package/src/Screen/controls/ProgressBar.mts +2 -0
- package/src/Screen/controls/ProgressBarV.mts +2 -0
- package/src/Screen/controls/Radio.mts +6 -1
- package/src/Screen/controls/Sparkline.mts +3 -0
- package/src/Screen/controls/Spinner.mts +6 -0
- package/src/Screen/controls/StatusLED.mts +2 -0
- package/src/Screen/controls/Tabs.mts +2 -0
- package/src/Screen/controls/TextArea.mts +290 -41
- package/src/Screen/controls/TextBox.mts +193 -10
- package/src/Screen/controls/Toast.mts +138 -0
- package/src/Screen/types.mts +167 -0
- package/src/demo.mts +131 -0
- package/src/index.mts +13 -0
- package/src/layout.yaml +16 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextArea.mjs","sourceRoot":"","sources":["../../../src/Screen/controls/TextArea.mts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TextArea.mjs","sourceRoot":"","sources":["../../../src/Screen/controls/TextArea.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAChG,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD;8EAC8E;AAC9E,MAAM,OAAO,QAAS,SAAQ,MAAM;IAC3B,KAAK,CAAW;IAChB,MAAM,CAA2B;IACzC;;2CAEuC;IAC/B,eAAe,CAAkC;IACjD,OAAO,CAAS;IAChB,OAAO,CAAS;IAChB,WAAW,CAAS;IACpB,kBAAkB,CAAU;IAC5B,aAAa,CAAU;IACvB,gBAAgB,CAAU;IAClC,kDAAkD;IAC1C,aAAa,CAAgB;IAE7B,QAAQ,CAA2B;IACnC,QAAQ,CAA2B;IACnC,SAAS,CAAmC;IAC5C,iBAAiB,CAAS;IAC1B,mBAAmB,CAAU;IAErC;uEACmE;IACnE,YAAmB,EAAoB,EAAE,EAAuB;QAC/D,KAAK,CAAC;YACL,GAAG,EAAE;YACL,aAAa,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE;SACpF,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,GAAS,CAAC,EAAE,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,WAAW,GAAG,EAAE,EAAE,WAAW,IAAI,EAAE,CAAC;QACzC,IAAI,CAAC,OAAO,GAAO,CAAC,CAAC;QACrB,IAAI,CAAC,OAAO,GAAO,CAAC,CAAC;QAErB,MAAM,SAAS,GAAG,EAAE,EAAE,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAC/C,IAAI,CAAC,MAAM,GAAG;YACb,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC5D,CAAC,EAAE,CAAC;SACJ,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACrF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAE5B,IAAI,CAAC,QAAQ,GAAc,EAAE,EAAE,QAAQ,CAAC;QACxC,IAAI,CAAC,QAAQ,GAAc,EAAE,EAAE,QAAQ,CAAC;QACxC,IAAI,CAAC,SAAS,GAAa,EAAE,EAAE,SAAS,CAAC;QACzC,IAAI,CAAC,iBAAiB,GAAK,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,iBAAiB,IAAI,CAAC,CAAC,CAAC;QACnE,IAAI,CAAC,mBAAmB,GAAG,EAAE,EAAE,mBAAmB,IAAI,KAAK,CAAC;QAE5D,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC;QAC1B,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC,QAAQ,CAAC,wBAAwB,CAAE,CAAC;QAClE,IAAI,CAAC,aAAa,GAAQ,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAE,CAAC;QACxD,IAAI,CAAC,gBAAgB,GAAK,GAAG,CAAC,QAAQ,CAAC,sBAAsB,CAAE,CAAC;QAEhE,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC;YACtC,MAAM,EAAE,EAAE,EAAE,YAAY;YACxB,KAAK,EAAG,EAAE,EAAE,WAAW;SACvB,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,EAAE,CAAC;IACpB,CAAC;IAED,oFAAoF;IAC7E,gBAAgB;QACtB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;IAED;;+BAE2B;IACpB,QAAQ,CAAC,IAAY;QAC3B,IAAI,CAAC,KAAK,GAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC1E,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,SAAS,EAAE,CAAC;IAClB,CAAC;IAED;;+BAE2B;IACpB,YAAY;QAClB,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC/C,MAAM,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC;QAC/B,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QACtB,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5C,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,OAAO,QAAQ;YACd,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE;YACpC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC;IACvC,CAAC;IAED;4CACwC;IACjC,eAAe;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAChC,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC;QAC3B,IAAI,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,KAAK,GAAa,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7D,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACpE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED;;qBAEiB;IACV,YAAY,CAAC,MAAgC,EAAE,MAAgC;QACrF,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,SAAS,EAAE,CAAC;IAClB,CAAC;IAED;6BACyB;IAClB,SAAS;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;QACvC,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,OAAO;QACR,CAAC;QACD,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,SAAS,EAAE,CAAC;IAClB,CAAC;IAED,4DAA4D;IACrD,cAAc;QACpB,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI;YAAE,OAAO;QAC1C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,SAAS,EAAE,CAAC;IAClB,CAAC;IAED,uEAAuE;IAC/D,aAAa,CAAC,CAA2B;QAChD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5D,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3D,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IACjB,CAAC;IAED,sCAAsC;IAC/B,WAAW,CAAC,EAA4B;QAC9C,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACpB,CAAC;IAED,sCAAsC;IAC/B,WAAW,CAAC,EAA4B;QAC9C,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACpB,CAAC;IAED,gDAAgD;IACzC,YAAY,CAAC,EAAoC;QACvD,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACrB,CAAC;IAED;8EAC0E;IACnE,WAAW;QACjB,OAAO,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;IACnC,CAAC;IAED,+DAA+D;IACxD,QAAQ;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED;;0CAEsC;IAC/B,SAAS,CAAC,GAA6B;QAC7C,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAC/E,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,SAAS,EAAE,CAAC;IAClB,CAAC;IAED,qDAAqD;IAC9C,SAAS;QACf,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC3B,CAAC;IAED;;;;oEAIgE;IACzD,SAAS,CAAC,GAAW;QAC3B,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAE1B,oEAAoE;QACpE,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;YACpC,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,OAAO;QACR,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAE/B,uEAAuE;QACvE,IAAI,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;YACjD,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACvB,OAAO;QACR,CAAC;QACD,IAAI,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,aAAa,EAAE,CAAC;YAClD,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACvB,OAAO;QACR,CAAC;QACD,IAAI,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;YAC/C,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACvB,OAAO;QACR,CAAC;QACD,IAAI,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;YACjD,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACvB,OAAO;QACR,CAAC;QACD,IAAI,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;YACjD,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;YAClB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACvB,OAAO;QACR,CAAC;QACD,IAAI,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;YAChD,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACjD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACvB,OAAO;QACR,CAAC;QACD,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;YACxC,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACvB,OAAO;QACR,CAAC;QAED,iEAAiE;QACjE,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,iBAAiB,GAAG,CAAC,EAAE,CAAC;YACnE,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,MAAM,MAAM,GAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACnD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACpG,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC;YAC/B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACvB,OAAO;QACR,CAAC;QACD,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;YACnC,uEAAuE;YACvE,OAAO;QACR,CAAC;QAED,kEAAkE;QAClE,IAAI,GAAG,KAAK,MAAM,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAChD,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;gBAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACxC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;oBAClC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC5F,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;oBAClE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzC,CAAC;YACF,CAAC;YACD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACvB,OAAO;QACR,CAAC;QAED,wEAAwE;QACxE,qEAAqE;QACrE,sEAAsE;QACtE,iDAAiD;QACjD,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;YAC1B,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YACjC,OAAO;QACR,CAAC;QAED,QAAQ,GAAG,EAAE,CAAC;YACb,KAAK,MAAM,CAAC;YAAC,KAAK,IAAI,CAAC;YAAC,KAAK,WAAW,CAAC,CAAC,CAAC;gBAC1C,IAAI,IAAI,CAAC,eAAe,EAAE;oBAAE,MAAM;gBAClC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACvC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;oBACvB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBACzF,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBACjB,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC3C,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;oBAC5B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;oBAC5C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBACpC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBACjB,CAAC;gBACD,MAAM;YACP,CAAC;YACD,KAAK,SAAS,CAAC;YAAC,KAAK,QAAQ,CAAC,CAAC,CAAC;gBAC/B,IAAI,IAAI,CAAC,eAAe,EAAE;oBAAE,MAAM;gBAClC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACvC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;oBACjC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC1F,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;oBACjE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzC,CAAC;gBACD,MAAM;YACP,CAAC;YACD,KAAK,IAAI,CAAC;YAAC,KAAK,IAAI,CAAC;YAAC,KAAK,OAAO,CAAC,CAAC,CAAC;gBACpC,IAAI,CAAC,eAAe,EAAE,CAAC;gBACvB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACvC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACzD,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBAChB,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;gBAClB,MAAM;YACP,CAAC;YACD,KAAK,QAAQ,CAAC;YAAC,KAAK,MAAM;gBACzB,IAAI,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;oBAAE,MAAM;gBAC3C,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,MAAM;YACP,KAAK,QAAQ,CAAC;YAAC,KAAK,OAAO;gBAC1B,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;oBAAE,MAAM;gBACzC,IAAI,CAAC,eAAe,EAAE,CAAC;gBACvB,MAAM;YACP,KAAK,QAAQ,CAAC;YAAC,KAAK,IAAI;gBACvB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;gBAC5B,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,MAAM;YACP,KAAK,QAAQ,CAAC;YAAC,KAAK,MAAM;gBACzB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;gBAC5B,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,MAAM;YACP,KAAK,QAAQ,CAAC;YAAC,KAAK,MAAM;gBACzB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;gBAC5B,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;gBAClB,MAAM;YACP,KAAK,QAAQ,CAAC;YAAC,KAAK,KAAK;gBACxB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;gBAC5B,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBACjD,MAAM;YACP;gBACC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;oBACpC,IAAI,CAAC,eAAe,EAAE,CAAC;oBACvB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBACvC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBAC3F,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBACjB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;IAED;oDACgD;IACxC,SAAS,CAAC,MAAc;QAC/B,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;QAChC,4DAA4D;QAC5D,iEAAiE;QACjE,oDAAoD;QACpD,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,MAAM;YAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,kEAAkE;IAC1D,YAAY;QACnB,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI;YAAE,IAAI,CAAC,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC9E,CAAC;IAED;gEAC4D;IACpD,eAAe;QACtB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAChC,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QAC/B,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC;QAC3B,IAAI,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAClE,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YACnD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,OAAO,IAAI,CAAC;IACb,CAAC;IAED;8DAC0D;IAClD,iBAAiB,CAAC,IAAqB;QAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAChC,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,yEAAyE;IACjE,cAAc;QACrB,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QACjB,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAClD,CAAC;IACF,CAAC;IAED,wEAAwE;IAChE,eAAe;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACvC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QACjB,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACF,CAAC;IAED,4EAA4E;IACpE,YAAY;QACnB,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC3E,CAAC;IACF,CAAC;IAED,8EAA8E;IACtE,cAAc;QACrB,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC3E,CAAC;IACF,CAAC;IAED,kEAAkE;IAClD,MAAM;QACrB,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAa,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAC1E,MAAM,OAAO,GAAa,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC;QAE9E,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW,KAAK,EAAE,EAAE,CAAC;YACzD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QACtE,CAAC;aAAM,CAAC;YACP,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC;gBACvC,MAAM,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;gBACnC,IAAI,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM;oBAAE,MAAM;gBACxC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC;gBAC9E,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;YAClG,CAAC;QACF,CAAC;QAED,oEAAoE;QACpE,oEAAoE;QACpE,gBAAgB;QAChB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACxE,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YAClB,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC;YAChC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAChE,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC/C,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC7B,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,MAAM;oBAAE,SAAS;gBACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC/B,MAAM,KAAK,GAAG,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClD,MAAM,GAAG,GAAK,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,sCAAsC;gBAC3G,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;oBAClC,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;oBAC7B,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,KAAK;wBAAE,SAAS;oBACtC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;oBAC9B,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;gBACvD,CAAC;YACF,CAAC;QACF,CAAC;QAED,mEAAmE;QACnE,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,EAAE,CAAC;YACtE,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;YAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;YAC7C,IAAI,OAAO,IAAI,CAAC,IAAI,OAAO,GAAG,KAAK,IAAI,OAAO,IAAI,CAAC,IAAI,OAAO,GAAG,MAAM,EAAE,CAAC;gBACzE,MAAM,SAAS,GAAK,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC;gBACzD,MAAM,UAAU,GAAI,SAAS;oBAC5B,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE;oBAChC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;gBACrD,MAAM,WAAW,GAAG,SAAS;oBAC5B,CAAC,CAAC,IAAI,CAAC,aAAa;oBACpB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;gBAC/D,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;YAC5E,CAAC;QACF,CAAC;QAED,KAAK,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAED,6EAA6E;IACrE,WAAW;QAClB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAC9C,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9B,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,GAAG,MAAM,EAAE,CAAC;YACnD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9B,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,GAAG,KAAK,EAAE,CAAC;YAClD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;QAC1C,CAAC;IACF,CAAC;CACD"}
|
|
@@ -1,15 +1,23 @@
|
|
|
1
1
|
import type { TextBoxProperties, WindowProperties } from '../types.mjs';
|
|
2
2
|
import { Window } from '../Window.mjs';
|
|
3
|
+
import { VirtualCursor } from '../VirtualCursor.mjs';
|
|
3
4
|
/** A single-line text-input widget with scrolling, cursor display, and placeholder support.
|
|
4
5
|
* Wraps content area inside a single-line border (total height 3 by default).
|
|
5
6
|
* Call handleKey() to feed raw terminal key strings from your input loop. */
|
|
6
7
|
export declare class TextBox extends Window {
|
|
7
8
|
private value;
|
|
8
9
|
private cursor;
|
|
10
|
+
/** Anchor of the active selection, or null when no selection is active.
|
|
11
|
+
* Selection spans the half-open range [min(anchor, cursor), max(anchor, cursor)). */
|
|
12
|
+
private selectionAnchor;
|
|
9
13
|
private scrollOffset;
|
|
10
14
|
private placeholder;
|
|
11
15
|
private placeholderStyleId;
|
|
12
16
|
private cursorStyleId;
|
|
17
|
+
private selectionStyleId;
|
|
18
|
+
/** Software-cursor model: blink state + glyph. Always present so the
|
|
19
|
+
* caller can reconfigure at runtime via `getVirtualCursor()`. */
|
|
20
|
+
private virtualCursor;
|
|
13
21
|
/** Invoked after every value change driven by handleKey. Not called by setValue. */
|
|
14
22
|
private onChange?;
|
|
15
23
|
/** Invoked when Enter is pressed while focused. */
|
|
@@ -19,8 +27,28 @@ export declare class TextBox extends Window {
|
|
|
19
27
|
/** Creates a TextBox from window properties and optional control-specific properties.
|
|
20
28
|
* Uses the global StyleRegistry set by the Screen constructor. */
|
|
21
29
|
constructor(wp: WindowProperties, cp?: TextBoxProperties);
|
|
22
|
-
/**
|
|
30
|
+
/** Returns the VirtualCursor model so callers can tweak symbol/blink at runtime. */
|
|
31
|
+
getVirtualCursor(): VirtualCursor;
|
|
32
|
+
/** Replaces the current value; clamps cursor and scroll to fit. Does NOT fire onChange.
|
|
33
|
+
* Any active selection is cleared because the old anchor no longer maps
|
|
34
|
+
* onto the new string. */
|
|
23
35
|
setValue(value: string): void;
|
|
36
|
+
/** Returns the normalized selection range `{ start, end }` (half-open)
|
|
37
|
+
* when a selection is active and non-empty, otherwise `null`. */
|
|
38
|
+
getSelection(): {
|
|
39
|
+
start: number;
|
|
40
|
+
end: number;
|
|
41
|
+
} | null;
|
|
42
|
+
/** Returns the currently selected substring, or '' when no selection. */
|
|
43
|
+
getSelectedText(): string;
|
|
44
|
+
/** Replaces the current selection: sets anchor and cursor, clamping both
|
|
45
|
+
* to the current value length. Passing identical indices clears the
|
|
46
|
+
* selection; callers that want an empty anchor should use `clearSelection()`. */
|
|
47
|
+
setSelection(anchor: number, cursor: number): void;
|
|
48
|
+
/** Selects every character in the current value. No-op when the value is empty. */
|
|
49
|
+
selectAll(): void;
|
|
50
|
+
/** Drops any active selection without moving the cursor. */
|
|
51
|
+
clearSelection(): void;
|
|
24
52
|
/** Replaces the onChange callback (passing undefined clears it). */
|
|
25
53
|
setOnChange(fn?: (value: string) => void): void;
|
|
26
54
|
/** Replaces the onSubmit callback. */
|
|
@@ -29,16 +57,35 @@ export declare class TextBox extends Window {
|
|
|
29
57
|
setOnKeyDown(fn?: (key: string) => boolean | void): void;
|
|
30
58
|
/** Returns the current text value. */
|
|
31
59
|
getValue(): string;
|
|
32
|
-
/** Sets the cursor to the given character index (clamped to valid range).
|
|
60
|
+
/** Sets the cursor to the given character index (clamped to valid range).
|
|
61
|
+
* Any active selection is dropped — callers that want to adjust the
|
|
62
|
+
* cursor while keeping the selection must use `setSelection()`. */
|
|
33
63
|
setCursor(pos: number): void;
|
|
34
64
|
/** Returns the current cursor character index. */
|
|
35
65
|
getCursor(): number;
|
|
36
66
|
/** Processes a key string from the terminal input loop and updates value/cursor.
|
|
37
67
|
* Supported special keys: backspace (\x7f), delete (\x1b[3~), left (\x1b[D),
|
|
38
|
-
* right (\x1b[C), home (\x1b[H), end (\x1b[F)
|
|
39
|
-
*
|
|
40
|
-
*
|
|
68
|
+
* right (\x1b[C), home (\x1b[H), end (\x1b[F), plus their shift-modified
|
|
69
|
+
* CSI variants (`\x1b[1;2D` etc.) which extend the selection, and
|
|
70
|
+
* Ctrl+A (`\x01`) which selects the entire value.
|
|
71
|
+
* Human-readable aliases: 'backspace', 'delete', 'left', 'right', 'home',
|
|
72
|
+
* 'end', 'shift+left', 'shift+right', 'shift+home', 'shift+end', 'ctrl+a'.
|
|
73
|
+
* Any single printable character is inserted at the cursor position and
|
|
74
|
+
* replaces the active selection (if any). */
|
|
41
75
|
handleKey(key: string): void;
|
|
76
|
+
/** Shared post-key housekeeping: clamp scroll, reset blink phase, fire
|
|
77
|
+
* onChange when the value actually changed. */
|
|
78
|
+
private finishKey;
|
|
79
|
+
/** Starts a selection at the current cursor if none is active, so that a
|
|
80
|
+
* subsequent cursor move extends the selection. */
|
|
81
|
+
private ensureAnchor;
|
|
82
|
+
/** Removes the selected text when a selection is active; cursor is placed
|
|
83
|
+
* at the start of the deleted range. Returns true when a deletion
|
|
84
|
+
* happened, false otherwise. */
|
|
85
|
+
private deleteSelection;
|
|
86
|
+
/** Drops an active selection, moving the cursor to the selection's
|
|
87
|
+
* `start` or `end` edge. Returns true when it did so. */
|
|
88
|
+
private collapseSelection;
|
|
42
89
|
/** Rebuilds the TextBox: renders text or placeholder, draws cursor. */
|
|
43
90
|
render(): void;
|
|
44
91
|
/** Adjusts scrollOffset so the cursor stays within the visible window. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextBox.d.mts","sourceRoot":"","sources":["../../../src/Screen/controls/TextBox.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAW,MAAM,cAAc,CAAC;AAEjF,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"TextBox.d.mts","sourceRoot":"","sources":["../../../src/Screen/controls/TextBox.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAW,MAAM,cAAc,CAAC;AAEjF,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD;;8EAE8E;AAC9E,qBAAa,OAAQ,SAAQ,MAAM;IAClC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB;0FACsF;IACtF,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,aAAa,CAAU;IAC/B,OAAO,CAAC,gBAAgB,CAAU;IAClC;sEACkE;IAClE,OAAO,CAAC,aAAa,CAAgB;IAErC,oFAAoF;IACpF,OAAO,CAAC,QAAQ,CAAC,CAA0B;IAC3C,mDAAmD;IACnD,OAAO,CAAC,QAAQ,CAAC,CAA0B;IAC3C,0EAA0E;IAC1E,OAAO,CAAC,SAAS,CAAC,CAAkC;IAEpD;uEACmE;gBAChD,EAAE,EAAE,gBAAgB,EAAE,EAAE,CAAC,EAAE,iBAAiB;IA+B/D,oFAAoF;IAC7E,gBAAgB,IAAI,aAAa;IAIxC;;+BAE2B;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQpC;sEACkE;IAC3D,YAAY,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAQ5D,yEAAyE;IAClE,eAAe,IAAI,MAAM;IAKhC;;sFAEkF;IAC3E,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAUzD,mFAAmF;IAC5E,SAAS,IAAI,IAAI;IAWxB,4DAA4D;IACrD,cAAc,IAAI,IAAI;IAM7B,oEAAoE;IAC7D,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAItD,sCAAsC;IAC/B,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAItD,gDAAgD;IACzC,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,GAAG,IAAI,GAAG,IAAI;IAI/D,sCAAsC;IAC/B,QAAQ,IAAI,MAAM;IAIzB;;wEAEoE;IAC7D,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAOnC,kDAAkD;IAC3C,SAAS,IAAI,MAAM;IAI1B;;;;;;;;kDAQ8C;IACvC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAuFnC;oDACgD;IAChD,OAAO,CAAC,SAAS;IAYjB;wDACoD;IACpD,OAAO,CAAC,YAAY;IAIpB;;qCAEiC;IACjC,OAAO,CAAC,eAAe;IASvB;8DAC0D;IAC1D,OAAO,CAAC,iBAAiB;IAQzB,uEAAuE;IACvD,MAAM,IAAI,IAAI;IAiD9B,0EAA0E;IAC1E,OAAO,CAAC,WAAW;CAQnB"}
|
|
@@ -1,16 +1,24 @@
|
|
|
1
|
-
import { BUILTIN_TEXT_PLACEHOLDER, BUILTIN_CURSOR } from '../types.mjs';
|
|
1
|
+
import { BUILTIN_TEXT_PLACEHOLDER, BUILTIN_CURSOR, BUILTIN_TEXT_SELECTION } from '../types.mjs';
|
|
2
2
|
import { Window } from '../Window.mjs';
|
|
3
3
|
import { getRegistry } from '../RegistryHolder.mjs';
|
|
4
|
+
import { VirtualCursor } from '../VirtualCursor.mjs';
|
|
4
5
|
/** A single-line text-input widget with scrolling, cursor display, and placeholder support.
|
|
5
6
|
* Wraps content area inside a single-line border (total height 3 by default).
|
|
6
7
|
* Call handleKey() to feed raw terminal key strings from your input loop. */
|
|
7
8
|
export class TextBox extends Window {
|
|
8
9
|
value;
|
|
9
10
|
cursor;
|
|
11
|
+
/** Anchor of the active selection, or null when no selection is active.
|
|
12
|
+
* Selection spans the half-open range [min(anchor, cursor), max(anchor, cursor)). */
|
|
13
|
+
selectionAnchor;
|
|
10
14
|
scrollOffset;
|
|
11
15
|
placeholder;
|
|
12
16
|
placeholderStyleId;
|
|
13
17
|
cursorStyleId;
|
|
18
|
+
selectionStyleId;
|
|
19
|
+
/** Software-cursor model: blink state + glyph. Always present so the
|
|
20
|
+
* caller can reconfigure at runtime via `getVirtualCursor()`. */
|
|
21
|
+
virtualCursor;
|
|
14
22
|
/** Invoked after every value change driven by handleKey. Not called by setValue. */
|
|
15
23
|
onChange;
|
|
16
24
|
/** Invoked when Enter is pressed while focused. */
|
|
@@ -30,19 +38,79 @@ export class TextBox extends Window {
|
|
|
30
38
|
this.cursor = cp?.cursor !== undefined
|
|
31
39
|
? Math.max(0, Math.min(cp.cursor, this.value.length))
|
|
32
40
|
: this.value.length;
|
|
41
|
+
this.selectionAnchor = null;
|
|
33
42
|
this.onChange = cp?.onChange;
|
|
34
43
|
this.onSubmit = cp?.onSubmit;
|
|
35
44
|
this.onKeyDown = cp?.onKeyDown;
|
|
36
45
|
const reg = getRegistry();
|
|
37
46
|
this.placeholderStyleId = reg.getNamed(BUILTIN_TEXT_PLACEHOLDER);
|
|
38
47
|
this.cursorStyleId = reg.getNamed(BUILTIN_CURSOR);
|
|
48
|
+
this.selectionStyleId = reg.getNamed(BUILTIN_TEXT_SELECTION);
|
|
49
|
+
this.virtualCursor = new VirtualCursor({
|
|
50
|
+
symbol: cp?.cursorSymbol,
|
|
51
|
+
blink: cp?.cursorBlink,
|
|
52
|
+
});
|
|
39
53
|
this.clampScroll();
|
|
40
54
|
}
|
|
41
|
-
/**
|
|
55
|
+
/** Returns the VirtualCursor model so callers can tweak symbol/blink at runtime. */
|
|
56
|
+
getVirtualCursor() {
|
|
57
|
+
return this.virtualCursor;
|
|
58
|
+
}
|
|
59
|
+
/** Replaces the current value; clamps cursor and scroll to fit. Does NOT fire onChange.
|
|
60
|
+
* Any active selection is cleared because the old anchor no longer maps
|
|
61
|
+
* onto the new string. */
|
|
42
62
|
setValue(value) {
|
|
43
63
|
this.value = value;
|
|
44
64
|
this.cursor = Math.min(this.cursor, value.length);
|
|
65
|
+
this.selectionAnchor = null;
|
|
66
|
+
this.clampScroll();
|
|
67
|
+
this.markDirty();
|
|
68
|
+
}
|
|
69
|
+
/** Returns the normalized selection range `{ start, end }` (half-open)
|
|
70
|
+
* when a selection is active and non-empty, otherwise `null`. */
|
|
71
|
+
getSelection() {
|
|
72
|
+
if (this.selectionAnchor === null)
|
|
73
|
+
return null;
|
|
74
|
+
const a = this.selectionAnchor;
|
|
75
|
+
const b = this.cursor;
|
|
76
|
+
if (a === b)
|
|
77
|
+
return null;
|
|
78
|
+
return a < b ? { start: a, end: b } : { start: b, end: a };
|
|
79
|
+
}
|
|
80
|
+
/** Returns the currently selected substring, or '' when no selection. */
|
|
81
|
+
getSelectedText() {
|
|
82
|
+
const sel = this.getSelection();
|
|
83
|
+
return sel === null ? '' : this.value.slice(sel.start, sel.end);
|
|
84
|
+
}
|
|
85
|
+
/** Replaces the current selection: sets anchor and cursor, clamping both
|
|
86
|
+
* to the current value length. Passing identical indices clears the
|
|
87
|
+
* selection; callers that want an empty anchor should use `clearSelection()`. */
|
|
88
|
+
setSelection(anchor, cursor) {
|
|
89
|
+
const len = this.value.length;
|
|
90
|
+
const a = Math.max(0, Math.min(anchor, len));
|
|
91
|
+
const c = Math.max(0, Math.min(cursor, len));
|
|
92
|
+
this.selectionAnchor = a === c ? null : a;
|
|
93
|
+
this.cursor = c;
|
|
94
|
+
this.clampScroll();
|
|
95
|
+
this.markDirty();
|
|
96
|
+
}
|
|
97
|
+
/** Selects every character in the current value. No-op when the value is empty. */
|
|
98
|
+
selectAll() {
|
|
99
|
+
if (this.value.length === 0) {
|
|
100
|
+
this.selectionAnchor = null;
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
this.selectionAnchor = 0;
|
|
104
|
+
this.cursor = this.value.length;
|
|
45
105
|
this.clampScroll();
|
|
106
|
+
this.markDirty();
|
|
107
|
+
}
|
|
108
|
+
/** Drops any active selection without moving the cursor. */
|
|
109
|
+
clearSelection() {
|
|
110
|
+
if (this.selectionAnchor === null)
|
|
111
|
+
return;
|
|
112
|
+
this.selectionAnchor = null;
|
|
113
|
+
this.markDirty();
|
|
46
114
|
}
|
|
47
115
|
/** Replaces the onChange callback (passing undefined clears it). */
|
|
48
116
|
setOnChange(fn) {
|
|
@@ -60,10 +128,14 @@ export class TextBox extends Window {
|
|
|
60
128
|
getValue() {
|
|
61
129
|
return this.value;
|
|
62
130
|
}
|
|
63
|
-
/** Sets the cursor to the given character index (clamped to valid range).
|
|
131
|
+
/** Sets the cursor to the given character index (clamped to valid range).
|
|
132
|
+
* Any active selection is dropped — callers that want to adjust the
|
|
133
|
+
* cursor while keeping the selection must use `setSelection()`. */
|
|
64
134
|
setCursor(pos) {
|
|
65
135
|
this.cursor = Math.max(0, Math.min(pos, this.value.length));
|
|
136
|
+
this.selectionAnchor = null;
|
|
66
137
|
this.clampScroll();
|
|
138
|
+
this.markDirty();
|
|
67
139
|
}
|
|
68
140
|
/** Returns the current cursor character index. */
|
|
69
141
|
getCursor() {
|
|
@@ -71,9 +143,13 @@ export class TextBox extends Window {
|
|
|
71
143
|
}
|
|
72
144
|
/** Processes a key string from the terminal input loop and updates value/cursor.
|
|
73
145
|
* Supported special keys: backspace (\x7f), delete (\x1b[3~), left (\x1b[D),
|
|
74
|
-
* right (\x1b[C), home (\x1b[H), end (\x1b[F)
|
|
75
|
-
*
|
|
76
|
-
*
|
|
146
|
+
* right (\x1b[C), home (\x1b[H), end (\x1b[F), plus their shift-modified
|
|
147
|
+
* CSI variants (`\x1b[1;2D` etc.) which extend the selection, and
|
|
148
|
+
* Ctrl+A (`\x01`) which selects the entire value.
|
|
149
|
+
* Human-readable aliases: 'backspace', 'delete', 'left', 'right', 'home',
|
|
150
|
+
* 'end', 'shift+left', 'shift+right', 'shift+home', 'shift+end', 'ctrl+a'.
|
|
151
|
+
* Any single printable character is inserted at the cursor position and
|
|
152
|
+
* replaces the active selection (if any). */
|
|
77
153
|
handleKey(key) {
|
|
78
154
|
if (this.disabled)
|
|
79
155
|
return;
|
|
@@ -83,6 +159,38 @@ export class TextBox extends Window {
|
|
|
83
159
|
return;
|
|
84
160
|
}
|
|
85
161
|
const before = this.value;
|
|
162
|
+
// ── Selection-extending motion (shift + arrow / home / end) ─────────
|
|
163
|
+
if (key === '\x1b[1;2D' || key === 'shift+left') {
|
|
164
|
+
this.ensureAnchor();
|
|
165
|
+
if (this.cursor > 0)
|
|
166
|
+
this.cursor--;
|
|
167
|
+
this.finishKey(before);
|
|
168
|
+
return;
|
|
169
|
+
}
|
|
170
|
+
if (key === '\x1b[1;2C' || key === 'shift+right') {
|
|
171
|
+
this.ensureAnchor();
|
|
172
|
+
if (this.cursor < this.value.length)
|
|
173
|
+
this.cursor++;
|
|
174
|
+
this.finishKey(before);
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
if (key === '\x1b[1;2H' || key === 'shift+home') {
|
|
178
|
+
this.ensureAnchor();
|
|
179
|
+
this.cursor = 0;
|
|
180
|
+
this.finishKey(before);
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
183
|
+
if (key === '\x1b[1;2F' || key === 'shift+end') {
|
|
184
|
+
this.ensureAnchor();
|
|
185
|
+
this.cursor = this.value.length;
|
|
186
|
+
this.finishKey(before);
|
|
187
|
+
return;
|
|
188
|
+
}
|
|
189
|
+
if (key === '\x01' || key === 'ctrl+a') {
|
|
190
|
+
this.selectAll();
|
|
191
|
+
this.finishKey(before);
|
|
192
|
+
return;
|
|
193
|
+
}
|
|
86
194
|
switch (key) {
|
|
87
195
|
case '\r':
|
|
88
196
|
case '\n':
|
|
@@ -93,6 +201,8 @@ export class TextBox extends Window {
|
|
|
93
201
|
case '\x7f':
|
|
94
202
|
case '\b':
|
|
95
203
|
case 'backspace':
|
|
204
|
+
if (this.deleteSelection())
|
|
205
|
+
break;
|
|
96
206
|
if (this.cursor > 0) {
|
|
97
207
|
this.value = this.value.slice(0, this.cursor - 1) + this.value.slice(this.cursor);
|
|
98
208
|
this.cursor--;
|
|
@@ -100,38 +210,88 @@ export class TextBox extends Window {
|
|
|
100
210
|
break;
|
|
101
211
|
case '\x1b[3~':
|
|
102
212
|
case 'delete':
|
|
213
|
+
if (this.deleteSelection())
|
|
214
|
+
break;
|
|
103
215
|
if (this.cursor < this.value.length) {
|
|
104
216
|
this.value = this.value.slice(0, this.cursor) + this.value.slice(this.cursor + 1);
|
|
105
217
|
}
|
|
106
218
|
break;
|
|
107
219
|
case '\x1b[D':
|
|
108
220
|
case 'left':
|
|
221
|
+
// Non-shift left collapses an active selection to its start.
|
|
222
|
+
if (this.collapseSelection('start'))
|
|
223
|
+
break;
|
|
109
224
|
if (this.cursor > 0)
|
|
110
225
|
this.cursor--;
|
|
111
226
|
break;
|
|
112
227
|
case '\x1b[C':
|
|
113
228
|
case 'right':
|
|
229
|
+
if (this.collapseSelection('end'))
|
|
230
|
+
break;
|
|
114
231
|
if (this.cursor < this.value.length)
|
|
115
232
|
this.cursor++;
|
|
116
233
|
break;
|
|
117
234
|
case '\x1b[H':
|
|
118
235
|
case 'home':
|
|
236
|
+
this.selectionAnchor = null;
|
|
119
237
|
this.cursor = 0;
|
|
120
238
|
break;
|
|
121
239
|
case '\x1b[F':
|
|
122
240
|
case 'end':
|
|
241
|
+
this.selectionAnchor = null;
|
|
123
242
|
this.cursor = this.value.length;
|
|
124
243
|
break;
|
|
125
244
|
default:
|
|
126
245
|
if (key.length === 1 && key >= ' ') {
|
|
246
|
+
this.deleteSelection();
|
|
127
247
|
this.value = this.value.slice(0, this.cursor) + key + this.value.slice(this.cursor);
|
|
128
248
|
this.cursor++;
|
|
129
249
|
}
|
|
130
250
|
}
|
|
251
|
+
this.finishKey(before);
|
|
252
|
+
}
|
|
253
|
+
/** Shared post-key housekeeping: clamp scroll, reset blink phase, fire
|
|
254
|
+
* onChange when the value actually changed. */
|
|
255
|
+
finishKey(before) {
|
|
131
256
|
this.clampScroll();
|
|
257
|
+
this.virtualCursor.resetPhase();
|
|
258
|
+
// Every key dispatch is a potential content / selection / cursor
|
|
259
|
+
// change — flag the window dirty unconditionally so the next
|
|
260
|
+
// Screen.render() re-emits it. The per-key equality checks in
|
|
261
|
+
// individual branches are not worth the code; the bounding box is
|
|
262
|
+
// cheap and we're going to emit at most the whole window.
|
|
263
|
+
this.markDirty();
|
|
132
264
|
if (this.value !== before)
|
|
133
265
|
this.onChange?.(this.value);
|
|
134
266
|
}
|
|
267
|
+
/** Starts a selection at the current cursor if none is active, so that a
|
|
268
|
+
* subsequent cursor move extends the selection. */
|
|
269
|
+
ensureAnchor() {
|
|
270
|
+
if (this.selectionAnchor === null)
|
|
271
|
+
this.selectionAnchor = this.cursor;
|
|
272
|
+
}
|
|
273
|
+
/** Removes the selected text when a selection is active; cursor is placed
|
|
274
|
+
* at the start of the deleted range. Returns true when a deletion
|
|
275
|
+
* happened, false otherwise. */
|
|
276
|
+
deleteSelection() {
|
|
277
|
+
const sel = this.getSelection();
|
|
278
|
+
if (sel === null)
|
|
279
|
+
return false;
|
|
280
|
+
this.value = this.value.slice(0, sel.start) + this.value.slice(sel.end);
|
|
281
|
+
this.cursor = sel.start;
|
|
282
|
+
this.selectionAnchor = null;
|
|
283
|
+
return true;
|
|
284
|
+
}
|
|
285
|
+
/** Drops an active selection, moving the cursor to the selection's
|
|
286
|
+
* `start` or `end` edge. Returns true when it did so. */
|
|
287
|
+
collapseSelection(edge) {
|
|
288
|
+
const sel = this.getSelection();
|
|
289
|
+
if (sel === null)
|
|
290
|
+
return false;
|
|
291
|
+
this.cursor = edge === 'start' ? sel.start : sel.end;
|
|
292
|
+
this.selectionAnchor = null;
|
|
293
|
+
return true;
|
|
294
|
+
}
|
|
135
295
|
/** Rebuilds the TextBox: renders text or placeholder, draws cursor. */
|
|
136
296
|
render() {
|
|
137
297
|
this.clear();
|
|
@@ -145,12 +305,34 @@ export class TextBox extends Window {
|
|
|
145
305
|
const visible = this.value.slice(this.scrollOffset, this.scrollOffset + width);
|
|
146
306
|
this.writeText(visible, { style: this.disabled ? undefined : this.normalStyleId });
|
|
147
307
|
}
|
|
148
|
-
//
|
|
149
|
-
|
|
308
|
+
// Paint the selection highlight over any cells that fall inside the
|
|
309
|
+
// active selection range — run before the cursor so the caret still
|
|
310
|
+
// shows on top of the highlight.
|
|
311
|
+
const sel = this.focused && !this.disabled ? this.getSelection() : null;
|
|
312
|
+
if (sel !== null) {
|
|
313
|
+
const base = this.normalStyleId;
|
|
314
|
+
for (let i = sel.start; i < sel.end; i++) {
|
|
315
|
+
const col = i - this.scrollOffset;
|
|
316
|
+
if (col < 0 || col >= width)
|
|
317
|
+
continue;
|
|
318
|
+
const merged = this.registry.merge(base, this.selectionStyleId);
|
|
319
|
+
const ch = this.value[i] ?? ' ';
|
|
320
|
+
this.writeText(ch, { x: col, y: 0, style: merged });
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
// Draw cursor when focused and the virtual-cursor blink says "on".
|
|
324
|
+
if (this.focused && !this.disabled && this.virtualCursor.isVisible()) {
|
|
150
325
|
const cursorX = this.cursor - this.scrollOffset;
|
|
151
326
|
if (cursorX >= 0 && cursorX < width) {
|
|
152
|
-
const
|
|
153
|
-
|
|
327
|
+
const useSymbol = this.virtualCursor.hasCustomSymbol();
|
|
328
|
+
// With a custom glyph we draw the glyph itself (styled with the
|
|
329
|
+
// normal text style so the symbol's colours stay predictable);
|
|
330
|
+
// without one we fall back to the legacy inverse-block highlight
|
|
331
|
+
// painted over the character under the caret.
|
|
332
|
+
const cursorChar = useSymbol ? this.virtualCursor.getSymbol() : (this.value[this.cursor] ?? ' ');
|
|
333
|
+
const cursorStyle = useSymbol
|
|
334
|
+
? this.normalStyleId
|
|
335
|
+
: this.registry.merge(this.normalStyleId, this.cursorStyleId);
|
|
154
336
|
this.writeText(cursorChar, { x: cursorX, y: 0, style: cursorStyle });
|
|
155
337
|
}
|
|
156
338
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextBox.mjs","sourceRoot":"","sources":["../../../src/Screen/controls/TextBox.mts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TextBox.mjs","sourceRoot":"","sources":["../../../src/Screen/controls/TextBox.mts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import type { StyleId, ToastPosition, WindowBorder } from '../types.mjs';
|
|
2
|
+
import { Window } from '../Window.mjs';
|
|
3
|
+
/** Resolved option bag consumed by the `Toast` constructor. `Screen.toast()`
|
|
4
|
+
* fills every field so the control itself never has to re-apply defaults. */
|
|
5
|
+
export interface ToastConstructorOptions {
|
|
6
|
+
/** Anchor corner (or top/bottom centre). Stored on the instance so the
|
|
7
|
+
* enclosing Screen can group toasts by anchor for stacking / re-layout. */
|
|
8
|
+
position: ToastPosition;
|
|
9
|
+
/** Pre-registered style used both as the window background and as the
|
|
10
|
+
* base style for the toast text. */
|
|
11
|
+
style: StyleId;
|
|
12
|
+
/** Border configuration. `false` yields a borderless toast. */
|
|
13
|
+
border: WindowBorder | boolean;
|
|
14
|
+
/** Stacking order relative to regular Screen children. */
|
|
15
|
+
zIndex: number;
|
|
16
|
+
/** Optional width override for the text row (inner area, without border).
|
|
17
|
+
* When undefined the toast auto-sizes to the measured string width. */
|
|
18
|
+
width: number | undefined;
|
|
19
|
+
}
|
|
20
|
+
/** A transient overlay window produced by `Screen.toast()`. Holds the
|
|
21
|
+
* message text and the anchor position so the Screen can stack, re-flow,
|
|
22
|
+
* and dismiss toasts without leaking that bookkeeping into every caller.
|
|
23
|
+
*
|
|
24
|
+
* The toast is auto-sized: the inner text row is `max(stringWidth(text), 1)`
|
|
25
|
+
* cells wide (or `options.width` when explicitly provided), plus one cell
|
|
26
|
+
* of horizontal padding on each side and the border insets. Height is
|
|
27
|
+
* always one text row plus the vertical border insets — toasts do not
|
|
28
|
+
* wrap or stack text vertically. */
|
|
29
|
+
export declare class Toast extends Window {
|
|
30
|
+
/** Message rendered inside the toast body. Stored so `setMessage` can
|
|
31
|
+
* redraw without re-asking the caller for the original text. */
|
|
32
|
+
private message;
|
|
33
|
+
/** Anchor corner (or top/bottom centre). Read by `Screen` when re-flowing
|
|
34
|
+
* the active-toast stack after a dismissal or terminal resize. */
|
|
35
|
+
private toastPosition;
|
|
36
|
+
/** Style shared between the background fill and the text row. Kept so
|
|
37
|
+
* `setMessage` uses the same colour combination the toast launched with. */
|
|
38
|
+
private toastStyle;
|
|
39
|
+
/** Screen-supplied dismissal hook. Registered after construction via
|
|
40
|
+
* `attachDismiss()` so `Toast` does not need a circular import on
|
|
41
|
+
* `Screen` to invoke `screen.dismissToast(this)`. */
|
|
42
|
+
private dismissHandler;
|
|
43
|
+
/** Builds a Toast with a final size derived from the supplied text and
|
|
44
|
+
* option bag. The caller (`Screen.toast()`) is responsible for placing
|
|
45
|
+
* the toast inside the Screen via `addChild` and setting the final x/y. */
|
|
46
|
+
constructor(text: string, options: ToastConstructorOptions);
|
|
47
|
+
/** Returns the currently displayed message. */
|
|
48
|
+
getMessage(): string;
|
|
49
|
+
/** Returns the resolved style id used for both the background fill and
|
|
50
|
+
* the text row. Exposed so tests can verify the toast's paint without
|
|
51
|
+
* re-resolving BUILTIN_TOAST by hand. */
|
|
52
|
+
getToastStyle(): StyleId;
|
|
53
|
+
/** Returns the anchor corner the toast was created with. `Screen` uses
|
|
54
|
+
* this to group sibling toasts when re-flowing the active stack. */
|
|
55
|
+
getToastPosition(): ToastPosition;
|
|
56
|
+
/** Registers the dismiss callback wired up by `Screen.toast()`. Called
|
|
57
|
+
* once immediately after construction so `toast.dismiss()` can trigger
|
|
58
|
+
* the full Screen-side teardown (timer cancel, re-flow, onDismiss
|
|
59
|
+
* callback) without the Toast needing a direct Screen reference. */
|
|
60
|
+
attachDismiss(handler: () => void): void;
|
|
61
|
+
/** Removes the toast from the Screen it was shown on. Equivalent to
|
|
62
|
+
* calling `screen.dismissToast(this)` — the overload exists so callers
|
|
63
|
+
* that only kept the Toast reference do not need to remember the owning
|
|
64
|
+
* Screen. Safe to call before `attachDismiss()` (no-op) or twice
|
|
65
|
+
* (subsequent calls are no-ops because the Screen guards re-dismissal). */
|
|
66
|
+
dismiss(): void;
|
|
67
|
+
/** Builds a fallback toast style when the registry did not already have
|
|
68
|
+
* `BUILTIN_TOAST` mapped. Extracted as a static helper so `Screen.toast`
|
|
69
|
+
* can resolve the style before it knows whether construction will fail. */
|
|
70
|
+
static resolveDefaultStyle(): StyleId;
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=Toast.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toast.d.mts","sourceRoot":"","sources":["../../../src/Screen/controls/Toast.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEzE,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAMvC;8EAC8E;AAC9E,MAAM,WAAW,uBAAuB;IACtC;gFAC4E;IAC5E,QAAQ,EAAE,aAAa,CAAC;IACxB;yCACqC;IACrC,KAAK,EAAE,OAAO,CAAC;IACf,+DAA+D;IAC/D,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC;IAC/B,0DAA0D;IAC1D,MAAM,EAAE,MAAM,CAAC;IACf;4EACwE;IACxE,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B;AAkBD;;;;;;;;qCAQqC;AACrC,qBAAa,KAAM,SAAQ,MAAM;IAC/B;qEACiE;IACjE,OAAO,CAAC,OAAO,CAAS;IACxB;uEACmE;IACnE,OAAO,CAAC,aAAa,CAAgB;IACrC;iFAC6E;IAC7E,OAAO,CAAC,UAAU,CAAU;IAC5B;;0DAEsD;IACtD,OAAO,CAAC,cAAc,CAA2B;IAEjD;;gFAE4E;gBACzD,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB;IAwBjE,+CAA+C;IACxC,UAAU,IAAI,MAAM;IAI3B;;8CAE0C;IACnC,aAAa,IAAI,OAAO;IAI/B;yEACqE;IAC9D,gBAAgB,IAAI,aAAa;IAIxC;;;yEAGqE;IAC9D,aAAa,CAAC,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI;IAI/C;;;;gFAI4E;IACrE,OAAO,IAAI,IAAI;IAItB;;gFAE4E;WAC9D,mBAAmB,IAAI,OAAO;CAM7C"}
|