@rcarls/rc-webcomponents 0.3.2 → 0.4.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.
package/README.md CHANGED
@@ -28,13 +28,18 @@ import '@rcarls/rc-webcomponents/define';
28
28
 
29
29
  ```ts
30
30
  import {
31
+ RCButton,
32
+ RCCard,
31
33
  RCCombobox,
32
34
  RCDialog,
35
+ RCFabMenu,
33
36
  RCListbox,
34
37
  RcMarkdownEditor,
35
38
  RCMenu,
36
39
  RCMenuButton,
37
40
  RCMenubar,
41
+ RCNavigationBar,
42
+ RCNavigationRail,
38
43
  RCSelect,
39
44
  RCSplitter,
40
45
  RCTextarea,
@@ -54,28 +59,38 @@ fallbacks:
54
59
 
55
60
  ## Included Packages
56
61
 
57
- | Package | Purpose |
58
- | --- | --- |
59
- | `rc-app-bar` | App bar modeled after Material 3 Top app bar. |
60
- | `rc-accordion` | Accordion coordinator for native `<details>` panels. |
61
- | `rc-combobox` | Editable combobox with filtering and optional allow-create behavior. |
62
- | `rc-dialog` | Draggable, resizable wrapper for a native `<dialog>`. |
63
- | `rc-disclosure` | Disclosure wrapper for native `<details>`/`<summary>`. |
64
- | `rc-fab` | Sticky floating action button modeled after Material 3 FAB. |
65
- | `rc-listbox` | Listbox that keeps option DOM in light DOM. |
66
- | `rc-markdown-editor` | Rich/source Markdown editor backed by `rc-textarea`. |
67
- | `rc-menu` | Menu popup for command surfaces. |
68
- | `rc-menu-button` | Trigger button that opens an `rc-menu` popup. |
69
- | `rc-menubar` | Menubar coordinator for `rc-menu-button` children. |
70
- | `rc-range-slider` | Two-thumb range slider backed by native range inputs. |
71
- | `rc-search-bar` | Search field wrapper for native `<input type="search">`. |
72
- | `rc-select` | Select-only combobox backed by a native `<select>`. |
73
- | `rc-slider` | Single-thumb slider backed by native `<input type="range">`. |
74
- | `rc-splitter` | Resizable pane splitter with pointer and keyboard controls. |
75
- | `rc-textarea` | Textarea wrapper with line decorations and plugin hooks. |
76
- | `rc-toolbar` | Toolbar that groups controls into one tab stop. |
77
- | `rc-transfer-list` | Transfer list enhancing native `<select multiple>`. |
78
- | `rc-virtual-canvas` | Scrollable virtual canvas for large coordinate-space content. |
62
+ | Package | Purpose |
63
+ | -------------------- | -------------------------------------------------------------------- |
64
+ | `rc-app-bar` | App bar modeled after Material 3 Top app bar. |
65
+ | `rc-accordion` | Accordion coordinator for native `<details>` panels. |
66
+ | `rc-bottom-sheet` | Modal bottom-sheet wrapper for a native `<dialog>`. |
67
+ | `rc-button` | Progressive-enhancement wrapper for native `<button>`. |
68
+ | `rc-card` | Design-system-neutral structural card shell. |
69
+ | `rc-chip` | Chip wrapper that preserves a native `<button>`. |
70
+ | `rc-combobox` | Editable combobox with filtering and optional allow-create behavior. |
71
+ | `rc-dialog` | Draggable, resizable wrapper for a native `<dialog>`. |
72
+ | `rc-disclosure` | Disclosure wrapper for native `<details>`/`<summary>`. |
73
+ | `rc-fab` | Sticky floating action button modeled after Material 3 FAB. |
74
+ | `rc-fab-menu` | Floating action button menu wrapper for an `rc-menu` action surface. |
75
+ | `rc-listbox` | Listbox that keeps option DOM in light DOM. |
76
+ | `rc-markdown-editor` | Rich/source Markdown editor backed by `rc-textarea`. |
77
+ | `rc-menu` | Menu popup for command surfaces. |
78
+ | `rc-menu-button` | Trigger button that opens an `rc-menu` popup. |
79
+ | `rc-menubar` | Menubar coordinator for `rc-menu-button` children. |
80
+ | `rc-navigation-bar` | Bottom navigation layout that styles consumer-authored links. |
81
+ | `rc-navigation-rail` | Navigation rail layout that styles consumer-authored links. |
82
+ | `rc-range-slider` | Two-thumb range slider backed by native range inputs. |
83
+ | `rc-search-bar` | Search field/view wrapper for native `<input type="search">`. |
84
+ | `rc-segmented-button` | Segmented radio group enhancer for native radios in a `<fieldset>`. |
85
+ | `rc-select` | Select-only combobox backed by a native `<select>`. |
86
+ | `rc-slider` | Single-thumb slider backed by native `<input type="range">`. |
87
+ | `rc-snackbar` | Live-region status-message host with queueing and optional action. |
88
+ | `rc-splitter` | Resizable pane splitter with pointer and keyboard controls. |
89
+ | `rc-switch` | Switch wrapper that enhances a native checkbox input. |
90
+ | `rc-textarea` | Textarea wrapper with line decorations and plugin hooks. |
91
+ | `rc-toolbar` | Toolbar that groups controls into one tab stop. |
92
+ | `rc-transfer-list` | Transfer list enhancing native `<select multiple>`. |
93
+ | `rc-virtual-canvas` | Scrollable virtual canvas for large coordinate-space content. |
79
94
 
80
95
  ## Notes
81
96
 
@@ -1,18 +1,28 @@
1
1
  import "@rcarls/rc-app-bar/define";
2
+ import "@rcarls/rc-bottom-sheet/define";
3
+ import "@rcarls/rc-button/define";
4
+ import "@rcarls/rc-card/define";
5
+ import "@rcarls/rc-chip/define";
2
6
  import "@rcarls/rc-combobox/define";
3
7
  import "@rcarls/rc-dialog/define";
4
8
  import "@rcarls/rc-disclosure/define";
5
9
  import "@rcarls/rc-fab/define";
10
+ import "@rcarls/rc-fab-menu/define";
6
11
  import "@rcarls/rc-accordion/define";
7
12
  import "@rcarls/rc-listbox/define";
8
13
  import "@rcarls/rc-menubar/define";
9
14
  import "@rcarls/rc-menu-button/define";
10
15
  import "@rcarls/rc-menu/define";
16
+ import "@rcarls/rc-navigation-bar/define";
17
+ import "@rcarls/rc-navigation-rail/define";
11
18
  import "@rcarls/rc-range-slider/define";
12
19
  import "@rcarls/rc-search-bar/define";
20
+ import "@rcarls/rc-segmented-button/define";
13
21
  import "@rcarls/rc-select/define";
14
22
  import "@rcarls/rc-slider/define";
23
+ import "@rcarls/rc-snackbar/define";
15
24
  import "@rcarls/rc-splitter/define";
25
+ import "@rcarls/rc-switch/define";
16
26
  import "@rcarls/rc-markdown-editor/define";
17
27
  import "@rcarls/rc-textarea/define";
18
28
  import "@rcarls/rc-toolbar/define";
@@ -20,20 +30,30 @@ import "@rcarls/rc-transfer-list/define";
20
30
  import "@rcarls/rc-virtual-canvas/define";
21
31
  export * from "@rcarls/rc-accordion";
22
32
  export * from "@rcarls/rc-app-bar";
33
+ export * from "@rcarls/rc-bottom-sheet";
34
+ export * from "@rcarls/rc-button";
35
+ export * from "@rcarls/rc-card";
36
+ export * from "@rcarls/rc-chip";
23
37
  export * from "@rcarls/rc-combobox";
24
38
  export * from "@rcarls/rc-dialog";
25
39
  export * from "@rcarls/rc-disclosure";
26
40
  export * from "@rcarls/rc-fab";
41
+ export * from "@rcarls/rc-fab-menu";
27
42
  export * from "@rcarls/rc-listbox";
28
43
  export * from "@rcarls/rc-markdown-editor";
29
44
  export * from "@rcarls/rc-menu";
30
45
  export * from "@rcarls/rc-menu-button";
31
46
  export * from "@rcarls/rc-menubar";
47
+ export * from "@rcarls/rc-navigation-bar";
48
+ export * from "@rcarls/rc-navigation-rail";
32
49
  export * from "@rcarls/rc-range-slider";
33
50
  export * from "@rcarls/rc-search-bar";
51
+ export * from "@rcarls/rc-segmented-button";
34
52
  export * from "@rcarls/rc-select";
35
53
  export * from "@rcarls/rc-slider";
54
+ export * from "@rcarls/rc-snackbar";
36
55
  export * from "@rcarls/rc-splitter";
56
+ export * from "@rcarls/rc-switch";
37
57
  export * from "@rcarls/rc-textarea";
38
58
  export * from "@rcarls/rc-toolbar";
39
59
  export * from "@rcarls/rc-transfer-list";
@@ -1 +1 @@
1
- {"version":3,"file":"rc-webcomponents-define.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"rc-webcomponents-define.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,19 +1,29 @@
1
1
  export * from "@rcarls/rc-accordion";
2
2
  export * from "@rcarls/rc-app-bar";
3
+ export * from "@rcarls/rc-bottom-sheet";
4
+ export * from "@rcarls/rc-button";
5
+ export * from "@rcarls/rc-card";
6
+ export * from "@rcarls/rc-chip";
3
7
  export * from "@rcarls/rc-combobox";
4
8
  export * from "@rcarls/rc-dialog";
5
9
  export * from "@rcarls/rc-disclosure";
6
10
  export * from "@rcarls/rc-fab";
11
+ export * from "@rcarls/rc-fab-menu";
7
12
  export * from "@rcarls/rc-listbox";
8
13
  export * from "@rcarls/rc-markdown-editor";
9
14
  export * from "@rcarls/rc-menu";
10
15
  export * from "@rcarls/rc-menu-button";
11
16
  export * from "@rcarls/rc-menubar";
17
+ export * from "@rcarls/rc-navigation-bar";
18
+ export * from "@rcarls/rc-navigation-rail";
12
19
  export * from "@rcarls/rc-range-slider";
13
20
  export * from "@rcarls/rc-search-bar";
21
+ export * from "@rcarls/rc-segmented-button";
14
22
  export * from "@rcarls/rc-select";
15
23
  export * from "@rcarls/rc-slider";
24
+ export * from "@rcarls/rc-snackbar";
16
25
  export * from "@rcarls/rc-splitter";
26
+ export * from "@rcarls/rc-switch";
17
27
  export * from "@rcarls/rc-textarea";
18
28
  export * from "@rcarls/rc-toolbar";
19
29
  export * from "@rcarls/rc-transfer-list";
@@ -1 +1 @@
1
- {"version":3,"file":"rc-webcomponents.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"rc-webcomponents.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,19 +1,29 @@
1
1
  export * from '@rcarls/rc-accordion';
2
2
  export * from '@rcarls/rc-app-bar';
3
+ export * from '@rcarls/rc-bottom-sheet';
4
+ export * from '@rcarls/rc-button';
5
+ export * from '@rcarls/rc-card';
6
+ export * from '@rcarls/rc-chip';
3
7
  export * from '@rcarls/rc-combobox';
4
8
  export * from '@rcarls/rc-dialog';
5
9
  export * from '@rcarls/rc-disclosure';
6
10
  export * from '@rcarls/rc-fab';
11
+ export * from '@rcarls/rc-fab-menu';
7
12
  export * from '@rcarls/rc-listbox';
8
13
  export * from '@rcarls/rc-markdown-editor';
9
14
  export * from '@rcarls/rc-menu';
10
15
  export * from '@rcarls/rc-menu-button';
11
16
  export * from '@rcarls/rc-menubar';
17
+ export * from '@rcarls/rc-navigation-bar';
18
+ export * from '@rcarls/rc-navigation-rail';
12
19
  export * from '@rcarls/rc-range-slider';
13
20
  export * from '@rcarls/rc-search-bar';
21
+ export * from '@rcarls/rc-segmented-button';
14
22
  export * from '@rcarls/rc-select';
15
23
  export * from '@rcarls/rc-slider';
24
+ export * from '@rcarls/rc-snackbar';
16
25
  export * from '@rcarls/rc-splitter';
26
+ export * from '@rcarls/rc-switch';
17
27
  export * from '@rcarls/rc-textarea';
18
28
  export * from '@rcarls/rc-toolbar';
19
29
  export * from '@rcarls/rc-transfer-list';
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "0.3.2",
6
+ "version": "0.4.0",
7
7
  "description": "Aggregate package that re-exports and defines the rc-webcomponents collection.",
8
8
  "repository": {
9
9
  "type": "git",
@@ -52,20 +52,30 @@
52
52
  "dependencies": {
53
53
  "@rcarls/rc-accordion": "workspace:*",
54
54
  "@rcarls/rc-app-bar": "workspace:*",
55
+ "@rcarls/rc-bottom-sheet": "workspace:*",
56
+ "@rcarls/rc-button": "workspace:*",
57
+ "@rcarls/rc-card": "workspace:*",
58
+ "@rcarls/rc-chip": "workspace:*",
55
59
  "@rcarls/rc-combobox": "workspace:*",
56
60
  "@rcarls/rc-dialog": "workspace:*",
57
61
  "@rcarls/rc-disclosure": "workspace:*",
58
62
  "@rcarls/rc-fab": "workspace:*",
63
+ "@rcarls/rc-fab-menu": "workspace:*",
59
64
  "@rcarls/rc-listbox": "workspace:*",
60
65
  "@rcarls/rc-markdown-editor": "workspace:*",
61
66
  "@rcarls/rc-menu": "workspace:*",
62
67
  "@rcarls/rc-menu-button": "workspace:*",
63
68
  "@rcarls/rc-menubar": "workspace:*",
69
+ "@rcarls/rc-navigation-bar": "workspace:*",
70
+ "@rcarls/rc-navigation-rail": "workspace:*",
64
71
  "@rcarls/rc-range-slider": "workspace:*",
65
72
  "@rcarls/rc-search-bar": "workspace:*",
73
+ "@rcarls/rc-segmented-button": "workspace:*",
66
74
  "@rcarls/rc-select": "workspace:*",
67
75
  "@rcarls/rc-slider": "workspace:*",
76
+ "@rcarls/rc-snackbar": "workspace:*",
68
77
  "@rcarls/rc-splitter": "workspace:*",
78
+ "@rcarls/rc-switch": "workspace:*",
69
79
  "@rcarls/rc-textarea": "workspace:*",
70
80
  "@rcarls/rc-toolbar": "workspace:*",
71
81
  "@rcarls/rc-transfer-list": "workspace:*",
package/src/react.d.ts CHANGED
@@ -69,9 +69,7 @@ export type RCListboxActionChangeDetail<Action extends string = string> = RCSele
69
69
  action: Action;
70
70
  };
71
71
 
72
- export type RCListboxChangeDetail =
73
- | RCListboxSelectChangeDetail
74
- | RCListboxActionChangeDetail;
72
+ export type RCListboxChangeDetail = RCListboxSelectChangeDetail | RCListboxActionChangeDetail;
75
73
 
76
74
  export type RCComboboxCreateDetail = {
77
75
  text: string;
@@ -86,6 +84,18 @@ export type RCDialogCloseDetail = {
86
84
  returnValue: string;
87
85
  };
88
86
 
87
+ /** Detail shape for `rc-bottom-sheet-snap`. */
88
+ export type RCBottomSheetSnapDetail = {
89
+ /** Index into the resolved snap-point list selected as the target. */
90
+ index: number;
91
+
92
+ /** Target height, in pixels. */
93
+ height: number;
94
+
95
+ /** Whether the snap came from a drag release or a `snapTo()` call. */
96
+ trigger: 'drag' | 'api';
97
+ };
98
+
89
99
  export type RCMenuActivateDetail = {
90
100
  item: HTMLElement;
91
101
  value: string;
@@ -193,8 +203,108 @@ export type RCTextareaSelectDetail = {
193
203
  selectionEnd: number;
194
204
  };
195
205
 
206
+ export type RCSwitchChangeDetail = {
207
+ checked: boolean;
208
+ };
209
+
210
+ export type RCSegmentedButtonChangeDetail = {
211
+ value: string;
212
+ };
213
+
214
+ export type RCChipVariant = 'assist' | 'filter' | 'input' | 'suggestion';
215
+
216
+ export type RCChipChangeDetail = {
217
+ selected: boolean;
218
+ };
219
+
220
+ export type RCChipRemoveDetail = {
221
+ chip: HTMLElement;
222
+ };
223
+
224
+ export type RCButtonToggleDetail = {
225
+ selected: boolean;
226
+ };
227
+
228
+ export type RCSnackbarQueuePolicy = 'queue' | 'replace';
229
+ export type RCSnackbarCloseReason = 'action' | 'api' | 'timeout' | 'replace' | 'clear';
230
+
231
+ export type RCSnackbarShowOptions = {
232
+ message: string;
233
+ actionLabel?: string;
234
+ duration?: number;
235
+ };
236
+
237
+ export type RCSnackbarActionDetail = {
238
+ message: string;
239
+ };
240
+
241
+ export type RCSnackbarCloseDetail = {
242
+ reason: RCSnackbarCloseReason;
243
+ message: string;
244
+ };
245
+
196
246
  // ── Ref types ────────────────────────────────────────────────────────────────
197
247
 
248
+ /** Public API surface of `<rc-button>`. */
249
+ export type RCButtonRef = HTMLElement & {
250
+ disabled: boolean;
251
+ pending: boolean;
252
+ progress: boolean;
253
+ progressValue: number | undefined;
254
+ toggle: boolean;
255
+ selected: boolean;
256
+ defaultSelected: boolean;
257
+ iconOnly: boolean;
258
+ fullWidth: boolean;
259
+ };
260
+
261
+ /** Public API surface of `<rc-card>`. */
262
+ export type RCCardRef = HTMLElement & {
263
+ selected: boolean;
264
+ disabled: boolean;
265
+ interactive: boolean;
266
+ actionTarget: string;
267
+ };
268
+
269
+ /** Public API surface of `<rc-switch>`. */
270
+ export type RCSwitchRef = HTMLElement & {
271
+ checked: boolean;
272
+ defaultChecked: boolean;
273
+ disabled: boolean;
274
+ icons: boolean;
275
+ showOnlySelectedIcon: boolean;
276
+ };
277
+
278
+ /** Public API surface of `<rc-segmented-button>`. */
279
+ export type RCSegmentedButtonRef = HTMLElement & {
280
+ value: string;
281
+ defaultValue: string;
282
+ disabled: boolean;
283
+ orientation: 'horizontal' | 'vertical';
284
+ };
285
+
286
+ /** Public API surface of `<rc-chip>`. */
287
+ export type RCChipRef = HTMLElement & {
288
+ variant: RCChipVariant;
289
+ selected: boolean;
290
+ defaultSelected: boolean;
291
+ disabled: boolean;
292
+ readonly: boolean;
293
+ removable: boolean;
294
+ };
295
+
296
+ /** Public API surface of `<rc-snackbar>`. */
297
+ export type RCSnackbarRef = HTMLElement & {
298
+ open: boolean;
299
+ message: string;
300
+ actionLabel: string;
301
+ duration: number;
302
+ queuePolicy: RCSnackbarQueuePolicy;
303
+ show(message: string | RCSnackbarShowOptions): void;
304
+ close(reason?: RCSnackbarCloseReason): void;
305
+ clear(): void;
306
+ };
307
+
198
308
  /** Public API surface of `<rc-disclosure>`. */
199
309
  export type RCDisclosureRef = HTMLElement & {
200
310
  open: boolean;
@@ -249,6 +359,17 @@ export type RCComboboxRef = RCSelectRef & {
249
359
  };
250
360
 
251
361
  /** Public API surface of `<rc-dialog>`. */
362
+ export type RCDialogResizeOrigin =
363
+ | ''
364
+ | 'top'
365
+ | 'right'
366
+ | 'bottom'
367
+ | 'left'
368
+ | 'top-left'
369
+ | 'top-right'
370
+ | 'bottom-left'
371
+ | 'bottom-right';
372
+
252
373
  export type RCDialogRef = HTMLElement & {
253
374
  open: boolean | undefined;
254
375
  defaultOpen: boolean;
@@ -257,6 +378,8 @@ export type RCDialogRef = HTMLElement & {
257
378
  moveBounds: 'viewport' | 'parent';
258
379
  moveStep: number;
259
380
  resize: 'none' | 'both' | 'horizontal' | 'vertical';
381
+ resizeOrigin: RCDialogResizeOrigin;
382
+ resizeHandle: string;
260
383
  resizeThreshold: number;
261
384
  resizeStep: number;
262
385
  closedBy: 'any' | 'closerequest' | 'none' | '';
@@ -268,6 +391,14 @@ export type RCDialogRef = HTMLElement & {
268
391
  requestClose(returnValue?: string): void;
269
392
  };
270
393
 
394
+ /** Public API surface of `<rc-bottom-sheet>`. */
395
+ export type RCBottomSheetRef = RCDialogRef & {
396
+ snapPoints: string;
397
+ swipeDismiss: boolean;
398
+ swipeVelocity: number;
399
+ snapTo(index: number, behavior?: 'animated' | 'instant'): void;
400
+ };
401
+
271
402
  /** Public API surface of `<rc-menu>`. */
272
403
  export type RCMenuRef = HTMLElement & {
273
404
  label: string;
@@ -295,6 +426,34 @@ export type RCMenuButtonRef = HTMLElement & {
295
426
  placement: RCMenuButtonPlacement;
296
427
  };
297
428
 
429
+ /** Public API surface of `<rc-fab-menu>`. */
430
+ export type RCFabMenuRef = RCMenuButtonRef & {
431
+ position: 'bottom-end' | 'bottom-start' | 'top-end' | 'top-start';
432
+ };
433
+
434
+ export type RCFabMenuToggleDetail = {
435
+ open: boolean;
436
+ };
437
+
438
+ /** Public API surface of `<rc-navigation-bar>`. */
439
+ export type RCNavigationBarRef = HTMLElement & {
440
+ activeSelector: string;
441
+ indicatorTarget: string;
442
+ };
443
+
444
+ /** Public API surface of `<rc-navigation-rail>`. */
445
+ export type RCNavigationRailRef = RCNavigationBarRef & {
446
+ expanded: boolean;
447
+ defaultExpanded: boolean;
448
+ expand(): void;
449
+ collapse(): void;
450
+ toggleExpanded(): void;
451
+ };
452
+
453
+ export type RCNavigationRailToggleDetail = {
454
+ expanded: boolean;
455
+ };
456
+
298
457
  /** Public API surface of `<rc-menubar>`. */
299
458
  export type RCMenubarRef = HTMLElement & {
300
459
  label: string;
@@ -311,11 +470,17 @@ export type RCToolbarRef = HTMLElement & {
311
470
  export type RCSplitterRef = HTMLElement & {
312
471
  label: string;
313
472
  orientation: 'horizontal' | 'vertical';
314
- mode: 'length' | 'percent';
473
+ mode: 'length' | 'percent' | 'fixed';
315
474
  step: number;
475
+ min: number;
476
+ max: number | undefined;
316
477
  value: number;
317
478
  defaultValue: number | undefined;
318
479
  fixed: boolean;
480
+ collapsible: boolean;
481
+ snapPoints: string;
482
+ swipeVelocity: number;
483
+ snapTo(index: number, behavior?: 'animated' | 'instant'): void;
319
484
  };
320
485
 
321
486
  /** Public API surface of `<rc-slider>`. */
@@ -420,11 +585,17 @@ export type RCAppBarRef = HTMLElement & {
420
585
 
421
586
  /** Public API surface of `<rc-search-bar>`. */
422
587
  export type RCSearchBarRef = HTMLElement & {
588
+ variant: 'bar' | 'view';
589
+ open: boolean;
590
+ defaultOpen: boolean;
423
591
  value: string;
424
592
  defaultValue: string | undefined;
425
593
  debounce: number;
426
594
  clearLabel: string;
427
595
  placeholder: string | undefined;
596
+ showView(): void;
597
+ closeView(): void;
598
+ toggleView(): void;
428
599
  };
429
600
 
430
601
  // ── React JSX declarations ───────────────────────────────────────────────────
@@ -432,16 +603,76 @@ export type RCSearchBarRef = HTMLElement & {
432
603
  declare module 'react' {
433
604
  namespace JSX {
434
605
  interface IntrinsicElements {
435
- 'rc-disclosure': React.DetailedHTMLProps<React.HTMLAttributes<RCDisclosureRef>, RCDisclosureRef> & {
606
+ 'rc-disclosure': React.DetailedHTMLProps<
607
+ React.HTMLAttributes<RCDisclosureRef>,
608
+ RCDisclosureRef
609
+ > & {
436
610
  open?: boolean;
437
611
  fragment?: boolean;
438
612
  };
439
613
 
440
- 'rc-accordion': React.DetailedHTMLProps<React.HTMLAttributes<RCAccordionRef>, RCAccordionRef> & {
614
+ 'rc-accordion': React.DetailedHTMLProps<
615
+ React.HTMLAttributes<RCAccordionRef>,
616
+ RCAccordionRef
617
+ > & {
441
618
  name?: string;
442
619
  multiple?: boolean;
443
620
  };
444
621
 
622
+ 'rc-button': React.DetailedHTMLProps<React.HTMLAttributes<RCButtonRef>, RCButtonRef> & {
623
+ disabled?: boolean;
624
+ pending?: boolean;
625
+ progress?: boolean;
626
+ 'progress-value'?: number | string;
627
+ toggle?: boolean;
628
+ selected?: boolean;
629
+ 'default-selected'?: boolean;
630
+ 'icon-only'?: boolean;
631
+ 'full-width'?: boolean;
632
+ };
633
+
634
+ 'rc-card': React.DetailedHTMLProps<React.HTMLAttributes<RCCardRef>, RCCardRef> & {
635
+ selected?: boolean;
636
+ disabled?: boolean;
637
+ interactive?: boolean;
638
+ 'action-target'?: string;
639
+ };
640
+
641
+ 'rc-switch': React.DetailedHTMLProps<React.HTMLAttributes<RCSwitchRef>, RCSwitchRef> & {
642
+ checked?: boolean;
643
+ 'default-checked'?: boolean;
644
+ disabled?: boolean;
645
+ icons?: boolean;
646
+ 'show-only-selected-icon'?: boolean;
647
+ };
648
+
649
+ 'rc-segmented-button': React.DetailedHTMLProps<
650
+ React.HTMLAttributes<RCSegmentedButtonRef>,
651
+ RCSegmentedButtonRef
652
+ > & {
653
+ value?: string;
654
+ 'default-value'?: string;
655
+ disabled?: boolean;
656
+ orientation?: 'horizontal' | 'vertical';
657
+ };
658
+
659
+ 'rc-chip': React.DetailedHTMLProps<React.HTMLAttributes<RCChipRef>, RCChipRef> & {
660
+ variant?: RCChipVariant;
661
+ selected?: boolean;
662
+ 'default-selected'?: boolean;
663
+ disabled?: boolean;
664
+ readonly?: boolean;
665
+ removable?: boolean;
666
+ };
667
+
668
+ 'rc-snackbar': React.DetailedHTMLProps<React.HTMLAttributes<RCSnackbarRef>, RCSnackbarRef> & {
669
+ open?: boolean;
670
+ message?: string;
671
+ 'action-label'?: string;
672
+ duration?: number | string;
673
+ 'queue-policy'?: RCSnackbarQueuePolicy;
674
+ };
675
+
445
676
  'rc-listbox': React.DetailedHTMLProps<React.HTMLAttributes<RCListboxRef>, RCListboxRef> & {
446
677
  multiple?: boolean;
447
678
  checkmark?: boolean;
@@ -483,23 +714,70 @@ declare module 'react' {
483
714
  'move-bounds'?: 'viewport' | 'parent';
484
715
  'move-step'?: number | string;
485
716
  resize?: 'none' | 'both' | 'horizontal' | 'vertical';
717
+ 'resize-origin'?: RCDialogResizeOrigin;
718
+ 'resize-handle'?: string;
486
719
  'resize-threshold'?: number | string;
487
720
  'resize-step'?: number | string;
488
721
  'closed-by'?: 'any' | 'closerequest' | 'none';
489
722
  'light-dismiss'?: boolean;
490
723
  };
491
724
 
725
+ 'rc-bottom-sheet': React.DetailedHTMLProps<
726
+ React.HTMLAttributes<RCBottomSheetRef>,
727
+ RCBottomSheetRef
728
+ > & {
729
+ open?: boolean;
730
+ 'default-open'?: boolean;
731
+ 'light-dismiss'?: boolean;
732
+ resize?: 'none' | 'both' | 'horizontal' | 'vertical';
733
+ 'resize-origin'?: RCDialogResizeOrigin;
734
+ 'resize-handle'?: string;
735
+ 'resize-threshold'?: number | string;
736
+ 'resize-step'?: number | string;
737
+ 'snap-points'?: string;
738
+ 'swipe-dismiss'?: boolean;
739
+ 'swipe-velocity'?: number | string;
740
+ };
741
+
492
742
  'rc-menu': React.DetailedHTMLProps<React.HTMLAttributes<RCMenuRef>, RCMenuRef> & {
493
743
  label?: string;
494
744
  };
495
745
 
496
- 'rc-menu-button': React.DetailedHTMLProps<React.HTMLAttributes<RCMenuButtonRef>, RCMenuButtonRef> & {
746
+ 'rc-menu-button': React.DetailedHTMLProps<
747
+ React.HTMLAttributes<RCMenuButtonRef>,
748
+ RCMenuButtonRef
749
+ > & {
497
750
  open?: boolean;
498
751
  'default-open'?: boolean;
499
752
  orientation?: 'horizontal' | 'vertical';
500
753
  placement?: RCMenuButtonPlacement;
501
754
  };
502
755
 
756
+ 'rc-fab-menu': React.DetailedHTMLProps<React.HTMLAttributes<RCFabMenuRef>, RCFabMenuRef> & {
757
+ open?: boolean;
758
+ 'default-open'?: boolean;
759
+ placement?: RCMenuButtonPlacement;
760
+ position?: 'bottom-end' | 'bottom-start' | 'top-end' | 'top-start';
761
+ };
762
+
763
+ 'rc-navigation-bar': React.DetailedHTMLProps<
764
+ React.HTMLAttributes<RCNavigationBarRef>,
765
+ RCNavigationBarRef
766
+ > & {
767
+ 'active-selector'?: string;
768
+ 'indicator-target'?: string;
769
+ };
770
+
771
+ 'rc-navigation-rail': React.DetailedHTMLProps<
772
+ React.HTMLAttributes<RCNavigationRailRef>,
773
+ RCNavigationRailRef
774
+ > & {
775
+ expanded?: boolean;
776
+ 'default-expanded'?: boolean;
777
+ 'active-selector'?: string;
778
+ 'indicator-target'?: string;
779
+ };
780
+
503
781
  'rc-menubar': React.DetailedHTMLProps<React.HTMLAttributes<RCMenubarRef>, RCMenubarRef> & {
504
782
  label?: string;
505
783
  orientation?: 'horizontal' | 'vertical';
@@ -523,7 +801,10 @@ declare module 'react' {
523
801
  orientation?: 'horizontal' | 'vertical';
524
802
  };
525
803
 
526
- 'rc-range-slider': React.DetailedHTMLProps<React.HTMLAttributes<RCRangeSliderRef>, RCRangeSliderRef> & {
804
+ 'rc-range-slider': React.DetailedHTMLProps<
805
+ React.HTMLAttributes<RCRangeSliderRef>,
806
+ RCRangeSliderRef
807
+ > & {
527
808
  min?: number | string;
528
809
  max?: number | string;
529
810
  step?: number | string;
@@ -538,7 +819,10 @@ declare module 'react' {
538
819
  orientation?: 'horizontal' | 'vertical';
539
820
  };
540
821
 
541
- 'rc-transfer-list': React.DetailedHTMLProps<React.HTMLAttributes<RCTransferListRef>, RCTransferListRef> & {
822
+ 'rc-transfer-list': React.DetailedHTMLProps<
823
+ React.HTMLAttributes<RCTransferListRef>,
824
+ RCTransferListRef
825
+ > & {
542
826
  multiple?: boolean;
543
827
  compact?: boolean;
544
828
  'available-label'?: string;
@@ -551,18 +835,29 @@ declare module 'react' {
551
835
  'rc-splitter': React.DetailedHTMLProps<React.HTMLAttributes<RCSplitterRef>, RCSplitterRef> & {
552
836
  label?: string;
553
837
  orientation?: 'horizontal' | 'vertical';
554
- mode?: 'length' | 'percent';
838
+ mode?: 'length' | 'percent' | 'fixed';
555
839
  step?: number | string;
840
+ min?: number | string;
841
+ max?: number | string;
556
842
  value?: number | string;
557
843
  'default-value'?: number | string;
558
844
  fixed?: boolean;
845
+ collapsible?: boolean;
846
+ 'snap-points'?: string;
847
+ 'swipe-velocity'?: number | string;
559
848
  };
560
849
 
561
- 'rc-editor-toolbar': React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>, HTMLElement> & {
850
+ 'rc-editor-toolbar': React.DetailedHTMLProps<
851
+ React.HTMLAttributes<HTMLElement>,
852
+ HTMLElement
853
+ > & {
562
854
  label?: string;
563
855
  };
564
856
 
565
- 'rc-markdown-editor': React.DetailedHTMLProps<React.HTMLAttributes<RCMarkdownEditorRef>, RCMarkdownEditorRef> & {
857
+ 'rc-markdown-editor': React.DetailedHTMLProps<
858
+ React.HTMLAttributes<RCMarkdownEditorRef>,
859
+ RCMarkdownEditorRef
860
+ > & {
566
861
  value?: string;
567
862
  'default-value'?: string;
568
863
  toolbar?: boolean;
@@ -584,7 +879,13 @@ declare module 'react' {
584
879
  scrollTarget?: Element | Document | Window | string | null;
585
880
  };
586
881
 
587
- 'rc-search-bar': React.DetailedHTMLProps<React.HTMLAttributes<RCSearchBarRef>, RCSearchBarRef> & {
882
+ 'rc-search-bar': React.DetailedHTMLProps<
883
+ React.HTMLAttributes<RCSearchBarRef>,
884
+ RCSearchBarRef
885
+ > & {
886
+ variant?: 'bar' | 'view';
887
+ open?: boolean;
888
+ 'default-open'?: boolean;
588
889
  debounce?: number | string;
589
890
  'clear-label'?: string;
590
891
  placeholder?: string;
@@ -592,7 +893,10 @@ declare module 'react' {
592
893
  value?: string;
593
894
  };
594
895
 
595
- 'rc-virtual-canvas': React.DetailedHTMLProps<React.HTMLAttributes<RCVirtualCanvasRef>, RCVirtualCanvasRef> & {
896
+ 'rc-virtual-canvas': React.DetailedHTMLProps<
897
+ React.HTMLAttributes<RCVirtualCanvasRef>,
898
+ RCVirtualCanvasRef
899
+ > & {
596
900
  'content-width'?: number | string;
597
901
  'content-height'?: number | string;
598
902
  'auto-resize-canvas'?: boolean;
package/src/solid.d.ts CHANGED
@@ -25,6 +25,102 @@ export type RCDisclosureToggleDetail = {
25
25
  open: boolean;
26
26
  };
27
27
 
28
+ /** Public API surface of `<rc-button>`. */
29
+ export type RCButtonRef = HTMLElement & {
30
+ disabled: boolean;
31
+ pending: boolean;
32
+ progress: boolean;
33
+ progressValue: number | undefined;
34
+ toggle: boolean;
35
+ selected: boolean;
36
+ defaultSelected: boolean;
37
+ iconOnly: boolean;
38
+ fullWidth: boolean;
39
+ };
40
+
41
+ /** Public API surface of `<rc-card>`. */
42
+ export type RCCardRef = HTMLElement & {
43
+ selected: boolean;
44
+ disabled: boolean;
45
+ interactive: boolean;
46
+ actionTarget: string;
47
+ };
48
+
49
+ export type RCSwitchChangeDetail = {
50
+ checked: boolean;
51
+ };
52
+
53
+ export type RCSwitchRef = HTMLElement & {
54
+ checked: boolean;
55
+ defaultChecked: boolean;
56
+ disabled: boolean;
57
+ icons: boolean;
58
+ showOnlySelectedIcon: boolean;
59
+ };
60
+
61
+ export type RCSegmentedButtonChangeDetail = {
62
+ value: string;
63
+ };
64
+
65
+ export type RCSegmentedButtonRef = HTMLElement & {
66
+ value: string;
67
+ defaultValue: string;
68
+ disabled: boolean;
69
+ orientation: 'horizontal' | 'vertical';
70
+ };
71
+
72
+ export type RCChipVariant = 'assist' | 'filter' | 'input' | 'suggestion';
73
+
74
+ export type RCChipChangeDetail = {
75
+ selected: boolean;
76
+ };
77
+
78
+ export type RCChipRemoveDetail = {
79
+ chip: HTMLElement;
80
+ };
81
+
82
+ export type RCButtonToggleDetail = {
83
+ selected: boolean;
84
+ };
85
+
86
+ export type RCChipRef = HTMLElement & {
87
+ variant: RCChipVariant;
88
+ selected: boolean;
89
+ defaultSelected: boolean;
90
+ disabled: boolean;
91
+ readonly: boolean;
92
+ removable: boolean;
93
+ };
94
+
95
+ export type RCSnackbarQueuePolicy = 'queue' | 'replace';
96
+ export type RCSnackbarCloseReason = 'action' | 'api' | 'timeout' | 'replace' | 'clear';
97
+
98
+ export type RCSnackbarShowOptions = {
99
+ message: string;
100
+ actionLabel?: string;
101
+ duration?: number;
102
+ };
103
+
104
+ export type RCSnackbarActionDetail = {
105
+ message: string;
106
+ };
107
+
108
+ export type RCSnackbarCloseDetail = {
109
+ reason: RCSnackbarCloseReason;
110
+ message: string;
111
+ };
112
+
113
+ export type RCSnackbarRef = HTMLElement & {
114
+ open: boolean;
115
+ message: string;
116
+ actionLabel: string;
117
+ duration: number;
118
+ queuePolicy: RCSnackbarQueuePolicy;
119
+ show(message: string | RCSnackbarShowOptions): void;
120
+ close(reason?: RCSnackbarCloseReason): void;
121
+ clear(): void;
122
+ };
123
+
28
124
  /** Public API surface of `<rc-accordion>`. */
29
125
  export type RCAccordionRef = HTMLElement & {
30
126
  multiple: boolean;
@@ -92,9 +188,7 @@ export type RCListboxActionChangeDetail<Action extends string = string> = RCSele
92
188
  action: Action;
93
189
  };
94
190
 
95
- export type RCListboxChangeDetail =
96
- | RCListboxSelectChangeDetail
97
- | RCListboxActionChangeDetail;
191
+ export type RCListboxChangeDetail = RCListboxSelectChangeDetail | RCListboxActionChangeDetail;
98
192
 
99
193
  export type RCSelectRef = HTMLElement & {
100
194
  open: boolean;
@@ -121,6 +215,17 @@ export type RCComboboxCreateDetail = {
121
215
  };
122
216
 
123
217
  /** Public API surface of `<rc-dialog>`. */
218
+ export type RCDialogResizeOrigin =
219
+ | ''
220
+ | 'top'
221
+ | 'right'
222
+ | 'bottom'
223
+ | 'left'
224
+ | 'top-left'
225
+ | 'top-right'
226
+ | 'bottom-left'
227
+ | 'bottom-right';
228
+
124
229
  export type RCDialogRef = HTMLElement & {
125
230
  open: boolean | undefined;
126
231
  defaultOpen: boolean;
@@ -129,6 +234,8 @@ export type RCDialogRef = HTMLElement & {
129
234
  moveBounds: 'viewport' | 'parent';
130
235
  moveStep: number;
131
236
  resize: 'none' | 'both' | 'horizontal' | 'vertical';
237
+ resizeOrigin: RCDialogResizeOrigin;
238
+ resizeHandle: string;
132
239
  resizeThreshold: number;
133
240
  resizeStep: number;
134
241
  closedBy: 'any' | 'closerequest' | 'none' | '';
@@ -140,6 +247,26 @@ export type RCDialogRef = HTMLElement & {
140
247
  requestClose(returnValue?: string): void;
141
248
  };
142
249
 
250
+ /** Detail shape for `rc-bottom-sheet-snap`. */
251
+ export type RCBottomSheetSnapDetail = {
252
+ /** Index into the resolved snap-point list selected as the target. */
253
+ index: number;
254
+
255
+ /** Target height, in pixels. */
256
+ height: number;
257
+
258
+ /** Whether the snap came from a drag release or a `snapTo()` call. */
259
+ trigger: 'drag' | 'api';
260
+ };
261
+
262
+ /** Public API surface of `<rc-bottom-sheet>`. */
263
+ export type RCBottomSheetRef = RCDialogRef & {
264
+ snapPoints: string;
265
+ swipeDismiss: boolean;
266
+ swipeVelocity: number;
267
+ snapTo(index: number, behavior?: 'animated' | 'instant'): void;
268
+ };
269
+
143
270
  export type RCDialogToggleDetail = {
144
271
  open: boolean;
145
272
  returnValue: string;
@@ -190,6 +317,32 @@ export type RCMenuButtonToggleDetail = {
190
317
  open: boolean;
191
318
  };
192
319
 
320
+ /** Public API surface of `<rc-fab-menu>`. */
321
+ export type RCFabMenuRef = RCMenuButtonRef & {
322
+ position: 'bottom-end' | 'bottom-start' | 'top-end' | 'top-start';
323
+ };
324
+
325
+ export type RCFabMenuToggleDetail = RCMenuButtonToggleDetail;
326
+
327
+ /** Public API surface of `<rc-navigation-bar>`. */
328
+ export type RCNavigationBarRef = HTMLElement & {
329
+ activeSelector: string;
330
+ indicatorTarget: string;
331
+ };
332
+
333
+ /** Public API surface of `<rc-navigation-rail>`. */
334
+ export type RCNavigationRailRef = RCNavigationBarRef & {
335
+ expanded: boolean;
336
+ defaultExpanded: boolean;
337
+ expand(): void;
338
+ collapse(): void;
339
+ toggleExpanded(): void;
340
+ };
341
+
342
+ export type RCNavigationRailToggleDetail = {
343
+ expanded: boolean;
344
+ };
345
+
193
346
  /** Public API surface of `<rc-menubar>`. */
194
347
  export type RCMenubarRef = HTMLElement & {
195
348
  label: string;
@@ -206,11 +359,17 @@ export type RCToolbarRef = HTMLElement & {
206
359
  export type RCSplitterRef = HTMLElement & {
207
360
  label: string;
208
361
  orientation: 'horizontal' | 'vertical';
209
- mode: 'length' | 'percent';
362
+ mode: 'length' | 'percent' | 'fixed';
210
363
  step: number;
364
+ min: number;
365
+ max: number | undefined;
211
366
  value: number;
212
367
  defaultValue: number | undefined;
213
368
  fixed: boolean;
369
+ collapsible: boolean;
370
+ snapPoints: string;
371
+ swipeVelocity: number;
372
+ snapTo(index: number, behavior?: 'animated' | 'instant'): void;
214
373
  };
215
374
 
216
375
  export type RCTextareaRef = HTMLElement & {
@@ -384,17 +543,32 @@ export type RCAppBarScrollDetail = {
384
543
 
385
544
  /** Public API surface of `<rc-search-bar>`. */
386
545
  export type RCSearchBarRef = HTMLElement & {
546
+ variant: 'bar' | 'view';
547
+ open: boolean;
548
+ defaultOpen: boolean;
387
549
  value: string;
388
550
  defaultValue: string | undefined;
389
551
  debounce: number;
390
552
  clearLabel: string;
391
553
  placeholder: string | undefined;
554
+ showView(): void;
555
+ closeView(): void;
556
+ toggleView(): void;
392
557
  };
393
558
 
394
559
  export type RCSearchBarInputDetail = {
395
560
  value: string;
396
561
  };
397
562
 
563
+ export type RCSearchBarToggleDetail = {
564
+ open: boolean;
565
+ };
566
+
567
+ export type RCSearchBarSuggestionSelectDetail = {
568
+ value: string;
569
+ label: string;
570
+ };
571
+
398
572
  export type RCSplitterChangeDetail = {
399
573
  value: number;
400
574
  valueText: string;
@@ -426,6 +600,80 @@ declare module 'solid-js' {
426
600
  'on:rc-disclosure-toggle'?: (e: CustomEvent<RCDisclosureToggleDetail>) => void;
427
601
  };
428
602
 
603
+ 'rc-button': JSX.HTMLAttributes<RCButtonRef> & {
604
+ disabled?: boolean | string;
605
+ pending?: boolean | string;
606
+ progress?: boolean | string;
607
+ 'progress-value'?: number | string;
608
+ toggle?: boolean | string;
609
+ selected?: boolean | string;
610
+ defaultSelected?: boolean | string;
611
+ 'default-selected'?: boolean | string;
612
+ 'icon-only'?: boolean | string;
613
+ 'full-width'?: boolean | string;
614
+ 'prop:selected'?: boolean | undefined;
615
+ 'prop:defaultSelected'?: boolean | undefined;
616
+ 'on:rc-button-toggle'?: (e: CustomEvent<RCButtonToggleDetail>) => void;
617
+ };
618
+
619
+ 'rc-card': JSX.HTMLAttributes<RCCardRef> & {
620
+ selected?: boolean | string;
621
+ disabled?: boolean | string;
622
+ interactive?: boolean | string;
623
+ 'action-target'?: string;
624
+ };
625
+
626
+ 'rc-switch': JSX.HTMLAttributes<RCSwitchRef> & {
627
+ checked?: boolean | string;
628
+ defaultChecked?: boolean | string;
629
+ 'default-checked'?: boolean | string;
630
+ disabled?: boolean | string;
631
+ icons?: boolean | string;
632
+ 'show-only-selected-icon'?: boolean | string;
633
+ 'prop:checked'?: boolean | undefined;
634
+ 'prop:defaultChecked'?: boolean | undefined;
635
+ 'on:rc-switch-change'?: (e: CustomEvent<RCSwitchChangeDetail>) => void;
636
+ };
637
+
638
+ 'rc-segmented-button': JSX.HTMLAttributes<RCSegmentedButtonRef> & {
639
+ value?: string;
640
+ defaultValue?: string;
641
+ 'default-value'?: string;
642
+ disabled?: boolean | string;
643
+ orientation?: 'horizontal' | 'vertical';
644
+ 'prop:value'?: string | undefined;
645
+ 'prop:defaultValue'?: string | undefined;
646
+ 'on:rc-segmented-button-change'?: (e: CustomEvent<RCSegmentedButtonChangeDetail>) => void;
647
+ };
648
+
649
+ 'rc-chip': JSX.HTMLAttributes<RCChipRef> & {
650
+ variant?: RCChipVariant;
651
+ selected?: boolean | string;
652
+ defaultSelected?: boolean | string;
653
+ 'default-selected'?: boolean | string;
654
+ disabled?: boolean | string;
655
+ readonly?: boolean | string;
656
+ removable?: boolean | string;
657
+ 'prop:selected'?: boolean | undefined;
658
+ 'prop:defaultSelected'?: boolean | undefined;
659
+ 'on:rc-chip-change'?: (e: CustomEvent<RCChipChangeDetail>) => void;
660
+ 'on:rc-chip-remove'?: (e: CustomEvent<RCChipRemoveDetail>) => void;
661
+ };
662
+
663
+ 'rc-snackbar': JSX.HTMLAttributes<RCSnackbarRef> & {
664
+ open?: boolean | string;
665
+ message?: string;
666
+ actionLabel?: string;
667
+ 'action-label'?: string;
668
+ duration?: number | string;
669
+ queuePolicy?: RCSnackbarQueuePolicy;
670
+ 'queue-policy'?: RCSnackbarQueuePolicy;
671
+ 'prop:open'?: boolean | undefined;
672
+ 'prop:duration'?: number | undefined;
673
+ 'on:rc-snackbar-action'?: (e: CustomEvent<RCSnackbarActionDetail>) => void;
674
+ 'on:rc-snackbar-close'?: (e: CustomEvent<RCSnackbarCloseDetail>) => void;
675
+ };
676
+
429
677
  'rc-listbox': JSX.HTMLAttributes<RCListboxRef> & {
430
678
  multiple?: boolean | string;
431
679
  checkmark?: boolean | string;
@@ -462,7 +710,7 @@ declare module 'solid-js' {
462
710
  disabled?: boolean | string;
463
711
  placeholder?: string;
464
712
  display?: 'auto' | 'chips' | 'compact';
465
- allowcreate?: boolean | string;
713
+ 'allow-create'?: boolean | string;
466
714
  'filter-strategy'?: 'prefix' | 'contains';
467
715
  value?: RCSelectValue;
468
716
  defaultValue?: RCSelectValue;
@@ -470,6 +718,7 @@ declare module 'solid-js' {
470
718
  'prop:value'?: RCSelectValue | undefined;
471
719
  'prop:defaultValue'?: RCSelectValue | undefined;
472
720
  'prop:options'?: RCSelectOption[] | undefined;
721
+ 'prop:allowCreate'?: boolean | undefined;
473
722
  'on:rc-select-change'?: (e: CustomEvent<RCSelectChangeDetail>) => void;
474
723
  'on:rc-select-open'?: (e: CustomEvent) => void;
475
724
  'on:rc-select-close'?: (e: CustomEvent) => void;
@@ -481,11 +730,15 @@ declare module 'solid-js' {
481
730
  defaultOpen?: boolean | string;
482
731
  'prop:open'?: boolean | undefined;
483
732
  'prop:defaultOpen'?: boolean | undefined;
733
+ 'prop:modal'?: boolean | undefined;
734
+ 'prop:lightDismiss'?: boolean | undefined;
484
735
  movable?: boolean | string;
485
736
  'move-handle'?: string;
486
737
  'move-bounds'?: 'viewport' | 'parent';
487
738
  'move-step'?: number | string;
488
739
  resize?: 'none' | 'both' | 'horizontal' | 'vertical';
740
+ 'resize-origin'?: RCDialogResizeOrigin;
741
+ 'resize-handle'?: string;
489
742
  'resize-threshold'?: number | string;
490
743
  'resize-step'?: number | string;
491
744
  'closed-by'?: 'any' | 'closerequest' | 'none';
@@ -497,6 +750,31 @@ declare module 'solid-js' {
497
750
  'on:rc-dialog-cancel'?: (e: CustomEvent) => void;
498
751
  };
499
752
 
753
+ 'rc-bottom-sheet': JSX.HTMLAttributes<RCBottomSheetRef> & {
754
+ open?: boolean | string;
755
+ defaultOpen?: boolean | string;
756
+ 'prop:open'?: boolean | undefined;
757
+ 'prop:defaultOpen'?: boolean | undefined;
758
+ 'prop:modal'?: boolean | undefined;
759
+ 'prop:lightDismiss'?: boolean | undefined;
760
+ 'prop:swipeDismiss'?: boolean | undefined;
761
+ 'light-dismiss'?: boolean | string;
762
+ resize?: 'none' | 'both' | 'horizontal' | 'vertical';
763
+ 'resize-origin'?: RCDialogResizeOrigin;
764
+ 'resize-handle'?: string;
765
+ 'resize-threshold'?: number | string;
766
+ 'resize-step'?: number | string;
767
+ 'snap-points'?: string;
768
+ 'swipe-dismiss'?: boolean | string;
769
+ 'swipe-velocity'?: number | string;
770
+ 'on:rc-dialog-open'?: (e: CustomEvent) => void;
771
+ 'on:rc-dialog-toggle'?: (e: CustomEvent<RCDialogToggleDetail>) => void;
772
+ 'on:rc-dialog-close'?: (e: CustomEvent<RCDialogCloseDetail>) => void;
773
+ 'on:rc-dialog-request-close'?: (e: CustomEvent<RCDialogCloseDetail>) => void;
774
+ 'on:rc-dialog-cancel'?: (e: CustomEvent) => void;
775
+ 'on:rc-bottom-sheet-snap'?: (e: CustomEvent<RCBottomSheetSnapDetail>) => void;
776
+ };
777
+
500
778
  'rc-menu': JSX.HTMLAttributes<RCMenuRef> & {
501
779
  label?: string;
502
780
  'on:rc-menu-activate'?: (e: CustomEvent<RCMenuActivateDetail>) => void;
@@ -513,6 +791,31 @@ declare module 'solid-js' {
513
791
  'on:rc-menu-button-toggle'?: (e: CustomEvent<RCMenuButtonToggleDetail>) => void;
514
792
  };
515
793
 
794
+ 'rc-fab-menu': JSX.HTMLAttributes<RCFabMenuRef> & {
795
+ open?: boolean | string;
796
+ defaultOpen?: boolean | string;
797
+ 'prop:open'?: boolean | undefined;
798
+ 'prop:defaultOpen'?: boolean | undefined;
799
+ placement?: RCMenuButtonPlacement;
800
+ position?: 'bottom-end' | 'bottom-start' | 'top-end' | 'top-start' | string;
801
+ 'on:rc-fab-menu-toggle'?: (e: CustomEvent<RCFabMenuToggleDetail>) => void;
802
+ };
803
+
804
+ 'rc-navigation-bar': JSX.HTMLAttributes<RCNavigationBarRef> & {
805
+ activeSelector?: string;
806
+ indicatorTarget?: string;
807
+ };
808
+
809
+ 'rc-navigation-rail': JSX.HTMLAttributes<RCNavigationRailRef> & {
810
+ expanded?: boolean | string;
811
+ defaultExpanded?: boolean | string;
812
+ activeSelector?: string;
813
+ indicatorTarget?: string;
814
+ 'prop:expanded'?: boolean | undefined;
815
+ 'prop:defaultExpanded'?: boolean | undefined;
816
+ 'on:rc-navigation-rail-toggle'?: (e: CustomEvent<RCNavigationRailToggleDetail>) => void;
817
+ };
818
+
516
819
  'rc-menubar': JSX.HTMLAttributes<RCMenubarRef> & {
517
820
  label?: string;
518
821
  orientation?: 'horizontal' | 'vertical';
@@ -573,14 +876,19 @@ declare module 'solid-js' {
573
876
  'rc-splitter': JSX.HTMLAttributes<RCSplitterRef> & {
574
877
  label?: string;
575
878
  orientation?: 'horizontal' | 'vertical';
576
- mode?: 'length' | 'percent';
879
+ mode?: 'length' | 'percent' | 'fixed';
577
880
  step?: number | string;
881
+ min?: number | string;
882
+ max?: number | string;
578
883
  value?: number | string;
579
884
  defaultValue?: number | string;
580
885
  'default-value'?: number | string;
581
886
  'prop:value'?: number | undefined;
582
887
  'prop:defaultValue'?: number | undefined;
583
888
  fixed?: boolean | string;
889
+ collapsible?: boolean | string;
890
+ 'snap-points'?: string;
891
+ 'swipe-velocity'?: number | string;
584
892
  'on:rc-splitter-change'?: (e: CustomEvent<RCSplitterChangeDetail>) => void;
585
893
  };
586
894
 
@@ -622,6 +930,11 @@ declare module 'solid-js' {
622
930
  };
623
931
 
624
932
  'rc-search-bar': JSX.HTMLAttributes<RCSearchBarRef> & {
933
+ variant?: 'bar' | 'view';
934
+ open?: boolean | string;
935
+ defaultOpen?: boolean | string;
936
+ 'prop:open'?: boolean | undefined;
937
+ 'prop:defaultOpen'?: boolean | undefined;
625
938
  debounce?: number | string;
626
939
  'clear-label'?: string;
627
940
  placeholder?: string;
@@ -630,6 +943,10 @@ declare module 'solid-js' {
630
943
  'prop:defaultValue'?: string | undefined;
631
944
  'on:rc-search-bar-input'?: (e: CustomEvent<RCSearchBarInputDetail>) => void;
632
945
  'on:rc-search-bar-clear'?: (e: CustomEvent) => void;
946
+ 'on:rc-search-bar-toggle'?: (e: CustomEvent<RCSearchBarToggleDetail>) => void;
947
+ 'on:rc-search-bar-suggestion-select'?: (
948
+ e: CustomEvent<RCSearchBarSuggestionSelectDetail>,
949
+ ) => void;
633
950
  };
634
951
 
635
952
  'rc-virtual-canvas': JSX.HTMLAttributes<RCVirtualCanvasRef> & {
package/themes/base.css CHANGED
@@ -42,7 +42,19 @@
42
42
  --rc-focus-ring: auto;
43
43
  --rc-focus-ring-offset: 0;
44
44
  --rc-disabled-opacity: 0.5;
45
- --rc-motion-duration: 120ms;
45
+ --rc-motion-effects-duration-fast: 80ms;
46
+ --rc-motion-effects-easing-fast: ease-out;
47
+ --rc-motion-effects-duration-default: 120ms;
48
+ --rc-motion-effects-easing-default: ease-out;
49
+ --rc-motion-effects-duration-slow: 200ms;
50
+ --rc-motion-effects-easing-slow: ease-out;
51
+ --rc-motion-spatial-duration-fast: 180ms;
52
+ --rc-motion-spatial-easing-fast: cubic-bezier(0.2, 0, 0, 1);
53
+ --rc-motion-spatial-duration-default: 300ms;
54
+ --rc-motion-spatial-easing-default: cubic-bezier(0.2, 0, 0, 1);
55
+ --rc-motion-spatial-duration-slow: 450ms;
56
+ --rc-motion-spatial-easing-slow: cubic-bezier(0.2, 0, 0, 1);
57
+ --rc-motion-duration: var(--rc-motion-effects-duration-default);
46
58
 
47
59
  --rc-border: var(--rc-border-width) var(--rc-border-style) var(--rc-border-color);
48
60
  }