@rippling/rippling-sdk 0.2.0-alpha.49 → 0.2.0-alpha.50
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/lib/manifest/custom-object-page-layout.d.mts +148 -34
- package/lib/manifest/custom-object-page-layout.d.mts.map +1 -1
- package/lib/manifest/custom-object-page-layout.d.ts +148 -34
- package/lib/manifest/custom-object-page-layout.d.ts.map +1 -1
- package/lib/manifest/custom-object-page-layout.js +61 -18
- package/lib/manifest/custom-object-page-layout.js.map +1 -1
- package/lib/manifest/custom-object-page-layout.mjs +61 -18
- package/lib/manifest/custom-object-page-layout.mjs.map +1 -1
- package/lib/manifest/custom-object.d.mts +1 -1
- package/lib/manifest/custom-object.d.ts +1 -1
- package/lib/manifest/custom-object.js +1 -1
- package/lib/manifest/custom-object.mjs +1 -1
- package/lib/manifest/field.d.mts +3 -3
- package/lib/manifest/field.d.ts +3 -3
- package/lib/manifest/field.js +2 -2
- package/lib/manifest/field.mjs +2 -2
- package/lib/manifest/index.d.mts +1 -1
- package/lib/manifest/index.d.mts.map +1 -1
- package/lib/manifest/index.d.ts +1 -1
- package/lib/manifest/index.d.ts.map +1 -1
- package/lib/manifest/index.js.map +1 -1
- package/lib/manifest/index.mjs.map +1 -1
- package/lib/sdui/components.d.mts +100 -211
- package/lib/sdui/components.d.mts.map +1 -1
- package/lib/sdui/components.d.ts +100 -211
- package/lib/sdui/components.d.ts.map +1 -1
- package/lib/sdui/components.js +96 -182
- package/lib/sdui/components.js.map +1 -1
- package/lib/sdui/components.mjs +93 -178
- package/lib/sdui/components.mjs.map +1 -1
- package/lib/sdui/index.d.mts +12 -52
- package/lib/sdui/index.d.mts.map +1 -1
- package/lib/sdui/index.d.ts +12 -52
- package/lib/sdui/index.d.ts.map +1 -1
- package/lib/sdui/index.js +10 -50
- package/lib/sdui/index.js.map +1 -1
- package/lib/sdui/index.mjs +5 -25
- package/lib/sdui/index.mjs.map +1 -1
- package/lib/sdui/propTypes.d.mts +3156 -3515
- package/lib/sdui/propTypes.d.mts.map +1 -1
- package/lib/sdui/propTypes.d.ts +3156 -3515
- package/lib/sdui/propTypes.d.ts.map +1 -1
- package/lib/sdui/propTypes.js +1 -1
- package/lib/sdui/propTypes.mjs +1 -1
- package/package.json +1 -1
- package/src/lib/manifest/custom-object-page-layout.ts +294 -79
- package/src/lib/manifest/custom-object.ts +1 -1
- package/src/lib/manifest/field.ts +3 -3
- package/src/lib/manifest/index.ts +27 -0
- package/src/lib/sdui/components.ts +181 -332
- package/src/lib/sdui/index.ts +13 -93
- package/src/lib/sdui/propTypes.ts +3509 -3892
- package/src/version.ts +1 -1
- package/version.d.mts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* AUTO-GENERATED from catalog-schema.json
|
|
3
|
-
* Components:
|
|
3
|
+
* Components: 134
|
|
4
4
|
*
|
|
5
5
|
* Do not edit manually. Run: node tools/sdui/builder/build.js
|
|
6
6
|
*/
|
|
@@ -41,6 +41,7 @@ import type {
|
|
|
41
41
|
CountDownCatalogProps,
|
|
42
42
|
CountryCatalogProps,
|
|
43
43
|
CurrencyCatalogProps,
|
|
44
|
+
CustomObjectGridCatalogProps,
|
|
44
45
|
DateCatalogProps,
|
|
45
46
|
DateInlineMultiCatalogProps,
|
|
46
47
|
DateRangeCatalogProps,
|
|
@@ -81,6 +82,7 @@ import type {
|
|
|
81
82
|
ModalFooterCatalogProps,
|
|
82
83
|
NestedListCatalogProps,
|
|
83
84
|
NumberCatalogProps,
|
|
85
|
+
ObjectListViewCatalogProps,
|
|
84
86
|
ObjectUICatalogProps,
|
|
85
87
|
ObjectUIContentCatalogProps,
|
|
86
88
|
ObjectUIHeaderCatalogProps,
|
|
@@ -102,6 +104,7 @@ import type {
|
|
|
102
104
|
ReportLoaderCatalogProps,
|
|
103
105
|
ReportShareLoaderCatalogProps,
|
|
104
106
|
ReportViewerLoaderCatalogProps,
|
|
107
|
+
ResizableBoardCatalogProps,
|
|
105
108
|
ResponsiveCatalogProps,
|
|
106
109
|
SegmentedControlCatalogProps,
|
|
107
110
|
SelectCatalogProps,
|
|
@@ -141,29 +144,6 @@ import type {
|
|
|
141
144
|
VStackCatalogProps,
|
|
142
145
|
VideoCatalogProps,
|
|
143
146
|
WorkEmailCatalogProps,
|
|
144
|
-
AnalyticsCardCatalogProps,
|
|
145
|
-
ResizableBoardCatalogProps,
|
|
146
|
-
EChartCatalogProps,
|
|
147
|
-
RichTextCatalogProps,
|
|
148
|
-
DashboardRichTextCatalogProps,
|
|
149
|
-
CustomObjectGridCatalogProps,
|
|
150
|
-
ObjectListViewCatalogProps,
|
|
151
|
-
BarChartCatalogProps,
|
|
152
|
-
LineChartCatalogProps,
|
|
153
|
-
HorizontalBarChartCatalogProps,
|
|
154
|
-
CombinationChartCatalogProps,
|
|
155
|
-
PieChartCatalogProps,
|
|
156
|
-
ScatterChartCatalogProps,
|
|
157
|
-
FunnelChartCatalogProps,
|
|
158
|
-
GaugeChartCatalogProps,
|
|
159
|
-
SunburstChartCatalogProps,
|
|
160
|
-
WithSpinnerCatalogProps,
|
|
161
|
-
RadarChartCatalogProps,
|
|
162
|
-
RadarFilledChartCatalogProps,
|
|
163
|
-
HeatmapCalendarChartCatalogProps,
|
|
164
|
-
HeatmapChartCatalogProps,
|
|
165
|
-
TreemapChartCatalogProps,
|
|
166
|
-
SqlHighlightCatalogProps,
|
|
167
147
|
} from './propTypes';
|
|
168
148
|
|
|
169
149
|
export interface SpecNode {
|
|
@@ -251,17 +231,17 @@ export type AiIconProps = Bindable<AiIconCatalogProps> & ComponentDirectives;
|
|
|
251
231
|
export const AiIcon = createComponent<AiIconProps>('AiIcon');
|
|
252
232
|
|
|
253
233
|
export type AlertProps = Bindable<AlertCatalogProps> & {
|
|
234
|
+
onDismiss?: ActionBinding | ActionBinding[];
|
|
254
235
|
onPressPrimary?: ActionBinding | ActionBinding[];
|
|
255
236
|
onPressSecondary?: ActionBinding | ActionBinding[];
|
|
256
|
-
onDismiss?: ActionBinding | ActionBinding[];
|
|
257
237
|
} & ComponentDirectives;
|
|
258
238
|
/**
|
|
259
239
|
* A persistent, high-priority notice that conveys critical information (errors, warnings, success confirmations, or informational messages) and guides users to proceed or resolve issues. Appears with page content and remains visible until dismissed or resolved. Use for system-level or page-level messaging, not for ephemeral feedback (use SnackBar instead) or for interruptions requiring immediate input (use Modal instead).
|
|
260
240
|
*/
|
|
261
241
|
export const Alert = createComponent<AlertProps>('Alert', {
|
|
242
|
+
onDismiss: 'dismiss',
|
|
262
243
|
onPressPrimary: 'pressPrimary',
|
|
263
244
|
onPressSecondary: 'pressSecondary',
|
|
264
|
-
onDismiss: 'dismiss',
|
|
265
245
|
});
|
|
266
246
|
|
|
267
247
|
export type AnimationProps = Bindable<AnimationCatalogProps> & ComponentDirectives;
|
|
@@ -283,33 +263,33 @@ export type AppGroupLoaderProps = Bindable<AppGroupLoaderCatalogProps> & Compone
|
|
|
283
263
|
export const AppGroupLoader = createComponent<AppGroupLoaderProps>('AppGroupLoader');
|
|
284
264
|
|
|
285
265
|
export type AppGroupSelectProps = Bindable<AppGroupSelectCatalogProps> & {
|
|
286
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
287
266
|
onBlur?: ActionBinding | ActionBinding[];
|
|
267
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
288
268
|
onFocus?: ActionBinding | ActionBinding[];
|
|
289
|
-
onPaste?: ActionBinding | ActionBinding[];
|
|
290
269
|
onMenuToggle?: ActionBinding | ActionBinding[];
|
|
270
|
+
onPaste?: ActionBinding | ActionBinding[];
|
|
291
271
|
} & ComponentDirectives;
|
|
292
272
|
/**
|
|
293
273
|
* A multi-select dropdown for choosing multiple options from grouped categories, with app-group styling. Use when users need to pick several items organized into labeled groups (e.g. apps by category). For single selection or ungrouped options, use Select instead.
|
|
294
274
|
*/
|
|
295
275
|
export const AppGroupSelect = createComponent<AppGroupSelectProps>('AppGroupSelect', {
|
|
296
|
-
onChange: 'change',
|
|
297
276
|
onBlur: 'blur',
|
|
277
|
+
onChange: 'change',
|
|
298
278
|
onFocus: 'focus',
|
|
299
|
-
onPaste: 'paste',
|
|
300
279
|
onMenuToggle: 'menuToggle',
|
|
280
|
+
onPaste: 'paste',
|
|
301
281
|
});
|
|
302
282
|
|
|
303
283
|
export type AppNavBarProps = Bindable<AppNavBarCatalogProps> & {
|
|
304
|
-
onNavigate?: ActionBinding | ActionBinding[];
|
|
305
284
|
onAction?: ActionBinding | ActionBinding[];
|
|
285
|
+
onNavigate?: ActionBinding | ActionBinding[];
|
|
306
286
|
} & ComponentDirectives & { children?: SpecNode | SpecNode[] };
|
|
307
287
|
/**
|
|
308
288
|
* Application navigation bar with routing support. Displays a horizontal tab bar or vertical sidebar with links, icons, badges, and optional nested sub-navigation. Use for top-level page navigation.
|
|
309
289
|
*/
|
|
310
290
|
export const AppNavBar = createComponent<AppNavBarProps>('AppNavBar', {
|
|
311
|
-
onNavigate: 'navigate',
|
|
312
291
|
onAction: 'action',
|
|
292
|
+
onNavigate: 'navigate',
|
|
313
293
|
});
|
|
314
294
|
|
|
315
295
|
export type AtomsSeparatorProps = Bindable<AtomsSeparatorCatalogProps> & ComponentDirectives;
|
|
@@ -357,19 +337,19 @@ export const Breadcrumb = createComponent<BreadcrumbProps>('Breadcrumb', {
|
|
|
357
337
|
});
|
|
358
338
|
|
|
359
339
|
export type ButtonProps = Bindable<ButtonCatalogProps> & {
|
|
360
|
-
onPress?: ActionBinding | ActionBinding[];
|
|
361
|
-
onPressWhileDisabled?: ActionBinding | ActionBinding[];
|
|
362
340
|
onMouseEnter?: ActionBinding | ActionBinding[];
|
|
363
341
|
onMouseLeave?: ActionBinding | ActionBinding[];
|
|
342
|
+
onPress?: ActionBinding | ActionBinding[];
|
|
343
|
+
onPressWhileDisabled?: ActionBinding | ActionBinding[];
|
|
364
344
|
} & ComponentDirectives;
|
|
365
345
|
/**
|
|
366
346
|
* An interactive element that allows users to trigger actions or events with a single click. Use for actions, not navigation — use links for navigation. Use IconButton when space is limited and the action is not critical.
|
|
367
347
|
*/
|
|
368
348
|
export const Button = createComponent<ButtonProps>('Button', {
|
|
369
|
-
onPress: 'press',
|
|
370
|
-
onPressWhileDisabled: 'pressWhileDisabled',
|
|
371
349
|
onMouseEnter: 'mouseEnter',
|
|
372
350
|
onMouseLeave: 'mouseLeave',
|
|
351
|
+
onPress: 'press',
|
|
352
|
+
onPressWhileDisabled: 'pressWhileDisabled',
|
|
373
353
|
});
|
|
374
354
|
|
|
375
355
|
export type ButtonGroupProps = Bindable<ButtonGroupCatalogProps> &
|
|
@@ -380,21 +360,21 @@ export type ButtonGroupProps = Bindable<ButtonGroupCatalogProps> &
|
|
|
380
360
|
export const ButtonGroup = createComponent<ButtonGroupProps>('ButtonGroup');
|
|
381
361
|
|
|
382
362
|
export type CardProps = Bindable<CardCatalogProps> & {
|
|
383
|
-
|
|
384
|
-
onDelete?: ActionBinding | ActionBinding[];
|
|
363
|
+
onAction?: ActionBinding | ActionBinding[];
|
|
385
364
|
onAdd?: ActionBinding | ActionBinding[];
|
|
386
365
|
onClick?: ActionBinding | ActionBinding[];
|
|
387
|
-
|
|
366
|
+
onDelete?: ActionBinding | ActionBinding[];
|
|
367
|
+
onEdit?: ActionBinding | ActionBinding[];
|
|
388
368
|
} & ComponentDirectives & { children?: SpecNode | SpecNode[] };
|
|
389
369
|
/**
|
|
390
370
|
* Visually groups related information and components into a contained, interactive card. Use for summarizing content, facilitating comparisons, or guiding users toward specific actions. Renders as a simple layout container when used with children only (no title/content).
|
|
391
371
|
*/
|
|
392
372
|
export const Card = createComponent<CardProps>('Card', {
|
|
393
|
-
|
|
394
|
-
onDelete: 'delete',
|
|
373
|
+
onAction: 'action',
|
|
395
374
|
onAdd: 'add',
|
|
396
375
|
onClick: 'click',
|
|
397
|
-
|
|
376
|
+
onDelete: 'delete',
|
|
377
|
+
onEdit: 'edit',
|
|
398
378
|
});
|
|
399
379
|
|
|
400
380
|
export type CardGroupProps = Bindable<CardGroupCatalogProps> &
|
|
@@ -414,15 +394,11 @@ export const Carousel = createComponent<CarouselProps>('Carousel', {
|
|
|
414
394
|
onDone: 'done',
|
|
415
395
|
});
|
|
416
396
|
|
|
417
|
-
export type ChartLoaderProps = Bindable<ChartLoaderCatalogProps> &
|
|
418
|
-
onLoad?: ActionBinding | ActionBinding[];
|
|
419
|
-
} & ComponentDirectives & { children?: SpecNode | SpecNode[] };
|
|
397
|
+
export type ChartLoaderProps = Bindable<ChartLoaderCatalogProps> & ComponentDirectives;
|
|
420
398
|
/**
|
|
421
|
-
*
|
|
399
|
+
* A skeleton placeholder shown while chart or graph content is loading. Use when the content area will contain a chart and you want to reduce perceived loading time and prevent layout shift.
|
|
422
400
|
*/
|
|
423
|
-
export const ChartLoader = createComponent<ChartLoaderProps>('ChartLoader'
|
|
424
|
-
onLoad: 'load',
|
|
425
|
-
});
|
|
401
|
+
export const ChartLoader = createComponent<ChartLoaderProps>('ChartLoader');
|
|
426
402
|
|
|
427
403
|
export type CheckListProps = Bindable<CheckListCatalogProps> & {
|
|
428
404
|
onChange?: ActionBinding | ActionBinding[];
|
|
@@ -435,27 +411,27 @@ export const CheckList = createComponent<CheckListProps>('CheckList', {
|
|
|
435
411
|
});
|
|
436
412
|
|
|
437
413
|
export type CheckboxProps = Bindable<CheckboxCatalogProps> & {
|
|
438
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
439
414
|
onBlur?: ActionBinding | ActionBinding[];
|
|
415
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
440
416
|
} & ComponentDirectives;
|
|
441
417
|
/**
|
|
442
418
|
* A checkbox that lets users select or unselect an option. Use for toggling a single boolean (e.g. "I agree") or selecting multiple items from a list. Use Radio for mutually exclusive choices; use Toggle when the change takes effect immediately.
|
|
443
419
|
*/
|
|
444
420
|
export const Checkbox = createComponent<CheckboxProps>('Checkbox', {
|
|
445
|
-
onChange: 'change',
|
|
446
421
|
onBlur: 'blur',
|
|
422
|
+
onChange: 'change',
|
|
447
423
|
});
|
|
448
424
|
|
|
449
425
|
export type CheckboxGroupProps = Bindable<CheckboxGroupCatalogProps> & {
|
|
450
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
451
426
|
onBlur?: ActionBinding | ActionBinding[];
|
|
427
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
452
428
|
} & ComponentDirectives;
|
|
453
429
|
/**
|
|
454
430
|
* A group of checkboxes that lets users select multiple options from a predefined list. Use when users can choose all, some, or none of the options. Use Radio instead for mutually exclusive single selection, or Toggle for immediate on/off activation.
|
|
455
431
|
*/
|
|
456
432
|
export const CheckboxGroup = createComponent<CheckboxGroupProps>('CheckboxGroup', {
|
|
457
|
-
onChange: 'change',
|
|
458
433
|
onBlur: 'blur',
|
|
434
|
+
onChange: 'change',
|
|
459
435
|
});
|
|
460
436
|
|
|
461
437
|
export type ChipProps = Bindable<ChipCatalogProps> & {
|
|
@@ -487,15 +463,15 @@ export type CircleProps = Bindable<CircleCatalogProps> & ComponentDirectives;
|
|
|
487
463
|
export const Circle = createComponent<CircleProps>('Circle');
|
|
488
464
|
|
|
489
465
|
export type ColorPickerProps = Bindable<ColorPickerCatalogProps> & {
|
|
490
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
491
466
|
onBlur?: ActionBinding | ActionBinding[];
|
|
467
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
492
468
|
} & ComponentDirectives;
|
|
493
469
|
/**
|
|
494
470
|
* A form input for selecting a color from a predefined palette or entering a custom hex value. Use for brand color selection, theme customization, or any setting where users choose a specific color.
|
|
495
471
|
*/
|
|
496
472
|
export const ColorPicker = createComponent<ColorPickerProps>('ColorPicker', {
|
|
497
|
-
onChange: 'change',
|
|
498
473
|
onBlur: 'blur',
|
|
474
|
+
onChange: 'change',
|
|
499
475
|
});
|
|
500
476
|
|
|
501
477
|
export type ContentLoaderProps = Bindable<ContentLoaderCatalogProps> & ComponentDirectives;
|
|
@@ -517,51 +493,57 @@ export type CountryProps = Bindable<CountryCatalogProps> & ComponentDirectives;
|
|
|
517
493
|
export const Country = createComponent<CountryProps>('Country');
|
|
518
494
|
|
|
519
495
|
export type CurrencyProps = Bindable<CurrencyCatalogProps> & {
|
|
520
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
521
496
|
onBlur?: ActionBinding | ActionBinding[];
|
|
497
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
522
498
|
} & ComponentDirectives;
|
|
523
499
|
/**
|
|
524
500
|
* Specialized input for entering monetary amounts with currency symbol/code prefix and locale-aware number formatting. Supports arithmetic expression evaluation, currency type selection via dropdown, and decimal precision control.
|
|
525
501
|
*/
|
|
526
502
|
export const Currency = createComponent<CurrencyProps>('Currency', {
|
|
527
|
-
onChange: 'change',
|
|
528
503
|
onBlur: 'blur',
|
|
504
|
+
onChange: 'change',
|
|
529
505
|
});
|
|
530
506
|
|
|
507
|
+
export type CustomObjectGridProps = Bindable<CustomObjectGridCatalogProps> & ComponentDirectives;
|
|
508
|
+
/**
|
|
509
|
+
* Auto-fetching grid for Rippling Custom Objects. Provide objectApiName and fieldApiNames to display records with auto-generated columns, pagination, sorting, and field-type formatting. Increment refreshKey to force a data refresh after mutations.
|
|
510
|
+
*/
|
|
511
|
+
export const CustomObjectGrid = createComponent<CustomObjectGridProps>('CustomObjectGrid');
|
|
512
|
+
|
|
531
513
|
export type DateProps = Bindable<DateCatalogProps> & {
|
|
532
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
533
514
|
onBlur?: ActionBinding | ActionBinding[];
|
|
515
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
534
516
|
} & ComponentDirectives;
|
|
535
517
|
/**
|
|
536
518
|
* A date input that lets users select a single date via calendar or keyboard entry. Use for collecting exact, approximate, or memorable dates (e.g. birth date, start date) and for scheduling. Optionally includes time selection with timezone support. Use DateRange for start/end date pairs; use DateInlineMulti for selecting multiple individual dates without an input field.
|
|
537
519
|
*/
|
|
538
520
|
export const Date = createComponent<DateProps>('Date', {
|
|
539
|
-
onChange: 'change',
|
|
540
521
|
onBlur: 'blur',
|
|
522
|
+
onChange: 'change',
|
|
541
523
|
});
|
|
542
524
|
|
|
543
525
|
export type DateInlineMultiProps = Bindable<DateInlineMultiCatalogProps> & {
|
|
544
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
545
526
|
onBlur?: ActionBinding | ActionBinding[];
|
|
527
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
546
528
|
} & ComponentDirectives;
|
|
547
529
|
/**
|
|
548
530
|
* An always-visible inline calendar for selecting multiple individual dates without an input field. Use when users need to pick several non-contiguous dates (e.g. holidays, blocked days). Use Date for single-date entry with an input field, or DateRange for start/end date pairs.
|
|
549
531
|
*/
|
|
550
532
|
export const DateInlineMulti = createComponent<DateInlineMultiProps>('DateInlineMulti', {
|
|
551
|
-
onChange: 'change',
|
|
552
533
|
onBlur: 'blur',
|
|
534
|
+
onChange: 'change',
|
|
553
535
|
});
|
|
554
536
|
|
|
555
537
|
export type DateRangeProps = Bindable<DateRangeCatalogProps> & {
|
|
556
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
557
538
|
onBlur?: ActionBinding | ActionBinding[];
|
|
539
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
558
540
|
} & ComponentDirectives;
|
|
559
541
|
/**
|
|
560
542
|
* A date range picker for selecting a start date and end date pair, such as travel dates, leave periods, or reporting intervals. Use Date instead when only a single date is needed.
|
|
561
543
|
*/
|
|
562
544
|
export const DateRange = createComponent<DateRangeProps>('DateRange', {
|
|
563
|
-
onChange: 'change',
|
|
564
545
|
onBlur: 'blur',
|
|
546
|
+
onChange: 'change',
|
|
565
547
|
});
|
|
566
548
|
|
|
567
549
|
export type DaySelectorProps = Bindable<DaySelectorCatalogProps> & {
|
|
@@ -587,19 +569,19 @@ export type DividerProps = Bindable<DividerCatalogProps> & ComponentDirectives;
|
|
|
587
569
|
export const Divider = createComponent<DividerProps>('Divider');
|
|
588
570
|
|
|
589
571
|
export type DraggableListProps = Bindable<DraggableListCatalogProps> & {
|
|
590
|
-
onUpdate?: ActionBinding | ActionBinding[];
|
|
591
|
-
onRemove?: ActionBinding | ActionBinding[];
|
|
592
|
-
onDragStart?: ActionBinding | ActionBinding[];
|
|
593
572
|
onDragEnd?: ActionBinding | ActionBinding[];
|
|
573
|
+
onDragStart?: ActionBinding | ActionBinding[];
|
|
574
|
+
onRemove?: ActionBinding | ActionBinding[];
|
|
575
|
+
onUpdate?: ActionBinding | ActionBinding[];
|
|
594
576
|
} & ComponentDirectives;
|
|
595
577
|
/**
|
|
596
578
|
* A reorderable drag-and-drop list for dynamically rearranging items. Supports vertical and horizontal layouts; use when item order flexibility is crucial to the user experience.
|
|
597
579
|
*/
|
|
598
580
|
export const DraggableList = createComponent<DraggableListProps>('DraggableList', {
|
|
599
|
-
onUpdate: 'update',
|
|
600
|
-
onRemove: 'remove',
|
|
601
|
-
onDragStart: 'dragStart',
|
|
602
581
|
onDragEnd: 'dragEnd',
|
|
582
|
+
onDragStart: 'dragStart',
|
|
583
|
+
onRemove: 'remove',
|
|
584
|
+
onUpdate: 'update',
|
|
603
585
|
});
|
|
604
586
|
|
|
605
587
|
export type DrawerProps = Bindable<DrawerCatalogProps> & {
|
|
@@ -623,29 +605,29 @@ export const Dropdown = createComponent<DropdownProps>('Dropdown', {
|
|
|
623
605
|
});
|
|
624
606
|
|
|
625
607
|
export type EmailProps = Bindable<EmailCatalogProps> & {
|
|
626
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
627
608
|
onBlur?: ActionBinding | ActionBinding[];
|
|
628
|
-
|
|
609
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
629
610
|
onClick?: ActionBinding | ActionBinding[];
|
|
611
|
+
onFocus?: ActionBinding | ActionBinding[];
|
|
630
612
|
onKeydown?: ActionBinding | ActionBinding[];
|
|
631
613
|
onKeyup?: ActionBinding | ActionBinding[];
|
|
632
|
-
onPaste?: ActionBinding | ActionBinding[];
|
|
633
614
|
onMouseenter?: ActionBinding | ActionBinding[];
|
|
634
615
|
onMouseleave?: ActionBinding | ActionBinding[];
|
|
616
|
+
onPaste?: ActionBinding | ActionBinding[];
|
|
635
617
|
} & ComponentDirectives;
|
|
636
618
|
/**
|
|
637
619
|
* A form input field for collecting email addresses with built-in format validation. Use for registration, login, subscriptions, and any context requiring a valid email. Do not use for non-email text like phone numbers or usernames — use Text instead.
|
|
638
620
|
*/
|
|
639
621
|
export const Email = createComponent<EmailProps>('Email', {
|
|
640
|
-
onChange: 'change',
|
|
641
622
|
onBlur: 'blur',
|
|
642
|
-
|
|
623
|
+
onChange: 'change',
|
|
643
624
|
onClick: 'click',
|
|
625
|
+
onFocus: 'focus',
|
|
644
626
|
onKeydown: 'keydown',
|
|
645
627
|
onKeyup: 'keyup',
|
|
646
|
-
onPaste: 'paste',
|
|
647
628
|
onMouseenter: 'mouseenter',
|
|
648
629
|
onMouseleave: 'mouseleave',
|
|
630
|
+
onPaste: 'paste',
|
|
649
631
|
});
|
|
650
632
|
|
|
651
633
|
export type ExpansionPanelProps = Bindable<ExpansionPanelCatalogProps> & {
|
|
@@ -683,45 +665,45 @@ export const File = createComponent<FileProps>('File', {
|
|
|
683
665
|
});
|
|
684
666
|
|
|
685
667
|
export type FileDropProps = Bindable<FileDropCatalogProps> & {
|
|
686
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
687
668
|
onBlur?: ActionBinding | ActionBinding[];
|
|
669
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
688
670
|
} & ComponentDirectives;
|
|
689
671
|
/**
|
|
690
672
|
* A file upload input that allows users to drag and drop files into a drop zone or click to browse. Supports single or multiple file uploads with configurable file type restrictions, size limits, and optional image cropping.
|
|
691
673
|
*/
|
|
692
674
|
export const FileDrop = createComponent<FileDropProps>('FileDrop', {
|
|
693
|
-
onChange: 'change',
|
|
694
675
|
onBlur: 'blur',
|
|
676
|
+
onChange: 'change',
|
|
695
677
|
});
|
|
696
678
|
|
|
697
679
|
export type FloatingButtonProps = Bindable<FloatingButtonCatalogProps> & {
|
|
698
|
-
onPress?: ActionBinding | ActionBinding[];
|
|
699
|
-
onPressWhileDisabled?: ActionBinding | ActionBinding[];
|
|
700
680
|
onMouseEnter?: ActionBinding | ActionBinding[];
|
|
701
681
|
onMouseLeave?: ActionBinding | ActionBinding[];
|
|
682
|
+
onPress?: ActionBinding | ActionBinding[];
|
|
683
|
+
onPressWhileDisabled?: ActionBinding | ActionBinding[];
|
|
702
684
|
} & ComponentDirectives;
|
|
703
685
|
/**
|
|
704
686
|
* A floating action button (FAB) that highlights the primary action on a screen, staying visible above other content. Uses an icon only (no text label) and typically appears once per screen for key tasks like creating, favoriting, or sharing.
|
|
705
687
|
*/
|
|
706
688
|
export const FloatingButton = createComponent<FloatingButtonProps>('FloatingButton', {
|
|
707
|
-
onPress: 'press',
|
|
708
|
-
onPressWhileDisabled: 'pressWhileDisabled',
|
|
709
689
|
onMouseEnter: 'mouseEnter',
|
|
710
690
|
onMouseLeave: 'mouseLeave',
|
|
691
|
+
onPress: 'press',
|
|
692
|
+
onPressWhileDisabled: 'pressWhileDisabled',
|
|
711
693
|
});
|
|
712
694
|
|
|
713
695
|
export type GridProps = Bindable<GridCatalogProps> & {
|
|
714
|
-
onRowClick?: ActionBinding | ActionBinding[];
|
|
715
|
-
onRowAction?: ActionBinding | ActionBinding[];
|
|
716
696
|
onHeaderAction?: ActionBinding | ActionBinding[];
|
|
697
|
+
onRowAction?: ActionBinding | ActionBinding[];
|
|
698
|
+
onRowClick?: ActionBinding | ActionBinding[];
|
|
717
699
|
} & ComponentDirectives;
|
|
718
700
|
/**
|
|
719
701
|
* Data grid for displaying tabular data. Each column defines a header, data key path, and cell type. Use $bindState on selectedRow to capture clicked row data. Data is an array of row objects with _key as unique identifier.
|
|
720
702
|
*/
|
|
721
703
|
export const Grid = createComponent<GridProps>('Grid', {
|
|
722
|
-
onRowClick: 'rowClick',
|
|
723
|
-
onRowAction: 'rowAction',
|
|
724
704
|
onHeaderAction: 'headerAction',
|
|
705
|
+
onRowAction: 'rowAction',
|
|
706
|
+
onRowClick: 'rowClick',
|
|
725
707
|
});
|
|
726
708
|
|
|
727
709
|
export type HStackProps = Bindable<HStackCatalogProps> &
|
|
@@ -746,33 +728,33 @@ export type IconProps = Bindable<IconCatalogProps> & {
|
|
|
746
728
|
export const Icon = createComponent<IconProps>('Icon', { onPress: 'press' });
|
|
747
729
|
|
|
748
730
|
export type IconButtonProps = Bindable<IconButtonCatalogProps> & {
|
|
749
|
-
onPress?: ActionBinding | ActionBinding[];
|
|
750
|
-
onPressWhileDisabled?: ActionBinding | ActionBinding[];
|
|
751
731
|
onMouseEnter?: ActionBinding | ActionBinding[];
|
|
752
732
|
onMouseLeave?: ActionBinding | ActionBinding[];
|
|
733
|
+
onPress?: ActionBinding | ActionBinding[];
|
|
734
|
+
onPressWhileDisabled?: ActionBinding | ActionBinding[];
|
|
753
735
|
} & ComponentDirectives;
|
|
754
736
|
/**
|
|
755
737
|
* An icon-only button for repeated, common, or persistent actions when screen real estate is limited. Use for well-known actions like search, refresh, edit, or navigation — use a regular Button with text when the action is critical or requires more context.
|
|
756
738
|
*/
|
|
757
739
|
export const IconButton = createComponent<IconButtonProps>('IconButton', {
|
|
758
|
-
onPress: 'press',
|
|
759
|
-
onPressWhileDisabled: 'pressWhileDisabled',
|
|
760
740
|
onMouseEnter: 'mouseEnter',
|
|
761
741
|
onMouseLeave: 'mouseLeave',
|
|
742
|
+
onPress: 'press',
|
|
743
|
+
onPressWhileDisabled: 'pressWhileDisabled',
|
|
762
744
|
});
|
|
763
745
|
|
|
764
746
|
export type ImageProps = Bindable<ImageCatalogProps> & {
|
|
765
|
-
onPress?: ActionBinding | ActionBinding[];
|
|
766
|
-
onLoad?: ActionBinding | ActionBinding[];
|
|
767
747
|
onError?: ActionBinding | ActionBinding[];
|
|
748
|
+
onLoad?: ActionBinding | ActionBinding[];
|
|
749
|
+
onPress?: ActionBinding | ActionBinding[];
|
|
768
750
|
} & ComponentDirectives;
|
|
769
751
|
/**
|
|
770
752
|
* Displays an image with optional theme-aware light/dark sources, lazy loading, and click interaction. Use for static or decorative images — use Avatar for user profile pictures, Icon for symbolic glyphs, or ImageViewer for zoomable image galleries.
|
|
771
753
|
*/
|
|
772
754
|
export const Image = createComponent<ImageProps>('Image', {
|
|
773
|
-
onPress: 'press',
|
|
774
|
-
onLoad: 'load',
|
|
775
755
|
onError: 'error',
|
|
756
|
+
onLoad: 'load',
|
|
757
|
+
onPress: 'press',
|
|
776
758
|
});
|
|
777
759
|
|
|
778
760
|
export type ImageViewerProps = Bindable<ImageViewerCatalogProps> & ComponentDirectives;
|
|
@@ -854,31 +836,31 @@ export type LoaderCardProps = Bindable<LoaderCardCatalogProps> & ComponentDirect
|
|
|
854
836
|
export const LoaderCard = createComponent<LoaderCardProps>('LoaderCard');
|
|
855
837
|
|
|
856
838
|
export type LocationCardProps = Bindable<LocationCardCatalogProps> & {
|
|
857
|
-
onEdit?: ActionBinding | ActionBinding[];
|
|
858
|
-
onDelete?: ActionBinding | ActionBinding[];
|
|
859
|
-
onClick?: ActionBinding | ActionBinding[];
|
|
860
839
|
onAction?: ActionBinding | ActionBinding[];
|
|
840
|
+
onClick?: ActionBinding | ActionBinding[];
|
|
841
|
+
onDelete?: ActionBinding | ActionBinding[];
|
|
842
|
+
onEdit?: ActionBinding | ActionBinding[];
|
|
861
843
|
} & ComponentDirectives;
|
|
862
844
|
/**
|
|
863
845
|
* A specialized card for displaying a physical location with its nickname and formatted address. Supports edit/delete actions, custom dropdown actions, and navigation links to location details.
|
|
864
846
|
*/
|
|
865
847
|
export const LocationCard = createComponent<LocationCardProps>('LocationCard', {
|
|
866
|
-
onEdit: 'edit',
|
|
867
|
-
onDelete: 'delete',
|
|
868
|
-
onClick: 'click',
|
|
869
848
|
onAction: 'action',
|
|
849
|
+
onClick: 'click',
|
|
850
|
+
onDelete: 'delete',
|
|
851
|
+
onEdit: 'edit',
|
|
870
852
|
});
|
|
871
853
|
|
|
872
854
|
export type MaskerProps = Bindable<MaskerCatalogProps> & {
|
|
873
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
874
855
|
onBlur?: ActionBinding | ActionBinding[];
|
|
856
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
875
857
|
} & ComponentDirectives;
|
|
876
858
|
/**
|
|
877
859
|
* A text input that enforces a specific format pattern using mask characters (e.g. phone numbers, SSNs, postal codes). Use when the input value must conform to a known fixed-length pattern with digit, letter, or mixed character slots.
|
|
878
860
|
*/
|
|
879
861
|
export const Masker = createComponent<MaskerProps>('Masker', {
|
|
880
|
-
onChange: 'change',
|
|
881
862
|
onBlur: 'blur',
|
|
863
|
+
onChange: 'change',
|
|
882
864
|
});
|
|
883
865
|
|
|
884
866
|
export type MenuListProps = Bindable<MenuListCatalogProps> & {
|
|
@@ -913,33 +895,39 @@ export type ModalFooterProps = Bindable<ModalFooterCatalogProps> &
|
|
|
913
895
|
export const ModalFooter = createComponent<ModalFooterProps>('ModalFooter');
|
|
914
896
|
|
|
915
897
|
export type NestedListProps = Bindable<NestedListCatalogProps> & {
|
|
916
|
-
onToggle?: ActionBinding | ActionBinding[];
|
|
917
898
|
onSelect?: ActionBinding | ActionBinding[];
|
|
899
|
+
onToggle?: ActionBinding | ActionBinding[];
|
|
918
900
|
} & ComponentDirectives;
|
|
919
901
|
/**
|
|
920
902
|
* A hierarchical nested list for displaying complex data structures like categories and subcategories, supporting up to four levels of expandable/collapsible nesting. Use for organizing large amounts of nested information such as organizational structures or department lists.
|
|
921
903
|
*/
|
|
922
904
|
export const NestedList = createComponent<NestedListProps>('NestedList', {
|
|
923
|
-
onToggle: 'toggle',
|
|
924
905
|
onSelect: 'select',
|
|
906
|
+
onToggle: 'toggle',
|
|
925
907
|
});
|
|
926
908
|
|
|
927
909
|
export type NumberProps = Bindable<NumberCatalogProps> & {
|
|
928
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
929
910
|
onBlur?: ActionBinding | ActionBinding[];
|
|
930
|
-
|
|
911
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
931
912
|
onChangeCalculationState?: ActionBinding | ActionBinding[];
|
|
913
|
+
onChangeRaw?: ActionBinding | ActionBinding[];
|
|
932
914
|
} & ComponentDirectives;
|
|
933
915
|
/**
|
|
934
916
|
* A general-purpose numeric input for entering whole or decimal numbers. Supports min/max range constraints, step increments, locale-aware formatting, and inline arithmetic evaluation. Use for quantities, counts, measurements, or any plain number entry — use Currency for monetary amounts, Percentage for percent values, or Slider/RangeSlider for visual range selection.
|
|
935
917
|
*/
|
|
936
918
|
export const Number = createComponent<NumberProps>('Number', {
|
|
937
|
-
onChange: 'change',
|
|
938
919
|
onBlur: 'blur',
|
|
939
|
-
|
|
920
|
+
onChange: 'change',
|
|
940
921
|
onChangeCalculationState: 'changeCalculationState',
|
|
922
|
+
onChangeRaw: 'changeRaw',
|
|
941
923
|
});
|
|
942
924
|
|
|
925
|
+
export type ObjectListViewProps = Bindable<ObjectListViewCatalogProps> & ComponentDirectives;
|
|
926
|
+
/**
|
|
927
|
+
* Full-featured object list page with list view management. Supports multiple list views, view switching, inline editing, bulk actions, and record management. Use objectApiName to specify the object. Optionally set defaultListViewId to pre-select a specific list view.
|
|
928
|
+
*/
|
|
929
|
+
export const ObjectListView = createComponent<ObjectListViewProps>('ObjectListView');
|
|
930
|
+
|
|
943
931
|
export type ObjectUIProps = Bindable<ObjectUICatalogProps> &
|
|
944
932
|
ComponentDirectives & { children?: SpecNode | SpecNode[] };
|
|
945
933
|
/**
|
|
@@ -1031,71 +1019,71 @@ export const Pane = createComponent<PaneProps>('Pane', {
|
|
|
1031
1019
|
});
|
|
1032
1020
|
|
|
1033
1021
|
export type PasswordProps = Bindable<PasswordCatalogProps> & {
|
|
1034
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1035
1022
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1036
|
-
|
|
1023
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1037
1024
|
onClick?: ActionBinding | ActionBinding[];
|
|
1025
|
+
onFocus?: ActionBinding | ActionBinding[];
|
|
1038
1026
|
onKeydown?: ActionBinding | ActionBinding[];
|
|
1039
1027
|
onKeyup?: ActionBinding | ActionBinding[];
|
|
1040
|
-
onPaste?: ActionBinding | ActionBinding[];
|
|
1041
1028
|
onMouseenter?: ActionBinding | ActionBinding[];
|
|
1042
1029
|
onMouseleave?: ActionBinding | ActionBinding[];
|
|
1030
|
+
onPaste?: ActionBinding | ActionBinding[];
|
|
1043
1031
|
onReveal?: ActionBinding | ActionBinding[];
|
|
1044
1032
|
} & ComponentDirectives;
|
|
1045
1033
|
/**
|
|
1046
1034
|
* A secure input field for entering or creating passwords, with automatic character masking and an optional visibility toggle. Use in login, signup, or verification flows.
|
|
1047
1035
|
*/
|
|
1048
1036
|
export const Password = createComponent<PasswordProps>('Password', {
|
|
1049
|
-
onChange: 'change',
|
|
1050
1037
|
onBlur: 'blur',
|
|
1051
|
-
|
|
1038
|
+
onChange: 'change',
|
|
1052
1039
|
onClick: 'click',
|
|
1040
|
+
onFocus: 'focus',
|
|
1053
1041
|
onKeydown: 'keydown',
|
|
1054
1042
|
onKeyup: 'keyup',
|
|
1055
|
-
onPaste: 'paste',
|
|
1056
1043
|
onMouseenter: 'mouseenter',
|
|
1057
1044
|
onMouseleave: 'mouseleave',
|
|
1045
|
+
onPaste: 'paste',
|
|
1058
1046
|
onReveal: 'reveal',
|
|
1059
1047
|
});
|
|
1060
1048
|
|
|
1061
1049
|
export type PercentageProps = Bindable<PercentageCatalogProps> & {
|
|
1062
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1063
1050
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1051
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1064
1052
|
} & ComponentDirectives;
|
|
1065
1053
|
/**
|
|
1066
1054
|
* A numeric input for entering and editing percentage values. Automatically appends a % suffix, supports decimal precision, negative values, and upper/lower bounds. Use for financial calculations, progress indicators, or statistical entries requiring percentage values.
|
|
1067
1055
|
*/
|
|
1068
1056
|
export const Percentage = createComponent<PercentageProps>('Percentage', {
|
|
1069
|
-
onChange: 'change',
|
|
1070
1057
|
onBlur: 'blur',
|
|
1058
|
+
onChange: 'change',
|
|
1071
1059
|
});
|
|
1072
1060
|
|
|
1073
1061
|
export type PhoneProps = Bindable<PhoneCatalogProps> & {
|
|
1074
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1075
1062
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1076
|
-
|
|
1063
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1077
1064
|
onClick?: ActionBinding | ActionBinding[];
|
|
1065
|
+
onCountryCodeChange?: ActionBinding | ActionBinding[];
|
|
1066
|
+
onFocus?: ActionBinding | ActionBinding[];
|
|
1078
1067
|
onKeydown?: ActionBinding | ActionBinding[];
|
|
1079
1068
|
onKeyup?: ActionBinding | ActionBinding[];
|
|
1080
|
-
onPaste?: ActionBinding | ActionBinding[];
|
|
1081
1069
|
onMouseenter?: ActionBinding | ActionBinding[];
|
|
1082
1070
|
onMouseleave?: ActionBinding | ActionBinding[];
|
|
1083
|
-
|
|
1071
|
+
onPaste?: ActionBinding | ActionBinding[];
|
|
1084
1072
|
} & ComponentDirectives;
|
|
1085
1073
|
/**
|
|
1086
1074
|
* A specialized input for entering and editing phone numbers with automatic region-based formatting, international support, and an optional country code dropdown selector.
|
|
1087
1075
|
*/
|
|
1088
1076
|
export const Phone = createComponent<PhoneProps>('Phone', {
|
|
1089
|
-
onChange: 'change',
|
|
1090
1077
|
onBlur: 'blur',
|
|
1091
|
-
|
|
1078
|
+
onChange: 'change',
|
|
1092
1079
|
onClick: 'click',
|
|
1080
|
+
onCountryCodeChange: 'countryCodeChange',
|
|
1081
|
+
onFocus: 'focus',
|
|
1093
1082
|
onKeydown: 'keydown',
|
|
1094
1083
|
onKeyup: 'keyup',
|
|
1095
|
-
onPaste: 'paste',
|
|
1096
1084
|
onMouseenter: 'mouseenter',
|
|
1097
1085
|
onMouseleave: 'mouseleave',
|
|
1098
|
-
|
|
1086
|
+
onPaste: 'paste',
|
|
1099
1087
|
});
|
|
1100
1088
|
|
|
1101
1089
|
export type ProgressBarProps = Bindable<ProgressBarCatalogProps> & ComponentDirectives;
|
|
@@ -1111,8 +1099,8 @@ export type ProgressStepsProps = Bindable<ProgressStepsCatalogProps> & Component
|
|
|
1111
1099
|
export const ProgressSteps = createComponent<ProgressStepsProps>('ProgressSteps');
|
|
1112
1100
|
|
|
1113
1101
|
export type RadioProps = Bindable<RadioCatalogProps> & {
|
|
1114
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1115
1102
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1103
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1116
1104
|
onMouseenter?: ActionBinding | ActionBinding[];
|
|
1117
1105
|
onMouseleave?: ActionBinding | ActionBinding[];
|
|
1118
1106
|
} & ComponentDirectives;
|
|
@@ -1120,26 +1108,26 @@ export type RadioProps = Bindable<RadioCatalogProps> & {
|
|
|
1120
1108
|
* Radio buttons let users choose a single option from two or more mutually exclusive options. Prefer over Select when showing 5 or fewer options that need to be immediately visible. Use Checkbox instead when multiple selections are allowed.
|
|
1121
1109
|
*/
|
|
1122
1110
|
export const Radio = createComponent<RadioProps>('Radio', {
|
|
1123
|
-
onChange: 'change',
|
|
1124
1111
|
onBlur: 'blur',
|
|
1112
|
+
onChange: 'change',
|
|
1125
1113
|
onMouseenter: 'mouseenter',
|
|
1126
1114
|
onMouseleave: 'mouseleave',
|
|
1127
1115
|
});
|
|
1128
1116
|
|
|
1129
1117
|
export type RangeSliderProps = Bindable<RangeSliderCatalogProps> & {
|
|
1130
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1131
|
-
onBeforeChange?: ActionBinding | ActionBinding[];
|
|
1132
1118
|
onAfterChange?: ActionBinding | ActionBinding[];
|
|
1119
|
+
onBeforeChange?: ActionBinding | ActionBinding[];
|
|
1133
1120
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1121
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1134
1122
|
} & ComponentDirectives;
|
|
1135
1123
|
/**
|
|
1136
1124
|
* A two-handle slider for selecting a numeric range within a track. Use for defining min/max boundaries such as price filters or value ranges.
|
|
1137
1125
|
*/
|
|
1138
1126
|
export const RangeSlider = createComponent<RangeSliderProps>('RangeSlider', {
|
|
1139
|
-
onChange: 'change',
|
|
1140
|
-
onBeforeChange: 'beforeChange',
|
|
1141
1127
|
onAfterChange: 'afterChange',
|
|
1128
|
+
onBeforeChange: 'beforeChange',
|
|
1142
1129
|
onBlur: 'blur',
|
|
1130
|
+
onChange: 'change',
|
|
1143
1131
|
});
|
|
1144
1132
|
|
|
1145
1133
|
export type ReportLoaderProps = Bindable<ReportLoaderCatalogProps> & ComponentDirectives;
|
|
@@ -1160,6 +1148,26 @@ export type ReportViewerLoaderProps = Bindable<ReportViewerLoaderCatalogProps> &
|
|
|
1160
1148
|
*/
|
|
1161
1149
|
export const ReportViewerLoader = createComponent<ReportViewerLoaderProps>('ReportViewerLoader');
|
|
1162
1150
|
|
|
1151
|
+
export type ResizableBoardProps = Bindable<ResizableBoardCatalogProps> & {
|
|
1152
|
+
onBreakpointChange?: ActionBinding | ActionBinding[];
|
|
1153
|
+
onDragStart?: ActionBinding | ActionBinding[];
|
|
1154
|
+
onDragStop?: ActionBinding | ActionBinding[];
|
|
1155
|
+
onLayoutChange?: ActionBinding | ActionBinding[];
|
|
1156
|
+
onResizeStart?: ActionBinding | ActionBinding[];
|
|
1157
|
+
onResizeStop?: ActionBinding | ActionBinding[];
|
|
1158
|
+
} & ComponentDirectives & { children?: SpecNode | SpecNode[] };
|
|
1159
|
+
/**
|
|
1160
|
+
* A responsive 12-column grid for dashboard widgets that supports drag-to-rearrange and resize-from-any-corner. Use for user-curated dashboards where end-users decide which tiles appear where and how large they are. Each direct child element's spec id must match a `layouts[].identifier`; that layout entry controls the child's size and per-block styling.
|
|
1161
|
+
*/
|
|
1162
|
+
export const ResizableBoard = createComponent<ResizableBoardProps>('ResizableBoard', {
|
|
1163
|
+
onBreakpointChange: 'breakpointChange',
|
|
1164
|
+
onDragStart: 'dragStart',
|
|
1165
|
+
onDragStop: 'dragStop',
|
|
1166
|
+
onLayoutChange: 'layoutChange',
|
|
1167
|
+
onResizeStart: 'resizeStart',
|
|
1168
|
+
onResizeStop: 'resizeStop',
|
|
1169
|
+
});
|
|
1170
|
+
|
|
1163
1171
|
export type ResponsiveProps = Bindable<ResponsiveCatalogProps> &
|
|
1164
1172
|
ComponentDirectives & { children?: SpecNode | SpecNode[] };
|
|
1165
1173
|
/**
|
|
@@ -1168,33 +1176,33 @@ export type ResponsiveProps = Bindable<ResponsiveCatalogProps> &
|
|
|
1168
1176
|
export const Responsive = createComponent<ResponsiveProps>('Responsive');
|
|
1169
1177
|
|
|
1170
1178
|
export type SegmentedControlProps = Bindable<SegmentedControlCatalogProps> & {
|
|
1171
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1172
1179
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1180
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1173
1181
|
} & ComponentDirectives;
|
|
1174
1182
|
/**
|
|
1175
1183
|
* A linear set of buttons for toggling between closely related choices (2-5 short-label options) and instantly applying a selection. Supports single, multi, and range selection modes. NOT suitable for binary (2-option) choices — use Toggle or ToggleButton instead. Prefer over Radio when options are short labels needing a compact inline layout; use Radio for longer phrases, Tabs for content navigation.
|
|
1176
1184
|
*/
|
|
1177
1185
|
export const SegmentedControl = createComponent<SegmentedControlProps>('SegmentedControl', {
|
|
1178
|
-
onChange: 'change',
|
|
1179
1186
|
onBlur: 'blur',
|
|
1187
|
+
onChange: 'change',
|
|
1180
1188
|
});
|
|
1181
1189
|
|
|
1182
1190
|
export type SelectProps = Bindable<SelectCatalogProps> & {
|
|
1183
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1184
1191
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1192
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1185
1193
|
onFocus?: ActionBinding | ActionBinding[];
|
|
1186
|
-
onPaste?: ActionBinding | ActionBinding[];
|
|
1187
1194
|
onMenuToggle?: ActionBinding | ActionBinding[];
|
|
1195
|
+
onPaste?: ActionBinding | ActionBinding[];
|
|
1188
1196
|
} & ComponentDirectives;
|
|
1189
1197
|
/**
|
|
1190
1198
|
* A dropdown input that lets users choose one or more options from a predefined list. Use for long lists, searchable lists, or constrained spaces. Use Radio or Checkbox cards instead when there are few options and the selection is a key part of the flow.
|
|
1191
1199
|
*/
|
|
1192
1200
|
export const Select = createComponent<SelectProps>('Select', {
|
|
1193
|
-
onChange: 'change',
|
|
1194
1201
|
onBlur: 'blur',
|
|
1202
|
+
onChange: 'change',
|
|
1195
1203
|
onFocus: 'focus',
|
|
1196
|
-
onPaste: 'paste',
|
|
1197
1204
|
onMenuToggle: 'menuToggle',
|
|
1205
|
+
onPaste: 'paste',
|
|
1198
1206
|
});
|
|
1199
1207
|
|
|
1200
1208
|
export type SelectableGroupProps = Bindable<SelectableGroupCatalogProps> & {
|
|
@@ -1239,15 +1247,15 @@ export const Signature = createComponent<SignatureProps>('Signature', {
|
|
|
1239
1247
|
});
|
|
1240
1248
|
|
|
1241
1249
|
export type SinProps = Bindable<SinCatalogProps> & {
|
|
1242
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1243
1250
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1251
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1244
1252
|
} & ComponentDirectives;
|
|
1245
1253
|
/**
|
|
1246
1254
|
* A specialized masked input for entering Canadian Social Insurance Numbers (SIN). Automatically formats the 9-digit value as "XXX XXX XXX" while storing the unmasked digits. Use for Canadian employee or tax forms requiring a SIN — use Ssn for US Social Security Numbers, or Masker for other custom-format masked inputs.
|
|
1247
1255
|
*/
|
|
1248
1256
|
export const Sin = createComponent<SinProps>('Sin', {
|
|
1249
|
-
onChange: 'change',
|
|
1250
1257
|
onBlur: 'blur',
|
|
1258
|
+
onChange: 'change',
|
|
1251
1259
|
});
|
|
1252
1260
|
|
|
1253
1261
|
export type SkeletonProps = Bindable<SkeletonCatalogProps> & ComponentDirectives;
|
|
@@ -1257,19 +1265,19 @@ export type SkeletonProps = Bindable<SkeletonCatalogProps> & ComponentDirectives
|
|
|
1257
1265
|
export const Skeleton = createComponent<SkeletonProps>('Skeleton');
|
|
1258
1266
|
|
|
1259
1267
|
export type SliderProps = Bindable<SliderCatalogProps> & {
|
|
1260
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1261
|
-
onBlur?: ActionBinding | ActionBinding[];
|
|
1262
|
-
onBeforeChange?: ActionBinding | ActionBinding[];
|
|
1263
1268
|
onAfterChange?: ActionBinding | ActionBinding[];
|
|
1269
|
+
onBeforeChange?: ActionBinding | ActionBinding[];
|
|
1270
|
+
onBlur?: ActionBinding | ActionBinding[];
|
|
1271
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1264
1272
|
} & ComponentDirectives;
|
|
1265
1273
|
/**
|
|
1266
1274
|
* An interactive control for selecting a single numeric value within a defined range by dragging a handle along a horizontal track. Use for numeric ranges like 0–100; do not use for extremely large ranges (e.g. 1–1000) or non-numeric values.
|
|
1267
1275
|
*/
|
|
1268
1276
|
export const Slider = createComponent<SliderProps>('Slider', {
|
|
1269
|
-
onChange: 'change',
|
|
1270
|
-
onBlur: 'blur',
|
|
1271
|
-
onBeforeChange: 'beforeChange',
|
|
1272
1277
|
onAfterChange: 'afterChange',
|
|
1278
|
+
onBeforeChange: 'beforeChange',
|
|
1279
|
+
onBlur: 'blur',
|
|
1280
|
+
onChange: 'change',
|
|
1273
1281
|
});
|
|
1274
1282
|
|
|
1275
1283
|
export type SnackBarProps = Bindable<SnackBarCatalogProps> & {
|
|
@@ -1289,15 +1297,15 @@ export type SpinnerProps = Bindable<SpinnerCatalogProps> & ComponentDirectives;
|
|
|
1289
1297
|
export const Spinner = createComponent<SpinnerProps>('Spinner');
|
|
1290
1298
|
|
|
1291
1299
|
export type SplitButtonProps = Bindable<SplitButtonCatalogProps> & {
|
|
1292
|
-
onPress?: ActionBinding | ActionBinding[];
|
|
1293
1300
|
onDropdownChange?: ActionBinding | ActionBinding[];
|
|
1301
|
+
onPress?: ActionBinding | ActionBinding[];
|
|
1294
1302
|
} & ComponentDirectives;
|
|
1295
1303
|
/**
|
|
1296
1304
|
* A compound button that combines a primary action with a secondary trailing button, typically opening a dropdown of alternative actions. Use when the user has a main action with related alternatives (e.g. "Save" with "Save as draft", "Save and publish").
|
|
1297
1305
|
*/
|
|
1298
1306
|
export const SplitButton = createComponent<SplitButtonProps>('SplitButton', {
|
|
1299
|
-
onPress: 'press',
|
|
1300
1307
|
onDropdownChange: 'dropdownChange',
|
|
1308
|
+
onPress: 'press',
|
|
1301
1309
|
});
|
|
1302
1310
|
|
|
1303
1311
|
export type SplitPaneProps = Bindable<SplitPaneCatalogProps> &
|
|
@@ -1308,15 +1316,15 @@ export type SplitPaneProps = Bindable<SplitPaneCatalogProps> &
|
|
|
1308
1316
|
export const SplitPane = createComponent<SplitPaneProps>('SplitPane');
|
|
1309
1317
|
|
|
1310
1318
|
export type SsnProps = Bindable<SsnCatalogProps> & {
|
|
1311
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1312
1319
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1320
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1313
1321
|
} & ComponentDirectives;
|
|
1314
1322
|
/**
|
|
1315
1323
|
* A specialized masked input for collecting US Social Security Numbers (SSN). Automatically formats display as XXX-XX-XXXX while storing the raw 9-digit value. Use for any form field that requires an SSN; use Text for general text or Password for secret credentials.
|
|
1316
1324
|
*/
|
|
1317
1325
|
export const Ssn = createComponent<SsnProps>('Ssn', {
|
|
1318
|
-
onChange: 'change',
|
|
1319
1326
|
onBlur: 'blur',
|
|
1327
|
+
onChange: 'change',
|
|
1320
1328
|
});
|
|
1321
1329
|
|
|
1322
1330
|
export type StatusProps = Bindable<StatusCatalogProps> & ComponentDirectives;
|
|
@@ -1346,15 +1354,15 @@ export const Survey = createComponent<SurveyProps>('Survey', {
|
|
|
1346
1354
|
});
|
|
1347
1355
|
|
|
1348
1356
|
export type SwitchProps = Bindable<SwitchCatalogProps> & {
|
|
1349
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1350
1357
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1358
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1351
1359
|
} & ComponentDirectives;
|
|
1352
1360
|
/**
|
|
1353
1361
|
* A toggle that lets users switch instantly between on and off states. Use for activation settings that take effect immediately; use Checkbox instead for selection or agreement scenarios that require submission.
|
|
1354
1362
|
*/
|
|
1355
1363
|
export const Switch = createComponent<SwitchProps>('Switch', {
|
|
1356
|
-
onChange: 'change',
|
|
1357
1364
|
onBlur: 'blur',
|
|
1365
|
+
onChange: 'change',
|
|
1358
1366
|
});
|
|
1359
1367
|
|
|
1360
1368
|
export type TabProps = Bindable<TabCatalogProps> & {
|
|
@@ -1378,19 +1386,19 @@ export type TextProps = Bindable<TextCatalogProps> & ComponentDirectives;
|
|
|
1378
1386
|
export const Text = createComponent<TextProps>('Text');
|
|
1379
1387
|
|
|
1380
1388
|
export type TextAutoSuggestProps = Bindable<TextAutoSuggestCatalogProps> & {
|
|
1381
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1382
1389
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1383
|
-
|
|
1390
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1384
1391
|
onClick?: ActionBinding | ActionBinding[];
|
|
1392
|
+
onFocus?: ActionBinding | ActionBinding[];
|
|
1385
1393
|
} & ComponentDirectives;
|
|
1386
1394
|
/**
|
|
1387
1395
|
* An autocomplete input that offers text suggestions in a dropdown menu as the user types. Unlike Select, users can either manually type free-form text or pick from the suggestions list.
|
|
1388
1396
|
*/
|
|
1389
1397
|
export const TextAutoSuggest = createComponent<TextAutoSuggestProps>('TextAutoSuggest', {
|
|
1390
|
-
onChange: 'change',
|
|
1391
1398
|
onBlur: 'blur',
|
|
1392
|
-
|
|
1399
|
+
onChange: 'change',
|
|
1393
1400
|
onClick: 'click',
|
|
1401
|
+
onFocus: 'focus',
|
|
1394
1402
|
});
|
|
1395
1403
|
|
|
1396
1404
|
export type TextClipProps = Bindable<TextClipCatalogProps> &
|
|
@@ -1401,29 +1409,29 @@ export type TextClipProps = Bindable<TextClipCatalogProps> &
|
|
|
1401
1409
|
export const TextClip = createComponent<TextClipProps>('TextClip');
|
|
1402
1410
|
|
|
1403
1411
|
export type TextInputProps = Bindable<TextInputCatalogProps> & {
|
|
1404
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1405
1412
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1406
|
-
|
|
1413
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1407
1414
|
onClick?: ActionBinding | ActionBinding[];
|
|
1415
|
+
onFocus?: ActionBinding | ActionBinding[];
|
|
1408
1416
|
onKeydown?: ActionBinding | ActionBinding[];
|
|
1409
1417
|
onKeyup?: ActionBinding | ActionBinding[];
|
|
1410
|
-
onPaste?: ActionBinding | ActionBinding[];
|
|
1411
1418
|
onMouseenter?: ActionBinding | ActionBinding[];
|
|
1412
1419
|
onMouseleave?: ActionBinding | ActionBinding[];
|
|
1420
|
+
onPaste?: ActionBinding | ActionBinding[];
|
|
1413
1421
|
} & ComponentDirectives;
|
|
1414
1422
|
/**
|
|
1415
1423
|
* A single-line text input for collecting short-form text data such as names, emails, URLs, or search queries. Use TextArea for multi-line content or Number for numeric-only values.
|
|
1416
1424
|
*/
|
|
1417
1425
|
export const TextInput = createComponent<TextInputProps>('TextInput', {
|
|
1418
|
-
onChange: 'change',
|
|
1419
1426
|
onBlur: 'blur',
|
|
1420
|
-
|
|
1427
|
+
onChange: 'change',
|
|
1421
1428
|
onClick: 'click',
|
|
1429
|
+
onFocus: 'focus',
|
|
1422
1430
|
onKeydown: 'keydown',
|
|
1423
1431
|
onKeyup: 'keyup',
|
|
1424
|
-
onPaste: 'paste',
|
|
1425
1432
|
onMouseenter: 'mouseenter',
|
|
1426
1433
|
onMouseleave: 'mouseleave',
|
|
1434
|
+
onPaste: 'paste',
|
|
1427
1435
|
});
|
|
1428
1436
|
|
|
1429
1437
|
export type TextSnippetProps = Bindable<TextSnippetCatalogProps> & ComponentDirectives;
|
|
@@ -1433,54 +1441,54 @@ export type TextSnippetProps = Bindable<TextSnippetCatalogProps> & ComponentDire
|
|
|
1433
1441
|
export const TextSnippet = createComponent<TextSnippetProps>('TextSnippet');
|
|
1434
1442
|
|
|
1435
1443
|
export type TextareaProps = Bindable<TextareaCatalogProps> & {
|
|
1436
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1437
1444
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1445
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1438
1446
|
onFocus?: ActionBinding | ActionBinding[];
|
|
1439
1447
|
} & ComponentDirectives;
|
|
1440
1448
|
/**
|
|
1441
1449
|
* A multi-line text input for entering longer free-form text such as comments, descriptions, or paragraphs. Use TextInput instead for short single-line entries.
|
|
1442
1450
|
*/
|
|
1443
1451
|
export const Textarea = createComponent<TextareaProps>('Textarea', {
|
|
1444
|
-
onChange: 'change',
|
|
1445
1452
|
onBlur: 'blur',
|
|
1453
|
+
onChange: 'change',
|
|
1446
1454
|
onFocus: 'focus',
|
|
1447
1455
|
});
|
|
1448
1456
|
|
|
1449
1457
|
export type TimeProps = Bindable<TimeCatalogProps> & {
|
|
1450
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1451
1458
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1459
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1452
1460
|
} & ComponentDirectives;
|
|
1453
1461
|
/**
|
|
1454
1462
|
* A form input for entering or selecting a specific time of day. Supports typed entry, optional dropdown time selection, timezone display, and locale-aware formatting.
|
|
1455
1463
|
*/
|
|
1456
1464
|
export const Time = createComponent<TimeProps>('Time', {
|
|
1457
|
-
onChange: 'change',
|
|
1458
1465
|
onBlur: 'blur',
|
|
1466
|
+
onChange: 'change',
|
|
1459
1467
|
});
|
|
1460
1468
|
|
|
1461
1469
|
export type TimeRangeProps = Bindable<TimeRangeCatalogProps> & {
|
|
1462
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1463
1470
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1471
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1464
1472
|
} & ComponentDirectives;
|
|
1465
1473
|
/**
|
|
1466
1474
|
* A time range input for selecting a start and end time pair, such as work schedules, shifts, or availability windows. Stores a [startTime, endTime] tuple of ISO 8601 strings. Supports timezone display and next-day span detection.
|
|
1467
1475
|
*/
|
|
1468
1476
|
export const TimeRange = createComponent<TimeRangeProps>('TimeRange', {
|
|
1469
|
-
onChange: 'change',
|
|
1470
1477
|
onBlur: 'blur',
|
|
1478
|
+
onChange: 'change',
|
|
1471
1479
|
});
|
|
1472
1480
|
|
|
1473
1481
|
export type TimezoneProps = Bindable<TimezoneCatalogProps> & {
|
|
1474
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1475
1482
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1483
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1476
1484
|
onFocus?: ActionBinding | ActionBinding[];
|
|
1477
1485
|
} & ComponentDirectives;
|
|
1478
1486
|
/**
|
|
1479
1487
|
* A specialized select component for choosing a timezone. Lists all IANA timezones with search filtering. Use this when the user needs to pick a standalone timezone; use Time with timezone instead when selecting a time together with a timezone.
|
|
1480
1488
|
*/
|
|
1481
1489
|
export const Timezone = createComponent<TimezoneProps>('Timezone', {
|
|
1482
|
-
onChange: 'change',
|
|
1483
1490
|
onBlur: 'blur',
|
|
1491
|
+
onChange: 'change',
|
|
1484
1492
|
onFocus: 'focus',
|
|
1485
1493
|
});
|
|
1486
1494
|
|
|
@@ -1538,186 +1546,27 @@ export type VideoProps = Bindable<VideoCatalogProps> & ComponentDirectives;
|
|
|
1538
1546
|
export const Video = createComponent<VideoProps>('Video');
|
|
1539
1547
|
|
|
1540
1548
|
export type WorkEmailProps = Bindable<WorkEmailCatalogProps> & {
|
|
1541
|
-
onChange?: ActionBinding | ActionBinding[];
|
|
1542
1549
|
onBlur?: ActionBinding | ActionBinding[];
|
|
1543
|
-
|
|
1550
|
+
onChange?: ActionBinding | ActionBinding[];
|
|
1544
1551
|
onClick?: ActionBinding | ActionBinding[];
|
|
1552
|
+
onFocus?: ActionBinding | ActionBinding[];
|
|
1545
1553
|
onKeydown?: ActionBinding | ActionBinding[];
|
|
1546
1554
|
onKeyup?: ActionBinding | ActionBinding[];
|
|
1547
|
-
onPaste?: ActionBinding | ActionBinding[];
|
|
1548
1555
|
onMouseenter?: ActionBinding | ActionBinding[];
|
|
1549
1556
|
onMouseleave?: ActionBinding | ActionBinding[];
|
|
1557
|
+
onPaste?: ActionBinding | ActionBinding[];
|
|
1550
1558
|
} & ComponentDirectives;
|
|
1551
1559
|
/**
|
|
1552
1560
|
* A specialized email input for entering work email addresses, featuring a domain suffix dropdown selector so users type only the username while choosing from a predefined list of company domains
|
|
1553
1561
|
*/
|
|
1554
1562
|
export const WorkEmail = createComponent<WorkEmailProps>('WorkEmail', {
|
|
1555
|
-
onChange: 'change',
|
|
1556
1563
|
onBlur: 'blur',
|
|
1557
|
-
|
|
1564
|
+
onChange: 'change',
|
|
1558
1565
|
onClick: 'click',
|
|
1566
|
+
onFocus: 'focus',
|
|
1559
1567
|
onKeydown: 'keydown',
|
|
1560
1568
|
onKeyup: 'keyup',
|
|
1561
|
-
onPaste: 'paste',
|
|
1562
1569
|
onMouseenter: 'mouseenter',
|
|
1563
1570
|
onMouseleave: 'mouseleave',
|
|
1571
|
+
onPaste: 'paste',
|
|
1564
1572
|
});
|
|
1565
|
-
|
|
1566
|
-
export type AnalyticsCardProps = Bindable<AnalyticsCardCatalogProps> & {
|
|
1567
|
-
onConfigure?: ActionBinding | ActionBinding[];
|
|
1568
|
-
} & ComponentDirectives & { children?: SpecNode | SpecNode[] };
|
|
1569
|
-
/**
|
|
1570
|
-
* Dashboard tile chrome with a fixed header (start: heading + sub-heading; end: optional configure button) and a children body. The header renders immediately when the spec lands so the chrome is visible while the body subtree resolves its run_query data through a WithSpinner. Use this instead of the legacy Card for every dashboard tile (KPI, visual chart, grid).
|
|
1571
|
-
*/
|
|
1572
|
-
export const AnalyticsCard = createComponent<AnalyticsCardProps>('AnalyticsCard', {
|
|
1573
|
-
onConfigure: 'configure',
|
|
1574
|
-
});
|
|
1575
|
-
|
|
1576
|
-
export type ResizableBoardProps = Bindable<ResizableBoardCatalogProps> &
|
|
1577
|
-
ComponentDirectives & { children?: SpecNode | SpecNode[] };
|
|
1578
|
-
/**
|
|
1579
|
-
* Resizable dashboard board for AI widget layouts. Wraps each child in a Pebble ResizableBoard block.
|
|
1580
|
-
*/
|
|
1581
|
-
export const ResizableBoard = createComponent<ResizableBoardProps>('ResizableBoard');
|
|
1582
|
-
|
|
1583
|
-
export type EChartProps = Bindable<EChartCatalogProps> & {
|
|
1584
|
-
onClick?: ActionBinding | ActionBinding[];
|
|
1585
|
-
onLegendChange?: ActionBinding | ActionBinding[];
|
|
1586
|
-
onDataZoomChange?: ActionBinding | ActionBinding[];
|
|
1587
|
-
} & ComponentDirectives;
|
|
1588
|
-
/**
|
|
1589
|
-
* Raw ECharts renderer for SDUI. Provide a JSON-safe ECharts option object. It fills its parent card by default and keeps a usable minimum height when no fixed parent height exists; optional height/width can override sizing.
|
|
1590
|
-
*/
|
|
1591
|
-
export const EChart = createComponent<EChartProps>('EChart', {
|
|
1592
|
-
onClick: 'click',
|
|
1593
|
-
onLegendChange: 'legendChange',
|
|
1594
|
-
onDataZoomChange: 'dataZoomChange',
|
|
1595
|
-
});
|
|
1596
|
-
|
|
1597
|
-
export type RichTextProps = Bindable<RichTextCatalogProps> & ComponentDirectives;
|
|
1598
|
-
/**
|
|
1599
|
-
* Read-only HTML content rendered with the shared RichTextEditor (non-editable). Generic SDUI building block for narrative or explanatory copy in any product layout.
|
|
1600
|
-
*/
|
|
1601
|
-
export const RichText = createComponent<RichTextProps>('RichText');
|
|
1602
|
-
|
|
1603
|
-
export type DashboardRichTextProps = Bindable<DashboardRichTextCatalogProps> & ComponentDirectives;
|
|
1604
|
-
/**
|
|
1605
|
-
* Deprecated alias for RichText. Same props; prefer type `RichText` in new specs.
|
|
1606
|
-
*/
|
|
1607
|
-
export const DashboardRichText = createComponent<DashboardRichTextProps>('DashboardRichText');
|
|
1608
|
-
|
|
1609
|
-
export type CustomObjectGridProps = Bindable<CustomObjectGridCatalogProps> & ComponentDirectives;
|
|
1610
|
-
/**
|
|
1611
|
-
* Auto-fetching grid for Rippling Custom Objects. Provide objectApiName and fieldApiNames to display records with auto-generated columns, pagination, sorting, and field-type formatting. Increment refreshKey to force a data refresh after mutations.
|
|
1612
|
-
*/
|
|
1613
|
-
export const CustomObjectGrid = createComponent<CustomObjectGridProps>('CustomObjectGrid');
|
|
1614
|
-
|
|
1615
|
-
export type ObjectListViewProps = Bindable<ObjectListViewCatalogProps> & ComponentDirectives;
|
|
1616
|
-
/**
|
|
1617
|
-
* Full-featured object list page with list view management. Supports multiple list views, view switching, inline editing, bulk actions, and record management. Use objectApiName to specify the object. Optionally set defaultListViewId to pre-select a specific list view.
|
|
1618
|
-
*/
|
|
1619
|
-
export const ObjectListView = createComponent<ObjectListViewProps>('ObjectListView');
|
|
1620
|
-
|
|
1621
|
-
export type BarChartProps = Bindable<BarChartCatalogProps> & {
|
|
1622
|
-
onBarClick?: ActionBinding | ActionBinding[];
|
|
1623
|
-
} & ComponentDirectives;
|
|
1624
|
-
/**
|
|
1625
|
-
* Vertical bar chart powered by ECharts. Provide series (name + data array) and optional categories for the x-axis. Use showStackedPercent for 100%-stacked bars, showBarLabel to render values on bars, and showLegend to display a series legend. Use $bindState on selected to capture the clicked bar.
|
|
1626
|
-
*/
|
|
1627
|
-
export const BarChart = createComponent<BarChartProps>('BarChart', {
|
|
1628
|
-
onBarClick: 'barClick',
|
|
1629
|
-
});
|
|
1630
|
-
|
|
1631
|
-
export type LineChartProps = Bindable<LineChartCatalogProps> & ComponentDirectives;
|
|
1632
|
-
/**
|
|
1633
|
-
* Line chart powered by ECharts. Provide series (name + data array) and optional categories for the x-axis. Use connectNulls to bridge null gaps, showAreaPercent for 100%-stacked area, and showLegend to display a series legend.
|
|
1634
|
-
*/
|
|
1635
|
-
export const LineChart = createComponent<LineChartProps>('LineChart');
|
|
1636
|
-
|
|
1637
|
-
export type HorizontalBarChartProps = Bindable<HorizontalBarChartCatalogProps> & ComponentDirectives;
|
|
1638
|
-
/**
|
|
1639
|
-
* Horizontal bar chart powered by ECharts. Same data shape as BarChart but renders bars horizontally. Categories appear on the y-axis and values on the x-axis.
|
|
1640
|
-
*/
|
|
1641
|
-
export const HorizontalBarChart = createComponent<HorizontalBarChartProps>('HorizontalBarChart');
|
|
1642
|
-
|
|
1643
|
-
export type CombinationChartProps = Bindable<CombinationChartCatalogProps> & ComponentDirectives;
|
|
1644
|
-
/**
|
|
1645
|
-
* Combination chart with bars and lines on dual Y-axes. Bars use the left Y-axis by default; lines can use the right Y-axis via yAxisIndex: 1.
|
|
1646
|
-
*/
|
|
1647
|
-
export const CombinationChart = createComponent<CombinationChartProps>('CombinationChart');
|
|
1648
|
-
|
|
1649
|
-
export type PieChartProps = Bindable<PieChartCatalogProps> & ComponentDirectives;
|
|
1650
|
-
/**
|
|
1651
|
-
* Pie / donut chart. Each series entry has a data array of {name, value} pairs. Use radius: ["50%", "70%"] for a donut hole.
|
|
1652
|
-
*/
|
|
1653
|
-
export const PieChart = createComponent<PieChartProps>('PieChart');
|
|
1654
|
-
|
|
1655
|
-
export type ScatterChartProps = Bindable<ScatterChartCatalogProps> & ComponentDirectives;
|
|
1656
|
-
/**
|
|
1657
|
-
* Scatter plot. Each series contains [x, y] data pairs plotted as individual points.
|
|
1658
|
-
*/
|
|
1659
|
-
export const ScatterChart = createComponent<ScatterChartProps>('ScatterChart');
|
|
1660
|
-
|
|
1661
|
-
export type FunnelChartProps = Bindable<FunnelChartCatalogProps> & ComponentDirectives;
|
|
1662
|
-
/**
|
|
1663
|
-
* Funnel chart for conversion or stage-based data. Data items are ordered by value (largest at top).
|
|
1664
|
-
*/
|
|
1665
|
-
export const FunnelChart = createComponent<FunnelChartProps>('FunnelChart');
|
|
1666
|
-
|
|
1667
|
-
export type GaugeChartProps = Bindable<GaugeChartCatalogProps> & ComponentDirectives;
|
|
1668
|
-
/**
|
|
1669
|
-
* Gauge (speedometer) chart. Displays a single numeric value against colored segments. Segments define the scale breakpoints and their colors.
|
|
1670
|
-
*/
|
|
1671
|
-
export const GaugeChart = createComponent<GaugeChartProps>('GaugeChart');
|
|
1672
|
-
|
|
1673
|
-
export type SunburstChartProps = Bindable<SunburstChartCatalogProps> & ComponentDirectives;
|
|
1674
|
-
/**
|
|
1675
|
-
* Sunburst (multi-level pie) chart for hierarchical data. Each node has a name, optional value, and optional children array.
|
|
1676
|
-
*/
|
|
1677
|
-
export const SunburstChart = createComponent<SunburstChartProps>('SunburstChart');
|
|
1678
|
-
|
|
1679
|
-
export type WithSpinnerProps = Bindable<WithSpinnerCatalogProps> & {
|
|
1680
|
-
onLoad?: ActionBinding | ActionBinding[];
|
|
1681
|
-
} & ComponentDirectives & { children?: SpecNode | SpecNode[] };
|
|
1682
|
-
/**
|
|
1683
|
-
* Wrapper that shows a spinner while loading. Emits `load` once on mount so a handler can start fetching data. Renders children only when `isLoading` is false.
|
|
1684
|
-
*/
|
|
1685
|
-
export const WithSpinner = createComponent<WithSpinnerProps>('WithSpinner', {
|
|
1686
|
-
onLoad: 'load',
|
|
1687
|
-
});
|
|
1688
|
-
|
|
1689
|
-
export type RadarChartProps = Bindable<RadarChartCatalogProps> & ComponentDirectives;
|
|
1690
|
-
/**
|
|
1691
|
-
* Radar (spider) chart for comparing multiple variables across categories. Each indicator defines a spoke axis. Provide radarIndicators (axis definitions) and radarOptions (series data).
|
|
1692
|
-
*/
|
|
1693
|
-
export const RadarChart = createComponent<RadarChartProps>('RadarChart');
|
|
1694
|
-
|
|
1695
|
-
export type RadarFilledChartProps = Bindable<RadarFilledChartCatalogProps> & ComponentDirectives;
|
|
1696
|
-
/**
|
|
1697
|
-
* Radar chart with filled area between data points and the center. Same data shape as RadarChart but renders with semi-transparent area fill for each series.
|
|
1698
|
-
*/
|
|
1699
|
-
export const RadarFilledChart = createComponent<RadarFilledChartProps>('RadarFilledChart');
|
|
1700
|
-
|
|
1701
|
-
export type HeatmapCalendarChartProps = Bindable<HeatmapCalendarChartCatalogProps> & ComponentDirectives;
|
|
1702
|
-
/**
|
|
1703
|
-
* Calendar heatmap chart that renders data points on a calendar grid. Each cell represents a day, colored by value intensity. Provide heatmapOptions with [date, value] data and calendarOptions with a date range.
|
|
1704
|
-
*/
|
|
1705
|
-
export const HeatmapCalendarChart = createComponent<HeatmapCalendarChartProps>('HeatmapCalendarChart');
|
|
1706
|
-
|
|
1707
|
-
export type HeatmapChartProps = Bindable<HeatmapChartCatalogProps> & ComponentDirectives;
|
|
1708
|
-
/**
|
|
1709
|
-
* Grid-based heatmap chart for showing magnitude across two dimensions. Data format: [[xIndex, yIndex, value], …]. Provide category labels for both axes.
|
|
1710
|
-
*/
|
|
1711
|
-
export const HeatmapChart = createComponent<HeatmapChartProps>('HeatmapChart');
|
|
1712
|
-
|
|
1713
|
-
export type TreemapChartProps = Bindable<TreemapChartCatalogProps> & ComponentDirectives;
|
|
1714
|
-
/**
|
|
1715
|
-
* Treemap chart for visualizing hierarchical data as nested rectangles. Each node has a name and either a numeric value (leaf) or children (branch). Rectangle size represents the value.
|
|
1716
|
-
*/
|
|
1717
|
-
export const TreemapChart = createComponent<TreemapChartProps>('TreemapChart');
|
|
1718
|
-
|
|
1719
|
-
export type SqlHighlightProps = Bindable<SqlHighlightCatalogProps> & ComponentDirectives;
|
|
1720
|
-
/**
|
|
1721
|
-
* Read-only SQL syntax highlighter powered by Monaco Editor. Renders a formatted, non-editable SQL block with auto-height based on line count and a max height cap.
|
|
1722
|
-
*/
|
|
1723
|
-
export const SqlHighlight = createComponent<SqlHighlightProps>('SqlHighlight');
|