termcast 1.3.9 → 1.3.16

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 (559) hide show
  1. package/dist/action-utils.js +1 -1
  2. package/dist/action-utils.js.map +1 -1
  3. package/dist/apis/ai.js +1 -1
  4. package/dist/apis/ai.js.map +1 -1
  5. package/dist/apis/clipboard.js +2 -2
  6. package/dist/apis/clipboard.js.map +1 -1
  7. package/dist/apis/hud.d.ts +2 -2
  8. package/dist/apis/hud.d.ts.map +1 -1
  9. package/dist/apis/hud.js +5 -5
  10. package/dist/apis/hud.js.map +1 -1
  11. package/dist/apis/oauth.d.ts +1 -1
  12. package/dist/apis/oauth.d.ts.map +1 -1
  13. package/dist/apis/oauth.js +8 -8
  14. package/dist/apis/oauth.js.map +1 -1
  15. package/dist/apis/preferences.js +4 -4
  16. package/dist/apis/preferences.js.map +1 -1
  17. package/dist/apis/toast.d.ts +1 -5
  18. package/dist/apis/toast.d.ts.map +1 -1
  19. package/dist/apis/toast.js +26 -20
  20. package/dist/apis/toast.js.map +1 -1
  21. package/dist/build.d.ts +2 -0
  22. package/dist/build.d.ts.map +1 -1
  23. package/dist/build.js +9 -8
  24. package/dist/build.js.map +1 -1
  25. package/dist/cli.js +44 -2
  26. package/dist/cli.js.map +1 -1
  27. package/dist/colors.d.ts +8 -1
  28. package/dist/colors.d.ts.map +1 -1
  29. package/dist/colors.js +12 -0
  30. package/dist/colors.js.map +1 -1
  31. package/dist/compile.d.ts +30 -0
  32. package/dist/compile.d.ts.map +1 -0
  33. package/dist/compile.js +156 -0
  34. package/dist/compile.js.map +1 -0
  35. package/dist/components/actions.d.ts +2 -1
  36. package/dist/components/actions.d.ts.map +1 -1
  37. package/dist/components/actions.js +11 -8
  38. package/dist/components/actions.js.map +1 -1
  39. package/dist/components/alert.js +4 -4
  40. package/dist/components/alert.js.map +1 -1
  41. package/dist/components/command-arguments.d.ts +9 -0
  42. package/dist/components/command-arguments.d.ts.map +1 -0
  43. package/dist/components/command-arguments.js +21 -0
  44. package/dist/components/command-arguments.js.map +1 -0
  45. package/dist/components/detail.d.ts +3 -3
  46. package/dist/components/detail.d.ts.map +1 -1
  47. package/dist/components/detail.js +20 -42
  48. package/dist/components/detail.js.map +1 -1
  49. package/dist/components/dropdown.d.ts +2 -1
  50. package/dist/components/dropdown.d.ts.map +1 -1
  51. package/dist/components/dropdown.js +81 -25
  52. package/dist/components/dropdown.js.map +1 -1
  53. package/dist/components/extension-preferences.d.ts.map +1 -1
  54. package/dist/components/extension-preferences.js +23 -33
  55. package/dist/components/extension-preferences.js.map +1 -1
  56. package/dist/components/form/checkbox.d.ts.map +1 -1
  57. package/dist/components/form/checkbox.js +11 -4
  58. package/dist/components/form/checkbox.js.map +1 -1
  59. package/dist/components/form/date-picker.d.ts.map +1 -1
  60. package/dist/components/form/date-picker.js +18 -31
  61. package/dist/components/form/date-picker.js.map +1 -1
  62. package/dist/components/form/description.d.ts +2 -0
  63. package/dist/components/form/description.d.ts.map +1 -1
  64. package/dist/components/form/description.js +21 -3
  65. package/dist/components/form/description.js.map +1 -1
  66. package/dist/components/form/dropdown.d.ts.map +1 -1
  67. package/dist/components/form/dropdown.js +17 -32
  68. package/dist/components/form/dropdown.js.map +1 -1
  69. package/dist/components/form/file-autocomplete.d.ts +7 -4
  70. package/dist/components/form/file-autocomplete.d.ts.map +1 -1
  71. package/dist/components/form/file-autocomplete.js +56 -48
  72. package/dist/components/form/file-autocomplete.js.map +1 -1
  73. package/dist/components/form/file-picker.d.ts +5 -0
  74. package/dist/components/form/file-picker.d.ts.map +1 -1
  75. package/dist/components/form/file-picker.js +48 -51
  76. package/dist/components/form/file-picker.js.map +1 -1
  77. package/dist/components/form/form-end.js +1 -1
  78. package/dist/components/form/form-end.js.map +1 -1
  79. package/dist/components/form/form-ref.d.ts +43 -0
  80. package/dist/components/form/form-ref.d.ts.map +1 -0
  81. package/dist/components/form/form-ref.js +53 -0
  82. package/dist/components/form/form-ref.js.map +1 -0
  83. package/dist/components/form/index.d.ts +16 -0
  84. package/dist/components/form/index.d.ts.map +1 -1
  85. package/dist/components/form/index.js +90 -27
  86. package/dist/components/form/index.js.map +1 -1
  87. package/dist/components/form/password-field.d.ts.map +1 -1
  88. package/dist/components/form/password-field.js +33 -17
  89. package/dist/components/form/password-field.js.map +1 -1
  90. package/dist/components/form/separator.js +1 -1
  91. package/dist/components/form/separator.js.map +1 -1
  92. package/dist/components/form/tagpicker.d.ts +1 -1
  93. package/dist/components/form/tagpicker.d.ts.map +1 -1
  94. package/dist/components/form/text-area.d.ts.map +1 -1
  95. package/dist/components/form/text-area.js +33 -16
  96. package/dist/components/form/text-area.js.map +1 -1
  97. package/dist/components/form/text-field.d.ts.map +1 -1
  98. package/dist/components/form/text-field.js +38 -18
  99. package/dist/components/form/text-field.js.map +1 -1
  100. package/dist/components/form/use-form-navigation.d.ts +4 -0
  101. package/dist/components/form/use-form-navigation.d.ts.map +1 -1
  102. package/dist/components/form/use-form-navigation.js +35 -18
  103. package/dist/components/form/use-form-navigation.js.map +1 -1
  104. package/dist/components/form/with-left-border.d.ts.map +1 -1
  105. package/dist/components/form/with-left-border.js +3 -3
  106. package/dist/components/form/with-left-border.js.map +1 -1
  107. package/dist/components/icon.d.ts +3 -1
  108. package/dist/components/icon.d.ts.map +1 -1
  109. package/dist/components/icon.js +494 -469
  110. package/dist/components/icon.js.map +1 -1
  111. package/dist/components/image.js +1 -1
  112. package/dist/components/image.js.map +1 -1
  113. package/dist/components/list.d.ts +12 -8
  114. package/dist/components/list.d.ts.map +1 -1
  115. package/dist/components/list.js +172 -40
  116. package/dist/components/list.js.map +1 -1
  117. package/dist/components/loading-bar.js +2 -2
  118. package/dist/components/loading-bar.js.map +1 -1
  119. package/dist/components/menubar-extra.d.ts +1 -1
  120. package/dist/components/menubar-extra.d.ts.map +1 -1
  121. package/dist/components/menubar-extra.js +2 -2
  122. package/dist/components/menubar-extra.js.map +1 -1
  123. package/dist/descendants.d.ts.map +1 -1
  124. package/dist/descendants.js +8 -5
  125. package/dist/descendants.js.map +1 -1
  126. package/dist/e2e-node.d.ts +2 -0
  127. package/dist/e2e-node.d.ts.map +1 -1
  128. package/dist/e2e-node.js +14 -0
  129. package/dist/e2e-node.js.map +1 -1
  130. package/dist/examples/action-show-in-finder.js +3 -3
  131. package/dist/examples/action-show-in-finder.js.map +1 -1
  132. package/dist/examples/environment-test.js +4 -4
  133. package/dist/examples/environment-test.js.map +1 -1
  134. package/dist/examples/error-boundary.js +5 -5
  135. package/dist/examples/error-boundary.js.map +1 -1
  136. package/dist/examples/form-basic.d.ts.map +1 -1
  137. package/dist/examples/form-basic.js +6 -6
  138. package/dist/examples/form-basic.js.map +1 -1
  139. package/dist/examples/form-dropdown.js +3 -3
  140. package/dist/examples/form-dropdown.js.map +1 -1
  141. package/dist/examples/form-scroll.d.ts +2 -0
  142. package/dist/examples/form-scroll.d.ts.map +1 -0
  143. package/dist/examples/form-scroll.js +8 -0
  144. package/dist/examples/form-scroll.js.map +1 -0
  145. package/dist/examples/form-tagpicker.js +3 -3
  146. package/dist/examples/form-tagpicker.js.map +1 -1
  147. package/dist/examples/internal/descendants-filtering.js +10 -5
  148. package/dist/examples/internal/descendants-filtering.js.map +1 -1
  149. package/dist/examples/internal/descendants.js +13 -6
  150. package/dist/examples/internal/descendants.js.map +1 -1
  151. package/dist/examples/internal/rhf-custom-ref.d.ts +2 -0
  152. package/dist/examples/internal/rhf-custom-ref.d.ts.map +1 -0
  153. package/dist/examples/internal/rhf-custom-ref.js +67 -0
  154. package/dist/examples/internal/rhf-custom-ref.js.map +1 -0
  155. package/dist/examples/internal/scrollbox-demo.js +4 -8
  156. package/dist/examples/internal/scrollbox-demo.js.map +1 -1
  157. package/dist/examples/internal/scrollbox-with-descendants.d.ts +2 -0
  158. package/dist/examples/internal/scrollbox-with-descendants.d.ts.map +1 -0
  159. package/dist/examples/internal/scrollbox-with-descendants.js +63 -0
  160. package/dist/examples/internal/scrollbox-with-descendants.js.map +1 -0
  161. package/dist/examples/internal/simple-dialog.js +7 -7
  162. package/dist/examples/internal/simple-dialog.js.map +1 -1
  163. package/dist/examples/internal/simple-scrollbox.d.ts +2 -0
  164. package/dist/examples/internal/simple-scrollbox.d.ts.map +1 -0
  165. package/dist/examples/internal/simple-scrollbox.js +25 -0
  166. package/dist/examples/internal/simple-scrollbox.js.map +1 -0
  167. package/dist/examples/internal/text-stacking.js +4 -2
  168. package/dist/examples/internal/text-stacking.js.map +1 -1
  169. package/dist/examples/list-dropdown-default.js +3 -3
  170. package/dist/examples/list-dropdown-default.js.map +1 -1
  171. package/dist/examples/list-fetch-data.js +3 -3
  172. package/dist/examples/list-fetch-data.js.map +1 -1
  173. package/dist/examples/list-scrollbox.d.ts +2 -0
  174. package/dist/examples/list-scrollbox.d.ts.map +1 -0
  175. package/dist/examples/list-scrollbox.js +29 -0
  176. package/dist/examples/list-scrollbox.js.map +1 -0
  177. package/dist/examples/list-with-detail.js +2 -2
  178. package/dist/examples/list-with-detail.js.map +1 -1
  179. package/dist/examples/list-with-dropdown.js +2 -2
  180. package/dist/examples/list-with-dropdown.js.map +1 -1
  181. package/dist/examples/list-with-sections.js +6 -6
  182. package/dist/examples/list-with-sections.js.map +1 -1
  183. package/dist/examples/miscellaneous.js +14 -14
  184. package/dist/examples/miscellaneous.js.map +1 -1
  185. package/dist/examples/nested-navigation.js +9 -7
  186. package/dist/examples/nested-navigation.js.map +1 -1
  187. package/dist/examples/preferences-test.js +4 -4
  188. package/dist/examples/preferences-test.js.map +1 -1
  189. package/dist/examples/simple-dropdown.js +4 -4
  190. package/dist/examples/simple-dropdown.js.map +1 -1
  191. package/dist/examples/simple-file-picker.js +3 -3
  192. package/dist/examples/simple-file-picker.js.map +1 -1
  193. package/dist/examples/simple-grid.js +2 -2
  194. package/dist/examples/simple-grid.js.map +1 -1
  195. package/dist/examples/simple-hud.js +4 -4
  196. package/dist/examples/simple-hud.js.map +1 -1
  197. package/dist/examples/simple-list-search.js +21 -5
  198. package/dist/examples/simple-list-search.js.map +1 -1
  199. package/dist/examples/simple-list.js +4 -4
  200. package/dist/examples/simple-list.js.map +1 -1
  201. package/dist/examples/simple-navigation.js +9 -7
  202. package/dist/examples/simple-navigation.js.map +1 -1
  203. package/dist/examples/store.js +1 -1
  204. package/dist/examples/store.js.map +1 -1
  205. package/dist/examples/submodule-diff.d.ts +2 -0
  206. package/dist/examples/submodule-diff.d.ts.map +1 -0
  207. package/dist/examples/submodule-diff.js +99 -0
  208. package/dist/examples/submodule-diff.js.map +1 -0
  209. package/dist/examples/tanstack-demo.js +3 -3
  210. package/dist/examples/tanstack-demo.js.map +1 -1
  211. package/dist/examples/use-promise-demo.js +3 -3
  212. package/dist/examples/use-promise-demo.js.map +1 -1
  213. package/dist/extensions/dev.d.ts +8 -0
  214. package/dist/extensions/dev.d.ts.map +1 -1
  215. package/dist/extensions/dev.js +60 -35
  216. package/dist/extensions/dev.js.map +1 -1
  217. package/dist/extensions/home.d.ts.map +1 -1
  218. package/dist/extensions/home.js +22 -97
  219. package/dist/extensions/home.js.map +1 -1
  220. package/dist/extensions/store.js +2 -2
  221. package/dist/extensions/store.js.map +1 -1
  222. package/dist/globals.js +1 -1
  223. package/dist/globals.js.map +1 -1
  224. package/dist/hooks/index.d.ts +1 -1
  225. package/dist/hooks/index.d.ts.map +1 -1
  226. package/dist/hooks/index.js +1 -1
  227. package/dist/hooks/index.js.map +1 -1
  228. package/dist/hooks/use-action-panel.js +1 -1
  229. package/dist/hooks/use-action-panel.js.map +1 -1
  230. package/dist/hooks/use-unstable-ai.js +1 -1
  231. package/dist/hooks/use-unstable-ai.js.map +1 -1
  232. package/dist/index.d.ts +57 -55
  233. package/dist/index.d.ts.map +1 -1
  234. package/dist/index.js +42 -38
  235. package/dist/index.js.map +1 -1
  236. package/dist/internal/date-picker-widget.d.ts.map +1 -1
  237. package/dist/internal/date-picker-widget.js +56 -48
  238. package/dist/internal/date-picker-widget.js.map +1 -1
  239. package/dist/internal/dialog.d.ts +3 -3
  240. package/dist/internal/dialog.d.ts.map +1 -1
  241. package/dist/internal/dialog.js +10 -10
  242. package/dist/internal/dialog.js.map +1 -1
  243. package/dist/internal/error-handler.js +2 -2
  244. package/dist/internal/error-handler.js.map +1 -1
  245. package/dist/internal/focus-context.d.ts +1 -1
  246. package/dist/internal/focus-context.d.ts.map +1 -1
  247. package/dist/internal/navigation.d.ts +1 -1
  248. package/dist/internal/navigation.d.ts.map +1 -1
  249. package/dist/internal/navigation.js +2 -2
  250. package/dist/internal/navigation.js.map +1 -1
  251. package/dist/internal/providers.d.ts +2 -2
  252. package/dist/internal/providers.d.ts.map +1 -1
  253. package/dist/internal/providers.js +9 -9
  254. package/dist/internal/providers.js.map +1 -1
  255. package/dist/internal/scrollbox.d.ts +12 -0
  256. package/dist/internal/scrollbox.d.ts.map +1 -0
  257. package/dist/internal/scrollbox.js +34 -0
  258. package/dist/internal/scrollbox.js.map +1 -0
  259. package/dist/preload.js +1 -1
  260. package/dist/preload.js.map +1 -1
  261. package/dist/release.d.ts +11 -0
  262. package/dist/release.d.ts.map +1 -0
  263. package/dist/release.js +113 -0
  264. package/dist/release.js.map +1 -0
  265. package/dist/state.d.ts +1 -0
  266. package/dist/state.d.ts.map +1 -1
  267. package/dist/state.js +1 -0
  268. package/dist/state.js.map +1 -1
  269. package/dist/theme.d.ts +11 -8
  270. package/dist/theme.d.ts.map +1 -1
  271. package/dist/theme.js +31 -8
  272. package/dist/theme.js.map +1 -1
  273. package/dist/utils/run-command.d.ts +22 -0
  274. package/dist/utils/run-command.d.ts.map +1 -0
  275. package/dist/utils/run-command.js +127 -0
  276. package/dist/utils/run-command.js.map +1 -0
  277. package/dist/utils.d.ts +1 -1
  278. package/dist/utils.d.ts.map +1 -1
  279. package/dist/utils.js +6 -4
  280. package/dist/utils.js.map +1 -1
  281. package/package.json +13 -8
  282. package/src/apis/toast.tsx +38 -17
  283. package/src/build.tsx +5 -3
  284. package/src/cli.tsx +46 -0
  285. package/src/colors.tsx +22 -1
  286. package/src/compile.tsx +219 -0
  287. package/src/components/actions.tsx +7 -1
  288. package/src/components/command-arguments.tsx +81 -0
  289. package/src/components/detail.tsx +26 -58
  290. package/src/components/dropdown.tsx +108 -23
  291. package/src/components/extension-preferences.tsx +55 -35
  292. package/src/components/form/checkbox.tsx +13 -5
  293. package/src/components/form/date-picker.tsx +24 -29
  294. package/src/components/form/description.tsx +35 -7
  295. package/src/components/form/dropdown.tsx +16 -30
  296. package/src/components/form/file-autocomplete.tsx +87 -77
  297. package/src/components/form/file-picker.tsx +69 -57
  298. package/src/components/form/form-ref.tsx +68 -0
  299. package/src/components/form/index.tsx +152 -41
  300. package/src/components/form/password-field.tsx +35 -22
  301. package/src/components/form/text-area.tsx +78 -58
  302. package/src/components/form/text-field.tsx +82 -61
  303. package/src/components/form/use-form-navigation.tsx +43 -23
  304. package/src/components/form/with-left-border.tsx +2 -1
  305. package/src/components/icon.tsx +497 -469
  306. package/src/components/list.tsx +279 -112
  307. package/src/components/loading-bar.tsx +1 -1
  308. package/src/descendants.tsx +15 -5
  309. package/src/e2e-node.tsx +16 -0
  310. package/src/examples/action-show-in-finder.tsx +1 -1
  311. package/src/examples/environment-test.tsx +1 -1
  312. package/src/examples/error-boundary.tsx +1 -1
  313. package/src/examples/file-autocomplete.vitest.tsx +245 -0
  314. package/src/examples/form-basic.tsx +12 -12
  315. package/src/examples/form-basic.vitest.tsx +297 -671
  316. package/src/examples/form-dropdown.tsx +1 -1
  317. package/src/examples/form-dropdown.vitest.tsx +353 -221
  318. package/src/examples/form-scroll.tsx +56 -0
  319. package/src/examples/form-scroll.vitest.tsx +228 -0
  320. package/src/examples/form-tagpicker.tsx +1 -1
  321. package/src/examples/form-tagpicker.vitest.tsx +438 -193
  322. package/src/examples/internal/descendants-filtering.tsx +13 -5
  323. package/src/examples/internal/descendants.tsx +17 -5
  324. package/src/examples/internal/rhf-custom-ref.tsx +152 -0
  325. package/src/examples/internal/scrollbox-demo.tsx +15 -7
  326. package/src/examples/internal/scrollbox-with-descendants.tsx +94 -0
  327. package/src/examples/internal/simple-dialog.tsx +1 -1
  328. package/src/examples/internal/simple-scrollbox.tsx +58 -0
  329. package/src/examples/internal/simple-scrollbox.vitest.tsx +104 -0
  330. package/src/examples/internal/text-stacking.tsx +4 -2
  331. package/src/examples/list-dropdown-default.tsx +1 -1
  332. package/src/examples/list-dropdown-default.vitest.tsx +136 -71
  333. package/src/examples/list-fetch-data.tsx +1 -1
  334. package/src/examples/list-fetch-data.vitest.tsx +42 -33
  335. package/src/examples/list-scrollbox.tsx +46 -0
  336. package/src/examples/list-scrollbox.vitest.tsx +103 -0
  337. package/src/examples/list-with-detail.tsx +1 -1
  338. package/src/examples/list-with-detail.vitest.tsx +290 -294
  339. package/src/examples/list-with-dropdown.tsx +1 -1
  340. package/src/examples/list-with-dropdown.vitest.tsx +190 -150
  341. package/src/examples/list-with-sections.tsx +12 -1
  342. package/src/examples/list-with-sections.vitest.tsx +390 -218
  343. package/src/examples/miscellaneous.tsx +1 -1
  344. package/src/examples/nested-navigation.tsx +7 -5
  345. package/src/examples/preferences-test.tsx +1 -1
  346. package/src/examples/simple-dropdown.tsx +1 -1
  347. package/src/examples/simple-file-picker.tsx +1 -1
  348. package/src/examples/simple-file-picker.vitest.tsx +533 -127
  349. package/src/examples/simple-grid.tsx +1 -1
  350. package/src/examples/simple-grid.vitest.tsx +258 -234
  351. package/src/examples/simple-hud.tsx +1 -1
  352. package/src/examples/simple-list-search.tsx +42 -1
  353. package/src/examples/simple-list.tsx +1 -1
  354. package/src/examples/simple-navigation.tsx +7 -5
  355. package/src/examples/simple-navigation.vitest.tsx +434 -238
  356. package/src/examples/store.tsx +1 -1
  357. package/src/examples/store.vitest.tsx +31 -14
  358. package/src/examples/submodule-diff.tsx +153 -0
  359. package/src/examples/tanstack-demo.tsx +1 -1
  360. package/src/examples/use-promise-demo.tsx +1 -1
  361. package/src/extensions/dev.tsx +76 -38
  362. package/src/extensions/dev.vitest.tsx +220 -0
  363. package/src/extensions/home.tsx +20 -121
  364. package/src/globals.ts +1 -1
  365. package/src/index.tsx +12 -25
  366. package/src/internal/date-picker-widget.tsx +56 -46
  367. package/src/internal/dialog.tsx +6 -6
  368. package/src/internal/providers.tsx +1 -1
  369. package/src/internal/scrollbox.tsx +63 -0
  370. package/src/release.tsx +159 -0
  371. package/src/state.tsx +2 -0
  372. package/src/store-api/search.test.tsx +4 -13
  373. package/src/theme.tsx +33 -8
  374. package/src/utils/run-command.tsx +204 -0
  375. package/src/utils.tsx +6 -4
  376. package/dist/ai.d.ts +0 -104
  377. package/dist/ai.d.ts.map +0 -1
  378. package/dist/ai.js +0 -135
  379. package/dist/ai.js.map +0 -1
  380. package/dist/apis/cache.test.d.ts +0 -2
  381. package/dist/apis/cache.test.d.ts.map +0 -1
  382. package/dist/apis/cache.test.js +0 -246
  383. package/dist/apis/cache.test.js.map +0 -1
  384. package/dist/apis/localstorage.test.d.ts +0 -2
  385. package/dist/apis/localstorage.test.d.ts.map +0 -1
  386. package/dist/apis/localstorage.test.js +0 -131
  387. package/dist/apis/localstorage.test.js.map +0 -1
  388. package/dist/apis/toast.test.d.ts +0 -2
  389. package/dist/apis/toast.test.d.ts.map +0 -1
  390. package/dist/apis/toast.test.js +0 -67
  391. package/dist/apis/toast.test.js.map +0 -1
  392. package/dist/build.test.d.ts +0 -2
  393. package/dist/build.test.d.ts.map +0 -1
  394. package/dist/build.test.js +0 -73
  395. package/dist/build.test.js.map +0 -1
  396. package/dist/cache.d.ts +0 -32
  397. package/dist/cache.d.ts.map +0 -1
  398. package/dist/cache.js +0 -205
  399. package/dist/cache.js.map +0 -1
  400. package/dist/cache.test.d.ts +0 -2
  401. package/dist/cache.test.d.ts.map +0 -1
  402. package/dist/cache.test.js +0 -246
  403. package/dist/cache.test.js.map +0 -1
  404. package/dist/clipboard.d.ts +0 -36
  405. package/dist/clipboard.d.ts.map +0 -1
  406. package/dist/clipboard.js +0 -154
  407. package/dist/clipboard.js.map +0 -1
  408. package/dist/components/form/form-type-only.d.ts +0 -174
  409. package/dist/components/form/form-type-only.d.ts.map +0 -1
  410. package/dist/components/form/form-type-only.js +0 -2
  411. package/dist/components/form/form-type-only.js.map +0 -1
  412. package/dist/components/form/use-form-handling.d.ts +0 -4
  413. package/dist/components/form/use-form-handling.d.ts.map +0 -1
  414. package/dist/components/form/use-form-handling.js +0 -37
  415. package/dist/components/form/use-form-handling.js.map +0 -1
  416. package/dist/dev-ui.d.ts +0 -7
  417. package/dist/dev-ui.d.ts.map +0 -1
  418. package/dist/dev-ui.js +0 -118
  419. package/dist/dev-ui.js.map +0 -1
  420. package/dist/environment.d.ts +0 -63
  421. package/dist/environment.d.ts.map +0 -1
  422. package/dist/environment.js +0 -189
  423. package/dist/environment.js.map +0 -1
  424. package/dist/examples/datepicker.d.ts +0 -2
  425. package/dist/examples/datepicker.d.ts.map +0 -1
  426. package/dist/examples/datepicker.js +0 -344
  427. package/dist/examples/datepicker.js.map +0 -1
  428. package/dist/examples/form-basic-arrow-keys.vitest.d.ts +0 -2
  429. package/dist/examples/form-basic-arrow-keys.vitest.d.ts.map +0 -1
  430. package/dist/examples/form-basic-arrow-keys.vitest.js +0 -46
  431. package/dist/examples/form-basic-arrow-keys.vitest.js.map +0 -1
  432. package/dist/examples/form-basic.vitest.d.ts +0 -2
  433. package/dist/examples/form-basic.vitest.d.ts.map +0 -1
  434. package/dist/examples/form-basic.vitest.js +0 -995
  435. package/dist/examples/form-basic.vitest.js.map +0 -1
  436. package/dist/examples/form-dropdown-with-sections.d.ts +0 -2
  437. package/dist/examples/form-dropdown-with-sections.d.ts.map +0 -1
  438. package/dist/examples/form-dropdown-with-sections.js +0 -13
  439. package/dist/examples/form-dropdown-with-sections.js.map +0 -1
  440. package/dist/examples/form-dropdown-with-sections.vitest.d.ts +0 -2
  441. package/dist/examples/form-dropdown-with-sections.vitest.d.ts.map +0 -1
  442. package/dist/examples/form-dropdown-with-sections.vitest.js +0 -75
  443. package/dist/examples/form-dropdown-with-sections.vitest.js.map +0 -1
  444. package/dist/examples/form-dropdown.vitest.d.ts +0 -2
  445. package/dist/examples/form-dropdown.vitest.d.ts.map +0 -1
  446. package/dist/examples/form-dropdown.vitest.js +0 -722
  447. package/dist/examples/form-dropdown.vitest.js.map +0 -1
  448. package/dist/examples/form-multiselect-dropdown.d.ts +0 -2
  449. package/dist/examples/form-multiselect-dropdown.d.ts.map +0 -1
  450. package/dist/examples/form-multiselect-dropdown.js +0 -13
  451. package/dist/examples/form-multiselect-dropdown.js.map +0 -1
  452. package/dist/examples/form-tagpicker.vitest.d.ts +0 -2
  453. package/dist/examples/form-tagpicker.vitest.d.ts.map +0 -1
  454. package/dist/examples/form-tagpicker.vitest.js +0 -491
  455. package/dist/examples/form-tagpicker.vitest.js.map +0 -1
  456. package/dist/examples/internal/nested-boxes.d.ts +0 -2
  457. package/dist/examples/internal/nested-boxes.d.ts.map +0 -1
  458. package/dist/examples/internal/nested-boxes.js +0 -7
  459. package/dist/examples/internal/nested-boxes.js.map +0 -1
  460. package/dist/examples/internal/unicode-square-repro.d.ts +0 -2
  461. package/dist/examples/internal/unicode-square-repro.d.ts.map +0 -1
  462. package/dist/examples/internal/unicode-square-repro.js +0 -7
  463. package/dist/examples/internal/unicode-square-repro.js.map +0 -1
  464. package/dist/examples/list-dropdown-default.vitest.d.ts +0 -2
  465. package/dist/examples/list-dropdown-default.vitest.d.ts.map +0 -1
  466. package/dist/examples/list-dropdown-default.vitest.js +0 -164
  467. package/dist/examples/list-dropdown-default.vitest.js.map +0 -1
  468. package/dist/examples/list-fetch-data.vitest.d.ts +0 -2
  469. package/dist/examples/list-fetch-data.vitest.d.ts.map +0 -1
  470. package/dist/examples/list-fetch-data.vitest.js +0 -103
  471. package/dist/examples/list-fetch-data.vitest.js.map +0 -1
  472. package/dist/examples/list-filter-navigation.d.ts +0 -2
  473. package/dist/examples/list-filter-navigation.d.ts.map +0 -1
  474. package/dist/examples/list-filter-navigation.js +0 -8
  475. package/dist/examples/list-filter-navigation.js.map +0 -1
  476. package/dist/examples/list-with-detail.vitest.d.ts +0 -2
  477. package/dist/examples/list-with-detail.vitest.d.ts.map +0 -1
  478. package/dist/examples/list-with-detail.vitest.js +0 -438
  479. package/dist/examples/list-with-detail.vitest.js.map +0 -1
  480. package/dist/examples/list-with-dropdown.vitest.d.ts +0 -2
  481. package/dist/examples/list-with-dropdown.vitest.d.ts.map +0 -1
  482. package/dist/examples/list-with-dropdown.vitest.js +0 -297
  483. package/dist/examples/list-with-dropdown.vitest.js.map +0 -1
  484. package/dist/examples/list-with-sections.vitest.d.ts +0 -2
  485. package/dist/examples/list-with-sections.vitest.d.ts.map +0 -1
  486. package/dist/examples/list-with-sections.vitest.js +0 -441
  487. package/dist/examples/list-with-sections.vitest.js.map +0 -1
  488. package/dist/examples/simple-file-picker.vitest.d.ts +0 -2
  489. package/dist/examples/simple-file-picker.vitest.d.ts.map +0 -1
  490. package/dist/examples/simple-file-picker.vitest.js +0 -277
  491. package/dist/examples/simple-file-picker.vitest.js.map +0 -1
  492. package/dist/examples/simple-grid.vitest.d.ts +0 -2
  493. package/dist/examples/simple-grid.vitest.d.ts.map +0 -1
  494. package/dist/examples/simple-grid.vitest.js +0 -498
  495. package/dist/examples/simple-grid.vitest.js.map +0 -1
  496. package/dist/examples/simple-navigation.vitest.d.ts +0 -2
  497. package/dist/examples/simple-navigation.vitest.d.ts.map +0 -1
  498. package/dist/examples/simple-navigation.vitest.js +0 -522
  499. package/dist/examples/simple-navigation.vitest.js.map +0 -1
  500. package/dist/examples/store.vitest.d.ts +0 -2
  501. package/dist/examples/store.vitest.d.ts.map +0 -1
  502. package/dist/examples/store.vitest.js +0 -52
  503. package/dist/examples/store.vitest.js.map +0 -1
  504. package/dist/home-command.d.ts +0 -8
  505. package/dist/home-command.d.ts.map +0 -1
  506. package/dist/home-command.js +0 -181
  507. package/dist/home-command.js.map +0 -1
  508. package/dist/hooks/hooks.test.d.ts +0 -2
  509. package/dist/hooks/hooks.test.d.ts.map +0 -1
  510. package/dist/hooks/hooks.test.js +0 -37
  511. package/dist/hooks/hooks.test.js.map +0 -1
  512. package/dist/hover-repro.d.ts +0 -2
  513. package/dist/hover-repro.d.ts.map +0 -1
  514. package/dist/hover-repro.js +0 -20
  515. package/dist/hover-repro.js.map +0 -1
  516. package/dist/localstorage.d.ts +0 -13
  517. package/dist/localstorage.d.ts.map +0 -1
  518. package/dist/localstorage.js +0 -190
  519. package/dist/localstorage.js.map +0 -1
  520. package/dist/localstorage.test.d.ts +0 -2
  521. package/dist/localstorage.test.d.ts.map +0 -1
  522. package/dist/localstorage.test.js +0 -131
  523. package/dist/localstorage.test.js.map +0 -1
  524. package/dist/oauth.d.ts +0 -142
  525. package/dist/oauth.d.ts.map +0 -1
  526. package/dist/oauth.js +0 -551
  527. package/dist/oauth.js.map +0 -1
  528. package/dist/preferences.d.ts +0 -23
  529. package/dist/preferences.d.ts.map +0 -1
  530. package/dist/preferences.js +0 -105
  531. package/dist/preferences.js.map +0 -1
  532. package/dist/store-api/download.test.d.ts +0 -2
  533. package/dist/store-api/download.test.d.ts.map +0 -1
  534. package/dist/store-api/download.test.js +0 -36
  535. package/dist/store-api/download.test.js.map +0 -1
  536. package/dist/store-api/extension.test.d.ts +0 -2
  537. package/dist/store-api/extension.test.d.ts.map +0 -1
  538. package/dist/store-api/extension.test.js +0 -22
  539. package/dist/store-api/extension.test.js.map +0 -1
  540. package/dist/store-api/search.test.d.ts +0 -2
  541. package/dist/store-api/search.test.d.ts.map +0 -1
  542. package/dist/store-api/search.test.js +0 -45
  543. package/dist/store-api/search.test.js.map +0 -1
  544. package/dist/store.d.ts +0 -21
  545. package/dist/store.d.ts.map +0 -1
  546. package/dist/store.js +0 -84
  547. package/dist/store.js.map +0 -1
  548. package/dist/toast.d.ts +0 -44
  549. package/dist/toast.d.ts.map +0 -1
  550. package/dist/toast.js +0 -221
  551. package/dist/toast.js.map +0 -1
  552. package/dist/utils.test.d.ts +0 -2
  553. package/dist/utils.test.d.ts.map +0 -1
  554. package/dist/utils.test.js +0 -152
  555. package/dist/utils.test.js.map +0 -1
  556. package/dist/window.d.ts +0 -12
  557. package/dist/window.d.ts.map +0 -1
  558. package/dist/window.js +0 -48
  559. package/dist/window.js.map +0 -1
package/dist/oauth.js DELETED
@@ -1,551 +0,0 @@
1
- /**
2
- * OAuth Implicit Flow Implementation
3
- *
4
- * The implicit flow returns tokens directly in the redirect URL fragment
5
- * without requiring a client secret. This is ideal for public clients
6
- * like browser extensions and CLI tools that need ID tokens.
7
- *
8
- * Key features:
9
- * - Implicit flow for public clients (no client secret required)
10
- * - Direct token retrieval without server-side exchange
11
- * - Support for ID tokens and access tokens
12
- * - Automatic token storage and retrieval
13
- * - Token expiration checking with buffer
14
- * - Provider configuration with name and icon
15
- *
16
- * Usage:
17
- * const client = new OAuth.PKCEClient({
18
- * redirectMethod: OAuth.RedirectMethod.AppURI,
19
- * providerName: "Google",
20
- * providerIcon: "google-icon.png"
21
- * })
22
- *
23
- * const authRequest = await client.authorizationRequest({
24
- * endpoint: "https://accounts.google.com/o/oauth2/v2/auth",
25
- * clientId: "your-client-id",
26
- * scope: "openid email profile"
27
- * })
28
- *
29
- * const authResponse = await client.authorize(authRequest)
30
- * // Tokens are returned directly (idToken, accessToken)
31
- * await client.setTokens({
32
- * accessToken: authResponse.accessToken,
33
- * idToken: authResponse.idToken
34
- * })
35
- */
36
- import crypto from 'node:crypto';
37
- import http from 'node:http';
38
- import { logger } from '@termcast/cli/src/logger';
39
- import { LocalStorage } from '@termcast/cli/src/localstorage';
40
- import { exec } from 'node:child_process';
41
- import { promisify } from 'node:util';
42
- const execAsync = promisify(exec);
43
- export var OAuth;
44
- (function (OAuth) {
45
- let RedirectMethod;
46
- (function (RedirectMethod) {
47
- RedirectMethod["Web"] = "web";
48
- RedirectMethod["App"] = "app";
49
- RedirectMethod["AppURI"] = "appURI";
50
- RedirectMethod["Device"] = "device";
51
- RedirectMethod["Implicit"] = "implicit";
52
- })(RedirectMethod = OAuth.RedirectMethod || (OAuth.RedirectMethod = {}));
53
- class PKCEClient {
54
- redirectMethod;
55
- providerName;
56
- providerIcon;
57
- providerId;
58
- description;
59
- storageKey;
60
- implicitFlowTokens; // Store tokens from implicit flow
61
- // Properties expected by @raycast/utils
62
- isAuthorizing = false;
63
- authorizationURL;
64
- constructor(options) {
65
- this.redirectMethod = options.redirectMethod;
66
- this.providerName = options.providerName;
67
- this.providerIcon = options.providerIcon;
68
- this.providerId =
69
- options.providerId ||
70
- options.providerName.toLowerCase().replace(/\s+/g, '-');
71
- this.description = options.description;
72
- this.storageKey = `oauth-${this.providerId}`;
73
- // Bind all methods to this instance
74
- this.authorizationRequest = this.authorizationRequest.bind(this);
75
- this.authorize = this.authorize.bind(this);
76
- this.setTokens = this.setTokens.bind(this);
77
- this.getTokens = this.getTokens.bind(this);
78
- this.removeTokens = this.removeTokens.bind(this);
79
- this.generateCodeVerifier = this.generateCodeVerifier.bind(this);
80
- this.generateCodeChallenge = this.generateCodeChallenge.bind(this);
81
- logger.log('PKCEClient initialized', {
82
- providerName: this.providerName,
83
- providerId: this.providerId,
84
- redirectMethod: this.redirectMethod,
85
- });
86
- }
87
- async authorizationRequest(options) {
88
- // Generate PKCE parameters
89
- const codeVerifier = this.generateCodeVerifier();
90
- const codeChallenge = this.generateCodeChallenge(codeVerifier);
91
- const state = crypto.randomBytes(32).toString('hex');
92
- // Always use localhost for implicit flow
93
- const redirectURI = 'http://localhost:8989/oauth/callback';
94
- const request = {
95
- codeChallenge,
96
- codeVerifier,
97
- state,
98
- redirectURI,
99
- toURL: () => {
100
- // Always use implicit flow parameters
101
- const params = new URLSearchParams({
102
- response_type: options.extraParameters?.response_type || 'id_token token',
103
- client_id: options.clientId,
104
- redirect_uri: redirectURI,
105
- scope: options.scope,
106
- state: state,
107
- nonce: crypto.randomBytes(32).toString('hex'),
108
- ...options.extraParameters,
109
- });
110
- return `${options.endpoint}?${params.toString()}`;
111
- },
112
- };
113
- return request;
114
- }
115
- async authorizeDevice(options) {
116
- logger.log('Starting device authorization flow', {
117
- endpoint: options.endpoint,
118
- });
119
- // Step 1: Request device and user codes
120
- const deviceResponse = await this.requestDeviceCode(options);
121
- // Step 2: Open browser with the verification URL
122
- // Use the complete URL if available (it includes the user code)
123
- const url = deviceResponse.verificationUrlComplete ||
124
- `${deviceResponse.verificationUrl}?user_code=${deviceResponse.userCode}`;
125
- logger.log('Opening browser for device authorization', {
126
- url: deviceResponse.verificationUrl,
127
- userCode: deviceResponse.userCode,
128
- });
129
- try {
130
- const platform = process.platform;
131
- let command;
132
- if (platform === 'darwin') {
133
- command = `open "${url}"`;
134
- }
135
- else if (platform === 'win32') {
136
- command = `start "" "${url}"`;
137
- }
138
- else {
139
- command = `xdg-open "${url}" || sensible-browser "${url}" || x-www-browser "${url}"`;
140
- }
141
- await execAsync(command);
142
- logger.log('Browser opened successfully with device authorization URL');
143
- }
144
- catch (error) {
145
- logger.error('Failed to open browser automatically:', error);
146
- logger.log('Please manually open:', url);
147
- }
148
- // Step 3: Poll for authorization
149
- const tokenResponse = await this.pollForToken({
150
- ...options,
151
- deviceCode: deviceResponse.deviceCode,
152
- interval: deviceResponse.interval,
153
- expiresIn: deviceResponse.expiresIn,
154
- });
155
- return {
156
- authorizationCode: tokenResponse.access_token,
157
- state: undefined,
158
- };
159
- }
160
- async requestDeviceCode(options) {
161
- const params = new URLSearchParams({
162
- client_id: options.clientId,
163
- scope: options.scope,
164
- });
165
- const response = await fetch(options.endpoint, {
166
- method: 'POST',
167
- headers: {
168
- 'Content-Type': 'application/x-www-form-urlencoded',
169
- },
170
- body: params.toString(),
171
- });
172
- if (!response.ok) {
173
- const error = await response.text();
174
- logger.error('Device code request failed:', error);
175
- throw new Error(`Failed to request device code: ${response.statusText}`);
176
- }
177
- const data = (await response.json());
178
- return {
179
- deviceCode: data.device_code,
180
- userCode: data.user_code,
181
- verificationUrl: data.verification_url ||
182
- data.verification_uri ||
183
- 'https://www.google.com/device',
184
- verificationUrlComplete: data.verification_url_complete || data.verification_uri_complete,
185
- expiresIn: data.expires_in,
186
- interval: data.interval || 5,
187
- };
188
- }
189
- async pollForToken(options) {
190
- const tokenEndpoint = options.endpoint.replace('/device/code', '/token');
191
- const startTime = Date.now();
192
- const expiresAt = startTime + options.expiresIn * 1000;
193
- while (Date.now() < expiresAt) {
194
- // Wait for the specified interval
195
- await new Promise((resolve) => setTimeout(resolve, options.interval * 1000));
196
- const params = new URLSearchParams({
197
- client_id: options.clientId,
198
- device_code: options.deviceCode,
199
- grant_type: 'urn:ietf:params:oauth:grant-type:device_code',
200
- });
201
- // Add client secret if provided (required for Google)
202
- if (options.clientSecret) {
203
- params.append('client_secret', options.clientSecret);
204
- }
205
- try {
206
- const response = await fetch(tokenEndpoint, {
207
- method: 'POST',
208
- headers: {
209
- 'Content-Type': 'application/x-www-form-urlencoded',
210
- },
211
- body: params.toString(),
212
- });
213
- const data = (await response.json());
214
- if (response.ok && data.access_token) {
215
- logger.log('Device authorization successful');
216
- return data;
217
- }
218
- // Check for specific error codes
219
- if (data.error === 'authorization_pending') {
220
- // User hasn't authorized yet, continue polling
221
- continue;
222
- }
223
- else if (data.error === 'slow_down') {
224
- // Increase interval
225
- options.interval = (data.interval || options.interval) + 1;
226
- logger.log('Slowing down polling interval to', options.interval);
227
- }
228
- else if (data.error === 'access_denied') {
229
- throw new Error('User denied access');
230
- }
231
- else if (data.error === 'expired_token') {
232
- throw new Error('Device code expired');
233
- }
234
- else if (data.error) {
235
- throw new Error(`OAuth error: ${data.error} - ${data.error_description || ''}`);
236
- }
237
- }
238
- catch (error) {
239
- if (error instanceof Error && error.message.includes('denied')) {
240
- throw error;
241
- }
242
- logger.error('Error polling for token:', error);
243
- }
244
- }
245
- throw new Error('Device authorization timeout');
246
- }
247
- async authorize(options) {
248
- const url = 'toURL' in options ? options.toURL() : options.url;
249
- const expectedState = 'toURL' in options ? options.state : undefined;
250
- logger.log('Starting OAuth implicit flow authorization', { url });
251
- this.isAuthorizing = true;
252
- this.authorizationURL = url;
253
- return new Promise((resolve, reject) => {
254
- const port = 8989;
255
- // Create a local server to handle the OAuth callback
256
- const server = http.createServer((req, res) => {
257
- const requestUrl = new URL(req.url || '', `http://localhost:${port}`);
258
- // Check if this is the callback
259
- if (requestUrl.pathname === '/oauth/callback') {
260
- // For implicit flow, tokens come in the fragment (#), not query
261
- // We need to serve an HTML page that extracts the fragment and sends it back
262
- res.writeHead(200, { 'Content-Type': 'text/html' });
263
- res.end(`
264
- <!DOCTYPE html>
265
- <html>
266
- <head>
267
- <title>OAuth Authorization</title>
268
- <style>
269
- body {
270
- font-family: system-ui;
271
- padding: 40px;
272
- text-align: center;
273
- background: #f5f5f5;
274
- }
275
- .success { color: #28a745; }
276
- .error { color: #dc3545; }
277
- .token-info {
278
- background: white;
279
- padding: 20px;
280
- border-radius: 8px;
281
- margin: 20px auto;
282
- max-width: 600px;
283
- text-align: left;
284
- }
285
- </style>
286
- </head>
287
- <body>
288
- <h1 id="status">Processing...</h1>
289
- <div id="message"></div>
290
- <script>
291
- // Extract tokens from URL fragment
292
- const hash = window.location.hash.substring(1);
293
- const params = new URLSearchParams(hash);
294
-
295
- const data = {
296
- access_token: params.get('access_token'),
297
- id_token: params.get('id_token'),
298
- expires_in: params.get('expires_in'),
299
- token_type: params.get('token_type'),
300
- scope: params.get('scope'),
301
- state: params.get('state'),
302
- error: params.get('error'),
303
- error_description: params.get('error_description')
304
- };
305
-
306
- // Send tokens back to our server
307
- fetch('/oauth/implicit-callback', {
308
- method: 'POST',
309
- headers: { 'Content-Type': 'application/json' },
310
- body: JSON.stringify(data)
311
- }).then(response => {
312
- if (response.ok) {
313
- document.getElementById('status').className = 'success';
314
- document.getElementById('status').innerHTML = '&#10003; Authorization Successful';
315
- document.getElementById('message').innerHTML =
316
- '<p>You can close this window and return to the terminal.</p>' +
317
- '<div class="token-info">' +
318
- (data.id_token ? '<p><strong>ID Token received:</strong> Yes</p>' : '') +
319
- (data.access_token ? '<p><strong>Access Token received:</strong> Yes</p>' : '') +
320
- (data.expires_in ? '<p><strong>Expires in:</strong> ' + data.expires_in + ' seconds</p>' : '') +
321
- '</div>';
322
- } else {
323
- document.getElementById('status').className = 'error';
324
- document.getElementById('status').textContent = 'Authorization Failed';
325
- document.getElementById('message').textContent = data.error_description || data.error || 'Unknown error';
326
- }
327
- setTimeout(() => window.close(), 3000);
328
- }).catch(err => {
329
- document.getElementById('status').className = 'error';
330
- document.getElementById('status').textContent = 'Communication Error';
331
- document.getElementById('message').textContent = err.message;
332
- });
333
- </script>
334
- </body>
335
- </html>
336
- `);
337
- }
338
- else if (requestUrl.pathname === '/oauth/implicit-callback') {
339
- // Handle the tokens sent from the browser
340
- let body = '';
341
- req.on('data', (chunk) => {
342
- body += chunk;
343
- });
344
- req.on('end', () => {
345
- try {
346
- const data = JSON.parse(body);
347
- if (data.error) {
348
- res.writeHead(400, {
349
- 'Content-Type': 'application/json',
350
- });
351
- res.end(JSON.stringify({ error: data.error }));
352
- server.close();
353
- reject(new Error(`OAuth error: ${data.error} - ${data.error_description || ''}`));
354
- return;
355
- }
356
- // Validate state
357
- if (data.state !== expectedState) {
358
- res.writeHead(400, {
359
- 'Content-Type': 'application/json',
360
- });
361
- res.end(JSON.stringify({
362
- error: 'state_mismatch',
363
- }));
364
- server.close();
365
- reject(new Error('OAuth state mismatch'));
366
- return;
367
- }
368
- res.writeHead(200, {
369
- 'Content-Type': 'application/json',
370
- });
371
- res.end(JSON.stringify({ success: true }));
372
- server.close();
373
- this.isAuthorizing = false;
374
- // For implicit flow, save tokens immediately since we won't do token exchange
375
- const tokens = {
376
- accessToken: data.access_token || '',
377
- idToken: data.id_token,
378
- expiresIn: data.expires_in ? parseInt(data.expires_in) : 3600,
379
- scope: data.scope,
380
- };
381
- // Store tokens in memory for later retrieval
382
- this.implicitFlowTokens = tokens;
383
- // Save tokens directly to storage
384
- this.setTokens(tokens)
385
- .then(() => {
386
- logger.log('Implicit flow tokens saved directly');
387
- // Return the tokens (authorizationCode is a dummy value for compatibility)
388
- resolve({
389
- authorizationCode: 'implicit_flow_dummy_code', // Dummy code for compatibility
390
- accessToken: data.access_token,
391
- idToken: data.id_token,
392
- state: data.state,
393
- });
394
- })
395
- .catch((err) => {
396
- logger.error('Failed to save implicit flow tokens:', err);
397
- reject(err);
398
- });
399
- }
400
- catch (error) {
401
- res.writeHead(500, {
402
- 'Content-Type': 'application/json',
403
- });
404
- res.end(JSON.stringify({ error: 'parse_error' }));
405
- server.close();
406
- reject(error);
407
- }
408
- });
409
- }
410
- else {
411
- res.writeHead(404, { 'Content-Type': 'text/plain' });
412
- res.end('Not found');
413
- }
414
- });
415
- server.listen(port, async () => {
416
- logger.log(`OAuth implicit flow server listening on http://localhost:${port}/oauth/callback`);
417
- // Open the browser
418
- try {
419
- const platform = process.platform;
420
- let command;
421
- if (platform === 'darwin') {
422
- command = `open "${url}"`;
423
- }
424
- else if (platform === 'win32') {
425
- command = `start "" "${url}"`;
426
- }
427
- else {
428
- // Linux and others
429
- command = `xdg-open "${url}" || sensible-browser "${url}" || x-www-browser "${url}"`;
430
- }
431
- await execAsync(command);
432
- logger.log('Browser opened for implicit flow authorization');
433
- }
434
- catch (error) {
435
- server.close();
436
- reject(new Error(`Failed to open browser: ${error}`));
437
- }
438
- });
439
- server.on('error', (error) => {
440
- logger.error('OAuth implicit flow server error:', error);
441
- reject(error);
442
- });
443
- // Set a timeout for the authorization
444
- setTimeout(() => {
445
- server.close();
446
- reject(new Error('OAuth authorization timeout'));
447
- }, 5 * 60 * 1000); // 5 minutes timeout
448
- });
449
- }
450
- async setTokens(options) {
451
- // Convert TokenResponse to TokenSetOptions if needed
452
- const tokenSet = 'access_token' in options
453
- ? {
454
- accessToken: options.access_token,
455
- refreshToken: options.refresh_token,
456
- idToken: options.id_token,
457
- expiresIn: options.expires_in,
458
- scope: options.scope,
459
- }
460
- : options;
461
- const storedTokenSet = {
462
- ...tokenSet,
463
- updatedAt: new Date(),
464
- isExpired: function () {
465
- if (!this.expiresIn)
466
- return false;
467
- const expiresAt = new Date(this.updatedAt.getTime() + this.expiresIn * 1000);
468
- // Add 10 seconds buffer
469
- return new Date().getTime() > expiresAt.getTime() - 10000;
470
- },
471
- };
472
- const dataToStore = {
473
- ...storedTokenSet,
474
- updatedAt: storedTokenSet.updatedAt.toISOString(),
475
- };
476
- logger.log('Storing tokens for', this.providerId, {
477
- storageKey: this.storageKey,
478
- hasAccessToken: !!tokenSet.accessToken,
479
- hasRefreshToken: !!tokenSet.refreshToken,
480
- hasIdToken: !!tokenSet.idToken,
481
- expiresIn: tokenSet.expiresIn,
482
- });
483
- await LocalStorage.setItem(this.storageKey, JSON.stringify(dataToStore));
484
- // Verify storage
485
- const stored = await LocalStorage.getItem(this.storageKey);
486
- if (stored) {
487
- logger.log('Tokens successfully stored and verified for', this.providerId);
488
- }
489
- else {
490
- logger.error('Failed to verify token storage for', this.providerId);
491
- }
492
- }
493
- async getTokens() {
494
- logger.log('Getting tokens for', this.providerId, {
495
- storageKey: this.storageKey,
496
- });
497
- const stored = await LocalStorage.getItem(this.storageKey);
498
- if (!stored) {
499
- logger.log('No tokens found for', this.providerId);
500
- return undefined;
501
- }
502
- const parsed = JSON.parse(stored);
503
- const tokenSet = {
504
- ...parsed,
505
- updatedAt: new Date(parsed.updatedAt),
506
- isExpired: function () {
507
- if (!this.expiresIn)
508
- return false;
509
- const expiresAt = new Date(this.updatedAt.getTime() + this.expiresIn * 1000);
510
- // Add 10 seconds buffer
511
- return new Date().getTime() > expiresAt.getTime() - 10000;
512
- },
513
- };
514
- logger.log('Retrieved tokens for', this.providerId, {
515
- hasAccessToken: !!tokenSet.accessToken,
516
- hasRefreshToken: !!tokenSet.refreshToken,
517
- isExpired: tokenSet.isExpired(),
518
- });
519
- return tokenSet;
520
- }
521
- async removeTokens() {
522
- await LocalStorage.removeItem(this.storageKey);
523
- this.implicitFlowTokens = undefined; // Clear in-memory tokens
524
- logger.log('Tokens removed for', this.providerId);
525
- }
526
- // Method to check if we have implicit flow tokens ready
527
- hasImplicitFlowTokens() {
528
- return !!this.implicitFlowTokens;
529
- }
530
- // Method to get implicit flow tokens (for mocking token exchange)
531
- getImplicitFlowTokens() {
532
- if (!this.implicitFlowTokens)
533
- return undefined;
534
- return {
535
- access_token: this.implicitFlowTokens.accessToken,
536
- id_token: this.implicitFlowTokens.idToken,
537
- expires_in: this.implicitFlowTokens.expiresIn,
538
- scope: this.implicitFlowTokens.scope,
539
- refresh_token: this.implicitFlowTokens.refreshToken,
540
- };
541
- }
542
- generateCodeVerifier() {
543
- return crypto.randomBytes(32).toString('base64url');
544
- }
545
- generateCodeChallenge(verifier) {
546
- return crypto.createHash('sha256').update(verifier).digest('base64url');
547
- }
548
- }
549
- OAuth.PKCEClient = PKCEClient;
550
- })(OAuth || (OAuth = {}));
551
- //# sourceMappingURL=oauth.js.map
package/dist/oauth.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../src/oauth.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAErC,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;AAEjC,MAAM,KAAW,KAAK,CAyrBrB;AAzrBD,WAAiB,KAAK;IACpB,IAAY,cAMX;IAND,WAAY,cAAc;QACxB,6BAAW,CAAA;QACX,6BAAW,CAAA;QACX,mCAAiB,CAAA;QACjB,mCAAiB,CAAA;QACjB,uCAAqB,CAAA;IACvB,CAAC,EANW,cAAc,GAAd,oBAAc,KAAd,oBAAc,QAMzB;IAmFD,MAAa,UAAU;QACrB,cAAc,CAAgB;QAC9B,YAAY,CAAQ;QACpB,YAAY,CAAY;QACxB,UAAU,CAAQ;QAClB,WAAW,CAAS;QACZ,UAAU,CAAQ;QAClB,kBAAkB,CAAkB,CAAC,kCAAkC;QAE/E,wCAAwC;QACxC,aAAa,GAAY,KAAK,CAAA;QAC9B,gBAAgB,CAAS;QAEzB,YAAY,OAA2B;YACrC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAA;YAC5C,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAA;YACxC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAA;YACxC,IAAI,CAAC,UAAU;gBACb,OAAO,CAAC,UAAU;oBAClB,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;YACzD,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;YACtC,IAAI,CAAC,UAAU,GAAG,SAAS,IAAI,CAAC,UAAU,EAAE,CAAA;YAE5C,oCAAoC;YACpC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAChE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC1C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC1C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC1C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAChD,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAChE,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAElE,MAAM,CAAC,GAAG,CAAC,wBAAwB,EAAE;gBACnC,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,cAAc,EAAE,IAAI,CAAC,cAAc;aACpC,CAAC,CAAA;QACJ,CAAC;QAED,KAAK,CAAC,oBAAoB,CACxB,OAAoC;YAEpC,2BAA2B;YAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAChD,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAA;YAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;YAEpD,yCAAyC;YACzC,MAAM,WAAW,GAAG,sCAAsC,CAAA;YAE1D,MAAM,OAAO,GAAyB;gBACpC,aAAa;gBACb,YAAY;gBACZ,KAAK;gBACL,WAAW;gBACX,KAAK,EAAE,GAAG,EAAE;oBACV,sCAAsC;oBACtC,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;wBACjC,aAAa,EACX,OAAO,CAAC,eAAe,EAAE,aAAa,IAAI,gBAAgB;wBAC5D,SAAS,EAAE,OAAO,CAAC,QAAQ;wBAC3B,YAAY,EAAE,WAAW;wBACzB,KAAK,EAAE,OAAO,CAAC,KAAK;wBACpB,KAAK,EAAE,KAAK;wBACZ,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;wBAC7C,GAAG,OAAO,CAAC,eAAe;qBAC3B,CAAC,CAAA;oBAEF,OAAO,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAA;gBACnD,CAAC;aACF,CAAA;YAED,OAAO,OAAO,CAAA;QAChB,CAAC;QAED,KAAK,CAAC,eAAe,CACnB,OAAmC;YAEnC,MAAM,CAAC,GAAG,CAAC,oCAAoC,EAAE;gBAC/C,QAAQ,EAAE,OAAO,CAAC,QAAQ;aAC3B,CAAC,CAAA;YAEF,wCAAwC;YACxC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAA;YAE5D,iDAAiD;YACjD,gEAAgE;YAChE,MAAM,GAAG,GACP,cAAc,CAAC,uBAAuB;gBACtC,GAAG,cAAc,CAAC,eAAe,cAAc,cAAc,CAAC,QAAQ,EAAE,CAAA;YAE1E,MAAM,CAAC,GAAG,CAAC,0CAA0C,EAAE;gBACrD,GAAG,EAAE,cAAc,CAAC,eAAe;gBACnC,QAAQ,EAAE,cAAc,CAAC,QAAQ;aAClC,CAAC,CAAA;YAEF,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;gBACjC,IAAI,OAAe,CAAA;gBAEnB,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBAC1B,OAAO,GAAG,SAAS,GAAG,GAAG,CAAA;gBAC3B,CAAC;qBAAM,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;oBAChC,OAAO,GAAG,aAAa,GAAG,GAAG,CAAA;gBAC/B,CAAC;qBAAM,CAAC;oBACN,OAAO,GAAG,aAAa,GAAG,0BAA0B,GAAG,uBAAuB,GAAG,GAAG,CAAA;gBACtF,CAAC;gBAED,MAAM,SAAS,CAAC,OAAO,CAAC,CAAA;gBACxB,MAAM,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAA;YACzE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAA;gBAC5D,MAAM,CAAC,GAAG,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAA;YAC1C,CAAC;YAED,iCAAiC;YACjC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;gBAC5C,GAAG,OAAO;gBACV,UAAU,EAAE,cAAc,CAAC,UAAU;gBACrC,QAAQ,EAAE,cAAc,CAAC,QAAQ;gBACjC,SAAS,EAAE,cAAc,CAAC,SAAS;aACpC,CAAC,CAAA;YAEF,OAAO;gBACL,iBAAiB,EAAE,aAAa,CAAC,YAAY;gBAC7C,KAAK,EAAE,SAAS;aACjB,CAAA;QACH,CAAC;QAEO,KAAK,CAAC,iBAAiB,CAC7B,OAAmC;YAEnC,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;gBACjC,SAAS,EAAE,OAAO,CAAC,QAAQ;gBAC3B,KAAK,EAAE,OAAO,CAAC,KAAK;aACrB,CAAC,CAAA;YAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE;gBAC7C,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,mCAAmC;iBACpD;gBACD,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE;aACxB,CAAC,CAAA;YAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;gBACnC,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAA;gBAClD,MAAM,IAAI,KAAK,CAAC,kCAAkC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAA;YAC1E,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CASlC,CAAA;YAED,OAAO;gBACL,UAAU,EAAE,IAAI,CAAC,WAAW;gBAC5B,QAAQ,EAAE,IAAI,CAAC,SAAS;gBACxB,eAAe,EACb,IAAI,CAAC,gBAAgB;oBACrB,IAAI,CAAC,gBAAgB;oBACrB,+BAA+B;gBACjC,uBAAuB,EACrB,IAAI,CAAC,yBAAyB,IAAI,IAAI,CAAC,yBAAyB;gBAClE,SAAS,EAAE,IAAI,CAAC,UAAU;gBAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC;aAC7B,CAAA;QACH,CAAC;QAEO,KAAK,CAAC,YAAY,CACxB,OAIC;YAED,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAA;YACxE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YAC5B,MAAM,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAA;YAEtD,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC;gBAC9B,kCAAkC;gBAClC,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5B,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAC7C,CAAA;gBAED,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;oBACjC,SAAS,EAAE,OAAO,CAAC,QAAQ;oBAC3B,WAAW,EAAE,OAAO,CAAC,UAAU;oBAC/B,UAAU,EAAE,8CAA8C;iBAC3D,CAAC,CAAA;gBAEF,sDAAsD;gBACtD,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;oBACzB,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;gBACtD,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,aAAa,EAAE;wBAC1C,MAAM,EAAE,MAAM;wBACd,OAAO,EAAE;4BACP,cAAc,EAAE,mCAAmC;yBACpD;wBACD,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE;qBACxB,CAAC,CAAA;oBAEF,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAUlC,CAAA;oBAED,IAAI,QAAQ,CAAC,EAAE,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;wBACrC,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAA;wBAC7C,OAAO,IAA2B,CAAA;oBACpC,CAAC;oBAED,iCAAiC;oBACjC,IAAI,IAAI,CAAC,KAAK,KAAK,uBAAuB,EAAE,CAAC;wBAC3C,+CAA+C;wBAC/C,SAAQ;oBACV,CAAC;yBAAM,IAAI,IAAI,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;wBACtC,oBAAoB;wBACpB,OAAO,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;wBAC1D,MAAM,CAAC,GAAG,CAAC,kCAAkC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;oBAClE,CAAC;yBAAM,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,EAAE,CAAC;wBAC1C,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;oBACvC,CAAC;yBAAM,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,EAAE,CAAC;wBAC1C,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;oBACxC,CAAC;yBAAM,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBACtB,MAAM,IAAI,KAAK,CACb,gBAAgB,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,iBAAiB,IAAI,EAAE,EAAE,CAC/D,CAAA;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAC/D,MAAM,KAAK,CAAA;oBACb,CAAC;oBACD,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAA;gBACjD,CAAC;YACH,CAAC;YAED,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;QACjD,CAAC;QAED,KAAK,CAAC,SAAS,CACb,OAAoD;YAEpD,MAAM,GAAG,GAAG,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAA;YAC9D,MAAM,aAAa,GAAG,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;YAEpE,MAAM,CAAC,GAAG,CAAC,4CAA4C,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YAEjE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;YACzB,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAA;YAE3B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,MAAM,IAAI,GAAG,IAAI,CAAA;gBAEjB,qDAAqD;gBACrD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;oBAC5C,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,EAAE,oBAAoB,IAAI,EAAE,CAAC,CAAA;oBAErE,gCAAgC;oBAChC,IAAI,UAAU,CAAC,QAAQ,KAAK,iBAAiB,EAAE,CAAC;wBAC9C,gEAAgE;wBAChE,6EAA6E;wBAC7E,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAA;wBACnD,GAAG,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAyEP,CAAC,CAAA;oBACJ,CAAC;yBAAM,IAAI,UAAU,CAAC,QAAQ,KAAK,0BAA0B,EAAE,CAAC;wBAC9D,0CAA0C;wBAC1C,IAAI,IAAI,GAAG,EAAE,CAAA;wBACb,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;4BACvB,IAAI,IAAI,KAAK,CAAA;wBACf,CAAC,CAAC,CAAA;wBACF,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;4BACjB,IAAI,CAAC;gCACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gCAE7B,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oCACf,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;wCACjB,cAAc,EAAE,kBAAkB;qCACnC,CAAC,CAAA;oCACF,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;oCAC9C,MAAM,CAAC,KAAK,EAAE,CAAA;oCACd,MAAM,CACJ,IAAI,KAAK,CACP,gBAAgB,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,iBAAiB,IAAI,EAAE,EAAE,CAC/D,CACF,CAAA;oCACD,OAAM;gCACR,CAAC;gCAED,iBAAiB;gCACjB,IAAI,IAAI,CAAC,KAAK,KAAK,aAAa,EAAE,CAAC;oCACjC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;wCACjB,cAAc,EAAE,kBAAkB;qCACnC,CAAC,CAAA;oCACF,GAAG,CAAC,GAAG,CACL,IAAI,CAAC,SAAS,CAAC;wCACb,KAAK,EAAE,gBAAgB;qCACxB,CAAC,CACH,CAAA;oCACD,MAAM,CAAC,KAAK,EAAE,CAAA;oCACd,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAA;oCACzC,OAAM;gCACR,CAAC;gCAED,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;oCACjB,cAAc,EAAE,kBAAkB;iCACnC,CAAC,CAAA;gCACF,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;gCAE1C,MAAM,CAAC,KAAK,EAAE,CAAA;gCACd,IAAI,CAAC,aAAa,GAAG,KAAK,CAAA;gCAE1B,8EAA8E;gCAC9E,MAAM,MAAM,GAAG;oCACb,WAAW,EAAE,IAAI,CAAC,YAAY,IAAI,EAAE;oCACpC,OAAO,EAAE,IAAI,CAAC,QAAQ;oCACtB,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI;oCAC7D,KAAK,EAAE,IAAI,CAAC,KAAK;iCAClB,CAAA;gCAED,6CAA6C;gCAC7C,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAA;gCAEhC,kCAAkC;gCAClC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;qCACnB,IAAI,CAAC,GAAG,EAAE;oCACT,MAAM,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAA;oCAEjD,2EAA2E;oCAC3E,OAAO,CAAC;wCACN,iBAAiB,EAAE,0BAA0B,EAAE,+BAA+B;wCAC9E,WAAW,EAAE,IAAI,CAAC,YAAY;wCAC9B,OAAO,EAAE,IAAI,CAAC,QAAQ;wCACtB,KAAK,EAAE,IAAI,CAAC,KAAK;qCAClB,CAAC,CAAA;gCACJ,CAAC,CAAC;qCACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oCACb,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAA;oCACzD,MAAM,CAAC,GAAG,CAAC,CAAA;gCACb,CAAC,CAAC,CAAA;4BACN,CAAC;4BAAC,OAAO,KAAK,EAAE,CAAC;gCACf,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;oCACjB,cAAc,EAAE,kBAAkB;iCACnC,CAAC,CAAA;gCACF,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,CAAA;gCACjD,MAAM,CAAC,KAAK,EAAE,CAAA;gCACd,MAAM,CAAC,KAAK,CAAC,CAAA;4BACf,CAAC;wBACH,CAAC,CAAC,CAAA;oBACJ,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAA;wBACpD,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;oBACtB,CAAC;gBACH,CAAC,CAAC,CAAA;gBAEF,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;oBAC7B,MAAM,CAAC,GAAG,CACR,4DAA4D,IAAI,iBAAiB,CAClF,CAAA;oBAED,mBAAmB;oBACnB,IAAI,CAAC;wBACH,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;wBACjC,IAAI,OAAe,CAAA;wBAEnB,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;4BAC1B,OAAO,GAAG,SAAS,GAAG,GAAG,CAAA;wBAC3B,CAAC;6BAAM,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;4BAChC,OAAO,GAAG,aAAa,GAAG,GAAG,CAAA;wBAC/B,CAAC;6BAAM,CAAC;4BACN,mBAAmB;4BACnB,OAAO,GAAG,aAAa,GAAG,0BAA0B,GAAG,uBAAuB,GAAG,GAAG,CAAA;wBACtF,CAAC;wBAED,MAAM,SAAS,CAAC,OAAO,CAAC,CAAA;wBACxB,MAAM,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAA;oBAC9D,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,MAAM,CAAC,KAAK,EAAE,CAAA;wBACd,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,KAAK,EAAE,CAAC,CAAC,CAAA;oBACvD,CAAC;gBACH,CAAC,CAAC,CAAA;gBAEF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC3B,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAA;oBACxD,MAAM,CAAC,KAAK,CAAC,CAAA;gBACf,CAAC,CAAC,CAAA;gBAEF,sCAAsC;gBACtC,UAAU,CACR,GAAG,EAAE;oBACH,MAAM,CAAC,KAAK,EAAE,CAAA;oBACd,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAA;gBAClD,CAAC,EACD,CAAC,GAAG,EAAE,GAAG,IAAI,CACd,CAAA,CAAC,oBAAoB;YACxB,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,OAAwC;YACtD,qDAAqD;YACrD,MAAM,QAAQ,GACZ,cAAc,IAAI,OAAO;gBACvB,CAAC,CAAC;oBACE,WAAW,EAAE,OAAO,CAAC,YAAY;oBACjC,YAAY,EAAE,OAAO,CAAC,aAAa;oBACnC,OAAO,EAAE,OAAO,CAAC,QAAQ;oBACzB,SAAS,EAAE,OAAO,CAAC,UAAU;oBAC7B,KAAK,EAAE,OAAO,CAAC,KAAK;iBACrB;gBACH,CAAC,CAAC,OAAO,CAAA;YAEb,MAAM,cAAc,GAAa;gBAC/B,GAAG,QAAQ;gBACX,SAAS,EAAE,IAAI,IAAI,EAAE;gBACrB,SAAS,EAAE;oBACT,IAAI,CAAC,IAAI,CAAC,SAAS;wBAAE,OAAO,KAAK,CAAA;oBACjC,MAAM,SAAS,GAAG,IAAI,IAAI,CACxB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CACjD,CAAA;oBACD,wBAAwB;oBACxB,OAAO,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,GAAG,KAAK,CAAA;gBAC3D,CAAC;aACF,CAAA;YAED,MAAM,WAAW,GAAG;gBAClB,GAAG,cAAc;gBACjB,SAAS,EAAE,cAAc,CAAC,SAAS,CAAC,WAAW,EAAE;aAClD,CAAA;YAED,MAAM,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC,UAAU,EAAE;gBAChD,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,cAAc,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW;gBACtC,eAAe,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY;gBACxC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO;gBAC9B,SAAS,EAAE,QAAQ,CAAC,SAAS;aAC9B,CAAC,CAAA;YAEF,MAAM,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAA;YAExE,iBAAiB;YACjB,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAC1D,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,GAAG,CACR,6CAA6C,EAC7C,IAAI,CAAC,UAAU,CAChB,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;YACrE,CAAC;QACH,CAAC;QAED,KAAK,CAAC,SAAS;YACb,MAAM,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC,UAAU,EAAE;gBAChD,UAAU,EAAE,IAAI,CAAC,UAAU;aAC5B,CAAC,CAAA;YAEF,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAC1D,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,CAAC,GAAG,CAAC,qBAAqB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;gBAClD,OAAO,SAAS,CAAA;YAClB,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAgB,CAAC,CAAA;YAC3C,MAAM,QAAQ,GAAa;gBACzB,GAAG,MAAM;gBACT,SAAS,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;gBACrC,SAAS,EAAE;oBACT,IAAI,CAAC,IAAI,CAAC,SAAS;wBAAE,OAAO,KAAK,CAAA;oBACjC,MAAM,SAAS,GAAG,IAAI,IAAI,CACxB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CACjD,CAAA;oBACD,wBAAwB;oBACxB,OAAO,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,GAAG,KAAK,CAAA;gBAC3D,CAAC;aACF,CAAA;YAED,MAAM,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,UAAU,EAAE;gBAClD,cAAc,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW;gBACtC,eAAe,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY;gBACxC,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE;aAChC,CAAC,CAAA;YAEF,OAAO,QAAQ,CAAA;QACjB,CAAC;QAED,KAAK,CAAC,YAAY;YAChB,MAAM,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAC9C,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAA,CAAC,yBAAyB;YAC7D,MAAM,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;QACnD,CAAC;QAED,wDAAwD;QACxD,qBAAqB;YACnB,OAAO,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAA;QAClC,CAAC;QAED,kEAAkE;QAClE,qBAAqB;YACnB,IAAI,CAAC,IAAI,CAAC,kBAAkB;gBAAE,OAAO,SAAS,CAAA;YAE9C,OAAO;gBACL,YAAY,EAAE,IAAI,CAAC,kBAAkB,CAAC,WAAW;gBACjD,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,OAAO;gBACzC,UAAU,EAAE,IAAI,CAAC,kBAAkB,CAAC,SAAS;gBAC7C,KAAK,EAAE,IAAI,CAAC,kBAAkB,CAAC,KAAK;gBACpC,aAAa,EAAE,IAAI,CAAC,kBAAkB,CAAC,YAAY;aACpD,CAAA;QACH,CAAC;QAEO,oBAAoB;YAC1B,OAAO,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;QACrD,CAAC;QAEO,qBAAqB,CAAC,QAAgB;YAC5C,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QACzE,CAAC;KACF;IA9lBY,gBAAU,aA8lBtB,CAAA;AACH,CAAC,EAzrBgB,KAAK,KAAL,KAAK,QAyrBrB"}
@@ -1,23 +0,0 @@
1
- export type PreferenceValues = {
2
- [preferenceName: string]: any;
3
- };
4
- /**
5
- * A function to access the preference values that have been passed to the command.
6
- * Each preference name is mapped to its value, and the defined default values are used as fallback values.
7
- *
8
- * @returns An object with the preference names as property key and the typed value as property value.
9
- */
10
- export declare function getPreferenceValues<Values extends PreferenceValues = PreferenceValues>(): Values;
11
- /**
12
- * Opens the extension's preferences screen.
13
- *
14
- * @returns A Promise that resolves when the extensions preferences screen is opened.
15
- */
16
- export declare function openExtensionPreferences(): Promise<void>;
17
- /**
18
- * Opens the command's preferences screen.
19
- *
20
- * @returns A Promise that resolves when the command's preferences screen is opened.
21
- */
22
- export declare function openCommandPreferences(): Promise<void>;
23
- //# sourceMappingURL=preferences.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"preferences.d.ts","sourceRoot":"","sources":["../src/preferences.tsx"],"names":[],"mappings":"AAMA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,CAAC,cAAc,EAAE,MAAM,GAAG,GAAG,CAAA;CAC9B,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,SAAS,gBAAgB,GAAG,gBAAgB,KAC/C,MAAM,CA4DV;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAqB9D;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CA0B5D"}