mogh_ui 0.1.0 → 0.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 (63) hide show
  1. package/dist/auth/index.cjs +156 -0
  2. package/dist/auth/index.cjs.map +1 -0
  3. package/dist/auth/index.d.cts +50 -0
  4. package/dist/auth/index.d.ts +50 -0
  5. package/dist/auth/index.js +115 -0
  6. package/dist/auth/index.js.map +1 -0
  7. package/dist/auth/login/header.cjs +74 -0
  8. package/dist/auth/login/header.cjs.map +1 -0
  9. package/dist/auth/login/header.d.cts +8 -0
  10. package/dist/auth/login/header.d.ts +8 -0
  11. package/dist/auth/login/header.js +60 -0
  12. package/dist/auth/login/header.js.map +1 -0
  13. package/dist/auth/login/index.cjs +245 -0
  14. package/dist/auth/login/index.cjs.map +1 -0
  15. package/dist/auth/login/index.d.cts +15 -0
  16. package/dist/auth/login/index.d.ts +15 -0
  17. package/dist/auth/login/index.js +220 -0
  18. package/dist/auth/login/index.js.map +1 -0
  19. package/dist/auth/profile/index.cjs +27 -0
  20. package/dist/auth/profile/index.cjs.map +1 -0
  21. package/dist/auth/profile/index.d.cts +5 -0
  22. package/dist/auth/profile/index.d.ts +5 -0
  23. package/dist/auth/profile/index.js +4 -0
  24. package/dist/auth/profile/index.js.map +1 -0
  25. package/dist/auth/profile/linked-logins.cjs +177 -0
  26. package/dist/auth/profile/linked-logins.cjs.map +1 -0
  27. package/dist/auth/profile/linked-logins.d.cts +13 -0
  28. package/dist/auth/profile/linked-logins.d.ts +13 -0
  29. package/dist/auth/profile/linked-logins.js +150 -0
  30. package/dist/auth/profile/linked-logins.js.map +1 -0
  31. package/dist/auth/profile/passkey.cjs +109 -0
  32. package/dist/auth/profile/passkey.cjs.map +1 -0
  33. package/dist/auth/profile/passkey.d.cts +9 -0
  34. package/dist/auth/profile/passkey.d.ts +9 -0
  35. package/dist/auth/profile/passkey.js +75 -0
  36. package/dist/auth/profile/passkey.js.map +1 -0
  37. package/dist/auth/profile/totp.cjs +147 -0
  38. package/dist/auth/profile/totp.cjs.map +1 -0
  39. package/dist/auth/profile/totp.d.cts +9 -0
  40. package/dist/auth/profile/totp.d.ts +9 -0
  41. package/dist/auth/profile/totp.js +131 -0
  42. package/dist/auth/profile/totp.js.map +1 -0
  43. package/dist/auth/utils.cjs +42 -0
  44. package/dist/auth/utils.cjs.map +1 -0
  45. package/dist/auth/utils.d.cts +4 -0
  46. package/dist/auth/utils.d.ts +4 -0
  47. package/dist/auth/utils.js +17 -0
  48. package/dist/auth/utils.js.map +1 -0
  49. package/dist/components/page-guard.d.cts +2 -2
  50. package/dist/components/page-guard.d.ts +2 -2
  51. package/dist/index.cjs +2 -0
  52. package/dist/index.cjs.map +1 -1
  53. package/dist/index.d.cts +9 -1
  54. package/dist/index.d.ts +9 -1
  55. package/dist/index.js +1 -0
  56. package/dist/index.js.map +1 -1
  57. package/dist/theme.cjs +12 -4
  58. package/dist/theme.cjs.map +1 -1
  59. package/dist/theme.d.cts +7 -4
  60. package/dist/theme.d.ts +7 -4
  61. package/dist/theme.js +12 -4
  62. package/dist/theme.js.map +1 -1
  63. package/package.json +7 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/theme.tsx"],"sourcesContent":["import {\n ActionIcon,\n Badge,\n Button,\n Code,\n colorsTuple,\n Combobox,\n createTheme,\n CSSVariablesResolver,\n darken,\n DefaultMantineColor,\n Drawer,\n Fieldset,\n HoverCard,\n Input,\n lighten,\n MantineColorScheme,\n MantineColorsTuple,\n MantineProvider,\n MenuDropdown,\n Modal,\n MultiSelect,\n PopoverDropdown,\n Progress,\n SegmentedControl,\n Select,\n Switch,\n Table,\n Tabs,\n virtualColor,\n} from \"@mantine/core\";\nimport { ReactNode } from \"react\";\nimport { hexColorByIntention } from \"./color\";\n\n// Match in ./index.css\nexport const LIGHT_BODY = \"#f8f9fa\";\nexport const DARK_BODY = \"#0f1115\";\n\nconst DEFAULT_COLOR_SCHEME: MantineColorScheme = \"auto\";\n\nexport function ThemeProvider({\n children,\n additionalColors,\n}: {\n children: ReactNode;\n additionalColors?: AdditionalColors;\n}) {\n return (\n <MantineProvider\n theme={theme(additionalColors)}\n cssVariablesResolver={cssVariablesResolver}\n defaultColorScheme={DEFAULT_COLOR_SCHEME}\n >\n {children}\n </MantineProvider>\n );\n}\n\nexport type AdditionalColors =\n | Partial<Record<DefaultMantineColor, MantineColorsTuple>>\n | undefined;\n\nfunction theme(additionalColors?: AdditionalColors) {\n return createTheme({\n cursorType: \"pointer\",\n primaryColor: \"accent\",\n breakpoints: {\n xs: \"36em\",\n sm: \"48em\",\n md: \"66em\",\n lg: \"82em\",\n xl: \"96em\",\n xl2: \"110em\",\n xl3: \"126em\",\n xl4: \"142em\",\n },\n colors: {\n // Accent background color\n lightAccent: functionColorsTuple(darken(LIGHT_BODY, 0.02), (color) =>\n darken(color, 0.01),\n ),\n darkAccent: functionColorsTuple(lighten(DARK_BODY, 0.025), (color) =>\n lighten(color, 0.02),\n ),\n accent: virtualColor({\n name: \"accent\",\n light: \"lightAccent\",\n dark: \"darkAccent\",\n }),\n // Accent border color\n lightAccentBorder: functionColorsTuple(darken(LIGHT_BODY, 0.1), (color) =>\n darken(color, 0.01),\n ),\n darkAccentBorder: functionColorsTuple(lighten(DARK_BODY, 0.08), (color) =>\n lighten(color, 0.03),\n ),\n \"accent-border\": virtualColor({\n name: \"accent-border\",\n light: \"lightAccentBorder\",\n dark: \"darkAccentBorder\",\n }),\n lightBw: colorsTuple(\"#000000\"),\n darkBw: colorsTuple(\"#FFFFFF\"),\n bw: virtualColor({\n name: \"bw\",\n light: \"lightBw\",\n dark: \"darkBw\",\n }),\n // Intention colors\n Good: colorsTuple(hexColorByIntention(\"Good\")!),\n Neutral: colorsTuple(hexColorByIntention(\"Neutral\")!),\n Warning: colorsTuple(hexColorByIntention(\"Warning\")!),\n Critical: colorsTuple(hexColorByIntention(\"Critical\")!),\n Unknown: colorsTuple(hexColorByIntention(\"Unknown\")!),\n // Additional colors (eg tags)\n ...additionalColors,\n },\n components: {\n Input: Input.extend({\n vars: (theme) => ({\n wrapper: {\n \"--input-radius\": theme.radius.sm,\n },\n }),\n styles: (theme) => ({\n input: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n Select: Select.extend({\n styles: (theme) => ({\n input: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n borderColor: theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n MultiSelect: MultiSelect.extend({\n styles: (theme) => ({\n input: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n borderColor: theme.colors[\"accent-border\"][4],\n },\n }),\n defaultProps: {\n maxDropdownHeight: 250,\n },\n }),\n Combobox: Combobox.extend({\n styles: (theme) => ({\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n MenuDropdown: MenuDropdown.extend({\n defaultProps: {\n bg: \"var(--mantine-color-accent-1)\",\n bd: \"1px solid var(--mantine-color-accent-border-4)\",\n bdrs: \"md\",\n },\n }),\n PopoverDropdown: PopoverDropdown.extend({\n defaultProps: {\n bg: \"var(--mantine-color-accent-1)\",\n bd: \"1px solid var(--mantine-color-accent-border-4)\",\n bdrs: \"md\",\n },\n }),\n HoverCard: HoverCard.extend({\n styles: (theme) => ({\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n Button: Button.extend({\n vars: (theme) => ({\n root: {\n \"--button-color\": theme.colors.bw[0],\n \"--button-radius\": theme.radius.sm,\n },\n }),\n defaultProps: {\n variant: \"default\",\n },\n classNames: { root: \"bordered-heavy-outline\" },\n }),\n ActionIcon: ActionIcon.extend({\n vars: (theme) => ({\n root: {\n \"--ai-color\": theme.colors.bw[0],\n \"--ai-radius\": theme.radius.sm,\n },\n }),\n }),\n Switch: Switch.extend({\n defaultProps: {\n color: \"green\",\n },\n }),\n Badge: Badge.extend({\n defaultProps: {\n bdrs: \"sm\",\n c: \"var(--mantine-color-text)\",\n },\n }),\n Table: Table.extend({\n vars: (theme) => ({\n table: {\n \"--table-striped-color\": theme.colors.accent[0],\n \"--table-border-color\": theme.colors[\"accent-border\"][0],\n \"--table-highlight-on-hover-color\":\n theme.colors[\"accent-border\"][0],\n },\n }),\n defaultProps: {\n striped: true,\n highlightOnHover: true,\n },\n }),\n Drawer: Drawer.extend({\n vars: () => ({\n root: {\n \"--drawer-flex\": \"\",\n },\n }),\n defaultProps: {\n position: \"top\",\n radius: \"md\",\n },\n styles: {\n inner: { justifyContent: \"center\" },\n },\n }),\n Modal: Modal.extend({\n defaultProps: {\n styles: { content: { borderRadius: \"var(--mantine-radius-md)\" } },\n },\n }),\n Code: Code.extend({\n defaultProps: {\n bg: \"var(--mantine-color-accent-0)\",\n bdrs: \"sm\",\n p: \"md\",\n },\n }),\n Fieldset: Fieldset.extend({\n styles: (theme) => ({\n root: {\n backgroundColor: \"var(--mantine-color-body)\",\n borderRadius: theme.radius.md,\n },\n }),\n classNames: { root: \"bordered-light\" },\n }),\n SegmentedControl: SegmentedControl.extend({\n styles: (theme) => ({\n root: {\n backgroundColor: theme.colors.accent[2],\n },\n indicator: {\n backgroundColor: theme.colors.accent[9],\n },\n }),\n classNames: { root: \"bordered-heavy\" },\n }),\n Progress: Progress.extend({\n styles: (theme) => ({\n root: {\n backgroundColor: theme.colors.accent[4],\n },\n }),\n }),\n Tabs: Tabs.extend({\n vars: (theme) => ({\n root: {\n \"--tabs-radius\": theme.radius.sm,\n },\n }),\n styles: (theme) => ({\n list: {\n backgroundColor: theme.colors.accent[1],\n borderRadius: theme.radius.sm,\n },\n }),\n }),\n },\n });\n}\n\nconst cssVariablesResolver: CSSVariablesResolver = (theme) => ({\n variables: {},\n light: {\n \"--mantine-color-default\": theme.colors.accent[5],\n \"--mantine-color-default-hover\": theme.colors.accent[9],\n \"--mantine-color-default-border\": theme.colors[\"accent-border\"][5],\n \"--mantine-color-disabled\": theme.colors.accent[1],\n },\n dark: {\n \"--mantine-color-default\": theme.colors.accent[5],\n \"--mantine-color-default-hover\": theme.colors.accent[9],\n \"--mantine-color-default-border\": theme.colors[\"accent-border\"][5],\n \"--mantine-color-disabled\": theme.colors.accent[1],\n },\n});\n\nexport function opacityColorsTuple(baseHex: string, length = 10) {\n return colorsTuple(\n Array.from({ length }).map(\n (_, i) => baseHex + (i * 10 + 9).toString(16).padStart(2, \"0\"),\n ),\n );\n}\n\nexport function functionColorsTuple(\n base: string,\n fn: (color: string) => string,\n length = 10,\n) {\n let b = base;\n const array = [\n base,\n ...Array.from({ length: length - 1 }).map(() => {\n b = fn(b);\n return b;\n }),\n ];\n return colorsTuple(array);\n}\n"],"mappings":"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","names":["theme"]}
1
+ {"version":3,"sources":["../src/theme.tsx"],"sourcesContent":["import {\n ActionIcon,\n Badge,\n Button,\n Code,\n colorsTuple,\n Combobox,\n createTheme,\n CSSVariablesResolver,\n darken,\n DefaultMantineColor,\n Drawer,\n Fieldset,\n HoverCard,\n Input,\n lighten,\n MantineColorScheme,\n MantineColorsTuple,\n MantineProvider,\n MenuDropdown,\n Modal,\n MultiSelect,\n PopoverDropdown,\n Progress,\n SegmentedControl,\n Select,\n Switch,\n Table,\n Tabs,\n virtualColor,\n} from \"@mantine/core\";\nimport { ReactNode } from \"react\";\nimport { hexColorByIntention } from \"./color\";\n\n// Match in ./index.css\nexport const LIGHT_BODY = \"#f8f9fa\";\nexport const DARK_BODY = \"#0f1115\";\n\nconst DEFAULT_COLOR_SCHEME: MantineColorScheme = \"auto\";\n\nexport type AdditionalColors =\n | Partial<Record<DefaultMantineColor, MantineColorsTuple>>\n | undefined;\n\nexport interface ThemeProviderProps {\n primaryColor?: DefaultMantineColor;\n additionalColors?: AdditionalColors;\n}\n\nexport function ThemeProvider({\n children,\n ...props\n}: ThemeProviderProps & {\n children: ReactNode;\n}) {\n return (\n <MantineProvider\n theme={theme(props)}\n cssVariablesResolver={cssVariablesResolver}\n defaultColorScheme={DEFAULT_COLOR_SCHEME}\n >\n {children}\n </MantineProvider>\n );\n}\n\nfunction theme({\n primaryColor = \"accent\",\n additionalColors,\n}: ThemeProviderProps) {\n return createTheme({\n cursorType: \"pointer\",\n primaryColor,\n breakpoints: {\n xs: \"36em\",\n sm: \"48em\",\n md: \"66em\",\n lg: \"82em\",\n xl: \"96em\",\n xl2: \"110em\",\n xl3: \"126em\",\n xl4: \"142em\",\n },\n colors: {\n // Accent background color\n lightAccent: functionColorsTuple(darken(LIGHT_BODY, 0.02), (color) =>\n darken(color, 0.01),\n ),\n darkAccent: functionColorsTuple(lighten(DARK_BODY, 0.025), (color) =>\n lighten(color, 0.02),\n ),\n accent: virtualColor({\n name: \"accent\",\n light: \"lightAccent\",\n dark: \"darkAccent\",\n }),\n // Accent border color\n lightAccentBorder: functionColorsTuple(darken(LIGHT_BODY, 0.1), (color) =>\n darken(color, 0.01),\n ),\n darkAccentBorder: functionColorsTuple(lighten(DARK_BODY, 0.08), (color) =>\n lighten(color, 0.03),\n ),\n \"accent-border\": virtualColor({\n name: \"accent-border\",\n light: \"lightAccentBorder\",\n dark: \"darkAccentBorder\",\n }),\n lightBw: colorsTuple(\"#000000\"),\n darkBw: colorsTuple(\"#FFFFFF\"),\n bw: virtualColor({\n name: \"bw\",\n light: \"lightBw\",\n dark: \"darkBw\",\n }),\n // Intention colors\n Good: colorsTuple(hexColorByIntention(\"Good\")!),\n Neutral: colorsTuple(hexColorByIntention(\"Neutral\")!),\n Warning: colorsTuple(hexColorByIntention(\"Warning\")!),\n Critical: colorsTuple(hexColorByIntention(\"Critical\")!),\n Unknown: colorsTuple(hexColorByIntention(\"Unknown\")!),\n // Additional colors (eg tags)\n ...additionalColors,\n },\n components: {\n Input: Input.extend({\n vars: (theme) => ({\n wrapper: {\n \"--input-radius\": theme.radius.sm,\n },\n }),\n styles: (theme) => ({\n input: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n Select: Select.extend({\n styles: (theme) => ({\n input: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n borderColor: theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n MultiSelect: MultiSelect.extend({\n styles: (theme) => ({\n input: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n borderColor: theme.colors[\"accent-border\"][4],\n },\n }),\n defaultProps: {\n maxDropdownHeight: 250,\n },\n }),\n Combobox: Combobox.extend({\n styles: (theme) => ({\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n MenuDropdown: MenuDropdown.extend({\n defaultProps: {\n bg: \"var(--mantine-color-accent-1)\",\n bd: \"1px solid var(--mantine-color-accent-border-4)\",\n bdrs: \"md\",\n },\n }),\n PopoverDropdown: PopoverDropdown.extend({\n defaultProps: {\n bg: \"var(--mantine-color-accent-1)\",\n bd: \"1px solid var(--mantine-color-accent-border-4)\",\n bdrs: \"md\",\n },\n }),\n HoverCard: HoverCard.extend({\n styles: (theme) => ({\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n Button: Button.extend({\n vars: (theme) => ({\n root: {\n \"--button-color\": theme.colors.bw[0],\n \"--button-radius\": theme.radius.sm,\n },\n }),\n defaultProps: {\n variant: \"default\",\n },\n classNames: { root: \"bordered-heavy-outline\" },\n }),\n ActionIcon: ActionIcon.extend({\n vars: (theme) => ({\n root: {\n \"--ai-color\": theme.colors.bw[0],\n \"--ai-radius\": theme.radius.sm,\n },\n }),\n }),\n Switch: Switch.extend({\n defaultProps: {\n color: \"green\",\n },\n }),\n Badge: Badge.extend({\n defaultProps: {\n bdrs: \"sm\",\n c: \"var(--mantine-color-text)\",\n },\n }),\n Table: Table.extend({\n vars: (theme) => ({\n table: {\n \"--table-striped-color\": theme.colors.accent[0],\n \"--table-border-color\": theme.colors[\"accent-border\"][0],\n \"--table-highlight-on-hover-color\":\n theme.colors[\"accent-border\"][0],\n },\n }),\n defaultProps: {\n striped: true,\n highlightOnHover: true,\n },\n }),\n Drawer: Drawer.extend({\n vars: () => ({\n root: {\n \"--drawer-flex\": \"\",\n },\n }),\n defaultProps: {\n position: \"top\",\n radius: \"md\",\n },\n styles: {\n inner: { justifyContent: \"center\" },\n },\n }),\n Modal: Modal.extend({\n defaultProps: {\n styles: { content: { borderRadius: \"var(--mantine-radius-md)\" } },\n },\n }),\n Code: Code.extend({\n defaultProps: {\n bg: \"var(--mantine-color-accent-0)\",\n bdrs: \"sm\",\n p: \"md\",\n },\n }),\n Fieldset: Fieldset.extend({\n styles: (theme) => ({\n root: {\n backgroundColor: \"var(--mantine-color-body)\",\n borderRadius: theme.radius.md,\n },\n }),\n classNames: { root: \"bordered-light\" },\n }),\n SegmentedControl: SegmentedControl.extend({\n styles: (theme) => ({\n root: {\n backgroundColor: theme.colors.accent[2],\n },\n indicator: {\n backgroundColor: theme.colors.accent[9],\n },\n }),\n classNames: { root: \"bordered-heavy\" },\n }),\n Progress: Progress.extend({\n vars: (theme) => ({\n root: {\n \"--progress-radius\": theme.radius.md,\n },\n }),\n styles: (theme) => ({\n root: {\n backgroundColor: theme.colors.accent[4],\n },\n }),\n }),\n Tabs: Tabs.extend({\n vars: (theme) => ({\n root: {\n \"--tabs-radius\": theme.radius.sm,\n },\n }),\n styles: (theme) => ({\n list: {\n backgroundColor: theme.colors.accent[1],\n borderRadius: theme.radius.sm,\n },\n }),\n }),\n },\n });\n}\n\nconst cssVariablesResolver: CSSVariablesResolver = (theme) => ({\n variables: {},\n light: {\n \"--mantine-color-default\": theme.colors.accent[5],\n \"--mantine-color-default-hover\": theme.colors.accent[9],\n \"--mantine-color-default-border\": theme.colors[\"accent-border\"][5],\n \"--mantine-color-disabled\": theme.colors.accent[1],\n },\n dark: {\n \"--mantine-color-default\": theme.colors.accent[5],\n \"--mantine-color-default-hover\": theme.colors.accent[9],\n \"--mantine-color-default-border\": theme.colors[\"accent-border\"][5],\n \"--mantine-color-disabled\": theme.colors.accent[1],\n },\n});\n\nexport function opacityColorsTuple(baseHex: string, length = 10) {\n return colorsTuple(\n Array.from({ length }).map(\n (_, i) => baseHex + (i * 10 + 9).toString(16).padStart(2, \"0\"),\n ),\n );\n}\n\nexport function functionColorsTuple(\n base: string,\n fn: (color: string) => string,\n length = 10,\n) {\n let b = base;\n const array = [\n base,\n ...Array.from({ length: length - 1 }).map(() => {\n b = fn(b);\n return b;\n }),\n ];\n return colorsTuple(array);\n}\n"],"mappings":"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","names":["theme"]}
package/dist/theme.d.cts CHANGED
@@ -4,12 +4,15 @@ import { ReactNode } from 'react';
4
4
 
5
5
  declare const LIGHT_BODY = "#f8f9fa";
6
6
  declare const DARK_BODY = "#0f1115";
7
- declare function ThemeProvider({ children, additionalColors, }: {
8
- children: ReactNode;
7
+ type AdditionalColors = Partial<Record<DefaultMantineColor, MantineColorsTuple>> | undefined;
8
+ interface ThemeProviderProps {
9
+ primaryColor?: DefaultMantineColor;
9
10
  additionalColors?: AdditionalColors;
11
+ }
12
+ declare function ThemeProvider({ children, ...props }: ThemeProviderProps & {
13
+ children: ReactNode;
10
14
  }): react_jsx_runtime.JSX.Element;
11
- type AdditionalColors = Partial<Record<DefaultMantineColor, MantineColorsTuple>> | undefined;
12
15
  declare function opacityColorsTuple(baseHex: string, length?: number): MantineColorsTuple;
13
16
  declare function functionColorsTuple(base: string, fn: (color: string) => string, length?: number): MantineColorsTuple;
14
17
 
15
- export { type AdditionalColors, DARK_BODY, LIGHT_BODY, ThemeProvider, functionColorsTuple, opacityColorsTuple };
18
+ export { type AdditionalColors, DARK_BODY, LIGHT_BODY, ThemeProvider, type ThemeProviderProps, functionColorsTuple, opacityColorsTuple };
package/dist/theme.d.ts CHANGED
@@ -4,12 +4,15 @@ import { ReactNode } from 'react';
4
4
 
5
5
  declare const LIGHT_BODY = "#f8f9fa";
6
6
  declare const DARK_BODY = "#0f1115";
7
- declare function ThemeProvider({ children, additionalColors, }: {
8
- children: ReactNode;
7
+ type AdditionalColors = Partial<Record<DefaultMantineColor, MantineColorsTuple>> | undefined;
8
+ interface ThemeProviderProps {
9
+ primaryColor?: DefaultMantineColor;
9
10
  additionalColors?: AdditionalColors;
11
+ }
12
+ declare function ThemeProvider({ children, ...props }: ThemeProviderProps & {
13
+ children: ReactNode;
10
14
  }): react_jsx_runtime.JSX.Element;
11
- type AdditionalColors = Partial<Record<DefaultMantineColor, MantineColorsTuple>> | undefined;
12
15
  declare function opacityColorsTuple(baseHex: string, length?: number): MantineColorsTuple;
13
16
  declare function functionColorsTuple(base: string, fn: (color: string) => string, length?: number): MantineColorsTuple;
14
17
 
15
- export { type AdditionalColors, DARK_BODY, LIGHT_BODY, ThemeProvider, functionColorsTuple, opacityColorsTuple };
18
+ export { type AdditionalColors, DARK_BODY, LIGHT_BODY, ThemeProvider, type ThemeProviderProps, functionColorsTuple, opacityColorsTuple };
package/dist/theme.js CHANGED
@@ -32,22 +32,25 @@ const DARK_BODY = "#0f1115";
32
32
  const DEFAULT_COLOR_SCHEME = "auto";
33
33
  function ThemeProvider({
34
34
  children,
35
- additionalColors
35
+ ...props
36
36
  }) {
37
37
  return /* @__PURE__ */ jsx(
38
38
  MantineProvider,
39
39
  {
40
- theme: theme(additionalColors),
40
+ theme: theme(props),
41
41
  cssVariablesResolver,
42
42
  defaultColorScheme: DEFAULT_COLOR_SCHEME,
43
43
  children
44
44
  }
45
45
  );
46
46
  }
47
- function theme(additionalColors) {
47
+ function theme({
48
+ primaryColor = "accent",
49
+ additionalColors
50
+ }) {
48
51
  return createTheme({
49
52
  cursorType: "pointer",
50
- primaryColor: "accent",
53
+ primaryColor,
51
54
  breakpoints: {
52
55
  xs: "36em",
53
56
  sm: "48em",
@@ -265,6 +268,11 @@ function theme(additionalColors) {
265
268
  classNames: { root: "bordered-heavy" }
266
269
  }),
267
270
  Progress: Progress.extend({
271
+ vars: (theme2) => ({
272
+ root: {
273
+ "--progress-radius": theme2.radius.md
274
+ }
275
+ }),
268
276
  styles: (theme2) => ({
269
277
  root: {
270
278
  backgroundColor: theme2.colors.accent[4]
package/dist/theme.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/theme.tsx"],"sourcesContent":["import {\n ActionIcon,\n Badge,\n Button,\n Code,\n colorsTuple,\n Combobox,\n createTheme,\n CSSVariablesResolver,\n darken,\n DefaultMantineColor,\n Drawer,\n Fieldset,\n HoverCard,\n Input,\n lighten,\n MantineColorScheme,\n MantineColorsTuple,\n MantineProvider,\n MenuDropdown,\n Modal,\n MultiSelect,\n PopoverDropdown,\n Progress,\n SegmentedControl,\n Select,\n Switch,\n Table,\n Tabs,\n virtualColor,\n} from \"@mantine/core\";\nimport { ReactNode } from \"react\";\nimport { hexColorByIntention } from \"./color\";\n\n// Match in ./index.css\nexport const LIGHT_BODY = \"#f8f9fa\";\nexport const DARK_BODY = \"#0f1115\";\n\nconst DEFAULT_COLOR_SCHEME: MantineColorScheme = \"auto\";\n\nexport function ThemeProvider({\n children,\n additionalColors,\n}: {\n children: ReactNode;\n additionalColors?: AdditionalColors;\n}) {\n return (\n <MantineProvider\n theme={theme(additionalColors)}\n cssVariablesResolver={cssVariablesResolver}\n defaultColorScheme={DEFAULT_COLOR_SCHEME}\n >\n {children}\n </MantineProvider>\n );\n}\n\nexport type AdditionalColors =\n | Partial<Record<DefaultMantineColor, MantineColorsTuple>>\n | undefined;\n\nfunction theme(additionalColors?: AdditionalColors) {\n return createTheme({\n cursorType: \"pointer\",\n primaryColor: \"accent\",\n breakpoints: {\n xs: \"36em\",\n sm: \"48em\",\n md: \"66em\",\n lg: \"82em\",\n xl: \"96em\",\n xl2: \"110em\",\n xl3: \"126em\",\n xl4: \"142em\",\n },\n colors: {\n // Accent background color\n lightAccent: functionColorsTuple(darken(LIGHT_BODY, 0.02), (color) =>\n darken(color, 0.01),\n ),\n darkAccent: functionColorsTuple(lighten(DARK_BODY, 0.025), (color) =>\n lighten(color, 0.02),\n ),\n accent: virtualColor({\n name: \"accent\",\n light: \"lightAccent\",\n dark: \"darkAccent\",\n }),\n // Accent border color\n lightAccentBorder: functionColorsTuple(darken(LIGHT_BODY, 0.1), (color) =>\n darken(color, 0.01),\n ),\n darkAccentBorder: functionColorsTuple(lighten(DARK_BODY, 0.08), (color) =>\n lighten(color, 0.03),\n ),\n \"accent-border\": virtualColor({\n name: \"accent-border\",\n light: \"lightAccentBorder\",\n dark: \"darkAccentBorder\",\n }),\n lightBw: colorsTuple(\"#000000\"),\n darkBw: colorsTuple(\"#FFFFFF\"),\n bw: virtualColor({\n name: \"bw\",\n light: \"lightBw\",\n dark: \"darkBw\",\n }),\n // Intention colors\n Good: colorsTuple(hexColorByIntention(\"Good\")!),\n Neutral: colorsTuple(hexColorByIntention(\"Neutral\")!),\n Warning: colorsTuple(hexColorByIntention(\"Warning\")!),\n Critical: colorsTuple(hexColorByIntention(\"Critical\")!),\n Unknown: colorsTuple(hexColorByIntention(\"Unknown\")!),\n // Additional colors (eg tags)\n ...additionalColors,\n },\n components: {\n Input: Input.extend({\n vars: (theme) => ({\n wrapper: {\n \"--input-radius\": theme.radius.sm,\n },\n }),\n styles: (theme) => ({\n input: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n Select: Select.extend({\n styles: (theme) => ({\n input: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n borderColor: theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n MultiSelect: MultiSelect.extend({\n styles: (theme) => ({\n input: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n borderColor: theme.colors[\"accent-border\"][4],\n },\n }),\n defaultProps: {\n maxDropdownHeight: 250,\n },\n }),\n Combobox: Combobox.extend({\n styles: (theme) => ({\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n MenuDropdown: MenuDropdown.extend({\n defaultProps: {\n bg: \"var(--mantine-color-accent-1)\",\n bd: \"1px solid var(--mantine-color-accent-border-4)\",\n bdrs: \"md\",\n },\n }),\n PopoverDropdown: PopoverDropdown.extend({\n defaultProps: {\n bg: \"var(--mantine-color-accent-1)\",\n bd: \"1px solid var(--mantine-color-accent-border-4)\",\n bdrs: \"md\",\n },\n }),\n HoverCard: HoverCard.extend({\n styles: (theme) => ({\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n Button: Button.extend({\n vars: (theme) => ({\n root: {\n \"--button-color\": theme.colors.bw[0],\n \"--button-radius\": theme.radius.sm,\n },\n }),\n defaultProps: {\n variant: \"default\",\n },\n classNames: { root: \"bordered-heavy-outline\" },\n }),\n ActionIcon: ActionIcon.extend({\n vars: (theme) => ({\n root: {\n \"--ai-color\": theme.colors.bw[0],\n \"--ai-radius\": theme.radius.sm,\n },\n }),\n }),\n Switch: Switch.extend({\n defaultProps: {\n color: \"green\",\n },\n }),\n Badge: Badge.extend({\n defaultProps: {\n bdrs: \"sm\",\n c: \"var(--mantine-color-text)\",\n },\n }),\n Table: Table.extend({\n vars: (theme) => ({\n table: {\n \"--table-striped-color\": theme.colors.accent[0],\n \"--table-border-color\": theme.colors[\"accent-border\"][0],\n \"--table-highlight-on-hover-color\":\n theme.colors[\"accent-border\"][0],\n },\n }),\n defaultProps: {\n striped: true,\n highlightOnHover: true,\n },\n }),\n Drawer: Drawer.extend({\n vars: () => ({\n root: {\n \"--drawer-flex\": \"\",\n },\n }),\n defaultProps: {\n position: \"top\",\n radius: \"md\",\n },\n styles: {\n inner: { justifyContent: \"center\" },\n },\n }),\n Modal: Modal.extend({\n defaultProps: {\n styles: { content: { borderRadius: \"var(--mantine-radius-md)\" } },\n },\n }),\n Code: Code.extend({\n defaultProps: {\n bg: \"var(--mantine-color-accent-0)\",\n bdrs: \"sm\",\n p: \"md\",\n },\n }),\n Fieldset: Fieldset.extend({\n styles: (theme) => ({\n root: {\n backgroundColor: \"var(--mantine-color-body)\",\n borderRadius: theme.radius.md,\n },\n }),\n classNames: { root: \"bordered-light\" },\n }),\n SegmentedControl: SegmentedControl.extend({\n styles: (theme) => ({\n root: {\n backgroundColor: theme.colors.accent[2],\n },\n indicator: {\n backgroundColor: theme.colors.accent[9],\n },\n }),\n classNames: { root: \"bordered-heavy\" },\n }),\n Progress: Progress.extend({\n styles: (theme) => ({\n root: {\n backgroundColor: theme.colors.accent[4],\n },\n }),\n }),\n Tabs: Tabs.extend({\n vars: (theme) => ({\n root: {\n \"--tabs-radius\": theme.radius.sm,\n },\n }),\n styles: (theme) => ({\n list: {\n backgroundColor: theme.colors.accent[1],\n borderRadius: theme.radius.sm,\n },\n }),\n }),\n },\n });\n}\n\nconst cssVariablesResolver: CSSVariablesResolver = (theme) => ({\n variables: {},\n light: {\n \"--mantine-color-default\": theme.colors.accent[5],\n \"--mantine-color-default-hover\": theme.colors.accent[9],\n \"--mantine-color-default-border\": theme.colors[\"accent-border\"][5],\n \"--mantine-color-disabled\": theme.colors.accent[1],\n },\n dark: {\n \"--mantine-color-default\": theme.colors.accent[5],\n \"--mantine-color-default-hover\": theme.colors.accent[9],\n \"--mantine-color-default-border\": theme.colors[\"accent-border\"][5],\n \"--mantine-color-disabled\": theme.colors.accent[1],\n },\n});\n\nexport function opacityColorsTuple(baseHex: string, length = 10) {\n return colorsTuple(\n Array.from({ length }).map(\n (_, i) => baseHex + (i * 10 + 9).toString(16).padStart(2, \"0\"),\n ),\n );\n}\n\nexport function functionColorsTuple(\n base: string,\n fn: (color: string) => string,\n length = 10,\n) {\n let b = base;\n const array = [\n base,\n ...Array.from({ length: length - 1 }).map(() => {\n b = fn(b);\n return b;\n }),\n ];\n return colorsTuple(array);\n}\n"],"mappings":"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","names":["theme"]}
1
+ {"version":3,"sources":["../src/theme.tsx"],"sourcesContent":["import {\n ActionIcon,\n Badge,\n Button,\n Code,\n colorsTuple,\n Combobox,\n createTheme,\n CSSVariablesResolver,\n darken,\n DefaultMantineColor,\n Drawer,\n Fieldset,\n HoverCard,\n Input,\n lighten,\n MantineColorScheme,\n MantineColorsTuple,\n MantineProvider,\n MenuDropdown,\n Modal,\n MultiSelect,\n PopoverDropdown,\n Progress,\n SegmentedControl,\n Select,\n Switch,\n Table,\n Tabs,\n virtualColor,\n} from \"@mantine/core\";\nimport { ReactNode } from \"react\";\nimport { hexColorByIntention } from \"./color\";\n\n// Match in ./index.css\nexport const LIGHT_BODY = \"#f8f9fa\";\nexport const DARK_BODY = \"#0f1115\";\n\nconst DEFAULT_COLOR_SCHEME: MantineColorScheme = \"auto\";\n\nexport type AdditionalColors =\n | Partial<Record<DefaultMantineColor, MantineColorsTuple>>\n | undefined;\n\nexport interface ThemeProviderProps {\n primaryColor?: DefaultMantineColor;\n additionalColors?: AdditionalColors;\n}\n\nexport function ThemeProvider({\n children,\n ...props\n}: ThemeProviderProps & {\n children: ReactNode;\n}) {\n return (\n <MantineProvider\n theme={theme(props)}\n cssVariablesResolver={cssVariablesResolver}\n defaultColorScheme={DEFAULT_COLOR_SCHEME}\n >\n {children}\n </MantineProvider>\n );\n}\n\nfunction theme({\n primaryColor = \"accent\",\n additionalColors,\n}: ThemeProviderProps) {\n return createTheme({\n cursorType: \"pointer\",\n primaryColor,\n breakpoints: {\n xs: \"36em\",\n sm: \"48em\",\n md: \"66em\",\n lg: \"82em\",\n xl: \"96em\",\n xl2: \"110em\",\n xl3: \"126em\",\n xl4: \"142em\",\n },\n colors: {\n // Accent background color\n lightAccent: functionColorsTuple(darken(LIGHT_BODY, 0.02), (color) =>\n darken(color, 0.01),\n ),\n darkAccent: functionColorsTuple(lighten(DARK_BODY, 0.025), (color) =>\n lighten(color, 0.02),\n ),\n accent: virtualColor({\n name: \"accent\",\n light: \"lightAccent\",\n dark: \"darkAccent\",\n }),\n // Accent border color\n lightAccentBorder: functionColorsTuple(darken(LIGHT_BODY, 0.1), (color) =>\n darken(color, 0.01),\n ),\n darkAccentBorder: functionColorsTuple(lighten(DARK_BODY, 0.08), (color) =>\n lighten(color, 0.03),\n ),\n \"accent-border\": virtualColor({\n name: \"accent-border\",\n light: \"lightAccentBorder\",\n dark: \"darkAccentBorder\",\n }),\n lightBw: colorsTuple(\"#000000\"),\n darkBw: colorsTuple(\"#FFFFFF\"),\n bw: virtualColor({\n name: \"bw\",\n light: \"lightBw\",\n dark: \"darkBw\",\n }),\n // Intention colors\n Good: colorsTuple(hexColorByIntention(\"Good\")!),\n Neutral: colorsTuple(hexColorByIntention(\"Neutral\")!),\n Warning: colorsTuple(hexColorByIntention(\"Warning\")!),\n Critical: colorsTuple(hexColorByIntention(\"Critical\")!),\n Unknown: colorsTuple(hexColorByIntention(\"Unknown\")!),\n // Additional colors (eg tags)\n ...additionalColors,\n },\n components: {\n Input: Input.extend({\n vars: (theme) => ({\n wrapper: {\n \"--input-radius\": theme.radius.sm,\n },\n }),\n styles: (theme) => ({\n input: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n Select: Select.extend({\n styles: (theme) => ({\n input: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n borderColor: theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n MultiSelect: MultiSelect.extend({\n styles: (theme) => ({\n input: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n borderColor: theme.colors[\"accent-border\"][4],\n },\n }),\n defaultProps: {\n maxDropdownHeight: 250,\n },\n }),\n Combobox: Combobox.extend({\n styles: (theme) => ({\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n MenuDropdown: MenuDropdown.extend({\n defaultProps: {\n bg: \"var(--mantine-color-accent-1)\",\n bd: \"1px solid var(--mantine-color-accent-border-4)\",\n bdrs: \"md\",\n },\n }),\n PopoverDropdown: PopoverDropdown.extend({\n defaultProps: {\n bg: \"var(--mantine-color-accent-1)\",\n bd: \"1px solid var(--mantine-color-accent-border-4)\",\n bdrs: \"md\",\n },\n }),\n HoverCard: HoverCard.extend({\n styles: (theme) => ({\n dropdown: {\n backgroundColor: theme.colors.accent[1],\n border: \"1px solid \" + theme.colors[\"accent-border\"][4],\n },\n }),\n }),\n Button: Button.extend({\n vars: (theme) => ({\n root: {\n \"--button-color\": theme.colors.bw[0],\n \"--button-radius\": theme.radius.sm,\n },\n }),\n defaultProps: {\n variant: \"default\",\n },\n classNames: { root: \"bordered-heavy-outline\" },\n }),\n ActionIcon: ActionIcon.extend({\n vars: (theme) => ({\n root: {\n \"--ai-color\": theme.colors.bw[0],\n \"--ai-radius\": theme.radius.sm,\n },\n }),\n }),\n Switch: Switch.extend({\n defaultProps: {\n color: \"green\",\n },\n }),\n Badge: Badge.extend({\n defaultProps: {\n bdrs: \"sm\",\n c: \"var(--mantine-color-text)\",\n },\n }),\n Table: Table.extend({\n vars: (theme) => ({\n table: {\n \"--table-striped-color\": theme.colors.accent[0],\n \"--table-border-color\": theme.colors[\"accent-border\"][0],\n \"--table-highlight-on-hover-color\":\n theme.colors[\"accent-border\"][0],\n },\n }),\n defaultProps: {\n striped: true,\n highlightOnHover: true,\n },\n }),\n Drawer: Drawer.extend({\n vars: () => ({\n root: {\n \"--drawer-flex\": \"\",\n },\n }),\n defaultProps: {\n position: \"top\",\n radius: \"md\",\n },\n styles: {\n inner: { justifyContent: \"center\" },\n },\n }),\n Modal: Modal.extend({\n defaultProps: {\n styles: { content: { borderRadius: \"var(--mantine-radius-md)\" } },\n },\n }),\n Code: Code.extend({\n defaultProps: {\n bg: \"var(--mantine-color-accent-0)\",\n bdrs: \"sm\",\n p: \"md\",\n },\n }),\n Fieldset: Fieldset.extend({\n styles: (theme) => ({\n root: {\n backgroundColor: \"var(--mantine-color-body)\",\n borderRadius: theme.radius.md,\n },\n }),\n classNames: { root: \"bordered-light\" },\n }),\n SegmentedControl: SegmentedControl.extend({\n styles: (theme) => ({\n root: {\n backgroundColor: theme.colors.accent[2],\n },\n indicator: {\n backgroundColor: theme.colors.accent[9],\n },\n }),\n classNames: { root: \"bordered-heavy\" },\n }),\n Progress: Progress.extend({\n vars: (theme) => ({\n root: {\n \"--progress-radius\": theme.radius.md,\n },\n }),\n styles: (theme) => ({\n root: {\n backgroundColor: theme.colors.accent[4],\n },\n }),\n }),\n Tabs: Tabs.extend({\n vars: (theme) => ({\n root: {\n \"--tabs-radius\": theme.radius.sm,\n },\n }),\n styles: (theme) => ({\n list: {\n backgroundColor: theme.colors.accent[1],\n borderRadius: theme.radius.sm,\n },\n }),\n }),\n },\n });\n}\n\nconst cssVariablesResolver: CSSVariablesResolver = (theme) => ({\n variables: {},\n light: {\n \"--mantine-color-default\": theme.colors.accent[5],\n \"--mantine-color-default-hover\": theme.colors.accent[9],\n \"--mantine-color-default-border\": theme.colors[\"accent-border\"][5],\n \"--mantine-color-disabled\": theme.colors.accent[1],\n },\n dark: {\n \"--mantine-color-default\": theme.colors.accent[5],\n \"--mantine-color-default-hover\": theme.colors.accent[9],\n \"--mantine-color-default-border\": theme.colors[\"accent-border\"][5],\n \"--mantine-color-disabled\": theme.colors.accent[1],\n },\n});\n\nexport function opacityColorsTuple(baseHex: string, length = 10) {\n return colorsTuple(\n Array.from({ length }).map(\n (_, i) => baseHex + (i * 10 + 9).toString(16).padStart(2, \"0\"),\n ),\n );\n}\n\nexport function functionColorsTuple(\n base: string,\n fn: (color: string) => string,\n length = 10,\n) {\n let b = base;\n const array = [\n base,\n ...Array.from({ length: length - 1 }).map(() => {\n b = fn(b);\n return b;\n }),\n ];\n return colorsTuple(array);\n}\n"],"mappings":"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","names":["theme"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mogh_ui",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Common UI components and styling used across Mogh apps.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -30,11 +30,14 @@
30
30
  },
31
31
  "peerDependencies": {
32
32
  "@mantine/core": "^9.0.0",
33
+ "@mantine/form": "^9.0.0",
33
34
  "@mantine/hooks": "^9.0.0",
34
35
  "@mantine/notifications": "^9.0.0",
35
36
  "@monaco-editor/react": "^4.7.0",
36
37
  "@tanstack/react-table": "^8.21.3",
38
+ "@tanstack/react-query": "^5.96.2",
37
39
  "lucide-react": "^1.7.0",
40
+ "mogh_auth_client": "^1.3.0",
38
41
  "monaco-editor": "^0.55.1",
39
42
  "monaco-yaml": "^5.4.1",
40
43
  "react": "^19.0.0",
@@ -43,13 +46,16 @@
43
46
  },
44
47
  "devDependencies": {
45
48
  "@mantine/core": "^9.0.0",
49
+ "@mantine/form": "^9.0.0",
46
50
  "@mantine/hooks": "^9.0.0",
47
51
  "@mantine/notifications": "^9.0.0",
48
52
  "@monaco-editor/react": "^4.7.0",
49
53
  "@tanstack/react-table": "^8.21.3",
54
+ "@tanstack/react-query": "^5.96.2",
50
55
  "@types/react": "^19.0.0",
51
56
  "@types/react-dom": "^19.0.0",
52
57
  "lucide-react": "^1.7.0",
58
+ "mogh_auth_client": "^1.3.0",
53
59
  "monaco-editor": "^0.55.1",
54
60
  "monaco-yaml": "^5.4.1",
55
61
  "react": "^19.0.0",