@ixo/ui 0.0.40 → 0.1.1

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 (86) hide show
  1. package/dist/.vite/manifest.json +53 -53
  2. package/dist/{UsersSolid-DjJvkV7c.cjs → UsersSolid-C29C53eo.cjs} +5 -3
  3. package/dist/UsersSolid-C29C53eo.cjs.map +1 -0
  4. package/dist/{UsersSolid-C6NkfomI.js → UsersSolid-CU7U_J3x.js} +5 -3
  5. package/dist/UsersSolid-CU7U_J3x.js.map +1 -0
  6. package/dist/components/AIChatToolbar/index.d.ts.map +1 -1
  7. package/dist/components/AppShellNavigation/components/AsideResizable.d.ts +3 -1
  8. package/dist/components/AppShellNavigation/components/AsideResizable.d.ts.map +1 -1
  9. package/dist/components/AppShellNavigation/components/MenuItem.d.ts.map +1 -1
  10. package/dist/components/AppShellNavigation/components/NavigationItemSkeleton.d.ts.map +1 -1
  11. package/dist/components/AppShellNavigation/components/RoomCategory.d.ts.map +1 -1
  12. package/dist/components/AppShellNavigation/components/RoomItem.d.ts.map +1 -1
  13. package/dist/components/AppShellNavigation/components/SelectedIndicator.d.ts.map +1 -1
  14. package/dist/components/AppShellNavigation/components/SpaceItem.d.ts.map +1 -1
  15. package/dist/components/AppShellNavigation/index.d.ts +2 -1
  16. package/dist/components/AppShellNavigation/index.d.ts.map +1 -1
  17. package/dist/components/MoreMenu/index.d.ts.map +1 -1
  18. package/dist/components/OracleMessage/index.d.ts.map +1 -1
  19. package/dist/components/Providers/DynamicMantineProvider.d.ts +18 -0
  20. package/dist/components/Providers/DynamicMantineProvider.d.ts.map +1 -0
  21. package/dist/components/Table/components/Td.d.ts.map +1 -1
  22. package/dist/components/Table/components/Th.d.ts.map +1 -1
  23. package/dist/components/Table/components/Tr.d.ts.map +1 -1
  24. package/dist/components/UserMessage/index.d.ts.map +1 -1
  25. package/dist/{components-CqTGmHcg.js → components-Du4fpG-7.js} +112 -107
  26. package/dist/components-Du4fpG-7.js.map +1 -0
  27. package/dist/{components-C4syxh7E.cjs → components-kyZV4xKe.cjs} +112 -107
  28. package/dist/components-kyZV4xKe.cjs.map +1 -0
  29. package/dist/constants/mantineTheme.d.ts +145 -0
  30. package/dist/constants/mantineTheme.d.ts.map +1 -0
  31. package/dist/constants/palette.d.ts +57 -0
  32. package/dist/constants/palette.d.ts.map +1 -0
  33. package/dist/export/components.cjs +1 -1
  34. package/dist/export/components.mjs +1 -1
  35. package/dist/export/icons/index.cjs +1 -1
  36. package/dist/export/icons/index.mjs +2 -2
  37. package/dist/hooks/usePalette.d.ts +3 -0
  38. package/dist/hooks/usePalette.d.ts.map +1 -0
  39. package/dist/{index-C6mephxW.js → index-3vUUcEku.js} +3 -3
  40. package/dist/{index-C6mephxW.js.map → index-3vUUcEku.js.map} +1 -1
  41. package/dist/{index-BiEPg62o.js → index-B4KPNoed.js} +2 -2
  42. package/dist/{index-BiEPg62o.js.map → index-B4KPNoed.js.map} +1 -1
  43. package/dist/{index-C7GIfL0K.js → index-B6tC0CJf.js} +2 -2
  44. package/dist/{index-C7GIfL0K.js.map → index-B6tC0CJf.js.map} +1 -1
  45. package/dist/{index-DrPdJdbB.js → index-BDqwxBhm.js} +2 -2
  46. package/dist/{index-DrPdJdbB.js.map → index-BDqwxBhm.js.map} +1 -1
  47. package/dist/{index-D_lOxfZA.js → index-BT7xEwsl.js} +2 -2
  48. package/dist/{index-D_lOxfZA.js.map → index-BT7xEwsl.js.map} +1 -1
  49. package/dist/{index-vV5U7oln.cjs → index-BUqAh_QT.cjs} +3 -3
  50. package/dist/{index-vV5U7oln.cjs.map → index-BUqAh_QT.cjs.map} +1 -1
  51. package/dist/{index-Br-LPA19.cjs → index-BqhR9ZZk.cjs} +2 -2
  52. package/dist/{index-Br-LPA19.cjs.map → index-BqhR9ZZk.cjs.map} +1 -1
  53. package/dist/{index-DJJDuYPt.cjs → index-CdvEC2KX.cjs} +3 -3
  54. package/dist/{index-DJJDuYPt.cjs.map → index-CdvEC2KX.cjs.map} +1 -1
  55. package/dist/{index-BZZVVGWc.cjs → index-CghhpKGt.cjs} +2 -2
  56. package/dist/{index-BZZVVGWc.cjs.map → index-CghhpKGt.cjs.map} +1 -1
  57. package/dist/{index-53vLP_Z1.cjs → index-DEb3PU0a.cjs} +2 -2
  58. package/dist/{index-53vLP_Z1.cjs.map → index-DEb3PU0a.cjs.map} +1 -1
  59. package/dist/{index-VKuhFO08.js → index-DfQr-2hP.js} +3 -3
  60. package/dist/{index-VKuhFO08.js.map → index-DfQr-2hP.js.map} +1 -1
  61. package/dist/{index-CtuDXjpW.js → index-Dq064c1o.js} +2 -2
  62. package/dist/{index-CtuDXjpW.js.map → index-Dq064c1o.js.map} +1 -1
  63. package/dist/{index-w1HUie3I.cjs → index-W8LiSKfV.cjs} +2 -2
  64. package/dist/{index-w1HUie3I.cjs.map → index-W8LiSKfV.cjs.map} +1 -1
  65. package/dist/{index-DBmK8wo0.js → index-dQrai2TZ.js} +2 -2
  66. package/dist/{index-DBmK8wo0.js.map → index-dQrai2TZ.js.map} +1 -1
  67. package/dist/{index-CAhZlLHI.cjs → index-kAjxkAWZ.cjs} +3 -3
  68. package/dist/{index-CAhZlLHI.cjs.map → index-kAjxkAWZ.cjs.map} +1 -1
  69. package/dist/{index-CSyWW5M9.js → index-nRUNkbvD.js} +3 -3
  70. package/dist/{index-CSyWW5M9.js.map → index-nRUNkbvD.js.map} +1 -1
  71. package/dist/{index-DjL20pr9.cjs → index-ovSIwiD8.cjs} +2 -2
  72. package/dist/{index-DjL20pr9.cjs.map → index-ovSIwiD8.cjs.map} +1 -1
  73. package/dist/{index-CF_eiQT5.cjs → index-wbesxk1o.cjs} +2 -2
  74. package/dist/{index-CF_eiQT5.cjs.map → index-wbesxk1o.cjs.map} +1 -1
  75. package/dist/{index-VcdXPa9t.cjs → index-xgtAVpBr.cjs} +2 -2
  76. package/dist/{index-VcdXPa9t.cjs.map → index-xgtAVpBr.cjs.map} +1 -1
  77. package/dist/{index-BNsUpFnG.js → index-yfwH6dmJ.js} +2 -2
  78. package/dist/{index-BNsUpFnG.js.map → index-yfwH6dmJ.js.map} +1 -1
  79. package/dist/types/IPalette.d.ts +56 -0
  80. package/dist/types/IPalette.d.ts.map +1 -0
  81. package/dist/utils/colors.d.ts.map +1 -1
  82. package/package.json +1 -1
  83. package/dist/UsersSolid-C6NkfomI.js.map +0 -1
  84. package/dist/UsersSolid-DjJvkV7c.cjs.map +0 -1
  85. package/dist/components-C4syxh7E.cjs.map +0 -1
  86. package/dist/components-CqTGmHcg.js.map +0 -1
@@ -0,0 +1,145 @@
1
+ import { MantineColorScheme, MantineThemeOverride } from '@mantine/core';
2
+ import { IPalette } from '../types/IPalette';
3
+ export declare function createDynamicMantineTheme(palette: IPalette, colorScheme?: MantineColorScheme): MantineThemeOverride;
4
+ declare const mantineTheme: {
5
+ focusRing?: "auto" | "always" | "never" | undefined;
6
+ scale?: number | undefined;
7
+ fontSmoothing?: boolean | undefined;
8
+ white?: string | undefined;
9
+ black?: string | undefined;
10
+ colors?: {
11
+ [x: string & {}]: import('@mantine/core').MantineColorsTuple | undefined;
12
+ dark?: import('@mantine/core').MantineColorsTuple | undefined;
13
+ gray?: import('@mantine/core').MantineColorsTuple | undefined;
14
+ red?: import('@mantine/core').MantineColorsTuple | undefined;
15
+ pink?: import('@mantine/core').MantineColorsTuple | undefined;
16
+ grape?: import('@mantine/core').MantineColorsTuple | undefined;
17
+ violet?: import('@mantine/core').MantineColorsTuple | undefined;
18
+ indigo?: import('@mantine/core').MantineColorsTuple | undefined;
19
+ blue?: import('@mantine/core').MantineColorsTuple | undefined;
20
+ cyan?: import('@mantine/core').MantineColorsTuple | undefined;
21
+ green?: import('@mantine/core').MantineColorsTuple | undefined;
22
+ lime?: import('@mantine/core').MantineColorsTuple | undefined;
23
+ yellow?: import('@mantine/core').MantineColorsTuple | undefined;
24
+ orange?: import('@mantine/core').MantineColorsTuple | undefined;
25
+ teal?: import('@mantine/core').MantineColorsTuple | undefined;
26
+ } | undefined;
27
+ primaryShade?: import('@mantine/core').MantineColorShade | {
28
+ light?: import('@mantine/core').MantineColorShade | undefined;
29
+ dark?: import('@mantine/core').MantineColorShade | undefined;
30
+ } | undefined;
31
+ primaryColor?: string | undefined;
32
+ variantColorResolver?: import('@mantine/core').VariantColorsResolver | undefined;
33
+ autoContrast?: boolean | undefined;
34
+ luminanceThreshold?: number | undefined;
35
+ fontFamily?: string | undefined;
36
+ fontFamilyMonospace?: string | undefined;
37
+ headings?: {
38
+ fontFamily?: string | undefined;
39
+ fontWeight?: string | undefined;
40
+ textWrap?: "balance" | "nowrap" | "wrap" | "stable" | "pretty" | undefined;
41
+ sizes?: {
42
+ h1?: {
43
+ fontSize?: string | undefined;
44
+ fontWeight?: string | undefined;
45
+ lineHeight?: string | undefined;
46
+ } | undefined;
47
+ h2?: {
48
+ fontSize?: string | undefined;
49
+ fontWeight?: string | undefined;
50
+ lineHeight?: string | undefined;
51
+ } | undefined;
52
+ h3?: {
53
+ fontSize?: string | undefined;
54
+ fontWeight?: string | undefined;
55
+ lineHeight?: string | undefined;
56
+ } | undefined;
57
+ h4?: {
58
+ fontSize?: string | undefined;
59
+ fontWeight?: string | undefined;
60
+ lineHeight?: string | undefined;
61
+ } | undefined;
62
+ h5?: {
63
+ fontSize?: string | undefined;
64
+ fontWeight?: string | undefined;
65
+ lineHeight?: string | undefined;
66
+ } | undefined;
67
+ h6?: {
68
+ fontSize?: string | undefined;
69
+ fontWeight?: string | undefined;
70
+ lineHeight?: string | undefined;
71
+ } | undefined;
72
+ } | undefined;
73
+ } | undefined;
74
+ radius?: {
75
+ [x: string & {}]: string | undefined;
76
+ xs?: string | undefined;
77
+ md?: string | undefined;
78
+ sm?: string | undefined;
79
+ lg?: string | undefined;
80
+ xl?: string | undefined;
81
+ } | undefined;
82
+ defaultRadius?: import('@mantine/core').MantineRadius | undefined;
83
+ spacing?: {
84
+ [x: string & {}]: string | undefined;
85
+ xs?: string | undefined;
86
+ md?: string | undefined;
87
+ sm?: string | undefined;
88
+ lg?: string | undefined;
89
+ xl?: string | undefined;
90
+ } | undefined;
91
+ fontSizes?: {
92
+ [x: string & {}]: string | undefined;
93
+ xs?: string | undefined;
94
+ md?: string | undefined;
95
+ sm?: string | undefined;
96
+ lg?: string | undefined;
97
+ xl?: string | undefined;
98
+ } | undefined;
99
+ lineHeights?: {
100
+ [x: string & {}]: string | undefined;
101
+ xs?: string | undefined;
102
+ md?: string | undefined;
103
+ sm?: string | undefined;
104
+ lg?: string | undefined;
105
+ xl?: string | undefined;
106
+ } | undefined;
107
+ breakpoints?: {
108
+ [x: string & {}]: string | undefined;
109
+ xs?: string | undefined;
110
+ md?: string | undefined;
111
+ sm?: string | undefined;
112
+ lg?: string | undefined;
113
+ xl?: string | undefined;
114
+ } | undefined;
115
+ shadows?: {
116
+ [x: string & {}]: string | undefined;
117
+ xs?: string | undefined;
118
+ md?: string | undefined;
119
+ sm?: string | undefined;
120
+ lg?: string | undefined;
121
+ xl?: string | undefined;
122
+ } | undefined;
123
+ respectReducedMotion?: boolean | undefined;
124
+ cursorType?: "default" | "pointer" | undefined;
125
+ defaultGradient?: {
126
+ from?: string | undefined;
127
+ to?: string | undefined;
128
+ deg?: number | undefined;
129
+ } | undefined;
130
+ activeClassName?: string | undefined;
131
+ focusClassName?: string | undefined;
132
+ components?: {
133
+ [x: string]: {
134
+ classNames?: any;
135
+ styles?: any;
136
+ vars?: any;
137
+ defaultProps?: any;
138
+ } | undefined;
139
+ } | undefined;
140
+ other?: {
141
+ [x: string]: any;
142
+ } | undefined;
143
+ };
144
+ export default mantineTheme;
145
+ //# sourceMappingURL=mantineTheme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mantineTheme.d.ts","sourceRoot":"","sources":["../../src/constants/mantineTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAe,MAAM,eAAe,CAAC;AAGtF,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAgN7C,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAE,kBAA2B,GAAG,oBAAoB,CAoG3H;AAED,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAyC,CAAC;AAE5D,eAAe,YAAY,CAAC"}
@@ -0,0 +1,57 @@
1
+ export declare const IXO_PALETTE: {
2
+ Neutral50: string;
3
+ Neutral100: string;
4
+ Neutral200: string;
5
+ Neutral300: string;
6
+ Neutral400: string;
7
+ Neutral500: string;
8
+ Neutral600: string;
9
+ Neutral700: string;
10
+ Neutral800: string;
11
+ Black: string;
12
+ NeutralDark50: string;
13
+ NeutralDark100: string;
14
+ NeutralDark200: string;
15
+ NeutralDark300: string;
16
+ NeutralDark400: string;
17
+ NeutralDark500: string;
18
+ NeutralDark600: string;
19
+ NeutralDark700: string;
20
+ NeutralDark800: string;
21
+ White: string;
22
+ WhiteSecondary: string;
23
+ accentActive: string;
24
+ accentSecondary: string;
25
+ accentHover: string;
26
+ accentLight: string;
27
+ companionBlue: string;
28
+ accentLighter: string;
29
+ accentDarker: string;
30
+ darkestBlue: string;
31
+ contributionBlue: string;
32
+ dangerFull: string;
33
+ dangerBrighter: string;
34
+ dangerBright: string;
35
+ dangerDark: string;
36
+ successFull: string;
37
+ successDarker: string;
38
+ successBright: string;
39
+ successSecondary: string;
40
+ orangeFull: string;
41
+ orangeBright: string;
42
+ transparent: string;
43
+ whiteTransparentDarker: string;
44
+ whiteTransparent: string;
45
+ whiteTransparentSecondary: string;
46
+ successTransparent: string;
47
+ glass: string;
48
+ glassGradient: string;
49
+ glassDarker: string;
50
+ glassLighter: string;
51
+ offsetCertificateGradient: string;
52
+ contributionCertificateGradient: string;
53
+ carbonCertificateGradient: string;
54
+ shadowGradient: string;
55
+ };
56
+ export declare function hexToRgb(hex: string, rate: number): string;
57
+ //# sourceMappingURL=palette.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"palette.d.ts","sourceRoot":"","sources":["../../src/constants/palette.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+EvB,CAAC;AAEF,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAU1D"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const export_components = require("../components-C4syxh7E.cjs");
3
+ const export_components = require("../components-kyZV4xKe.cjs");
4
4
  exports.AIChatToolbar = export_components.AIChatToolbar;
5
5
  exports.AIInputBar = export_components.AIInputBar;
6
6
  exports.AIResponse = export_components.AIResponse;
@@ -1,4 +1,4 @@
1
- import { o, n, m, f, g, h, j, k, l, p, A, q, B, r, s, t, u, v, w, x, y, D, z, E, G, H, J, K, ay, az, N, Q, P, V, W, X, Y, Z, F, _, $, R, av, a0, a1, a2, a3, I, a4, a5, L, a6, a7, a8, M, aA, aw, ax, O, a9, aa, ab, ac, ad, ae, af, ag, ah, e, aj, ak, ai, al, am, S, an, ao, ar, as, ap, aq, a, at, d, T, au, U, aB } from "../components-CqTGmHcg.js";
1
+ import { o, n, m, f, g, h, j, k, l, p, A, q, B, r, s, t, u, v, w, x, y, D, z, E, G, H, J, K, ay, az, N, Q, P, V, W, X, Y, Z, F, _, $, R, av, a0, a1, a2, a3, I, a4, a5, L, a6, a7, a8, M, aA, aw, ax, O, a9, aa, ab, ac, ad, ae, af, ag, ah, e, aj, ak, ai, al, am, S, an, ao, ar, as, ap, aq, a, at, d, T, au, U, aB } from "../components-Du4fpG-7.js";
2
2
  export {
3
3
  o as AIChatToolbar,
4
4
  n as AIInputBar,
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const UsersSolid = require("../../UsersSolid-DjJvkV7c.cjs");
3
+ const UsersSolid = require("../../UsersSolid-C29C53eo.cjs");
4
4
  const useUITheme = require("../../useUITheme-DqgAb7n1.cjs");
5
5
  const icon = require("../../icon-CuOdTwsX.cjs");
6
6
  const jsxRuntime = require("@emotion/react/jsx-runtime");
@@ -1,5 +1,5 @@
1
- import { g as getElementColor } from "../../UsersSolid-C6NkfomI.js";
2
- import { m, a0, A, f, K, x, R, d, T, c, k, b, e, W, a, l, a2, C, w, u, t, Z, _, F, D, a6, E, X, N, G, p, i, H, $, s, I, a1, z, Q, n, L, v, M, O, r, V, P, B, o, y, S, h, q, J, a3, Y, U, j, a4, a5 } from "../../UsersSolid-C6NkfomI.js";
1
+ import { g as getElementColor } from "../../UsersSolid-CU7U_J3x.js";
2
+ import { m, a0, A, f, K, x, R, d, T, c, k, b, e, W, a, l, a2, C, w, u, t, Z, _, F, D, a6, E, X, N, G, p, i, H, $, s, I, a1, z, Q, n, L, v, M, O, r, V, P, B, o, y, S, h, q, J, a3, Y, U, j, a4, a5 } from "../../UsersSolid-CU7U_J3x.js";
3
3
  import { u as useUITheme } from "../../useUITheme-7i8NJ2FG.js";
4
4
  import { b as buildSvgIcon } from "../../icon-YfwPb2T4.js";
5
5
  import { jsxs, jsx } from "@emotion/react/jsx-runtime";
@@ -0,0 +1,3 @@
1
+ import { IXO_PALETTE } from '../constants/palette';
2
+ export default function usePalette(): typeof IXO_PALETTE;
3
+ //# sourceMappingURL=usePalette.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePalette.d.ts","sourceRoot":"","sources":["../../src/hooks/usePalette.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGnD,MAAM,CAAC,OAAO,UAAU,UAAU,IACV,OAAO,WAAW,CACzC"}
@@ -1,7 +1,7 @@
1
1
  import { jsxs, jsx, Fragment } from "@emotion/react/jsx-runtime";
2
2
  import { useRef, useCallback } from "react";
3
- import { i as isValidClick, S as Spacer, A as Avatar, T as Typography, a as Tag, M as MoreMenu, I as IconButton } from "./components-CqTGmHcg.js";
4
- import { C as Close } from "./UsersSolid-C6NkfomI.js";
3
+ import { i as isValidClick, S as Spacer, A as Avatar, T as Typography, a as Tag, M as MoreMenu, I as IconButton } from "./components-Du4fpG-7.js";
4
+ import { C as Close } from "./UsersSolid-CU7U_J3x.js";
5
5
  function Header({ user, onClose, onHeaderClick, icon, title, moreMenu, action }) {
6
6
  const wrapperRef = useRef(null);
7
7
  const handleHeaderClick = useCallback(
@@ -63,4 +63,4 @@ function Header({ user, onClose, onHeaderClick, icon, title, moreMenu, action })
63
63
  export {
64
64
  Header as default
65
65
  };
66
- //# sourceMappingURL=index-C6mephxW.js.map
66
+ //# sourceMappingURL=index-3vUUcEku.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-C6mephxW.js","sources":["../src/components/ActionCard/components/Header/index.tsx"],"sourcesContent":["import { ReactElement, useCallback, MouseEvent, useRef } from \"react\";\n\nimport { Avatar } from \"../../../Avatar\";\nimport { IconButton } from \"../../../IconButton\";\nimport { MoreMenu } from \"../../../MoreMenu\";\nimport { Spacer } from \"../../../Spacer\";\nimport { Tag } from \"../../../Tag\";\nimport { Typography } from \"../../../Typography\";\nimport { Close } from \"../../../../icons\";\n\nimport { Props } from \"./types\";\nimport { isValidClick } from \"../../../../utils/dom\";\n\nexport default function Header({ user, onClose, onHeaderClick, icon, title, moreMenu, action }: Props): ReactElement {\n const wrapperRef = useRef<HTMLDivElement>(null);\n\n const handleHeaderClick = useCallback(\n (e: MouseEvent<HTMLElement>) => {\n if (onHeaderClick && isValidClick(e, wrapperRef.current)) {\n onHeaderClick();\n }\n },\n [onHeaderClick]\n );\n\n return (\n <div\n ref={wrapperRef}\n role={onHeaderClick ? \"button\" : undefined}\n tabIndex={onHeaderClick ? 0 : undefined}\n onClick={onHeaderClick ? handleHeaderClick : undefined}\n css={({ spacing, bg, radius }) => ({\n display: \"flex\",\n border: \"none\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n padding: spacing * 2,\n backgroundColor: bg.card,\n borderTopLeftRadius: radius.medium,\n borderTopRightRadius: radius.medium,\n cursor: onHeaderClick ? \"pointer\" : undefined\n })}\n >\n {user ? (\n <Spacer>\n <Avatar src={user.avatarSrc || \"\"} did={user.did} size={40} />\n <Spacer vertical alignItems=\"start\" distance={0}>\n <Spacer>\n <Typography.Text>{user.name}</Typography.Text>\n {user.badge ? <Tag value={user.badge} bgColor=\"selected\" textColor=\"secondary\" /> : null}\n </Spacer>\n <Typography.Text size=\"xs\">{user.description}</Typography.Text>\n </Spacer>\n </Spacer>\n ) : (\n <>{title ? <Tag value={title} icon={icon} bgColor=\"selected\" /> : <span />}</>\n )}\n {onClose || moreMenu || action ? (\n <div\n css={({ spacing }) => ({\n display: \"flex\",\n gap: spacing,\n alignItems: \"center\"\n })}\n >\n {moreMenu ? <MoreMenu items={moreMenu.items} controlColor=\"secondary\" /> : null}\n {action ? <IconButton icon={action.icon} size={20} onClick={action.onClick} /> : null}\n {onClose ? <IconButton icon={Close} size={20} colorDefault=\"secondary\" onClick={onClose} /> : null}\n </div>\n ) : (\n <span />\n )}\n </div>\n );\n}\n"],"names":[],"mappings":";;;;AAaA,SAAwB,OAAO,EAAE,MAAM,SAAS,eAAe,MAAM,OAAO,UAAU,UAA+B;AACnH,QAAM,aAAa,OAAuB,IAAI;AAE9C,QAAM,oBAAoB;AAAA,IACxB,CAAC,MAA+B;AAC9B,UAAI,iBAAiB,aAAa,GAAG,WAAW,OAAO,GAAG;AACxD,sBAAA;AAAA,MACF;AAAA,IACF;AAAA,IACA,CAAC,aAAa;AAAA,EAAA;AAGhB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACL,MAAM,gBAAgB,WAAW;AAAA,MACjC,UAAU,gBAAgB,IAAI;AAAA,MAC9B,SAAS,gBAAgB,oBAAoB;AAAA,MAC7C,KAAK,CAAC,EAAE,SAAS,IAAI,cAAc;AAAA,QACjC,SAAS;AAAA,QACT,QAAQ;AAAA,QACR,gBAAgB;AAAA,QAChB,YAAY;AAAA,QACZ,SAAS,UAAU;AAAA,QACnB,iBAAiB,GAAG;AAAA,QACpB,qBAAqB,OAAO;AAAA,QAC5B,sBAAsB,OAAO;AAAA,QAC7B,QAAQ,gBAAgB,YAAY;AAAA,MAAA;AAAA,MAGrC,UAAA;AAAA,QAAA,4BACE,QAAA,EACC,UAAA;AAAA,UAAA,oBAAC,QAAA,EAAO,KAAK,KAAK,aAAa,IAAI,KAAK,KAAK,KAAK,MAAM,GAAA,CAAI;AAAA,+BAC3D,QAAA,EAAO,UAAQ,MAAC,YAAW,SAAQ,UAAU,GAC5C,UAAA;AAAA,YAAA,qBAAC,QAAA,EACC,UAAA;AAAA,cAAA,oBAAC,WAAW,MAAX,EAAiB,UAAA,KAAK,MAAK;AAAA,cAC3B,KAAK,QAAQ,oBAAC,KAAA,EAAI,OAAO,KAAK,OAAO,SAAQ,YAAW,WAAU,YAAA,CAAY,IAAK;AAAA,YAAA,GACtF;AAAA,gCACC,WAAW,MAAX,EAAgB,MAAK,MAAM,eAAK,YAAA,CAAY;AAAA,UAAA,EAAA,CAC/C;AAAA,QAAA,GACF,IAEA,oBAAA,UAAA,EAAG,UAAA,QAAQ,oBAAC,KAAA,EAAI,OAAO,OAAO,MAAY,SAAQ,WAAA,CAAW,IAAK,oBAAC,UAAK,GAAG;AAAA,QAE5E,WAAW,YAAY,SACtB;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAK,CAAC,EAAE,eAAe;AAAA,cACrB,SAAS;AAAA,cACT,KAAK;AAAA,cACL,YAAY;AAAA,YAAA;AAAA,YAGb,UAAA;AAAA,cAAA,+BAAY,UAAA,EAAS,OAAO,SAAS,OAAO,cAAa,aAAY,IAAK;AAAA,cAC1E,SAAS,oBAAC,YAAA,EAAW,MAAM,OAAO,MAAM,MAAM,IAAI,SAAS,OAAO,QAAA,CAAS,IAAK;AAAA,cAChF,UAAU,oBAAC,YAAA,EAAW,MAAM,OAAO,MAAM,IAAI,cAAa,aAAY,SAAS,QAAA,CAAS,IAAK;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA,wBAG/F,QAAA,CAAA,CAAK;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAId;"}
1
+ {"version":3,"file":"index-3vUUcEku.js","sources":["../src/components/ActionCard/components/Header/index.tsx"],"sourcesContent":["import { ReactElement, useCallback, MouseEvent, useRef } from \"react\";\n\nimport { Avatar } from \"../../../Avatar\";\nimport { IconButton } from \"../../../IconButton\";\nimport { MoreMenu } from \"../../../MoreMenu\";\nimport { Spacer } from \"../../../Spacer\";\nimport { Tag } from \"../../../Tag\";\nimport { Typography } from \"../../../Typography\";\nimport { Close } from \"../../../../icons\";\n\nimport { Props } from \"./types\";\nimport { isValidClick } from \"../../../../utils/dom\";\n\nexport default function Header({ user, onClose, onHeaderClick, icon, title, moreMenu, action }: Props): ReactElement {\n const wrapperRef = useRef<HTMLDivElement>(null);\n\n const handleHeaderClick = useCallback(\n (e: MouseEvent<HTMLElement>) => {\n if (onHeaderClick && isValidClick(e, wrapperRef.current)) {\n onHeaderClick();\n }\n },\n [onHeaderClick]\n );\n\n return (\n <div\n ref={wrapperRef}\n role={onHeaderClick ? \"button\" : undefined}\n tabIndex={onHeaderClick ? 0 : undefined}\n onClick={onHeaderClick ? handleHeaderClick : undefined}\n css={({ spacing, bg, radius }) => ({\n display: \"flex\",\n border: \"none\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n padding: spacing * 2,\n backgroundColor: bg.card,\n borderTopLeftRadius: radius.medium,\n borderTopRightRadius: radius.medium,\n cursor: onHeaderClick ? \"pointer\" : undefined\n })}\n >\n {user ? (\n <Spacer>\n <Avatar src={user.avatarSrc || \"\"} did={user.did} size={40} />\n <Spacer vertical alignItems=\"start\" distance={0}>\n <Spacer>\n <Typography.Text>{user.name}</Typography.Text>\n {user.badge ? <Tag value={user.badge} bgColor=\"selected\" textColor=\"secondary\" /> : null}\n </Spacer>\n <Typography.Text size=\"xs\">{user.description}</Typography.Text>\n </Spacer>\n </Spacer>\n ) : (\n <>{title ? <Tag value={title} icon={icon} bgColor=\"selected\" /> : <span />}</>\n )}\n {onClose || moreMenu || action ? (\n <div\n css={({ spacing }) => ({\n display: \"flex\",\n gap: spacing,\n alignItems: \"center\"\n })}\n >\n {moreMenu ? <MoreMenu items={moreMenu.items} controlColor=\"secondary\" /> : null}\n {action ? <IconButton icon={action.icon} size={20} onClick={action.onClick} /> : null}\n {onClose ? <IconButton icon={Close} size={20} colorDefault=\"secondary\" onClick={onClose} /> : null}\n </div>\n ) : (\n <span />\n )}\n </div>\n );\n}\n"],"names":[],"mappings":";;;;AAaA,SAAwB,OAAO,EAAE,MAAM,SAAS,eAAe,MAAM,OAAO,UAAU,UAA+B;AACnH,QAAM,aAAa,OAAuB,IAAI;AAE9C,QAAM,oBAAoB;AAAA,IACxB,CAAC,MAA+B;AAC9B,UAAI,iBAAiB,aAAa,GAAG,WAAW,OAAO,GAAG;AACxD,sBAAA;AAAA,MACF;AAAA,IACF;AAAA,IACA,CAAC,aAAa;AAAA,EAAA;AAGhB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACL,MAAM,gBAAgB,WAAW;AAAA,MACjC,UAAU,gBAAgB,IAAI;AAAA,MAC9B,SAAS,gBAAgB,oBAAoB;AAAA,MAC7C,KAAK,CAAC,EAAE,SAAS,IAAI,cAAc;AAAA,QACjC,SAAS;AAAA,QACT,QAAQ;AAAA,QACR,gBAAgB;AAAA,QAChB,YAAY;AAAA,QACZ,SAAS,UAAU;AAAA,QACnB,iBAAiB,GAAG;AAAA,QACpB,qBAAqB,OAAO;AAAA,QAC5B,sBAAsB,OAAO;AAAA,QAC7B,QAAQ,gBAAgB,YAAY;AAAA,MAAA;AAAA,MAGrC,UAAA;AAAA,QAAA,4BACE,QAAA,EACC,UAAA;AAAA,UAAA,oBAAC,QAAA,EAAO,KAAK,KAAK,aAAa,IAAI,KAAK,KAAK,KAAK,MAAM,GAAA,CAAI;AAAA,+BAC3D,QAAA,EAAO,UAAQ,MAAC,YAAW,SAAQ,UAAU,GAC5C,UAAA;AAAA,YAAA,qBAAC,QAAA,EACC,UAAA;AAAA,cAAA,oBAAC,WAAW,MAAX,EAAiB,UAAA,KAAK,MAAK;AAAA,cAC3B,KAAK,QAAQ,oBAAC,KAAA,EAAI,OAAO,KAAK,OAAO,SAAQ,YAAW,WAAU,YAAA,CAAY,IAAK;AAAA,YAAA,GACtF;AAAA,gCACC,WAAW,MAAX,EAAgB,MAAK,MAAM,eAAK,YAAA,CAAY;AAAA,UAAA,EAAA,CAC/C;AAAA,QAAA,GACF,IAEA,oBAAA,UAAA,EAAG,UAAA,QAAQ,oBAAC,KAAA,EAAI,OAAO,OAAO,MAAY,SAAQ,WAAA,CAAW,IAAK,oBAAC,UAAK,GAAG;AAAA,QAE5E,WAAW,YAAY,SACtB;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAK,CAAC,EAAE,eAAe;AAAA,cACrB,SAAS;AAAA,cACT,KAAK;AAAA,cACL,YAAY;AAAA,YAAA;AAAA,YAGb,UAAA;AAAA,cAAA,+BAAY,UAAA,EAAS,OAAO,SAAS,OAAO,cAAa,aAAY,IAAK;AAAA,cAC1E,SAAS,oBAAC,YAAA,EAAW,MAAM,OAAO,MAAM,MAAM,IAAI,SAAS,OAAO,QAAA,CAAS,IAAK;AAAA,cAChF,UAAU,oBAAC,YAAA,EAAW,MAAM,OAAO,MAAM,IAAI,cAAa,aAAY,SAAS,QAAA,CAAS,IAAK;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA,wBAG/F,QAAA,CAAA,CAAK;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAId;"}
@@ -1,5 +1,5 @@
1
1
  import { jsx, jsxs } from "@emotion/react/jsx-runtime";
2
- import { a as Tag } from "./components-CqTGmHcg.js";
2
+ import { a as Tag } from "./components-Du4fpG-7.js";
3
3
  import { T as TAG_SMALL_HEIGHT } from "./constants-B7xlU8b8.js";
4
4
  const CONTROL_BTN_SIZE = 25;
5
5
  function ControlIcon({ icon: Icon, className, hasHover, disabled, onClick }) {
@@ -164,4 +164,4 @@ function Header({ icon, title, badge, controls, onClick }) {
164
164
  export {
165
165
  Header as default
166
166
  };
167
- //# sourceMappingURL=index-BiEPg62o.js.map
167
+ //# sourceMappingURL=index-B4KPNoed.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-BiEPg62o.js","sources":["../src/components/SodaCard/components/ControlIcon/index.tsx","../src/components/SodaCard/components/Header/index.tsx"],"sourcesContent":["import { ReactElement } from \"react\";\nimport { IconCmp } from \"../../../../types/IconCmp\";\n\nexport type Props = {\n hasHover?: boolean;\n icon: IconCmp;\n className?: string;\n disabled?: boolean;\n onClick?: () => void;\n};\n\nexport const CONTROL_BTN_SIZE = 25;\n\nexport function ControlIcon({ icon: Icon, className, hasHover, disabled, onClick }: Props): ReactElement {\n const Wrapper = onClick ? \"button\" : \"div\";\n return (\n <Wrapper\n onClick={onClick}\n disabled={disabled}\n css={{\n border: \"none\",\n backgroundColor: \"transparent\",\n display: \"flex\",\n alignItems: \"center\",\n padding: 0,\n cursor: disabled ? \"not-allowed\" : onClick ? \"pointer\" : undefined,\n height: CONTROL_BTN_SIZE,\n width: CONTROL_BTN_SIZE\n }}\n >\n <Icon\n className={className}\n color=\"secondary\"\n css={({ colors, transition }) => ({\n height: 16,\n \"& path\": { fill: colors.focus },\n ...(hasHover\n ? {\n \"&:hover path\": {\n fill: colors.focusTransparent50,\n transition: transition.duration\n }\n }\n : {})\n })}\n />\n </Wrapper>\n );\n}\n","import { ReactNode } from \"react\";\n\nimport { ControlIcon, CONTROL_BTN_SIZE } from \"../ControlIcon\";\nimport { Tag } from \"../../../Tag\";\nimport { IconCmp } from \"../../../../types/IconCmp\";\nimport { TAG_SMALL_HEIGHT } from \"../../../../utils/constants\";\n\nconst CONTROL_LIST_CLASS_NAME = \"soda-card-header-control-list\";\n\nexport type Props = {\n icon?: IconCmp;\n badge?: string | number;\n title?: string;\n onClick?: () => void;\n controls?: {\n icon: IconCmp;\n actions: Array<{\n icon: IconCmp;\n onClick: () => void;\n }>;\n };\n};\n\nexport default function Header({ icon, title, badge, controls, onClick }: Props): ReactNode {\n if (!icon && !title && !controls) {\n return null;\n }\n\n return (\n <div\n css={({ spacing }) => ({\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n paddingTop: spacing * 2,\n paddingLeft: spacing * 2,\n paddingRight: spacing * 2,\n height: TAG_SMALL_HEIGHT,\n boxSizing: \"content-box\",\n ...(controls?.actions\n ? {\n \"&:hover\": {\n [`.${CONTROL_LIST_CLASS_NAME}`]: {\n width: (controls.actions.length + 1) * CONTROL_BTN_SIZE\n },\n [`.${CONTROL_LIST_CLASS_NAME} > ul`]: {\n opacity: 1\n }\n }\n }\n : {})\n })}\n >\n {icon || title || badge ? (\n <div\n css={({ radius, spacing }) => ({\n padding: spacing / 4,\n display: \"inline-flex\",\n alignItems: \"center\",\n borderRadius: radius.medium,\n gap: spacing / 2\n })}\n >\n {icon || title ? (\n <span\n css={({ bg, radius }) => ({\n backgroundColor: bg.cardHighlight,\n display: \"flex\",\n alignItems: \"center\",\n borderRadius: radius.medium\n })}\n >\n {icon ? <ControlIcon icon={icon} onClick={onClick} /> : null}\n {title ? (\n <span\n css={({ font, fontSize, colors, spacing }) => ({\n fontFamily: font.main,\n fontSize: fontSize.s,\n color: colors.focus,\n lineHeight: \"21px\",\n paddingRight: spacing\n })}\n >\n {title}\n </span>\n ) : null}\n </span>\n ) : null}\n {badge ? <Tag value={badge} /> : null}\n </div>\n ) : (\n <span />\n )}\n {controls ? (\n <div\n className={CONTROL_LIST_CLASS_NAME}\n css={({ transition }) => ({\n position: \"relative\",\n alignSelf: \"stretch\",\n height: CONTROL_BTN_SIZE,\n width: CONTROL_BTN_SIZE,\n overflow: \"hidden\",\n transition: transition.duration\n })}\n >\n <ul\n css={({ transition, bg, radius }) => ({\n transition: transition.duration,\n listStyle: \"none\",\n padding: 0,\n margin: 0,\n display: \"flex\",\n backgroundColor: bg.cardHighlight,\n borderRadius: radius.big,\n opacity: 0\n })}\n >\n {controls.actions.map((action, index) => (\n <li key={index}>\n <ControlIcon icon={action.icon} onClick={action.onClick} hasHover />\n </li>\n ))}\n </ul>\n <div\n css={{\n position: \"absolute\",\n top: 0,\n right: 0,\n height: CONTROL_BTN_SIZE,\n width: CONTROL_BTN_SIZE,\n display: \"flex\",\n alignItems: \"center\"\n }}\n >\n <ControlIcon onClick={onClick} icon={controls.icon} />\n </div>\n </div>\n ) : (\n <span />\n )}\n </div>\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index-B4KPNoed.js","sources":["../src/components/SodaCard/components/ControlIcon/index.tsx","../src/components/SodaCard/components/Header/index.tsx"],"sourcesContent":["import { ReactElement } from \"react\";\nimport { IconCmp } from \"../../../../types/IconCmp\";\n\nexport type Props = {\n hasHover?: boolean;\n icon: IconCmp;\n className?: string;\n disabled?: boolean;\n onClick?: () => void;\n};\n\nexport const CONTROL_BTN_SIZE = 25;\n\nexport function ControlIcon({ icon: Icon, className, hasHover, disabled, onClick }: Props): ReactElement {\n const Wrapper = onClick ? \"button\" : \"div\";\n return (\n <Wrapper\n onClick={onClick}\n disabled={disabled}\n css={{\n border: \"none\",\n backgroundColor: \"transparent\",\n display: \"flex\",\n alignItems: \"center\",\n padding: 0,\n cursor: disabled ? \"not-allowed\" : onClick ? \"pointer\" : undefined,\n height: CONTROL_BTN_SIZE,\n width: CONTROL_BTN_SIZE\n }}\n >\n <Icon\n className={className}\n color=\"secondary\"\n css={({ colors, transition }) => ({\n height: 16,\n \"& path\": { fill: colors.focus },\n ...(hasHover\n ? {\n \"&:hover path\": {\n fill: colors.focusTransparent50,\n transition: transition.duration\n }\n }\n : {})\n })}\n />\n </Wrapper>\n );\n}\n","import { ReactNode } from \"react\";\n\nimport { ControlIcon, CONTROL_BTN_SIZE } from \"../ControlIcon\";\nimport { Tag } from \"../../../Tag\";\nimport { IconCmp } from \"../../../../types/IconCmp\";\nimport { TAG_SMALL_HEIGHT } from \"../../../../utils/constants\";\n\nconst CONTROL_LIST_CLASS_NAME = \"soda-card-header-control-list\";\n\nexport type Props = {\n icon?: IconCmp;\n badge?: string | number;\n title?: string;\n onClick?: () => void;\n controls?: {\n icon: IconCmp;\n actions: Array<{\n icon: IconCmp;\n onClick: () => void;\n }>;\n };\n};\n\nexport default function Header({ icon, title, badge, controls, onClick }: Props): ReactNode {\n if (!icon && !title && !controls) {\n return null;\n }\n\n return (\n <div\n css={({ spacing }) => ({\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n paddingTop: spacing * 2,\n paddingLeft: spacing * 2,\n paddingRight: spacing * 2,\n height: TAG_SMALL_HEIGHT,\n boxSizing: \"content-box\",\n ...(controls?.actions\n ? {\n \"&:hover\": {\n [`.${CONTROL_LIST_CLASS_NAME}`]: {\n width: (controls.actions.length + 1) * CONTROL_BTN_SIZE\n },\n [`.${CONTROL_LIST_CLASS_NAME} > ul`]: {\n opacity: 1\n }\n }\n }\n : {})\n })}\n >\n {icon || title || badge ? (\n <div\n css={({ radius, spacing }) => ({\n padding: spacing / 4,\n display: \"inline-flex\",\n alignItems: \"center\",\n borderRadius: radius.medium,\n gap: spacing / 2\n })}\n >\n {icon || title ? (\n <span\n css={({ bg, radius }) => ({\n backgroundColor: bg.cardHighlight,\n display: \"flex\",\n alignItems: \"center\",\n borderRadius: radius.medium\n })}\n >\n {icon ? <ControlIcon icon={icon} onClick={onClick} /> : null}\n {title ? (\n <span\n css={({ font, fontSize, colors, spacing }) => ({\n fontFamily: font.main,\n fontSize: fontSize.s,\n color: colors.focus,\n lineHeight: \"21px\",\n paddingRight: spacing\n })}\n >\n {title}\n </span>\n ) : null}\n </span>\n ) : null}\n {badge ? <Tag value={badge} /> : null}\n </div>\n ) : (\n <span />\n )}\n {controls ? (\n <div\n className={CONTROL_LIST_CLASS_NAME}\n css={({ transition }) => ({\n position: \"relative\",\n alignSelf: \"stretch\",\n height: CONTROL_BTN_SIZE,\n width: CONTROL_BTN_SIZE,\n overflow: \"hidden\",\n transition: transition.duration\n })}\n >\n <ul\n css={({ transition, bg, radius }) => ({\n transition: transition.duration,\n listStyle: \"none\",\n padding: 0,\n margin: 0,\n display: \"flex\",\n backgroundColor: bg.cardHighlight,\n borderRadius: radius.big,\n opacity: 0\n })}\n >\n {controls.actions.map((action, index) => (\n <li key={index}>\n <ControlIcon icon={action.icon} onClick={action.onClick} hasHover />\n </li>\n ))}\n </ul>\n <div\n css={{\n position: \"absolute\",\n top: 0,\n right: 0,\n height: CONTROL_BTN_SIZE,\n width: CONTROL_BTN_SIZE,\n display: \"flex\",\n alignItems: \"center\"\n }}\n >\n <ControlIcon onClick={onClick} icon={controls.icon} />\n </div>\n </div>\n ) : (\n <span />\n )}\n </div>\n );\n}\n"],"names":[],"mappings":"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"}