@cxxi-lab/hub-ui 0.0.0-stage → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/fonts/MerriweatherSans/MerriweatherSans-Bold.woff +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-Bold.woff2 +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-BoldItalic.woff +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-BoldItalic.woff2 +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-ExtraBold.woff +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-ExtraBold.woff2 +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-ExtraBoldItalic.woff +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-ExtraBoldItalic.woff2 +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-Italic.woff +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-Italic.woff2 +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-Light.woff +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-Light.woff2 +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-LightItalic.woff +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-LightItalic.woff2 +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-Medium.woff +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-Medium.woff2 +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-MediumItalic.woff +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-MediumItalic.woff2 +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-Regular.woff +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-Regular.woff2 +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-SemiBold.woff +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-SemiBold.woff2 +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-SemiBoldItalic.woff +0 -0
- package/fonts/MerriweatherSans/MerriweatherSans-SemiBoldItalic.woff2 +0 -0
- package/fonts/Sofia/Sofia-Regular.woff +0 -0
- package/fonts/Sofia/Sofia-Regular.woff2 +0 -0
- package/package.json +44 -5
- package/src/Brand/Brand.tsx +23 -0
- package/src/Brand/Brand.types.ts +6 -0
- package/src/Brand/Brand.variants.ts +9 -0
- package/src/Brand/HubLogo.tsx +22 -0
- package/src/Brand/index.ts +2 -0
- package/src/back.ts +52 -0
- package/src/buttons/Button/Button.tsx +38 -0
- package/src/buttons/Button/Button.types.ts +18 -0
- package/src/buttons/Button/Button.variants.ts +36 -0
- package/src/buttons/Button/index.ts +2 -0
- package/src/buttons/FavButton/FavButton.tsx +29 -0
- package/src/buttons/FavButton/FavButton.types.ts +10 -0
- package/src/buttons/FavButton/FavButton.variants.ts +12 -0
- package/src/buttons/FavButton/index.ts +2 -0
- package/src/buttons/IconButton/IconButton.tsx +40 -0
- package/src/buttons/IconButton/IconButton.types.ts +23 -0
- package/src/buttons/IconButton/IconButton.variants.ts +56 -0
- package/src/buttons/IconButton/index.ts +2 -0
- package/src/buttons/index.ts +3 -0
- package/src/contexts/FormContext.tsx +57 -0
- package/src/forms/CheckboxField/Checkbox.tsx +17 -0
- package/src/forms/CheckboxField/CheckboxField.tsx +39 -0
- package/src/forms/CheckboxField/CheckboxField.types.ts +5 -0
- package/src/forms/CheckboxField/CheckboxField.variants.ts +36 -0
- package/src/forms/CheckboxField/index.ts +3 -0
- package/src/forms/DropdownField/DropdownField.tsx +72 -0
- package/src/forms/DropdownField/DropdownField.types.ts +11 -0
- package/src/forms/DropdownField/DropdownField.variants.ts +37 -0
- package/src/forms/DropdownField/index.ts +2 -0
- package/src/forms/Form/Form.tsx +41 -0
- package/src/forms/Form/Form.types.ts +11 -0
- package/src/forms/Form/Form.variants.ts +8 -0
- package/src/forms/Form/index.ts +2 -0
- package/src/forms/FormField/FormField.tsx +26 -0
- package/src/forms/FormField/FormField.types.ts +10 -0
- package/src/forms/FormField/FormField.variants.ts +44 -0
- package/src/forms/FormField/index.ts +3 -0
- package/src/forms/InputField/InputField.tsx +33 -0
- package/src/forms/InputField/InputField.types.ts +14 -0
- package/src/forms/InputField/InputField.variants.ts +14 -0
- package/src/forms/InputField/index.ts +2 -0
- package/src/forms/SpoilerField/SpoilerField.tsx +48 -0
- package/src/forms/SpoilerField/SpoilerField.types.ts +8 -0
- package/src/forms/SpoilerField/SpoilerField.variants.ts +31 -0
- package/src/forms/SpoilerField/index.ts +2 -0
- package/src/forms/SwitchField/ChoiceSwitch.tsx +43 -0
- package/src/forms/SwitchField/Switch.tsx +18 -0
- package/src/forms/SwitchField/SwitchField.tsx +43 -0
- package/src/forms/SwitchField/SwitchField.types.ts +5 -0
- package/src/forms/SwitchField/SwitchField.variants.ts +62 -0
- package/src/forms/SwitchField/index.ts +4 -0
- package/src/forms/TagsField/TagsField.tsx +109 -0
- package/src/forms/TagsField/TagsField.types.ts +7 -0
- package/src/forms/TagsField/TagsField.variants.ts +51 -0
- package/src/forms/TagsField/index.ts +2 -0
- package/src/forms/TextareaField/TextareaField.tsx +33 -0
- package/src/forms/TextareaField/TextareaField.types.ts +9 -0
- package/src/forms/TextareaField/TextareaField.variants.ts +14 -0
- package/src/forms/TextareaField/index.ts +2 -0
- package/src/forms/UploadField/UploadField.tsx +70 -0
- package/src/forms/UploadField/UploadField.types.ts +7 -0
- package/src/forms/UploadField/UploadField.variants.ts +23 -0
- package/src/forms/UploadField/index.ts +2 -0
- package/src/forms/index.ts +10 -0
- package/src/index.ts +15 -0
- package/src/menus/Dropdown/Dropdown.tsx +39 -0
- package/src/menus/Dropdown/Dropdown.types.ts +17 -0
- package/src/menus/Dropdown/Dropdown.variants.ts +44 -0
- package/src/menus/Dropdown/index.ts +2 -0
- package/src/menus/index.ts +1 -0
- package/src/modals/ConfirmationModal/ConfirmationModal.tsx +44 -0
- package/src/modals/ConfirmationModal/ConfirmationModal.types.ts +14 -0
- package/src/modals/ConfirmationModal/ConfirmationModal.variants.ts +6 -0
- package/src/modals/ConfirmationModal/index.ts +2 -0
- package/src/modals/FormModal/FormModal.tsx +46 -0
- package/src/modals/FormModal/FormModal.types.ts +14 -0
- package/src/modals/FormModal/FormModal.variants.ts +5 -0
- package/src/modals/FormModal/index.ts +2 -0
- package/src/modals/InfoModal/InfoModal.tsx +21 -0
- package/src/modals/InfoModal/InfoModal.types.ts +10 -0
- package/src/modals/InfoModal/InfoModal.variants.ts +6 -0
- package/src/modals/InfoModal/index.ts +2 -0
- package/src/modals/Modal/Modal.tsx +34 -0
- package/src/modals/Modal/Modal.types.ts +10 -0
- package/src/modals/Modal/Modal.variants.ts +48 -0
- package/src/modals/Modal/index.ts +2 -0
- package/src/modals/index.ts +4 -0
- package/src/navs/BreadCrumb/BreadCrumb.tsx +19 -0
- package/src/navs/BreadCrumb/BreadCrumb.types.ts +11 -0
- package/src/navs/BreadCrumb/BreadCrumb.variants.ts +7 -0
- package/src/navs/BreadCrumb/index.ts +2 -0
- package/src/navs/index.ts +1 -0
- package/src/tables/Table/Table.tsx +6 -0
- package/src/tables/Table/Table.types.ts +6 -0
- package/src/tables/Table/Table.variants.ts +5 -0
- package/src/tables/Table/index.ts +2 -0
- package/src/tables/TableCell/TableCell.tsx +27 -0
- package/src/tables/TableCell/TableCell.types.ts +9 -0
- package/src/tables/TableCell/TableCell.variants.ts +26 -0
- package/src/tables/TableCell/index.ts +2 -0
- package/src/tables/TableFootGroup/TableFootGroup.tsx +10 -0
- package/src/tables/TableFootGroup/TableFootGroup.variants.ts +6 -0
- package/src/tables/TableFootGroup/index.ts +1 -0
- package/src/tables/TableHead/TableHead.tsx +22 -0
- package/src/tables/TableHead/TableHead.types.ts +9 -0
- package/src/tables/TableHead/TableHead.variants.ts +16 -0
- package/src/tables/TableHead/index.ts +2 -0
- package/src/tables/TableHeadGroup/TableHeadGroup.tsx +10 -0
- package/src/tables/TableHeadGroup/TableHeadGroup.variants.ts +6 -0
- package/src/tables/TableHeadGroup/index.ts +1 -0
- package/src/tables/TableRow/TableRow.tsx +7 -0
- package/src/tables/TableRow/TableRow.types.ts +7 -0
- package/src/tables/TableRow/TableRow.variants.ts +12 -0
- package/src/tables/TableRow/index.ts +2 -0
- package/src/tables/TableRowGroup/TableRowGroup.tsx +6 -0
- package/src/tables/TableRowGroup/TableRowGroup.variants.ts +5 -0
- package/src/tables/TableRowGroup/index.ts +1 -0
- package/src/tables/index.ts +7 -0
- package/src/utils/index.ts +4 -0
- package/src/utils/snakeCase.ts +6 -0
- package/src/utils/useClickOutside.ts +16 -0
- package/src/utils/useMediaQuery.ts +11 -0
- package/src/utils/withLoading.ts +13 -0
- package/styles/fonts.css +116 -0
- package/styles/theme.css +78 -0
- package/README.md +0 -3
package/styles/fonts.css
ADDED
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
@font-face {
|
|
2
|
+
font-family: 'Sofia';
|
|
3
|
+
src: url('../fonts/Sofia/Sofia-Regular.woff2') format('woff2'),
|
|
4
|
+
url('../fonts/Sofia/Sofia-Regular.woff') format('woff');
|
|
5
|
+
font-weight: normal;
|
|
6
|
+
font-style: normal;
|
|
7
|
+
font-display: swap;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
@font-face {
|
|
11
|
+
font-family: 'Merriweather Sans';
|
|
12
|
+
src: url('../fonts/MerriweatherSans/MerriweatherSans-Light.woff2') format('woff2'),
|
|
13
|
+
url('../fonts/MerriweatherSans/MerriweatherSans-Light.woff') format('woff');
|
|
14
|
+
font-weight: 300;
|
|
15
|
+
font-style: normal;
|
|
16
|
+
font-display: swap;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
@font-face {
|
|
20
|
+
font-family: 'Merriweather Sans';
|
|
21
|
+
src: url('../fonts/MerriweatherSans/MerriweatherSans-LightItalic.woff2') format('woff2'),
|
|
22
|
+
url('../fonts/MerriweatherSans/MerriweatherSans-LightItalic.woff') format('woff');
|
|
23
|
+
font-weight: 300;
|
|
24
|
+
font-style: italic;
|
|
25
|
+
font-display: swap;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
@font-face {
|
|
29
|
+
font-family: 'Merriweather Sans';
|
|
30
|
+
src: url('../fonts/MerriweatherSans/MerriweatherSans-Regular.woff2') format('woff2'),
|
|
31
|
+
url('../fonts/MerriweatherSans/MerriweatherSans-Regular.woff') format('woff');
|
|
32
|
+
font-weight: normal;
|
|
33
|
+
font-style: normal;
|
|
34
|
+
font-display: swap;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
@font-face {
|
|
38
|
+
font-family: 'Merriweather Sans';
|
|
39
|
+
src: url('../fonts/MerriweatherSans/MerriweatherSans-Italic.woff2') format('woff2'),
|
|
40
|
+
url('../fonts/MerriweatherSans/MerriweatherSans-Italic.woff') format('woff');
|
|
41
|
+
font-weight: normal;
|
|
42
|
+
font-style: italic;
|
|
43
|
+
font-display: swap;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
@font-face {
|
|
47
|
+
font-family: 'Merriweather Sans';
|
|
48
|
+
src: url('../fonts/MerriweatherSans/MerriweatherSans-Medium.woff2') format('woff2'),
|
|
49
|
+
url('../fonts/MerriweatherSans/MerriweatherSans-Medium.woff') format('woff');
|
|
50
|
+
font-weight: 500;
|
|
51
|
+
font-style: normal;
|
|
52
|
+
font-display: swap;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
@font-face {
|
|
56
|
+
font-family: 'Merriweather Sans';
|
|
57
|
+
src: url('../fonts/MerriweatherSans/MerriweatherSans-MediumItalic.woff2') format('woff2'),
|
|
58
|
+
url('../fonts/MerriweatherSans/MerriweatherSans-MediumItalic.woff') format('woff');
|
|
59
|
+
font-weight: 500;
|
|
60
|
+
font-style: italic;
|
|
61
|
+
font-display: swap;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
@font-face {
|
|
65
|
+
font-family: 'Merriweather Sans';
|
|
66
|
+
src: url('../fonts/MerriweatherSans/MerriweatherSans-SemiBold.woff2') format('woff2'),
|
|
67
|
+
url('../fonts/MerriweatherSans/MerriweatherSans-SemiBold.woff') format('woff');
|
|
68
|
+
font-weight: 600;
|
|
69
|
+
font-style: normal;
|
|
70
|
+
font-display: swap;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
@font-face {
|
|
74
|
+
font-family: 'Merriweather Sans';
|
|
75
|
+
src: url('../fonts/MerriweatherSans/MerriweatherSans-SemiBoldItalic.woff2') format('woff2'),
|
|
76
|
+
url('../fonts/MerriweatherSans/MerriweatherSans-SemiBoldItalic.woff') format('woff');
|
|
77
|
+
font-weight: 600;
|
|
78
|
+
font-style: italic;
|
|
79
|
+
font-display: swap;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
@font-face {
|
|
83
|
+
font-family: 'Merriweather Sans';
|
|
84
|
+
src: url('../fonts/MerriweatherSans/MerriweatherSans-Bold.woff2') format('woff2'),
|
|
85
|
+
url('../fonts/MerriweatherSans/MerriweatherSans-Bold.woff') format('woff');
|
|
86
|
+
font-weight: bold;
|
|
87
|
+
font-style: normal;
|
|
88
|
+
font-display: swap;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
@font-face {
|
|
92
|
+
font-family: 'Merriweather Sans';
|
|
93
|
+
src: url('../fonts/MerriweatherSans/MerriweatherSans-BoldItalic.woff2') format('woff2'),
|
|
94
|
+
url('../fonts/MerriweatherSans/MerriweatherSans-BoldItalic.woff') format('woff');
|
|
95
|
+
font-weight: bold;
|
|
96
|
+
font-style: italic;
|
|
97
|
+
font-display: swap;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
@font-face {
|
|
101
|
+
font-family: 'Merriweather Sans';
|
|
102
|
+
src: url('../fonts/MerriweatherSans/MerriweatherSans-ExtraBold.woff2') format('woff2'),
|
|
103
|
+
url('../fonts/MerriweatherSans/MerriweatherSans-ExtraBold.woff') format('woff');
|
|
104
|
+
font-weight: 800;
|
|
105
|
+
font-style: normal;
|
|
106
|
+
font-display: swap;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
@font-face {
|
|
110
|
+
font-family: 'Merriweather Sans';
|
|
111
|
+
src: url('../fonts/MerriweatherSans/MerriweatherSans-ExtraBoldItalic.woff2') format('woff2'),
|
|
112
|
+
url('../fonts/MerriweatherSans/MerriweatherSans-ExtraBoldItalic.woff') format('woff');
|
|
113
|
+
font-weight: 800;
|
|
114
|
+
font-style: italic;
|
|
115
|
+
font-display: swap;
|
|
116
|
+
}
|
package/styles/theme.css
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* The design tokens and custom utilities, shared by the app (index.css) and every module
|
|
3
|
+
* (modules/<id>/module.css, through @reference: nothing is emitted twice). The tokens are static:
|
|
4
|
+
* the app emits them all as variables, so a module's utilities find the ones the app itself does
|
|
5
|
+
* not use.
|
|
6
|
+
*/
|
|
7
|
+
@import "tailwindcss/theme.css" layer(theme);
|
|
8
|
+
@plugin 'tailwind-scrollbar';
|
|
9
|
+
|
|
10
|
+
@theme static {
|
|
11
|
+
--font-display: "Merriweather Sans";
|
|
12
|
+
--font-accent: "Sofia";
|
|
13
|
+
|
|
14
|
+
--color-*: initial;
|
|
15
|
+
|
|
16
|
+
--color-white: #fff;
|
|
17
|
+
--color-black: #000;
|
|
18
|
+
--color-black-overlay: oklch(18.09% 0.0052 248.12 / 60%);
|
|
19
|
+
|
|
20
|
+
--color-steel-100: oklch(68.29% 0.0292 249.97);
|
|
21
|
+
--color-steel-300: oklch(60.6% 0.0339 249.89);
|
|
22
|
+
--color-steel-500: oklch(47.78% 0.0336 254.43);
|
|
23
|
+
--color-steel-700: oklch(34.97% 0.0333 258.98);
|
|
24
|
+
--color-steel-800: oklch(27.58% 0.0142 261.69);
|
|
25
|
+
--color-steel-900: oklch(24.26% 0.0105 260.69);
|
|
26
|
+
--color-steel-950: oklch(24.54% 0.0096 248.22);
|
|
27
|
+
/* the darkest chrome: the status bar along the bottom */
|
|
28
|
+
--color-steel-1000: oklch(16% 0.01 255);
|
|
29
|
+
|
|
30
|
+
/*
|
|
31
|
+
* Clickable surfaces (cards, buttons): a hairline shadow at rest; on hover, a steel outline and a
|
|
32
|
+
* lift; focused from the keyboard, a primary outline.
|
|
33
|
+
*/
|
|
34
|
+
--shadow-raised: 0 0 0 1px #00000000, 0 1px 1px #03040480, 0 0 1px #03040480;
|
|
35
|
+
--shadow-raised-hover: 0 0 0 1px #39424a, 0 8px 12px #0304045c, 0 0 1px 1px #03040480;
|
|
36
|
+
--shadow-raised-focus: 0 0 0 1px var(--color-primary-500), 0 8px 12px #0304045c;
|
|
37
|
+
|
|
38
|
+
--color-primary-300: oklch(77.48% 0.1158 256.78);
|
|
39
|
+
--color-primary-500: oklch(69.57% 0.1612 257.18);
|
|
40
|
+
--color-primary-700: oklch(28.69% 0.0455 257.84);
|
|
41
|
+
|
|
42
|
+
--color-red-100: oklch(78.26% 0.1224 24.48);
|
|
43
|
+
--color-red-300: oklch(68% 0.2092 24.48);
|
|
44
|
+
--color-red-500: oklch(61.84% 0.1924 28.13);
|
|
45
|
+
|
|
46
|
+
--color-product-blue: oklch(64.69% 0.1902 257.72);
|
|
47
|
+
--color-product-red: var(--color-red-500);
|
|
48
|
+
--color-product-purple: oklch(65.49% 0.1527 288.9);
|
|
49
|
+
--color-product-yellow: oklch(86% 0.1524 91.88);
|
|
50
|
+
--color-product-lightblue: oklch(71.56% 0.1125 223.84);
|
|
51
|
+
--color-product-green: oklch(59.57% 0.1242 160.19);
|
|
52
|
+
--color-product-pink: oklch(72% 0.18 5);
|
|
53
|
+
--color-product-orange: oklch(70% 0.17 50);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
@utility pretty-scrollbar {
|
|
57
|
+
@apply scrollbar-thin scrollbar-thumb-steel-700 scrollbar-track-steel-800 overflow-y-auto;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
@utility brand-gradient {
|
|
61
|
+
background: linear-gradient(0deg, var(--color-primary-300), var(--color-primary-500));
|
|
62
|
+
-webkit-background-clip: text;
|
|
63
|
+
-webkit-text-fill-color: transparent;
|
|
64
|
+
background-clip: text;
|
|
65
|
+
color: transparent;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
@utility shadow {
|
|
69
|
+
box-shadow: 0px 0px 0px 1px #00000000, 0px 1px 1px #03040480, 0px 0px 1px #03040480;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
@utility shadow-hovered {
|
|
73
|
+
box-shadow: rgb(57, 66, 74) 0px 0px 0px 1px, rgba(3, 4, 4, 0.36) 0px 8px 12px, rgba(3, 4, 4, 0.5) 0px 0px 1px 1px;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
@utility shadow-out {
|
|
77
|
+
box-shadow: rgba(3, 4, 4, 0.36) 0px 8px 12px;
|
|
78
|
+
}
|
package/README.md
DELETED