silvery 0.18.2 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (156) hide show
  1. package/dist/{animation-DhINOJk8.mjs → animation-Cn64yepo.mjs} +1 -1
  2. package/dist/{animation-DhINOJk8.mjs.map → animation-Cn64yepo.mjs.map} +1 -1
  3. package/dist/{ansi-C6Qs1Wn2.mjs → ansi-CLOitHKx.mjs} +1 -1
  4. package/dist/ansi-CLOitHKx.mjs.map +1 -0
  5. package/dist/{ansi-CsjnZtAw.d.mts → ansi-Cc33mW54.d.mts} +1 -1
  6. package/dist/{ansi-CsjnZtAw.d.mts.map → ansi-Cc33mW54.d.mts.map} +1 -1
  7. package/dist/{chunk-BSw8zbkd.mjs → chunk-Vs_PY4HZ.mjs} +1 -1
  8. package/dist/cli-BKp0YtBD.mjs +4 -0
  9. package/dist/{context-BjWgrikx.mjs → context-BU5LkkIy.mjs} +8 -7
  10. package/dist/context-BU5LkkIy.mjs.map +1 -0
  11. package/dist/devtools-9QY4teqI.mjs +2 -0
  12. package/dist/{devtools-CeO9X_uv.mjs → devtools-DxkSLXDA.mjs} +4 -5
  13. package/dist/devtools-DxkSLXDA.mjs.map +1 -0
  14. package/dist/{eta-BnQSZcWf.mjs → eta-Bb3RH3wh.mjs} +1 -1
  15. package/dist/{eta-BnQSZcWf.mjs.map → eta-Bb3RH3wh.mjs.map} +1 -1
  16. package/dist/{flexily-zero-adapter-BOM0cl8R.mjs → flexily-zero-adapter-BlQa46nr.mjs} +21 -64
  17. package/dist/flexily-zero-adapter-BlQa46nr.mjs.map +1 -0
  18. package/dist/{flexily-zero-adapter-V8R3HQtK.mjs → flexily-zero-adapter-CMxXhdOL.mjs} +1 -1
  19. package/dist/{image-B0zMbVUr.mjs → image-CTII5QWI.mjs} +3 -3
  20. package/dist/image-CTII5QWI.mjs.map +1 -0
  21. package/dist/{index-Bh3U1K09.d.mts → index-BXslOebb.d.mts} +547 -137
  22. package/dist/index-BXslOebb.d.mts.map +1 -0
  23. package/dist/{index-C4vrhbud.d.mts → index-BnA7mNpo.d.mts} +1 -1
  24. package/dist/{index-C4vrhbud.d.mts.map → index-BnA7mNpo.d.mts.map} +1 -1
  25. package/dist/index-D3saHouR.d.mts +1392 -0
  26. package/dist/index-D3saHouR.d.mts.map +1 -0
  27. package/dist/index.d.mts +5 -33
  28. package/dist/index.d.mts.map +1 -1
  29. package/dist/index.mjs +13 -13
  30. package/dist/{layout-engine--drvrWjD.mjs → layout-engine-B6Cdz1yZ.mjs} +1 -1
  31. package/dist/{layout-engine-Dr3cY5U4.mjs → layout-engine-ClUgv6jB.mjs} +3 -3
  32. package/dist/{layout-engine-Dr3cY5U4.mjs.map → layout-engine-ClUgv6jB.mjs.map} +1 -1
  33. package/dist/{multi-progress-CcdqJFlf.mjs → multi-progress-Bq9Oi_WI.mjs} +3 -3
  34. package/dist/{multi-progress-CcdqJFlf.mjs.map → multi-progress-Bq9Oi_WI.mjs.map} +1 -1
  35. package/dist/{multi-progress-DQ-uUzLf.d.mts → multi-progress-DAQC7eap.d.mts} +2 -2
  36. package/dist/{multi-progress-DQ-uUzLf.d.mts.map → multi-progress-DAQC7eap.d.mts.map} +1 -1
  37. package/dist/{node-CP5WChgr.mjs → node-BeWlnCPY.mjs} +4 -4
  38. package/dist/node-BeWlnCPY.mjs.map +1 -0
  39. package/dist/{progress-bar-IrUjkLfU.mjs → progress-bar-CXE5Qfkd.mjs} +4 -4
  40. package/dist/progress-bar-CXE5Qfkd.mjs.map +1 -0
  41. package/dist/reconciler-Cwgm8hRR.mjs +8459 -0
  42. package/dist/reconciler-Cwgm8hRR.mjs.map +1 -0
  43. package/dist/{render-string-DVfgc8xr.mjs → render-string-Cbuf63Ya.mjs} +936 -136
  44. package/dist/render-string-Cbuf63Ya.mjs.map +1 -0
  45. package/dist/{render-string-BwLG7rIX.mjs → render-string-Tv-jqM16.mjs} +1 -1
  46. package/dist/runtime.d.mts +2 -2
  47. package/dist/runtime.mjs +3 -3
  48. package/dist/{spinner-BRkaJI0N.d.mts → spinner-CGo34vyR.d.mts} +2 -2
  49. package/dist/{spinner-BRkaJI0N.d.mts.map → spinner-CGo34vyR.d.mts.map} +1 -1
  50. package/dist/{spinner-BmldKx0M.mjs → spinner-CeOmcuw_.mjs} +3 -3
  51. package/dist/spinner-CeOmcuw_.mjs.map +1 -0
  52. package/dist/src-B5GjfG7g.mjs +4305 -0
  53. package/dist/src-B5GjfG7g.mjs.map +1 -0
  54. package/dist/{src-CJPXf3fC.mjs → src-C2uvC-r0.mjs} +7535 -6467
  55. package/dist/src-C2uvC-r0.mjs.map +1 -0
  56. package/dist/{src-D8kLrQBT.mjs → src-CChwjk0Z.mjs} +8 -86
  57. package/dist/src-CChwjk0Z.mjs.map +1 -0
  58. package/dist/{src-D_BS-as7.mjs → src-NCKb8kE5.mjs} +777 -776
  59. package/dist/src-NCKb8kE5.mjs.map +1 -0
  60. package/dist/theme.d.mts +2 -130
  61. package/dist/theme.mjs +3 -8
  62. package/dist/{types-B4A8Ebba.d.mts → types-BH_v3iMT.d.mts} +1 -1
  63. package/dist/{types-B4A8Ebba.d.mts.map → types-BH_v3iMT.d.mts.map} +1 -1
  64. package/dist/{types-e4dpfbSa.mjs → types-Bk2yw9Qj.mjs} +3 -3
  65. package/dist/types-Bk2yw9Qj.mjs.map +1 -0
  66. package/dist/ui/animation.d.mts +1 -1
  67. package/dist/ui/animation.mjs +1 -1
  68. package/dist/ui/ansi.d.mts +1 -1
  69. package/dist/ui/ansi.mjs +1 -1
  70. package/dist/ui/cli.d.mts +3 -3
  71. package/dist/ui/cli.mjs +5 -5
  72. package/dist/ui/display.d.mts +1 -1
  73. package/dist/ui/display.mjs.map +1 -1
  74. package/dist/ui/image.d.mts +1 -1
  75. package/dist/ui/image.mjs +1 -1
  76. package/dist/ui/input.d.mts +1 -1
  77. package/dist/ui/input.d.mts.map +1 -1
  78. package/dist/ui/input.mjs +2 -4
  79. package/dist/ui/input.mjs.map +1 -1
  80. package/dist/ui/progress.d.mts +3 -3
  81. package/dist/ui/progress.d.mts.map +1 -1
  82. package/dist/ui/progress.mjs +3 -3
  83. package/dist/ui/progress.mjs.map +1 -1
  84. package/dist/ui/react.d.mts +1 -1
  85. package/dist/ui/react.d.mts.map +1 -1
  86. package/dist/ui/react.mjs +2 -2
  87. package/dist/ui/react.mjs.map +1 -1
  88. package/dist/ui/utils.mjs +1 -1
  89. package/dist/ui/wrappers.d.mts +2 -2
  90. package/dist/ui/wrappers.mjs +1 -1
  91. package/dist/ui.d.mts +5 -5
  92. package/dist/ui.mjs +6 -6
  93. package/dist/{useLatest-6xqnGIU6.d.mts → useLatest-Bg2x4bfP.d.mts} +1 -1
  94. package/dist/{useLatest-6xqnGIU6.d.mts.map → useLatest-Bg2x4bfP.d.mts.map} +1 -1
  95. package/dist/{with-text-input-lUh9gYAG.d.mts → with-text-input-CRfoiFFG.d.mts} +3 -3
  96. package/dist/with-text-input-CRfoiFFG.d.mts.map +1 -0
  97. package/dist/{wrappers-JrEYTuKA.mjs → wrappers-UTADQkSY.mjs} +4 -4
  98. package/dist/wrappers-UTADQkSY.mjs.map +1 -0
  99. package/dist/{yoga-adapter-Bc8XT9cN.mjs → yoga-adapter-8oRGRw8V.mjs} +2 -2
  100. package/dist/{yoga-adapter-Bc8XT9cN.mjs.map → yoga-adapter-8oRGRw8V.mjs.map} +1 -1
  101. package/dist/yoga-adapter-D_CcxSt5.mjs +2 -0
  102. package/package.json +54 -45
  103. package/dist/UPNG-DvKjM6wE.mjs +0 -5076
  104. package/dist/UPNG-DvKjM6wE.mjs.map +0 -1
  105. package/dist/__vite-browser-external-2447137e-DPKHHqQK.mjs +0 -6
  106. package/dist/__vite-browser-external-2447137e-DPKHHqQK.mjs.map +0 -1
  107. package/dist/ansi-C6Qs1Wn2.mjs.map +0 -1
  108. package/dist/apng-CvSlLBtc.mjs +0 -3
  109. package/dist/apng-DFFVOItr.mjs +0 -70
  110. package/dist/apng-DFFVOItr.mjs.map +0 -1
  111. package/dist/assets/resvgjs.darwin-arm64-BtufyGW1.node +0 -0
  112. package/dist/backend-DU0Y938U.mjs +0 -13396
  113. package/dist/backend-DU0Y938U.mjs.map +0 -1
  114. package/dist/backends-BihMKFY_.mjs +0 -1181
  115. package/dist/backends-BihMKFY_.mjs.map +0 -1
  116. package/dist/backends-Dk_5G_gC.mjs +0 -3
  117. package/dist/cli-GwJ0S2In.mjs +0 -4
  118. package/dist/context-BjWgrikx.mjs.map +0 -1
  119. package/dist/derive-O_Kb1Bk_.d.mts +0 -28
  120. package/dist/derive-O_Kb1Bk_.d.mts.map +0 -1
  121. package/dist/devtools-CeO9X_uv.mjs.map +0 -1
  122. package/dist/devtools-nX4tj6OH.mjs +0 -2
  123. package/dist/flexily-zero-adapter-BOM0cl8R.mjs.map +0 -1
  124. package/dist/gif-B9Uq4qZA.mjs +0 -73
  125. package/dist/gif-B9Uq4qZA.mjs.map +0 -1
  126. package/dist/gif-BdrLRBmM.mjs +0 -3
  127. package/dist/gifenc-DfhOb4xr.mjs +0 -730
  128. package/dist/gifenc-DfhOb4xr.mjs.map +0 -1
  129. package/dist/image-B0zMbVUr.mjs.map +0 -1
  130. package/dist/index-Bh3U1K09.d.mts.map +0 -1
  131. package/dist/index-dehZ18K-.d.mts +0 -679
  132. package/dist/index-dehZ18K-.d.mts.map +0 -1
  133. package/dist/key-mapping-7k2ufK2b.mjs +0 -3
  134. package/dist/key-mapping-WLUmxjx1.mjs +0 -132
  135. package/dist/key-mapping-WLUmxjx1.mjs.map +0 -1
  136. package/dist/node-CP5WChgr.mjs.map +0 -1
  137. package/dist/progress-bar-IrUjkLfU.mjs.map +0 -1
  138. package/dist/reconciler-B8uxQxaU.mjs +0 -16482
  139. package/dist/reconciler-B8uxQxaU.mjs.map +0 -1
  140. package/dist/render-string-DVfgc8xr.mjs.map +0 -1
  141. package/dist/resvg-js-Cwipz-_J.mjs +0 -203
  142. package/dist/resvg-js-Cwipz-_J.mjs.map +0 -1
  143. package/dist/spinner-BmldKx0M.mjs.map +0 -1
  144. package/dist/src-C0sOQW-t.mjs +0 -3866
  145. package/dist/src-C0sOQW-t.mjs.map +0 -1
  146. package/dist/src-CJPXf3fC.mjs.map +0 -1
  147. package/dist/src-D8kLrQBT.mjs.map +0 -1
  148. package/dist/src-D_BS-as7.mjs.map +0 -1
  149. package/dist/theme.d.mts.map +0 -1
  150. package/dist/theme.mjs.map +0 -1
  151. package/dist/types-e4dpfbSa.mjs.map +0 -1
  152. package/dist/with-text-input-lUh9gYAG.d.mts.map +0 -1
  153. package/dist/wrapper-CE6GQ27z.mjs +0 -3527
  154. package/dist/wrapper-CE6GQ27z.mjs.map +0 -1
  155. package/dist/wrappers-JrEYTuKA.mjs.map +0 -1
  156. package/dist/yoga-adapter-B8LZpQcE.mjs +0 -2
@@ -1,2 +1,2 @@
1
- import { n as renderStringSync, t as renderString } from "./render-string-DVfgc8xr.mjs";
1
+ import { n as renderStringSync, t as renderString } from "./render-string-Cbuf63Ya.mjs";
2
2
  export { renderString, renderStringSync };
@@ -1,2 +1,2 @@
1
- import { $ as take, A as runThemed, B as LayoutOptions, C as TerminalLifecycleOptions, D as restoreTerminalState, E as performSuspend, Ed as parseKey, F as createRuntime, G as concat, H as layout, I as createBuffer, J as filterMap, K as debounce, L as DiffMode, M as run, N as PasteCallback, O as resumeTerminalState, P as usePasteCallback, Q as merge, R as diff, S as CTRL_Z, Su as RuntimeOptions, T as captureTerminalState, U as layoutSync, V as ensureLayoutEngine, W as batch, X as fromArrayWithDelay, Y as fromArray, Z as map, _ as StoreContext, _d as InputHandler, _o as useExit, _u as Provider, at as createStore, au as TermProvider, b as useAppShallow, bo as UseInputOptions, bu as RenderTarget, c as createSecondTick, ct as withFocusManagement, cu as createTermProvider, d as AppHandle, et as takeUntil, f as AppRunOptions, fu as Buffer, g as EventHandlers, gu as NamespacedEvent, h as EventHandlerContext, hu as EventData, it as StoreConfig, iu as TermEvents, j as RunOptions, k as RunThemedOptions, l as createTick, m as EventHandler, mu as Event, nt as zip, o as createAdaptiveTick, ot as defaultInit, ou as TermProviderOptions, p as AppRunner, pu as Dims, q as filter, rt as StoreApi, s as createFrameTick, st as silveryUpdate, su as TermState, tt as throttle, u as AppDefinition, v as createApp, vd as Key, vu as ProviderEvent, w as TerminalState, x as CTRL_C, xd as emptyKey, xo as useInput, xu as Runtime, y as useApp, yu as ProviderEventKey, z as render } from "./index-Bh3U1K09.mjs";
2
- export { AppDefinition, AppHandle, AppRunOptions, AppRunner, Buffer, CTRL_C, CTRL_Z, DiffMode, Dims, Event, EventData, EventHandler, EventHandlerContext, EventHandlers, InputHandler, Key, LayoutOptions, NamespacedEvent, PasteCallback as PasteHandler, Provider, ProviderEvent, ProviderEventKey, RenderTarget, RunOptions, RunThemedOptions, Runtime, RuntimeOptions, StoreApi, StoreConfig, StoreContext, TermEvents, TermProvider, TermProviderOptions, TermState, TerminalLifecycleOptions, TerminalState, UseInputOptions, batch, captureTerminalState, concat, createAdaptiveTick, createApp, createBuffer, createFrameTick, createRuntime, createSecondTick, createStore, createTermProvider, createTick, debounce, defaultInit, diff, emptyKey, ensureLayoutEngine, filter, filterMap, fromArray, fromArrayWithDelay, layout, layoutSync, map, merge, parseKey, performSuspend, render, restoreTerminalState, resumeTerminalState, run, runThemed, silveryUpdate, take, takeUntil, throttle, useApp, useAppShallow, useExit, useInput, usePasteCallback as usePaste, withFocusManagement, zip };
1
+ import { $ as fromArray, $d as Key, $u as ProviderEvent, A as RunThemedOptions, B as createBuffer, Bu as TermProvider, C as CTRL_Z, D as performSuspend, E as captureTerminalState, F as RunOptions, Fo as useExit, G as ensureLayoutEngine, H as diff, Hu as TermState, I as run, J as batch, Ju as Dims, K as layout, L as PasteCallback, M as ThemedProviderOptions, N as WrapWithThemedProviderResult, O as restoreTerminalState, P as wrapWithThemedProvider, Q as filterMap, Qd as InputHandler, Qu as Provider, R as usePasteCallback, Ro as UseInputOptions, S as CTRL_C, T as TerminalState, U as render, Uu as createTermProvider, V as DiffMode, Vu as TermProviderOptions, W as LayoutOptions, X as debounce, Xu as EventData, Y as concat, Yu as Event, Z as filter, Zu as NamespacedEvent, _ as EventHandlers, at as throttle, b as useApp, c as createFrameTick, ct as StoreConfig, d as AppDefinition, dt as silveryUpdate, ed as ProviderEventKey, et as fromArrayWithDelay, f as AppHandle, ft as withFocusManagement, g as EventHandlerContext, h as EventHandler, it as takeUntil, j as runThemed, k as resumeTerminalState, l as createSecondTick, lt as createStore, m as AppRunner, nd as Runtime, nf as emptyKey, nt as merge, ot as zip, p as AppRunOptions, q as layoutSync, qu as Buffer, rd as RuntimeOptions, rt as take, s as createAdaptiveTick, sf as parseKey, st as StoreApi, td as RenderTarget, tt as map, u as createTick, ut as defaultInit, v as StoreContext, w as TerminalLifecycleOptions, x as useAppShallow, y as createApp, z as createRuntime, zo as useInput, zu as TermEvents } from "./index-BXslOebb.mjs";
2
+ export { AppDefinition, AppHandle, AppRunOptions, AppRunner, Buffer, CTRL_C, CTRL_Z, DiffMode, Dims, Event, EventData, EventHandler, EventHandlerContext, EventHandlers, InputHandler, Key, LayoutOptions, NamespacedEvent, PasteCallback as PasteHandler, Provider, ProviderEvent, ProviderEventKey, RenderTarget, RunOptions, RunThemedOptions, Runtime, RuntimeOptions, StoreApi, StoreConfig, StoreContext, TermEvents, TermProvider, TermProviderOptions, TermState, TerminalLifecycleOptions, TerminalState, ThemedProviderOptions, UseInputOptions, WrapWithThemedProviderResult, batch, captureTerminalState, concat, createAdaptiveTick, createApp, createBuffer, createFrameTick, createRuntime, createSecondTick, createStore, createTermProvider, createTick, debounce, defaultInit, diff, emptyKey, ensureLayoutEngine, filter, filterMap, fromArray, fromArrayWithDelay, layout, layoutSync, map, merge, parseKey, performSuspend, render, restoreTerminalState, resumeTerminalState, run, runThemed, silveryUpdate, take, takeUntil, throttle, useApp, useAppShallow, useExit, useInput, usePasteCallback as usePaste, withFocusManagement, wrapWithThemedProvider, zip };
package/dist/runtime.mjs CHANGED
@@ -1,3 +1,3 @@
1
- import { A as concat, B as throttle, C as createBuffer, D as layout, E as ensureLayoutEngine, F as fromArrayWithDelay, G as withFocusManagement, H as createStore, I as map, L as merge, M as filter, N as filterMap, O as layoutSync, P as fromArray, R as take, S as createRuntime, T as render, Ti as useExit, U as defaultInit, V as zip, W as silveryUpdate, _ as CTRL_Z, a as createAdaptiveTick, b as restoreTerminalState, c as createTick, d as usePasteCallback, f as StoreContext, g as CTRL_C, h as useAppShallow, j as debounce, k as batch, l as runThemed, m as useApp, o as createFrameTick, p as createApp, s as createSecondTick, u as run, v as captureTerminalState, w as diff, x as resumeTerminalState, xa as useInput, y as performSuspend, z as takeUntil } from "./src-CJPXf3fC.mjs";
2
- import { Kt as parseKey, Rt as emptyKey, x as createTermProvider } from "./reconciler-B8uxQxaU.mjs";
3
- export { CTRL_C, CTRL_Z, StoreContext, batch, captureTerminalState, concat, createAdaptiveTick, createApp, createBuffer, createFrameTick, createRuntime, createSecondTick, createStore, createTermProvider, createTick, debounce, defaultInit, diff, emptyKey, ensureLayoutEngine, filter, filterMap, fromArray, fromArrayWithDelay, layout, layoutSync, map, merge, parseKey, performSuspend, render, restoreTerminalState, resumeTerminalState, run, runThemed, silveryUpdate, take, takeUntil, throttle, useApp, useAppShallow, useExit, useInput, usePasteCallback as usePaste, withFocusManagement, zip };
1
+ import { A as layoutSync, B as take, C as resumeTerminalState, D as render, E as diff, F as filterMap, Fi as useExit, G as defaultInit, H as throttle, I as fromArray, K as silveryUpdate, L as fromArrayWithDelay, M as concat, N as debounce, Na as useInput, O as ensureLayoutEngine, P as filter, R as map, S as restoreTerminalState, T as createBuffer, U as zip, V as takeUntil, W as createStore, _ as useAppShallow, b as captureTerminalState, c as createSecondTick, d as wrapWithThemedProvider, f as run, g as useApp, h as createApp, j as batch, k as layout, l as createTick, m as StoreContext, o as createAdaptiveTick, p as usePasteCallback, q as withFocusManagement, s as createFrameTick, u as runThemed, v as CTRL_C, w as createRuntime, x as performSuspend, y as CTRL_Z, z as merge } from "./src-C2uvC-r0.mjs";
2
+ import { Kt as parseKey, Rt as emptyKey, x as createTermProvider } from "./reconciler-Cwgm8hRR.mjs";
3
+ export { CTRL_C, CTRL_Z, StoreContext, batch, captureTerminalState, concat, createAdaptiveTick, createApp, createBuffer, createFrameTick, createRuntime, createSecondTick, createStore, createTermProvider, createTick, debounce, defaultInit, diff, emptyKey, ensureLayoutEngine, filter, filterMap, fromArray, fromArrayWithDelay, layout, layoutSync, map, merge, parseKey, performSuspend, render, restoreTerminalState, resumeTerminalState, run, runThemed, silveryUpdate, take, takeUntil, throttle, useApp, useAppShallow, useExit, useInput, usePasteCallback as usePaste, withFocusManagement, wrapWithThemedProvider, zip };
@@ -1,4 +1,4 @@
1
- import { c as SpinnerOptions, u as SpinnerStyle } from "./types-B4A8Ebba.mjs";
1
+ import { c as SpinnerOptions, u as SpinnerStyle } from "./types-BH_v3iMT.mjs";
2
2
 
3
3
  //#region packages/ag-react/src/ui/cli/spinner.d.ts
4
4
  /** Spinner animation frames by style */
@@ -124,4 +124,4 @@ interface CallableSpinner extends Disposable {
124
124
  declare function createSpinner(options?: SpinnerOptions): CallableSpinner;
125
125
  //#endregion
126
126
  export { createSpinner as i, SPINNER_FRAMES as n, Spinner as r, CallableSpinner as t };
127
- //# sourceMappingURL=spinner-BRkaJI0N.d.mts.map
127
+ //# sourceMappingURL=spinner-CGo34vyR.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spinner-BRkaJI0N.d.mts","names":[],"sources":["../packages/ag-react/src/ui/cli/spinner.ts"],"mappings":";;;;cASa,cAAA,EAAgB,MAAA,CAAO,YAAA;AA4BpC;;;;;;;;;;;AAAA,cAAa,OAAA;EAAA,QACH,IAAA;EAAA,QACA,KAAA;EAAA,QACA,KAAA;EAAA,QACA,MAAA;EAAA,QACA,UAAA;EAAA,QACA,QAAA;EAAA,QAEA,UAAA;EAAA,QACA,KAAA;EAAA,QACA,UAAA;cAEI,aAAA,YAAyB,cAAA;EAiBrB;EAAA,IALZ,WAAA,CAAA;EAoBJ;EAAA,IAfI,WAAA,CAAY,KAAA;EA2ChB;EAAA,IAnCI,QAAA,CAAA;EA2DI;;;EApDR,KAAA,CAAM,IAAA;EAkED;;;EAtCL,IAAA,CAAA;EA2DQ;;;EAnCR,OAAA,CAAQ,IAAA;EAsED;;;EA/DP,IAAA,CAAK,IAAA;EA+D+C;AAmBtD;;EA3EE,IAAA,CAAK,IAAA;EA2E4C;;;EApEjD,IAAA,CAAK,IAAA;EA0EL;;;EAnEA,KAAA,CAAA;EAAA,QAOQ,MAAA;EAAA,QAWA,cAAA;EAuDR;;;EAAA,CA9CC,MAAA,CAAO,OAAA;EAkEM;;;;;;;;;;;EAAA,OAnDP,KAAA,CAAM,aAAA,YAAyB,cAAA;AAAA;;;;;;;;;;;;;UAmBvB,eAAA,SAAwB,UAAA;;GAEtC,IAAA;;EAED,IAAA;;EAEA,OAAA,CAAQ,IAAA;;EAER,IAAA,CAAK,IAAA;;EAEL,IAAA,CAAK,IAAA;;EAEL,IAAA,CAAK,IAAA;AAAA;;;;;;;;;;;;;;;;;;iBAoBS,aAAA,CAAc,OAAA,GAAU,cAAA,GAAiB,eAAA"}
1
+ {"version":3,"file":"spinner-CGo34vyR.d.mts","names":[],"sources":["../packages/ag-react/src/ui/cli/spinner.ts"],"mappings":";;;;cASa,cAAA,EAAgB,MAAA,CAAO,YAAA;AA4BpC;;;;;;;;;;;AAAA,cAAa,OAAA;EAAA,QACH,IAAA;EAAA,QACA,KAAA;EAAA,QACA,KAAA;EAAA,QACA,MAAA;EAAA,QACA,UAAA;EAAA,QACA,QAAA;EAAA,QAEA,UAAA;EAAA,QACA,KAAA;EAAA,QACA,UAAA;cAEI,aAAA,YAAyB,cAAA;EAkBrB;EAAA,IALZ,WAAA,CAAA;EAoBJ;EAAA,IAfI,WAAA,CAAY,KAAA;EA2ChB;EAAA,IAnCI,QAAA,CAAA;EA2DI;;;EApDR,KAAA,CAAM,IAAA;EAkED;;;EAtCL,IAAA,CAAA;EA2DQ;;;EAnCR,OAAA,CAAQ,IAAA;EAsED;;;EA/DP,IAAA,CAAK,IAAA;EA+D+C;AAmBtD;;EA3EE,IAAA,CAAK,IAAA;EA2E4C;;;EApEjD,IAAA,CAAK,IAAA;EA0EL;;;EAnEA,KAAA,CAAA;EAAA,QAOQ,MAAA;EAAA,QAWA,cAAA;EAuDR;;;EAAA,CA9CC,MAAA,CAAO,OAAA;EAkEM;;;;;;;;;;;EAAA,OAnDP,KAAA,CAAM,aAAA,YAAyB,cAAA;AAAA;;;;;;;;;;;;;UAmBvB,eAAA,SAAwB,UAAA;;GAEtC,IAAA;;EAED,IAAA;;EAEA,OAAA,CAAQ,IAAA;;EAER,IAAA,CAAK,IAAA;;EAEL,IAAA,CAAK,IAAA;;EAEL,IAAA,CAAK,IAAA;AAAA;;;;;;;;;;;;;;;;;;iBAoBS,aAAA,CAAc,OAAA,GAAU,cAAA,GAAiB,eAAA"}
@@ -1,5 +1,5 @@
1
- import { X as detectColor, t as init_src, w as createStyle } from "./src-D_BS-as7.mjs";
2
- import { f as isTTY, i as CURSOR_HIDE, m as write, s as CURSOR_SHOW } from "./ansi-C6Qs1Wn2.mjs";
1
+ import { J as detectColor, O as createStyle, t as init_src } from "./src-NCKb8kE5.mjs";
2
+ import { f as isTTY, i as CURSOR_HIDE, m as write, s as CURSOR_SHOW } from "./ansi-CLOitHKx.mjs";
3
3
  //#region packages/ink/src/chalk.ts
4
4
  init_src();
5
5
  function toChalkLevel(cl) {
@@ -295,4 +295,4 @@ function createSpinner(options) {
295
295
  //#endregion
296
296
  export { chalk as a, createSpinner as i, SPINNER_INTERVALS as n, Spinner as r, SPINNER_FRAMES as t };
297
297
 
298
- //# sourceMappingURL=spinner-BmldKx0M.mjs.map
298
+ //# sourceMappingURL=spinner-CeOmcuw_.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spinner-CeOmcuw_.mjs","names":[],"sources":["../packages/ink/src/chalk.ts","../packages/ag-react/src/ui/cli/spinner.ts"],"sourcesContent":["/**\n * silvery/chalk — Drop-in chalk replacement powered by @silvery/ansi.\n *\n * ```ts\n * // Before:\n * import chalk from 'chalk'\n *\n * // After:\n * import chalk from 'silvery/chalk'\n * ```\n *\n * The default export is a chainable styling function with chalk-compatible API.\n * Under the hood it uses @silvery/ansi — no chalk dependency.\n *\n * @packageDocumentation\n */\n\nimport { createStyle, detectColor, type Style, type ColorLevel } from \"@silvery/ansi\"\n\n// =============================================================================\n// Color level conversion (chalk uses 0-3, silvery uses string|null)\n// =============================================================================\n\ntype ChalkLevel = 0 | 1 | 2 | 3\n\nfunction toChalkLevel(cl: ColorLevel | null): ChalkLevel {\n if (cl === null) return 0\n if (cl === \"basic\") return 1\n if (cl === \"256\") return 2\n return 3 // truecolor\n}\n\nfunction fromChalkLevel(level: ChalkLevel): ColorLevel | null {\n if (level === 0) return null\n if (level === 1) return \"basic\"\n if (level === 2) return \"256\"\n return \"truecolor\"\n}\n\n// =============================================================================\n// Default instance (auto-detected)\n// =============================================================================\n\nconst detectedColor =\n typeof process !== \"undefined\" && process.stdout ? detectColor(process.stdout) : null\n\n/**\n * Default chalk instance — drop-in replacement for `import chalk from 'chalk'`.\n *\n * Supports the full chainable API: `chalk.bold.red('error')`, `chalk.hex('#ff0')('hi')`, etc.\n * Also supports mutable `chalk.level` for chalk compat (0=none, 1=basic, 2=256, 3=truecolor).\n */\nconst chalk: Style = createStyle({ level: detectedColor })\nexport default chalk\n\n// =============================================================================\n// Named exports (chalk 5.x compatibility)\n// =============================================================================\n\n/**\n * Chalk constructor — creates a new style instance with a specific level.\n * Returns a callable Style (the constructor return overrides `this`).\n *\n * ```ts\n * const instance = new Chalk({ level: 3 })\n * console.log(instance.red('error'))\n * instance.level = 0 // disable colors\n * ```\n */\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface Chalk extends Style {}\nexport class Chalk {\n constructor(options?: { level?: ChalkLevel }) {\n // chalk compat: validate level is 0-3\n if (options?.level !== undefined) {\n const lvl = options.level\n if (typeof lvl !== \"number\" || !Number.isInteger(lvl) || lvl < 0 || lvl > 3) {\n throw new Error(\"The `level` option should be an integer from 0 to 3\")\n }\n }\n // Returning an object from a constructor overrides `this` — chalk compat pattern\n return createStyle({\n level: fromChalkLevel(options?.level ?? toChalkLevel(detectedColor)),\n }) as any\n }\n}\n\nexport type ChalkInstance = Style\n\n/**\n * Color support detection for stdout.\n * Returns false if no color, or an object with the chalk level.\n */\nconst detectedLevel = toChalkLevel(detectedColor)\nexport const supportsColor: false | { level: ChalkLevel } =\n detectedLevel === 0 ? false : { level: detectedLevel }\n\n/**\n * Color support detection for stderr.\n */\nexport const supportsColorStderr: false | { level: ChalkLevel } = (() => {\n if (!process?.stderr) return false\n const level = toChalkLevel(detectColor(process.stderr))\n return level === 0 ? false : { level }\n})()\n\n// =============================================================================\n// Chalk name lists (for programmatic access)\n// =============================================================================\n\nexport const modifierNames = [\n \"reset\",\n \"bold\",\n \"dim\",\n \"italic\",\n \"underline\",\n \"overline\",\n \"inverse\",\n \"hidden\",\n \"strikethrough\",\n \"visible\",\n] as const\n\nexport const foregroundColorNames = [\n \"black\",\n \"red\",\n \"green\",\n \"yellow\",\n \"blue\",\n \"magenta\",\n \"cyan\",\n \"white\",\n \"gray\",\n \"grey\",\n \"blackBright\",\n \"redBright\",\n \"greenBright\",\n \"yellowBright\",\n \"blueBright\",\n \"magentaBright\",\n \"cyanBright\",\n \"whiteBright\",\n] as const\n\nexport const backgroundColorNames = [\n \"bgBlack\",\n \"bgRed\",\n \"bgGreen\",\n \"bgYellow\",\n \"bgBlue\",\n \"bgMagenta\",\n \"bgCyan\",\n \"bgWhite\",\n \"bgGray\",\n \"bgGrey\",\n \"bgBlackBright\",\n \"bgRedBright\",\n \"bgGreenBright\",\n \"bgYellowBright\",\n \"bgBlueBright\",\n \"bgMagentaBright\",\n \"bgCyanBright\",\n \"bgWhiteBright\",\n] as const\n\nexport const colorNames = [...foregroundColorNames, ...backgroundColorNames] as const\n\n// Re-export detection utilities that chalk users often need\nexport { detectColor, toChalkLevel, fromChalkLevel }\nexport type { ColorLevel, ChalkLevel }\n","/**\n * CLI Spinner - Animated indeterminate progress indicator\n */\n\nimport chalk from \"@silvery/ink/chalk\"\nimport type { SpinnerOptions, SpinnerStyle } from \"../types.js\"\nimport { CURSOR_HIDE, CURSOR_SHOW, CURSOR_TO_START, CLEAR_LINE_END, write, isTTY } from \"./ansi\"\n\n/** Spinner animation frames by style */\nexport const SPINNER_FRAMES: Record<SpinnerStyle, string[]> = {\n dots: [\"⠋\", \"⠙\", \"⠹\", \"⠸\", \"⠼\", \"⠴\", \"⠦\", \"⠧\", \"⠇\", \"⠏\"],\n line: [\"-\", \"\\\\\", \"|\", \"/\"],\n arc: [\"◜\", \"◠\", \"◝\", \"◞\", \"◡\", \"◟\"],\n bounce: [\"⠁\", \"⠂\", \"⠄\", \"⠂\"],\n pulse: [\"█\", \"▓\", \"▒\", \"░\", \"▒\", \"▓\"],\n}\n\n/** Default intervals for each style (ms) */\nexport const SPINNER_INTERVALS: Record<SpinnerStyle, number> = {\n dots: 80,\n line: 120,\n arc: 100,\n bounce: 120,\n pulse: 100,\n}\n\n/**\n * Spinner class for CLI progress indication\n *\n * @example\n * ```ts\n * const spinner = new Spinner(\"Loading...\");\n * spinner.start();\n * await doWork();\n * spinner.succeed(\"Done!\");\n * ```\n */\nexport class Spinner {\n private text: string\n private style: SpinnerStyle\n private color: string\n private stream: NodeJS.WriteStream\n private hideCursor: boolean\n private interval: number\n\n private frameIndex = 0\n private timer: ReturnType<typeof setInterval> | null = null\n private isSpinning = false\n\n constructor(textOrOptions?: string | SpinnerOptions) {\n const options: SpinnerOptions =\n typeof textOrOptions === \"string\" ? { text: textOrOptions } : (textOrOptions ?? {})\n\n this.text = options.text ?? \"\"\n this.style = options.style ?? \"dots\"\n this.color = options.color ?? \"cyan\"\n this.stream = options.stream ?? process.stdout\n this.hideCursor = options.hideCursor ?? true\n this.interval = options.interval ?? SPINNER_INTERVALS[this.style]\n }\n\n /** Get current spinner text */\n get currentText(): string {\n return this.text\n }\n\n /** Set spinner text (updates immediately if spinning) */\n set currentText(value: string) {\n this.text = value\n if (this.isSpinning) {\n this.render()\n }\n }\n\n /** Check if spinner is currently active */\n get spinning(): boolean {\n return this.isSpinning\n }\n\n /**\n * Start the spinner animation\n */\n start(text?: string): this {\n if (text !== undefined) {\n this.text = text\n }\n\n if (this.isSpinning) {\n return this\n }\n\n this.isSpinning = true\n this.frameIndex = 0\n\n if (this.hideCursor && isTTY(this.stream)) {\n write(CURSOR_HIDE, this.stream)\n }\n\n this.render()\n this.timer = setInterval(() => {\n this.frameIndex = (this.frameIndex + 1) % SPINNER_FRAMES[this.style].length\n this.render()\n }, this.interval)\n\n return this\n }\n\n /**\n * Stop the spinner\n */\n stop(): this {\n if (!this.isSpinning) {\n return this\n }\n\n this.isSpinning = false\n\n if (this.timer) {\n clearInterval(this.timer)\n this.timer = null\n }\n\n this.clear()\n\n if (this.hideCursor && isTTY(this.stream)) {\n write(CURSOR_SHOW, this.stream)\n }\n\n return this\n }\n\n /**\n * Stop with success message (green checkmark)\n */\n succeed(text?: string): this {\n return this.stopWithSymbol(chalk.green(\"✔\"), text ?? this.text)\n }\n\n /**\n * Stop with failure message (red X)\n */\n fail(text?: string): this {\n return this.stopWithSymbol(chalk.red(\"✖\"), text ?? this.text)\n }\n\n /**\n * Stop with warning message (yellow warning)\n */\n warn(text?: string): this {\n return this.stopWithSymbol(chalk.yellow(\"⚠\"), text ?? this.text)\n }\n\n /**\n * Stop with info message (blue info)\n */\n info(text?: string): this {\n return this.stopWithSymbol(chalk.blue(\"ℹ\"), text ?? this.text)\n }\n\n /**\n * Clear the spinner line\n */\n clear(): this {\n if (isTTY(this.stream)) {\n write(`${CURSOR_TO_START}${CLEAR_LINE_END}`, this.stream)\n }\n return this\n }\n\n private render(): void {\n const frame = SPINNER_FRAMES[this.style][this.frameIndex]\n const colorFn = (chalk as unknown as Record<string, (s: string) => string>)[this.color]\n const coloredFrame = colorFn ? colorFn(frame!) : frame!\n const output = this.text ? `${coloredFrame} ${this.text}` : coloredFrame\n\n if (isTTY(this.stream)) {\n write(`${CURSOR_TO_START}${output}${CLEAR_LINE_END}`, this.stream)\n }\n }\n\n private stopWithSymbol(symbol: string, text: string): this {\n this.stop()\n write(`${symbol} ${text}\\n`, this.stream)\n return this\n }\n\n /**\n * Dispose the spinner (calls stop)\n */\n [Symbol.dispose](): void {\n this.stop()\n }\n\n /**\n * Static helper to quickly start a spinner\n * Returns a stop function\n *\n * @example\n * ```ts\n * const stop = Spinner.start(\"Loading...\");\n * await doWork();\n * stop();\n * ```\n */\n static start(textOrOptions?: string | SpinnerOptions): () => void {\n const spinner = new Spinner(textOrOptions)\n spinner.start()\n return () => spinner.stop()\n }\n}\n\n/**\n * Callable spinner interface - call with text to show/update\n *\n * @example\n * ```ts\n * {\n * using spinner = createSpinner({ style: \"dots\" });\n * spinner(\"Loading...\"); // Shows spinner with text\n * spinner(\"Still loading...\"); // Updates text\n * } // Auto-stops via Symbol.dispose\n * ```\n */\nexport interface CallableSpinner extends Disposable {\n /** Call with text to show/update the spinner */\n (text: string): void\n /** Stop the spinner */\n stop(): void\n /** Stop with success message (green checkmark) */\n succeed(text?: string): void\n /** Stop with failure message (red X) */\n fail(text?: string): void\n /** Stop with warning message (yellow warning) */\n warn(text?: string): void\n /** Stop with info message (blue info) */\n info(text?: string): void\n}\n\n/**\n * Create a callable, disposable spinner\n *\n * The spinner is lazy - it won't show anything until you call it with text.\n * Use with `using` for automatic cleanup:\n *\n * @example\n * ```ts\n * {\n * using spinner = createSpinner({ style: \"dots\" });\n * // Nothing visible yet\n *\n * spinner(\"Loading repo...\"); // Now shows spinner\n * spinner(\"Applying events...\"); // Updates text\n * } // Auto-stops via Symbol.dispose\n * ```\n */\nexport function createSpinner(options?: SpinnerOptions): CallableSpinner {\n const spinner = new Spinner({ ...options, text: \"\" })\n\n const callable = ((text: string) => {\n // Always restart if not spinning (handles initial call and after succeed/fail/etc)\n if (!spinner.spinning) {\n spinner.start(text)\n } else {\n spinner.currentText = text\n }\n }) as CallableSpinner\n\n callable.stop = () => spinner.stop()\n callable.succeed = (text) => spinner.succeed(text)\n callable.fail = (text) => spinner.fail(text)\n callable.warn = (text) => spinner.warn(text)\n callable.info = (text) => spinner.info(text)\n callable[Symbol.dispose] = () => spinner.stop()\n\n return callable\n}\n"],"mappings":"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"}