termcast 1.3.30 → 1.3.32

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 (294) hide show
  1. package/dist/apis/cache.d.ts.map +1 -1
  2. package/dist/apis/cache.js +4 -39
  3. package/dist/apis/cache.js.map +1 -1
  4. package/dist/apis/hud.d.ts.map +1 -1
  5. package/dist/apis/hud.js +13 -31
  6. package/dist/apis/hud.js.map +1 -1
  7. package/dist/apis/localstorage.d.ts.map +1 -1
  8. package/dist/apis/localstorage.js +3 -27
  9. package/dist/apis/localstorage.js.map +1 -1
  10. package/dist/apis/toast.d.ts +16 -43
  11. package/dist/apis/toast.d.ts.map +1 -1
  12. package/dist/apis/toast.js +78 -177
  13. package/dist/apis/toast.js.map +1 -1
  14. package/dist/build.d.ts +3 -1
  15. package/dist/build.d.ts.map +1 -1
  16. package/dist/build.js +52 -2
  17. package/dist/build.js.map +1 -1
  18. package/dist/cli.d.ts +1 -0
  19. package/dist/cli.d.ts.map +1 -1
  20. package/dist/cli.js +206 -25
  21. package/dist/cli.js.map +1 -1
  22. package/dist/colors.d.ts.map +1 -1
  23. package/dist/colors.js +1 -0
  24. package/dist/colors.js.map +1 -1
  25. package/dist/compile.d.ts +0 -1
  26. package/dist/compile.d.ts.map +1 -1
  27. package/dist/compile.js +18 -23
  28. package/dist/compile.js.map +1 -1
  29. package/dist/components/actions.d.ts.map +1 -1
  30. package/dist/components/actions.js +30 -15
  31. package/dist/components/actions.js.map +1 -1
  32. package/dist/components/animation-tick.d.ts +12 -0
  33. package/dist/components/animation-tick.d.ts.map +1 -0
  34. package/dist/components/animation-tick.js +63 -0
  35. package/dist/components/animation-tick.js.map +1 -0
  36. package/dist/components/detail.d.ts.map +1 -1
  37. package/dist/components/detail.js +10 -13
  38. package/dist/components/detail.js.map +1 -1
  39. package/dist/components/dropdown.d.ts +1 -0
  40. package/dist/components/dropdown.d.ts.map +1 -1
  41. package/dist/components/dropdown.js +27 -26
  42. package/dist/components/dropdown.js.map +1 -1
  43. package/dist/components/extension-preferences.d.ts.map +1 -1
  44. package/dist/components/extension-preferences.js +15 -10
  45. package/dist/components/extension-preferences.js.map +1 -1
  46. package/dist/components/footer.d.ts +13 -0
  47. package/dist/components/footer.d.ts.map +1 -0
  48. package/dist/components/footer.js +106 -0
  49. package/dist/components/footer.js.map +1 -0
  50. package/dist/components/form/file-autocomplete.d.ts +19 -4
  51. package/dist/components/form/file-autocomplete.d.ts.map +1 -1
  52. package/dist/components/form/file-autocomplete.js +56 -55
  53. package/dist/components/form/file-autocomplete.js.map +1 -1
  54. package/dist/components/form/file-picker.d.ts.map +1 -1
  55. package/dist/components/form/file-picker.js +26 -15
  56. package/dist/components/form/file-picker.js.map +1 -1
  57. package/dist/components/form/index.d.ts.map +1 -1
  58. package/dist/components/form/index.js +17 -15
  59. package/dist/components/form/index.js.map +1 -1
  60. package/dist/components/form/with-left-border.d.ts.map +1 -1
  61. package/dist/components/form/with-left-border.js +4 -12
  62. package/dist/components/form/with-left-border.js.map +1 -1
  63. package/dist/components/list.d.ts.map +1 -1
  64. package/dist/components/list.js +126 -86
  65. package/dist/components/list.js.map +1 -1
  66. package/dist/components/loading-bar.d.ts.map +1 -1
  67. package/dist/components/loading-bar.js +5 -22
  68. package/dist/components/loading-bar.js.map +1 -1
  69. package/dist/components/loading-text.d.ts.map +1 -1
  70. package/dist/components/loading-text.js +3 -22
  71. package/dist/components/loading-text.js.map +1 -1
  72. package/dist/components/theme-picker.d.ts +2 -0
  73. package/dist/components/theme-picker.d.ts.map +1 -0
  74. package/dist/components/theme-picker.js +37 -0
  75. package/dist/components/theme-picker.js.map +1 -0
  76. package/dist/descendants.d.ts +6 -0
  77. package/dist/descendants.d.ts.map +1 -1
  78. package/dist/descendants.js +74 -8
  79. package/dist/descendants.js.map +1 -1
  80. package/dist/examples/internal/descendants-rerender.d.ts +14 -0
  81. package/dist/examples/internal/descendants-rerender.d.ts.map +1 -0
  82. package/dist/examples/internal/descendants-rerender.js +145 -0
  83. package/dist/examples/internal/descendants-rerender.js.map +1 -0
  84. package/dist/examples/internal/simple-dialog.js +4 -1
  85. package/dist/examples/internal/simple-dialog.js.map +1 -1
  86. package/dist/examples/internal/simple-scrollbox.js +1 -1
  87. package/dist/examples/internal/simple-scrollbox.js.map +1 -1
  88. package/dist/examples/list-with-dropdown.js +1 -1
  89. package/dist/examples/list-with-dropdown.js.map +1 -1
  90. package/dist/examples/miscellaneous.js +1 -1
  91. package/dist/examples/miscellaneous.js.map +1 -1
  92. package/dist/examples/toast-action.d.ts +2 -0
  93. package/dist/examples/toast-action.d.ts.map +1 -0
  94. package/dist/examples/toast-action.js +76 -0
  95. package/dist/examples/toast-action.js.map +1 -0
  96. package/dist/examples/toast-variations.js +38 -36
  97. package/dist/examples/toast-variations.js.map +1 -1
  98. package/dist/extensions/dev.d.ts +1 -1
  99. package/dist/extensions/dev.d.ts.map +1 -1
  100. package/dist/extensions/dev.js +62 -30
  101. package/dist/extensions/dev.js.map +1 -1
  102. package/dist/extensions/home.d.ts.map +1 -1
  103. package/dist/extensions/home.js +4 -3
  104. package/dist/extensions/home.js.map +1 -1
  105. package/dist/extensions/react-refresh-init.d.ts +5 -0
  106. package/dist/extensions/react-refresh-init.d.ts.map +1 -0
  107. package/dist/extensions/react-refresh-init.js +52 -0
  108. package/dist/extensions/react-refresh-init.js.map +1 -0
  109. package/dist/internal/date-picker-widget.js +1 -1
  110. package/dist/internal/date-picker-widget.js.map +1 -1
  111. package/dist/internal/dialog.d.ts +8 -3
  112. package/dist/internal/dialog.d.ts.map +1 -1
  113. package/dist/internal/dialog.js +37 -53
  114. package/dist/internal/dialog.js.map +1 -1
  115. package/dist/internal/navigation.d.ts +1 -0
  116. package/dist/internal/navigation.d.ts.map +1 -1
  117. package/dist/internal/navigation.js +25 -1
  118. package/dist/internal/navigation.js.map +1 -1
  119. package/dist/internal/providers.d.ts.map +1 -1
  120. package/dist/internal/providers.js +9 -197
  121. package/dist/internal/providers.js.map +1 -1
  122. package/dist/internal/scrollbox.d.ts.map +1 -1
  123. package/dist/internal/scrollbox.js +1 -0
  124. package/dist/internal/scrollbox.js.map +1 -1
  125. package/dist/release.d.ts +1 -0
  126. package/dist/release.d.ts.map +1 -1
  127. package/dist/release.js +16 -9
  128. package/dist/release.js.map +1 -1
  129. package/dist/state.d.ts +27 -1
  130. package/dist/state.d.ts.map +1 -1
  131. package/dist/state.js +6 -0
  132. package/dist/state.js.map +1 -1
  133. package/dist/theme.d.ts +6 -19
  134. package/dist/theme.d.ts.map +1 -1
  135. package/dist/theme.js +76 -45
  136. package/dist/theme.js.map +1 -1
  137. package/dist/themes/aura.json +69 -0
  138. package/dist/themes/ayu.json +80 -0
  139. package/dist/themes/catppuccin-frappe.json +233 -0
  140. package/dist/themes/catppuccin-macchiato.json +233 -0
  141. package/dist/themes/catppuccin.json +112 -0
  142. package/dist/themes/cobalt2.json +228 -0
  143. package/dist/themes/cursor.json +249 -0
  144. package/dist/themes/dracula.json +219 -0
  145. package/dist/themes/everforest.json +241 -0
  146. package/dist/themes/flexoki.json +237 -0
  147. package/dist/themes/github-light.json +56 -0
  148. package/dist/themes/github.json +241 -0
  149. package/dist/themes/gruvbox.json +95 -0
  150. package/dist/themes/kanagawa.json +77 -0
  151. package/dist/themes/lucent-orng.json +227 -0
  152. package/dist/themes/material.json +235 -0
  153. package/dist/themes/matrix.json +77 -0
  154. package/dist/themes/mercury.json +245 -0
  155. package/dist/themes/monokai.json +221 -0
  156. package/dist/themes/nightowl.json +221 -0
  157. package/dist/themes/nord.json +223 -0
  158. package/dist/themes/one-dark.json +84 -0
  159. package/dist/themes/opencode-light.json +62 -0
  160. package/dist/themes/opencode.json +245 -0
  161. package/dist/themes/orng.json +245 -0
  162. package/dist/themes/palenight.json +222 -0
  163. package/dist/themes/rosepine.json +234 -0
  164. package/dist/themes/solarized.json +223 -0
  165. package/dist/themes/synthwave84.json +226 -0
  166. package/dist/themes/termcast.json +226 -0
  167. package/dist/themes/tokyonight.json +243 -0
  168. package/dist/themes/vercel.json +255 -0
  169. package/dist/themes/vesper.json +218 -0
  170. package/dist/themes/zenburn.json +223 -0
  171. package/dist/themes.d.ts +57 -0
  172. package/dist/themes.d.ts.map +1 -0
  173. package/dist/themes.js +181 -0
  174. package/dist/themes.js.map +1 -0
  175. package/dist/utils/run-command.d.ts +2 -1
  176. package/dist/utils/run-command.d.ts.map +1 -1
  177. package/dist/utils/run-command.js +20 -10
  178. package/dist/utils/run-command.js.map +1 -1
  179. package/dist/utils.d.ts +2 -1
  180. package/dist/utils.d.ts.map +1 -1
  181. package/dist/utils.js +90 -17
  182. package/dist/utils.js.map +1 -1
  183. package/dist/watcher.d.ts +3 -0
  184. package/dist/watcher.d.ts.map +1 -0
  185. package/dist/watcher.js +16 -0
  186. package/dist/watcher.js.map +1 -0
  187. package/package.json +16 -10
  188. package/src/apis/cache.tsx +5 -44
  189. package/src/apis/hud.tsx +17 -62
  190. package/src/apis/localstorage.tsx +3 -32
  191. package/src/apis/toast.tsx +91 -275
  192. package/src/build.test.tsx +10 -0
  193. package/src/build.tsx +61 -1
  194. package/src/cli.tsx +365 -103
  195. package/src/colors.tsx +1 -0
  196. package/src/compile.tsx +21 -29
  197. package/src/compile.vitest.tsx +300 -0
  198. package/src/components/actions.tsx +64 -45
  199. package/src/components/animation-tick.tsx +85 -0
  200. package/src/components/detail.tsx +31 -35
  201. package/src/components/dropdown.tsx +32 -21
  202. package/src/components/extension-preferences.tsx +14 -10
  203. package/src/components/footer.tsx +241 -0
  204. package/src/components/form/file-autocomplete.tsx +80 -60
  205. package/src/components/form/file-picker.tsx +37 -25
  206. package/src/components/form/index.tsx +45 -41
  207. package/src/components/form/with-left-border.tsx +4 -14
  208. package/src/components/list.tsx +181 -121
  209. package/src/components/loading-bar.tsx +5 -25
  210. package/src/components/loading-text.tsx +4 -23
  211. package/src/components/theme-picker.tsx +57 -0
  212. package/src/descendants.tsx +98 -9
  213. package/src/examples/actions-dialog-layout.vitest.tsx +112 -0
  214. package/src/examples/file-autocomplete.vitest.tsx +131 -122
  215. package/src/examples/form-basic.vitest.tsx +463 -644
  216. package/src/examples/form-dropdown.vitest.tsx +553 -571
  217. package/src/examples/form-scroll.vitest.tsx +112 -102
  218. package/src/examples/form-tagpicker.vitest.tsx +364 -338
  219. package/src/examples/internal/descendants-rerender.tsx +273 -0
  220. package/src/examples/internal/descendants-rerender.vitest.tsx +194 -0
  221. package/src/examples/internal/simple-dialog.tsx +4 -4
  222. package/src/examples/internal/simple-scrollbox.tsx +2 -2
  223. package/src/examples/internal/simple-scrollbox.vitest.tsx +43 -31
  224. package/src/examples/list-detail-metadata.vitest.tsx +34 -30
  225. package/src/examples/list-dropdown-default.vitest.tsx +84 -72
  226. package/src/examples/list-empty-view.vitest.tsx +93 -0
  227. package/src/examples/list-fetch-data.vitest.tsx +36 -30
  228. package/src/examples/list-scrollbox.vitest.tsx +59 -39
  229. package/src/examples/list-with-detail.vitest.tsx +339 -314
  230. package/src/examples/list-with-dropdown.tsx +1 -0
  231. package/src/examples/list-with-dropdown.vitest.tsx +176 -150
  232. package/src/examples/list-with-sections.vitest.tsx +289 -270
  233. package/src/examples/list-with-toast.vitest.tsx +44 -44
  234. package/src/examples/miscellaneous.tsx +10 -0
  235. package/src/examples/simple-file-picker.vitest.tsx +90 -86
  236. package/src/examples/simple-grid.vitest.tsx +275 -249
  237. package/src/examples/simple-navigation.vitest.tsx +192 -168
  238. package/src/examples/store.vitest.tsx +6 -4
  239. package/src/examples/swift-extension.vitest.tsx +31 -19
  240. package/src/examples/synonyms.vitest.tsx +93 -83
  241. package/src/examples/toast-action.tsx +160 -0
  242. package/src/examples/toast-action.vitest.tsx +404 -0
  243. package/src/examples/toast-variations.tsx +58 -57
  244. package/src/examples/toast-variations.vitest.tsx +186 -166
  245. package/src/extensions/dev.tsx +74 -33
  246. package/src/extensions/dev.vitest.tsx +162 -69
  247. package/src/extensions/home.tsx +5 -6
  248. package/src/extensions/react-refresh-init.tsx +59 -0
  249. package/src/internal/date-picker-widget.tsx +1 -1
  250. package/src/internal/dialog.tsx +59 -83
  251. package/src/internal/navigation.tsx +37 -4
  252. package/src/internal/providers.tsx +27 -315
  253. package/src/internal/scrollbox.tsx +1 -0
  254. package/src/release.tsx +16 -10
  255. package/src/state.tsx +36 -3
  256. package/src/theme.tsx +82 -51
  257. package/src/themes/aura.json +69 -0
  258. package/src/themes/ayu.json +80 -0
  259. package/src/themes/catppuccin-frappe.json +233 -0
  260. package/src/themes/catppuccin-macchiato.json +233 -0
  261. package/src/themes/catppuccin.json +112 -0
  262. package/src/themes/cobalt2.json +228 -0
  263. package/src/themes/cursor.json +249 -0
  264. package/src/themes/dracula.json +219 -0
  265. package/src/themes/everforest.json +241 -0
  266. package/src/themes/flexoki.json +237 -0
  267. package/src/themes/github-light.json +56 -0
  268. package/src/themes/github.json +241 -0
  269. package/src/themes/gruvbox.json +95 -0
  270. package/src/themes/kanagawa.json +77 -0
  271. package/src/themes/lucent-orng.json +227 -0
  272. package/src/themes/material.json +235 -0
  273. package/src/themes/matrix.json +77 -0
  274. package/src/themes/mercury.json +252 -0
  275. package/src/themes/monokai.json +221 -0
  276. package/src/themes/nightowl.json +221 -0
  277. package/src/themes/nord.json +223 -0
  278. package/src/themes/one-dark.json +84 -0
  279. package/src/themes/opencode-light.json +62 -0
  280. package/src/themes/opencode.json +245 -0
  281. package/src/themes/orng.json +245 -0
  282. package/src/themes/palenight.json +222 -0
  283. package/src/themes/rosepine.json +234 -0
  284. package/src/themes/solarized.json +223 -0
  285. package/src/themes/synthwave84.json +226 -0
  286. package/src/themes/termcast.json +227 -0
  287. package/src/themes/tokyonight.json +243 -0
  288. package/src/themes/vercel.json +255 -0
  289. package/src/themes/vesper.json +218 -0
  290. package/src/themes/zenburn.json +223 -0
  291. package/src/themes.ts +291 -0
  292. package/src/utils/run-command.tsx +23 -12
  293. package/src/utils.tsx +115 -18
  294. package/src/watcher.tsx +19 -0
@@ -33,38 +33,39 @@ test('form tagpicker shows inline options', async () => {
33
33
 
34
34
 
35
35
 
36
+ ■ TagPicker Component Demo
37
+ │ Test tag picker with multiple selection support
38
+
39
+ ◇ Favorite Sport
40
+ │ Choose your favorite sport...
41
+
42
+ │ ○ Basketball
43
+ │ ○ Football
44
+ │ ○ Tennis
45
+ │ ○ Baseball
46
+ │ ○ Golf
47
+
48
+ │ Select your favorite sport from the list
49
+
50
+ ◇ Country
51
+ │ Germany
52
+
53
+ │ ● Germany
54
+ │ ○ India
55
+ │ ○ Netherlands
56
+ │ ○ Norway
57
+ │ ○ Poland
58
+
59
+
36
60
 
37
61
 
62
+ ctrl ↵ submit tab navigate ^k actions
38
63
 
39
64
 
40
65
 
41
66
 
42
67
 
43
68
 
44
- ■ TagPicker Component Demo
45
- │ Test tag picker with multiple selection support
46
-
47
- ◇ Favorite Sport
48
- │ Choose your favorite sport...
49
-
50
- │ ○ Basketball
51
- │ ○ Football
52
- │ ○ Tennis
53
- │ ○ Baseball
54
- │ ○ Golf
55
-
56
- │ Select your favorite sport from the list
57
-
58
- ◇ Country
59
- │ Germany
60
-
61
- │ ● Germany
62
- │ ○ India
63
- │ ○ Netherlands
64
- │ ○ Norway
65
- │ ○ Poland
66
-
67
-
68
69
 
69
70
 
70
71
 
@@ -76,7 +77,8 @@ test('form tagpicker shows inline options', async () => {
76
77
 
77
78
 
78
79
 
79
- ctrl ↵ submit tab navigate ^k actions"
80
+
81
+ "
80
82
  `)
81
83
 
82
84
  await session.press('space')
@@ -88,38 +90,39 @@ test('form tagpicker shows inline options', async () => {
88
90
 
89
91
 
90
92
 
93
+ ■ TagPicker Component Demo
94
+ │ Test tag picker with multiple selection support
95
+
96
+ ◇ Favorite Sport
97
+ │ Choose your favorite sport...
98
+
99
+ │ ○ Basketball
100
+ │ ○ Football
101
+ │ ○ Tennis
102
+ │ ○ Baseball
103
+ │ ○ Golf
104
+
105
+ │ Select your favorite sport from the list
106
+
107
+ ◇ Country
108
+ │ Germany
109
+
110
+ │ ● Germany
111
+ │ ○ India
112
+ │ ○ Netherlands
113
+ │ ○ Norway
114
+ │ ○ Poland
115
+
116
+
91
117
 
92
118
 
119
+ ctrl ↵ submit tab navigate ^k actions
93
120
 
94
121
 
95
122
 
96
123
 
97
124
 
98
125
 
99
- ■ TagPicker Component Demo
100
- │ Test tag picker with multiple selection support
101
-
102
- ◇ Favorite Sport
103
- │ Choose your favorite sport...
104
-
105
- │ ○ Basketball
106
- │ ○ Football
107
- │ ○ Tennis
108
- │ ○ Baseball
109
- │ ○ Golf
110
-
111
- │ Select your favorite sport from the list
112
-
113
- ◇ Country
114
- │ Germany
115
-
116
- │ ● Germany
117
- │ ○ India
118
- │ ○ Netherlands
119
- │ ○ Norway
120
- │ ○ Poland
121
-
122
-
123
126
 
124
127
 
125
128
 
@@ -131,7 +134,8 @@ test('form tagpicker shows inline options', async () => {
131
134
 
132
135
 
133
136
 
134
- ctrl ↵ submit tab navigate ^k actions"
137
+
138
+ "
135
139
  `)
136
140
 
137
141
  await session.press('down')
@@ -143,38 +147,39 @@ test('form tagpicker shows inline options', async () => {
143
147
 
144
148
 
145
149
 
150
+ ■ TagPicker Component Demo
151
+ │ Test tag picker with multiple selection support
152
+
153
+ ◇ Favorite Sport
154
+ │ Choose your favorite sport...
155
+
156
+ │ ○ Basketball
157
+ │ ○ Football
158
+ │ ○ Tennis
159
+ │ ○ Baseball
160
+ │ ○ Golf
161
+
162
+ │ Select your favorite sport from the list
163
+
164
+ ◇ Country
165
+ │ Germany
166
+
167
+ │ ● Germany
168
+ │ ○ India
169
+ │ ○ Netherlands
170
+ │ ○ Norway
171
+ │ ○ Poland
172
+
173
+
146
174
 
147
175
 
176
+ ctrl ↵ submit tab navigate ^k actions
148
177
 
149
178
 
150
179
 
151
180
 
152
181
 
153
182
 
154
- ■ TagPicker Component Demo
155
- │ Test tag picker with multiple selection support
156
-
157
- ◇ Favorite Sport
158
- │ Choose your favorite sport...
159
-
160
- │ ○ Basketball
161
- │ ○ Football
162
- │ ○ Tennis
163
- │ ○ Baseball
164
- │ ○ Golf
165
-
166
- │ Select your favorite sport from the list
167
-
168
- ◇ Country
169
- │ Germany
170
-
171
- │ ● Germany
172
- │ ○ India
173
- │ ○ Netherlands
174
- │ ○ Norway
175
- │ ○ Poland
176
-
177
-
178
183
 
179
184
 
180
185
 
@@ -186,7 +191,8 @@ test('form tagpicker shows inline options', async () => {
186
191
 
187
192
 
188
193
 
189
- ctrl ↵ submit tab navigate ^k actions"
194
+
195
+ "
190
196
  `)
191
197
 
192
198
  await session.press('down')
@@ -201,7 +207,33 @@ test('form tagpicker shows inline options', async () => {
201
207
 
202
208
 
203
209
 
210
+ ■ TagPicker Component Demo
211
+ │ Test tag picker with multiple selection support
212
+
213
+ ◇ Favorite Sport
214
+ │ Choose your favorite sport...
215
+
216
+ │ ○ Basketball
217
+ │ ○ Football
218
+ │ ○ Tennis
219
+ │ ○ Baseball
220
+ │ ○ Golf
221
+
222
+ │ Select your favorite sport from the list
223
+
224
+ ◇ Country
225
+ │ Germany
226
+
227
+ │ ● Germany
228
+ │ ○ India
229
+ │ ○ Netherlands
230
+ │ ○ Norway
231
+ │ ○ Poland
232
+
233
+
234
+
204
235
 
236
+ ctrl ↵ submit tab navigate ^k actions
205
237
 
206
238
 
207
239
 
@@ -209,30 +241,6 @@ test('form tagpicker shows inline options', async () => {
209
241
 
210
242
 
211
243
 
212
- ■ TagPicker Component Demo
213
- │ Test tag picker with multiple selection support
214
-
215
- ◇ Favorite Sport
216
- │ Choose your favorite sport...
217
-
218
- │ ○ Basketball
219
- │ ○ Football
220
- │ ○ Tennis
221
- │ ○ Baseball
222
- │ ○ Golf
223
-
224
- │ Select your favorite sport from the list
225
-
226
- ◇ Country
227
- │ Germany
228
-
229
- │ ● Germany
230
- │ ○ India
231
- │ ○ Netherlands
232
- │ ○ Norway
233
- │ ○ Poland
234
-
235
-
236
244
 
237
245
 
238
246
 
@@ -244,7 +252,7 @@ test('form tagpicker shows inline options', async () => {
244
252
 
245
253
 
246
254
 
247
- ctrl ↵ submit tab navigate ^k actions"
255
+ "
248
256
  `)
249
257
 
250
258
  await session.press('enter')
@@ -256,7 +264,33 @@ test('form tagpicker shows inline options', async () => {
256
264
 
257
265
 
258
266
 
267
+ ■ TagPicker Component Demo
268
+ │ Test tag picker with multiple selection support
269
+
270
+ ◇ Favorite Sport
271
+ │ Choose your favorite sport...
272
+
273
+ │ ○ Basketball
274
+ │ ○ Football
275
+ │ ○ Tennis
276
+ │ ○ Baseball
277
+ │ ○ Golf
278
+
279
+ │ Select your favorite sport from the list
280
+
281
+ ◇ Country
282
+ │ Germany
283
+
284
+ │ ● Germany
285
+ │ ○ India
286
+ │ ○ Netherlands
287
+ │ ○ Norway
288
+ │ ○ Poland
289
+
290
+
291
+
259
292
 
293
+ ctrl ↵ submit tab navigate ^k actions
260
294
 
261
295
 
262
296
 
@@ -264,30 +298,6 @@ test('form tagpicker shows inline options', async () => {
264
298
 
265
299
 
266
300
 
267
- ■ TagPicker Component Demo
268
- │ Test tag picker with multiple selection support
269
-
270
- ◇ Favorite Sport
271
- │ Choose your favorite sport...
272
-
273
- │ ○ Basketball
274
- │ ○ Football
275
- │ ○ Tennis
276
- │ ○ Baseball
277
- │ ○ Golf
278
-
279
- │ Select your favorite sport from the list
280
-
281
- ◇ Country
282
- │ Germany
283
-
284
- │ ● Germany
285
- │ ○ India
286
- │ ○ Netherlands
287
- │ ○ Norway
288
- │ ○ Poland
289
-
290
-
291
301
 
292
302
 
293
303
 
@@ -299,7 +309,7 @@ test('form tagpicker shows inline options', async () => {
299
309
 
300
310
 
301
311
 
302
- ctrl ↵ submit tab navigate ^k actions"
312
+ "
303
313
  `)
304
314
  }, 15000)
305
315
 
@@ -319,7 +329,33 @@ test('form tagpicker keyboard navigation', async () => {
319
329
 
320
330
 
321
331
 
332
+ ■ TagPicker Component Demo
333
+ │ Test tag picker with multiple selection support
334
+
335
+ ◇ Favorite Sport
336
+ │ Choose your favorite sport...
337
+
338
+ │ ○ Basketball
339
+ │ ○ Football
340
+ │ ○ Tennis
341
+ │ ○ Baseball
342
+ │ ○ Golf
343
+
344
+ │ Select your favorite sport from the list
345
+
346
+ ◇ Country
347
+ │ Germany
348
+
349
+ │ ● Germany
350
+ │ ○ India
351
+ │ ○ Netherlands
352
+ │ ○ Norway
353
+ │ ○ Poland
354
+
355
+
356
+
322
357
 
358
+ ctrl ↵ submit tab navigate ^k actions
323
359
 
324
360
 
325
361
 
@@ -327,30 +363,6 @@ test('form tagpicker keyboard navigation', async () => {
327
363
 
328
364
 
329
365
 
330
- ■ TagPicker Component Demo
331
- │ Test tag picker with multiple selection support
332
-
333
- ◇ Favorite Sport
334
- │ Choose your favorite sport...
335
-
336
- │ ○ Basketball
337
- │ ○ Football
338
- │ ○ Tennis
339
- │ ○ Baseball
340
- │ ○ Golf
341
-
342
- │ Select your favorite sport from the list
343
-
344
- ◇ Country
345
- │ Germany
346
-
347
- │ ● Germany
348
- │ ○ India
349
- │ ○ Netherlands
350
- │ ○ Norway
351
- │ ○ Poland
352
-
353
-
354
366
 
355
367
 
356
368
 
@@ -362,7 +374,7 @@ test('form tagpicker keyboard navigation', async () => {
362
374
 
363
375
 
364
376
 
365
- ctrl ↵ submit tab navigate ^k actions"
377
+ "
366
378
  `)
367
379
 
368
380
  await session.press('down')
@@ -377,7 +389,33 @@ test('form tagpicker keyboard navigation', async () => {
377
389
 
378
390
 
379
391
 
392
+ ■ TagPicker Component Demo
393
+ │ Test tag picker with multiple selection support
394
+
395
+ ◇ Favorite Sport
396
+ │ Choose your favorite sport...
397
+
398
+ │ ○ Basketball
399
+ │ ○ Football
400
+ │ ○ Tennis
401
+ │ ○ Baseball
402
+ │ ○ Golf
403
+
404
+ │ Select your favorite sport from the list
405
+
406
+ ◇ Country
407
+ │ Germany
408
+
409
+ │ ● Germany
410
+ │ ○ India
411
+ │ ○ Netherlands
412
+ │ ○ Norway
413
+ │ ○ Poland
414
+
415
+
416
+
380
417
 
418
+ ctrl ↵ submit tab navigate ^k actions
381
419
 
382
420
 
383
421
 
@@ -385,30 +423,6 @@ test('form tagpicker keyboard navigation', async () => {
385
423
 
386
424
 
387
425
 
388
- ■ TagPicker Component Demo
389
- │ Test tag picker with multiple selection support
390
-
391
- ◇ Favorite Sport
392
- │ Choose your favorite sport...
393
-
394
- │ ○ Basketball
395
- │ ○ Football
396
- │ ○ Tennis
397
- │ ○ Baseball
398
- │ ○ Golf
399
-
400
- │ Select your favorite sport from the list
401
-
402
- ◇ Country
403
- │ Germany
404
-
405
- │ ● Germany
406
- │ ○ India
407
- │ ○ Netherlands
408
- │ ○ Norway
409
- │ ○ Poland
410
-
411
-
412
426
 
413
427
 
414
428
 
@@ -420,7 +434,7 @@ test('form tagpicker keyboard navigation', async () => {
420
434
 
421
435
 
422
436
 
423
- ctrl ↵ submit tab navigate ^k actions"
437
+ "
424
438
  `)
425
439
 
426
440
  await session.press('down')
@@ -432,38 +446,39 @@ test('form tagpicker keyboard navigation', async () => {
432
446
 
433
447
 
434
448
 
449
+ ■ TagPicker Component Demo
450
+ │ Test tag picker with multiple selection support
451
+
452
+ ◇ Favorite Sport
453
+ │ Choose your favorite sport...
454
+
455
+ │ ○ Basketball
456
+ │ ○ Football
457
+ │ ○ Tennis
458
+ │ ○ Baseball
459
+ │ ○ Golf
460
+
461
+ │ Select your favorite sport from the list
462
+
463
+ ◇ Country
464
+ │ Germany
465
+
466
+ │ ● Germany
467
+ │ ○ India
468
+ │ ○ Netherlands
469
+ │ ○ Norway
470
+ │ ○ Poland
471
+
472
+
435
473
 
436
474
 
475
+ ctrl ↵ submit tab navigate ^k actions
437
476
 
438
477
 
439
478
 
440
479
 
441
480
 
442
481
 
443
- ■ TagPicker Component Demo
444
- │ Test tag picker with multiple selection support
445
-
446
- ◇ Favorite Sport
447
- │ Choose your favorite sport...
448
-
449
- │ ○ Basketball
450
- │ ○ Football
451
- │ ○ Tennis
452
- │ ○ Baseball
453
- │ ○ Golf
454
-
455
- │ Select your favorite sport from the list
456
-
457
- ◇ Country
458
- │ Germany
459
-
460
- │ ● Germany
461
- │ ○ India
462
- │ ○ Netherlands
463
- │ ○ Norway
464
- │ ○ Poland
465
-
466
-
467
482
 
468
483
 
469
484
 
@@ -475,7 +490,8 @@ test('form tagpicker keyboard navigation', async () => {
475
490
 
476
491
 
477
492
 
478
- ctrl ↵ submit tab navigate ^k actions"
493
+
494
+ "
479
495
  `)
480
496
 
481
497
  await session.press('up')
@@ -487,38 +503,39 @@ test('form tagpicker keyboard navigation', async () => {
487
503
 
488
504
 
489
505
 
506
+ ■ TagPicker Component Demo
507
+ │ Test tag picker with multiple selection support
508
+
509
+ ◇ Favorite Sport
510
+ │ Choose your favorite sport...
511
+
512
+ │ ○ Basketball
513
+ │ ○ Football
514
+ │ ○ Tennis
515
+ │ ○ Baseball
516
+ │ ○ Golf
517
+
518
+ │ Select your favorite sport from the list
519
+
520
+ ◇ Country
521
+ │ Germany
522
+
523
+ │ ● Germany
524
+ │ ○ India
525
+ │ ○ Netherlands
526
+ │ ○ Norway
527
+ │ ○ Poland
528
+
529
+
490
530
 
491
531
 
532
+ ctrl ↵ submit tab navigate ^k actions
492
533
 
493
534
 
494
535
 
495
536
 
496
537
 
497
538
 
498
- ■ TagPicker Component Demo
499
- │ Test tag picker with multiple selection support
500
-
501
- ◇ Favorite Sport
502
- │ Choose your favorite sport...
503
-
504
- │ ○ Basketball
505
- │ ○ Football
506
- │ ○ Tennis
507
- │ ○ Baseball
508
- │ ○ Golf
509
-
510
- │ Select your favorite sport from the list
511
-
512
- ◇ Country
513
- │ Germany
514
-
515
- │ ● Germany
516
- │ ○ India
517
- │ ○ Netherlands
518
- │ ○ Norway
519
- │ ○ Poland
520
-
521
-
522
539
 
523
540
 
524
541
 
@@ -530,19 +547,46 @@ test('form tagpicker keyboard navigation', async () => {
530
547
 
531
548
 
532
549
 
533
- ctrl ↵ submit tab navigate ^k actions"
534
- `)
535
550
 
536
- await session.press('esc')
551
+ "
552
+ `)
537
553
 
538
- const afterEscapeSnapshot = await session.text()
539
- expect(afterEscapeSnapshot).toMatchInlineSnapshot(`
554
+ // Note: not pressing escape here since that would exit the app at root level
555
+ // The inline tagpicker doesn't need escape to close - it stays visible
556
+ const afterNavigationSnapshot = await session.text()
557
+ expect(afterNavigationSnapshot).toMatchInlineSnapshot(`
540
558
  "
541
559
 
542
560
 
543
561
 
544
562
 
563
+ ■ TagPicker Component Demo
564
+ │ Test tag picker with multiple selection support
565
+
566
+ ◇ Favorite Sport
567
+ │ Choose your favorite sport...
568
+
569
+ │ ○ Basketball
570
+ │ ○ Football
571
+ │ ○ Tennis
572
+ │ ○ Baseball
573
+ │ ○ Golf
574
+
575
+ │ Select your favorite sport from the list
576
+
577
+ ◇ Country
578
+ │ Germany
579
+
580
+ │ ● Germany
581
+ │ ○ India
582
+ │ ○ Netherlands
583
+ │ ○ Norway
584
+ │ ○ Poland
585
+
586
+
587
+
545
588
 
589
+ ctrl ↵ submit tab navigate ^k actions
546
590
 
547
591
 
548
592
 
@@ -550,30 +594,6 @@ test('form tagpicker keyboard navigation', async () => {
550
594
 
551
595
 
552
596
 
553
- ■ TagPicker Component Demo
554
- │ Test tag picker with multiple selection support
555
-
556
- ◇ Favorite Sport
557
- │ Choose your favorite sport...
558
-
559
- │ ○ Basketball
560
- │ ○ Football
561
- │ ○ Tennis
562
- │ ○ Baseball
563
- │ ○ Golf
564
-
565
- │ Select your favorite sport from the list
566
-
567
- ◇ Country
568
- │ Germany
569
-
570
- │ ● Germany
571
- │ ○ India
572
- │ ○ Netherlands
573
- │ ○ Norway
574
- │ ○ Poland
575
-
576
-
577
597
 
578
598
 
579
599
 
@@ -585,7 +605,7 @@ test('form tagpicker keyboard navigation', async () => {
585
605
 
586
606
 
587
607
 
588
- ctrl ↵ submit tab navigate ^k actions"
608
+ "
589
609
  `)
590
610
  }, 15000)
591
611
 
@@ -605,38 +625,39 @@ test('form tagpicker with default value', async () => {
605
625
 
606
626
 
607
627
 
628
+ ▪ TagPicker Component Demo
629
+ │ Test tag picker with multiple selection support
630
+
631
+ ◆ Favorite Sport
632
+ │ Choose your favorite sport...
633
+
634
+ │› ○ Basketball
635
+ │ ○ Football
636
+ │ ○ Tennis
637
+ │ ○ Baseball
638
+ │ ○ Golf
639
+
640
+ │ Select your favorite sport from the list
641
+
642
+ ◇ Country
643
+ │ Germany
644
+
645
+ │ ● Germany
646
+ │ ○ India
647
+ │ ○ Netherlands
648
+ │ ○ Norway
649
+ │ ○ Poland
650
+
651
+
608
652
 
609
653
 
654
+ ctrl ↵ submit tab navigate ^k actions
610
655
 
611
656
 
612
657
 
613
658
 
614
659
 
615
660
 
616
- ▪ TagPicker Component Demo
617
- │ Test tag picker with multiple selection support
618
-
619
- ◆ Favorite Sport
620
- │ Choose your favorite sport...
621
-
622
- │› ○ Basketball
623
- │ ○ Football
624
- │ ○ Tennis
625
- │ ○ Baseball
626
- │ ○ Golf
627
-
628
- │ Select your favorite sport from the list
629
-
630
- ◇ Country
631
- │ Germany
632
-
633
- │ ● Germany
634
- │ ○ India
635
- │ ○ Netherlands
636
- │ ○ Norway
637
- │ ○ Poland
638
-
639
-
640
661
 
641
662
 
642
663
 
@@ -648,7 +669,8 @@ test('form tagpicker with default value', async () => {
648
669
 
649
670
 
650
671
 
651
- ctrl ↵ submit tab navigate ^k actions"
672
+
673
+ "
652
674
  `)
653
675
 
654
676
  await session.press('space')
@@ -660,7 +682,33 @@ test('form tagpicker with default value', async () => {
660
682
 
661
683
 
662
684
 
685
+ ▪ TagPicker Component Demo
686
+ │ Test tag picker with multiple selection support
687
+
688
+ ◆ Favorite Sport
689
+ │ Basketball
690
+
691
+ │› ● Basketball
692
+ │ ○ Football
693
+ │ ○ Tennis
694
+ │ ○ Baseball
695
+ │ ○ Golf
696
+
697
+ │ Select your favorite sport from the list
698
+
699
+ ◇ Country
700
+ │ Germany
701
+
702
+ │ ● Germany
703
+ │ ○ India
704
+ │ ○ Netherlands
705
+ │ ○ Norway
706
+ │ ○ Poland
707
+
708
+
709
+
663
710
 
711
+ ctrl ↵ submit tab navigate ^k actions
664
712
 
665
713
 
666
714
 
@@ -668,30 +716,6 @@ test('form tagpicker with default value', async () => {
668
716
 
669
717
 
670
718
 
671
- ▪ TagPicker Component Demo
672
- │ Test tag picker with multiple selection support
673
-
674
- ◆ Favorite Sport
675
- │ Basketball
676
-
677
- │› ● Basketball
678
- │ ○ Football
679
- │ ○ Tennis
680
- │ ○ Baseball
681
- │ ○ Golf
682
-
683
- │ Select your favorite sport from the list
684
-
685
- ◇ Country
686
- │ Germany
687
-
688
- │ ● Germany
689
- │ ○ India
690
- │ ○ Netherlands
691
- │ ○ Norway
692
- │ ○ Poland
693
-
694
-
695
719
 
696
720
 
697
721
 
@@ -703,10 +727,10 @@ test('form tagpicker with default value', async () => {
703
727
 
704
728
 
705
729
 
706
- ctrl ↵ submit tab navigate ^k actions"
730
+ "
707
731
  `)
708
732
 
709
- await session.press('esc')
733
+ // Submit with alt+enter directly - no need to press esc first
710
734
  await session.press(['alt', 'enter'])
711
735
 
712
736
  const afterSubmitSnapshot = await session.text({
@@ -720,42 +744,44 @@ test('form tagpicker with default value', async () => {
720
744
 
721
745
 
722
746
 
747
+ ▪ TagPicker Component Demo
748
+ │ Test tag picker with multiple selection support
749
+
750
+ ◆ Favorite Sport
751
+ │ Choose your favorite sport...
752
+
753
+ │› ○ Basketball
754
+ │ ○ Football
755
+ │ ○ Tennis
756
+ │ ○ Baseball
757
+ │ ○ Golf
758
+
759
+ │ Select your favorite sport from the list
760
+
761
+ ◇ Country
762
+ │ Germany
763
+
764
+ │ ● Germany
765
+ │ ○ India
766
+ │ ○ Netherlands
767
+ │ ○ Norway
768
+ │ ○ Poland
769
+
770
+ ▪ Submitted Data
771
+ │ {
772
+ │ "sports": [],
773
+ │ "countries": [
774
+ │ "ger"
775
+ │ ]
776
+ │ }
777
+
778
+
779
+
723
780
 
781
+ ctrl ↵ submit tab navigate ^k actions
724
782
 
725
783
 
726
784
 
727
- ▪ TagPicker Component Demo
728
- │ Test tag picker with multiple selection support
729
-
730
- ◆ Favorite Sport
731
- │ Choose your favorite sport...
732
-
733
- │› ○ Basketball
734
- │ ○ Football
735
- │ ○ Tennis
736
- │ ○ Baseball
737
- │ ○ Golf
738
-
739
- │ Select your favorite sport from the list
740
-
741
- ◇ Country
742
- │ Germany
743
-
744
- │ ● Germany
745
- │ ○ India
746
- │ ○ Netherlands
747
- │ ○ Norway
748
- │ ○ Poland
749
-
750
- ▪ Submitted Data
751
- │ {
752
- │ "sports": [],
753
- │ "countries": [
754
- │ "ger"
755
- │ ]
756
- │ }
757
-
758
-
759
785
 
760
786
 
761
787
 
@@ -763,6 +789,6 @@ test('form tagpicker with default value', async () => {
763
789
 
764
790
 
765
791
 
766
- ctrl ↵ submit tab navigate ^k actions"
792
+ "
767
793
  `)
768
794
  }, 15000)