@genesislcap/foundation-ui 14.454.1 → 14.454.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/custom-elements.json +656 -636
  2. package/dist/dts/data-grid-datasource/data-grid-datasource.d.ts +6 -0
  3. package/dist/dts/data-grid-datasource/data-grid-datasource.d.ts.map +1 -1
  4. package/dist/dts/expression-builder/expression-builder.d.ts +2 -0
  5. package/dist/dts/expression-builder/expression-builder.d.ts.map +1 -1
  6. package/dist/dts/expression-builder/rule-expression-builder.d.ts +2 -0
  7. package/dist/dts/expression-builder/rule-expression-builder.d.ts.map +1 -1
  8. package/dist/dts/expression-builder/value-expression-builder.d.ts +2 -0
  9. package/dist/dts/expression-builder/value-expression-builder.d.ts.map +1 -1
  10. package/dist/dts/options-datasource/multiselect-datasource.d.ts +6 -0
  11. package/dist/dts/options-datasource/multiselect-datasource.d.ts.map +1 -1
  12. package/dist/dts/options-datasource/options-datasource.d.ts +2 -0
  13. package/dist/dts/options-datasource/options-datasource.d.ts.map +1 -1
  14. package/dist/dts/react.d.ts +131 -9
  15. package/dist/dts/router/foundation-router.d.ts +3 -0
  16. package/dist/dts/router/foundation-router.d.ts.map +1 -1
  17. package/dist/dts/scheduler-cron-builder/daily-recurrence/daily-recurrence.d.ts +2 -0
  18. package/dist/dts/scheduler-cron-builder/daily-recurrence/daily-recurrence.d.ts.map +1 -1
  19. package/dist/dts/scheduler-cron-builder/monthly-yearly-recurrence/monthly-yearly-recurrence.d.ts +2 -0
  20. package/dist/dts/scheduler-cron-builder/monthly-yearly-recurrence/monthly-yearly-recurrence.d.ts.map +1 -1
  21. package/dist/dts/scheduler-cron-builder/weekly-recurrence/weekly-recurrence.d.ts +2 -0
  22. package/dist/dts/scheduler-cron-builder/weekly-recurrence/weekly-recurrence.d.ts.map +1 -1
  23. package/dist/esm/data-grid-datasource/data-grid-datasource.js +6 -0
  24. package/dist/esm/expression-builder/expression-builder.js +2 -0
  25. package/dist/esm/expression-builder/rule-expression-builder.js +2 -0
  26. package/dist/esm/expression-builder/value-expression-builder.js +2 -0
  27. package/dist/esm/options-datasource/multiselect-datasource.js +6 -0
  28. package/dist/esm/options-datasource/options-datasource.js +2 -0
  29. package/dist/esm/router/foundation-router.js +3 -0
  30. package/dist/esm/scheduler-cron-builder/daily-recurrence/daily-recurrence.js +2 -0
  31. package/dist/esm/scheduler-cron-builder/monthly-yearly-recurrence/monthly-yearly-recurrence.js +2 -0
  32. package/dist/esm/scheduler-cron-builder/weekly-recurrence/weekly-recurrence.js +2 -0
  33. package/dist/react.cjs +235 -6
  34. package/dist/react.mjs +224 -5
  35. package/package.json +19 -19
package/dist/react.cjs CHANGED
@@ -26,6 +26,7 @@ const { Checkbox: CheckboxWC } = require('./esm/checkbox/checkbox.js');
26
26
  const { Combobox: ComboboxWC } = require('./esm/combobox/combobox.js');
27
27
  const { ConnectionIndicator: ConnectionIndicatorWC } = require('./esm/connection-indicator/connection-indicator.js');
28
28
  const { DataGridCell: DataGridCellWC } = require('./esm/data-grid-cell/data-grid.cell.js');
29
+ const { DataGridDatasource: DataGridDatasourceWC } = require('./esm/data-grid-datasource/data-grid-datasource.js');
29
30
  const { DataGridRow: DataGridRowWC } = require('./esm/data-grid-row/data-grid.row.js');
30
31
  const { DataGrid: DataGridWC } = require('./esm/data-grid/data-grid.js');
31
32
  const { DatePicker: DatePickerWC } = require('./esm/date-picker/date-picker.js');
@@ -38,6 +39,9 @@ const { EnvironmentIndicator: EnvironmentIndicatorWC } = require('./esm/environm
38
39
  const { ErrorBanner: ErrorBannerWC } = require('./esm/error-banner/error-banner.js');
39
40
  const { ErrorBoundary: ErrorBoundaryWC } = require('./esm/error-boundary/error-boundary.js');
40
41
  const { ErrorDialog: ErrorDialogWC } = require('./esm/error-dialog/error-dialog.js');
42
+ const { FoundationExpressionBuilder: FoundationExpressionBuilderWC } = require('./esm/expression-builder/expression-builder.js');
43
+ const { FoundationRuleExpressionBuilder: FoundationRuleExpressionBuilderWC } = require('./esm/expression-builder/rule-expression-builder.js');
44
+ const { FoundationValueExpressionBuilder: FoundationValueExpressionBuilderWC } = require('./esm/expression-builder/value-expression-builder.js');
41
45
  const { FileReader: FileReaderWC } = require('./esm/file-reader/file-reader.js');
42
46
  const { FileUpload: FileUploadWC } = require('./esm/file-upload/file-upload.js');
43
47
  const { FilterBar: FilterBarWC } = require('./esm/filter-bar/filter-bar.js');
@@ -58,12 +62,18 @@ const { Multiselect: MultiselectWC } = require('./esm/multiselect/multiselect.js
58
62
  const { NotificationListener: NotificationListenerWC } = require('./esm/notification-listener/notification-listener.js');
59
63
  const { NumberField: NumberFieldWC } = require('./esm/number-field/number-field.js');
60
64
  const { Optgroup: OptgroupWC } = require('./esm/optgroup/optgroup.js');
65
+ const { MultiselectDatasource: MultiselectDatasourceWC } = require('./esm/options-datasource/multiselect-datasource.js');
66
+ const { OptionsDatasource: OptionsDatasourceWC } = require('./esm/options-datasource/options-datasource.js');
61
67
  const { Popper: PopperWC } = require('./esm/popper/popper.js');
62
68
  const { ProgressRing: ProgressRingWC } = require('./esm/progress-ring/progress-ring.js');
63
69
  const { Progress: ProgressWC } = require('./esm/progress/progress.js');
64
70
  const { RadioGroup: RadioGroupWC } = require('./esm/radio-group/radio-group.js');
65
71
  const { Radio: RadioWC } = require('./esm/radio/radio.js');
72
+ const { FoundationRouter: FoundationRouterWC } = require('./esm/router/foundation-router.js');
73
+ const { DailyRecurrence: DailyRecurrenceWC } = require('./esm/scheduler-cron-builder/daily-recurrence/daily-recurrence.js');
74
+ const { MonthlyYearlyRecurrence: MonthlyYearlyRecurrenceWC } = require('./esm/scheduler-cron-builder/monthly-yearly-recurrence/monthly-yearly-recurrence.js');
66
75
  const { SchedulerCronBuilder: SchedulerCronBuilderWC } = require('./esm/scheduler-cron-builder/scheduler-cron-builder.js');
76
+ const { WeeklyRecurrence: WeeklyRecurrenceWC } = require('./esm/scheduler-cron-builder/weekly-recurrence/weekly-recurrence.js');
67
77
  const { SchedulerTimezone: SchedulerTimezoneWC } = require('./esm/scheduler-timezone/scheduler-timezone.js');
68
78
  const { Scheduler: SchedulerWC } = require('./esm/scheduler/scheduler.js');
69
79
  const { SearchBar: SearchBarWC } = require('./esm/search-bar/search-bar.js');
@@ -101,6 +111,11 @@ function _mergeRefs(...refs) {
101
111
  };
102
112
  }
103
113
 
114
+ const Accordion = React.forwardRef(function Accordion(props, ref) {
115
+ const { children, ...rest } = props;
116
+ return React.createElement(customElements.getName(AccordionWC) ?? '%%prefix%%-accordion', { ...rest, ref }, children);
117
+ });
118
+
104
119
  const AccordionItem = React.forwardRef(function AccordionItem(props, ref) {
105
120
  const { children, ...rest } = props;
106
121
  return React.createElement(customElements.getName(AccordionItemWC) ?? '%%prefix%%-accordion-item', { ...rest, ref }, children);
@@ -138,11 +153,6 @@ const AiIndicator = React.forwardRef(function AiIndicator(props, ref) {
138
153
  return React.createElement(customElements.getName(AiIndicatorWC) ?? '%%prefix%%-ai-indicator', { ...rest, ref }, children);
139
154
  });
140
155
 
141
- const Accordion = React.forwardRef(function Accordion(props, ref) {
142
- const { children, ...rest } = props;
143
- return React.createElement(customElements.getName(AccordionWC) ?? '%%prefix%%-accordion', { ...rest, ref }, children);
144
- });
145
-
146
156
  const Anchor = React.forwardRef(function Anchor(props, ref) {
147
157
  const { children, ...rest } = props;
148
158
  return React.createElement(customElements.getName(AnchorWC) ?? '%%prefix%%-anchor', { ...rest, ref }, children);
@@ -276,6 +286,11 @@ const DataGridCell = React.forwardRef(function DataGridCell(props, ref) {
276
286
  return React.createElement(customElements.getName(DataGridCellWC) ?? '%%prefix%%-data-grid-cell', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
277
287
  });
278
288
 
289
+ const DataGridDatasource = React.forwardRef(function DataGridDatasource(props, ref) {
290
+ const { children, ...rest } = props;
291
+ return React.createElement(customElements.getName(DataGridDatasourceWC) ?? 'data-grid-datasource', { ...rest, ref }, children);
292
+ });
293
+
279
294
  const DataGridRow = React.forwardRef(function DataGridRow(props, ref) {
280
295
  const { onRowFocused, children, ...rest } = props;
281
296
  const _innerRef = React.useRef(null);
@@ -367,6 +382,132 @@ const ErrorDialog = React.forwardRef(function ErrorDialog(props, ref) {
367
382
  return React.createElement(customElements.getName(ErrorDialogWC) ?? '%%prefix%%-error-dialog', { ...rest, ref }, children);
368
383
  });
369
384
 
385
+ const FoundationExpressionBuilder = React.forwardRef(function FoundationExpressionBuilder(props, ref) {
386
+ const { onAddGroup, onDelGroup, onAddRule, onDelRule, onUpdateGroup, onUpdateRule, children, ...rest } = props;
387
+ const _innerRef = React.useRef(null);
388
+ const _onAddGroupRef = React.useRef(onAddGroup);
389
+ _onAddGroupRef.current = onAddGroup;
390
+ const _onDelGroupRef = React.useRef(onDelGroup);
391
+ _onDelGroupRef.current = onDelGroup;
392
+ const _onAddRuleRef = React.useRef(onAddRule);
393
+ _onAddRuleRef.current = onAddRule;
394
+ const _onDelRuleRef = React.useRef(onDelRule);
395
+ _onDelRuleRef.current = onDelRule;
396
+ const _onUpdateGroupRef = React.useRef(onUpdateGroup);
397
+ _onUpdateGroupRef.current = onUpdateGroup;
398
+ const _onUpdateRuleRef = React.useRef(onUpdateRule);
399
+ _onUpdateRuleRef.current = onUpdateRule;
400
+ React.useLayoutEffect(() => {
401
+ const el = _innerRef.current;
402
+ if (!el) return;
403
+ const _onAddGroupFn = (e) => _onAddGroupRef.current?.(e);
404
+ el.addEventListener('add-group', _onAddGroupFn);
405
+ const _onDelGroupFn = (e) => _onDelGroupRef.current?.(e);
406
+ el.addEventListener('del-group', _onDelGroupFn);
407
+ const _onAddRuleFn = (e) => _onAddRuleRef.current?.(e);
408
+ el.addEventListener('add-rule', _onAddRuleFn);
409
+ const _onDelRuleFn = (e) => _onDelRuleRef.current?.(e);
410
+ el.addEventListener('del-rule', _onDelRuleFn);
411
+ const _onUpdateGroupFn = (e) => _onUpdateGroupRef.current?.(e);
412
+ el.addEventListener('update-group', _onUpdateGroupFn);
413
+ const _onUpdateRuleFn = (e) => _onUpdateRuleRef.current?.(e);
414
+ el.addEventListener('update-rule', _onUpdateRuleFn);
415
+ return () => {
416
+ el.removeEventListener('add-group', _onAddGroupFn);
417
+ el.removeEventListener('del-group', _onDelGroupFn);
418
+ el.removeEventListener('add-rule', _onAddRuleFn);
419
+ el.removeEventListener('del-rule', _onDelRuleFn);
420
+ el.removeEventListener('update-group', _onUpdateGroupFn);
421
+ el.removeEventListener('update-rule', _onUpdateRuleFn);
422
+ };
423
+ }, []);
424
+ return React.createElement(customElements.getName(FoundationExpressionBuilderWC) ?? 'foundation-expression-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
425
+ });
426
+
427
+ const FoundationRuleExpressionBuilder = React.forwardRef(function FoundationRuleExpressionBuilder(props, ref) {
428
+ const { onAddGroup, onDelGroup, onAddRule, onDelRule, onUpdateGroup, onUpdateRule, children, ...rest } = props;
429
+ const _innerRef = React.useRef(null);
430
+ const _onAddGroupRef = React.useRef(onAddGroup);
431
+ _onAddGroupRef.current = onAddGroup;
432
+ const _onDelGroupRef = React.useRef(onDelGroup);
433
+ _onDelGroupRef.current = onDelGroup;
434
+ const _onAddRuleRef = React.useRef(onAddRule);
435
+ _onAddRuleRef.current = onAddRule;
436
+ const _onDelRuleRef = React.useRef(onDelRule);
437
+ _onDelRuleRef.current = onDelRule;
438
+ const _onUpdateGroupRef = React.useRef(onUpdateGroup);
439
+ _onUpdateGroupRef.current = onUpdateGroup;
440
+ const _onUpdateRuleRef = React.useRef(onUpdateRule);
441
+ _onUpdateRuleRef.current = onUpdateRule;
442
+ React.useLayoutEffect(() => {
443
+ const el = _innerRef.current;
444
+ if (!el) return;
445
+ const _onAddGroupFn = (e) => _onAddGroupRef.current?.(e);
446
+ el.addEventListener('add-group', _onAddGroupFn);
447
+ const _onDelGroupFn = (e) => _onDelGroupRef.current?.(e);
448
+ el.addEventListener('del-group', _onDelGroupFn);
449
+ const _onAddRuleFn = (e) => _onAddRuleRef.current?.(e);
450
+ el.addEventListener('add-rule', _onAddRuleFn);
451
+ const _onDelRuleFn = (e) => _onDelRuleRef.current?.(e);
452
+ el.addEventListener('del-rule', _onDelRuleFn);
453
+ const _onUpdateGroupFn = (e) => _onUpdateGroupRef.current?.(e);
454
+ el.addEventListener('update-group', _onUpdateGroupFn);
455
+ const _onUpdateRuleFn = (e) => _onUpdateRuleRef.current?.(e);
456
+ el.addEventListener('update-rule', _onUpdateRuleFn);
457
+ return () => {
458
+ el.removeEventListener('add-group', _onAddGroupFn);
459
+ el.removeEventListener('del-group', _onDelGroupFn);
460
+ el.removeEventListener('add-rule', _onAddRuleFn);
461
+ el.removeEventListener('del-rule', _onDelRuleFn);
462
+ el.removeEventListener('update-group', _onUpdateGroupFn);
463
+ el.removeEventListener('update-rule', _onUpdateRuleFn);
464
+ };
465
+ }, []);
466
+ return React.createElement(customElements.getName(FoundationRuleExpressionBuilderWC) ?? 'foundation-rule-expression-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
467
+ });
468
+
469
+ const FoundationValueExpressionBuilder = React.forwardRef(function FoundationValueExpressionBuilder(props, ref) {
470
+ const { onAddGroup, onDelGroup, onAddRule, onDelRule, onUpdateGroup, onUpdateRule, children, ...rest } = props;
471
+ const _innerRef = React.useRef(null);
472
+ const _onAddGroupRef = React.useRef(onAddGroup);
473
+ _onAddGroupRef.current = onAddGroup;
474
+ const _onDelGroupRef = React.useRef(onDelGroup);
475
+ _onDelGroupRef.current = onDelGroup;
476
+ const _onAddRuleRef = React.useRef(onAddRule);
477
+ _onAddRuleRef.current = onAddRule;
478
+ const _onDelRuleRef = React.useRef(onDelRule);
479
+ _onDelRuleRef.current = onDelRule;
480
+ const _onUpdateGroupRef = React.useRef(onUpdateGroup);
481
+ _onUpdateGroupRef.current = onUpdateGroup;
482
+ const _onUpdateRuleRef = React.useRef(onUpdateRule);
483
+ _onUpdateRuleRef.current = onUpdateRule;
484
+ React.useLayoutEffect(() => {
485
+ const el = _innerRef.current;
486
+ if (!el) return;
487
+ const _onAddGroupFn = (e) => _onAddGroupRef.current?.(e);
488
+ el.addEventListener('add-group', _onAddGroupFn);
489
+ const _onDelGroupFn = (e) => _onDelGroupRef.current?.(e);
490
+ el.addEventListener('del-group', _onDelGroupFn);
491
+ const _onAddRuleFn = (e) => _onAddRuleRef.current?.(e);
492
+ el.addEventListener('add-rule', _onAddRuleFn);
493
+ const _onDelRuleFn = (e) => _onDelRuleRef.current?.(e);
494
+ el.addEventListener('del-rule', _onDelRuleFn);
495
+ const _onUpdateGroupFn = (e) => _onUpdateGroupRef.current?.(e);
496
+ el.addEventListener('update-group', _onUpdateGroupFn);
497
+ const _onUpdateRuleFn = (e) => _onUpdateRuleRef.current?.(e);
498
+ el.addEventListener('update-rule', _onUpdateRuleFn);
499
+ return () => {
500
+ el.removeEventListener('add-group', _onAddGroupFn);
501
+ el.removeEventListener('del-group', _onDelGroupFn);
502
+ el.removeEventListener('add-rule', _onAddRuleFn);
503
+ el.removeEventListener('del-rule', _onDelRuleFn);
504
+ el.removeEventListener('update-group', _onUpdateGroupFn);
505
+ el.removeEventListener('update-rule', _onUpdateRuleFn);
506
+ };
507
+ }, []);
508
+ return React.createElement(customElements.getName(FoundationValueExpressionBuilderWC) ?? 'foundation-value-expression-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
509
+ });
510
+
370
511
  const FileReader = React.forwardRef(function FileReader(props, ref) {
371
512
  const { onFileRead, onClear, children, ...rest } = props;
372
513
  const _innerRef = React.useRef(null);
@@ -591,6 +732,28 @@ const Optgroup = React.forwardRef(function Optgroup(props, ref) {
591
732
  return React.createElement(customElements.getName(OptgroupWC) ?? '%%prefix%%-optgroup', { ...rest, ref }, children);
592
733
  });
593
734
 
735
+ const MultiselectDatasource = React.forwardRef(function MultiselectDatasource(props, ref) {
736
+ const { children, ...rest } = props;
737
+ return React.createElement(customElements.getName(MultiselectDatasourceWC) ?? 'multiselect-datasource', { ...rest, ref }, children);
738
+ });
739
+
740
+ const OptionsDatasource = React.forwardRef(function OptionsDatasource(props, ref) {
741
+ const { onValueChange, children, ...rest } = props;
742
+ const _innerRef = React.useRef(null);
743
+ const _onValueChangeRef = React.useRef(onValueChange);
744
+ _onValueChangeRef.current = onValueChange;
745
+ React.useLayoutEffect(() => {
746
+ const el = _innerRef.current;
747
+ if (!el) return;
748
+ const _onValueChangeFn = (e) => _onValueChangeRef.current?.(e);
749
+ el.addEventListener('value-change', _onValueChangeFn);
750
+ return () => {
751
+ el.removeEventListener('value-change', _onValueChangeFn);
752
+ };
753
+ }, []);
754
+ return React.createElement(customElements.getName(OptionsDatasourceWC) ?? 'options-datasource', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
755
+ });
756
+
594
757
  const Popper = React.forwardRef(function Popper(props, ref) {
595
758
  const { children, ...rest } = props;
596
759
  return React.createElement(customElements.getName(PopperWC) ?? '%%prefix%%-popper', { ...rest, ref }, children);
@@ -616,6 +779,11 @@ const RadioGroup = React.forwardRef(function RadioGroup(props, ref) {
616
779
  return React.createElement(customElements.getName(RadioGroupWC) ?? '%%prefix%%-radio-group', { ...rest, ref }, children);
617
780
  });
618
781
 
782
+ const FoundationRouter = React.forwardRef(function FoundationRouter(props, ref) {
783
+ const { children, ...rest } = props;
784
+ return React.createElement(customElements.getName(FoundationRouterWC) ?? 'foundation-router', { ...rest, ref }, children);
785
+ });
786
+
619
787
  const Scheduler = React.forwardRef(function Scheduler(props, ref) {
620
788
  const { children, ...rest } = props;
621
789
  return React.createElement(customElements.getName(SchedulerWC) ?? '%%prefix%%-scheduler', { ...rest, ref }, children);
@@ -858,12 +1026,63 @@ const UrlInput = React.forwardRef(function UrlInput(props, ref) {
858
1026
  return React.createElement(customElements.getName(UrlInputWC) ?? '%%prefix%%-url-input', { ...rest, ref }, children);
859
1027
  });
860
1028
 
1029
+ const DailyRecurrence = React.forwardRef(function DailyRecurrence(props, ref) {
1030
+ const { onUpdateCronConfig, children, ...rest } = props;
1031
+ const _innerRef = React.useRef(null);
1032
+ const _onUpdateCronConfigRef = React.useRef(onUpdateCronConfig);
1033
+ _onUpdateCronConfigRef.current = onUpdateCronConfig;
1034
+ React.useLayoutEffect(() => {
1035
+ const el = _innerRef.current;
1036
+ if (!el) return;
1037
+ const _onUpdateCronConfigFn = (e) => _onUpdateCronConfigRef.current?.(e);
1038
+ el.addEventListener('update-cron-config', _onUpdateCronConfigFn);
1039
+ return () => {
1040
+ el.removeEventListener('update-cron-config', _onUpdateCronConfigFn);
1041
+ };
1042
+ }, []);
1043
+ return React.createElement(customElements.getName(DailyRecurrenceWC) ?? 'daily-recurrence', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
1044
+ });
1045
+
1046
+ const MonthlyYearlyRecurrence = React.forwardRef(function MonthlyYearlyRecurrence(props, ref) {
1047
+ const { onUpdateCronConfig, children, ...rest } = props;
1048
+ const _innerRef = React.useRef(null);
1049
+ const _onUpdateCronConfigRef = React.useRef(onUpdateCronConfig);
1050
+ _onUpdateCronConfigRef.current = onUpdateCronConfig;
1051
+ React.useLayoutEffect(() => {
1052
+ const el = _innerRef.current;
1053
+ if (!el) return;
1054
+ const _onUpdateCronConfigFn = (e) => _onUpdateCronConfigRef.current?.(e);
1055
+ el.addEventListener('update-cron-config', _onUpdateCronConfigFn);
1056
+ return () => {
1057
+ el.removeEventListener('update-cron-config', _onUpdateCronConfigFn);
1058
+ };
1059
+ }, []);
1060
+ return React.createElement(customElements.getName(MonthlyYearlyRecurrenceWC) ?? 'monthly-yearly-recurrence', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
1061
+ });
1062
+
1063
+ const WeeklyRecurrence = React.forwardRef(function WeeklyRecurrence(props, ref) {
1064
+ const { onUpdateCronConfig, children, ...rest } = props;
1065
+ const _innerRef = React.useRef(null);
1066
+ const _onUpdateCronConfigRef = React.useRef(onUpdateCronConfig);
1067
+ _onUpdateCronConfigRef.current = onUpdateCronConfig;
1068
+ React.useLayoutEffect(() => {
1069
+ const el = _innerRef.current;
1070
+ if (!el) return;
1071
+ const _onUpdateCronConfigFn = (e) => _onUpdateCronConfigRef.current?.(e);
1072
+ el.addEventListener('update-cron-config', _onUpdateCronConfigFn);
1073
+ return () => {
1074
+ el.removeEventListener('update-cron-config', _onUpdateCronConfigFn);
1075
+ };
1076
+ }, []);
1077
+ return React.createElement(customElements.getName(WeeklyRecurrenceWC) ?? 'weekly-recurrence', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
1078
+ });
1079
+
861
1080
  module.exports = {
1081
+ Accordion,
862
1082
  AccordionItem,
863
1083
  ActionsMenu,
864
1084
  AiCriteriaSearch,
865
1085
  AiIndicator,
866
- Accordion,
867
1086
  Anchor,
868
1087
  AnchoredRegion,
869
1088
  Avatar,
@@ -880,6 +1099,7 @@ module.exports = {
880
1099
  ConnectionIndicator,
881
1100
  DataGrid,
882
1101
  DataGridCell,
1102
+ DataGridDatasource,
883
1103
  DataGridRow,
884
1104
  DatePicker,
885
1105
  FoundationDesignSystemProvider,
@@ -891,6 +1111,9 @@ module.exports = {
891
1111
  ErrorBanner,
892
1112
  ErrorBoundary,
893
1113
  ErrorDialog,
1114
+ FoundationExpressionBuilder,
1115
+ FoundationRuleExpressionBuilder,
1116
+ FoundationValueExpressionBuilder,
894
1117
  FileReader,
895
1118
  FileUpload,
896
1119
  Filter,
@@ -911,11 +1134,14 @@ module.exports = {
911
1134
  NotificationListener,
912
1135
  NumberField,
913
1136
  Optgroup,
1137
+ MultiselectDatasource,
1138
+ OptionsDatasource,
914
1139
  Popper,
915
1140
  Progress,
916
1141
  ProgressRing,
917
1142
  Radio,
918
1143
  RadioGroup,
1144
+ FoundationRouter,
919
1145
  Scheduler,
920
1146
  SchedulerCronBuilder,
921
1147
  SchedulerTimezone,
@@ -944,4 +1170,7 @@ module.exports = {
944
1170
  Tooltip,
945
1171
  TreeView,
946
1172
  UrlInput,
1173
+ DailyRecurrence,
1174
+ MonthlyYearlyRecurrence,
1175
+ WeeklyRecurrence,
947
1176
  };
package/dist/react.mjs CHANGED
@@ -24,6 +24,7 @@ import { Checkbox as CheckboxWC } from './esm/checkbox/checkbox.js';
24
24
  import { Combobox as ComboboxWC } from './esm/combobox/combobox.js';
25
25
  import { ConnectionIndicator as ConnectionIndicatorWC } from './esm/connection-indicator/connection-indicator.js';
26
26
  import { DataGridCell as DataGridCellWC } from './esm/data-grid-cell/data-grid.cell.js';
27
+ import { DataGridDatasource as DataGridDatasourceWC } from './esm/data-grid-datasource/data-grid-datasource.js';
27
28
  import { DataGridRow as DataGridRowWC } from './esm/data-grid-row/data-grid.row.js';
28
29
  import { DataGrid as DataGridWC } from './esm/data-grid/data-grid.js';
29
30
  import { DatePicker as DatePickerWC } from './esm/date-picker/date-picker.js';
@@ -36,6 +37,9 @@ import { EnvironmentIndicator as EnvironmentIndicatorWC } from './esm/environmen
36
37
  import { ErrorBanner as ErrorBannerWC } from './esm/error-banner/error-banner.js';
37
38
  import { ErrorBoundary as ErrorBoundaryWC } from './esm/error-boundary/error-boundary.js';
38
39
  import { ErrorDialog as ErrorDialogWC } from './esm/error-dialog/error-dialog.js';
40
+ import { FoundationExpressionBuilder as FoundationExpressionBuilderWC } from './esm/expression-builder/expression-builder.js';
41
+ import { FoundationRuleExpressionBuilder as FoundationRuleExpressionBuilderWC } from './esm/expression-builder/rule-expression-builder.js';
42
+ import { FoundationValueExpressionBuilder as FoundationValueExpressionBuilderWC } from './esm/expression-builder/value-expression-builder.js';
39
43
  import { FileReader as FileReaderWC } from './esm/file-reader/file-reader.js';
40
44
  import { FileUpload as FileUploadWC } from './esm/file-upload/file-upload.js';
41
45
  import { FilterBar as FilterBarWC } from './esm/filter-bar/filter-bar.js';
@@ -56,12 +60,18 @@ import { Multiselect as MultiselectWC } from './esm/multiselect/multiselect.js';
56
60
  import { NotificationListener as NotificationListenerWC } from './esm/notification-listener/notification-listener.js';
57
61
  import { NumberField as NumberFieldWC } from './esm/number-field/number-field.js';
58
62
  import { Optgroup as OptgroupWC } from './esm/optgroup/optgroup.js';
63
+ import { MultiselectDatasource as MultiselectDatasourceWC } from './esm/options-datasource/multiselect-datasource.js';
64
+ import { OptionsDatasource as OptionsDatasourceWC } from './esm/options-datasource/options-datasource.js';
59
65
  import { Popper as PopperWC } from './esm/popper/popper.js';
60
66
  import { ProgressRing as ProgressRingWC } from './esm/progress-ring/progress-ring.js';
61
67
  import { Progress as ProgressWC } from './esm/progress/progress.js';
62
68
  import { RadioGroup as RadioGroupWC } from './esm/radio-group/radio-group.js';
63
69
  import { Radio as RadioWC } from './esm/radio/radio.js';
70
+ import { FoundationRouter as FoundationRouterWC } from './esm/router/foundation-router.js';
71
+ import { DailyRecurrence as DailyRecurrenceWC } from './esm/scheduler-cron-builder/daily-recurrence/daily-recurrence.js';
72
+ import { MonthlyYearlyRecurrence as MonthlyYearlyRecurrenceWC } from './esm/scheduler-cron-builder/monthly-yearly-recurrence/monthly-yearly-recurrence.js';
64
73
  import { SchedulerCronBuilder as SchedulerCronBuilderWC } from './esm/scheduler-cron-builder/scheduler-cron-builder.js';
74
+ import { WeeklyRecurrence as WeeklyRecurrenceWC } from './esm/scheduler-cron-builder/weekly-recurrence/weekly-recurrence.js';
65
75
  import { SchedulerTimezone as SchedulerTimezoneWC } from './esm/scheduler-timezone/scheduler-timezone.js';
66
76
  import { Scheduler as SchedulerWC } from './esm/scheduler/scheduler.js';
67
77
  import { SearchBar as SearchBarWC } from './esm/search-bar/search-bar.js';
@@ -99,6 +109,11 @@ function _mergeRefs(...refs) {
99
109
  };
100
110
  }
101
111
 
112
+ export const Accordion = React.forwardRef(function Accordion(props, ref) {
113
+ const { children, ...rest } = props;
114
+ return React.createElement(customElements.getName(AccordionWC) ?? '%%prefix%%-accordion', { ...rest, ref }, children);
115
+ });
116
+
102
117
  export const AccordionItem = React.forwardRef(function AccordionItem(props, ref) {
103
118
  const { children, ...rest } = props;
104
119
  return React.createElement(customElements.getName(AccordionItemWC) ?? '%%prefix%%-accordion-item', { ...rest, ref }, children);
@@ -136,11 +151,6 @@ export const AiIndicator = React.forwardRef(function AiIndicator(props, ref) {
136
151
  return React.createElement(customElements.getName(AiIndicatorWC) ?? '%%prefix%%-ai-indicator', { ...rest, ref }, children);
137
152
  });
138
153
 
139
- export const Accordion = React.forwardRef(function Accordion(props, ref) {
140
- const { children, ...rest } = props;
141
- return React.createElement(customElements.getName(AccordionWC) ?? '%%prefix%%-accordion', { ...rest, ref }, children);
142
- });
143
-
144
154
  export const Anchor = React.forwardRef(function Anchor(props, ref) {
145
155
  const { children, ...rest } = props;
146
156
  return React.createElement(customElements.getName(AnchorWC) ?? '%%prefix%%-anchor', { ...rest, ref }, children);
@@ -274,6 +284,11 @@ export const DataGridCell = React.forwardRef(function DataGridCell(props, ref) {
274
284
  return React.createElement(customElements.getName(DataGridCellWC) ?? '%%prefix%%-data-grid-cell', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
275
285
  });
276
286
 
287
+ export const DataGridDatasource = React.forwardRef(function DataGridDatasource(props, ref) {
288
+ const { children, ...rest } = props;
289
+ return React.createElement(customElements.getName(DataGridDatasourceWC) ?? 'data-grid-datasource', { ...rest, ref }, children);
290
+ });
291
+
277
292
  export const DataGridRow = React.forwardRef(function DataGridRow(props, ref) {
278
293
  const { onRowFocused, children, ...rest } = props;
279
294
  const _innerRef = React.useRef(null);
@@ -365,6 +380,132 @@ export const ErrorDialog = React.forwardRef(function ErrorDialog(props, ref) {
365
380
  return React.createElement(customElements.getName(ErrorDialogWC) ?? '%%prefix%%-error-dialog', { ...rest, ref }, children);
366
381
  });
367
382
 
383
+ export const FoundationExpressionBuilder = React.forwardRef(function FoundationExpressionBuilder(props, ref) {
384
+ const { onAddGroup, onDelGroup, onAddRule, onDelRule, onUpdateGroup, onUpdateRule, children, ...rest } = props;
385
+ const _innerRef = React.useRef(null);
386
+ const _onAddGroupRef = React.useRef(onAddGroup);
387
+ _onAddGroupRef.current = onAddGroup;
388
+ const _onDelGroupRef = React.useRef(onDelGroup);
389
+ _onDelGroupRef.current = onDelGroup;
390
+ const _onAddRuleRef = React.useRef(onAddRule);
391
+ _onAddRuleRef.current = onAddRule;
392
+ const _onDelRuleRef = React.useRef(onDelRule);
393
+ _onDelRuleRef.current = onDelRule;
394
+ const _onUpdateGroupRef = React.useRef(onUpdateGroup);
395
+ _onUpdateGroupRef.current = onUpdateGroup;
396
+ const _onUpdateRuleRef = React.useRef(onUpdateRule);
397
+ _onUpdateRuleRef.current = onUpdateRule;
398
+ React.useLayoutEffect(() => {
399
+ const el = _innerRef.current;
400
+ if (!el) return;
401
+ const _onAddGroupFn = (e) => _onAddGroupRef.current?.(e);
402
+ el.addEventListener('add-group', _onAddGroupFn);
403
+ const _onDelGroupFn = (e) => _onDelGroupRef.current?.(e);
404
+ el.addEventListener('del-group', _onDelGroupFn);
405
+ const _onAddRuleFn = (e) => _onAddRuleRef.current?.(e);
406
+ el.addEventListener('add-rule', _onAddRuleFn);
407
+ const _onDelRuleFn = (e) => _onDelRuleRef.current?.(e);
408
+ el.addEventListener('del-rule', _onDelRuleFn);
409
+ const _onUpdateGroupFn = (e) => _onUpdateGroupRef.current?.(e);
410
+ el.addEventListener('update-group', _onUpdateGroupFn);
411
+ const _onUpdateRuleFn = (e) => _onUpdateRuleRef.current?.(e);
412
+ el.addEventListener('update-rule', _onUpdateRuleFn);
413
+ return () => {
414
+ el.removeEventListener('add-group', _onAddGroupFn);
415
+ el.removeEventListener('del-group', _onDelGroupFn);
416
+ el.removeEventListener('add-rule', _onAddRuleFn);
417
+ el.removeEventListener('del-rule', _onDelRuleFn);
418
+ el.removeEventListener('update-group', _onUpdateGroupFn);
419
+ el.removeEventListener('update-rule', _onUpdateRuleFn);
420
+ };
421
+ }, []);
422
+ return React.createElement(customElements.getName(FoundationExpressionBuilderWC) ?? 'foundation-expression-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
423
+ });
424
+
425
+ export const FoundationRuleExpressionBuilder = React.forwardRef(function FoundationRuleExpressionBuilder(props, ref) {
426
+ const { onAddGroup, onDelGroup, onAddRule, onDelRule, onUpdateGroup, onUpdateRule, children, ...rest } = props;
427
+ const _innerRef = React.useRef(null);
428
+ const _onAddGroupRef = React.useRef(onAddGroup);
429
+ _onAddGroupRef.current = onAddGroup;
430
+ const _onDelGroupRef = React.useRef(onDelGroup);
431
+ _onDelGroupRef.current = onDelGroup;
432
+ const _onAddRuleRef = React.useRef(onAddRule);
433
+ _onAddRuleRef.current = onAddRule;
434
+ const _onDelRuleRef = React.useRef(onDelRule);
435
+ _onDelRuleRef.current = onDelRule;
436
+ const _onUpdateGroupRef = React.useRef(onUpdateGroup);
437
+ _onUpdateGroupRef.current = onUpdateGroup;
438
+ const _onUpdateRuleRef = React.useRef(onUpdateRule);
439
+ _onUpdateRuleRef.current = onUpdateRule;
440
+ React.useLayoutEffect(() => {
441
+ const el = _innerRef.current;
442
+ if (!el) return;
443
+ const _onAddGroupFn = (e) => _onAddGroupRef.current?.(e);
444
+ el.addEventListener('add-group', _onAddGroupFn);
445
+ const _onDelGroupFn = (e) => _onDelGroupRef.current?.(e);
446
+ el.addEventListener('del-group', _onDelGroupFn);
447
+ const _onAddRuleFn = (e) => _onAddRuleRef.current?.(e);
448
+ el.addEventListener('add-rule', _onAddRuleFn);
449
+ const _onDelRuleFn = (e) => _onDelRuleRef.current?.(e);
450
+ el.addEventListener('del-rule', _onDelRuleFn);
451
+ const _onUpdateGroupFn = (e) => _onUpdateGroupRef.current?.(e);
452
+ el.addEventListener('update-group', _onUpdateGroupFn);
453
+ const _onUpdateRuleFn = (e) => _onUpdateRuleRef.current?.(e);
454
+ el.addEventListener('update-rule', _onUpdateRuleFn);
455
+ return () => {
456
+ el.removeEventListener('add-group', _onAddGroupFn);
457
+ el.removeEventListener('del-group', _onDelGroupFn);
458
+ el.removeEventListener('add-rule', _onAddRuleFn);
459
+ el.removeEventListener('del-rule', _onDelRuleFn);
460
+ el.removeEventListener('update-group', _onUpdateGroupFn);
461
+ el.removeEventListener('update-rule', _onUpdateRuleFn);
462
+ };
463
+ }, []);
464
+ return React.createElement(customElements.getName(FoundationRuleExpressionBuilderWC) ?? 'foundation-rule-expression-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
465
+ });
466
+
467
+ export const FoundationValueExpressionBuilder = React.forwardRef(function FoundationValueExpressionBuilder(props, ref) {
468
+ const { onAddGroup, onDelGroup, onAddRule, onDelRule, onUpdateGroup, onUpdateRule, children, ...rest } = props;
469
+ const _innerRef = React.useRef(null);
470
+ const _onAddGroupRef = React.useRef(onAddGroup);
471
+ _onAddGroupRef.current = onAddGroup;
472
+ const _onDelGroupRef = React.useRef(onDelGroup);
473
+ _onDelGroupRef.current = onDelGroup;
474
+ const _onAddRuleRef = React.useRef(onAddRule);
475
+ _onAddRuleRef.current = onAddRule;
476
+ const _onDelRuleRef = React.useRef(onDelRule);
477
+ _onDelRuleRef.current = onDelRule;
478
+ const _onUpdateGroupRef = React.useRef(onUpdateGroup);
479
+ _onUpdateGroupRef.current = onUpdateGroup;
480
+ const _onUpdateRuleRef = React.useRef(onUpdateRule);
481
+ _onUpdateRuleRef.current = onUpdateRule;
482
+ React.useLayoutEffect(() => {
483
+ const el = _innerRef.current;
484
+ if (!el) return;
485
+ const _onAddGroupFn = (e) => _onAddGroupRef.current?.(e);
486
+ el.addEventListener('add-group', _onAddGroupFn);
487
+ const _onDelGroupFn = (e) => _onDelGroupRef.current?.(e);
488
+ el.addEventListener('del-group', _onDelGroupFn);
489
+ const _onAddRuleFn = (e) => _onAddRuleRef.current?.(e);
490
+ el.addEventListener('add-rule', _onAddRuleFn);
491
+ const _onDelRuleFn = (e) => _onDelRuleRef.current?.(e);
492
+ el.addEventListener('del-rule', _onDelRuleFn);
493
+ const _onUpdateGroupFn = (e) => _onUpdateGroupRef.current?.(e);
494
+ el.addEventListener('update-group', _onUpdateGroupFn);
495
+ const _onUpdateRuleFn = (e) => _onUpdateRuleRef.current?.(e);
496
+ el.addEventListener('update-rule', _onUpdateRuleFn);
497
+ return () => {
498
+ el.removeEventListener('add-group', _onAddGroupFn);
499
+ el.removeEventListener('del-group', _onDelGroupFn);
500
+ el.removeEventListener('add-rule', _onAddRuleFn);
501
+ el.removeEventListener('del-rule', _onDelRuleFn);
502
+ el.removeEventListener('update-group', _onUpdateGroupFn);
503
+ el.removeEventListener('update-rule', _onUpdateRuleFn);
504
+ };
505
+ }, []);
506
+ return React.createElement(customElements.getName(FoundationValueExpressionBuilderWC) ?? 'foundation-value-expression-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
507
+ });
508
+
368
509
  export const FileReader = React.forwardRef(function FileReader(props, ref) {
369
510
  const { onFileRead, onClear, children, ...rest } = props;
370
511
  const _innerRef = React.useRef(null);
@@ -589,6 +730,28 @@ export const Optgroup = React.forwardRef(function Optgroup(props, ref) {
589
730
  return React.createElement(customElements.getName(OptgroupWC) ?? '%%prefix%%-optgroup', { ...rest, ref }, children);
590
731
  });
591
732
 
733
+ export const MultiselectDatasource = React.forwardRef(function MultiselectDatasource(props, ref) {
734
+ const { children, ...rest } = props;
735
+ return React.createElement(customElements.getName(MultiselectDatasourceWC) ?? 'multiselect-datasource', { ...rest, ref }, children);
736
+ });
737
+
738
+ export const OptionsDatasource = React.forwardRef(function OptionsDatasource(props, ref) {
739
+ const { onValueChange, children, ...rest } = props;
740
+ const _innerRef = React.useRef(null);
741
+ const _onValueChangeRef = React.useRef(onValueChange);
742
+ _onValueChangeRef.current = onValueChange;
743
+ React.useLayoutEffect(() => {
744
+ const el = _innerRef.current;
745
+ if (!el) return;
746
+ const _onValueChangeFn = (e) => _onValueChangeRef.current?.(e);
747
+ el.addEventListener('value-change', _onValueChangeFn);
748
+ return () => {
749
+ el.removeEventListener('value-change', _onValueChangeFn);
750
+ };
751
+ }, []);
752
+ return React.createElement(customElements.getName(OptionsDatasourceWC) ?? 'options-datasource', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
753
+ });
754
+
592
755
  export const Popper = React.forwardRef(function Popper(props, ref) {
593
756
  const { children, ...rest } = props;
594
757
  return React.createElement(customElements.getName(PopperWC) ?? '%%prefix%%-popper', { ...rest, ref }, children);
@@ -614,6 +777,11 @@ export const RadioGroup = React.forwardRef(function RadioGroup(props, ref) {
614
777
  return React.createElement(customElements.getName(RadioGroupWC) ?? '%%prefix%%-radio-group', { ...rest, ref }, children);
615
778
  });
616
779
 
780
+ export const FoundationRouter = React.forwardRef(function FoundationRouter(props, ref) {
781
+ const { children, ...rest } = props;
782
+ return React.createElement(customElements.getName(FoundationRouterWC) ?? 'foundation-router', { ...rest, ref }, children);
783
+ });
784
+
617
785
  export const Scheduler = React.forwardRef(function Scheduler(props, ref) {
618
786
  const { children, ...rest } = props;
619
787
  return React.createElement(customElements.getName(SchedulerWC) ?? '%%prefix%%-scheduler', { ...rest, ref }, children);
@@ -855,3 +1023,54 @@ export const UrlInput = React.forwardRef(function UrlInput(props, ref) {
855
1023
  const { children, ...rest } = props;
856
1024
  return React.createElement(customElements.getName(UrlInputWC) ?? '%%prefix%%-url-input', { ...rest, ref }, children);
857
1025
  });
1026
+
1027
+ export const DailyRecurrence = React.forwardRef(function DailyRecurrence(props, ref) {
1028
+ const { onUpdateCronConfig, children, ...rest } = props;
1029
+ const _innerRef = React.useRef(null);
1030
+ const _onUpdateCronConfigRef = React.useRef(onUpdateCronConfig);
1031
+ _onUpdateCronConfigRef.current = onUpdateCronConfig;
1032
+ React.useLayoutEffect(() => {
1033
+ const el = _innerRef.current;
1034
+ if (!el) return;
1035
+ const _onUpdateCronConfigFn = (e) => _onUpdateCronConfigRef.current?.(e);
1036
+ el.addEventListener('update-cron-config', _onUpdateCronConfigFn);
1037
+ return () => {
1038
+ el.removeEventListener('update-cron-config', _onUpdateCronConfigFn);
1039
+ };
1040
+ }, []);
1041
+ return React.createElement(customElements.getName(DailyRecurrenceWC) ?? 'daily-recurrence', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
1042
+ });
1043
+
1044
+ export const MonthlyYearlyRecurrence = React.forwardRef(function MonthlyYearlyRecurrence(props, ref) {
1045
+ const { onUpdateCronConfig, children, ...rest } = props;
1046
+ const _innerRef = React.useRef(null);
1047
+ const _onUpdateCronConfigRef = React.useRef(onUpdateCronConfig);
1048
+ _onUpdateCronConfigRef.current = onUpdateCronConfig;
1049
+ React.useLayoutEffect(() => {
1050
+ const el = _innerRef.current;
1051
+ if (!el) return;
1052
+ const _onUpdateCronConfigFn = (e) => _onUpdateCronConfigRef.current?.(e);
1053
+ el.addEventListener('update-cron-config', _onUpdateCronConfigFn);
1054
+ return () => {
1055
+ el.removeEventListener('update-cron-config', _onUpdateCronConfigFn);
1056
+ };
1057
+ }, []);
1058
+ return React.createElement(customElements.getName(MonthlyYearlyRecurrenceWC) ?? 'monthly-yearly-recurrence', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
1059
+ });
1060
+
1061
+ export const WeeklyRecurrence = React.forwardRef(function WeeklyRecurrence(props, ref) {
1062
+ const { onUpdateCronConfig, children, ...rest } = props;
1063
+ const _innerRef = React.useRef(null);
1064
+ const _onUpdateCronConfigRef = React.useRef(onUpdateCronConfig);
1065
+ _onUpdateCronConfigRef.current = onUpdateCronConfig;
1066
+ React.useLayoutEffect(() => {
1067
+ const el = _innerRef.current;
1068
+ if (!el) return;
1069
+ const _onUpdateCronConfigFn = (e) => _onUpdateCronConfigRef.current?.(e);
1070
+ el.addEventListener('update-cron-config', _onUpdateCronConfigFn);
1071
+ return () => {
1072
+ el.removeEventListener('update-cron-config', _onUpdateCronConfigFn);
1073
+ };
1074
+ }, []);
1075
+ return React.createElement(customElements.getName(WeeklyRecurrenceWC) ?? 'weekly-recurrence', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
1076
+ });