@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.
Files changed (154) hide show
  1. package/LICENSE +21 -0
  2. package/fonts/MerriweatherSans/MerriweatherSans-Bold.woff +0 -0
  3. package/fonts/MerriweatherSans/MerriweatherSans-Bold.woff2 +0 -0
  4. package/fonts/MerriweatherSans/MerriweatherSans-BoldItalic.woff +0 -0
  5. package/fonts/MerriweatherSans/MerriweatherSans-BoldItalic.woff2 +0 -0
  6. package/fonts/MerriweatherSans/MerriweatherSans-ExtraBold.woff +0 -0
  7. package/fonts/MerriweatherSans/MerriweatherSans-ExtraBold.woff2 +0 -0
  8. package/fonts/MerriweatherSans/MerriweatherSans-ExtraBoldItalic.woff +0 -0
  9. package/fonts/MerriweatherSans/MerriweatherSans-ExtraBoldItalic.woff2 +0 -0
  10. package/fonts/MerriweatherSans/MerriweatherSans-Italic.woff +0 -0
  11. package/fonts/MerriweatherSans/MerriweatherSans-Italic.woff2 +0 -0
  12. package/fonts/MerriweatherSans/MerriweatherSans-Light.woff +0 -0
  13. package/fonts/MerriweatherSans/MerriweatherSans-Light.woff2 +0 -0
  14. package/fonts/MerriweatherSans/MerriweatherSans-LightItalic.woff +0 -0
  15. package/fonts/MerriweatherSans/MerriweatherSans-LightItalic.woff2 +0 -0
  16. package/fonts/MerriweatherSans/MerriweatherSans-Medium.woff +0 -0
  17. package/fonts/MerriweatherSans/MerriweatherSans-Medium.woff2 +0 -0
  18. package/fonts/MerriweatherSans/MerriweatherSans-MediumItalic.woff +0 -0
  19. package/fonts/MerriweatherSans/MerriweatherSans-MediumItalic.woff2 +0 -0
  20. package/fonts/MerriweatherSans/MerriweatherSans-Regular.woff +0 -0
  21. package/fonts/MerriweatherSans/MerriweatherSans-Regular.woff2 +0 -0
  22. package/fonts/MerriweatherSans/MerriweatherSans-SemiBold.woff +0 -0
  23. package/fonts/MerriweatherSans/MerriweatherSans-SemiBold.woff2 +0 -0
  24. package/fonts/MerriweatherSans/MerriweatherSans-SemiBoldItalic.woff +0 -0
  25. package/fonts/MerriweatherSans/MerriweatherSans-SemiBoldItalic.woff2 +0 -0
  26. package/fonts/Sofia/Sofia-Regular.woff +0 -0
  27. package/fonts/Sofia/Sofia-Regular.woff2 +0 -0
  28. package/package.json +44 -5
  29. package/src/Brand/Brand.tsx +23 -0
  30. package/src/Brand/Brand.types.ts +6 -0
  31. package/src/Brand/Brand.variants.ts +9 -0
  32. package/src/Brand/HubLogo.tsx +22 -0
  33. package/src/Brand/index.ts +2 -0
  34. package/src/back.ts +52 -0
  35. package/src/buttons/Button/Button.tsx +38 -0
  36. package/src/buttons/Button/Button.types.ts +18 -0
  37. package/src/buttons/Button/Button.variants.ts +36 -0
  38. package/src/buttons/Button/index.ts +2 -0
  39. package/src/buttons/FavButton/FavButton.tsx +29 -0
  40. package/src/buttons/FavButton/FavButton.types.ts +10 -0
  41. package/src/buttons/FavButton/FavButton.variants.ts +12 -0
  42. package/src/buttons/FavButton/index.ts +2 -0
  43. package/src/buttons/IconButton/IconButton.tsx +40 -0
  44. package/src/buttons/IconButton/IconButton.types.ts +23 -0
  45. package/src/buttons/IconButton/IconButton.variants.ts +56 -0
  46. package/src/buttons/IconButton/index.ts +2 -0
  47. package/src/buttons/index.ts +3 -0
  48. package/src/contexts/FormContext.tsx +57 -0
  49. package/src/forms/CheckboxField/Checkbox.tsx +17 -0
  50. package/src/forms/CheckboxField/CheckboxField.tsx +39 -0
  51. package/src/forms/CheckboxField/CheckboxField.types.ts +5 -0
  52. package/src/forms/CheckboxField/CheckboxField.variants.ts +36 -0
  53. package/src/forms/CheckboxField/index.ts +3 -0
  54. package/src/forms/DropdownField/DropdownField.tsx +72 -0
  55. package/src/forms/DropdownField/DropdownField.types.ts +11 -0
  56. package/src/forms/DropdownField/DropdownField.variants.ts +37 -0
  57. package/src/forms/DropdownField/index.ts +2 -0
  58. package/src/forms/Form/Form.tsx +41 -0
  59. package/src/forms/Form/Form.types.ts +11 -0
  60. package/src/forms/Form/Form.variants.ts +8 -0
  61. package/src/forms/Form/index.ts +2 -0
  62. package/src/forms/FormField/FormField.tsx +26 -0
  63. package/src/forms/FormField/FormField.types.ts +10 -0
  64. package/src/forms/FormField/FormField.variants.ts +44 -0
  65. package/src/forms/FormField/index.ts +3 -0
  66. package/src/forms/InputField/InputField.tsx +33 -0
  67. package/src/forms/InputField/InputField.types.ts +14 -0
  68. package/src/forms/InputField/InputField.variants.ts +14 -0
  69. package/src/forms/InputField/index.ts +2 -0
  70. package/src/forms/SpoilerField/SpoilerField.tsx +48 -0
  71. package/src/forms/SpoilerField/SpoilerField.types.ts +8 -0
  72. package/src/forms/SpoilerField/SpoilerField.variants.ts +31 -0
  73. package/src/forms/SpoilerField/index.ts +2 -0
  74. package/src/forms/SwitchField/ChoiceSwitch.tsx +43 -0
  75. package/src/forms/SwitchField/Switch.tsx +18 -0
  76. package/src/forms/SwitchField/SwitchField.tsx +43 -0
  77. package/src/forms/SwitchField/SwitchField.types.ts +5 -0
  78. package/src/forms/SwitchField/SwitchField.variants.ts +62 -0
  79. package/src/forms/SwitchField/index.ts +4 -0
  80. package/src/forms/TagsField/TagsField.tsx +109 -0
  81. package/src/forms/TagsField/TagsField.types.ts +7 -0
  82. package/src/forms/TagsField/TagsField.variants.ts +51 -0
  83. package/src/forms/TagsField/index.ts +2 -0
  84. package/src/forms/TextareaField/TextareaField.tsx +33 -0
  85. package/src/forms/TextareaField/TextareaField.types.ts +9 -0
  86. package/src/forms/TextareaField/TextareaField.variants.ts +14 -0
  87. package/src/forms/TextareaField/index.ts +2 -0
  88. package/src/forms/UploadField/UploadField.tsx +70 -0
  89. package/src/forms/UploadField/UploadField.types.ts +7 -0
  90. package/src/forms/UploadField/UploadField.variants.ts +23 -0
  91. package/src/forms/UploadField/index.ts +2 -0
  92. package/src/forms/index.ts +10 -0
  93. package/src/index.ts +15 -0
  94. package/src/menus/Dropdown/Dropdown.tsx +39 -0
  95. package/src/menus/Dropdown/Dropdown.types.ts +17 -0
  96. package/src/menus/Dropdown/Dropdown.variants.ts +44 -0
  97. package/src/menus/Dropdown/index.ts +2 -0
  98. package/src/menus/index.ts +1 -0
  99. package/src/modals/ConfirmationModal/ConfirmationModal.tsx +44 -0
  100. package/src/modals/ConfirmationModal/ConfirmationModal.types.ts +14 -0
  101. package/src/modals/ConfirmationModal/ConfirmationModal.variants.ts +6 -0
  102. package/src/modals/ConfirmationModal/index.ts +2 -0
  103. package/src/modals/FormModal/FormModal.tsx +46 -0
  104. package/src/modals/FormModal/FormModal.types.ts +14 -0
  105. package/src/modals/FormModal/FormModal.variants.ts +5 -0
  106. package/src/modals/FormModal/index.ts +2 -0
  107. package/src/modals/InfoModal/InfoModal.tsx +21 -0
  108. package/src/modals/InfoModal/InfoModal.types.ts +10 -0
  109. package/src/modals/InfoModal/InfoModal.variants.ts +6 -0
  110. package/src/modals/InfoModal/index.ts +2 -0
  111. package/src/modals/Modal/Modal.tsx +34 -0
  112. package/src/modals/Modal/Modal.types.ts +10 -0
  113. package/src/modals/Modal/Modal.variants.ts +48 -0
  114. package/src/modals/Modal/index.ts +2 -0
  115. package/src/modals/index.ts +4 -0
  116. package/src/navs/BreadCrumb/BreadCrumb.tsx +19 -0
  117. package/src/navs/BreadCrumb/BreadCrumb.types.ts +11 -0
  118. package/src/navs/BreadCrumb/BreadCrumb.variants.ts +7 -0
  119. package/src/navs/BreadCrumb/index.ts +2 -0
  120. package/src/navs/index.ts +1 -0
  121. package/src/tables/Table/Table.tsx +6 -0
  122. package/src/tables/Table/Table.types.ts +6 -0
  123. package/src/tables/Table/Table.variants.ts +5 -0
  124. package/src/tables/Table/index.ts +2 -0
  125. package/src/tables/TableCell/TableCell.tsx +27 -0
  126. package/src/tables/TableCell/TableCell.types.ts +9 -0
  127. package/src/tables/TableCell/TableCell.variants.ts +26 -0
  128. package/src/tables/TableCell/index.ts +2 -0
  129. package/src/tables/TableFootGroup/TableFootGroup.tsx +10 -0
  130. package/src/tables/TableFootGroup/TableFootGroup.variants.ts +6 -0
  131. package/src/tables/TableFootGroup/index.ts +1 -0
  132. package/src/tables/TableHead/TableHead.tsx +22 -0
  133. package/src/tables/TableHead/TableHead.types.ts +9 -0
  134. package/src/tables/TableHead/TableHead.variants.ts +16 -0
  135. package/src/tables/TableHead/index.ts +2 -0
  136. package/src/tables/TableHeadGroup/TableHeadGroup.tsx +10 -0
  137. package/src/tables/TableHeadGroup/TableHeadGroup.variants.ts +6 -0
  138. package/src/tables/TableHeadGroup/index.ts +1 -0
  139. package/src/tables/TableRow/TableRow.tsx +7 -0
  140. package/src/tables/TableRow/TableRow.types.ts +7 -0
  141. package/src/tables/TableRow/TableRow.variants.ts +12 -0
  142. package/src/tables/TableRow/index.ts +2 -0
  143. package/src/tables/TableRowGroup/TableRowGroup.tsx +6 -0
  144. package/src/tables/TableRowGroup/TableRowGroup.variants.ts +5 -0
  145. package/src/tables/TableRowGroup/index.ts +1 -0
  146. package/src/tables/index.ts +7 -0
  147. package/src/utils/index.ts +4 -0
  148. package/src/utils/snakeCase.ts +6 -0
  149. package/src/utils/useClickOutside.ts +16 -0
  150. package/src/utils/useMediaQuery.ts +11 -0
  151. package/src/utils/withLoading.ts +13 -0
  152. package/styles/fonts.css +116 -0
  153. package/styles/theme.css +78 -0
  154. package/README.md +0 -3
@@ -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
+ }
@@ -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
@@ -1,3 +0,0 @@
1
- # Temporary Holding Version
2
-
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.