panelui-native 0.13.0 → 0.14.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 (91) hide show
  1. package/README.md +39 -23
  2. package/lib/module/components/button/index.js +12 -9
  3. package/lib/module/components/button/index.js.map +1 -1
  4. package/lib/module/components/chip/index.js +313 -0
  5. package/lib/module/components/chip/index.js.map +1 -0
  6. package/lib/module/components/frame/index.js +41 -39
  7. package/lib/module/components/frame/index.js.map +1 -1
  8. package/lib/module/components/heatmap-chart/index.js +772 -0
  9. package/lib/module/components/heatmap-chart/index.js.map +1 -0
  10. package/lib/module/components/input/index.js +4 -0
  11. package/lib/module/components/input/index.js.map +1 -1
  12. package/lib/module/components/scroll-canvas/index.js +175 -0
  13. package/lib/module/components/scroll-canvas/index.js.map +1 -0
  14. package/lib/module/components/scroll-text/index.js +213 -0
  15. package/lib/module/components/scroll-text/index.js.map +1 -0
  16. package/lib/module/components/select/index.js +20 -24
  17. package/lib/module/components/select/index.js.map +1 -1
  18. package/lib/module/components/slider/index.js +2 -5
  19. package/lib/module/components/slider/index.js.map +1 -1
  20. package/lib/module/components/switch/index.js +15 -17
  21. package/lib/module/components/switch/index.js.map +1 -1
  22. package/lib/module/components/thinking-orb/index.js +741 -0
  23. package/lib/module/components/thinking-orb/index.js.map +1 -0
  24. package/lib/module/components/toggle-button/index.js +12 -3
  25. package/lib/module/components/toggle-button/index.js.map +1 -1
  26. package/lib/module/hooks/index.js +1 -0
  27. package/lib/module/hooks/index.js.map +1 -1
  28. package/lib/module/hooks/use-keyboard-avoidance.js +99 -59
  29. package/lib/module/hooks/use-keyboard-avoidance.js.map +1 -1
  30. package/lib/module/hooks/use-reveal-progress.js +75 -0
  31. package/lib/module/hooks/use-reveal-progress.js.map +1 -0
  32. package/lib/module/index.js +6 -0
  33. package/lib/module/index.js.map +1 -1
  34. package/lib/module/native/index.js.map +1 -1
  35. package/lib/module/primitives/keyboard-avoider.js +21 -2
  36. package/lib/module/primitives/keyboard-avoider.js.map +1 -1
  37. package/lib/module/primitives/scroll-progress.js +114 -0
  38. package/lib/module/primitives/scroll-progress.js.map +1 -0
  39. package/lib/typescript/src/components/button/index.d.ts +3 -4
  40. package/lib/typescript/src/components/button/index.d.ts.map +1 -1
  41. package/lib/typescript/src/components/chip/index.d.ts +304 -0
  42. package/lib/typescript/src/components/chip/index.d.ts.map +1 -0
  43. package/lib/typescript/src/components/frame/index.d.ts +15 -13
  44. package/lib/typescript/src/components/frame/index.d.ts.map +1 -1
  45. package/lib/typescript/src/components/heatmap-chart/index.d.ts +260 -0
  46. package/lib/typescript/src/components/heatmap-chart/index.d.ts.map +1 -0
  47. package/lib/typescript/src/components/input/index.d.ts +19 -4
  48. package/lib/typescript/src/components/input/index.d.ts.map +1 -1
  49. package/lib/typescript/src/components/scroll-canvas/index.d.ts +66 -0
  50. package/lib/typescript/src/components/scroll-canvas/index.d.ts.map +1 -0
  51. package/lib/typescript/src/components/scroll-text/index.d.ts +46 -0
  52. package/lib/typescript/src/components/scroll-text/index.d.ts.map +1 -0
  53. package/lib/typescript/src/components/select/index.d.ts.map +1 -1
  54. package/lib/typescript/src/components/slider/index.d.ts.map +1 -1
  55. package/lib/typescript/src/components/switch/index.d.ts.map +1 -1
  56. package/lib/typescript/src/components/thinking-orb/index.d.ts +28 -0
  57. package/lib/typescript/src/components/thinking-orb/index.d.ts.map +1 -0
  58. package/lib/typescript/src/components/toggle-button/index.d.ts +12 -0
  59. package/lib/typescript/src/components/toggle-button/index.d.ts.map +1 -1
  60. package/lib/typescript/src/hooks/index.d.ts +2 -1
  61. package/lib/typescript/src/hooks/index.d.ts.map +1 -1
  62. package/lib/typescript/src/hooks/use-keyboard-avoidance.d.ts +16 -3
  63. package/lib/typescript/src/hooks/use-keyboard-avoidance.d.ts.map +1 -1
  64. package/lib/typescript/src/hooks/use-reveal-progress.d.ts +56 -0
  65. package/lib/typescript/src/hooks/use-reveal-progress.d.ts.map +1 -0
  66. package/lib/typescript/src/index.d.ts +6 -0
  67. package/lib/typescript/src/index.d.ts.map +1 -1
  68. package/lib/typescript/src/native/index.d.ts +15 -7
  69. package/lib/typescript/src/native/index.d.ts.map +1 -1
  70. package/lib/typescript/src/primitives/keyboard-avoider.d.ts +30 -3
  71. package/lib/typescript/src/primitives/keyboard-avoider.d.ts.map +1 -1
  72. package/lib/typescript/src/primitives/scroll-progress.d.ts +61 -0
  73. package/lib/typescript/src/primitives/scroll-progress.d.ts.map +1 -0
  74. package/package.json +1 -1
  75. package/src/components/button/index.tsx +13 -11
  76. package/src/components/frame/index.tsx +39 -50
  77. package/src/components/heatmap-chart/index.tsx +1024 -0
  78. package/src/components/input/index.tsx +23 -4
  79. package/src/components/scroll-canvas/index.tsx +220 -0
  80. package/src/components/scroll-text/index.tsx +277 -0
  81. package/src/components/select/index.tsx +4 -9
  82. package/src/components/slider/index.tsx +4 -7
  83. package/src/components/switch/index.tsx +5 -8
  84. package/src/components/thinking-orb/index.tsx +792 -0
  85. package/src/hooks/index.ts +6 -0
  86. package/src/hooks/use-keyboard-avoidance.ts +111 -65
  87. package/src/hooks/use-reveal-progress.ts +106 -0
  88. package/src/index.ts +38 -0
  89. package/src/native/index.ts +15 -7
  90. package/src/primitives/keyboard-avoider.tsx +41 -4
  91. package/src/primitives/scroll-progress.tsx +167 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useEffect","View","Animated","runOnUI","useAnimatedProps","useFrameCallback","useReducedMotion","useSharedValue","Svg","Path","useCSSVariable","cn","jsx","_jsx","AnimatedPath","createAnimatedComponent","BUCKETS","MIN_INK","MIN_RADIUS","STILL_FRAME","STATE_LABEL","working","searching","solving","listening","composing","shaping","PROFILES","md","speed","rows","density","radius","sm","hashD","a","b","h","Math","sin","floor","angleDelta","atan2","cos","q","value","round","radiusScale","size","dot","out","x","y","r","ink","bucket","min","max","rr","d","project","z","sy","cy","st","ct","ox","oy","scale","x1","z1","y1","drawWorking","t","p","c","R","rs","v","orbit","h1","h2","h3","ro","theta","PI","phi","acos","nx","ny","nz","ul","hypot","ux","uy","vx","vy","vz","k","ca","sa","depth","m","drawSearching","spin","tilt","cySpin","scan","li","lat","cosLat","sinLat","count","abs","lj","lon","delta","boost","exp","drawSolving","yaw","moves","slot","rest","cycle","tc","amount","active","i","push","index","local","eased","undo","inActive","axis","lo","coord","dir","y2","x2","drawListening","ri","w","crest","drawComposing","shell","golden","sqrt","rad","ta","uz","lanes","half","laneOffset","edge","wobble","off","l","SHAPES","shapePoint","f","verts","length","n","total","j","target","ax","ay","bx","by","len","ff","drawShaping","hold","morph","seg","shapes","raw","spread","samples","px","py","lengths","pulse","walked","renderFrame","state","BUCKET_INDICES","Array","from","_unused","Bucket","paths","animatedProps","fill","fillOpacity","ThinkingOrb","className","paused","color","accessibilityLabel","style","props","reducedMotion","foreground","profile","clock","still","frame","info","timeSincePreviousFrame","setActive","accessibilityRole","width","height","children","viewBox","map","displayName"],"sourceRoot":"../../../../src","sources":["components/thinking-orb/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -35,6 +35,7 @@ import { IconColorProvider } from "../../icons/index.js";
35
35
  import { AnimatedPressable } from "../../primitives/animated-pressable.js";
36
36
  import { Text } from "../../primitives/text.js";
37
37
  import { cn } from "../../utils/cn.js";
38
+ import { selectionTick } from "../../utils/haptics.js";
38
39
  import { jsx as _jsx } from "react/jsx-runtime";
39
40
  const toggleVariants = tv({
40
41
  slots: {
@@ -127,6 +128,7 @@ const ToggleButtonGroup = /*#__PURE__*/forwardRef(({
127
128
  disabled = false,
128
129
  variant,
129
130
  size,
131
+ haptics,
130
132
  children,
131
133
  ...props
132
134
  }, ref) => {
@@ -147,8 +149,9 @@ const ToggleButtonGroup = /*#__PURE__*/forwardRef(({
147
149
  toggle,
148
150
  disabled,
149
151
  variant,
150
- size
151
- }), [selection, toggle, disabled, variant, size]);
152
+ size,
153
+ haptics
154
+ }), [selection, toggle, disabled, variant, size, haptics]);
152
155
  return /*#__PURE__*/_jsx(ToggleGroupContext.Provider, {
153
156
  value: context,
154
157
  children: /*#__PURE__*/_jsx(View, {
@@ -194,6 +197,7 @@ const ToggleButtonRoot = /*#__PURE__*/forwardRef(({
194
197
  disabled,
195
198
  variant,
196
199
  size,
200
+ haptics,
197
201
  iconOnly = false,
198
202
  selectedClassName,
199
203
  unselectedClassName,
@@ -211,6 +215,7 @@ const ToggleButtonRoot = /*#__PURE__*/forwardRef(({
211
215
  */
212
216
  const selected = group && id ? group.isSelected(id) : selectedProp ?? internal;
213
217
  const isDisabled = disabled || (group?.disabled ?? false);
218
+ const enableHaptics = haptics ?? group?.haptics ?? false;
214
219
  const slots = toggleVariants({
215
220
  variant: variant ?? group?.variant,
216
221
  size: size ?? group?.size,
@@ -226,6 +231,10 @@ const ToggleButtonRoot = /*#__PURE__*/forwardRef(({
226
231
  const tint = selected ? onColor : offColor;
227
232
  const handlePress = useCallback(event => {
228
233
  onPress?.(event);
234
+ // A tick per tap, not per resolved-state change — a single-select
235
+ // group flips two buttons on every pick, and one buzz is the honest
236
+ // count of "the user pressed something".
237
+ if (enableHaptics) selectionTick();
229
238
  if (group && id) {
230
239
  group.toggle(id);
231
240
  return;
@@ -233,7 +242,7 @@ const ToggleButtonRoot = /*#__PURE__*/forwardRef(({
233
242
  const next = !selected;
234
243
  if (selectedProp === undefined) setInternal(next);
235
244
  onSelectedChange?.(next);
236
- }, [onPress, group, id, selected, selectedProp, onSelectedChange]);
245
+ }, [onPress, enableHaptics, group, id, selected, selectedProp, onSelectedChange]);
237
246
  const state = useMemo(() => ({
238
247
  selected,
239
248
  disabled: isDisabled
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","forwardRef","useCallback","useContext","useMemo","useState","View","tv","useCSSVariable","IconColorProvider","AnimatedPressable","Text","cn","jsx","_jsx","toggleVariants","slots","root","label","variants","variant","default","ghost","size","sm","md","lg","selected","true","false","iconOnly","disabled","compoundVariants","class","defaultVariants","ToggleGroupContext","ToggleButtonGroup","className","selectionMode","value","defaultValue","onValueChange","children","props","ref","isControlled","undefined","internal","setInternal","selection","toggle","id","has","includes","next","filter","item","context","isSelected","Provider","accessibilityRole","displayName","ToggleStateContext","useToggleButton","state","Error","ToggleButtonRoot","labelClassName","selectedProp","defaultSelected","onSelectedChange","selectedClassName","unselectedClassName","onPress","group","isDisabled","onColor","offColor","tint","handlePress","event","color","accessibilityState","checked","ToggleButtonLabel","ToggleButton","Object","assign","Label"],"sourceRoot":"../../../../src","sources":["components/toggle-button/index.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SACEA,aAAa,EACbC,UAAU,EACVC,WAAW,EACXC,UAAU,EACVC,OAAO,EACPC,QAAQ,QAEH,OAAO;AACd,SAASC,IAAI,QAAwB,cAAc;AACnD,SAASC,EAAE,QAA2B,mBAAmB;AACzD,SAASC,cAAc,QAAQ,SAAS;AACxC,SAASC,iBAAiB,QAAQ,sBAAa;AAC/C,SACEC,iBAAiB,QAEZ,wCAAqC;AAC5C,SAASC,IAAI,QAAQ,0BAAuB;AAC5C,SAASC,EAAE,QAAQ,mBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEpC,MAAMC,cAAc,GAAGR,EAAE,CAAC;EACxBS,KAAK,EAAE;IACLC,IAAI,EAAE,iFAAiF;IACvFC,KAAK,EAAE;EACT,CAAC;EACDC,QAAQ,EAAE;IACRC,OAAO,EAAE;MACP;MACAC,OAAO,EAAE;QAAEJ,IAAI,EAAE;MAAe,CAAC;MACjC;MACAK,KAAK,EAAE;QAAEL,IAAI,EAAE;MAAiB;IAClC,CAAC;IACDM,IAAI,EAAE;MACJC,EAAE,EAAE;QAAEP,IAAI,EAAE,oBAAoB;QAAEC,KAAK,EAAE;MAAU,CAAC;MACpDO,EAAE,EAAE;QAAER,IAAI,EAAE,WAAW;QAAEC,KAAK,EAAE;MAAY,CAAC;MAC7CQ,EAAE,EAAE;QAAET,IAAI,EAAE,WAAW;QAAEC,KAAK,EAAE;MAAU;IAC5C,CAAC;IACDS,QAAQ,EAAE;MACRC,IAAI,EAAE;QAAEX,IAAI,EAAE,6BAA6B;QAAEC,KAAK,EAAE;MAAyB,CAAC;MAC9EW,KAAK,EAAE;QAAEX,KAAK,EAAE;MAAwB;IAC1C,CAAC;IACDY,QAAQ,EAAE;MACRF,IAAI,EAAE;QAAEX,IAAI,EAAE;MAAO;IACvB,CAAC;IACDc,QAAQ,EAAE;MACRH,IAAI,EAAE;QAAEX,IAAI,EAAE;MAAiB;IACjC;EACF,CAAC;EACDe,gBAAgB,EAAE;EAChB;EACA;IAAEF,QAAQ,EAAE,IAAI;IAAEP,IAAI,EAAE,IAAI;IAAEU,KAAK,EAAE;MAAEhB,IAAI,EAAE;IAAM;EAAE,CAAC,EACtD;IAAEa,QAAQ,EAAE,IAAI;IAAEP,IAAI,EAAE,IAAI;IAAEU,KAAK,EAAE;MAAEhB,IAAI,EAAE;IAAO;EAAE,CAAC,EACvD;IAAEa,QAAQ,EAAE,IAAI;IAAEP,IAAI,EAAE,IAAI;IAAEU,KAAK,EAAE;MAAEhB,IAAI,EAAE;IAAO;EAAE,CAAC,CACxD;EACDiB,eAAe,EAAE;IACfd,OAAO,EAAE,SAAS;IAClBG,IAAI,EAAE;EACR;AACF,CAAC,CAAC;;AAOF;AACA;AACA;;AAUA,MAAMY,kBAAkB,gBAAGnC,aAAa,CAAiC,IAAI,CAAC;AAsB9E,MAAMoC,iBAAiB,gBAAGnC,UAAU,CAClC,CACE;EACEoC,SAAS;EACTC,aAAa,GAAG,UAAU;EAC1BC,KAAK;EACLC,YAAY,GAAG,EAAE;EACjBC,aAAa;EACbV,QAAQ,GAAG,KAAK;EAChBX,OAAO;EACPG,IAAI;EACJmB,QAAQ;EACR,GAAGC;AACL,CAAC,EACDC,GAAG,KACA;EACH,MAAMC,YAAY,GAAGN,KAAK,KAAKO,SAAS;EACxC,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAG3C,QAAQ,CAAWmC,YAAY,CAAC;EAChE,MAAMS,SAAS,GAAGJ,YAAY,GAAGN,KAAK,GAAGQ,QAAQ;EAEjD,MAAMG,MAAM,GAAGhD,WAAW,CACvBiD,EAAU,IAAK;IACd,MAAMC,GAAG,GAAGH,SAAS,CAACI,QAAQ,CAACF,EAAE,CAAC;IAClC,MAAMG,IAAI,GACRhB,aAAa,KAAK,QAAQ;IACtB;IACA;IACAc,GAAG,GACD,EAAE,GACF,CAACD,EAAE,CAAC,GACNC,GAAG,GACDH,SAAS,CAACM,MAAM,CAAEC,IAAI,IAAKA,IAAI,KAAKL,EAAE,CAAC,GACvC,CAAC,GAAGF,SAAS,EAAEE,EAAE,CAAC;IAE1B,IAAI,CAACN,YAAY,EAAEG,WAAW,CAACM,IAAI,CAAC;IACpCb,aAAa,GAAGa,IAAI,CAAC;EACvB,CAAC,EACD,CAACL,SAAS,EAAEX,aAAa,EAAEO,YAAY,EAAEJ,aAAa,CACxD,CAAC;EAED,MAAMgB,OAAO,GAAGrD,OAAO,CACrB,OAAO;IACLsD,UAAU,EAAGP,EAAE,IAAKF,SAAS,CAACI,QAAQ,CAACF,EAAE,CAAC;IAC1CD,MAAM;IACNnB,QAAQ;IACRX,OAAO;IACPG;EACF,CAAC,CAAC,EACF,CAAC0B,SAAS,EAAEC,MAAM,EAAEnB,QAAQ,EAAEX,OAAO,EAAEG,IAAI,CAC7C,CAAC;EAED,oBACET,IAAA,CAACqB,kBAAkB,CAACwB,QAAQ;IAACpB,KAAK,EAAEkB,OAAQ;IAAAf,QAAA,eAC1C5B,IAAA,CAACR,IAAI;MACHsC,GAAG,EAAEA;MACL;MACA;MACA;MAAA;MACAgB,iBAAiB,EAAEtB,aAAa,KAAK,QAAQ,GAAG,YAAY,GAAG,SAAU;MACzED,SAAS,EAAEzB,EAAE,CAAC,+BAA+B,EAAEyB,SAAS,CAAE;MAAA,GACtDM,KAAK;MAAAD,QAAA,EAERA;IAAQ,CACL;EAAC,CACoB,CAAC;AAElC,CACF,CAAC;AACDN,iBAAiB,CAACyB,WAAW,GAAG,mBAAmB;;AAEnD;AACA;AACA;;AAOA,MAAMC,kBAAkB,gBAAG9D,aAAa,CAA0B,IAAI,CAAC;;AAEvE;AACA;AACA;AACA;AACA,OAAO,SAAS+D,eAAeA,CAAA,EAAqB;EAClD,MAAMC,KAAK,GAAG7D,UAAU,CAAC2D,kBAAkB,CAAC;EAC5C,IAAI,CAACE,KAAK,EAAE;IACV,MAAM,IAAIC,KAAK,CAAC,sDAAsD,CAAC;EACzE;EACA,OAAOD,KAAK;AACd;AAyBA,MAAME,gBAAgB,gBAAGjE,UAAU,CACjC,CACE;EACEyC,QAAQ;EACRL,SAAS;EACT8B,cAAc;EACdhB,EAAE;EACFxB,QAAQ,EAAEyC,YAAY;EACtBC,eAAe,GAAG,KAAK;EACvBC,gBAAgB;EAChBvC,QAAQ;EACRX,OAAO;EACPG,IAAI;EACJO,QAAQ,GAAG,KAAK;EAChByC,iBAAiB;EACjBC,mBAAmB;EACnBC,OAAO;EACP,GAAG9B;AACL,CAAC,EACDC,GAAG,KACA;EACH,MAAM8B,KAAK,GAAGvE,UAAU,CAACgC,kBAAkB,CAAC;EAC5C,MAAM,CAACY,QAAQ,EAAEC,WAAW,CAAC,GAAG3C,QAAQ,CAACgE,eAAe,CAAC;;EAEzD;AACJ;AACA;AACA;AACA;AACA;EACI,MAAM1C,QAAQ,GAAG+C,KAAK,IAAIvB,EAAE,GAAGuB,KAAK,CAAChB,UAAU,CAACP,EAAE,CAAC,GAAIiB,YAAY,IAAIrB,QAAS;EAChF,MAAM4B,UAAU,GAAG5C,QAAQ,KAAK2C,KAAK,EAAE3C,QAAQ,IAAI,KAAK,CAAC;EAEzD,MAAMf,KAAK,GAAGD,cAAc,CAAC;IAC3BK,OAAO,EAAEA,OAAO,IAAIsD,KAAK,EAAEtD,OAAO;IAClCG,IAAI,EAAEA,IAAI,IAAImD,KAAK,EAAEnD,IAAI;IACzBI,QAAQ;IACRG,QAAQ;IACRC,QAAQ,EAAE4C;EACZ,CAAC,CAAC;;EAEF;EACA;EACA,MAAMC,OAAO,GAAGpE,cAAc,CAAC,2BAA2B,CAAC;EAC3D,MAAMqE,QAAQ,GAAGrE,cAAc,CAAC,0BAA0B,CAAC;EAC3D,MAAMsE,IAAI,GAAGnD,QAAQ,GAAGiD,OAAO,GAAGC,QAAQ;EAE1C,MAAME,WAAW,GAAG7E,WAAW,CAC5B8E,KAAK,IAAK;IACTP,OAAO,GAAGO,KAAK,CAAC;IAChB,IAAIN,KAAK,IAAIvB,EAAE,EAAE;MACfuB,KAAK,CAACxB,MAAM,CAACC,EAAE,CAAC;MAChB;IACF;IACA,MAAMG,IAAI,GAAG,CAAC3B,QAAQ;IACtB,IAAIyC,YAAY,KAAKtB,SAAS,EAAEE,WAAW,CAACM,IAAI,CAAC;IACjDgB,gBAAgB,GAAGhB,IAAI,CAAC;EAC1B,CAAC,EACD,CAACmB,OAAO,EAAEC,KAAK,EAAEvB,EAAE,EAAExB,QAAQ,EAAEyC,YAAY,EAAEE,gBAAgB,CAC/D,CAAC;EAED,MAAMN,KAAK,GAAG5D,OAAO,CACnB,OAAO;IAAEuB,QAAQ;IAAEI,QAAQ,EAAE4C;EAAW,CAAC,CAAC,EAC1C,CAAChD,QAAQ,EAAEgD,UAAU,CACvB,CAAC;EAED,oBACE7D,IAAA,CAACgD,kBAAkB,CAACH,QAAQ;IAACpB,KAAK,EAAEyB,KAAM;IAAAtB,QAAA,eACxC5B,IAAA,CAACL,iBAAiB;MAACwE,KAAK,EAAE,OAAOH,IAAI,KAAK,QAAQ,GAAGA,IAAI,GAAGhC,SAAU;MAAAJ,QAAA,eACpE5B,IAAA,CAACJ,iBAAiB;QAChBkC,GAAG,EAAEA,GAAI;QACTgB,iBAAiB,EAAC;QAClB;QACA;QACA;QAAA;QACAsB,kBAAkB,EAAE;UAAEC,OAAO,EAAExD,QAAQ;UAAEI,QAAQ,EAAE4C,UAAU;UAAEhD;QAAS,CAAE;QAC1E,gBAAcA,QAAS;QACvBI,QAAQ,EAAE4C,UAAW;QACrBF,OAAO,EAAEM,WAAY;QACrB1C,SAAS,EAAEzB,EAAE,CACXI,KAAK,CAACC,IAAI,CAAC;UAAEoB;QAAU,CAAC,CAAC,EACzBV,QAAQ,GAAG4C,iBAAiB,GAAGC,mBACjC,CAAE;QAAA,GACE7B,KAAK;QAAAD,QAAA,EAER,OAAOA,QAAQ,KAAK,QAAQ,gBAC3B5B,IAAA,CAACH,IAAI;UAAC0B,SAAS,EAAErB,KAAK,CAACE,KAAK,CAAC;YAAEmB,SAAS,EAAE8B;UAAe,CAAC,CAAE;UAAAzB,QAAA,EACzDA;QAAQ,CACL,CAAC,GAEPA;MACD,CACgB;IAAC,CACH;EAAC,CACO,CAAC;AAElC,CACF,CAAC;AACDwB,gBAAgB,CAACL,WAAW,GAAG,cAAc;AAO7C;AACA;AACA;AACA;AACA;AACA,SAASuB,iBAAiBA,CAAC;EAAE/C,SAAS;EAAEK;AAAiC,CAAC,EAAE;EAC1E,MAAM;IAAEf;EAAS,CAAC,GAAGoC,eAAe,CAAC,CAAC;EAEtC,oBACEjD,IAAA,CAACH,IAAI;IACH0B,SAAS,EAAEzB,EAAE,CACX,aAAa,EACbe,QAAQ,GAAG,wBAAwB,GAAG,uBAAuB,EAC7DU,SACF,CAAE;IAAAK,QAAA,EAEDA;EAAQ,CACL,CAAC;AAEX;AACA0C,iBAAiB,CAACvB,WAAW,GAAG,oBAAoB;AAEpD,OAAO,MAAMwB,YAAY,GAAGC,MAAM,CAACC,MAAM,CAACrB,gBAAgB,EAAE;EAC1DsB,KAAK,EAAEJ;AACT,CAAC,CAAC;AAEF,SAAShD,iBAAiB","ignoreList":[]}
1
+ {"version":3,"names":["createContext","forwardRef","useCallback","useContext","useMemo","useState","View","tv","useCSSVariable","IconColorProvider","AnimatedPressable","Text","cn","selectionTick","jsx","_jsx","toggleVariants","slots","root","label","variants","variant","default","ghost","size","sm","md","lg","selected","true","false","iconOnly","disabled","compoundVariants","class","defaultVariants","ToggleGroupContext","ToggleButtonGroup","className","selectionMode","value","defaultValue","onValueChange","haptics","children","props","ref","isControlled","undefined","internal","setInternal","selection","toggle","id","has","includes","next","filter","item","context","isSelected","Provider","accessibilityRole","displayName","ToggleStateContext","useToggleButton","state","Error","ToggleButtonRoot","labelClassName","selectedProp","defaultSelected","onSelectedChange","selectedClassName","unselectedClassName","onPress","group","isDisabled","enableHaptics","onColor","offColor","tint","handlePress","event","color","accessibilityState","checked","ToggleButtonLabel","ToggleButton","Object","assign","Label"],"sourceRoot":"../../../../src","sources":["components/toggle-button/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -5,6 +5,7 @@ export { useDisclosure } from "./use-disclosure.js";
5
5
  export { useBreakpoint, BREAKPOINTS } from "./use-breakpoint.js";
6
6
  export { useKeyboard } from "./use-keyboard.js";
7
7
  export { useKeyboardAvoidance } from "./use-keyboard-avoidance.js";
8
+ export { useRevealProgress } from "./use-reveal-progress.js";
8
9
  export { useScrollSections } from "./use-scroll-sections.js";
9
10
  export { useDebouncedValue } from "./use-debounced-value.js";
10
11
  export { usePrevious } from "./use-previous.js";
@@ -1 +1 @@
1
- {"version":3,"names":["useCopyToClipboard","useDisclosure","useBreakpoint","BREAKPOINTS","useKeyboard","useKeyboardAvoidance","useScrollSections","useDebouncedValue","usePrevious"],"sourceRoot":"../../../src","sources":["hooks/index.ts"],"mappings":";;AAAA,SACEA,kBAAkB,QAGb,4BAAyB;AAChC,SACEC,aAAa,QAGR,qBAAkB;AACzB,SACEC,aAAa,EACbC,WAAW,QAGN,qBAAkB;AACzB,SAASC,WAAW,QAAgC,mBAAgB;AACpE,SACEC,oBAAoB,QAGf,6BAA0B;AACjC,SACEC,iBAAiB,QAGZ,0BAAuB;AAC9B,SAASC,iBAAiB,QAAQ,0BAAuB;AACzD,SAASC,WAAW,QAAQ,mBAAgB","ignoreList":[]}
1
+ {"version":3,"names":["useCopyToClipboard","useDisclosure","useBreakpoint","BREAKPOINTS","useKeyboard","useKeyboardAvoidance","useRevealProgress","useScrollSections","useDebouncedValue","usePrevious"],"sourceRoot":"../../../src","sources":["hooks/index.ts"],"mappings":";;AAAA,SACEA,kBAAkB,QAGb,4BAAyB;AAChC,SACEC,aAAa,QAGR,qBAAkB;AACzB,SACEC,aAAa,EACbC,WAAW,QAGN,qBAAkB;AACzB,SAASC,WAAW,QAAgC,mBAAgB;AACpE,SACEC,oBAAoB,QAIf,6BAA0B;AACjC,SACEC,iBAAiB,QAGZ,0BAAuB;AAC9B,SACEC,iBAAiB,QAGZ,0BAAuB;AAC9B,SAASC,iBAAiB,QAAQ,0BAAuB;AACzD,SAASC,WAAW,QAAQ,mBAAgB","ignoreList":[]}
@@ -1,13 +1,26 @@
1
1
  "use strict";
2
2
 
3
3
  /**
4
- * useKeyboardAvoidance — lift an element just clear of the software keyboard.
4
+ * useKeyboardAvoidance — keep an element clear of the software keyboard.
5
5
  *
6
6
  * `KeyboardAvoidingView` shifts or pads an entire subtree by the full keyboard
7
7
  * height regardless of where the element actually sits, which over-scrolls
8
8
  * short forms and does nothing useful for an element already above the fold.
9
- * This measures the element and moves it by exactly the overlap — and not at
10
- * all when there is none.
9
+ * This works from the element's own position instead.
10
+ *
11
+ * Two modes, because "get out of the keyboard's way" and "ride the keyboard"
12
+ * are different jobs:
13
+ *
14
+ * - **`lift`** (default) — for a field sitting in the page's flow. The element
15
+ * is measured every frame while the keyboard is up and moved by exactly the
16
+ * current overlap, so it follows the scroll: scroll it clear and the lift
17
+ * decays to nothing, scroll it back under and the lift returns. Measuring
18
+ * once and holding the result is what leaves a field hanging out of its own
19
+ * slot the moment the page moves underneath it.
20
+ * - **`dock`** — for an absolutely-positioned composer, toolbar or search bar
21
+ * pinned near the bottom edge. There is nothing to measure: the element
22
+ * simply travels with the keyboard, less whatever bottom inset it is already
23
+ * sitting above.
11
24
  *
12
25
  * ## Install the keyboard controller
13
26
  *
@@ -33,9 +46,19 @@
33
46
  * </Animated.View>
34
47
  * ```
35
48
  */
36
- import { useCallback, useEffect } from 'react';
49
+ import { useCallback, useEffect, useState } from 'react';
37
50
  import { useWindowDimensions } from 'react-native';
38
- import { measure, useAnimatedKeyboard, useAnimatedReaction, useAnimatedRef, useAnimatedStyle, useSharedValue } from 'react-native-reanimated';
51
+ import { measure, runOnJS, useAnimatedKeyboard, useAnimatedReaction, useAnimatedRef, useAnimatedStyle, useFrameCallback, useSharedValue, withTiming } from 'react-native-reanimated';
52
+
53
+ /** How long a lifted element takes to settle back after it stops being active. */
54
+ const SETTLE_DURATION = 200;
55
+
56
+ /**
57
+ * Movement below this is dropped. The element's measured position already
58
+ * includes the translation applied on the previous frame, so the loop reads
59
+ * its own output — a dead band keeps sub-pixel rounding from making it hum.
60
+ */
61
+ const EPSILON = 0.5;
39
62
  /**
40
63
  * Resolved once, at module load, so the hook below always calls the same
41
64
  * underlying hook — swapping between them per render would break the rules of
@@ -74,7 +97,9 @@ export function hasKeyboardController() {
74
97
  export function useKeyboardAvoidance({
75
98
  enabled = true,
76
99
  active = true,
77
- offset = 16
100
+ mode = 'lift',
101
+ offset = 16,
102
+ bottomInset = 0
78
103
  } = {}) {
79
104
  const ref = useAnimatedRef();
80
105
  const rawHeight = useKeyboardHeight();
@@ -82,81 +107,96 @@ export function useKeyboardAvoidance({
82
107
  height: screenHeight
83
108
  } = useWindowDimensions();
84
109
 
85
- /** Window-space bottom edge of the element with no translation applied. */
86
- const restingBottom = useSharedValue(0);
110
+ /** The translation currently applied, in pixels. Zero or negative. */
111
+ const translation = useSharedValue(0);
87
112
 
88
- // `active` is a plain prop and the reaction below is a worklet, so it is
89
- // mirrored rather than closed over — written in an effect, because touching
90
- // a shared value during render is a Reanimated strict-mode violation.
113
+ // `active` is a plain prop and the worklets below cannot read props, so it is
114
+ // mirrored — written in an effect, because touching a shared value during
115
+ // render is a Reanimated strict-mode violation.
91
116
  const isActive = useSharedValue(active && enabled);
92
117
  useEffect(() => {
93
118
  isActive.value = active && enabled;
94
119
  }, [active, enabled, isActive]);
95
120
 
96
121
  /*
97
- * The resting position is taken the moment this element becomes the one that
98
- * should move, on the UI thread, rather than once at layout time.
122
+ * The whole of `lift` is this callback, and it runs only while the element is
123
+ * the active one *and* the keyboard is up — see the reaction below.
99
124
  *
100
- * Measuring at layout is wrong in two ways that both show up as "avoidance
101
- * does nothing". A field inside an overlay is laid out before the overlay
102
- * knows where it goes — it is parked off-screen at that point, so the stored
103
- * position is a large negative number that is nonetheless non-zero, and the
104
- * arithmetic below happily concludes there is no overlap. And a field that
105
- * has scrolled since it was laid out is measured where it used to be.
125
+ * The element is re-measured every frame rather than once, because every
126
+ * interesting thing that moves it happens after the keyboard opens: the page
127
+ * scrolls, a sheet settles, content above it grows. A position captured at
128
+ * the moment of focus is right for exactly one frame, and the element spends
129
+ * the rest of the time holding an offset that belongs to where it used to be.
106
130
  *
107
- * Keying off "active and the keyboard is up" rather than off the keyboard
108
- * alone matters for the second field you tap: moving straight from one field
109
- * to another never closes the keyboard, so there is no opening to react to,
110
- * and a hook watching only the keyboard would never measure it.
111
- *
112
- * At the instant it becomes active the element has no translation applied,
113
- * so what is measured then is the honest resting position.
131
+ * What is measured already includes the translation applied on the previous
132
+ * frame, so that is subtracted back out to recover the honest resting edge.
133
+ * Without it the callback would chase its own output down the screen.
114
134
  */
115
- useAnimatedReaction(() => isActive.value && Math.abs(rawHeight.value) > 0, (shouldLift, wasLifting) => {
116
- if (shouldLift === wasLifting) return;
117
- if (!shouldLift) {
118
- // Forget it, so the next time round measures wherever the element has
119
- // got to in the meantime.
120
- restingBottom.value = 0;
121
- return;
122
- }
135
+ const track = useFrameCallback(() => {
136
+ 'worklet';
137
+
138
+ const keyboardHeight = Math.abs(rawHeight.value);
139
+ if (keyboardHeight === 0) return;
123
140
  const frame = measure(ref);
124
- if (frame && frame.height > 0 && frame.pageY >= 0) {
125
- restingBottom.value = frame.pageY + frame.height;
141
+ if (!frame || frame.height <= 0) return;
142
+ const restingBottom = frame.pageY + frame.height - translation.value;
143
+ const keyboardTop = screenHeight - keyboardHeight;
144
+ const overlap = restingBottom + offset - keyboardTop;
145
+ const next = overlap > 0 ? -overlap : 0;
146
+ if (Math.abs(next - translation.value) > EPSILON) translation.value = next;
147
+ }, false);
148
+
149
+ /*
150
+ * Tracking is switched on the transition rather than left running, so a
151
+ * screen full of fields costs nothing until one of them is being typed into.
152
+ * `setActive` lives on the JS side, hence the hop.
153
+ */
154
+ const [tracking, setTracking] = useState(false);
155
+ useAnimatedReaction(() => isActive.value && Math.abs(rawHeight.value) > 0, (shouldTrack, wasTracking) => {
156
+ if (shouldTrack === wasTracking) return;
157
+ runOnJS(setTracking)(shouldTrack);
158
+
159
+ // Moving straight from one field to another never closes the keyboard,
160
+ // so the field being left has nothing to follow back down — it is sent
161
+ // home explicitly, or it stays hanging where the keyboard left it.
162
+ if (!shouldTrack && translation.value !== 0) {
163
+ translation.value = withTiming(0, {
164
+ duration: SETTLE_DURATION
165
+ });
126
166
  }
127
167
  });
128
- const seed = useCallback(() => {
129
- // Skipped only when a position is already known and the keyboard is up —
130
- // the element is lifted then, and this would store the lifted position as
131
- // the resting one. With no position yet there is no translation to undo,
132
- // so measuring is safe whatever the keyboard is doing.
133
- if (restingBottom.value !== 0 && Math.abs(rawHeight.value) > 0) return;
134
- ref.current?.measureInWindow((_x, y, _width, height) => {
135
- if (height > 0 && y >= 0) restingBottom.value = y + height;
136
- });
137
- }, [ref, rawHeight, restingBottom]);
168
+ const {
169
+ setActive
170
+ } = track;
171
+ useEffect(() => {
172
+ setActive(tracking && mode === 'lift');
173
+ return () => setActive(false);
174
+ }, [tracking, mode, setActive]);
138
175
  const onLayout = useCallback(_event => {
139
- // Covers the case the reaction above cannot: a keyboard that is already
140
- // up when this element mounts, where there is no transition to react to.
141
- // measureInWindow is only meaningful once the view is attached and
142
- // positioned, which is a frame later than onLayout on both platforms.
143
- requestAnimationFrame(seed);
144
- }, [seed]);
176
+ // A layout pass while the element is at rest means its slot moved for
177
+ // some reason other than the keyboard. Anything left over from the last
178
+ // lift belongs to the old slot.
179
+ if (!tracking && translation.value !== 0) translation.value = 0;
180
+ }, [tracking, translation]);
145
181
  const animatedStyle = useAnimatedStyle(() => {
146
- // Both sources are normalised to a positive height here.
147
- const keyboardHeight = Math.abs(rawHeight.value);
148
- if (!isActive.value || keyboardHeight === 0 || restingBottom.value === 0) {
149
- return {
182
+ if (mode === 'dock') {
183
+ if (!isActive.value) return {
150
184
  transform: [{
151
185
  translateY: 0
152
186
  }]
153
187
  };
188
+ // Both sources are normalised to a positive height here.
189
+ const keyboardHeight = Math.abs(rawHeight.value);
190
+ const travel = Math.max(keyboardHeight - bottomInset, 0);
191
+ return {
192
+ transform: [{
193
+ translateY: -travel
194
+ }]
195
+ };
154
196
  }
155
- const keyboardTop = screenHeight - keyboardHeight;
156
- const overlap = restingBottom.value + offset - keyboardTop;
157
197
  return {
158
198
  transform: [{
159
- translateY: overlap > 0 ? -overlap : 0
199
+ translateY: translation.value
160
200
  }]
161
201
  };
162
202
  });
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useEffect","useWindowDimensions","measure","useAnimatedKeyboard","useAnimatedReaction","useAnimatedRef","useAnimatedStyle","useSharedValue","useKeyboardHeight","controller","require","useReanimatedKeyboardAnimation","height","hasKeyboardController","useKeyboardAvoidance","enabled","active","offset","ref","rawHeight","screenHeight","restingBottom","isActive","value","Math","abs","shouldLift","wasLifting","frame","pageY","seed","current","measureInWindow","_x","y","_width","onLayout","_event","requestAnimationFrame","animatedStyle","keyboardHeight","transform","translateY","keyboardTop","overlap"],"sourceRoot":"../../../src","sources":["hooks/use-keyboard-avoidance.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useState","useWindowDimensions","measure","runOnJS","useAnimatedKeyboard","useAnimatedReaction","useAnimatedRef","useAnimatedStyle","useFrameCallback","useSharedValue","withTiming","SETTLE_DURATION","EPSILON","useKeyboardHeight","controller","require","useReanimatedKeyboardAnimation","height","hasKeyboardController","useKeyboardAvoidance","enabled","active","mode","offset","bottomInset","ref","rawHeight","screenHeight","translation","isActive","value","track","keyboardHeight","Math","abs","frame","restingBottom","pageY","keyboardTop","overlap","next","tracking","setTracking","shouldTrack","wasTracking","duration","setActive","onLayout","_event","animatedStyle","transform","translateY","travel","max"],"sourceRoot":"../../../src","sources":["hooks/use-keyboard-avoidance.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * useRevealProgress — how far an element has travelled through the viewport.
5
+ *
6
+ * The number every scroll-driven effect is really made of: `0` before the
7
+ * element has arrived, `1` once it has passed, and a smooth scrub between the
8
+ * two. What an effect *does* with it — recolour, fade, zoom, step through
9
+ * frames — is the only part that differs.
10
+ *
11
+ * The window is set the way a scroll-trigger's is: `start` and `end` are
12
+ * positions down the viewport, as fractions of its height. Progress is `0`
13
+ * while the element's **top** is still below `start`, and reaches `1` when its
14
+ * **bottom** passes `end` — so a tall block scrubs across its own height rather
15
+ * than snapping the moment its first line appears.
16
+ *
17
+ * ```tsx
18
+ * const { ref, progress } = useRevealProgress({ start: 0.9, end: 0.5 });
19
+ *
20
+ * <Animated.View ref={ref} style={useAnimatedStyle(() => ({
21
+ * opacity: progress.value,
22
+ * }))} />
23
+ * ```
24
+ *
25
+ * The element is measured on the UI thread whenever the scroll position
26
+ * changes — not every frame, and not once at layout. Once is wrong the moment
27
+ * anything above it resizes; every frame is a measurement pass for a value that
28
+ * only changes when the scroller moves.
29
+ */
30
+ import { useWindowDimensions } from 'react-native';
31
+ import { measure, useAnimatedRef, useDerivedValue } from 'react-native-reanimated';
32
+ import { useScrollProgress } from "../primitives/scroll-progress.js";
33
+ export function useRevealProgress({
34
+ start = 0.9,
35
+ end = 0.5,
36
+ progress: external,
37
+ enabled = true
38
+ } = {}) {
39
+ const ref = useAnimatedRef();
40
+ const scroll = useScrollProgress();
41
+ const {
42
+ height: windowHeight
43
+ } = useWindowDimensions();
44
+ const offset = scroll?.offset;
45
+ const viewportValue = scroll?.viewport;
46
+ const topValue = scroll?.top;
47
+ const derived = useDerivedValue(() => {
48
+ if (!enabled) return 1;
49
+
50
+ // Read so the scroll position is a real dependency of this value. The
51
+ // element's own position is not observable, and the scroller moving
52
+ // underneath it is the only thing that changes it while it is on screen.
53
+ const scrolled = offset ? offset.value : 0;
54
+ const viewport = viewportValue?.value || windowHeight;
55
+ const viewportTop = topValue?.value ?? 0;
56
+ if (viewport <= 0 || Number.isNaN(scrolled)) return 0;
57
+ const frame = measure(ref);
58
+ if (!frame || frame.height <= 0) return 0;
59
+ const top = frame.pageY - viewportTop;
60
+ const from = start * viewport;
61
+ const to = end * viewport - frame.height;
62
+ const span = from - to;
63
+ if (span <= 0) return top <= to ? 1 : 0;
64
+ const value = (from - top) / span;
65
+ return value < 0 ? 0 : value > 1 ? 1 : value;
66
+ });
67
+
68
+ // An external value is passed straight through, so a caller driving the
69
+ // effect by hand never pays for the measurement.
70
+ return {
71
+ ref,
72
+ progress: external ?? derived
73
+ };
74
+ }
75
+ //# sourceMappingURL=use-reveal-progress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useWindowDimensions","measure","useAnimatedRef","useDerivedValue","useScrollProgress","useRevealProgress","start","end","progress","external","enabled","ref","scroll","height","windowHeight","offset","viewportValue","viewport","topValue","top","derived","scrolled","value","viewportTop","Number","isNaN","frame","pageY","from","to","span"],"sourceRoot":"../../../src","sources":["hooks/use-reveal-progress.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,mBAAmB,QAAmB,cAAc;AAC7D,SACEC,OAAO,EACPC,cAAc,EACdC,eAAe,QAGV,yBAAyB;AAChC,SAASC,iBAAiB,QAAQ,kCAA+B;AA6BjE,OAAO,SAASC,iBAAiBA,CAAC;EAChCC,KAAK,GAAG,GAAG;EACXC,GAAG,GAAG,GAAG;EACTC,QAAQ,EAAEC,QAAQ;EAClBC,OAAO,GAAG;AACc,CAAC,GAAG,CAAC,CAAC,EAA2B;EACzD,MAAMC,GAAG,GAAGT,cAAc,CAAO,CAAC;EAClC,MAAMU,MAAM,GAAGR,iBAAiB,CAAC,CAAC;EAClC,MAAM;IAAES,MAAM,EAAEC;EAAa,CAAC,GAAGd,mBAAmB,CAAC,CAAC;EAEtD,MAAMe,MAAM,GAAGH,MAAM,EAAEG,MAAM;EAC7B,MAAMC,aAAa,GAAGJ,MAAM,EAAEK,QAAQ;EACtC,MAAMC,QAAQ,GAAGN,MAAM,EAAEO,GAAG;EAE5B,MAAMC,OAAO,GAAGjB,eAAe,CAAC,MAAM;IACpC,IAAI,CAACO,OAAO,EAAE,OAAO,CAAC;;IAEtB;IACA;IACA;IACA,MAAMW,QAAQ,GAAGN,MAAM,GAAGA,MAAM,CAACO,KAAK,GAAG,CAAC;IAC1C,MAAML,QAAQ,GAAGD,aAAa,EAAEM,KAAK,IAAIR,YAAY;IACrD,MAAMS,WAAW,GAAGL,QAAQ,EAAEI,KAAK,IAAI,CAAC;IACxC,IAAIL,QAAQ,IAAI,CAAC,IAAIO,MAAM,CAACC,KAAK,CAACJ,QAAQ,CAAC,EAAE,OAAO,CAAC;IAErD,MAAMK,KAAK,GAAGzB,OAAO,CAACU,GAAG,CAAC;IAC1B,IAAI,CAACe,KAAK,IAAIA,KAAK,CAACb,MAAM,IAAI,CAAC,EAAE,OAAO,CAAC;IAEzC,MAAMM,GAAG,GAAGO,KAAK,CAACC,KAAK,GAAGJ,WAAW;IACrC,MAAMK,IAAI,GAAGtB,KAAK,GAAGW,QAAQ;IAC7B,MAAMY,EAAE,GAAGtB,GAAG,GAAGU,QAAQ,GAAGS,KAAK,CAACb,MAAM;IACxC,MAAMiB,IAAI,GAAGF,IAAI,GAAGC,EAAE;IACtB,IAAIC,IAAI,IAAI,CAAC,EAAE,OAAOX,GAAG,IAAIU,EAAE,GAAG,CAAC,GAAG,CAAC;IAEvC,MAAMP,KAAK,GAAG,CAACM,IAAI,GAAGT,GAAG,IAAIW,IAAI;IACjC,OAAOR,KAAK,GAAG,CAAC,GAAG,CAAC,GAAGA,KAAK,GAAG,CAAC,GAAG,CAAC,GAAGA,KAAK;EAC9C,CAAC,CAAC;;EAEF;EACA;EACA,OAAO;IAAEX,GAAG;IAAEH,QAAQ,EAAEC,QAAQ,IAAIW;EAAQ,CAAC;AAC/C","ignoreList":[]}
@@ -11,6 +11,7 @@ export { Portal, PortalHost, PortalProvider } from "./primitives/portal.js";
11
11
  export { Text } from "./primitives/text.js";
12
12
  export { KeyboardAvoider } from "./primitives/keyboard-avoider.js";
13
13
  export { AnimatedPressable } from "./primitives/animated-pressable.js";
14
+ export { ScrollProgress, useScrollProgress } from "./primitives/scroll-progress.js";
14
15
 
15
16
  // Native UI bridge
16
17
  export { hasNativeUI } from "./native/index.js";
@@ -27,11 +28,13 @@ export { Button } from "./components/button/index.js";
27
28
  export { ToggleButton, ToggleButtonGroup, useToggleButton } from "./components/toggle-button/index.js";
28
29
  export { Dialog } from "./components/dialog/index.js";
29
30
  export { Frame } from "./components/frame/index.js";
31
+ export { HeatmapChart, useHeatmapChart, buildHeatmapCalendar } from "./components/heatmap-chart/index.js";
30
32
  export { Select } from "./components/select/index.js";
31
33
  export { SectionRail } from "./components/section-rail/index.js";
32
34
  export { Tabs } from "./components/tabs/index.js";
33
35
  export { Card } from "./components/card/index.js";
34
36
  export { Checkbox } from "./components/checkbox/index.js";
37
+ export { Chip, useChip } from "./components/chip/index.js";
35
38
  export { EmptyState } from "./components/empty-state/index.js";
36
39
  export { Input } from "./components/input/index.js";
37
40
  export { InputGroup } from "./components/input-group/index.js";
@@ -47,6 +50,9 @@ export { RadioGroup } from "./components/radio-group/index.js";
47
50
  export { ScrollFade } from "./components/scroll-fade/index.js";
48
51
  export { Separator } from "./components/separator/index.js";
49
52
  export { Shimmer } from "./components/shimmer/index.js";
53
+ export { ScrollText } from "./components/scroll-text/index.js";
54
+ export { ScrollCanvas } from "./components/scroll-canvas/index.js";
55
+ export { ThinkingOrb } from "./components/thinking-orb/index.js";
50
56
  export { Skeleton } from "./components/skeleton/index.js";
51
57
  export { Slider } from "./components/slider/index.js";
52
58
  export { Spinner } from "./components/spinner/index.js";
@@ -1 +1 @@
1
- {"version":3,"names":["PanelUIProvider","useTheme","useThemeMode","PANEL_THEMES","PANEL_THEME_NAMES","PANEL_EXTRA_THEMES","Portal","PortalHost","PortalProvider","Text","KeyboardAvoider","AnimatedPressable","hasNativeUI","hasHaptics","selectionTick","Accordion","Alert","Avatar","Attachment","Badge","BottomSheet","Button","ToggleButton","ToggleButtonGroup","useToggleButton","Dialog","Frame","Select","SectionRail","Tabs","Card","Checkbox","EmptyState","Input","InputGroup","Item","Label","LineChart","useLineChart","Marker","MessageScroller","useMessageScroller","useMessageScrollerVisibility","Message","Popover","Progress","RadioGroup","ScrollFade","Separator","Shimmer","Skeleton","Slider","Spinner","Steps","Surface","Switch","Timeline","Toast","ToastViewport","toast","useToast","Typography","AlertTriangleIcon","AppleIcon","ArrowUpRightIcon","BellIcon","CardIcon","CheckCircleIcon","CheckIcon","ChevronDownIcon","ChevronLeftIcon","ChevronRightIcon","FacebookIcon","FileIcon","GoogleIcon","IconColorProvider","InfoIcon","ImageIcon","MoonIcon","PackageIcon","PaperclipIcon","PlusSquareIcon","ReceiptIcon","SearchIcon","SendIcon","ShareNodesIcon","ShieldAlertIcon","ShieldCheckIcon","SunIcon","XIcon","useIconColor","cn"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA;AACA,SAASA,eAAe,QAAmC,kCAA+B;;AAE1F;AACA,SACEC,QAAQ,EACRC,YAAY,EACZC,YAAY,EACZC,iBAAiB,EACjBC,kBAAkB,QAKb,sBAAmB;;AAE1B;AACA,SAASC,MAAM,EAAEC,UAAU,EAAEC,cAAc,QAAQ,wBAAqB;AACxE,SAASC,IAAI,QAAwB,sBAAmB;AACxD,SACEC,eAAe,QAEV,kCAA+B;AACtC,SACEC,iBAAiB,QAEZ,oCAAiC;;AAExC;AACA,SAASC,WAAW,QAAQ,mBAAU;AACtC,SAASC,UAAU,EAAEC,aAAa,QAAQ,oBAAiB;;AAE3D;AACA,SACEC,SAAS,QAQJ,iCAAwB;AAC/B,SACEC,KAAK,QAGA,6BAAoB;AAC3B,SACEC,MAAM,QAGD,8BAAqB;AAC5B,SACEC,UAAU,QAUL,kCAAyB;AAChC,SAASC,KAAK,QAAyB,6BAAoB;AAC3D,SACEC,WAAW,QAGN,oCAA2B;AAClC,SAASC,MAAM,QAA0B,8BAAqB;AAC9D,SACEC,YAAY,EACZC,iBAAiB,EACjBC,eAAe,QAOV,qCAA4B;AACnC,SACEC,MAAM,QAGD,8BAAqB;AAC5B,SACEC,KAAK,QAOA,6BAAoB;AAC3B,SACEC,MAAM,QAID,8BAAqB;AAC5B,SACEC,WAAW,QAQN,oCAA2B;AAClC,SACEC,IAAI,QAKC,4BAAmB;AAC1B,SAASC,IAAI,QAAwB,4BAAmB;AACxD,SAASC,QAAQ,QAA4B,gCAAuB;AACpE,SACEC,UAAU,QAGL,mCAA0B;AACjC,SAASC,KAAK,QAAyB,6BAAoB;AAC3D,SACEC,UAAU,QAIL,mCAA0B;AACjC,SACEC,IAAI,QAWC,4BAAmB;AAC1B,SAASC,KAAK,QAA8C,6BAAoB;AAChF,SACEC,SAAS,EACTC,YAAY,QAaP,kCAAyB;AAChC,SACEC,MAAM,QAID,8BAAqB;AAC5B,SACEC,eAAe,EACfC,kBAAkB,EAClBC,4BAA4B,QAOvB,wCAA+B;AACtC,SACEC,OAAO,QAUF,+BAAsB;AAC7B,SACEC,OAAO,QASF,+BAAsB;AAC7B,SAASC,QAAQ,QAA4B,gCAAuB;AACpE,SACEC,UAAU,QAGL,mCAA0B;AACjC,SACEC,UAAU,QAEL,mCAA0B;AACjC,SAASC,SAAS,QAA6B,iCAAwB;AACvE,SAASC,OAAO,QAA2B,+BAAsB;AACjE,SAASC,QAAQ,QAA4B,gCAAuB;AACpE,SAASC,MAAM,QAA0B,8BAAqB;AAC9D,SAASC,OAAO,QAA2B,+BAAsB;AACjE,SACEC,KAAK,QAQA,6BAAoB;AAC3B,SAASC,OAAO,QAA2B,+BAAsB;AACjE,SAASC,MAAM,QAA0B,8BAAqB;AAC9D,SACEC,QAAQ,QAOH,gCAAuB;AAC9B,SACEC,KAAK,EACLC,aAAa,EACbC,KAAK,EACLC,QAAQ,QASH,6BAAoB;AAC3B,SACEC,UAAU,QAML,kCAAyB;;AAEhC;AACA,SACEC,iBAAiB,EACjBC,SAAS,EACTC,gBAAgB,EAChBC,QAAQ,EACRC,QAAQ,EACRC,eAAe,EACfC,SAAS,EACTC,eAAe,EACfC,eAAe,EACfC,gBAAgB,EAChBC,YAAY,EACZC,QAAQ,EACRC,UAAU,EACVC,iBAAiB,EACjBC,QAAQ,EACRC,SAAS,EACTC,QAAQ,EACRC,WAAW,EACXC,aAAa,EACbC,cAAc,EACdC,WAAW,EACXC,UAAU,EACVC,QAAQ,EACRC,cAAc,EACdC,eAAe,EACfC,eAAe,EACfC,OAAO,EACPC,KAAK,EACLC,YAAY,QAEP,kBAAS;;AAEhB;AACA,cAAc,kBAAS;;AAEvB;AACA,SAASC,EAAE,QAAQ,eAAY","ignoreList":[]}
1
+ {"version":3,"names":["PanelUIProvider","useTheme","useThemeMode","PANEL_THEMES","PANEL_THEME_NAMES","PANEL_EXTRA_THEMES","Portal","PortalHost","PortalProvider","Text","KeyboardAvoider","AnimatedPressable","ScrollProgress","useScrollProgress","hasNativeUI","hasHaptics","selectionTick","Accordion","Alert","Avatar","Attachment","Badge","BottomSheet","Button","ToggleButton","ToggleButtonGroup","useToggleButton","Dialog","Frame","HeatmapChart","useHeatmapChart","buildHeatmapCalendar","Select","SectionRail","Tabs","Card","Checkbox","Chip","useChip","EmptyState","Input","InputGroup","Item","Label","LineChart","useLineChart","Marker","MessageScroller","useMessageScroller","useMessageScrollerVisibility","Message","Popover","Progress","RadioGroup","ScrollFade","Separator","Shimmer","ScrollText","ScrollCanvas","ThinkingOrb","Skeleton","Slider","Spinner","Steps","Surface","Switch","Timeline","Toast","ToastViewport","toast","useToast","Typography","AlertTriangleIcon","AppleIcon","ArrowUpRightIcon","BellIcon","CardIcon","CheckCircleIcon","CheckIcon","ChevronDownIcon","ChevronLeftIcon","ChevronRightIcon","FacebookIcon","FileIcon","GoogleIcon","IconColorProvider","InfoIcon","ImageIcon","MoonIcon","PackageIcon","PaperclipIcon","PlusSquareIcon","ReceiptIcon","SearchIcon","SendIcon","ShareNodesIcon","ShieldAlertIcon","ShieldCheckIcon","SunIcon","XIcon","useIconColor","cn"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","resolved","module","getNativeUI","OS","require","hasNativeUI"],"sourceRoot":"../../../src","sources":["native/index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,QAAQ,QAAQ,cAAc;AAwCvC,IAAIC,QAAQ,GAAG,KAAK;AACpB,IAAIC,MAA6B,GAAG,IAAI;;AAExC;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAAA,EAA0B;EACnD,IAAIF,QAAQ,EAAE,OAAOC,MAAM;EAC3BD,QAAQ,GAAG,IAAI;;EAEf;EACA;EACA,IAAID,QAAQ,CAACI,EAAE,KAAK,KAAK,EAAE,OAAO,IAAI;EAEtC,IAAI;IACF;IACAF,MAAM,GAAGG,OAAO,CAAC,UAAU,CAAmB;EAChD,CAAC,CAAC,MAAM;IACNH,MAAM,GAAG,IAAI;EACf;EAEA,OAAOA,MAAM;AACf;;AAEA;AACA,OAAO,SAASI,WAAWA,CAAA,EAAY;EACrC,OAAOH,WAAW,CAAC,CAAC,KAAK,IAAI;AAC/B","ignoreList":[]}
1
+ {"version":3,"names":["Platform","resolved","module","getNativeUI","OS","require","hasNativeUI"],"sourceRoot":"../../../src","sources":["native/index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,QAAQ,QAAQ,cAAc;AAgDvC,IAAIC,QAAQ,GAAG,KAAK;AACpB,IAAIC,MAA6B,GAAG,IAAI;;AAExC;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAAA,EAA0B;EACnD,IAAIF,QAAQ,EAAE,OAAOC,MAAM;EAC3BD,QAAQ,GAAG,IAAI;;EAEf;EACA;EACA,IAAID,QAAQ,CAACI,EAAE,KAAK,KAAK,EAAE,OAAO,IAAI;EAEtC,IAAI;IACF;IACAF,MAAM,GAAGG,OAAO,CAAC,UAAU,CAAmB;EAChD,CAAC,CAAC,MAAM;IACNH,MAAM,GAAG,IAAI;EACf;EAEA,OAAOA,MAAM;AACf;;AAEA;AACA,OAAO,SAASI,WAAWA,CAAA,EAAY;EACrC,OAAOH,WAAW,CAAC,CAAC,KAAK,IAAI;AAC/B","ignoreList":[]}