@dalexto/lexsys-registry 0.0.6 → 0.1.1
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/dist/index.js +211 -3
- package/dist/items/breadcrumb.d.ts +7 -0
- package/dist/items/data-table.d.ts +7 -0
- package/dist/items/date-picker.d.ts +7 -0
- package/dist/items/filter-toolbar.d.ts +7 -0
- package/dist/items/index.d.ts +8 -0
- package/dist/items/page-header.d.ts +7 -0
- package/dist/items/pagination.d.ts +7 -0
- package/dist/items/settings-page-layout.d.ts +7 -0
- package/dist/items/stats-card.d.ts +7 -0
- package/package.json +1 -1
- package/templates/blocks/CommandPalette/CommandPalette.tsx +12 -8
- package/templates/blocks/CommandPalette/CommandPalette.types.ts +2 -2
- package/templates/blocks/DataTable/DataTable.tsx +236 -0
- package/templates/blocks/DataTable/DataTable.types.ts +74 -0
- package/templates/blocks/DataTable/DataTable.variants.ts +23 -0
- package/templates/blocks/FilterToolbar/FilterToolbar.tsx +126 -0
- package/templates/blocks/FilterToolbar/FilterToolbar.types.ts +31 -0
- package/templates/blocks/FilterToolbar/FilterToolbar.variants.ts +24 -0
- package/templates/blocks/PageHeader/PageHeader.tsx +215 -0
- package/templates/blocks/PageHeader/PageHeader.types.ts +66 -0
- package/templates/blocks/PageHeader/PageHeader.variants.ts +48 -0
- package/templates/blocks/StatsCard/StatsCard.tsx +132 -0
- package/templates/blocks/StatsCard/StatsCard.types.ts +43 -0
- package/templates/blocks/StatsCard/StatsCard.variants.ts +28 -0
- package/templates/primitives/Breadcrumb/Breadcrumb.tsx +142 -0
- package/templates/primitives/Breadcrumb/Breadcrumb.types.ts +62 -0
- package/templates/primitives/Breadcrumb/Breadcrumb.variants.ts +37 -0
- package/templates/primitives/DatePicker/DatePicker.tsx +263 -0
- package/templates/primitives/DatePicker/DatePicker.types.ts +52 -0
- package/templates/primitives/DatePicker/DatePicker.variants.ts +76 -0
- package/templates/primitives/Pagination/Pagination.tsx +160 -0
- package/templates/primitives/Pagination/Pagination.types.ts +54 -0
- package/templates/primitives/Pagination/Pagination.variants.ts +47 -0
- package/templates/primitives/Toolbar/Toolbar.variants.ts +15 -15
- package/templates/styles/theme.css +1 -1
- package/templates/styles/tokens.css +334 -1
- package/templates/templates/SettingsPageLayout/SettingsPageLayout.tsx +198 -0
- package/templates/templates/SettingsPageLayout/SettingsPageLayout.types.ts +55 -0
- package/templates/templates/SettingsPageLayout/SettingsPageLayout.variants.ts +42 -0
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Generated by @dalexto/lexsys-tokens.
|
|
5
5
|
* Manual changes will be overwritten.
|
|
6
|
-
* Last generated: 2026-06-
|
|
6
|
+
* Last generated: 2026-06-06T12:57:40.698Z
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
:root {
|
|
@@ -667,6 +667,46 @@
|
|
|
667
667
|
--lex-alert-danger-background: var(--lex-color-feedback-danger-background);
|
|
668
668
|
--lex-alert-danger-foreground: var(--lex-color-feedback-danger-foreground);
|
|
669
669
|
--lex-alert-danger-border-color: var(--lex-color-feedback-danger-foreground);
|
|
670
|
+
--lex-autocomplete-background: var(--lex-color-background-base);
|
|
671
|
+
--lex-autocomplete-foreground: var(--lex-color-text-primary);
|
|
672
|
+
--lex-autocomplete-border-color: var(--lex-border-default);
|
|
673
|
+
--lex-autocomplete-radius: var(--lex-radius-control);
|
|
674
|
+
--lex-autocomplete-height-sm: var(--lex-size-control-sm);
|
|
675
|
+
--lex-autocomplete-height-md: var(--lex-size-control-md);
|
|
676
|
+
--lex-autocomplete-height-lg: var(--lex-size-control-lg);
|
|
677
|
+
--lex-autocomplete-padding-x-sm: var(--lex-space-control-x-sm);
|
|
678
|
+
--lex-autocomplete-padding-x-md: var(--lex-space-control-x-md);
|
|
679
|
+
--lex-autocomplete-padding-x-lg: var(--lex-space-control-x-lg);
|
|
680
|
+
--lex-autocomplete-trigger-gap: var(--lex-space-control-gap-sm);
|
|
681
|
+
--lex-autocomplete-font-family: var(--lex-typography-control-md-font-family);
|
|
682
|
+
--lex-autocomplete-font-size-sm: var(--lex-typography-control-sm-font-size);
|
|
683
|
+
--lex-autocomplete-font-size-md: var(--lex-typography-control-md-font-size);
|
|
684
|
+
--lex-autocomplete-font-size-lg: var(--lex-typography-control-lg-font-size);
|
|
685
|
+
--lex-autocomplete-font-weight: var(--lex-typography-control-md-font-weight);
|
|
686
|
+
--lex-autocomplete-font-line-height: var(--lex-typography-control-md-line-height);
|
|
687
|
+
--lex-autocomplete-font-letter-spacing: var(--lex-typography-control-md-letter-spacing);
|
|
688
|
+
--lex-autocomplete-popup-background: var(--lex-color-background-base);
|
|
689
|
+
--lex-autocomplete-popup-foreground: var(--lex-color-text-primary);
|
|
690
|
+
--lex-autocomplete-popup-border-color: var(--lex-border-default);
|
|
691
|
+
--lex-autocomplete-popup-max-height: var(--lex-size-overlay-list-max-height);
|
|
692
|
+
--lex-autocomplete-popup-shadow: var(--lex-elevation-shadow-floating-box-shadow);
|
|
693
|
+
--lex-autocomplete-list-gap: var(--lex-space-control-gap-sm);
|
|
694
|
+
--lex-autocomplete-list-padding: var(--lex-space-control-y-xs);
|
|
695
|
+
--lex-autocomplete-item-foreground: var(--lex-color-text-primary);
|
|
696
|
+
--lex-autocomplete-item-highlight-background: var(--lex-color-background-subtle);
|
|
697
|
+
--lex-autocomplete-item-highlight-foreground: var(--lex-color-text-primary);
|
|
698
|
+
--lex-autocomplete-item-selected-background: var(--lex-action-primary-base);
|
|
699
|
+
--lex-autocomplete-item-selected-foreground: var(--lex-color-text-inverse);
|
|
700
|
+
--lex-autocomplete-focus-border-color: var(--lex-border-focus);
|
|
701
|
+
--lex-autocomplete-focus-ring-color: var(--lex-border-focus);
|
|
702
|
+
--lex-autocomplete-focus-ring-offset-color: var(--lex-color-background-base);
|
|
703
|
+
--lex-autocomplete-focus-ring-width: var(--lex-outline-width-focus);
|
|
704
|
+
--lex-autocomplete-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
705
|
+
--lex-autocomplete-invalid-border-color: var(--lex-action-danger-base);
|
|
706
|
+
--lex-autocomplete-invalid-ring-color: var(--lex-action-danger-base);
|
|
707
|
+
--lex-autocomplete-invalid-ring-width: var(--lex-outline-width-focus);
|
|
708
|
+
--lex-autocomplete-transition-duration: var(--lex-duration-control);
|
|
709
|
+
--lex-autocomplete-transition-easing: var(--lex-easing-control);
|
|
670
710
|
--lex-avatar-background: var(--lex-color-background-subtle);
|
|
671
711
|
--lex-avatar-foreground: var(--lex-color-text-secondary);
|
|
672
712
|
--lex-avatar-border-color: var(--lex-border-default);
|
|
@@ -705,6 +745,23 @@
|
|
|
705
745
|
--lex-badge-danger-background: var(--lex-action-danger-base);
|
|
706
746
|
--lex-badge-danger-foreground: var(--lex-color-text-inverse);
|
|
707
747
|
--lex-badge-danger-border-color: var(--lex-action-danger-base);
|
|
748
|
+
--lex-breadcrumb-list-gap: var(--lex-space-control-gap-sm);
|
|
749
|
+
--lex-breadcrumb-item-gap: var(--lex-space-control-gap-sm);
|
|
750
|
+
--lex-breadcrumb-link-foreground: var(--lex-color-text-secondary);
|
|
751
|
+
--lex-breadcrumb-link-hover-foreground: var(--lex-color-text-primary);
|
|
752
|
+
--lex-breadcrumb-link-font-size: var(--lex-typography-body-sm-font-size);
|
|
753
|
+
--lex-breadcrumb-link-font-weight: var(--lex-typography-body-sm-font-weight);
|
|
754
|
+
--lex-breadcrumb-link-font-line-height: var(--lex-typography-body-sm-line-height);
|
|
755
|
+
--lex-breadcrumb-page-foreground: var(--lex-color-text-primary);
|
|
756
|
+
--lex-breadcrumb-page-font-size: var(--lex-typography-body-sm-font-size);
|
|
757
|
+
--lex-breadcrumb-page-font-weight: var(--lex-typography-label-sm-font-weight);
|
|
758
|
+
--lex-breadcrumb-page-font-line-height: var(--lex-typography-body-sm-line-height);
|
|
759
|
+
--lex-breadcrumb-separator-foreground: var(--lex-color-text-secondary);
|
|
760
|
+
--lex-breadcrumb-separator-size: var(--lex-size-control-sm);
|
|
761
|
+
--lex-breadcrumb-ellipsis-foreground: var(--lex-color-text-secondary);
|
|
762
|
+
--lex-breadcrumb-ellipsis-size: var(--lex-size-control-sm);
|
|
763
|
+
--lex-breadcrumb-transition-duration: var(--lex-duration-control);
|
|
764
|
+
--lex-breadcrumb-transition-easing: var(--lex-easing-control);
|
|
708
765
|
--lex-button-radius: var(--lex-radius-control);
|
|
709
766
|
--lex-button-focus-ring-color: var(--lex-border-focus);
|
|
710
767
|
--lex-button-focus-ring-offset-color: var(--lex-color-background-base);
|
|
@@ -790,6 +847,82 @@
|
|
|
790
847
|
--lex-checkbox-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
791
848
|
--lex-checkbox-transition-duration: var(--lex-duration-control);
|
|
792
849
|
--lex-checkbox-transition-easing: var(--lex-easing-control);
|
|
850
|
+
--lex-checkbox-group-gap: var(--lex-space-control-gap-md);
|
|
851
|
+
--lex-checkbox-group-label-foreground: var(--lex-color-text-primary);
|
|
852
|
+
--lex-checkbox-group-label-font-size: var(--lex-typography-label-sm-font-size);
|
|
853
|
+
--lex-checkbox-group-label-font-weight: var(--lex-typography-label-sm-font-weight);
|
|
854
|
+
--lex-checkbox-group-label-font-line-height: var(--lex-typography-label-sm-line-height);
|
|
855
|
+
--lex-combobox-background: var(--lex-color-background-base);
|
|
856
|
+
--lex-combobox-foreground: var(--lex-color-text-primary);
|
|
857
|
+
--lex-combobox-border-color: var(--lex-border-default);
|
|
858
|
+
--lex-combobox-radius: var(--lex-radius-control);
|
|
859
|
+
--lex-combobox-height-sm: var(--lex-size-control-sm);
|
|
860
|
+
--lex-combobox-height-md: var(--lex-size-control-md);
|
|
861
|
+
--lex-combobox-height-lg: var(--lex-size-control-lg);
|
|
862
|
+
--lex-combobox-padding-x-sm: var(--lex-space-control-x-sm);
|
|
863
|
+
--lex-combobox-padding-x-md: var(--lex-space-control-x-md);
|
|
864
|
+
--lex-combobox-padding-x-lg: var(--lex-space-control-x-lg);
|
|
865
|
+
--lex-combobox-trigger-gap: var(--lex-space-control-gap-sm);
|
|
866
|
+
--lex-combobox-label-foreground: var(--lex-color-text-primary);
|
|
867
|
+
--lex-combobox-label-font-size: var(--lex-typography-label-sm-font-size);
|
|
868
|
+
--lex-combobox-label-font-weight: var(--lex-typography-label-sm-font-weight);
|
|
869
|
+
--lex-combobox-label-font-line-height: var(--lex-typography-label-sm-line-height);
|
|
870
|
+
--lex-combobox-font-family: var(--lex-typography-control-md-font-family);
|
|
871
|
+
--lex-combobox-font-size-sm: var(--lex-typography-control-sm-font-size);
|
|
872
|
+
--lex-combobox-font-size-md: var(--lex-typography-control-md-font-size);
|
|
873
|
+
--lex-combobox-font-size-lg: var(--lex-typography-control-lg-font-size);
|
|
874
|
+
--lex-combobox-font-weight: var(--lex-typography-control-md-font-weight);
|
|
875
|
+
--lex-combobox-font-line-height: var(--lex-typography-control-md-line-height);
|
|
876
|
+
--lex-combobox-font-letter-spacing: var(--lex-typography-control-md-letter-spacing);
|
|
877
|
+
--lex-combobox-popup-background: var(--lex-color-background-base);
|
|
878
|
+
--lex-combobox-popup-foreground: var(--lex-color-text-primary);
|
|
879
|
+
--lex-combobox-popup-border-color: var(--lex-border-default);
|
|
880
|
+
--lex-combobox-popup-max-height: var(--lex-size-overlay-list-max-height);
|
|
881
|
+
--lex-combobox-popup-shadow: var(--lex-elevation-shadow-floating-box-shadow);
|
|
882
|
+
--lex-combobox-list-gap: var(--lex-space-control-gap-sm);
|
|
883
|
+
--lex-combobox-list-padding: var(--lex-space-control-y-xs);
|
|
884
|
+
--lex-combobox-item-foreground: var(--lex-color-text-primary);
|
|
885
|
+
--lex-combobox-item-highlight-background: var(--lex-color-background-subtle);
|
|
886
|
+
--lex-combobox-item-highlight-foreground: var(--lex-color-text-primary);
|
|
887
|
+
--lex-combobox-item-selected-background: var(--lex-action-primary-base);
|
|
888
|
+
--lex-combobox-item-selected-foreground: var(--lex-color-text-inverse);
|
|
889
|
+
--lex-combobox-focus-border-color: var(--lex-border-focus);
|
|
890
|
+
--lex-combobox-focus-ring-color: var(--lex-border-focus);
|
|
891
|
+
--lex-combobox-focus-ring-offset-color: var(--lex-color-background-base);
|
|
892
|
+
--lex-combobox-focus-ring-width: var(--lex-outline-width-focus);
|
|
893
|
+
--lex-combobox-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
894
|
+
--lex-combobox-invalid-border-color: var(--lex-action-danger-base);
|
|
895
|
+
--lex-combobox-invalid-ring-color: var(--lex-action-danger-base);
|
|
896
|
+
--lex-combobox-invalid-ring-width: var(--lex-outline-width-focus);
|
|
897
|
+
--lex-combobox-transition-duration: var(--lex-duration-control);
|
|
898
|
+
--lex-combobox-transition-easing: var(--lex-easing-control);
|
|
899
|
+
--lex-context-menu-radius: var(--lex-radius-surface);
|
|
900
|
+
--lex-context-menu-popup-background: var(--lex-color-background-base);
|
|
901
|
+
--lex-context-menu-popup-foreground: var(--lex-color-text-primary);
|
|
902
|
+
--lex-context-menu-popup-border-color: var(--lex-border-default);
|
|
903
|
+
--lex-context-menu-popup-shadow: var(--lex-elevation-shadow-floating-box-shadow);
|
|
904
|
+
--lex-context-menu-positioner-z-index: var(--lex-elevation-floating-z-index);
|
|
905
|
+
--lex-context-menu-positioner-side-offset: var(--lex-space-overlay-side-offset);
|
|
906
|
+
--lex-context-menu-list-gap: var(--lex-space-control-gap-sm);
|
|
907
|
+
--lex-context-menu-list-padding: var(--lex-space-control-y-xs);
|
|
908
|
+
--lex-context-menu-item-foreground: var(--lex-color-text-primary);
|
|
909
|
+
--lex-context-menu-item-radius: var(--lex-radius-control);
|
|
910
|
+
--lex-context-menu-item-padding-x: var(--lex-space-control-x-sm);
|
|
911
|
+
--lex-context-menu-item-padding-y: var(--lex-space-control-y-xs);
|
|
912
|
+
--lex-context-menu-item-highlight-background: var(--lex-color-background-subtle);
|
|
913
|
+
--lex-context-menu-item-highlight-foreground: var(--lex-color-text-primary);
|
|
914
|
+
--lex-context-menu-item-focus-ring-width: var(--lex-outline-width-focus);
|
|
915
|
+
--lex-context-menu-item-focus-ring-color: var(--lex-border-focus);
|
|
916
|
+
--lex-context-menu-item-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
917
|
+
--lex-context-menu-item-focus-ring-offset-color: var(--lex-color-background-base);
|
|
918
|
+
--lex-context-menu-separator-background: var(--lex-border-default);
|
|
919
|
+
--lex-context-menu-separator-margin-y: var(--lex-space-control-y-xs);
|
|
920
|
+
--lex-context-menu-focus-ring-color: var(--lex-border-focus);
|
|
921
|
+
--lex-context-menu-focus-ring-offset-color: var(--lex-color-background-base);
|
|
922
|
+
--lex-context-menu-focus-ring-width: var(--lex-outline-width-focus);
|
|
923
|
+
--lex-context-menu-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
924
|
+
--lex-context-menu-transition-duration: var(--lex-duration-control);
|
|
925
|
+
--lex-context-menu-transition-easing: var(--lex-easing-control);
|
|
793
926
|
--lex-collapsible-background: var(--lex-color-background-surface);
|
|
794
927
|
--lex-collapsible-foreground: var(--lex-color-text-primary);
|
|
795
928
|
--lex-collapsible-border-color: var(--lex-border-default);
|
|
@@ -811,6 +944,44 @@
|
|
|
811
944
|
--lex-collapsible-panel-font-line-height: var(--lex-typography-body-sm-line-height);
|
|
812
945
|
--lex-collapsible-transition-duration: var(--lex-duration-surface);
|
|
813
946
|
--lex-collapsible-transition-easing: var(--lex-easing-surface);
|
|
947
|
+
--lex-date-picker-calendar-background: var(--lex-color-background-base);
|
|
948
|
+
--lex-date-picker-calendar-foreground: var(--lex-color-text-primary);
|
|
949
|
+
--lex-date-picker-calendar-border-color: var(--lex-border-default);
|
|
950
|
+
--lex-date-picker-calendar-radius: var(--lex-radius-surface);
|
|
951
|
+
--lex-date-picker-calendar-padding: var(--lex-space-surface-md);
|
|
952
|
+
--lex-date-picker-calendar-gap: var(--lex-space-surface-gap-sm);
|
|
953
|
+
--lex-date-picker-calendar-width: var(--lex-size-panel-width-sm);
|
|
954
|
+
--lex-date-picker-header-foreground: var(--lex-color-text-primary);
|
|
955
|
+
--lex-date-picker-header-font-size: var(--lex-typography-heading-xs-font-size);
|
|
956
|
+
--lex-date-picker-header-font-weight: var(--lex-typography-heading-xs-font-weight);
|
|
957
|
+
--lex-date-picker-header-font-line-height: var(--lex-typography-heading-xs-line-height);
|
|
958
|
+
--lex-date-picker-weekday-foreground: var(--lex-color-text-secondary);
|
|
959
|
+
--lex-date-picker-weekday-font-size: var(--lex-typography-label-xs-font-size);
|
|
960
|
+
--lex-date-picker-weekday-font-weight: var(--lex-typography-label-xs-font-weight);
|
|
961
|
+
--lex-date-picker-weekday-font-line-height: 1;
|
|
962
|
+
--lex-date-picker-day-size: var(--lex-size-control-md);
|
|
963
|
+
--lex-date-picker-day-radius: var(--lex-radius-selection);
|
|
964
|
+
--lex-date-picker-day-background: transparent;
|
|
965
|
+
--lex-date-picker-day-foreground: var(--lex-color-text-primary);
|
|
966
|
+
--lex-date-picker-day-hover-background: var(--lex-color-background-subtle);
|
|
967
|
+
--lex-date-picker-day-selected-background: var(--lex-action-primary-base);
|
|
968
|
+
--lex-date-picker-day-selected-foreground: var(--lex-color-text-inverse);
|
|
969
|
+
--lex-date-picker-day-outside-foreground: var(--lex-color-text-secondary);
|
|
970
|
+
--lex-date-picker-day-today-border-color: var(--lex-border-focus);
|
|
971
|
+
--lex-date-picker-day-font-size: var(--lex-typography-control-sm-font-size);
|
|
972
|
+
--lex-date-picker-day-font-weight: var(--lex-typography-control-sm-font-weight);
|
|
973
|
+
--lex-date-picker-day-font-line-height: 1;
|
|
974
|
+
--lex-date-picker-nav-size: var(--lex-size-control-sm);
|
|
975
|
+
--lex-date-picker-nav-foreground: var(--lex-color-text-secondary);
|
|
976
|
+
--lex-date-picker-nav-hover-background: var(--lex-color-background-subtle);
|
|
977
|
+
--lex-date-picker-nav-hover-foreground: var(--lex-color-text-primary);
|
|
978
|
+
--lex-date-picker-nav-radius: var(--lex-radius-control);
|
|
979
|
+
--lex-date-picker-focus-ring-color: var(--lex-border-focus);
|
|
980
|
+
--lex-date-picker-focus-ring-offset-color: var(--lex-color-background-base);
|
|
981
|
+
--lex-date-picker-focus-ring-width: var(--lex-outline-width-focus);
|
|
982
|
+
--lex-date-picker-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
983
|
+
--lex-date-picker-transition-duration: var(--lex-duration-control);
|
|
984
|
+
--lex-date-picker-transition-easing: var(--lex-easing-control);
|
|
814
985
|
--lex-dialog-backdrop-background: var(--lex-color-text-primary);
|
|
815
986
|
--lex-dialog-backdrop-opacity: 0.48;
|
|
816
987
|
--lex-dialog-backdrop-z-index: var(--lex-elevation-backdrop-z-index);
|
|
@@ -1076,6 +1247,27 @@
|
|
|
1076
1247
|
--lex-menu-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
1077
1248
|
--lex-menu-transition-duration: var(--lex-duration-control);
|
|
1078
1249
|
--lex-menu-transition-easing: var(--lex-easing-control);
|
|
1250
|
+
--lex-menubar-radius: var(--lex-radius-surface);
|
|
1251
|
+
--lex-menubar-trigger-background: var(--lex-color-background-surface);
|
|
1252
|
+
--lex-menubar-trigger-foreground: var(--lex-color-text-primary);
|
|
1253
|
+
--lex-menubar-trigger-border-color: var(--lex-border-default);
|
|
1254
|
+
--lex-menubar-list-gap: var(--lex-space-control-gap-sm);
|
|
1255
|
+
--lex-menubar-list-padding: var(--lex-space-control-y-xs);
|
|
1256
|
+
--lex-menubar-item-foreground: var(--lex-color-text-primary);
|
|
1257
|
+
--lex-menubar-item-highlight-background: var(--lex-color-background-subtle);
|
|
1258
|
+
--lex-menubar-item-highlight-foreground: var(--lex-color-text-primary);
|
|
1259
|
+
--lex-menubar-item-open-background: var(--lex-color-background-subtle);
|
|
1260
|
+
--lex-menubar-item-open-border-color: var(--lex-border-focus);
|
|
1261
|
+
--lex-menubar-popup-background: var(--lex-color-background-base);
|
|
1262
|
+
--lex-menubar-popup-foreground: var(--lex-color-text-primary);
|
|
1263
|
+
--lex-menubar-popup-border-color: var(--lex-border-default);
|
|
1264
|
+
--lex-menubar-popup-shadow: var(--lex-elevation-shadow-floating-box-shadow);
|
|
1265
|
+
--lex-menubar-focus-ring-color: var(--lex-border-focus);
|
|
1266
|
+
--lex-menubar-focus-ring-offset-color: var(--lex-color-background-base);
|
|
1267
|
+
--lex-menubar-focus-ring-width: var(--lex-outline-width-focus);
|
|
1268
|
+
--lex-menubar-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
1269
|
+
--lex-menubar-transition-duration: var(--lex-duration-control);
|
|
1270
|
+
--lex-menubar-transition-easing: var(--lex-easing-control);
|
|
1079
1271
|
--lex-meter-gap: var(--lex-space-control-gap-sm);
|
|
1080
1272
|
--lex-meter-header-gap: var(--lex-space-control-gap-sm);
|
|
1081
1273
|
--lex-meter-label-foreground: var(--lex-color-text-secondary);
|
|
@@ -1093,6 +1285,29 @@
|
|
|
1093
1285
|
--lex-meter-indicator-background-complete: var(--lex-action-primary-base);
|
|
1094
1286
|
--lex-meter-transition-duration: var(--lex-duration-surface);
|
|
1095
1287
|
--lex-meter-transition-easing: var(--lex-easing-surface);
|
|
1288
|
+
--lex-navigation-menu-radius: var(--lex-radius-surface);
|
|
1289
|
+
--lex-navigation-menu-trigger-background: var(--lex-color-background-surface);
|
|
1290
|
+
--lex-navigation-menu-trigger-foreground: var(--lex-color-text-primary);
|
|
1291
|
+
--lex-navigation-menu-trigger-border-color: var(--lex-border-default);
|
|
1292
|
+
--lex-navigation-menu-trigger-hover-background: var(--lex-color-background-subtle);
|
|
1293
|
+
--lex-navigation-menu-list-gap: var(--lex-space-control-gap-sm);
|
|
1294
|
+
--lex-navigation-menu-list-padding: var(--lex-space-control-y-xs);
|
|
1295
|
+
--lex-navigation-menu-item-foreground: var(--lex-color-text-primary);
|
|
1296
|
+
--lex-navigation-menu-item-highlight-background: var(--lex-color-background-subtle);
|
|
1297
|
+
--lex-navigation-menu-item-highlight-foreground: var(--lex-color-text-primary);
|
|
1298
|
+
--lex-navigation-menu-item-active-background: var(--lex-action-primary-base);
|
|
1299
|
+
--lex-navigation-menu-item-active-foreground: var(--lex-color-text-inverse);
|
|
1300
|
+
--lex-navigation-menu-popup-background: var(--lex-color-background-base);
|
|
1301
|
+
--lex-navigation-menu-popup-foreground: var(--lex-color-text-primary);
|
|
1302
|
+
--lex-navigation-menu-popup-border-color: var(--lex-border-default);
|
|
1303
|
+
--lex-navigation-menu-popup-shadow: var(--lex-elevation-shadow-floating-box-shadow);
|
|
1304
|
+
--lex-navigation-menu-viewport-max-height: var(--lex-size-overlay-list-max-height);
|
|
1305
|
+
--lex-navigation-menu-focus-ring-color: var(--lex-border-focus);
|
|
1306
|
+
--lex-navigation-menu-focus-ring-offset-color: var(--lex-color-background-base);
|
|
1307
|
+
--lex-navigation-menu-focus-ring-width: var(--lex-outline-width-focus);
|
|
1308
|
+
--lex-navigation-menu-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
1309
|
+
--lex-navigation-menu-transition-duration: var(--lex-duration-control);
|
|
1310
|
+
--lex-navigation-menu-transition-easing: var(--lex-easing-control);
|
|
1096
1311
|
--lex-number-field-gap: var(--lex-space-control-gap-sm);
|
|
1097
1312
|
--lex-number-field-foreground: var(--lex-color-text-primary);
|
|
1098
1313
|
--lex-number-field-background: var(--lex-color-background-base);
|
|
@@ -1136,6 +1351,75 @@
|
|
|
1136
1351
|
--lex-number-field-scrub-cursor-size: var(--lex-size-selection-indicator-md);
|
|
1137
1352
|
--lex-number-field-transition-duration: var(--lex-duration-control);
|
|
1138
1353
|
--lex-number-field-transition-easing: var(--lex-easing-control);
|
|
1354
|
+
--lex-otp-field-gap: var(--lex-space-control-gap-sm);
|
|
1355
|
+
--lex-otp-field-slot-background: var(--lex-color-background-base);
|
|
1356
|
+
--lex-otp-field-slot-foreground: var(--lex-color-text-primary);
|
|
1357
|
+
--lex-otp-field-slot-border-color: var(--lex-border-default);
|
|
1358
|
+
--lex-otp-field-slot-radius: var(--lex-radius-control);
|
|
1359
|
+
--lex-otp-field-slot-height-sm: var(--lex-size-control-sm);
|
|
1360
|
+
--lex-otp-field-slot-height-md: var(--lex-size-control-md);
|
|
1361
|
+
--lex-otp-field-slot-height-lg: var(--lex-size-control-lg);
|
|
1362
|
+
--lex-otp-field-slot-font-family: var(--lex-typography-control-md-font-family);
|
|
1363
|
+
--lex-otp-field-slot-font-size-sm: var(--lex-typography-control-sm-font-size);
|
|
1364
|
+
--lex-otp-field-slot-font-size-md: var(--lex-typography-control-md-font-size);
|
|
1365
|
+
--lex-otp-field-slot-font-size-lg: var(--lex-typography-control-lg-font-size);
|
|
1366
|
+
--lex-otp-field-slot-font-weight: var(--lex-typography-control-md-font-weight);
|
|
1367
|
+
--lex-otp-field-slot-font-line-height: var(--lex-typography-control-md-line-height);
|
|
1368
|
+
--lex-otp-field-slot-font-letter-spacing: var(--lex-typography-control-md-letter-spacing);
|
|
1369
|
+
--lex-otp-field-slot-focus-border-color: var(--lex-border-focus);
|
|
1370
|
+
--lex-otp-field-slot-focus-ring-color: var(--lex-border-focus);
|
|
1371
|
+
--lex-otp-field-slot-focus-ring-offset-color: var(--lex-color-background-base);
|
|
1372
|
+
--lex-otp-field-slot-focus-ring-width: var(--lex-outline-width-focus);
|
|
1373
|
+
--lex-otp-field-slot-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
1374
|
+
--lex-otp-field-slot-filled-border-color: var(--lex-border-focus);
|
|
1375
|
+
--lex-otp-field-separator-foreground: var(--lex-color-text-secondary);
|
|
1376
|
+
--lex-otp-field-separator-font-size: var(--lex-typography-control-md-font-size);
|
|
1377
|
+
--lex-otp-field-separator-font-weight: var(--lex-typography-control-md-font-weight);
|
|
1378
|
+
--lex-otp-field-transition-duration: var(--lex-duration-control);
|
|
1379
|
+
--lex-otp-field-transition-easing: var(--lex-easing-control);
|
|
1380
|
+
--lex-preview-card-backdrop-background: var(--lex-color-text-primary);
|
|
1381
|
+
--lex-preview-card-backdrop-opacity: 0.24;
|
|
1382
|
+
--lex-preview-card-backdrop-z-index: var(--lex-elevation-backdrop-z-index);
|
|
1383
|
+
--lex-preview-card-positioner-z-index: var(--lex-elevation-floating-z-index);
|
|
1384
|
+
--lex-preview-card-positioner-side-offset: var(--lex-space-overlay-side-offset);
|
|
1385
|
+
--lex-preview-card-popup-background: var(--lex-color-background-base);
|
|
1386
|
+
--lex-preview-card-popup-foreground: var(--lex-color-text-primary);
|
|
1387
|
+
--lex-preview-card-popup-border-color: var(--lex-border-default);
|
|
1388
|
+
--lex-preview-card-popup-radius: var(--lex-radius-surface);
|
|
1389
|
+
--lex-preview-card-popup-max-width: var(--lex-size-panel-width-sm);
|
|
1390
|
+
--lex-preview-card-popup-padding: var(--lex-space-surface-md);
|
|
1391
|
+
--lex-preview-card-popup-shadow: var(--lex-elevation-shadow-floating-box-shadow);
|
|
1392
|
+
--lex-preview-card-arrow-size: var(--lex-size-selection-control-sm);
|
|
1393
|
+
--lex-preview-card-trigger-focus-ring-color: var(--lex-border-focus);
|
|
1394
|
+
--lex-preview-card-trigger-focus-ring-offset-color: var(--lex-color-background-base);
|
|
1395
|
+
--lex-preview-card-trigger-focus-ring-width: var(--lex-outline-width-focus);
|
|
1396
|
+
--lex-preview-card-trigger-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
1397
|
+
--lex-preview-card-transition-duration: var(--lex-duration-control);
|
|
1398
|
+
--lex-preview-card-transition-easing: var(--lex-easing-control);
|
|
1399
|
+
--lex-pagination-gap: var(--lex-space-control-gap-sm);
|
|
1400
|
+
--lex-pagination-link-background: var(--lex-color-background-base);
|
|
1401
|
+
--lex-pagination-link-foreground: var(--lex-color-text-primary);
|
|
1402
|
+
--lex-pagination-link-border-color: var(--lex-border-default);
|
|
1403
|
+
--lex-pagination-link-hover-background: var(--lex-color-background-subtle);
|
|
1404
|
+
--lex-pagination-link-active-background: var(--lex-action-primary-base);
|
|
1405
|
+
--lex-pagination-link-active-foreground: var(--lex-color-text-inverse);
|
|
1406
|
+
--lex-pagination-link-radius: var(--lex-radius-control);
|
|
1407
|
+
--lex-pagination-link-height-sm: var(--lex-size-control-sm);
|
|
1408
|
+
--lex-pagination-link-height-md: var(--lex-size-control-md);
|
|
1409
|
+
--lex-pagination-link-padding-x-sm: var(--lex-space-control-x-sm);
|
|
1410
|
+
--lex-pagination-link-padding-x-md: var(--lex-space-control-x-md);
|
|
1411
|
+
--lex-pagination-link-font-size-sm: var(--lex-typography-control-sm-font-size);
|
|
1412
|
+
--lex-pagination-link-font-size-md: var(--lex-typography-control-md-font-size);
|
|
1413
|
+
--lex-pagination-link-font-weight: var(--lex-typography-control-md-font-weight);
|
|
1414
|
+
--lex-pagination-link-font-line-height: var(--lex-typography-control-md-line-height);
|
|
1415
|
+
--lex-pagination-ellipsis-foreground: var(--lex-color-text-secondary);
|
|
1416
|
+
--lex-pagination-ellipsis-size: var(--lex-size-control-sm);
|
|
1417
|
+
--lex-pagination-focus-ring-color: var(--lex-border-focus);
|
|
1418
|
+
--lex-pagination-focus-ring-offset-color: var(--lex-color-background-base);
|
|
1419
|
+
--lex-pagination-focus-ring-width: var(--lex-outline-width-focus);
|
|
1420
|
+
--lex-pagination-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
1421
|
+
--lex-pagination-transition-duration: var(--lex-duration-control);
|
|
1422
|
+
--lex-pagination-transition-easing: var(--lex-easing-control);
|
|
1139
1423
|
--lex-popover-backdrop-background: var(--lex-color-text-primary);
|
|
1140
1424
|
--lex-popover-backdrop-opacity: 0.24;
|
|
1141
1425
|
--lex-popover-backdrop-z-index: var(--lex-elevation-backdrop-z-index);
|
|
@@ -1488,6 +1772,55 @@
|
|
|
1488
1772
|
--lex-toggle-group-gap-sm: var(--lex-space-control-gap-sm);
|
|
1489
1773
|
--lex-toggle-group-gap-md: var(--lex-space-control-gap-sm);
|
|
1490
1774
|
--lex-toggle-group-gap-lg: var(--lex-space-control-gap-md);
|
|
1775
|
+
--lex-toolbar-radius: var(--lex-radius-control);
|
|
1776
|
+
--lex-toolbar-root-gap: var(--lex-space-control-gap-sm);
|
|
1777
|
+
--lex-toolbar-root-background: var(--lex-color-background-subtle);
|
|
1778
|
+
--lex-toolbar-root-foreground: var(--lex-color-text-primary);
|
|
1779
|
+
--lex-toolbar-root-border-color: var(--lex-border-default);
|
|
1780
|
+
--lex-toolbar-root-padding: var(--lex-space-control-x-sm);
|
|
1781
|
+
--lex-toolbar-group-gap: var(--lex-space-control-gap-sm);
|
|
1782
|
+
--lex-toolbar-button-height: var(--lex-size-control-sm);
|
|
1783
|
+
--lex-toolbar-button-radius: var(--lex-radius-control);
|
|
1784
|
+
--lex-toolbar-button-padding-x: var(--lex-space-control-x-sm);
|
|
1785
|
+
--lex-toolbar-button-foreground: var(--lex-color-text-primary);
|
|
1786
|
+
--lex-toolbar-button-hover-background: var(--lex-color-background-surface);
|
|
1787
|
+
--lex-toolbar-button-font-size: var(--lex-typography-control-sm-font-size);
|
|
1788
|
+
--lex-toolbar-button-font-weight: var(--lex-typography-control-md-font-weight);
|
|
1789
|
+
--lex-toolbar-button-font-line-height: var(--lex-typography-control-sm-line-height);
|
|
1790
|
+
--lex-toolbar-button-focus-ring-color: var(--lex-border-focus);
|
|
1791
|
+
--lex-toolbar-button-focus-ring-offset-color: var(--lex-color-background-base);
|
|
1792
|
+
--lex-toolbar-button-focus-ring-width: var(--lex-outline-width-focus);
|
|
1793
|
+
--lex-toolbar-button-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
1794
|
+
--lex-toolbar-link-height: var(--lex-size-control-sm);
|
|
1795
|
+
--lex-toolbar-link-radius: var(--lex-radius-control);
|
|
1796
|
+
--lex-toolbar-link-padding-x: var(--lex-space-control-x-sm);
|
|
1797
|
+
--lex-toolbar-link-foreground: var(--lex-color-text-primary);
|
|
1798
|
+
--lex-toolbar-link-hover-background: var(--lex-color-background-surface);
|
|
1799
|
+
--lex-toolbar-link-font-size: var(--lex-typography-control-sm-font-size);
|
|
1800
|
+
--lex-toolbar-link-font-weight: var(--lex-typography-control-md-font-weight);
|
|
1801
|
+
--lex-toolbar-link-font-line-height: var(--lex-typography-control-sm-line-height);
|
|
1802
|
+
--lex-toolbar-link-focus-ring-color: var(--lex-border-focus);
|
|
1803
|
+
--lex-toolbar-link-focus-ring-offset-color: var(--lex-color-background-base);
|
|
1804
|
+
--lex-toolbar-link-focus-ring-width: var(--lex-outline-width-focus);
|
|
1805
|
+
--lex-toolbar-link-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
1806
|
+
--lex-toolbar-input-height: var(--lex-size-control-sm);
|
|
1807
|
+
--lex-toolbar-input-radius: var(--lex-radius-control);
|
|
1808
|
+
--lex-toolbar-input-padding-x: var(--lex-space-control-x-sm);
|
|
1809
|
+
--lex-toolbar-input-background: var(--lex-color-background-base);
|
|
1810
|
+
--lex-toolbar-input-foreground: var(--lex-color-text-primary);
|
|
1811
|
+
--lex-toolbar-input-placeholder-color: var(--lex-color-text-secondary);
|
|
1812
|
+
--lex-toolbar-input-border-color: var(--lex-border-default);
|
|
1813
|
+
--lex-toolbar-input-font-family: var(--lex-typography-control-md-font-family);
|
|
1814
|
+
--lex-toolbar-input-font-size: var(--lex-typography-control-sm-font-size);
|
|
1815
|
+
--lex-toolbar-input-font-weight: var(--lex-typography-control-md-font-weight);
|
|
1816
|
+
--lex-toolbar-input-font-line-height: var(--lex-typography-control-sm-line-height);
|
|
1817
|
+
--lex-toolbar-input-focus-border-color: var(--lex-border-focus);
|
|
1818
|
+
--lex-toolbar-input-focus-ring-color: var(--lex-border-focus);
|
|
1819
|
+
--lex-toolbar-input-focus-ring-offset-color: var(--lex-color-background-base);
|
|
1820
|
+
--lex-toolbar-input-focus-ring-width: var(--lex-outline-width-focus);
|
|
1821
|
+
--lex-toolbar-input-focus-ring-offset: var(--lex-outline-offset-focus);
|
|
1822
|
+
--lex-toolbar-transition-duration: var(--lex-duration-control);
|
|
1823
|
+
--lex-toolbar-transition-easing: var(--lex-easing-control);
|
|
1491
1824
|
--lex-tooltip-positioner-z-index: var(--lex-elevation-tooltip-z-index);
|
|
1492
1825
|
--lex-tooltip-positioner-side-offset: var(--lex-space-overlay-side-offset);
|
|
1493
1826
|
--lex-tooltip-background: var(--lex-color-text-primary);
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SettingsPageLayout.tsx
|
|
3
|
+
*
|
|
4
|
+
* Reference SettingsPageLayout template — settings page shell with header and panels.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { PageHeader } from "@/components/blocks/PageHeader"
|
|
8
|
+
import {
|
|
9
|
+
SettingsPanel,
|
|
10
|
+
SettingsPanelContent,
|
|
11
|
+
SettingsPanelDescription,
|
|
12
|
+
SettingsPanelFooter,
|
|
13
|
+
SettingsPanelHeader,
|
|
14
|
+
SettingsPanelTitle,
|
|
15
|
+
} from "@/components/blocks/SettingsPanel"
|
|
16
|
+
import type {
|
|
17
|
+
SettingsPageLayoutBodyProps,
|
|
18
|
+
SettingsPageLayoutHeaderProps,
|
|
19
|
+
SettingsPageLayoutMainProps,
|
|
20
|
+
SettingsPageLayoutNavProps,
|
|
21
|
+
SettingsPageLayoutPanelContentProps,
|
|
22
|
+
SettingsPageLayoutPanelDescriptionProps,
|
|
23
|
+
SettingsPageLayoutPanelFooterProps,
|
|
24
|
+
SettingsPageLayoutPanelHeaderProps,
|
|
25
|
+
SettingsPageLayoutPanelProps,
|
|
26
|
+
SettingsPageLayoutPanelTitleProps,
|
|
27
|
+
SettingsPageLayoutProps,
|
|
28
|
+
} from "./SettingsPageLayout.types"
|
|
29
|
+
import {
|
|
30
|
+
settingsPageLayoutBodyClasses,
|
|
31
|
+
settingsPageLayoutClasses,
|
|
32
|
+
settingsPageLayoutHeaderClasses,
|
|
33
|
+
settingsPageLayoutMainClasses,
|
|
34
|
+
settingsPageLayoutNavClasses,
|
|
35
|
+
settingsPageLayoutPanelClasses,
|
|
36
|
+
} from "./SettingsPageLayout.variants"
|
|
37
|
+
import { cn } from "@/lib/utils"
|
|
38
|
+
|
|
39
|
+
const SettingsPageLayout = ({
|
|
40
|
+
ref,
|
|
41
|
+
className,
|
|
42
|
+
...props
|
|
43
|
+
}: SettingsPageLayoutProps) => {
|
|
44
|
+
return (
|
|
45
|
+
<div
|
|
46
|
+
ref={ref}
|
|
47
|
+
className={cn(settingsPageLayoutClasses(), className)}
|
|
48
|
+
{...props}
|
|
49
|
+
/>
|
|
50
|
+
)
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
SettingsPageLayout.displayName = "SettingsPageLayout"
|
|
54
|
+
|
|
55
|
+
const SettingsPageLayoutHeader = ({
|
|
56
|
+
ref,
|
|
57
|
+
className,
|
|
58
|
+
...props
|
|
59
|
+
}: SettingsPageLayoutHeaderProps) => {
|
|
60
|
+
return (
|
|
61
|
+
<PageHeader
|
|
62
|
+
ref={ref}
|
|
63
|
+
className={cn(settingsPageLayoutHeaderClasses(), className)}
|
|
64
|
+
{...props}
|
|
65
|
+
/>
|
|
66
|
+
)
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
SettingsPageLayoutHeader.displayName = "SettingsPageLayoutHeader"
|
|
70
|
+
|
|
71
|
+
const SettingsPageLayoutBody = ({
|
|
72
|
+
ref,
|
|
73
|
+
className,
|
|
74
|
+
...props
|
|
75
|
+
}: SettingsPageLayoutBodyProps) => {
|
|
76
|
+
return (
|
|
77
|
+
<div
|
|
78
|
+
ref={ref}
|
|
79
|
+
className={cn(settingsPageLayoutBodyClasses(), className)}
|
|
80
|
+
{...props}
|
|
81
|
+
/>
|
|
82
|
+
)
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
SettingsPageLayoutBody.displayName = "SettingsPageLayoutBody"
|
|
86
|
+
|
|
87
|
+
const SettingsPageLayoutNav = ({
|
|
88
|
+
ref,
|
|
89
|
+
className,
|
|
90
|
+
...props
|
|
91
|
+
}: SettingsPageLayoutNavProps) => {
|
|
92
|
+
return (
|
|
93
|
+
<aside
|
|
94
|
+
ref={ref}
|
|
95
|
+
className={cn(settingsPageLayoutNavClasses(), className)}
|
|
96
|
+
{...props}
|
|
97
|
+
/>
|
|
98
|
+
)
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
SettingsPageLayoutNav.displayName = "SettingsPageLayoutNav"
|
|
102
|
+
|
|
103
|
+
const SettingsPageLayoutMain = ({
|
|
104
|
+
ref,
|
|
105
|
+
className,
|
|
106
|
+
...props
|
|
107
|
+
}: SettingsPageLayoutMainProps) => {
|
|
108
|
+
return (
|
|
109
|
+
<main
|
|
110
|
+
ref={ref}
|
|
111
|
+
className={cn(settingsPageLayoutMainClasses(), className)}
|
|
112
|
+
{...props}
|
|
113
|
+
/>
|
|
114
|
+
)
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
SettingsPageLayoutMain.displayName = "SettingsPageLayoutMain"
|
|
118
|
+
|
|
119
|
+
const SettingsPageLayoutPanel = ({
|
|
120
|
+
ref,
|
|
121
|
+
className,
|
|
122
|
+
...props
|
|
123
|
+
}: SettingsPageLayoutPanelProps) => {
|
|
124
|
+
return (
|
|
125
|
+
<SettingsPanel
|
|
126
|
+
ref={ref}
|
|
127
|
+
className={cn(settingsPageLayoutPanelClasses(), className)}
|
|
128
|
+
{...props}
|
|
129
|
+
/>
|
|
130
|
+
)
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
SettingsPageLayoutPanel.displayName = "SettingsPageLayoutPanel"
|
|
134
|
+
|
|
135
|
+
const SettingsPageLayoutPanelHeader = ({
|
|
136
|
+
ref,
|
|
137
|
+
className,
|
|
138
|
+
...props
|
|
139
|
+
}: SettingsPageLayoutPanelHeaderProps) => {
|
|
140
|
+
return <SettingsPanelHeader ref={ref} className={className} {...props} />
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
SettingsPageLayoutPanelHeader.displayName = "SettingsPageLayoutPanelHeader"
|
|
144
|
+
|
|
145
|
+
const SettingsPageLayoutPanelTitle = ({
|
|
146
|
+
ref,
|
|
147
|
+
className,
|
|
148
|
+
...props
|
|
149
|
+
}: SettingsPageLayoutPanelTitleProps) => {
|
|
150
|
+
return <SettingsPanelTitle ref={ref} className={className} {...props} />
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
SettingsPageLayoutPanelTitle.displayName = "SettingsPageLayoutPanelTitle"
|
|
154
|
+
|
|
155
|
+
const SettingsPageLayoutPanelDescription = ({
|
|
156
|
+
ref,
|
|
157
|
+
className,
|
|
158
|
+
...props
|
|
159
|
+
}: SettingsPageLayoutPanelDescriptionProps) => {
|
|
160
|
+
return <SettingsPanelDescription ref={ref} className={className} {...props} />
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
SettingsPageLayoutPanelDescription.displayName =
|
|
164
|
+
"SettingsPageLayoutPanelDescription"
|
|
165
|
+
|
|
166
|
+
const SettingsPageLayoutPanelContent = ({
|
|
167
|
+
ref,
|
|
168
|
+
className,
|
|
169
|
+
...props
|
|
170
|
+
}: SettingsPageLayoutPanelContentProps) => {
|
|
171
|
+
return <SettingsPanelContent ref={ref} className={className} {...props} />
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
SettingsPageLayoutPanelContent.displayName = "SettingsPageLayoutPanelContent"
|
|
175
|
+
|
|
176
|
+
const SettingsPageLayoutPanelFooter = ({
|
|
177
|
+
ref,
|
|
178
|
+
className,
|
|
179
|
+
...props
|
|
180
|
+
}: SettingsPageLayoutPanelFooterProps) => {
|
|
181
|
+
return <SettingsPanelFooter ref={ref} className={className} {...props} />
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
SettingsPageLayoutPanelFooter.displayName = "SettingsPageLayoutPanelFooter"
|
|
185
|
+
|
|
186
|
+
export {
|
|
187
|
+
SettingsPageLayout,
|
|
188
|
+
SettingsPageLayoutHeader,
|
|
189
|
+
SettingsPageLayoutBody,
|
|
190
|
+
SettingsPageLayoutNav,
|
|
191
|
+
SettingsPageLayoutMain,
|
|
192
|
+
SettingsPageLayoutPanel,
|
|
193
|
+
SettingsPageLayoutPanelHeader,
|
|
194
|
+
SettingsPageLayoutPanelTitle,
|
|
195
|
+
SettingsPageLayoutPanelDescription,
|
|
196
|
+
SettingsPageLayoutPanelContent,
|
|
197
|
+
SettingsPageLayoutPanelFooter,
|
|
198
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SettingsPageLayout.types.ts
|
|
3
|
+
*
|
|
4
|
+
* Public types for the SettingsPageLayout template.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import type { HTMLAttributes, ReactNode, Ref } from "react"
|
|
8
|
+
import type { PageHeaderProps } from "@/components/blocks/PageHeader"
|
|
9
|
+
import type {
|
|
10
|
+
SettingsPanelContentProps,
|
|
11
|
+
SettingsPanelDescriptionProps,
|
|
12
|
+
SettingsPanelFooterProps,
|
|
13
|
+
SettingsPanelHeaderProps,
|
|
14
|
+
SettingsPanelProps,
|
|
15
|
+
SettingsPanelTitleProps,
|
|
16
|
+
} from "@/components/blocks/SettingsPanel"
|
|
17
|
+
|
|
18
|
+
export interface SettingsPageLayoutProps extends HTMLAttributes<HTMLDivElement> {
|
|
19
|
+
ref?: Ref<HTMLDivElement>
|
|
20
|
+
className?: string
|
|
21
|
+
children?: ReactNode
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export type SettingsPageLayoutHeaderProps = PageHeaderProps
|
|
25
|
+
|
|
26
|
+
export interface SettingsPageLayoutBodyProps extends HTMLAttributes<HTMLDivElement> {
|
|
27
|
+
ref?: Ref<HTMLDivElement>
|
|
28
|
+
className?: string
|
|
29
|
+
children?: ReactNode
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export interface SettingsPageLayoutNavProps extends HTMLAttributes<HTMLDivElement> {
|
|
33
|
+
ref?: Ref<HTMLDivElement>
|
|
34
|
+
className?: string
|
|
35
|
+
children?: ReactNode
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export interface SettingsPageLayoutMainProps extends HTMLAttributes<HTMLDivElement> {
|
|
39
|
+
ref?: Ref<HTMLDivElement>
|
|
40
|
+
className?: string
|
|
41
|
+
children?: ReactNode
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export type SettingsPageLayoutPanelProps = SettingsPanelProps
|
|
45
|
+
|
|
46
|
+
export type SettingsPageLayoutPanelHeaderProps = SettingsPanelHeaderProps
|
|
47
|
+
|
|
48
|
+
export type SettingsPageLayoutPanelTitleProps = SettingsPanelTitleProps
|
|
49
|
+
|
|
50
|
+
export type SettingsPageLayoutPanelDescriptionProps =
|
|
51
|
+
SettingsPanelDescriptionProps
|
|
52
|
+
|
|
53
|
+
export type SettingsPageLayoutPanelContentProps = SettingsPanelContentProps
|
|
54
|
+
|
|
55
|
+
export type SettingsPageLayoutPanelFooterProps = SettingsPanelFooterProps
|