@surdeddd/bottom-sheet 0.23.3 → 0.24.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 (80) hide show
  1. package/README.md +513 -525
  2. package/README.ru.md +685 -0
  3. package/dist/{BottomSheetCore-COvILxmR.d.ts → BottomSheetCore-B_r4KCQL.d.cts} +48 -12
  4. package/dist/{BottomSheetCore-CaJwHnxY.d.cts → BottomSheetCore-B_r4KCQL.d.ts} +48 -12
  5. package/dist/{BottomSheetEngine-C_1aPJsU.d.cts → BottomSheetEngine-0F7mjyvF.d.cts} +1 -1
  6. package/dist/{BottomSheetEngine-CsgCcCSO.d.ts → BottomSheetEngine-CJV_DDrM.d.ts} +1 -1
  7. package/dist/core.cjs +810 -436
  8. package/dist/core.d.cts +2 -3
  9. package/dist/core.d.ts +2 -3
  10. package/dist/core.js +810 -436
  11. package/dist/debug.d.cts +3 -3
  12. package/dist/debug.d.ts +3 -3
  13. package/dist/{default-features-BJx7J0NH.d.ts → default-features-4Xwv6aVt.d.ts} +4 -2
  14. package/dist/{default-features-CTJb8Wdk.d.cts → default-features-DX2NOxP6.d.cts} +4 -2
  15. package/dist/element.cjs +1428 -699
  16. package/dist/element.d.cts +15 -5
  17. package/dist/element.d.ts +15 -5
  18. package/dist/element.iife.global.js +2 -2
  19. package/dist/element.js +1428 -699
  20. package/dist/features.cjs +334 -190
  21. package/dist/features.d.cts +3 -4
  22. package/dist/features.d.ts +3 -4
  23. package/dist/features.js +334 -191
  24. package/dist/{index-CXN7t3rr.d.ts → index-2shlxhcG.d.cts} +3 -2
  25. package/dist/{index-BBrJJjy5.d.cts → index-CNCRQnpc.d.ts} +3 -2
  26. package/dist/index.cjs +1129 -631
  27. package/dist/index.d.cts +13 -7
  28. package/dist/index.d.ts +13 -7
  29. package/dist/index.js +1129 -632
  30. package/dist/integrations/formik.cjs +21 -10
  31. package/dist/integrations/formik.d.cts +3 -3
  32. package/dist/integrations/formik.d.ts +3 -3
  33. package/dist/integrations/formik.js +22 -11
  34. package/dist/integrations/react-hook-form.cjs +21 -12
  35. package/dist/integrations/react-hook-form.d.cts +3 -3
  36. package/dist/integrations/react-hook-form.d.ts +3 -3
  37. package/dist/integrations/react-hook-form.js +21 -12
  38. package/dist/option-keys-DItuAjUw.d.cts +6 -0
  39. package/dist/option-keys-a5DYNwwO.d.ts +6 -0
  40. package/dist/overlay.cjs +386 -189
  41. package/dist/overlay.d.cts +3 -4
  42. package/dist/overlay.d.ts +3 -4
  43. package/dist/overlay.js +386 -189
  44. package/dist/preact.d.cts +3 -4
  45. package/dist/preact.d.ts +3 -4
  46. package/dist/qwik-lib/index.qwik.cjs +1306 -671
  47. package/dist/qwik-lib/index.qwik.mjs +1306 -671
  48. package/dist/qwik.cjs +1326 -701
  49. package/dist/qwik.d.cts +14 -30
  50. package/dist/qwik.d.ts +14 -30
  51. package/dist/qwik.js +1326 -701
  52. package/dist/react.cjs +1373 -750
  53. package/dist/react.d.cts +31 -14
  54. package/dist/react.d.ts +31 -14
  55. package/dist/react.js +1375 -752
  56. package/dist/solid.cjs +1332 -727
  57. package/dist/solid.d.cts +13 -437
  58. package/dist/solid.d.ts +13 -437
  59. package/dist/solid.js +1334 -729
  60. package/dist/solid.source.jsx +1374 -751
  61. package/dist/styles.css +20 -6
  62. package/dist/svelte-core.cjs +1211 -676
  63. package/dist/svelte-core.js +1207 -677
  64. package/dist/svelte-src/BottomSheet.svelte +102 -59
  65. package/dist/svelte.cjs +1324 -707
  66. package/dist/svelte.d.cts +45 -25
  67. package/dist/svelte.d.ts +45 -25
  68. package/dist/svelte.js +1324 -707
  69. package/dist/vue.cjs +1354 -773
  70. package/dist/vue.d.cts +20 -3
  71. package/dist/vue.d.ts +20 -3
  72. package/dist/vue.js +1354 -773
  73. package/dist/webgl.cjs +38 -7
  74. package/dist/webgl.d.cts +3 -3
  75. package/dist/webgl.d.ts +3 -3
  76. package/dist/webgl.js +38 -7
  77. package/llms.txt +330 -0
  78. package/package.json +62 -42
  79. package/dist/transform-jVfAikE9.d.cts +0 -3
  80. package/dist/transform-jVfAikE9.d.ts +0 -3
package/dist/svelte.d.cts CHANGED
@@ -2,6 +2,7 @@ import type { Component, Snippet } from "svelte";
2
2
  import type {
3
3
  AnchorOptions,
4
4
  BottomSheetEngine,
5
+ CloseReason,
5
6
  EngineOptions,
6
7
  EngineState,
7
8
  SheetEventMap,
@@ -50,7 +51,7 @@ export type SvelteBottomSheetController<TId extends string = string> = {
50
51
  ): () => void;
51
52
  snapTo(id: TId): Promise<void>;
52
53
  open(id?: TId): Promise<void>;
53
- close(): Promise<void>;
54
+ close(reason?: CloseReason): Promise<void>;
54
55
  expand(): Promise<void>;
55
56
  collapse(): Promise<void>;
56
57
  isTop(): boolean;
@@ -70,39 +71,32 @@ export function createBottomSheet<TId extends string = string>(
70
71
  opts: SvelteBottomSheetOpts<TId>,
71
72
  ): SvelteBottomSheetController<TId>;
72
73
 
73
- export type BottomSheetProps<TId extends string = string> = {
74
+ export type BottomSheetProps<TId extends string = string> = Omit<
75
+ Partial<EngineOptions>,
76
+ | "element"
77
+ | "handle"
78
+ | "scrollContainer"
79
+ | "backdrop"
80
+ | "scrim"
81
+ | "screenComponent"
82
+ | "snapPoints"
83
+ | "allowed"
84
+ | "initial"
85
+ > & {
74
86
  snapPoints: SnapPointDef<TId>[];
75
87
  allowed?: TId[];
76
88
  initial?: TId;
77
- mode?: SheetMode;
78
- animation?: "spring" | "tween";
79
- spring?: { stiffness?: number; damping?: number; mass?: number };
80
- focusTrap?: boolean;
81
- closeOnEscape?: boolean;
82
- closeOnBack?: boolean;
83
- lockBodyScroll?: boolean;
84
- rubberBand?: boolean;
85
- backdropRange?: [number, number];
86
89
  backdrop?: boolean;
87
90
  closeOnBackdrop?: boolean;
88
- persistent?: boolean;
89
- disableClose?: boolean;
90
- disableDrag?: boolean;
91
- dragFrom?: "handle" | "sheet" | "zones";
92
- dragFromContent?: boolean;
93
- fitContentToSnap?: boolean;
94
- closeOnRouteChange?: boolean;
95
- stackEffect?: boolean;
96
91
  teleport?: boolean;
97
92
  teleportTo?: string | HTMLElement | null;
98
- radius?: string | number;
99
- maxHeight?: string | number;
100
93
  backdropColor?: string;
101
94
  backdropOpacity?: number;
102
95
  open?: boolean;
103
96
  snap?: TId;
104
- returnFocusTo?: HTMLElement | string | (() => HTMLElement | null);
105
97
  ariaLabel?: string;
98
+ handleLabel?: string;
99
+ contentLabel?: string;
106
100
  header?: Snippet<[EngineState & { activeId: TId }]>;
107
101
  footer?: Snippet<[EngineState & { activeId: TId }]>;
108
102
  leftButton?: Snippet;
@@ -116,14 +110,40 @@ export type BottomSheetProps<TId extends string = string> = {
116
110
  onbeforeclose?: (payload: SheetEventMap["before-close"]) => void;
117
111
  onopened?: (id: TId) => void;
118
112
  onclosed?: () => void;
119
- ondragstart?: () => void;
120
- ondragend?: () => void;
113
+ ondragstart?: (payload: SheetEventMap["dragstart"]) => void;
114
+ ondragend?: (payload: SheetEventMap["dragend"]) => void;
121
115
  ondrag?: (payload: SheetEventMap["drag"]) => void;
122
116
  onprogress?: (payload: SheetEventMap["progress"]) => void;
123
117
  onchange?: (state: EngineState & { activeId: TId }) => void;
124
118
  };
125
119
 
126
- export const BottomSheet: Component<BottomSheetProps>;
120
+ export type BottomSheetExports<TId extends string = string> = {
121
+ snapTo(id: TId): Promise<void>;
122
+ open(id?: TId): Promise<void>;
123
+ close(reason?: CloseReason): Promise<void>;
124
+ expand(): Promise<void>;
125
+ collapse(): Promise<void>;
126
+ isTop(): boolean;
127
+ depth(): number;
128
+ setAllowed(ids: TId[], snap?: TId): void;
129
+ setSnapPoints(points: EngineOptions["snapPoints"], allowed?: string[]): void;
130
+ setScrim(opts: ScrimUpdate): void;
131
+ setScrimOverlay(opts: ScrimOverlayOptions): () => void;
132
+ addAnchor(opts: AnchorOptions): () => void;
133
+ setScrimStages(opts: ScrimStagesOptions | null): () => void;
134
+ recompute(): void;
135
+ setRadius(r: string | number): void;
136
+ setMaxHeight(h: string | number): void;
137
+ canDismiss(): boolean;
138
+ getState(): EngineState & { activeId: TId };
139
+ getEngine(): BottomSheetEngine | null;
140
+ };
141
+
142
+ export const BottomSheet: Component<
143
+ BottomSheetProps,
144
+ BottomSheetExports,
145
+ "open" | "snap"
146
+ >;
127
147
 
128
148
  export type {
129
149
  SnapPoint,
package/dist/svelte.d.ts CHANGED
@@ -2,6 +2,7 @@ import type { Component, Snippet } from "svelte";
2
2
  import type {
3
3
  AnchorOptions,
4
4
  BottomSheetEngine,
5
+ CloseReason,
5
6
  EngineOptions,
6
7
  EngineState,
7
8
  SheetEventMap,
@@ -50,7 +51,7 @@ export type SvelteBottomSheetController<TId extends string = string> = {
50
51
  ): () => void;
51
52
  snapTo(id: TId): Promise<void>;
52
53
  open(id?: TId): Promise<void>;
53
- close(): Promise<void>;
54
+ close(reason?: CloseReason): Promise<void>;
54
55
  expand(): Promise<void>;
55
56
  collapse(): Promise<void>;
56
57
  isTop(): boolean;
@@ -70,39 +71,32 @@ export function createBottomSheet<TId extends string = string>(
70
71
  opts: SvelteBottomSheetOpts<TId>,
71
72
  ): SvelteBottomSheetController<TId>;
72
73
 
73
- export type BottomSheetProps<TId extends string = string> = {
74
+ export type BottomSheetProps<TId extends string = string> = Omit<
75
+ Partial<EngineOptions>,
76
+ | "element"
77
+ | "handle"
78
+ | "scrollContainer"
79
+ | "backdrop"
80
+ | "scrim"
81
+ | "screenComponent"
82
+ | "snapPoints"
83
+ | "allowed"
84
+ | "initial"
85
+ > & {
74
86
  snapPoints: SnapPointDef<TId>[];
75
87
  allowed?: TId[];
76
88
  initial?: TId;
77
- mode?: SheetMode;
78
- animation?: "spring" | "tween";
79
- spring?: { stiffness?: number; damping?: number; mass?: number };
80
- focusTrap?: boolean;
81
- closeOnEscape?: boolean;
82
- closeOnBack?: boolean;
83
- lockBodyScroll?: boolean;
84
- rubberBand?: boolean;
85
- backdropRange?: [number, number];
86
89
  backdrop?: boolean;
87
90
  closeOnBackdrop?: boolean;
88
- persistent?: boolean;
89
- disableClose?: boolean;
90
- disableDrag?: boolean;
91
- dragFrom?: "handle" | "sheet" | "zones";
92
- dragFromContent?: boolean;
93
- fitContentToSnap?: boolean;
94
- closeOnRouteChange?: boolean;
95
- stackEffect?: boolean;
96
91
  teleport?: boolean;
97
92
  teleportTo?: string | HTMLElement | null;
98
- radius?: string | number;
99
- maxHeight?: string | number;
100
93
  backdropColor?: string;
101
94
  backdropOpacity?: number;
102
95
  open?: boolean;
103
96
  snap?: TId;
104
- returnFocusTo?: HTMLElement | string | (() => HTMLElement | null);
105
97
  ariaLabel?: string;
98
+ handleLabel?: string;
99
+ contentLabel?: string;
106
100
  header?: Snippet<[EngineState & { activeId: TId }]>;
107
101
  footer?: Snippet<[EngineState & { activeId: TId }]>;
108
102
  leftButton?: Snippet;
@@ -116,14 +110,40 @@ export type BottomSheetProps<TId extends string = string> = {
116
110
  onbeforeclose?: (payload: SheetEventMap["before-close"]) => void;
117
111
  onopened?: (id: TId) => void;
118
112
  onclosed?: () => void;
119
- ondragstart?: () => void;
120
- ondragend?: () => void;
113
+ ondragstart?: (payload: SheetEventMap["dragstart"]) => void;
114
+ ondragend?: (payload: SheetEventMap["dragend"]) => void;
121
115
  ondrag?: (payload: SheetEventMap["drag"]) => void;
122
116
  onprogress?: (payload: SheetEventMap["progress"]) => void;
123
117
  onchange?: (state: EngineState & { activeId: TId }) => void;
124
118
  };
125
119
 
126
- export const BottomSheet: Component<BottomSheetProps>;
120
+ export type BottomSheetExports<TId extends string = string> = {
121
+ snapTo(id: TId): Promise<void>;
122
+ open(id?: TId): Promise<void>;
123
+ close(reason?: CloseReason): Promise<void>;
124
+ expand(): Promise<void>;
125
+ collapse(): Promise<void>;
126
+ isTop(): boolean;
127
+ depth(): number;
128
+ setAllowed(ids: TId[], snap?: TId): void;
129
+ setSnapPoints(points: EngineOptions["snapPoints"], allowed?: string[]): void;
130
+ setScrim(opts: ScrimUpdate): void;
131
+ setScrimOverlay(opts: ScrimOverlayOptions): () => void;
132
+ addAnchor(opts: AnchorOptions): () => void;
133
+ setScrimStages(opts: ScrimStagesOptions | null): () => void;
134
+ recompute(): void;
135
+ setRadius(r: string | number): void;
136
+ setMaxHeight(h: string | number): void;
137
+ canDismiss(): boolean;
138
+ getState(): EngineState & { activeId: TId };
139
+ getEngine(): BottomSheetEngine | null;
140
+ };
141
+
142
+ export const BottomSheet: Component<
143
+ BottomSheetProps,
144
+ BottomSheetExports,
145
+ "open" | "snap"
146
+ >;
127
147
 
128
148
  export type {
129
149
  SnapPoint,