@teaui/core 1.1.4

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 (203) hide show
  1. package/.dist/Buffer.d.ts +21 -0
  2. package/.dist/Buffer.js +140 -0
  3. package/.dist/Buffer.js.map +1 -0
  4. package/.dist/Color.d.ts +7 -0
  5. package/.dist/Color.js +39 -0
  6. package/.dist/Color.js.map +1 -0
  7. package/.dist/Container.d.ts +21 -0
  8. package/.dist/Container.js +138 -0
  9. package/.dist/Container.js.map +1 -0
  10. package/.dist/Screen.d.ts +54 -0
  11. package/.dist/Screen.js +278 -0
  12. package/.dist/Screen.js.map +1 -0
  13. package/.dist/Style.d.ts +46 -0
  14. package/.dist/Style.js +433 -0
  15. package/.dist/Style.js.map +1 -0
  16. package/.dist/System.d.ts +13 -0
  17. package/.dist/System.js +26 -0
  18. package/.dist/System.js.map +1 -0
  19. package/.dist/Theme.d.ts +56 -0
  20. package/.dist/Theme.js +157 -0
  21. package/.dist/Theme.js.map +1 -0
  22. package/.dist/UI.d.ts +2 -0
  23. package/.dist/UI.js +28 -0
  24. package/.dist/UI.js.map +1 -0
  25. package/.dist/View.d.ts +99 -0
  26. package/.dist/View.js +374 -0
  27. package/.dist/View.js.map +1 -0
  28. package/.dist/Viewport.d.ts +89 -0
  29. package/.dist/Viewport.js +295 -0
  30. package/.dist/Viewport.js.map +1 -0
  31. package/.dist/ansi.d.ts +31 -0
  32. package/.dist/ansi.js +139 -0
  33. package/.dist/ansi.js.map +1 -0
  34. package/.dist/components/Accordion.d.ts +47 -0
  35. package/.dist/components/Accordion.js +294 -0
  36. package/.dist/components/Accordion.js.map +1 -0
  37. package/.dist/components/Box.d.ts +67 -0
  38. package/.dist/components/Box.js +211 -0
  39. package/.dist/components/Box.js.map +1 -0
  40. package/.dist/components/Button.d.ts +28 -0
  41. package/.dist/components/Button.js +118 -0
  42. package/.dist/components/Button.js.map +1 -0
  43. package/.dist/components/Checkbox.d.ts +31 -0
  44. package/.dist/components/Checkbox.js +106 -0
  45. package/.dist/components/Checkbox.js.map +1 -0
  46. package/.dist/components/Collapsible.d.ts +32 -0
  47. package/.dist/components/Collapsible.js +109 -0
  48. package/.dist/components/Collapsible.js.map +1 -0
  49. package/.dist/components/CollapsibleText.d.ts +21 -0
  50. package/.dist/components/CollapsibleText.js +113 -0
  51. package/.dist/components/CollapsibleText.js.map +1 -0
  52. package/.dist/components/Digits.d.ts +20 -0
  53. package/.dist/components/Digits.js +843 -0
  54. package/.dist/components/Digits.js.map +1 -0
  55. package/.dist/components/Drawer.d.ts +44 -0
  56. package/.dist/components/Drawer.js +473 -0
  57. package/.dist/components/Drawer.js.map +1 -0
  58. package/.dist/components/Dropdown.d.ts +61 -0
  59. package/.dist/components/Dropdown.js +367 -0
  60. package/.dist/components/Dropdown.js.map +1 -0
  61. package/.dist/components/Header.d.ts +25 -0
  62. package/.dist/components/Header.js +106 -0
  63. package/.dist/components/Header.js.map +1 -0
  64. package/.dist/components/HotKey.d.ts +14 -0
  65. package/.dist/components/HotKey.js +31 -0
  66. package/.dist/components/HotKey.js.map +1 -0
  67. package/.dist/components/Input.d.ts +45 -0
  68. package/.dist/components/Input.js +1109 -0
  69. package/.dist/components/Input.js.map +1 -0
  70. package/.dist/components/Log.d.ts +16 -0
  71. package/.dist/components/Log.js +122 -0
  72. package/.dist/components/Log.js.map +1 -0
  73. package/.dist/components/Progress.d.ts +21 -0
  74. package/.dist/components/Progress.js +200 -0
  75. package/.dist/components/Progress.js.map +1 -0
  76. package/.dist/components/Scrollable.d.ts +50 -0
  77. package/.dist/components/Scrollable.js +226 -0
  78. package/.dist/components/Scrollable.js.map +1 -0
  79. package/.dist/components/ScrollableList.d.ts +70 -0
  80. package/.dist/components/ScrollableList.js +354 -0
  81. package/.dist/components/ScrollableList.js.map +1 -0
  82. package/.dist/components/Separator.d.ts +21 -0
  83. package/.dist/components/Separator.js +67 -0
  84. package/.dist/components/Separator.js.map +1 -0
  85. package/.dist/components/Slider.d.ts +60 -0
  86. package/.dist/components/Slider.js +341 -0
  87. package/.dist/components/Slider.js.map +1 -0
  88. package/.dist/components/Space.d.ts +19 -0
  89. package/.dist/components/Space.js +45 -0
  90. package/.dist/components/Space.js.map +1 -0
  91. package/.dist/components/Spinner.d.ts +16 -0
  92. package/.dist/components/Spinner.js +48 -0
  93. package/.dist/components/Spinner.js.map +1 -0
  94. package/.dist/components/Stack.d.ts +33 -0
  95. package/.dist/components/Stack.js +285 -0
  96. package/.dist/components/Stack.js.map +1 -0
  97. package/.dist/components/Tabs.d.ts +52 -0
  98. package/.dist/components/Tabs.js +312 -0
  99. package/.dist/components/Tabs.js.map +1 -0
  100. package/.dist/components/Text.d.ts +35 -0
  101. package/.dist/components/Text.js +242 -0
  102. package/.dist/components/Text.js.map +1 -0
  103. package/.dist/components/ToggleGroup.d.ts +26 -0
  104. package/.dist/components/ToggleGroup.js +279 -0
  105. package/.dist/components/ToggleGroup.js.map +1 -0
  106. package/.dist/components/Tree.d.ts +21 -0
  107. package/.dist/components/Tree.js +233 -0
  108. package/.dist/components/Tree.js.map +1 -0
  109. package/.dist/components/Window.d.ts +6 -0
  110. package/.dist/components/Window.js +17 -0
  111. package/.dist/components/Window.js.map +1 -0
  112. package/.dist/components/fonts.d.ts +2 -0
  113. package/.dist/components/fonts.js +39 -0
  114. package/.dist/components/fonts.js.map +1 -0
  115. package/.dist/components/index.d.ts +27 -0
  116. package/.dist/components/index.js +48 -0
  117. package/.dist/components/index.js.map +1 -0
  118. package/.dist/components/types.d.ts +6 -0
  119. package/.dist/components/types.js +20 -0
  120. package/.dist/components/types.js.map +1 -0
  121. package/.dist/components/utility/TrackMouse.d.ts +16 -0
  122. package/.dist/components/utility/TrackMouse.js +53 -0
  123. package/.dist/components/utility/TrackMouse.js.map +1 -0
  124. package/.dist/components/utility/index.d.ts +1 -0
  125. package/.dist/components/utility/index.js +6 -0
  126. package/.dist/components/utility/index.js.map +1 -0
  127. package/.dist/events/index.d.ts +12 -0
  128. package/.dist/events/index.js +20 -0
  129. package/.dist/events/index.js.map +1 -0
  130. package/.dist/events/key.d.ts +15 -0
  131. package/.dist/events/key.js +105 -0
  132. package/.dist/events/key.js.map +1 -0
  133. package/.dist/events/mouse.d.ts +65 -0
  134. package/.dist/events/mouse.js +68 -0
  135. package/.dist/events/mouse.js.map +1 -0
  136. package/.dist/events/window.d.ts +6 -0
  137. package/.dist/events/window.js +3 -0
  138. package/.dist/events/window.js.map +1 -0
  139. package/.dist/geometry.d.ts +178 -0
  140. package/.dist/geometry.js +315 -0
  141. package/.dist/geometry.js.map +1 -0
  142. package/.dist/iTerm2.d.ts +20 -0
  143. package/.dist/iTerm2.js +60 -0
  144. package/.dist/iTerm2.js.map +1 -0
  145. package/.dist/index.d.ts +18 -0
  146. package/.dist/index.js +37 -0
  147. package/.dist/index.js.map +1 -0
  148. package/.dist/inspect.d.ts +2 -0
  149. package/.dist/inspect.js +118 -0
  150. package/.dist/inspect.js.map +1 -0
  151. package/.dist/log.d.ts +12 -0
  152. package/.dist/log.js +56 -0
  153. package/.dist/log.js.map +1 -0
  154. package/.dist/managers/FocusManager.d.ts +28 -0
  155. package/.dist/managers/FocusManager.js +143 -0
  156. package/.dist/managers/FocusManager.js.map +1 -0
  157. package/.dist/managers/ModalManager.d.ts +10 -0
  158. package/.dist/managers/ModalManager.js +67 -0
  159. package/.dist/managers/ModalManager.js.map +1 -0
  160. package/.dist/managers/MouseManager.d.ts +21 -0
  161. package/.dist/managers/MouseManager.js +313 -0
  162. package/.dist/managers/MouseManager.js.map +1 -0
  163. package/.dist/managers/TickManager.d.ts +11 -0
  164. package/.dist/managers/TickManager.js +63 -0
  165. package/.dist/managers/TickManager.js.map +1 -0
  166. package/.dist/sys/alias.d.ts +470 -0
  167. package/.dist/sys/alias.js +487 -0
  168. package/.dist/sys/alias.js.map +1 -0
  169. package/.dist/sys/colors.d.ts +10 -0
  170. package/.dist/sys/colors.js +285 -0
  171. package/.dist/sys/colors.js.map +1 -0
  172. package/.dist/sys/gpmclient.d.ts +11 -0
  173. package/.dist/sys/gpmclient.js +193 -0
  174. package/.dist/sys/gpmclient.js.map +1 -0
  175. package/.dist/sys/index.d.ts +4 -0
  176. package/.dist/sys/index.js +41 -0
  177. package/.dist/sys/index.js.map +1 -0
  178. package/.dist/sys/keys.d.ts +4 -0
  179. package/.dist/sys/keys.js +531 -0
  180. package/.dist/sys/keys.js.map +1 -0
  181. package/.dist/sys/program.d.ts +356 -0
  182. package/.dist/sys/program.js +3739 -0
  183. package/.dist/sys/program.js.map +1 -0
  184. package/.dist/sys/tput.d.ts +297 -0
  185. package/.dist/sys/tput.js +2708 -0
  186. package/.dist/sys/tput.js.map +1 -0
  187. package/.dist/sys/unicode.d.ts +11 -0
  188. package/.dist/sys/unicode.js +619 -0
  189. package/.dist/sys/unicode.js.map +1 -0
  190. package/.dist/sys/usr/linux +0 -0
  191. package/.dist/sys/usr/windows-ansi +0 -0
  192. package/.dist/sys/usr/xterm +0 -0
  193. package/.dist/sys/usr/xterm-256color +0 -0
  194. package/.dist/sys/usr/xterm.termcap +243 -0
  195. package/.dist/sys/usr/xterm.terminfo +1977 -0
  196. package/.dist/terminal.d.ts +7 -0
  197. package/.dist/terminal.js +3 -0
  198. package/.dist/terminal.js.map +1 -0
  199. package/.dist/util.d.ts +22 -0
  200. package/.dist/util.js +79 -0
  201. package/.dist/util.js.map +1 -0
  202. package/LICENSE +24 -0
  203. package/package.json +49 -0
@@ -0,0 +1,619 @@
1
+ "use strict";
2
+ /**
3
+ * unicode.js - east asian width and surrogate pairs
4
+ * Copyright (c) 2013-2015, Christopher Jeffrey and contributors (MIT License).
5
+ * https://github.com/chjj/blessed
6
+ * Borrowed from vangie/east-asian-width, komagata/eastasianwidth,
7
+ * and mathiasbynens/String.prototype.codePointAt. Licenses below.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.words = exports.graphemes = exports.locale = void 0;
11
+ exports.charWidth = charWidth;
12
+ exports.stringSize = stringSize;
13
+ exports.lineWidth = lineWidth;
14
+ exports.printableChars = printableChars;
15
+ exports.removeAnsi = removeAnsi;
16
+ // east-asian-width
17
+ //
18
+ // Copyright (c) 2015 Vangie Du
19
+ // https://github.com/vangie/east-asian-width
20
+ //
21
+ // Permission is hereby granted, free of charge, to any person
22
+ // obtaining a copy of this software and associated documentation
23
+ // files (the "Software"), to deal in the Software without
24
+ // restriction, including without limitation the rights to use,
25
+ // copy, modify, merge, publish, distribute, sublicense, and/or sell
26
+ // copies of the Software, and to permit persons to whom the
27
+ // Software is furnished to do so, subject to the following
28
+ // conditions:
29
+ //
30
+ // The above copyright notice and this permission notice shall be
31
+ // included in all copies or substantial portions of the Software.
32
+ //
33
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
34
+ // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
35
+ // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
36
+ // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
37
+ // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
38
+ // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
39
+ // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
40
+ // OTHER DEALINGS IN THE SOFTWARE.
41
+ // eastasianwidth
42
+ //
43
+ // Copyright (c) 2013, Masaki Komagata
44
+ // https://github.com/komagata/eastasianwidth
45
+ //
46
+ // Permission is hereby granted, free of charge, to any person obtaining a copy
47
+ // of this software and associated documentation files (the "Software"), to deal
48
+ // in the Software without restriction, including without limitation the rights
49
+ // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
50
+ // copies of the Software, and to permit persons to whom the Software is
51
+ // furnished to do so, subject to the following conditions:
52
+ //
53
+ // The above copyright notice and this permission notice shall be included in
54
+ // all copies or substantial portions of the Software.
55
+ //
56
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
57
+ // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
58
+ // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
59
+ // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
60
+ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
61
+ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
62
+ // THE SOFTWARE.
63
+ /**
64
+ * Wide, Surrogates, and Combining
65
+ */
66
+ const BG_DRAW = '\x14';
67
+ /**
68
+ * Does not check to make sure 'str' is only one character
69
+ */
70
+ function charWidth(str) {
71
+ // this special character is used by viewport.paint. If you are copying this code
72
+ // for your own purposes, you should probably remove this.
73
+ if (str === BG_DRAW) {
74
+ return 1;
75
+ }
76
+ // added: ANSI formatter support
77
+ // eslint-disable-next-line no-control-regex
78
+ if (!str.length || str === '\x1b' || str.match(/^\x1b\[[\d;]*m$/)) {
79
+ return 0;
80
+ }
81
+ // added: Emoji support
82
+ if (str.length > 1 && /^\p{Extended_Pictographic}/u.test(str)) {
83
+ return 2;
84
+ }
85
+ var point = typeof str !== 'number' ? str.codePointAt(0) : str;
86
+ // nul
87
+ if (point === 0)
88
+ return 0;
89
+ // tab
90
+ if (point === 0x09) {
91
+ return 1;
92
+ }
93
+ // 8-bit control characters (2-width according to unicode??)
94
+ if (point < 32 || (point >= 0x7f && point < 0xa0)) {
95
+ return 0;
96
+ }
97
+ // search table of non-spacing characters
98
+ // is ucs combining or C0/C1 control character
99
+ if (isCombiningCode(point)) {
100
+ return 0;
101
+ }
102
+ // check for double-wide
103
+ // if (point >= 0x1100
104
+ // && (point <= 0x115f // Hangul Jamo init. consonants
105
+ // || point === 0x2329 || point === 0x232a
106
+ // || (point >= 0x2e80 && point <= 0xa4cf
107
+ // && point !== 0x303f) // CJK ... Yi
108
+ // || (point >= 0xac00 && point <= 0xd7a3) // Hangul Syllables
109
+ // || (point >= 0xf900 && point <= 0xfaff) // CJK Compatibility Ideographs
110
+ // || (point >= 0xfe10 && point <= 0xfe19) // Vertical forms
111
+ // || (point >= 0xfe30 && point <= 0xfe6f) // CJK Compatibility Forms
112
+ // || (point >= 0xff00 && point <= 0xff60) // Fullwidth Forms
113
+ // || (point >= 0xffe0 && point <= 0xffe6)
114
+ // || (point >= 0x20000 && point <= 0x2fffd)
115
+ // || (point >= 0x30000 && point <= 0x3fffd))) {
116
+ // return 2;
117
+ // }
118
+ // check for double-wide
119
+ if (0x3000 === point ||
120
+ (0xff01 <= point && point <= 0xff60) ||
121
+ (0xffe0 <= point && point <= 0xffe6)) {
122
+ return 2;
123
+ }
124
+ if ((0x1100 <= point && point <= 0x115f) ||
125
+ (0x11a3 <= point && point <= 0x11a7) ||
126
+ (0x11fa <= point && point <= 0x11ff) ||
127
+ (0x2329 <= point && point <= 0x232a) ||
128
+ (0x2e80 <= point && point <= 0x2e99) ||
129
+ (0x2e9b <= point && point <= 0x2ef3) ||
130
+ (0x2f00 <= point && point <= 0x2fd5) ||
131
+ (0x2ff0 <= point && point <= 0x2ffb) ||
132
+ (0x3001 <= point && point <= 0x303e) ||
133
+ (0x3041 <= point && point <= 0x3096) ||
134
+ (0x3099 <= point && point <= 0x30ff) ||
135
+ (0x3105 <= point && point <= 0x312d) ||
136
+ (0x3131 <= point && point <= 0x318e) ||
137
+ (0x3190 <= point && point <= 0x31ba) ||
138
+ (0x31c0 <= point && point <= 0x31e3) ||
139
+ (0x31f0 <= point && point <= 0x321e) ||
140
+ (0x3220 <= point && point <= 0x3247) ||
141
+ (0x3250 <= point && point <= 0x32fe) ||
142
+ (0x3300 <= point && point <= 0x4dbf) ||
143
+ (0x4e00 <= point && point <= 0xa48c) ||
144
+ (0xa490 <= point && point <= 0xa4c6) ||
145
+ (0xa960 <= point && point <= 0xa97c) ||
146
+ (0xac00 <= point && point <= 0xd7a3) ||
147
+ (0xd7b0 <= point && point <= 0xd7c6) ||
148
+ (0xd7cb <= point && point <= 0xd7fb) ||
149
+ (0xf900 <= point && point <= 0xfaff) ||
150
+ (0xfe10 <= point && point <= 0xfe19) ||
151
+ (0xfe30 <= point && point <= 0xfe52) ||
152
+ (0xfe54 <= point && point <= 0xfe66) ||
153
+ (0xfe68 <= point && point <= 0xfe6b) ||
154
+ (0x1b000 <= point && point <= 0x1b001) ||
155
+ (0x1f200 <= point && point <= 0x1f202) ||
156
+ (0x1f210 <= point && point <= 0x1f23a) ||
157
+ (0x1f240 <= point && point <= 0x1f248) ||
158
+ (0x1f250 <= point && point <= 0x1f251) ||
159
+ (0x20000 <= point && point <= 0x2f73f) ||
160
+ (0x2b740 <= point && point <= 0x2fffd) ||
161
+ (0x30000 <= point && point <= 0x3fffd)) {
162
+ return 2;
163
+ }
164
+ // CJK Ambiguous
165
+ // http://www.unicode.org/reports/tr11/
166
+ // http://www.unicode.org/reports/tr11/#Ambiguous
167
+ if (process.env.NCURSES_CJK_WIDTH) {
168
+ if (0x00a1 === point ||
169
+ 0x00a4 === point ||
170
+ (0x00a7 <= point && point <= 0x00a8) ||
171
+ 0x00aa === point ||
172
+ (0x00ad <= point && point <= 0x00ae) ||
173
+ (0x00b0 <= point && point <= 0x00b4) ||
174
+ (0x00b6 <= point && point <= 0x00ba) ||
175
+ (0x00bc <= point && point <= 0x00bf) ||
176
+ 0x00c6 === point ||
177
+ 0x00d0 === point ||
178
+ (0x00d7 <= point && point <= 0x00d8) ||
179
+ (0x00de <= point && point <= 0x00e1) ||
180
+ 0x00e6 === point ||
181
+ (0x00e8 <= point && point <= 0x00ea) ||
182
+ (0x00ec <= point && point <= 0x00ed) ||
183
+ 0x00f0 === point ||
184
+ (0x00f2 <= point && point <= 0x00f3) ||
185
+ (0x00f7 <= point && point <= 0x00fa) ||
186
+ 0x00fc === point ||
187
+ 0x00fe === point ||
188
+ 0x0101 === point ||
189
+ 0x0111 === point ||
190
+ 0x0113 === point ||
191
+ 0x011b === point ||
192
+ (0x0126 <= point && point <= 0x0127) ||
193
+ 0x012b === point ||
194
+ (0x0131 <= point && point <= 0x0133) ||
195
+ 0x0138 === point ||
196
+ (0x013f <= point && point <= 0x0142) ||
197
+ 0x0144 === point ||
198
+ (0x0148 <= point && point <= 0x014b) ||
199
+ 0x014d === point ||
200
+ (0x0152 <= point && point <= 0x0153) ||
201
+ (0x0166 <= point && point <= 0x0167) ||
202
+ 0x016b === point ||
203
+ 0x01ce === point ||
204
+ 0x01d0 === point ||
205
+ 0x01d2 === point ||
206
+ 0x01d4 === point ||
207
+ 0x01d6 === point ||
208
+ 0x01d8 === point ||
209
+ 0x01da === point ||
210
+ 0x01dc === point ||
211
+ 0x0251 === point ||
212
+ 0x0261 === point ||
213
+ 0x02c4 === point ||
214
+ 0x02c7 === point ||
215
+ (0x02c9 <= point && point <= 0x02cb) ||
216
+ 0x02cd === point ||
217
+ 0x02d0 === point ||
218
+ (0x02d8 <= point && point <= 0x02db) ||
219
+ 0x02dd === point ||
220
+ 0x02df === point ||
221
+ (0x0300 <= point && point <= 0x036f) ||
222
+ (0x0391 <= point && point <= 0x03a1) ||
223
+ (0x03a3 <= point && point <= 0x03a9) ||
224
+ (0x03b1 <= point && point <= 0x03c1) ||
225
+ (0x03c3 <= point && point <= 0x03c9) ||
226
+ 0x0401 === point ||
227
+ (0x0410 <= point && point <= 0x044f) ||
228
+ 0x0451 === point ||
229
+ 0x2010 === point ||
230
+ (0x2013 <= point && point <= 0x2016) ||
231
+ (0x2018 <= point && point <= 0x2019) ||
232
+ (0x201c <= point && point <= 0x201d) ||
233
+ (0x2020 <= point && point <= 0x2022) ||
234
+ (0x2024 <= point && point <= 0x2027) ||
235
+ 0x2030 === point ||
236
+ (0x2032 <= point && point <= 0x2033) ||
237
+ 0x2035 === point ||
238
+ 0x203b === point ||
239
+ 0x203e === point ||
240
+ 0x2074 === point ||
241
+ 0x207f === point ||
242
+ (0x2081 <= point && point <= 0x2084) ||
243
+ 0x20ac === point ||
244
+ 0x2103 === point ||
245
+ 0x2105 === point ||
246
+ 0x2109 === point ||
247
+ 0x2113 === point ||
248
+ 0x2116 === point ||
249
+ (0x2121 <= point && point <= 0x2122) ||
250
+ 0x2126 === point ||
251
+ 0x212b === point ||
252
+ (0x2153 <= point && point <= 0x2154) ||
253
+ (0x215b <= point && point <= 0x215e) ||
254
+ (0x2160 <= point && point <= 0x216b) ||
255
+ (0x2170 <= point && point <= 0x2179) ||
256
+ 0x2189 === point ||
257
+ (0x2190 <= point && point <= 0x2199) ||
258
+ (0x21b8 <= point && point <= 0x21b9) ||
259
+ 0x21d2 === point ||
260
+ 0x21d4 === point ||
261
+ 0x21e7 === point ||
262
+ 0x2200 === point ||
263
+ (0x2202 <= point && point <= 0x2203) ||
264
+ (0x2207 <= point && point <= 0x2208) ||
265
+ 0x220b === point ||
266
+ 0x220f === point ||
267
+ 0x2211 === point ||
268
+ 0x2215 === point ||
269
+ 0x221a === point ||
270
+ (0x221d <= point && point <= 0x2220) ||
271
+ 0x2223 === point ||
272
+ 0x2225 === point ||
273
+ (0x2227 <= point && point <= 0x222c) ||
274
+ 0x222e === point ||
275
+ (0x2234 <= point && point <= 0x2237) ||
276
+ (0x223c <= point && point <= 0x223d) ||
277
+ 0x2248 === point ||
278
+ 0x224c === point ||
279
+ 0x2252 === point ||
280
+ (0x2260 <= point && point <= 0x2261) ||
281
+ (0x2264 <= point && point <= 0x2267) ||
282
+ (0x226a <= point && point <= 0x226b) ||
283
+ (0x226e <= point && point <= 0x226f) ||
284
+ (0x2282 <= point && point <= 0x2283) ||
285
+ (0x2286 <= point && point <= 0x2287) ||
286
+ 0x2295 === point ||
287
+ 0x2299 === point ||
288
+ 0x22a5 === point ||
289
+ 0x22bf === point ||
290
+ 0x2312 === point ||
291
+ (0x2460 <= point && point <= 0x24e9) ||
292
+ (0x24eb <= point && point <= 0x254b) ||
293
+ (0x2550 <= point && point <= 0x2573) ||
294
+ (0x2580 <= point && point <= 0x258f) ||
295
+ (0x2592 <= point && point <= 0x2595) ||
296
+ (0x25a0 <= point && point <= 0x25a1) ||
297
+ (0x25a3 <= point && point <= 0x25a9) ||
298
+ (0x25b2 <= point && point <= 0x25b3) ||
299
+ (0x25b6 <= point && point <= 0x25b7) ||
300
+ (0x25bc <= point && point <= 0x25bd) ||
301
+ (0x25c0 <= point && point <= 0x25c1) ||
302
+ (0x25c6 <= point && point <= 0x25c8) ||
303
+ 0x25cb === point ||
304
+ (0x25ce <= point && point <= 0x25d1) ||
305
+ (0x25e2 <= point && point <= 0x25e5) ||
306
+ 0x25ef === point ||
307
+ (0x2605 <= point && point <= 0x2606) ||
308
+ 0x2609 === point ||
309
+ (0x260e <= point && point <= 0x260f) ||
310
+ (0x2614 <= point && point <= 0x2615) ||
311
+ 0x261c === point ||
312
+ 0x261e === point ||
313
+ 0x2640 === point ||
314
+ 0x2642 === point ||
315
+ (0x2660 <= point && point <= 0x2661) ||
316
+ (0x2663 <= point && point <= 0x2665) ||
317
+ (0x2667 <= point && point <= 0x266a) ||
318
+ (0x266c <= point && point <= 0x266d) ||
319
+ 0x266f === point ||
320
+ (0x269e <= point && point <= 0x269f) ||
321
+ (0x26be <= point && point <= 0x26bf) ||
322
+ (0x26c4 <= point && point <= 0x26cd) ||
323
+ (0x26cf <= point && point <= 0x26e1) ||
324
+ 0x26e3 === point ||
325
+ (0x26e8 <= point && point <= 0x26ff) ||
326
+ 0x273d === point ||
327
+ 0x2757 === point ||
328
+ (0x2776 <= point && point <= 0x277f) ||
329
+ (0x2b55 <= point && point <= 0x2b59) ||
330
+ (0x3248 <= point && point <= 0x324f) ||
331
+ (0xe000 <= point && point <= 0xf8ff) ||
332
+ (0xfe00 <= point && point <= 0xfe0f) ||
333
+ 0xfffd === point ||
334
+ (0x1f100 <= point && point <= 0x1f10a) ||
335
+ (0x1f110 <= point && point <= 0x1f12d) ||
336
+ (0x1f130 <= point && point <= 0x1f169) ||
337
+ (0x1f170 <= point && point <= 0x1f19a) ||
338
+ (0xe0100 <= point && point <= 0xe01ef) ||
339
+ (0xf0000 <= point && point <= 0xffffd) ||
340
+ (0x100000 <= point && point <= 0x10fffd)) {
341
+ return +process.env.NCURSES_CJK_WIDTH || 1;
342
+ }
343
+ }
344
+ return 1;
345
+ }
346
+ function stringSize(str, maxWidth) {
347
+ if (Array.isArray(str)) {
348
+ if (maxWidth != null) {
349
+ return str.reduce((size, line) => {
350
+ const width = lineWidth(line);
351
+ const height = Math.max(1, Math.ceil(width / maxWidth));
352
+ size.width = Math.max(size.width, width);
353
+ size.height += height;
354
+ return size;
355
+ }, { width: 0, height: 0 });
356
+ }
357
+ return { width: Math.max(...str.map(lineWidth)), height: str.length };
358
+ }
359
+ else {
360
+ return stringSize(str.split('\n'));
361
+ }
362
+ }
363
+ function lineWidth(str) {
364
+ var width = 0;
365
+ for (const char of Array.isArray(str) ? str : (0, exports.graphemes)(str)) {
366
+ if (str === '\n') {
367
+ break;
368
+ }
369
+ width += charWidth(char);
370
+ }
371
+ return width;
372
+ }
373
+ exports.locale = process.env.LANG?.split('.')[0]?.slice(0, 2) ?? 'en';
374
+ exports.graphemes = (function () {
375
+ if (!global['Intl']) {
376
+ const ZERO_WIDTH_JOINER = 0x200d;
377
+ return input => {
378
+ input = removeAnsi(input);
379
+ const printableChars = [...input];
380
+ for (let i = printableChars.length - 1; i > 0; i--) {
381
+ if (printableChars[i].charCodeAt(0) === ZERO_WIDTH_JOINER) {
382
+ // find & handle special combination character
383
+ printableChars[i - 1] += printableChars[i] + printableChars[i + 1];
384
+ // remove the combined characters
385
+ printableChars.splice(i, 2);
386
+ }
387
+ }
388
+ return printableChars;
389
+ };
390
+ }
391
+ const segmenter = new Intl.Segmenter(exports.locale);
392
+ return input => {
393
+ input = removeAnsi(input);
394
+ const parts = segmenter.segment(input);
395
+ return [...parts].map(({ segment }) => segment);
396
+ };
397
+ })();
398
+ exports.words = (function () {
399
+ if (!global['Intl']) {
400
+ return input => {
401
+ if (Array.isArray(input)) {
402
+ input = input.join('');
403
+ }
404
+ else {
405
+ input = removeAnsi(input);
406
+ }
407
+ let offset = 0;
408
+ return input.split(/\b/).map(segment => {
409
+ const currentOffset = offset;
410
+ const chars = (0, exports.graphemes)(segment);
411
+ offset += chars.length;
412
+ return [chars, currentOffset];
413
+ });
414
+ };
415
+ }
416
+ const segmenter = new Intl.Segmenter(exports.locale, { granularity: 'word' });
417
+ return input => {
418
+ if (Array.isArray(input)) {
419
+ input = input.join('');
420
+ }
421
+ else {
422
+ input = removeAnsi(input);
423
+ }
424
+ const parts = segmenter.segment(input);
425
+ let offset = 0;
426
+ let words = [];
427
+ for (let { segment } of parts) {
428
+ const currentOffset = offset;
429
+ const chars = (0, exports.graphemes)(segment);
430
+ offset += chars.length;
431
+ words.push([chars, currentOffset]);
432
+ }
433
+ return words;
434
+ };
435
+ })();
436
+ function printableChars(str) {
437
+ if (str.length === 0) {
438
+ return [];
439
+ }
440
+ if (str.length === 1) {
441
+ return [str];
442
+ }
443
+ if (str.length === 2) {
444
+ return [...str];
445
+ }
446
+ let isFirst = true;
447
+ const chars = [];
448
+ // eslint-disable-next-line no-control-regex
449
+ for (const input of str.split(/\x1b\[/)) {
450
+ const match = input.match(/^([\d;]*m)((.|[\n\r])*)$/m);
451
+ if (match && !isFirst) {
452
+ chars.push(`\x1b[${match[1]}`);
453
+ chars.push(...(0, exports.graphemes)(match[2]));
454
+ }
455
+ else {
456
+ chars.push(...(0, exports.graphemes)(input));
457
+ }
458
+ isFirst = false;
459
+ }
460
+ return chars;
461
+ }
462
+ function removeAnsi(input) {
463
+ // eslint-disable-next-line no-control-regex
464
+ return input.replaceAll(/\x1b\[[\d;]*m/g, '');
465
+ }
466
+ const combiningTable = [
467
+ [0x0300, 0x036f],
468
+ [0x0483, 0x0486],
469
+ [0x0488, 0x0489],
470
+ [0x0591, 0x05bd],
471
+ [0x05bf, 0x05bf],
472
+ [0x05c1, 0x05c2],
473
+ [0x05c4, 0x05c5],
474
+ [0x05c7, 0x05c7],
475
+ [0x0600, 0x0603],
476
+ [0x0610, 0x0615],
477
+ [0x064b, 0x065e],
478
+ [0x0670, 0x0670],
479
+ [0x06d6, 0x06e4],
480
+ [0x06e7, 0x06e8],
481
+ [0x06ea, 0x06ed],
482
+ [0x070f, 0x070f],
483
+ [0x0711, 0x0711],
484
+ [0x0730, 0x074a],
485
+ [0x07a6, 0x07b0],
486
+ [0x07eb, 0x07f3],
487
+ [0x0901, 0x0902],
488
+ [0x093c, 0x093c],
489
+ [0x0941, 0x0948],
490
+ [0x094d, 0x094d],
491
+ [0x0951, 0x0954],
492
+ [0x0962, 0x0963],
493
+ [0x0981, 0x0981],
494
+ [0x09bc, 0x09bc],
495
+ [0x09c1, 0x09c4],
496
+ [0x09cd, 0x09cd],
497
+ [0x09e2, 0x09e3],
498
+ [0x0a01, 0x0a02],
499
+ [0x0a3c, 0x0a3c],
500
+ [0x0a41, 0x0a42],
501
+ [0x0a47, 0x0a48],
502
+ [0x0a4b, 0x0a4d],
503
+ [0x0a70, 0x0a71],
504
+ [0x0a81, 0x0a82],
505
+ [0x0abc, 0x0abc],
506
+ [0x0ac1, 0x0ac5],
507
+ [0x0ac7, 0x0ac8],
508
+ [0x0acd, 0x0acd],
509
+ [0x0ae2, 0x0ae3],
510
+ [0x0b01, 0x0b01],
511
+ [0x0b3c, 0x0b3c],
512
+ [0x0b3f, 0x0b3f],
513
+ [0x0b41, 0x0b43],
514
+ [0x0b4d, 0x0b4d],
515
+ [0x0b56, 0x0b56],
516
+ [0x0b82, 0x0b82],
517
+ [0x0bc0, 0x0bc0],
518
+ [0x0bcd, 0x0bcd],
519
+ [0x0c3e, 0x0c40],
520
+ [0x0c46, 0x0c48],
521
+ [0x0c4a, 0x0c4d],
522
+ [0x0c55, 0x0c56],
523
+ [0x0cbc, 0x0cbc],
524
+ [0x0cbf, 0x0cbf],
525
+ [0x0cc6, 0x0cc6],
526
+ [0x0ccc, 0x0ccd],
527
+ [0x0ce2, 0x0ce3],
528
+ [0x0d41, 0x0d43],
529
+ [0x0d4d, 0x0d4d],
530
+ [0x0dca, 0x0dca],
531
+ [0x0dd2, 0x0dd4],
532
+ [0x0dd6, 0x0dd6],
533
+ [0x0e31, 0x0e31],
534
+ [0x0e34, 0x0e3a],
535
+ [0x0e47, 0x0e4e],
536
+ [0x0eb1, 0x0eb1],
537
+ [0x0eb4, 0x0eb9],
538
+ [0x0ebb, 0x0ebc],
539
+ [0x0ec8, 0x0ecd],
540
+ [0x0f18, 0x0f19],
541
+ [0x0f35, 0x0f35],
542
+ [0x0f37, 0x0f37],
543
+ [0x0f39, 0x0f39],
544
+ [0x0f71, 0x0f7e],
545
+ [0x0f80, 0x0f84],
546
+ [0x0f86, 0x0f87],
547
+ [0x0f90, 0x0f97],
548
+ [0x0f99, 0x0fbc],
549
+ [0x0fc6, 0x0fc6],
550
+ [0x102d, 0x1030],
551
+ [0x1032, 0x1032],
552
+ [0x1036, 0x1037],
553
+ [0x1039, 0x1039],
554
+ [0x1058, 0x1059],
555
+ [0x1160, 0x11ff],
556
+ [0x135f, 0x135f],
557
+ [0x1712, 0x1714],
558
+ [0x1732, 0x1734],
559
+ [0x1752, 0x1753],
560
+ [0x1772, 0x1773],
561
+ [0x17b4, 0x17b5],
562
+ [0x17b7, 0x17bd],
563
+ [0x17c6, 0x17c6],
564
+ [0x17c9, 0x17d3],
565
+ [0x17dd, 0x17dd],
566
+ [0x180b, 0x180d],
567
+ [0x18a9, 0x18a9],
568
+ [0x1920, 0x1922],
569
+ [0x1927, 0x1928],
570
+ [0x1932, 0x1932],
571
+ [0x1939, 0x193b],
572
+ [0x1a17, 0x1a18],
573
+ [0x1b00, 0x1b03],
574
+ [0x1b34, 0x1b34],
575
+ [0x1b36, 0x1b3a],
576
+ [0x1b3c, 0x1b3c],
577
+ [0x1b42, 0x1b42],
578
+ [0x1b6b, 0x1b73],
579
+ [0x1dc0, 0x1dca],
580
+ [0x1dfe, 0x1dff],
581
+ [0x200b, 0x200f],
582
+ [0x202a, 0x202e],
583
+ [0x2060, 0x2063],
584
+ [0x206a, 0x206f],
585
+ [0x20d0, 0x20ef],
586
+ [0x302a, 0x302f],
587
+ [0x3099, 0x309a],
588
+ [0xa806, 0xa806],
589
+ [0xa80b, 0xa80b],
590
+ [0xa825, 0xa826],
591
+ [0xfb1e, 0xfb1e],
592
+ [0xfe00, 0xfe0f],
593
+ [0xfe20, 0xfe23],
594
+ [0xfeff, 0xfeff],
595
+ [0xfff9, 0xfffb],
596
+ [0x10a01, 0x10a03],
597
+ [0x10a05, 0x10a06],
598
+ [0x10a0c, 0x10a0f],
599
+ [0x10a38, 0x10a3a],
600
+ [0x10a3f, 0x10a3f],
601
+ [0x1d167, 0x1d169],
602
+ [0x1d173, 0x1d182],
603
+ [0x1d185, 0x1d18b],
604
+ [0x1d1aa, 0x1d1ad],
605
+ [0x1d242, 0x1d244],
606
+ [0xe0001, 0xe0001],
607
+ [0xe0020, 0xe007f],
608
+ [0xe0100, 0xe01ef],
609
+ ];
610
+ const _isCombiningCode = combiningTable.reduce(function (map, row) {
611
+ for (var i = row[0]; i <= row[1]; i++) {
612
+ map.set(i, true);
613
+ }
614
+ return map;
615
+ }, new Map());
616
+ function isCombiningCode(code) {
617
+ return _isCombiningCode.get(code) ?? false;
618
+ }
619
+ //# sourceMappingURL=unicode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unicode.js","sourceRoot":"","sources":["../../lib/sys/unicode.js"],"names":[],"mappings":"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KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;QACpC,CAAC,OAAO,IAAI,KAAK,IAAI,KAAK,IAAI,OAAO,CAAC;QACtC,CAAC,OAAO,IAAI,KAAK,IAAI,KAAK,IAAI,OAAO,CAAC;QACtC,CAAC,OAAO,IAAI,KAAK,IAAI,KAAK,IAAI,OAAO,CAAC;QACtC,CAAC,OAAO,IAAI,KAAK,IAAI,KAAK,IAAI,OAAO,CAAC;QACtC,CAAC,OAAO,IAAI,KAAK,IAAI,KAAK,IAAI,OAAO,CAAC;QACtC,CAAC,OAAO,IAAI,KAAK,IAAI,KAAK,IAAI,OAAO,CAAC;QACtC,CAAC,OAAO,IAAI,KAAK,IAAI,KAAK,IAAI,OAAO,CAAC;QACtC,CAAC,OAAO,IAAI,KAAK,IAAI,KAAK,IAAI,OAAO,CAAC,EACtC,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED,gBAAgB;IAChB,uCAAuC;IACvC,iDAAiD;IACjD,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;QAClC,IACE,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,MAAM,KAAK,KAAK;YAChB,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YACpC,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC;YAC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AC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,OAAO,EAAE,OAAO,CAAC;CACnB,CAAA;AAED,MAAM,gBAAgB,GAAG,cAAc,CAAC,MAAM,CAAC,UAAU,GAAG,EAAE,GAAG;IAC/D,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,CAAA;AACb,SAAS,eAAe,CAAC,IAAI;IAC3B,OAAO,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,CAAA;AAC5C,CAAC"}
Binary file
Binary file
Binary file
Binary file