@a-type/ui 3.0.43 → 3.1.0-beta.4

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 (54) hide show
  1. package/dist/cjs/components/layouts/PageNav.js +1 -1
  2. package/dist/cjs/components/layouts/PageNav.js.map +1 -1
  3. package/dist/cjs/components/particles/ParticleLayer.js +2 -1
  4. package/dist/cjs/components/particles/ParticleLayer.js.map +1 -1
  5. package/dist/cjs/components/provider/Provider.js +2 -2
  6. package/dist/cjs/components/provider/Provider.js.map +1 -1
  7. package/dist/cjs/components/toasts/toasts.d.ts +34 -5
  8. package/dist/cjs/components/toasts/toasts.js +100 -31
  9. package/dist/cjs/components/toasts/toasts.js.map +1 -1
  10. package/dist/cjs/components/toasts/toasts.stories.js +44 -13
  11. package/dist/cjs/components/toasts/toasts.stories.js.map +1 -1
  12. package/dist/cjs/components/viewport/ViewportState.js +8 -4
  13. package/dist/cjs/components/viewport/ViewportState.js.map +1 -1
  14. package/dist/cjs/hooks/useOverrideTheme.js +1 -1
  15. package/dist/cjs/hooks/useOverrideTheme.js.map +1 -1
  16. package/dist/cjs/hooks/useSize.d.ts +1 -1
  17. package/dist/cjs/hooks/useSize.js.map +1 -1
  18. package/dist/cjs/hooks/useTitleBarColor.js +3 -0
  19. package/dist/cjs/hooks/useTitleBarColor.js.map +1 -1
  20. package/dist/cjs/hooks/useVisualViewportOffset.js +10 -1
  21. package/dist/cjs/hooks/useVisualViewportOffset.js.map +1 -1
  22. package/dist/css/main.css +3 -4
  23. package/dist/esm/components/layouts/PageNav.js +1 -1
  24. package/dist/esm/components/layouts/PageNav.js.map +1 -1
  25. package/dist/esm/components/particles/ParticleLayer.js +2 -1
  26. package/dist/esm/components/particles/ParticleLayer.js.map +1 -1
  27. package/dist/esm/components/provider/Provider.js +3 -3
  28. package/dist/esm/components/provider/Provider.js.map +1 -1
  29. package/dist/esm/components/toasts/toasts.d.ts +34 -5
  30. package/dist/esm/components/toasts/toasts.js +97 -28
  31. package/dist/esm/components/toasts/toasts.js.map +1 -1
  32. package/dist/esm/components/toasts/toasts.stories.js +40 -9
  33. package/dist/esm/components/toasts/toasts.stories.js.map +1 -1
  34. package/dist/esm/components/viewport/ViewportState.js +8 -4
  35. package/dist/esm/components/viewport/ViewportState.js.map +1 -1
  36. package/dist/esm/hooks/useOverrideTheme.js +1 -1
  37. package/dist/esm/hooks/useOverrideTheme.js.map +1 -1
  38. package/dist/esm/hooks/useSize.d.ts +1 -1
  39. package/dist/esm/hooks/useSize.js.map +1 -1
  40. package/dist/esm/hooks/useTitleBarColor.js +3 -0
  41. package/dist/esm/hooks/useTitleBarColor.js.map +1 -1
  42. package/dist/esm/hooks/useVisualViewportOffset.js +10 -1
  43. package/dist/esm/hooks/useVisualViewportOffset.js.map +1 -1
  44. package/package.json +3 -2
  45. package/src/components/layouts/PageNav.tsx +3 -1
  46. package/src/components/particles/ParticleLayer.tsx +3 -1
  47. package/src/components/provider/Provider.tsx +15 -11
  48. package/src/components/toasts/toasts.stories.tsx +50 -8
  49. package/src/components/toasts/toasts.tsx +249 -63
  50. package/src/components/viewport/ViewportState.ts +8 -4
  51. package/src/hooks/useOverrideTheme.ts +1 -1
  52. package/src/hooks/useSize.ts +1 -1
  53. package/src/hooks/useTitleBarColor.ts +3 -0
  54. package/src/hooks/useVisualViewportOffset.ts +38 -26
@@ -6,32 +6,35 @@ import { useStableCallback } from './useStableCallback.js';
6
6
  * Applies bottom offset px as a CSS custom property to the document root.
7
7
  */
8
8
  export function useVisualViewportOffset(disable?: boolean) {
9
- useReactToViewportChanges((viewport) => {
10
- document.documentElement.style.setProperty(
11
- '--viewport-bottom-offset',
12
- `${window.innerHeight - viewport.height - viewport.offsetTop}px`,
13
- );
14
- document.documentElement.style.setProperty(
15
- '--viewport-height',
16
- `${viewport.height}px`,
17
- );
18
- document.documentElement.style.setProperty(
19
- '--viewport-width',
20
- `${viewport.width}px`,
21
- );
22
- document.documentElement.style.setProperty(
23
- '--viewport-top-offset',
24
- `${viewport.offsetTop}px`,
25
- );
26
- document.documentElement.style.setProperty(
27
- '--viewport-left-offset',
28
- `${viewport.offsetLeft}px`,
29
- );
30
- document.documentElement.style.setProperty(
31
- '--keyboard-open',
32
- viewport.height < window.innerHeight ? '1' : '0',
33
- );
34
- }, disable);
9
+ useReactToViewportChanges(
10
+ (viewport) => {
11
+ document.documentElement.style.setProperty(
12
+ '--viewport-bottom-offset',
13
+ `${window.innerHeight - viewport.height - viewport.offsetTop}px`,
14
+ );
15
+ document.documentElement.style.setProperty(
16
+ '--viewport-height',
17
+ `${viewport.height}px`,
18
+ );
19
+ document.documentElement.style.setProperty(
20
+ '--viewport-width',
21
+ `${viewport.width}px`,
22
+ );
23
+ document.documentElement.style.setProperty(
24
+ '--viewport-top-offset',
25
+ `${viewport.offsetTop}px`,
26
+ );
27
+ document.documentElement.style.setProperty(
28
+ '--viewport-left-offset',
29
+ `${viewport.offsetLeft}px`,
30
+ );
31
+ document.documentElement.style.setProperty(
32
+ '--keyboard-open',
33
+ viewport.height < window.innerHeight ? '1' : '0',
34
+ );
35
+ },
36
+ disable || typeof window === 'undefined',
37
+ );
35
38
  }
36
39
 
37
40
  export function useIsKeyboardOpen() {
@@ -49,6 +52,9 @@ export function useIsKeyboardOpen() {
49
52
  boolean | undefined
50
53
  >(undefined);
51
54
  useEffect(() => {
55
+ if (typeof window === 'undefined') {
56
+ return;
57
+ }
52
58
  function handleOpen() {
53
59
  setSimulateKeyboardOpen(true);
54
60
  }
@@ -65,6 +71,9 @@ export function useIsKeyboardOpen() {
65
71
 
66
72
  const [isKeyboardOpen, setIsKeyboardOpen] = useState(false);
67
73
  useEffect(() => {
74
+ if (typeof navigator === 'undefined' || typeof window === 'undefined') {
75
+ return;
76
+ }
68
77
  if (!('virtualKeyboard' in navigator)) {
69
78
  // no support
70
79
  console.warn(
@@ -111,6 +120,9 @@ function useReactToViewportChanges(
111
120
  const stableCb = useStableCallback(cb);
112
121
  useEffect(() => {
113
122
  if (disable) return;
123
+ if (typeof window === 'undefined') {
124
+ return;
125
+ }
114
126
 
115
127
  const viewport = window.visualViewport;
116
128
  if (!viewport) {