@orioncactuscorp/ui 1.16.0 → 1.18.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 (94) hide show
  1. package/CHANGELOG.md +164 -0
  2. package/README.md +55 -14
  3. package/dist/components/ActionArea/ActionArea.css +1 -1
  4. package/dist/components/ActionArea/ActionArea.js +56 -55
  5. package/dist/components/BackgroundIconButton/BackgroundIconButton.css +1 -1
  6. package/dist/components/Badge/Badge.css +1 -1
  7. package/dist/components/Badge/Badge.js +45 -40
  8. package/dist/components/Badge/Badge.module.scss.js +9 -8
  9. package/dist/components/Fieldset/Fieldset.css +1 -1
  10. package/dist/components/Modal/Modal.css +1 -1
  11. package/dist/components/Modal/Modal.js +582 -563
  12. package/dist/components/Modal/Modal.module.scss.js +59 -57
  13. package/dist/components/Modal/blockSize.js +7 -0
  14. package/dist/components/Modal/cssTime.js +11 -0
  15. package/dist/components/Modal/fieldReveal.js +57 -0
  16. package/dist/components/Modal/headerTapScroll.js +10 -0
  17. package/dist/components/Modal/keyboardEditable.js +31 -0
  18. package/dist/components/Modal/keyboardInsetMemory.js +24 -0
  19. package/dist/components/Modal/keyboardSession.js +46 -73
  20. package/dist/components/Modal/modalResizeTarget.js +28 -0
  21. package/dist/components/Modal/modalScrollArbitration.js +69 -80
  22. package/dist/components/Modal/scrollportScroller.js +43 -0
  23. package/dist/components/Modal/tapCaret.js +32 -0
  24. package/dist/components/Modal/useBottomSheetIntrinsicHeight.js +58 -0
  25. package/dist/components/Modal/useFieldReveal.js +81 -0
  26. package/dist/components/Modal/useMeasuredElement.js +20 -0
  27. package/dist/components/Modal/useModalContentBlockTransition.js +128 -49
  28. package/dist/components/Modal/useModalContentSizeSignal.js +30 -0
  29. package/dist/components/Modal/useModalDrag.js +1136 -1056
  30. package/dist/components/Modal/useModalKeyboardAvoidance.js +200 -117
  31. package/dist/components/Modal/useModalViewportGeometry.js +35 -19
  32. package/dist/components/PositionSnap/policy.js +40 -43
  33. package/dist/components/internal/ModalPresentation.js +1 -1
  34. package/dist/styles.css +5 -5
  35. package/dist/ui/src/components/ActionArea/ActionArea.d.ts.map +1 -1
  36. package/dist/ui/src/components/Badge/Badge.d.ts.map +1 -1
  37. package/dist/ui/src/components/Badge/types.d.ts +1 -1
  38. package/dist/ui/src/components/Badge/types.d.ts.map +1 -1
  39. package/dist/ui/src/components/Modal/Modal.d.ts +2 -2
  40. package/dist/ui/src/components/Modal/Modal.d.ts.map +1 -1
  41. package/dist/ui/src/components/Modal/Modal.test.utils.d.ts +12 -0
  42. package/dist/ui/src/components/Modal/Modal.test.utils.d.ts.map +1 -0
  43. package/dist/ui/src/components/Modal/blockSize.d.ts +2 -0
  44. package/dist/ui/src/components/Modal/blockSize.d.ts.map +1 -0
  45. package/dist/ui/src/components/Modal/contexts.d.ts +6 -0
  46. package/dist/ui/src/components/Modal/contexts.d.ts.map +1 -1
  47. package/dist/ui/src/components/Modal/cssTime.d.ts +4 -0
  48. package/dist/ui/src/components/Modal/cssTime.d.ts.map +1 -0
  49. package/dist/ui/src/components/Modal/fieldReveal.d.ts +18 -0
  50. package/dist/ui/src/components/Modal/fieldReveal.d.ts.map +1 -0
  51. package/dist/ui/src/components/Modal/headerTapScroll.d.ts +5 -0
  52. package/dist/ui/src/components/Modal/headerTapScroll.d.ts.map +1 -0
  53. package/dist/ui/src/components/Modal/keyboardEditable.d.ts +6 -0
  54. package/dist/ui/src/components/Modal/keyboardEditable.d.ts.map +1 -0
  55. package/dist/ui/src/components/Modal/keyboardInsetMemory.d.ts +5 -0
  56. package/dist/ui/src/components/Modal/keyboardInsetMemory.d.ts.map +1 -0
  57. package/dist/ui/src/components/Modal/keyboardSession.d.ts +4 -11
  58. package/dist/ui/src/components/Modal/keyboardSession.d.ts.map +1 -1
  59. package/dist/ui/src/components/Modal/modalResizeTarget.d.ts +12 -0
  60. package/dist/ui/src/components/Modal/modalResizeTarget.d.ts.map +1 -0
  61. package/dist/ui/src/components/Modal/modalScrollArbitration.d.ts.map +1 -1
  62. package/dist/ui/src/components/Modal/scrollportScroller.d.ts +20 -0
  63. package/dist/ui/src/components/Modal/scrollportScroller.d.ts.map +1 -0
  64. package/dist/ui/src/components/Modal/tapCaret.d.ts +10 -0
  65. package/dist/ui/src/components/Modal/tapCaret.d.ts.map +1 -0
  66. package/dist/ui/src/components/Modal/types.d.ts +6 -0
  67. package/dist/ui/src/components/Modal/types.d.ts.map +1 -1
  68. package/dist/ui/src/components/Modal/useBottomSheetIntrinsicHeight.d.ts +28 -0
  69. package/dist/ui/src/components/Modal/useBottomSheetIntrinsicHeight.d.ts.map +1 -0
  70. package/dist/ui/src/components/Modal/useFieldReveal.d.ts +28 -0
  71. package/dist/ui/src/components/Modal/useFieldReveal.d.ts.map +1 -0
  72. package/dist/ui/src/components/Modal/{useElementSize.d.ts → useMeasuredElement.d.ts} +1 -1
  73. package/dist/ui/src/components/Modal/useMeasuredElement.d.ts.map +1 -0
  74. package/dist/ui/src/components/Modal/useModalContentBlockTransition.d.ts +20 -1
  75. package/dist/ui/src/components/Modal/useModalContentBlockTransition.d.ts.map +1 -1
  76. package/dist/ui/src/components/Modal/useModalContentSizeSignal.d.ts +22 -0
  77. package/dist/ui/src/components/Modal/useModalContentSizeSignal.d.ts.map +1 -0
  78. package/dist/ui/src/components/Modal/useModalDrag.d.ts.map +1 -1
  79. package/dist/ui/src/components/Modal/useModalKeyboardAvoidance.d.ts +6 -1
  80. package/dist/ui/src/components/Modal/useModalKeyboardAvoidance.d.ts.map +1 -1
  81. package/dist/ui/src/components/Modal/useModalViewportGeometry.d.ts +1 -0
  82. package/dist/ui/src/components/Modal/useModalViewportGeometry.d.ts.map +1 -1
  83. package/dist/ui/src/components/PositionSnap/policy.d.ts.map +1 -1
  84. package/dist/ui/src/utils/gesture.d.ts +58 -0
  85. package/dist/ui/src/utils/gesture.d.ts.map +1 -0
  86. package/dist/utils/gesture.d.ts +2 -0
  87. package/dist/utils/gesture.js +103 -0
  88. package/docs/api-conventions.md +5 -0
  89. package/docs/gesture.md +64 -0
  90. package/docs/selector-contract.md +41 -10
  91. package/docs/spring.md +4 -0
  92. package/package.json +5 -1
  93. package/dist/components/Modal/useElementSize.js +0 -23
  94. package/dist/ui/src/components/Modal/useElementSize.d.ts.map +0 -1
@@ -0,0 +1,30 @@
1
+ import { useRef as n, useLayoutEffect as b, useEffect as v } from "react";
2
+ function a({
3
+ enabled: e,
4
+ bodyNode: o,
5
+ discreteKey: t,
6
+ onDiscreteChange: u,
7
+ onObservedChange: c
8
+ }) {
9
+ const f = n(t), s = n(u), i = n(c);
10
+ b(() => {
11
+ s.current = u, i.current = c;
12
+ }), b(() => {
13
+ Object.is(f.current, t) || (f.current = t, e && s.current?.());
14
+ }, [t, e]), v(() => {
15
+ const r = o?.firstElementChild;
16
+ if (!r || !e || typeof ResizeObserver > "u" || // A fill-layout content box tracks the scrollport and would report the
17
+ // surface's own motion back as a content change.
18
+ r.getAttribute("data-oc-layout") === "fill")
19
+ return;
20
+ const R = new ResizeObserver(() => {
21
+ i.current?.();
22
+ });
23
+ return R.observe(r, { box: "border-box" }), () => {
24
+ R.disconnect();
25
+ };
26
+ }, [o, e]);
27
+ }
28
+ export {
29
+ a as useModalContentSizeSignal
30
+ };