@sikka/hawa 0.0.156 → 0.0.158

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sikka/hawa",
3
- "version": "0.0.156",
3
+ "version": "0.0.158",
4
4
  "description": "UI Kit",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.es.js",
@@ -58,6 +58,7 @@ type SignUpFormTypes = {
58
58
  errorTitle: any
59
59
  errorText: any
60
60
  signUpFields: any[]
61
+ isLoading?: boolean
61
62
  }
62
63
 
63
64
  export const SignUpForm: React.FunctionComponent<SignUpFormTypes> = (props) => {
@@ -233,7 +234,7 @@ export const SignUpForm: React.FunctionComponent<SignUpFormTypes> = (props) => {
233
234
  </div>
234
235
  )}
235
236
  {props.showTermsOption && (
236
- <div className="py-2">
237
+ <div>
237
238
  <Controller
238
239
  control={control}
239
240
  name="terms_accepted"
@@ -241,7 +242,10 @@ export const SignUpForm: React.FunctionComponent<SignUpFormTypes> = (props) => {
241
242
  <HawaCheckbox
242
243
  id="terms_accepted"
243
244
  helperText={errors.terms_accepted?.message}
244
- onChange={field.onChange}
245
+ onChange={(e) => {
246
+ console.log("changing ", e)
247
+ field.onChange(e)
248
+ }}
245
249
  label={
246
250
  <span>
247
251
  {props.texts.iAcceptText}{" "}
@@ -274,7 +278,12 @@ export const SignUpForm: React.FunctionComponent<SignUpFormTypes> = (props) => {
274
278
  />
275
279
  </div>
276
280
  )}
277
- <HawaButton color="primary" width="full" type="submit">
281
+ <HawaButton
282
+ isLoading={props.isLoading}
283
+ color="primary"
284
+ width="full"
285
+ type="submit"
286
+ >
278
287
  {props.texts.signUpText}
279
288
  </HawaButton>
280
289
  </form>
@@ -12,7 +12,7 @@ export const EmptyState: React.FunctionComponent<TEmptyState> = ({
12
12
  return (
13
13
  <HawaContainer variant={variant} centered={true}>
14
14
  <div className="flex flex-col items-center justify-center text-center dark:text-white">
15
- <div className="flex h-10 w-10 flex-col items-center justify-center rounded-3xl bg-primary-400 text-6xl font-bold">
15
+ <div className="flex h-10 w-10 flex-col items-center justify-center rounded-3xl bg-buttonPrimary-lighter text-6xl font-bold">
16
16
  <FaCheck size={20} />
17
17
  </div>
18
18
  <div className="m-2 text-xl font-bold">You're all caught up</div>
@@ -12,7 +12,7 @@ interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
12
12
  isLoading?: boolean
13
13
  }
14
14
 
15
- const baseStyles = "font-medium rounded-lg"
15
+ const baseStyles = "font-medium rounded-lg transition-all"
16
16
 
17
17
  const sizeStyles = {
18
18
  small: "text-xs px-2.5 py-1.5",
@@ -34,16 +34,18 @@ const variantStyles = {
34
34
 
35
35
  const colorStyles = {
36
36
  contained: {
37
- default: "text-neutral-900 hover:bg-gray-300 bg-buttonPrimary-default text-white",
37
+ default:
38
+ "text-neutral-900 hover:bg-buttonPrimary-darker bg-buttonPrimary-default text-white",
38
39
  primary:
39
40
  "text-white bg-buttonPrimary-default hover:bg-buttonPrimary-darker transition-all",
40
41
  secondary:
41
- "text-neutral-900 bg-buttonPrimary-default hover:text-white hover:bg-secondary-700",
42
+ "text-neutral-900 bg-buttonSecondary-default hover:text-white hover:bg-buttonSecondary-darker",
42
43
  },
43
44
  outlined: {
44
45
  default: "text-gray-600 border-gray-600 hover:bg-gray-200",
45
46
  primary: "text-black hover:bg-gray-50",
46
- secondary: "text-secondary-800 border-secondary-800 hover:bg-secondary-100",
47
+ secondary:
48
+ "text-secondary-800 border-secondary-800 hover:bg-buttonSecondary-darker hover:text-white",
47
49
  },
48
50
  }
49
51
 
@@ -1,40 +1,45 @@
1
- import React from "react"
1
+ import React, { useEffect, useState } from "react"
2
2
 
3
3
  type TCheckBoxTypes = {
4
4
  centered?: boolean
5
5
  label?: any
6
6
  helperText?: any
7
7
  id: string
8
- onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void
8
+ // onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void
9
+ onChange?: (e) => void
9
10
  }
10
11
 
11
12
  export const HawaCheckbox: React.FunctionComponent<TCheckBoxTypes> = (
12
13
  props
13
14
  ) => {
15
+ const [val, setVal] = useState(false)
16
+
17
+ useEffect(() => {
18
+ props.onChange(val)
19
+ }, [val])
14
20
  return (
15
21
  <div
16
22
  className={
17
23
  props.centered
18
24
  ? "flex h-full items-center justify-center"
19
- : "flex h-full items-start"
25
+ : "flex h-full items-start "
20
26
  }
21
- // onClick={(e: any) => props.onChange(e)}
22
27
  >
23
28
  <input
24
29
  type="checkbox"
25
- value=""
26
- onChange={(e) => props.onChange(e)}
27
- className="mt-0.5 rounded border-gray-300 bg-gray-100 text-blue-600 focus:ring-2 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:ring-offset-gray-800 dark:focus:ring-blue-600"
30
+ checked={val}
31
+ onChange={(e) => setVal(e.target.checked)}
28
32
  id={props.id}
29
33
  aria-label={props.label}
34
+ className="mt-3 rounded border-gray-300 bg-gray-100 text-blue-600 focus:ring-2 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:ring-offset-gray-800 dark:focus:ring-blue-600"
30
35
  />
31
36
  {(props.label || props.helperText) && (
32
- <div className=" flex flex-col">
37
+ <div
38
+ className=" flex cursor-pointer flex-col py-2"
39
+ onClick={(e) => setVal(!val)}
40
+ >
33
41
  {props.label && (
34
- <label
35
- htmlFor={props.id}
36
- className="mx-2 text-sm font-medium text-gray-900 dark:text-gray-300"
37
- >
42
+ <label className="mx-2 text-sm font-medium text-gray-900 dark:text-gray-300">
38
43
  {props.label}
39
44
  </label>
40
45
  )}
@@ -150,7 +150,7 @@ export const HawaLogoButton: React.FunctionComponent<LogoButtonTypes> = (
150
150
  <button
151
151
  style={{ direction: isArabic ? "rtl" : "ltr" }}
152
152
  onClick={props.onClick}
153
- className="my-2 flex h-11 w-full flex-row justify-center rounded-xl bg-white hover:ring-1 hover:ring-buttonPrimary-default hover:brightness-90 align-middle"
153
+ className="transition-all my-2 flex h-11 w-full flex-row justify-center rounded-xl bg-white hover:ring-1 hover:ring-buttonPrimary-default hover:brightness-90 align-middle"
154
154
  >
155
155
  <div className="flex h-full flex-row items-center justify-end">
156
156
  {logoElement}
@@ -93,7 +93,7 @@ export const HawaMenu: React.FunctionComponent<TMenuTypes> = ({
93
93
  return (
94
94
  <ul
95
95
  key={o}
96
- className="py-1 bg-layout-1200 text-sm text-gray-700 dark:text-gray-200"
96
+ className="bg-layout-1200 py-1 text-sm text-gray-700 dark:text-gray-200"
97
97
  >
98
98
  {group?.map((item) => {
99
99
  return (
@@ -101,7 +101,7 @@ export const HawaMenu: React.FunctionComponent<TMenuTypes> = ({
101
101
  onClick={(e) => item.action(e, item.label)}
102
102
  className={
103
103
  item.isButton
104
- ? "mx-1 my-1 flex cursor-pointer flex-row items-center rounded-lg bg-primary-500 py-2 px-4 text-white hover:bg-primary-600 rtl:flex-row-reverse dark:hover:bg-primary-600 dark:hover:text-white"
104
+ ? "mx-1 my-1 flex cursor-pointer flex-row items-center rounded-lg bg-buttonPrimary-default py-2 px-4 text-white hover:bg-buttonPrimary-darker rtl:flex-row-reverse dark:hover:bg-buttonPrimary-darker dark:hover:text-white"
105
105
  : "mx-1 flex cursor-pointer flex-row items-center rounded-lg py-2 px-4 hover:bg-gray-200 rtl:flex-row-reverse dark:hover:bg-gray-600 dark:hover:text-white"
106
106
  }
107
107
  >
@@ -15,7 +15,7 @@ export const HawaStats: React.FunctionComponent<StatTypes> = (props) => {
15
15
  "flex flex-col gap-1 rounded-lg p-4 text-sm h-fit max-h-fit"
16
16
  let statStyles = {
17
17
  plain: "",
18
- contained: "bg-primary-200 w-fit",
18
+ contained: "bg-layoutPrimary-default w-fit",
19
19
  outlined: "ring-2 w-fit",
20
20
  }
21
21
  return (
@@ -9,7 +9,7 @@ type TabsTypes = {
9
9
  export const HawaTabs: React.FunctionComponent<TabsTypes> = (props) => {
10
10
  const [selectedOption, setSelectedOption] = useState(props.defaultValue)
11
11
  let activeTabStyle =
12
- "inline-block py-2 px-4 text-white bg-primary-500 rounded-lg rounded-br-none rounded-bl-none active"
12
+ "inline-block py-2 px-4 text-white bg-buttonPrimary-default rounded-lg rounded-br-none rounded-bl-none active"
13
13
  let inactiveTabStyle =
14
14
  "inline-block py-2 px-4 rounded-lg rounded-br-none rounded-bl-none hover:text-gray-900 hover:bg-gray-100 dark:hover:bg-gray-800 dark:hover:text-white"
15
15
 
@@ -17,12 +17,12 @@ export const HawaTimeline: React.FunctionComponent<THawaTimeline> = ({
17
17
  }
18
18
  let lineStyles = {
19
19
  vertical: {
20
- default: "w-1 h-32 rounded-lg bg-primary-200 ml-6 my-2",
21
- selected: "w-1 h-32 rounded-lg bg-primary-400 ml-6 my-2",
20
+ default: "w-1 h-32 rounded-lg bg-buttonPrimary-default ml-6 my-2",
21
+ selected: "w-1 h-32 rounded-lg bg-buttonPrimary-default ml-6 my-2",
22
22
  },
23
23
  horizontal: {
24
- default: "h-0.5 w-full rounded-lg bg-primary-200",
25
- selected: "h-0.5 w-full rounded-lg bg-primary-400",
24
+ default: "h-0.5 w-full rounded-lg bg-buttonPrimary-default",
25
+ selected: "h-0.5 w-full rounded-lg bg-buttonPrimary-default",
26
26
  },
27
27
  }
28
28
  return (
@@ -72,7 +72,7 @@ const TimelineStep = (props) => (
72
72
  <div
73
73
  className={clsx(
74
74
  "m-2 mr-4 flex h-10 w-10 items-center justify-center rounded-xl ring-2 ring-primary-200 ring-offset-2",
75
- props.current ? "bg-primary-500 text-white" : "bg-primary-200"
75
+ props.current ? "bg-buttonPrimary-default text-white" : "bg-primary-200"
76
76
  )}
77
77
  >
78
78
  {props.stepNumber}
@@ -26,7 +26,7 @@ export const HawaBottomAppBar: React.FunctionComponent<BottomAppBarTypes> = (
26
26
  >
27
27
  {props.appBarContent.map((singleContent: any) => (
28
28
  <div
29
- className="m-1 flex h-full w-full flex-col items-center justify-center rounded-lg p-2 transition-all hover:cursor-pointer hover:bg-primary-600 hover:text-white"
29
+ className="m-1 flex h-full w-full flex-col items-center justify-center rounded-lg p-2 transition-all hover:cursor-pointer hover:bg-buttonPrimary-darker hover:text-white"
30
30
  onClick={singleContent.action}
31
31
  >
32
32
  <div
package/src/styles.css CHANGED
@@ -377,9 +377,12 @@ video {
377
377
  :root {
378
378
  --layout-primary: #d2cdfa;
379
379
  --layout-secondary: #d2cdfa;
380
+
380
381
  --button-primary: #4c37eb;
381
- --button-primary-darker: #cf1736;
382
- --button-secondary: #d2cdfa;
382
+ --button-primary-darker: #2e1dac;
383
+
384
+ --button-secondary: #ffc011;
385
+ --button-secondary-darker: #b48d24;
383
386
  }
384
387
  input[type="number"]::-webkit-inner-spin-button,
385
388
  input[type="number"]::-webkit-outer-spin-button {
@@ -654,11 +657,8 @@ video {
654
657
  .mb-0 {
655
658
  margin-bottom: 0px;
656
659
  }
657
- .mt-0\.5 {
658
- margin-top: 0.125rem;
659
- }
660
- .mt-0 {
661
- margin-top: 0px;
660
+ .mt-3 {
661
+ margin-top: 0.75rem;
662
662
  }
663
663
  .mt-1 {
664
664
  margin-top: 0.25rem;
@@ -702,6 +702,9 @@ video {
702
702
  .mt-5 {
703
703
  margin-top: 1.25rem;
704
704
  }
705
+ .mt-0 {
706
+ margin-top: 0px;
707
+ }
705
708
  .ml-3 {
706
709
  margin-left: 0.75rem;
707
710
  }
@@ -711,9 +714,6 @@ video {
711
714
  .mr-1 {
712
715
  margin-right: 0.25rem;
713
716
  }
714
- .mt-3 {
715
- margin-top: 0.75rem;
716
- }
717
717
  .mt-6 {
718
718
  margin-top: 1.5rem;
719
719
  }
@@ -1276,8 +1276,7 @@ video {
1276
1276
  background-color: rgb(17 24 39 / var(--tw-bg-opacity));
1277
1277
  }
1278
1278
  .bg-layoutPrimary-default {
1279
- --tw-bg-opacity: 1;
1280
- background-color: rgb(210 205 250 / var(--tw-bg-opacity));
1279
+ background-color: var(--layout-primary);
1281
1280
  }
1282
1281
  .bg-white {
1283
1282
  --tw-bg-opacity: 1;
@@ -1307,8 +1306,10 @@ video {
1307
1306
  background-color: transparent;
1308
1307
  }
1309
1308
  .bg-buttonPrimary-default {
1310
- --tw-bg-opacity: 1;
1311
- background-color: rgb(76 55 235 / var(--tw-bg-opacity));
1309
+ background-color: var(--button-primary);
1310
+ }
1311
+ .bg-buttonSecondary-default {
1312
+ background-color: var(--button-secondary);
1312
1313
  }
1313
1314
  .bg-red-200 {
1314
1315
  --tw-bg-opacity: 1;
@@ -1342,10 +1343,6 @@ video {
1342
1343
  --tw-bg-opacity: 1;
1343
1344
  background-color: rgb(238 247 252 / var(--tw-bg-opacity));
1344
1345
  }
1345
- .bg-primary-500 {
1346
- --tw-bg-opacity: 1;
1347
- background-color: rgb(61 147 249 / var(--tw-bg-opacity));
1348
- }
1349
1346
  .bg-gray-500 {
1350
1347
  --tw-bg-opacity: 1;
1351
1348
  background-color: rgb(107 114 128 / var(--tw-bg-opacity));
@@ -1362,10 +1359,6 @@ video {
1362
1359
  --tw-bg-opacity: 1;
1363
1360
  background-color: rgb(196 222 253 / var(--tw-bg-opacity));
1364
1361
  }
1365
- .bg-primary-400 {
1366
- --tw-bg-opacity: 1;
1367
- background-color: rgb(116 177 251 / var(--tw-bg-opacity));
1368
- }
1369
1362
  .bg-gray-600 {
1370
1363
  --tw-bg-opacity: 1;
1371
1364
  background-color: rgb(75 85 99 / var(--tw-bg-opacity));
@@ -1382,6 +1375,10 @@ video {
1382
1375
  --tw-bg-opacity: 1;
1383
1376
  background-color: rgb(209 213 219 / var(--tw-bg-opacity));
1384
1377
  }
1378
+ .bg-buttonPrimary-lighter {
1379
+ --tw-bg-opacity: 1;
1380
+ background-color: rgb(237 235 253 / var(--tw-bg-opacity));
1381
+ }
1385
1382
  .bg-opacity-75 {
1386
1383
  --tw-bg-opacity: 0.75;
1387
1384
  }
@@ -1845,19 +1842,12 @@ body {
1845
1842
  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
1846
1843
  }
1847
1844
 
1848
- .hover\:bg-gray-300:hover {
1849
- --tw-bg-opacity: 1;
1850
- background-color: rgb(209 213 219 / var(--tw-bg-opacity));
1851
- }
1852
-
1853
1845
  .hover\:bg-buttonPrimary-darker:hover {
1854
- --tw-bg-opacity: 1;
1855
- background-color: rgb(57 41 176 / var(--tw-bg-opacity));
1846
+ background-color: var(--button-primary-darker);
1856
1847
  }
1857
1848
 
1858
- .hover\:bg-secondary-700:hover {
1859
- --tw-bg-opacity: 1;
1860
- background-color: rgb(102 132 31 / var(--tw-bg-opacity));
1849
+ .hover\:bg-buttonSecondary-darker:hover {
1850
+ background-color: var(--button-secondary-darker);
1861
1851
  }
1862
1852
 
1863
1853
  .hover\:bg-gray-50:hover {
@@ -1865,11 +1855,6 @@ body {
1865
1855
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
1866
1856
  }
1867
1857
 
1868
- .hover\:bg-primary-600:hover {
1869
- --tw-bg-opacity: 1;
1870
- background-color: rgb(6 92 198 / var(--tw-bg-opacity));
1871
- }
1872
-
1873
1858
  .hover\:bg-blue-200:hover {
1874
1859
  --tw-bg-opacity: 1;
1875
1860
  background-color: rgb(191 219 254 / var(--tw-bg-opacity));
@@ -1932,8 +1917,7 @@ body {
1932
1917
  }
1933
1918
 
1934
1919
  .hover\:ring-buttonPrimary-default:hover {
1935
- --tw-ring-opacity: 1;
1936
- --tw-ring-color: rgb(76 55 235 / var(--tw-ring-opacity));
1920
+ --tw-ring-color: var(--button-primary);
1937
1921
  }
1938
1922
 
1939
1923
  .hover\:brightness-90:hover {
@@ -2188,9 +2172,8 @@ body {
2188
2172
  background-color: rgb(31 41 55 / var(--tw-bg-opacity));
2189
2173
  }
2190
2174
 
2191
- .dark .dark\:hover\:bg-primary-600:hover {
2192
- --tw-bg-opacity: 1;
2193
- background-color: rgb(6 92 198 / var(--tw-bg-opacity));
2175
+ .dark .dark\:hover\:bg-buttonPrimary-darker:hover {
2176
+ background-color: var(--button-primary-darker);
2194
2177
  }
2195
2178
 
2196
2179
  .dark .dark\:hover\:text-white:hover {
package/src/tailwind.css CHANGED
@@ -6,9 +6,12 @@
6
6
  :root {
7
7
  --layout-primary: #d2cdfa;
8
8
  --layout-secondary: #d2cdfa;
9
+
9
10
  --button-primary: #4c37eb;
10
- --button-primary-darker: #cf1736;
11
- --button-secondary: #d2cdfa;
11
+ --button-primary-darker: #2e1dac;
12
+
13
+ --button-secondary: #ffc011;
14
+ --button-secondary-darker: #b48d24;
12
15
  }
13
16
  input[type="number"]::-webkit-inner-spin-button,
14
17
  input[type="number"]::-webkit-outer-spin-button {