gd-design-library 1.0.2 → 1.2.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 (230) hide show
  1. package/README.md +2 -2
  2. package/ai/README.md +210 -16
  3. package/ai/schemas/components/Accordion.d.ts +84 -0
  4. package/ai/schemas/components/Button.d.ts +12 -0
  5. package/ai/schemas/components/ChatContainer.d.ts +0 -8
  6. package/ai/schemas/components/Column.d.ts +5 -5
  7. package/ai/schemas/components/InputFile.d.ts +17 -5
  8. package/ai/schemas/components/Menu.d.ts +37 -0
  9. package/ai/schemas/components/Row.d.ts +6 -6
  10. package/ai/schemas/components/Scroll.d.ts +7 -0
  11. package/ai/schemas/components/Typography.d.ts +0 -21
  12. package/assets/icons/account_circle.d.ts +1 -3
  13. package/assets/icons/account_circle.js +7 -14
  14. package/assets/icons/arrow-down.d.ts +2 -3
  15. package/assets/icons/arrow-down.js +6 -11
  16. package/assets/icons/arrow-forward.d.ts +1 -3
  17. package/assets/icons/arrow-forward.js +6 -13
  18. package/assets/icons/attachment.d.ts +1 -3
  19. package/assets/icons/attachment.js +7 -14
  20. package/assets/icons/check.d.ts +1 -3
  21. package/assets/icons/check.js +5 -11
  22. package/assets/icons/chevron-left.d.ts +1 -3
  23. package/assets/icons/chevron-left.js +7 -14
  24. package/assets/icons/chevron-right.d.ts +1 -3
  25. package/assets/icons/chevron-right.js +6 -13
  26. package/assets/icons/content-copy.d.ts +1 -3
  27. package/assets/icons/content-copy.js +7 -14
  28. package/assets/icons/delete_outlined.d.ts +1 -3
  29. package/assets/icons/delete_outlined.js +5 -12
  30. package/assets/icons/dot.d.ts +1 -3
  31. package/assets/icons/dot.js +5 -11
  32. package/assets/icons/error_outline.d.ts +1 -4
  33. package/assets/icons/error_outline.js +6 -18
  34. package/assets/icons/eye.d.ts +1 -3
  35. package/assets/icons/eye.js +7 -14
  36. package/assets/icons/file-copy.d.ts +1 -3
  37. package/assets/icons/file-copy.js +7 -13
  38. package/assets/icons/filter.d.ts +1 -3
  39. package/assets/icons/filter.js +6 -13
  40. package/assets/icons/folder.d.ts +1 -3
  41. package/assets/icons/folder.js +6 -13
  42. package/assets/icons/folderOpen.d.ts +1 -3
  43. package/assets/icons/folderOpen.js +7 -14
  44. package/assets/icons/home.d.ts +1 -3
  45. package/assets/icons/home.js +6 -13
  46. package/assets/icons/local_shipping.d.ts +1 -3
  47. package/assets/icons/local_shipping.js +4 -11
  48. package/assets/icons/minus.d.ts +1 -3
  49. package/assets/icons/minus.js +7 -13
  50. package/assets/icons/mobile_menu_button.d.ts +1 -3
  51. package/assets/icons/mobile_menu_button.js +7 -14
  52. package/assets/icons/paymentCard.d.ts +1 -3
  53. package/assets/icons/paymentCard.js +6 -13
  54. package/assets/icons/plus.d.ts +1 -3
  55. package/assets/icons/plus.js +5 -11
  56. package/assets/icons/portrait.d.ts +1 -3
  57. package/assets/icons/portrait.js +5 -12
  58. package/assets/icons/processing.d.ts +1 -3
  59. package/assets/icons/processing.js +6 -13
  60. package/assets/icons/ruler.d.ts +1 -3
  61. package/assets/icons/ruler.js +6 -13
  62. package/assets/icons/search.d.ts +1 -3
  63. package/assets/icons/search.js +6 -13
  64. package/assets/icons/shopping_bag.d.ts +1 -3
  65. package/assets/icons/shopping_bag.js +7 -14
  66. package/assets/icons/slash.d.ts +1 -3
  67. package/assets/icons/slash.js +6 -13
  68. package/assets/icons/star.d.ts +1 -3
  69. package/assets/icons/star.js +6 -12
  70. package/assets/icons/starOutlined.d.ts +1 -3
  71. package/assets/icons/starOutlined.js +5 -11
  72. package/assets/icons/toast_error.d.ts +1 -3
  73. package/assets/icons/toast_error.js +9 -15
  74. package/assets/icons/toast_info.d.ts +1 -3
  75. package/assets/icons/toast_info.js +7 -13
  76. package/assets/icons/toast_warning.d.ts +1 -3
  77. package/assets/icons/toast_warning.js +7 -13
  78. package/assets/icons/upload.d.ts +1 -3
  79. package/assets/icons/upload.js +6 -13
  80. package/assets/icons/volume-up.d.ts +1 -3
  81. package/assets/icons/volume-up.js +6 -13
  82. package/assets/icons/wifiTethering.d.ts +1 -3
  83. package/assets/icons/wifiTethering.js +4 -11
  84. package/components/core/Button/Button.js +30 -27
  85. package/components/core/Button/Button.types.d.ts +2 -2
  86. package/components/core/Button/ButtonStyled.js +40 -39
  87. package/components/core/Dropdown/Dropdown.d.ts +1 -1
  88. package/components/core/Dropdown/Dropdown.js +16 -16
  89. package/components/core/Dropdown/Dropdown.types.d.ts +3 -3
  90. package/components/core/Dropdown/DropdownStyled.js +13 -14
  91. package/components/core/Icon/Icon.js +41 -33
  92. package/components/core/Icon/Icon.types.d.ts +2 -1
  93. package/components/core/Icon/constants.d.ts +37 -109
  94. package/components/core/Input/Input.d.ts +1 -1
  95. package/components/core/InputFile/InputFile.d.ts +0 -32
  96. package/components/core/InputFile/InputFile.js +47 -33
  97. package/components/core/InputFile/InputFileStyled.js +24 -22
  98. package/components/core/Loader/Loader.js +19 -17
  99. package/components/core/Loader/Loader.types.d.ts +3 -1
  100. package/components/core/Loader/LoaderStyled.js +34 -30
  101. package/components/core/Menu/Menu.d.ts +2 -2
  102. package/components/core/Menu/Menu.js +113 -93
  103. package/components/core/Menu/Menu.types.d.ts +16 -11
  104. package/components/core/Menu/MenuStyled.d.ts +1 -1
  105. package/components/core/Menu/constants.js +4 -12
  106. package/components/core/Modal/Modal.js +60 -36
  107. package/components/core/Modal/ModalStyled.js +21 -22
  108. package/components/core/Scroll/Scroll.d.ts +6 -0
  109. package/components/core/Scroll/Scroll.js +53 -31
  110. package/components/core/Scroll/Scroll.types.d.ts +5 -0
  111. package/components/core/Scroll/ScrollBar.js +45 -43
  112. package/components/core/Scroll/ScrollStyled.js +46 -42
  113. package/components/core/Scroll/constants.d.ts +2 -0
  114. package/components/core/Scroll/constants.js +6 -4
  115. package/components/core/Select/Select.js +162 -134
  116. package/components/core/Select/Select.types.d.ts +2 -4
  117. package/components/core/Snackbar/Snackbar.js +60 -37
  118. package/components/core/Snackbar/Snackbar.types.d.ts +1 -2
  119. package/components/core/Snackbar/SnackbarManager.js +45 -30
  120. package/components/core/Snackbar/SnackbarStyled.d.ts +5 -5
  121. package/components/core/Snackbar/SnackbarStyled.js +111 -101
  122. package/components/core/Textarea/Textarea.d.ts +4 -0
  123. package/components/core/Tooltip/Tooltip.js +68 -44
  124. package/components/core/Tooltip/TooltipStyled.js +26 -27
  125. package/components/core/Tooltip/utils.js +47 -45
  126. package/components/core/Typography/Typography.js +18 -18
  127. package/components/core/Typography/Typography.types.d.ts +3 -3
  128. package/components/core/Typography/TypographyStyled.js +28 -29
  129. package/components/domainSpecific/Accordion/Accordion.d.ts +1 -1
  130. package/components/domainSpecific/Accordion/Accordion.js +19 -17
  131. package/components/domainSpecific/Accordion/Accordion.types.d.ts +7 -4
  132. package/components/domainSpecific/Accordion/AccordionContent/AccordionContent.d.ts +1 -1
  133. package/components/domainSpecific/Accordion/AccordionContent/AccordionContent.js +13 -12
  134. package/components/domainSpecific/Accordion/AccordionHeader/AccordionHeader.d.ts +1 -1
  135. package/components/domainSpecific/Accordion/AccordionHeader/AccordionHeader.js +15 -14
  136. package/components/domainSpecific/Accordion/AccordionItem/AccordionItem.d.ts +1 -1
  137. package/components/domainSpecific/Accordion/AccordionItem/AccordionItem.js +18 -16
  138. package/components/domainSpecific/Accordion/AccordionStyled.js +44 -35
  139. package/components/domainSpecific/Card/Card.js +31 -27
  140. package/components/domainSpecific/Card/CardTitle/constants.js +4 -4
  141. package/components/domainSpecific/Header/Header.js +4 -4
  142. package/components/domainSpecific/SearchModal/SearchModal.js +0 -1
  143. package/components/domainSpecific/SearchModal/SearchModal.types.d.ts +1 -1
  144. package/components/index.types.d.ts +1 -0
  145. package/components/layout/ChatContainer/ChatContainer.d.ts +1 -1
  146. package/components/layout/ChatContainer/ChatContainer.js +58 -41
  147. package/components/layout/ChatContainer/ChatContainer.types.d.ts +8 -5
  148. package/components/layout/ChatContainer/ChatContainerStyled.d.ts +2 -0
  149. package/components/layout/ChatContainer/ChatContainerStyled.js +105 -84
  150. package/components/layout/Column/Column.types.d.ts +3 -1
  151. package/components/layout/Column/ColumnStyled.js +23 -23
  152. package/components/layout/FlexContainer/FlexContainerStyled.js +7 -8
  153. package/components/layout/Row/Row.d.ts +1 -1
  154. package/components/layout/Row/Row.js +20 -20
  155. package/components/layout/Row/Row.types.d.ts +3 -1
  156. package/components/layout/Row/RowStyled.js +26 -26
  157. package/constants/index.d.ts +0 -1
  158. package/hooks/index.d.ts +1 -0
  159. package/hooks/useLogger/NoOpLogger.d.ts +11 -0
  160. package/hooks/useLogger/NoOpLogger.js +15 -0
  161. package/hooks/useLogger/index.d.ts +2 -0
  162. package/hooks/useLogger/useLogger.d.ts +4 -0
  163. package/hooks/useLogger/useLogger.js +27 -0
  164. package/hooks/useLogger/useLogger.types.d.ts +30 -0
  165. package/hooks/useTheme/NoOpTheme.d.ts +4050 -0
  166. package/hooks/useTheme/NoOpTheme.js +15 -0
  167. package/hooks/useTheme/useTheme.d.ts +3 -4
  168. package/hooks/useTheme/useTheme.js +62 -41
  169. package/hooks/useTheme/useTheme.types.d.ts +3 -2
  170. package/index.d.ts +4 -0
  171. package/index.js +354 -350
  172. package/llms.txt +39 -19
  173. package/package.json +1 -1
  174. package/tokens/accordion.d.ts +9 -3
  175. package/tokens/accordion.js +14 -11
  176. package/tokens/button.d.ts +17 -19
  177. package/tokens/button.js +54 -56
  178. package/tokens/card.d.ts +2 -3
  179. package/tokens/card.js +50 -53
  180. package/tokens/carousel.d.ts +2 -2
  181. package/tokens/carousel.js +8 -9
  182. package/tokens/chat.d.ts +69 -48
  183. package/tokens/chat.js +86 -68
  184. package/tokens/constants.d.ts +0 -1
  185. package/tokens/constants.js +1 -1
  186. package/tokens/defaultTheme.d.ts +199 -112
  187. package/tokens/defaultTheme.js +27 -25
  188. package/tokens/header.d.ts +1 -1
  189. package/tokens/header.js +3 -4
  190. package/tokens/index.d.ts +175 -104
  191. package/tokens/index.js +102 -101
  192. package/tokens/input.d.ts +2 -2
  193. package/tokens/input.js +25 -26
  194. package/tokens/inputfile.d.ts +1 -1
  195. package/tokens/inputfile.js +4 -4
  196. package/tokens/link.d.ts +5 -0
  197. package/tokens/loader.d.ts +3 -0
  198. package/tokens/loader.js +3 -0
  199. package/tokens/menu.d.ts +1 -0
  200. package/tokens/menu.js +1 -0
  201. package/tokens/modal.d.ts +6 -4
  202. package/tokens/modal.js +42 -60
  203. package/tokens/scroll.d.ts +19 -2
  204. package/tokens/scroll.js +23 -7
  205. package/tokens/select.d.ts +9 -7
  206. package/tokens/select.js +30 -29
  207. package/tokens/snackbar.d.ts +36 -20
  208. package/tokens/snackbar.js +92 -93
  209. package/tokens/stepper.d.ts +1 -1
  210. package/tokens/stepper.js +3 -3
  211. package/tokens/tabs.d.ts +1 -1
  212. package/tokens/tabs.js +1 -1
  213. package/tokens/textarea.d.ts +4 -0
  214. package/tokens/tooltip.d.ts +5 -1
  215. package/tokens/tooltip.js +23 -21
  216. package/tokens/typography.js +114 -116
  217. package/tokens/values.d.ts +5 -1
  218. package/tokens/values.js +12 -8
  219. package/tokens/wrapper.d.ts +2 -2
  220. package/tokens/wrapper.js +7 -7
  221. package/tokens/zIndex.d.ts +9 -0
  222. package/tokens/zIndex.js +12 -0
  223. package/types/index.d.ts +0 -1
  224. package/types/styles.d.ts +1 -0
  225. package/utils/helpers.js +14 -15
  226. package/CHANGELOG.md +0 -177
  227. package/constants/positioning.d.ts +0 -9
  228. package/constants/positioning.js +0 -11
  229. package/types/chat.d.ts +0 -5
  230. package/types/chat.js +0 -4
@@ -0,0 +1,15 @@
1
+ import { defaultTheme as e } from "../../tokens/defaultTheme.js";
2
+ class t {
3
+ constructor() {
4
+ this.theme = e;
5
+ }
6
+ setTheme() {
7
+ }
8
+ addTheme() {
9
+ }
10
+ }
11
+ const h = new t();
12
+ export {
13
+ t as NoOpTheme,
14
+ h as noOpTheme
15
+ };
@@ -1,4 +1,3 @@
1
- import { PropsWithChildren } from 'react';
2
- import { ThemeProviderProps, ThemeContextProps } from './useTheme.types';
3
- export declare const ThemeProvider: (props: PropsWithChildren<ThemeProviderProps>) => import("@emotion/react/jsx-runtime").JSX.Element;
4
- export declare const useTheme: () => ThemeContextProps;
1
+ import { ThemeProviderProps, ITheme } from './useTheme.types';
2
+ export declare const ThemeProvider: (props: ThemeProviderProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const useTheme: () => ITheme;
@@ -1,48 +1,69 @@
1
1
  "use client";
2
- import { jsx as a } from "@emotion/react/jsx-runtime";
3
- import { useState as c, useCallback as d, createContext as y, useContext as N } from "react";
4
- import { ThemeProvider as $ } from "@emotion/react";
5
- import { get as T, size as g } from "../../utils/helpers.js";
6
- import { defaultTheme as i } from "../../tokens/defaultTheme.js";
7
- const u = y({
8
- theme: i,
9
- setTheme: () => {
10
- console.warn("setTheme method is not implemented yet.");
11
- },
12
- addTheme: () => {
13
- console.warn("addTheme method is not implemented yet.");
14
- }
15
- }), E = (o) => {
2
+ import { jsx as u } from "@emotion/react/jsx-runtime";
3
+ import { useState as c, useCallback as f, createContext as C, useContext as k } from "react";
4
+ import { ThemeProvider as y } from "@emotion/react";
5
+ import { noOpTheme as j } from "./NoOpTheme.js";
6
+ import { useLogger as q } from "../useLogger/useLogger.js";
7
+ import { get as v, size as z } from "../../utils/helpers.js";
8
+ import { defaultTheme as a } from "../../tokens/defaultTheme.js";
9
+ const g = C(j), L = (h) => {
16
10
  const {
17
- children: f,
18
- initialTheme: n,
19
- isDefault: p = !1
20
- } = o;
21
- let e, m;
22
- p ? (e = T(i, "name"), m = {
11
+ children: p,
12
+ initialTheme: i,
13
+ isDefault: b = !1
14
+ } = h, s = q();
15
+ let e, o;
16
+ b ? (e = v(a, "name"), o = {
17
+ [e]: a
18
+ }, s.debug("ThemeProvider: Using default theme", {
19
+ themeName: e,
20
+ theme: a
21
+ })) : (e = v(i, "name", ""), o = e ? {
23
22
  [e]: i
24
- }) : (e = T(n, "name", ""), m = e ? {
25
- [e]: n
26
- } : {});
27
- const [s, x] = c(m), [v, r] = c(e), h = s[v], l = g(s), w = d((t = "") => {
28
- s[t] ? r(t) : (r(e), console.warn(`Theme '${t}' does not exist.`));
29
- }, [l, e]), P = d((t, C) => {
30
- s[t] ? console.warn(`Theme '${t}' already exist.`) : x((b) => Object.assign(b, {
31
- [t]: C
23
+ } : {}, e && s.debug("ThemeProvider: Using custom initial theme", {
24
+ themeName: e,
25
+ theme: i
26
+ }));
27
+ const [m, w] = c(o), [r, T] = c(e), l = m[r], d = z(m), x = f((t = "") => {
28
+ s.debug("setTheme: Attempting to switch theme", {
29
+ requestedTheme: t,
30
+ currentTheme: r,
31
+ availableThemes: m
32
+ }), m[t] ? (T(t), s.info("setTheme: Theme switched successfully", {
33
+ previousTheme: r,
34
+ newTheme: t
35
+ })) : (T(e), s.warn("setTheme: Theme does not exist, reverting to initial theme", {
36
+ requestedTheme: t,
37
+ revertedTo: e,
38
+ availableThemes: m
32
39
  }));
33
- }, [l]);
34
- return /* @__PURE__ */ a(u.Provider, { value: {
35
- theme: h,
36
- setTheme: w,
37
- addTheme: P
38
- }, children: /* @__PURE__ */ a($, { theme: h, children: f }) });
39
- }, O = () => {
40
- const o = N(u);
41
- if (!o)
42
- throw new Error("useTheme could not be used outside ThemeProvider");
43
- return o;
40
+ }, [d, e]), N = f((t, n) => {
41
+ s.debug("addTheme: Attempting to add new theme", {
42
+ themeName: t,
43
+ availableThemes: m,
44
+ theme: n
45
+ }), m[t] ? s.warn("addTheme: Theme already exists, skipping", {
46
+ themeName: t,
47
+ availableThemes: m
48
+ }) : (w((P) => Object.assign(P, {
49
+ [t]: n
50
+ })), s.info("addTheme: Theme added successfully", {
51
+ themeName: t,
52
+ availableThemes: m
53
+ }));
54
+ }, [d]);
55
+ return /* @__PURE__ */ u(g.Provider, { value: {
56
+ theme: l,
57
+ setTheme: x,
58
+ addTheme: N
59
+ }, children: /* @__PURE__ */ u(y, { theme: l, children: p }) });
60
+ }, V = () => {
61
+ const h = k(g);
62
+ if (!h)
63
+ throw new Error("useTheme: Hook used outside ThemeProvider");
64
+ return h;
44
65
  };
45
66
  export {
46
- E as ThemeProvider,
47
- O as useTheme
67
+ L as ThemeProvider,
68
+ V as useTheme
48
69
  };
@@ -1,11 +1,12 @@
1
+ import { PropsWithChildren } from 'react';
1
2
  import { defaultTheme } from '../../tokens';
2
3
  export type DefaultTheme = typeof defaultTheme;
3
4
  export type Theme<T = typeof defaultTheme> = T & Record<string, unknown>;
4
- export interface ThemeProviderProps {
5
+ export interface ThemeProviderProps extends PropsWithChildren {
5
6
  isDefault?: boolean;
6
7
  initialTheme?: Theme;
7
8
  }
8
- export interface ThemeContextProps {
9
+ export interface ITheme {
9
10
  theme: Theme;
10
11
  setTheme: (themeName?: string) => void;
11
12
  addTheme: (themeName: string, themeConfig: Theme) => void;
package/index.d.ts CHANGED
@@ -2,3 +2,7 @@ export * from './hooks';
2
2
  export * from './components';
3
3
  export * from './tokens';
4
4
  export * from './assets';
5
+ /**
6
+ * @TODO: Cerebra
7
+ * - add Tag component
8
+ */