@wandelbots/mui 1.2.1 → 1.3.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.
@@ -1 +1 @@
1
- {"version":3,"file":"AdornedSelect.d.ts","sourceRoot":"","sources":["../../../src/components/AdornedSelect/AdornedSelect.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAKvD,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,QAAQ,CAAA;AA2DlD,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,GAAG;IAC5D,6DAA6D;IAC7D,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,iFAAiF;IACjF,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,aAAa,GAAI,sHAS3B,kBAAkB,gCAkEpB,CAAA"}
1
+ {"version":3,"file":"AdornedSelect.d.ts","sourceRoot":"","sources":["../../../src/components/AdornedSelect/AdornedSelect.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAKvD,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,QAAQ,CAAA;AA2DlD,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,GAAG;IAC5D,6DAA6D;IAC7D,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,iFAAiF;IACjF,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,aAAa,yHASvB,kBAAkB,gCAkEpB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"AdornedAutocomplete.d.ts","sourceRoot":"","sources":["../../../src/components/AdornedTextField/AdornedAutocomplete.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAEnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EACV,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,oBAAoB,CAAA;AAQ3B,MAAM,MAAM,wBAAwB,CAClC,CAAC,GAAG,MAAM,EACV,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,EAC5C,gBAAgB,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,EACpD,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,IAAI,IACzC,IAAI,CACN,iBAAiB,CAAC,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,CAAC,EAC1D,aAAa,GAAG,WAAW,CAC5B,GAAG;IACF,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,oBAAoB,CAAA;IAClC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,UAAU,CAAC,EAAE,SAAS,CAAA;IACtB,4FAA4F;IAC5F,SAAS,CAAC,EAAE,qBAAqB,CAAC,WAAW,CAAC,CAAA;CAC/C,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,GAC9B,CAAC,GAAG,MAAM,EACV,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,EAC5C,gBAAgB,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,EACpD,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,IAAI,EAC3C,uFASC,wBAAwB,CAAC,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,CAAC,gCA8BnE,CAAA"}
1
+ {"version":3,"file":"AdornedAutocomplete.d.ts","sourceRoot":"","sources":["../../../src/components/AdornedTextField/AdornedAutocomplete.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAEnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EACV,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,oBAAoB,CAAA;AAQ3B,MAAM,MAAM,wBAAwB,CAClC,CAAC,GAAG,MAAM,EACV,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,EAC5C,gBAAgB,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,EACpD,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,IAAI,IACzC,IAAI,CACN,iBAAiB,CAAC,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,CAAC,EAC1D,aAAa,GAAG,WAAW,CAC5B,GAAG;IACF,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,oBAAoB,CAAA;IAClC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,UAAU,CAAC,EAAE,SAAS,CAAA;IACtB,4FAA4F;IAC5F,SAAS,CAAC,EAAE,qBAAqB,CAAC,WAAW,CAAC,CAAA;CAC/C,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,GAC9B,CAAC,GAAG,MAAM,EACV,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,EAC5C,gBAAgB,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,EACpD,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,IAAI,yFAU1C,wBAAwB,CAAC,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,CAAC,gCA8BnE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"AdornedTextField.d.ts","sourceRoot":"","sources":["../../../src/components/AdornedTextField/AdornedTextField.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAG7D,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,QAAQ,CAAA;AA+JrD,MAAM,MAAM,qBAAqB,GAAG,cAAc,GAAG;IACnD,WAAW,CAAC,EAAE,oBAAoB,CAAA;CACnC,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,2BAG9B,qBAAqB,gCAcvB,CAAA"}
1
+ {"version":3,"file":"AdornedTextField.d.ts","sourceRoot":"","sources":["../../../src/components/AdornedTextField/AdornedTextField.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAG7D,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,QAAQ,CAAA;AA+JrD,MAAM,MAAM,qBAAqB,GAAG,cAAc,GAAG;IACnD,WAAW,CAAC,EAAE,oBAAoB,CAAA;CACnC,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,8BAG1B,qBAAqB,gCAcvB,CAAA"}
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("react/jsx-runtime"),R=require("@mui/material/IconButton");function x({icon:u,onClick:i,bgColor:e,isActive:n,disabled:c,dataTestId:l,ariaLabel:p,href:a,size:s,sx:t,ref:b}){return g.jsx(R,{ref:b,...a?{href:a}:{},size:s,onClick:i,disabled:c,sx:[r=>{var o,d;return{backgroundColor:n!==void 0?n?e??((o=r.palette.backgroundPaperElevation)==null?void 0:o[11]):"transparent":e??((d=r.palette.backgroundPaperElevation)==null?void 0:d[11]),borderRadius:`${r.shape.borderRadius}px`,width:"30px",height:"30px"}},...Array.isArray(t)?t:[t]],"data-testid":l,"aria-label":p,children:u})}exports.RoundedIconButton=x;
2
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const R=require("react/jsx-runtime"),x=require("@mui/material/IconButton");function y({icon:c,onClick:s,bgColor:n,isActive:r,disabled:l,dataTestId:e,ariaLabel:a,href:d,size:p,sx:o,ref:b,...g}){const v={...a!==void 0?{"aria-label":a}:{},...e!==void 0?{"data-testid":e}:{}};return R.jsx(x,{...g,ref:b,...d?{href:d}:{},size:p,onClick:s,disabled:l,sx:[t=>{var i,u;return{backgroundColor:r!==void 0?r?n??((i=t.palette.backgroundPaperElevation)==null?void 0:i[11]):"transparent":n??((u=t.palette.backgroundPaperElevation)==null?void 0:u[11]),borderRadius:`${t.shape.borderRadius}px`,width:"30px",height:"30px"}},...Array.isArray(o)?o:[o]],...v,children:c})}exports.RoundedIconButton=y;
@@ -21,10 +21,14 @@ export type RoundedIconButtonProps = {
21
21
  size?: IconButtonProps["size"];
22
22
  sx?: SxProps<Theme>;
23
23
  ref?: Ref<HTMLButtonElement>;
24
- };
24
+ } & Omit<IconButtonProps, "children" | "onClick" | "disabled" | "href" | "size" | "sx" | "ref">;
25
25
  /**
26
26
  * Small square (30×30) icon button with rounded corners on an elevated
27
27
  * background, styled to NovaDeck's canonical look.
28
+ *
29
+ * Unnamed props pass through to the underlying `IconButton`, which is what
30
+ * lets it sit inside a `Tooltip` — the named props below still take
31
+ * precedence.
28
32
  */
29
- export declare function RoundedIconButton({ icon, onClick, bgColor, isActive, disabled, dataTestId, ariaLabel, href, size, sx, ref, }: RoundedIconButtonProps): import("react").JSX.Element;
33
+ export declare function RoundedIconButton({ icon, onClick, bgColor, isActive, disabled, dataTestId, ariaLabel, href, size, sx, ref, ...rest }: RoundedIconButtonProps): import("react").JSX.Element;
30
34
  //# sourceMappingURL=RoundedIconButton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RoundedIconButton.d.ts","sourceRoot":"","sources":["../../../src/components/RoundedIconButton/RoundedIconButton.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAE9D,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,SAAS,CAAA;IACf,8EAA8E;IAC9E,OAAO,CAAC,EAAE,iBAAiB,CAAC,iBAAiB,GAAG,iBAAiB,CAAC,CAAA;IAClE,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,4FAA4F;IAC5F,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,sFAAsF;IACtF,IAAI,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAA;IAC9B,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAA;IACnB,GAAG,CAAC,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAA;CAC7B,CAAA;AAYD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,OAAO,EACP,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,SAAS,EACT,IAAI,EACJ,IAAI,EACJ,EAAE,EACF,GAAG,GACJ,EAAE,sBAAsB,+BA4BxB"}
1
+ {"version":3,"file":"RoundedIconButton.d.ts","sourceRoot":"","sources":["../../../src/components/RoundedIconButton/RoundedIconButton.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAE9D,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,SAAS,CAAA;IACf,8EAA8E;IAC9E,OAAO,CAAC,EAAE,iBAAiB,CAAC,iBAAiB,GAAG,iBAAiB,CAAC,CAAA;IAClE,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,4FAA4F;IAC5F,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,sFAAsF;IACtF,IAAI,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAA;IAC9B,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAA;IACnB,GAAG,CAAC,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAA;CAC7B,GAAG,IAAI,CACN,eAAe,EAKf,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,KAAK,CACrE,CAAA;AAYD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,OAAO,EACP,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,SAAS,EACT,IAAI,EACJ,IAAI,EACJ,EAAE,EACF,GAAG,EACH,GAAG,IAAI,EACR,EAAE,sBAAsB,+BAoCxB"}
@@ -1,45 +1,50 @@
1
1
  "use client";
2
- import { jsx as x } from "react/jsx-runtime";
3
- import g from "@mui/material/IconButton";
4
- function f({
5
- icon: i,
6
- onClick: p,
7
- bgColor: o,
2
+ import { jsx as g } from "react/jsx-runtime";
3
+ import k from "@mui/material/IconButton";
4
+ function h({
5
+ icon: u,
6
+ onClick: c,
7
+ bgColor: a,
8
8
  isActive: t,
9
- disabled: u,
10
- dataTestId: l,
11
- ariaLabel: c,
12
- href: n,
13
- size: b,
14
- sx: r,
15
- ref: s
9
+ disabled: l,
10
+ dataTestId: n,
11
+ ariaLabel: d,
12
+ href: i,
13
+ size: s,
14
+ sx: o,
15
+ ref: b,
16
+ ...v
16
17
  }) {
17
- return /* @__PURE__ */ x(
18
- g,
18
+ const x = {
19
+ ...d !== void 0 ? { "aria-label": d } : {},
20
+ ...n !== void 0 ? { "data-testid": n } : {}
21
+ };
22
+ return /* @__PURE__ */ g(
23
+ k,
19
24
  {
20
- ref: s,
21
- ...n ? { href: n } : {},
22
- size: b,
23
- onClick: p,
24
- disabled: u,
25
+ ...v,
26
+ ref: b,
27
+ ...i ? { href: i } : {},
28
+ size: s,
29
+ onClick: c,
30
+ disabled: l,
25
31
  sx: [
26
- (a) => {
27
- var d, e;
32
+ (r) => {
33
+ var e, p;
28
34
  return {
29
- backgroundColor: t !== void 0 ? t ? o ?? ((d = a.palette.backgroundPaperElevation) == null ? void 0 : d[11]) : "transparent" : o ?? ((e = a.palette.backgroundPaperElevation) == null ? void 0 : e[11]),
30
- borderRadius: `${a.shape.borderRadius}px`,
35
+ backgroundColor: t !== void 0 ? t ? a ?? ((e = r.palette.backgroundPaperElevation) == null ? void 0 : e[11]) : "transparent" : a ?? ((p = r.palette.backgroundPaperElevation) == null ? void 0 : p[11]),
36
+ borderRadius: `${r.shape.borderRadius}px`,
31
37
  width: "30px",
32
38
  height: "30px"
33
39
  };
34
40
  },
35
- ...Array.isArray(r) ? r : [r]
41
+ ...Array.isArray(o) ? o : [o]
36
42
  ],
37
- "data-testid": l,
38
- "aria-label": c,
39
- children: i
43
+ ...x,
44
+ children: u
40
45
  }
41
46
  );
42
47
  }
43
48
  export {
44
- f as RoundedIconButton
49
+ h as RoundedIconButton
45
50
  };
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("@mui/material/styles"),e=require("@wandelbots/design-tokens");function n(){return{palette:{mode:"dark",text:{primary:e.ZeroGravityTextPrimary,secondary:e.ZeroGravityTextSecondary,disabled:e.ZeroGravityTextDisabled},primary:{main:e.ZeroGravityNovaViolet5,dark:e.ZeroGravityNovaViolet4,light:e.ZeroGravityNovaViolet6,contrastText:"rgba(255, 255, 255, 0.87)"},secondary:{main:e.ZeroGravitySecondaryMain,dark:e.ZeroGravitySecondaryDark,contrastText:e.ZeroGravitySecondaryContrast},tertiary:{main:e.ColorsTealA200,dark:e.ColorsTeal400,light:e.ColorsTealA100,contrastText:"rgba(0, 0, 0, 1)"},error:{main:e.ColorsRed400,dark:e.ColorsRed600,light:e.ColorsRed200,contrastText:"rgba(255, 255, 255, 1)"},warning:{main:e.ColorsOrangeA200,dark:e.ColorsOrangeA400,light:e.ColorsOrangeA100,contrastText:"rgba(0, 0, 0, 0.87)"},success:{main:e.ColorsTeal400,dark:e.ColorsTeal700,light:e.ColorsTeal200,contrastText:"rgba(255, 255, 255, 0.87)"},background:{default:"#161825",paper:"#11131f"},action:{active:e.ZeroGravityActionActive,hover:e.ZeroGravityActionHover,selected:e.ZeroGravityActionSelected,disabledBackground:e.ZeroGravityActionDisabledBackground,focus:"#ffffff1f",disabled:e.ZeroGravityActionDisabled},common:{white:"rgba(255, 255, 255, 1)",black:"rgba(0, 0, 0, 1)"},divider:e.ZeroGravityDivider,backgroundPaperElevation:{0:"#11131f",1:e.ZeroGravityBackgroundPaperElevation1,2:e.ZeroGravityBackgroundPaperElevation2,3:"#1a1c2b",4:"#1d1f2f",5:e.ZeroGravityBackgroundPaperElevation5,6:"#232537",7:"#26283b",8:e.ZeroGravityBackgroundPaperElevation8,9:"#2c2e43",10:"#2f3147",11:e.ZeroGravityBackgroundPaperElevation11,12:"#35374f",13:"#383a53",14:"#3b3d57",15:"#3e405b",16:"#393f57"}},paletteExt:{primary:{hover:`${e.ZeroGravityNovaViolet5}14`,selected:`${e.ZeroGravityNovaViolet5}29`,focus:`${e.ZeroGravityNovaViolet5}1f`,focusVisible:`${e.ZeroGravityNovaViolet5}4d`,outlineBorder:`${e.ZeroGravityNovaViolet5}80`},secondary:{tonal:e.ZeroGravitySecondaryTonal},components:{inputFilledEnabledFill:e.ZeroGravityComponentsInputFilledEnabledFill}},shape:{borderRadius:Number.parseInt(e.RadiusSm,10)},typography:{fontFamily:e.FontFamilyBody,fontWeightRegular:500,body2:{fontSize:14,fontWeight:400},caption:{fontSize:12,fontWeight:400,letterSpacing:"0.4px"}}}}function l(){const t=e.RadiusSm;return{MuiCssBaseline:{styleOverrides:{"html, body, *":{scrollbarWidth:"none",msOverflowStyle:"none"},"html:hover, body:hover, *:hover":{scrollbarWidth:"thin",scrollbarColor:`${e.ZeroGravityDivider} transparent`}}},MuiButton:{styleOverrides:{root:{textTransform:"none",borderRadius:t}},variants:[{props:{color:"secondary",variant:"contained"},style:({theme:r})=>{var o,a,i;return{border:`1px solid ${r.palette.divider}`,background:(i=(a=(o=r.paletteExt)==null?void 0:o.secondary)==null?void 0:a.tonal)==null?void 0:i.toString()}}},{props:{color:"secondary",variant:"outlined"},style:({theme:r})=>({border:`1px solid ${r.palette.divider}`})}]},MuiTab:{styleOverrides:{root:({theme:r})=>({textTransform:"none",color:r.palette.text.secondary,"&.Mui-selected":{color:r.palette.text.primary}})}},MuiTabs:{styleOverrides:{root:({theme:r})=>{var o;return{background:(o=r.palette.backgroundPaperElevation)==null?void 0:o[1]}}}},MuiToggleButtonGroup:{styleOverrides:{root:{".MuiToggleButtonGroup-firstButton":{borderRadius:`${t} 0 0 ${t}`},".MuiToggleButtonGroup-lastButton":{borderRadius:`0 ${t} ${t} 0`}}}},MuiToggleButton:{styleOverrides:{root:{textTransform:"none",padding:"6px 16px"}}},MuiAutocomplete:{styleOverrides:{root:({theme:r})=>({background:r.palette.secondary.dark,fieldset:{border:"none"},"&.MuiAutocomplete-root":{borderRadius:"16px",border:"1px solid transparent"},"&.Mui-focused":{border:`1px solid ${r.palette.primary.main}`,label:{transform:"translate(14px, 6px) scale(0.75)",color:r.palette.text.secondary}},"&.MuiAutocomplete-hasClearIcon":{label:{transform:"translate(14px, 6px) scale(0.75)"}},label:{color:r.palette.text.secondary},input:{transform:"translate(0px, 6px)"}})}},MuiSelect:{styleOverrides:{root:({theme:r})=>({background:r.palette.secondary.dark,borderRadius:"16px",border:"1px solid transparent",fieldset:{border:"none"},"&:hover":{border:`1px solid ${r.palette.action.hover}`},"&.Mui-focused":{border:`1px solid ${r.palette.primary.main}`}})},variants:[{props:{variant:"filled"},style:{borderRadius:t,"::before, ::after":{visibility:"collapse"},".MuiInputBase-input":{padding:"6px 16px",borderRadius:t}}}]},MuiTooltip:{styleOverrides:{tooltip:({theme:r})=>{var o;return{background:(o=r.palette.backgroundPaperElevation)==null?void 0:o[1],border:`1px solid ${r.palette.divider}`,borderRadius:e.RadiusSm,padding:"8px 12px",lineHeight:"1.8em",fontWeight:"300",fontSize:"10px",maxWidth:"260px"}},arrow:({theme:r})=>{var o;return{"&:before":{border:`1px solid ${r.palette.divider}`,background:(o=r.palette.backgroundPaperElevation)==null?void 0:o[1]},color:r.palette.common.white}}}},MuiDrawer:{styleOverrides:{paper:{border:"none",boxShadow:"4px 0 8px -4px rgba(0, 0, 0, 0.3)"}}},MuiDialog:{styleOverrides:{paper:({theme:r})=>{var o;return{background:(o=r.palette.backgroundPaperElevation)==null?void 0:o[2],border:`1px solid ${r.palette.divider}`,borderRadius:"16px"}}}},MuiFab:{styleOverrides:{root:({theme:r})=>{var o,a;return{background:(a=(o=r.paletteExt)==null?void 0:o.secondary)==null?void 0:a.tonal}}},variants:[{props:{color:"primary"},style:({theme:r})=>({background:r.palette.primary.main})}]}}}function s(t){var r;for(const o of t)if(((r=o==null?void 0:o.palette)==null?void 0:r.mode)==="light")throw new Error("createNovaMuiTheme: palette.mode 'light' is not yet supported by @wandelbots/mui. Use the default dark theme or omit palette.mode. Light tokens will land when synced from Figma.")}function p(...t){return s(t),d.createTheme(n(),{components:l()},...t)}exports.commonComponents=l;exports.createNovaMuiTheme=p;exports.darkBaseOptions=n;
2
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("@mui/material/Alert"),c=require("@mui/material/styles"),r=require("@wandelbots/design-tokens");function d(){return{palette:{mode:"dark",text:{primary:r.ZeroGravityTextPrimary,secondary:r.ZeroGravityTextSecondary,disabled:r.ZeroGravityTextDisabled},primary:{main:r.ZeroGravityNovaViolet5,dark:r.ZeroGravityNovaViolet4,light:r.ZeroGravityNovaViolet6,contrastText:"rgba(255, 255, 255, 0.87)"},secondary:{main:r.ZeroGravitySecondaryMain,dark:r.ZeroGravitySecondaryDark,contrastText:r.ZeroGravitySecondaryContrast},tertiary:{main:r.ColorsTealA200,dark:r.ColorsTeal400,light:r.ColorsTealA100,contrastText:"rgba(0, 0, 0, 1)"},error:{main:r.ColorsRed400,dark:r.ColorsRed600,light:r.ColorsRed200,contrastText:"rgba(255, 255, 255, 1)"},warning:{main:r.ColorsOrangeA200,dark:r.ColorsOrangeA400,light:r.ColorsOrangeA100,contrastText:"rgba(0, 0, 0, 0.87)"},success:{main:r.ColorsTeal400,dark:r.ColorsTeal700,light:r.ColorsTeal200,contrastText:"rgba(255, 255, 255, 0.87)"},info:{main:r.ZeroGravityInfoMain,dark:r.ZeroGravityInfoDark,light:r.ZeroGravityInfoLight,contrastText:r.ZeroGravityInfoContrast},background:{default:"#161825",paper:"#11131f"},action:{active:r.ZeroGravityActionActive,hover:r.ZeroGravityActionHover,selected:r.ZeroGravityActionSelected,disabledBackground:r.ZeroGravityActionDisabledBackground,focus:"#ffffff1f",disabled:r.ZeroGravityActionDisabled},common:{white:"rgba(255, 255, 255, 1)",black:"rgba(0, 0, 0, 1)"},divider:r.ZeroGravityDivider,backgroundPaperElevation:{0:"#11131f",1:r.ZeroGravityBackgroundPaperElevation1,2:r.ZeroGravityBackgroundPaperElevation2,3:"#1a1c2b",4:"#1d1f2f",5:r.ZeroGravityBackgroundPaperElevation5,6:"#232537",7:"#26283b",8:r.ZeroGravityBackgroundPaperElevation8,9:"#2c2e43",10:"#2f3147",11:r.ZeroGravityBackgroundPaperElevation11,12:"#35374f",13:"#383a53",14:"#3b3d57",15:"#3e405b",16:"#393f57"}},paletteExt:{primary:{hover:`${r.ZeroGravityNovaViolet5}14`,selected:`${r.ZeroGravityNovaViolet5}29`,focus:`${r.ZeroGravityNovaViolet5}1f`,focusVisible:`${r.ZeroGravityNovaViolet5}4d`,outlineBorder:`${r.ZeroGravityNovaViolet5}80`},secondary:{tonal:r.ZeroGravitySecondaryTonal},components:{inputFilledEnabledFill:r.ZeroGravityComponentsInputFilledEnabledFill}},shape:{borderRadius:Number.parseInt(r.RadiusSm,10)},typography:{fontFamily:r.FontFamilyBody,fontWeightRegular:500,body2:{fontSize:14,fontWeight:400},caption:{fontSize:12,fontWeight:400,letterSpacing:"0.4px"}}}}const p=["error","warning","info","success"],u={error:{text:r.ZeroGravityComponentsAlertErrorColor,background:r.ZeroGravityComponentsAlertErrorBackground},warning:{text:r.ZeroGravityComponentsAlertWarningColor,background:r.ZeroGravityComponentsAlertWarningBackground},info:{text:r.ZeroGravityComponentsAlertInfoColor,background:r.ZeroGravityComponentsAlertInfoBackground},success:{text:r.ZeroGravityComponentsAlertSuccessColor,background:r.ZeroGravityComponentsAlertSuccessBackground}};function s(){const t=r.RadiusSm;return{MuiCssBaseline:{styleOverrides:{"html, body, *":{scrollbarWidth:"none",msOverflowStyle:"none"},"html:hover, body:hover, *:hover":{scrollbarWidth:"thin",scrollbarColor:`${r.ZeroGravityDivider} transparent`}}},MuiButton:{styleOverrides:{root:{textTransform:"none",borderRadius:t}},variants:[{props:{color:"secondary",variant:"contained"},style:({theme:e})=>{var o,i,n;return{border:`1px solid ${e.palette.divider}`,background:(n=(i=(o=e.paletteExt)==null?void 0:o.secondary)==null?void 0:i.tonal)==null?void 0:n.toString()}}},{props:{color:"secondary",variant:"outlined"},style:({theme:e})=>({border:`1px solid ${e.palette.divider}`})}]},MuiTab:{styleOverrides:{root:({theme:e})=>({textTransform:"none",color:e.palette.text.secondary,"&.Mui-selected":{color:e.palette.text.primary}})}},MuiTabs:{styleOverrides:{root:({theme:e})=>{var o;return{background:(o=e.palette.backgroundPaperElevation)==null?void 0:o[1]}}}},MuiToggleButtonGroup:{styleOverrides:{root:{".MuiToggleButtonGroup-firstButton":{borderRadius:`${t} 0 0 ${t}`},".MuiToggleButtonGroup-lastButton":{borderRadius:`0 ${t} ${t} 0`}}}},MuiToggleButton:{styleOverrides:{root:{textTransform:"none",padding:"6px 16px"}}},MuiAutocomplete:{styleOverrides:{root:({theme:e})=>({background:e.palette.secondary.dark,fieldset:{border:"none"},"&.MuiAutocomplete-root":{borderRadius:"16px",border:"1px solid transparent"},"&.Mui-focused":{border:`1px solid ${e.palette.primary.main}`,label:{transform:"translate(14px, 6px) scale(0.75)",color:e.palette.text.secondary}},"&.MuiAutocomplete-hasClearIcon":{label:{transform:"translate(14px, 6px) scale(0.75)"}},label:{color:e.palette.text.secondary},input:{transform:"translate(0px, 6px)"}})}},MuiSelect:{styleOverrides:{root:({theme:e})=>({background:e.palette.secondary.dark,borderRadius:"16px",border:"1px solid transparent",fieldset:{border:"none"},"&:hover":{border:`1px solid ${e.palette.action.hover}`},"&.Mui-focused":{border:`1px solid ${e.palette.primary.main}`}})},variants:[{props:{variant:"filled"},style:{borderRadius:t,"::before, ::after":{visibility:"collapse"},".MuiInputBase-input":{padding:"6px 16px",borderRadius:t}}}]},MuiTooltip:{styleOverrides:{tooltip:({theme:e})=>{var o;return{background:(o=e.palette.backgroundPaperElevation)==null?void 0:o[1],border:`1px solid ${e.palette.divider}`,borderRadius:r.RadiusSm,padding:"8px 12px",lineHeight:"1.8em",fontWeight:"300",fontSize:"10px",maxWidth:"260px"}},arrow:({theme:e})=>{var o;return{"&:before":{border:`1px solid ${e.palette.divider}`,background:(o=e.palette.backgroundPaperElevation)==null?void 0:o[1]},color:e.palette.common.white}}}},MuiAlert:{defaultProps:{variant:"outlined"},styleOverrides:{root:{borderRadius:t,alignItems:"center",padding:r.Spacing2},icon:{padding:0},message:{padding:0},action:{padding:`0 0 0 ${r.Spacing2}`,marginRight:0,alignItems:"center"}},variants:p.flatMap(e=>{const o=a=>a.severity??a.color??"success",{text:i,background:n}=u[e];return[{props:a=>a.variant==="outlined"&&o(a)===e,style:({theme:a})=>({borderColor:a.palette[e].main,color:i,[`& .${l.alertClasses.icon}`]:{color:a.palette[e].main}})},{props:a=>a.variant==="standard"&&o(a)===e,style:({theme:a})=>({backgroundColor:n,color:i,[`& .${l.alertClasses.icon}`]:{color:a.palette[e].main}})}]})},MuiDrawer:{styleOverrides:{paper:{border:"none",boxShadow:"4px 0 8px -4px rgba(0, 0, 0, 0.3)"}}},MuiDialog:{styleOverrides:{paper:({theme:e})=>{var o;return{background:(o=e.palette.backgroundPaperElevation)==null?void 0:o[2],border:`1px solid ${e.palette.divider}`,borderRadius:"16px"}}}},MuiFab:{styleOverrides:{root:({theme:e})=>{var o,i;return{background:(i=(o=e.paletteExt)==null?void 0:o.secondary)==null?void 0:i.tonal}}},variants:[{props:{color:"primary"},style:({theme:e})=>({background:e.palette.primary.main})}]}}}function v(t){var e;for(const o of t)if(((e=o==null?void 0:o.palette)==null?void 0:e.mode)==="light")throw new Error("createNovaMuiTheme: palette.mode 'light' is not yet supported by @wandelbots/mui. Use the default dark theme or omit palette.mode. Light tokens will land when synced from Figma.")}function y(...t){return v(t),c.createTheme(d(),{components:s()},...t)}exports.commonComponents=s;exports.createNovaMuiTheme=y;exports.darkBaseOptions=d;
@@ -1 +1 @@
1
- {"version":3,"file":"createNovaMuiTheme.d.ts","sourceRoot":"","sources":["../../src/theme/createNovaMuiTheme.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAoD/D,kEAAkE;AAClE,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,aAAa,CAAC,EAAE,MAAM,CAAA;KACvB,CAAA;IACD,SAAS,CAAC,EAAE;QACV,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,CAAA;IACD,UAAU,CAAC,EAAE;QACX,sBAAsB,CAAC,EAAE,MAAM,CAAA;KAChC,CAAA;CACF;AAED,UAAU,yBAAyB;IACjC,UAAU,CAAC,EAAE,cAAc,CAAA;CAC5B;AAED,oFAAoF;AACpF,MAAM,WAAW,wBAAwB;IACvC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;IACjC,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ;AAED,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,OAAO;QACf,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;QAC5B,wBAAwB,CAAC,EAAE,wBAAwB,CAAA;KACpD;IAED,UAAU,cAAc;QACtB,QAAQ,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAA;QACpC,wBAAwB,CAAC,EAAE,wBAAwB,CAAA;KACpD;IAED,UAAU,KAAM,SAAQ,yBAAyB;KAAG;IAEpD,UAAU,YAAa,SAAQ,yBAAyB;KAAG;CAC5D;AAID;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,IAAI,YAAY,CA4H9C;AAID;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,IAAI,WAAW,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAyM1E;AAqBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,SAAS,EAAE,YAAY,EAAE,GAAG,KAAK,CAOtE"}
1
+ {"version":3,"file":"createNovaMuiTheme.d.ts","sourceRoot":"","sources":["../../src/theme/createNovaMuiTheme.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAiE/D,kEAAkE;AAClE,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,aAAa,CAAC,EAAE,MAAM,CAAA;KACvB,CAAA;IACD,SAAS,CAAC,EAAE;QACV,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,CAAA;IACD,UAAU,CAAC,EAAE;QACX,sBAAsB,CAAC,EAAE,MAAM,CAAA;KAChC,CAAA;CACF;AAED,UAAU,yBAAyB;IACjC,UAAU,CAAC,EAAE,cAAc,CAAA;CAC5B;AAED,oFAAoF;AACpF,MAAM,WAAW,wBAAwB;IACvC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;IACjC,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ;AAED,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,OAAO;QACf,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;QAC5B,wBAAwB,CAAC,EAAE,wBAAwB,CAAA;KACpD;IAED,UAAU,cAAc;QACtB,QAAQ,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAA;QACpC,wBAAwB,CAAC,EAAE,wBAAwB,CAAA;KACpD;IAED,UAAU,KAAM,SAAQ,yBAAyB;KAAG;IAEpD,UAAU,YAAa,SAAQ,yBAAyB;KAAG;CAC5D;AAID;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,IAAI,YAAY,CAsI9C;AAyCD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,IAAI,WAAW,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAmR1E;AAqBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,SAAS,EAAE,YAAY,EAAE,GAAG,KAAK,CAOtE"}
@@ -1,50 +1,61 @@
1
1
  "use client";
2
- import { createTheme as s } from "@mui/material/styles";
3
- import { FontFamilyBody as p, ZeroGravityComponentsInputFilledEnabledFill as c, ZeroGravitySecondaryTonal as u, ZeroGravityNovaViolet5 as t, ZeroGravityBackgroundPaperElevation11 as b, ZeroGravityBackgroundPaperElevation8 as y, ZeroGravityBackgroundPaperElevation5 as v, ZeroGravityBackgroundPaperElevation2 as g, ZeroGravityBackgroundPaperElevation1 as f, ZeroGravityDivider as d, ZeroGravityActionDisabled as x, ZeroGravityActionDisabledBackground as m, ZeroGravityActionSelected as k, ZeroGravityActionHover as h, ZeroGravityActionActive as T, ColorsTeal200 as G, ColorsTeal700 as M, ColorsTeal400 as l, ColorsOrangeA100 as Z, ColorsOrangeA400 as B, ColorsOrangeA200 as $, ColorsRed200 as C, ColorsRed600 as O, ColorsRed400 as E, ColorsTealA100 as R, ColorsTealA200 as S, ZeroGravitySecondaryContrast as A, ZeroGravitySecondaryDark as w, ZeroGravitySecondaryMain as P, ZeroGravityNovaViolet6 as F, ZeroGravityNovaViolet4 as D, ZeroGravityTextDisabled as N, ZeroGravityTextSecondary as W, ZeroGravityTextPrimary as I, RadiusSm as i } from "@wandelbots/design-tokens";
4
- function V() {
2
+ import { alertClasses as d } from "@mui/material/Alert";
3
+ import { createTheme as u } from "@mui/material/styles";
4
+ import { FontFamilyBody as g, ZeroGravityComponentsInputFilledEnabledFill as y, ZeroGravitySecondaryTonal as v, ZeroGravityNovaViolet5 as n, ZeroGravityBackgroundPaperElevation11 as b, ZeroGravityBackgroundPaperElevation8 as m, ZeroGravityBackgroundPaperElevation5 as f, ZeroGravityBackgroundPaperElevation2 as x, ZeroGravityBackgroundPaperElevation1 as k, ZeroGravityDivider as p, ZeroGravityActionDisabled as G, ZeroGravityActionDisabledBackground as Z, ZeroGravityActionSelected as C, ZeroGravityActionHover as T, ZeroGravityActionActive as h, ZeroGravityInfoContrast as M, ZeroGravityInfoLight as A, ZeroGravityInfoDark as B, ZeroGravityInfoMain as E, ColorsTeal200 as S, ColorsTeal700 as $, ColorsTeal400 as s, ColorsOrangeA100 as R, ColorsOrangeA400 as O, ColorsOrangeA200 as w, ColorsRed200 as I, ColorsRed600 as P, ColorsRed400 as F, ColorsTealA100 as W, ColorsTealA200 as D, ZeroGravitySecondaryContrast as N, ZeroGravitySecondaryDark as V, ZeroGravitySecondaryMain as L, ZeroGravityNovaViolet6 as z, ZeroGravityNovaViolet4 as H, ZeroGravityTextDisabled as U, ZeroGravityTextSecondary as _, ZeroGravityTextPrimary as j, RadiusSm as l, Spacing2 as c, ZeroGravityComponentsAlertSuccessBackground as q, ZeroGravityComponentsAlertSuccessColor as J, ZeroGravityComponentsAlertInfoBackground as K, ZeroGravityComponentsAlertInfoColor as Q, ZeroGravityComponentsAlertWarningBackground as X, ZeroGravityComponentsAlertWarningColor as Y, ZeroGravityComponentsAlertErrorBackground as rr, ZeroGravityComponentsAlertErrorColor as or } from "@wandelbots/design-tokens";
5
+ function er() {
5
6
  return {
6
7
  palette: {
7
8
  mode: "dark",
8
9
  text: {
9
- primary: I,
10
- secondary: W,
11
- disabled: N
10
+ primary: j,
11
+ secondary: _,
12
+ disabled: U
12
13
  },
13
14
  primary: {
14
- main: t,
15
- dark: D,
16
- light: F,
15
+ main: n,
16
+ dark: H,
17
+ light: z,
17
18
  contrastText: "rgba(255, 255, 255, 0.87)"
18
19
  },
19
20
  secondary: {
20
- main: P,
21
- dark: w,
22
- contrastText: A
21
+ main: L,
22
+ dark: V,
23
+ contrastText: N
23
24
  },
24
25
  tertiary: {
25
- main: S,
26
- dark: l,
27
- light: R,
26
+ main: D,
27
+ dark: s,
28
+ light: W,
28
29
  contrastText: "rgba(0, 0, 0, 1)"
29
30
  },
30
31
  error: {
31
- main: E,
32
- dark: O,
33
- light: C,
32
+ main: F,
33
+ dark: P,
34
+ light: I,
34
35
  contrastText: "rgba(255, 255, 255, 1)"
35
36
  },
36
37
  warning: {
37
- main: $,
38
- dark: B,
39
- light: Z,
38
+ main: w,
39
+ dark: O,
40
+ light: R,
40
41
  contrastText: "rgba(0, 0, 0, 0.87)"
41
42
  },
42
43
  success: {
43
- main: l,
44
- dark: M,
45
- light: G,
44
+ main: s,
45
+ dark: $,
46
+ light: S,
46
47
  contrastText: "rgba(255, 255, 255, 0.87)"
47
48
  },
49
+ // Nova's info blue is the indigo `#536dfe`, not MUI's own light-blue
50
+ // `#29b6f6`. Without this entry MUI falls back to that light blue, so
51
+ // every info alert, chip and button rendered a colour the tokens do not
52
+ // contain.
53
+ info: {
54
+ main: E,
55
+ dark: B,
56
+ light: A,
57
+ contrastText: M
58
+ },
48
59
  background: {
49
60
  // NovaDeck's app background. Deliberately diverges from the token
50
61
  // ZeroGravityBackgroundDefault (#020617) — decision "Bg" in the spec.
@@ -54,34 +65,34 @@ function V() {
54
65
  // ZeroGravityBackgroundPaperElevation0 (skipped: "no use")
55
66
  },
56
67
  action: {
57
- active: T,
58
- hover: h,
59
- selected: k,
60
- disabledBackground: m,
68
+ active: h,
69
+ hover: T,
70
+ selected: C,
71
+ disabledBackground: Z,
61
72
  focus: "#ffffff1f",
62
73
  // ZeroGravityActionFocus (skipped: "no use")
63
- disabled: x
74
+ disabled: G
64
75
  },
65
76
  common: {
66
77
  white: "rgba(255, 255, 255, 1)",
67
78
  black: "rgba(0, 0, 0, 1)"
68
79
  },
69
- divider: d,
80
+ divider: p,
70
81
  backgroundPaperElevation: {
71
82
  0: "#11131f",
72
83
  // ZeroGravityBackgroundPaperElevation0 (skipped: "no use")
73
- 1: f,
74
- 2: g,
84
+ 1: k,
85
+ 2: x,
75
86
  3: "#1a1c2b",
76
87
  // ZeroGravityBackgroundPaperElevation3 (skipped: "no use")
77
88
  4: "#1d1f2f",
78
89
  // ZeroGravityBackgroundPaperElevation4 (skipped: "no use")
79
- 5: v,
90
+ 5: f,
80
91
  6: "#232537",
81
92
  // ZeroGravityBackgroundPaperElevation6 (skipped: "no use")
82
93
  7: "#26283b",
83
94
  // ZeroGravityBackgroundPaperElevation7 (skipped: "no use")
84
- 8: y,
95
+ 8: m,
85
96
  9: "#2c2e43",
86
97
  // ZeroGravityBackgroundPaperElevation9 (skipped: "no use")
87
98
  10: "#2f3147",
@@ -101,29 +112,29 @@ function V() {
101
112
  },
102
113
  paletteExt: {
103
114
  primary: {
104
- hover: `${t}14`,
115
+ hover: `${n}14`,
105
116
  // 8% alpha
106
- selected: `${t}29`,
117
+ selected: `${n}29`,
107
118
  // 16% alpha
108
- focus: `${t}1f`,
119
+ focus: `${n}1f`,
109
120
  // 12% alpha
110
- focusVisible: `${t}4d`,
121
+ focusVisible: `${n}4d`,
111
122
  // 30% alpha
112
- outlineBorder: `${t}80`
123
+ outlineBorder: `${n}80`
113
124
  // 50% alpha
114
125
  },
115
126
  secondary: {
116
- tonal: u
127
+ tonal: v
117
128
  },
118
129
  components: {
119
- inputFilledEnabledFill: c
130
+ inputFilledEnabledFill: y
120
131
  }
121
132
  },
122
133
  shape: {
123
- borderRadius: Number.parseInt(i, 10)
134
+ borderRadius: Number.parseInt(l, 10)
124
135
  },
125
136
  typography: {
126
- fontFamily: p,
137
+ fontFamily: g,
127
138
  fontWeightRegular: 500,
128
139
  // Weight 400 per Figma/NovaDeck (design ruling CP2.4) — fontWeightRegular
129
140
  // 500 would otherwise apply. Buttons keep weight 500 (fontWeightMedium),
@@ -145,8 +156,26 @@ function V() {
145
156
  }
146
157
  };
147
158
  }
148
- function z() {
149
- const o = i;
159
+ const tr = ["error", "warning", "info", "success"], ar = {
160
+ error: {
161
+ text: or,
162
+ background: rr
163
+ },
164
+ warning: {
165
+ text: Y,
166
+ background: X
167
+ },
168
+ info: {
169
+ text: Q,
170
+ background: K
171
+ },
172
+ success: {
173
+ text: J,
174
+ background: q
175
+ }
176
+ };
177
+ function nr() {
178
+ const e = l;
150
179
  return {
151
180
  MuiCssBaseline: {
152
181
  // Static (not a function-form callback) so consumer global selectors
@@ -159,7 +188,7 @@ function z() {
159
188
  },
160
189
  "html:hover, body:hover, *:hover": {
161
190
  scrollbarWidth: "thin",
162
- scrollbarColor: `${d} transparent`
191
+ scrollbarColor: `${p} transparent`
163
192
  }
164
193
  }
165
194
  },
@@ -167,45 +196,45 @@ function z() {
167
196
  styleOverrides: {
168
197
  root: {
169
198
  textTransform: "none",
170
- borderRadius: o
199
+ borderRadius: e
171
200
  }
172
201
  },
173
202
  variants: [
174
203
  {
175
204
  props: { color: "secondary", variant: "contained" },
176
- style: ({ theme: e }) => {
177
- var r, a, n;
205
+ style: ({ theme: r }) => {
206
+ var o, a, i;
178
207
  return {
179
- border: `1px solid ${e.palette.divider}`,
180
- background: (n = (a = (r = e.paletteExt) == null ? void 0 : r.secondary) == null ? void 0 : a.tonal) == null ? void 0 : n.toString()
208
+ border: `1px solid ${r.palette.divider}`,
209
+ background: (i = (a = (o = r.paletteExt) == null ? void 0 : o.secondary) == null ? void 0 : a.tonal) == null ? void 0 : i.toString()
181
210
  };
182
211
  }
183
212
  },
184
213
  {
185
214
  props: { color: "secondary", variant: "outlined" },
186
- style: ({ theme: e }) => ({
187
- border: `1px solid ${e.palette.divider}`
215
+ style: ({ theme: r }) => ({
216
+ border: `1px solid ${r.palette.divider}`
188
217
  })
189
218
  }
190
219
  ]
191
220
  },
192
221
  MuiTab: {
193
222
  styleOverrides: {
194
- root: ({ theme: e }) => ({
223
+ root: ({ theme: r }) => ({
195
224
  textTransform: "none",
196
- color: e.palette.text.secondary,
225
+ color: r.palette.text.secondary,
197
226
  "&.Mui-selected": {
198
- color: e.palette.text.primary
227
+ color: r.palette.text.primary
199
228
  }
200
229
  })
201
230
  }
202
231
  },
203
232
  MuiTabs: {
204
233
  styleOverrides: {
205
- root: ({ theme: e }) => {
206
- var r;
234
+ root: ({ theme: r }) => {
235
+ var o;
207
236
  return {
208
- background: (r = e.palette.backgroundPaperElevation) == null ? void 0 : r[1]
237
+ background: (o = r.palette.backgroundPaperElevation) == null ? void 0 : o[1]
209
238
  };
210
239
  }
211
240
  }
@@ -214,10 +243,10 @@ function z() {
214
243
  styleOverrides: {
215
244
  root: {
216
245
  ".MuiToggleButtonGroup-firstButton": {
217
- borderRadius: `${o} 0 0 ${o}`
246
+ borderRadius: `${e} 0 0 ${e}`
218
247
  },
219
248
  ".MuiToggleButtonGroup-lastButton": {
220
- borderRadius: `0 ${o} ${o} 0`
249
+ borderRadius: `0 ${e} ${e} 0`
221
250
  }
222
251
  }
223
252
  }
@@ -235,8 +264,8 @@ function z() {
235
264
  // palette overrides propagate.
236
265
  MuiAutocomplete: {
237
266
  styleOverrides: {
238
- root: ({ theme: e }) => ({
239
- background: e.palette.secondary.dark,
267
+ root: ({ theme: r }) => ({
268
+ background: r.palette.secondary.dark,
240
269
  fieldset: {
241
270
  border: "none"
242
271
  },
@@ -245,10 +274,10 @@ function z() {
245
274
  border: "1px solid transparent"
246
275
  },
247
276
  "&.Mui-focused": {
248
- border: `1px solid ${e.palette.primary.main}`,
277
+ border: `1px solid ${r.palette.primary.main}`,
249
278
  label: {
250
279
  transform: "translate(14px, 6px) scale(0.75)",
251
- color: e.palette.text.secondary
280
+ color: r.palette.text.secondary
252
281
  }
253
282
  },
254
283
  "&.MuiAutocomplete-hasClearIcon": {
@@ -257,7 +286,7 @@ function z() {
257
286
  }
258
287
  },
259
288
  label: {
260
- color: e.palette.text.secondary
289
+ color: r.palette.text.secondary
261
290
  },
262
291
  input: {
263
292
  transform: "translate(0px, 6px)"
@@ -267,18 +296,18 @@ function z() {
267
296
  },
268
297
  MuiSelect: {
269
298
  styleOverrides: {
270
- root: ({ theme: e }) => ({
271
- background: e.palette.secondary.dark,
299
+ root: ({ theme: r }) => ({
300
+ background: r.palette.secondary.dark,
272
301
  borderRadius: "16px",
273
302
  border: "1px solid transparent",
274
303
  fieldset: {
275
304
  border: "none"
276
305
  },
277
306
  "&:hover": {
278
- border: `1px solid ${e.palette.action.hover}`
307
+ border: `1px solid ${r.palette.action.hover}`
279
308
  },
280
309
  "&.Mui-focused": {
281
- border: `1px solid ${e.palette.primary.main}`
310
+ border: `1px solid ${r.palette.primary.main}`
282
311
  }
283
312
  })
284
313
  },
@@ -286,13 +315,13 @@ function z() {
286
315
  {
287
316
  props: { variant: "filled" },
288
317
  style: {
289
- borderRadius: o,
318
+ borderRadius: e,
290
319
  "::before, ::after": {
291
320
  visibility: "collapse"
292
321
  },
293
322
  ".MuiInputBase-input": {
294
323
  padding: "6px 16px",
295
- borderRadius: o
324
+ borderRadius: e
296
325
  }
297
326
  }
298
327
  }
@@ -300,12 +329,12 @@ function z() {
300
329
  },
301
330
  MuiTooltip: {
302
331
  styleOverrides: {
303
- tooltip: ({ theme: e }) => {
304
- var r;
332
+ tooltip: ({ theme: r }) => {
333
+ var o;
305
334
  return {
306
- background: (r = e.palette.backgroundPaperElevation) == null ? void 0 : r[1],
307
- border: `1px solid ${e.palette.divider}`,
308
- borderRadius: i,
335
+ background: (o = r.palette.backgroundPaperElevation) == null ? void 0 : o[1],
336
+ border: `1px solid ${r.palette.divider}`,
337
+ borderRadius: l,
309
338
  padding: "8px 12px",
310
339
  lineHeight: "1.8em",
311
340
  fontWeight: "300",
@@ -313,18 +342,87 @@ function z() {
313
342
  maxWidth: "260px"
314
343
  };
315
344
  },
316
- arrow: ({ theme: e }) => {
317
- var r;
345
+ arrow: ({ theme: r }) => {
346
+ var o;
318
347
  return {
319
348
  "&:before": {
320
- border: `1px solid ${e.palette.divider}`,
321
- background: (r = e.palette.backgroundPaperElevation) == null ? void 0 : r[1]
349
+ border: `1px solid ${r.palette.divider}`,
350
+ background: (o = r.palette.backgroundPaperElevation) == null ? void 0 : o[1]
322
351
  },
323
- color: e.palette.common.white
352
+ color: r.palette.common.white
324
353
  };
325
354
  }
326
355
  }
327
356
  },
357
+ MuiAlert: {
358
+ // Nova's alert is the outlined one: no fill, a coloured border. Set as a
359
+ // default prop rather than left to call sites — MUI's own fallback is the
360
+ // filled `standard` variant, so a call site that omits `variant` renders
361
+ // a visibly different box beside the ones that pass it. A consumer can
362
+ // still ask for a filled alert explicitly, and has to for a toast: an
363
+ // alert inside a Snackbar floats over page content with no surface of its
364
+ // own, and an outlined one would put its text on top of whatever is
365
+ // behind it.
366
+ defaultProps: { variant: "outlined" },
367
+ styleOverrides: {
368
+ // MUI top-aligns the severity icon, which only reads as deliberate when
369
+ // the message is a single line. Add an AlertTitle (or let the text wrap)
370
+ // and the icon hangs at the top of a tall box. Centre it instead, so
371
+ // every alert in a stack shows the icon on the same axis as its box.
372
+ // MUI pads an alert `6px 16px` and then adds more on the icon and
373
+ // message slots, so the box breathes unevenly: 16px at the sides, ~14px
374
+ // top and bottom. Pad the root by the 16px spacing token and zero the
375
+ // slot paddings, so every edge of the content sits the same distance
376
+ // from the border.
377
+ root: { borderRadius: e, alignItems: "center", padding: c },
378
+ icon: { padding: 0 },
379
+ message: { padding: 0 },
380
+ // The action slot carries a 4px top padding and packs its children at
381
+ // the top, which drops a trailing button off the centre line the icon
382
+ // and the message now share. It also pulls itself 8px past the root's
383
+ // right padding with a negative margin. Drop both, and take the gap to
384
+ // the message from the same 16px token as the root padding.
385
+ action: {
386
+ padding: `0 0 0 ${c}`,
387
+ marginRight: 0,
388
+ alignItems: "center"
389
+ }
390
+ },
391
+ // MUI derives every alert colour from one palette entry: it borders an
392
+ // outlined alert and paints its text in `<severity>.light`, and mixes a
393
+ // background for a standard one. The tokens split those three jobs
394
+ // apart — `<severity>.main` for the border and the icon,
395
+ // `components.alert.<severity>.color` for the text and
396
+ // `…background` for a standard alert's fill — so each severity gets its
397
+ // pair of variants below. Matched on the resolved severity so
398
+ // `severity` and its `color` alias both hit, with MUI's own `success`
399
+ // default filled in when neither is passed.
400
+ variants: tr.flatMap((r) => {
401
+ const o = (t) => t.severity ?? t.color ?? "success", { text: a, background: i } = ar[r];
402
+ return [
403
+ {
404
+ props: (t) => t.variant === "outlined" && o(t) === r,
405
+ style: ({ theme: t }) => ({
406
+ borderColor: t.palette[r].main,
407
+ color: a,
408
+ [`& .${d.icon}`]: {
409
+ color: t.palette[r].main
410
+ }
411
+ })
412
+ },
413
+ {
414
+ props: (t) => t.variant === "standard" && o(t) === r,
415
+ style: ({ theme: t }) => ({
416
+ backgroundColor: i,
417
+ color: a,
418
+ [`& .${d.icon}`]: {
419
+ color: t.palette[r].main
420
+ }
421
+ })
422
+ }
423
+ ];
424
+ })
425
+ },
328
426
  MuiDrawer: {
329
427
  styleOverrides: {
330
428
  paper: {
@@ -335,11 +433,11 @@ function z() {
335
433
  },
336
434
  MuiDialog: {
337
435
  styleOverrides: {
338
- paper: ({ theme: e }) => {
339
- var r;
436
+ paper: ({ theme: r }) => {
437
+ var o;
340
438
  return {
341
- background: (r = e.palette.backgroundPaperElevation) == null ? void 0 : r[2],
342
- border: `1px solid ${e.palette.divider}`,
439
+ background: (o = r.palette.backgroundPaperElevation) == null ? void 0 : o[2],
440
+ border: `1px solid ${r.palette.divider}`,
343
441
  borderRadius: "16px"
344
442
  };
345
443
  }
@@ -347,41 +445,41 @@ function z() {
347
445
  },
348
446
  MuiFab: {
349
447
  styleOverrides: {
350
- root: ({ theme: e }) => {
351
- var r, a;
448
+ root: ({ theme: r }) => {
449
+ var o, a;
352
450
  return {
353
- background: (a = (r = e.paletteExt) == null ? void 0 : r.secondary) == null ? void 0 : a.tonal
451
+ background: (a = (o = r.paletteExt) == null ? void 0 : o.secondary) == null ? void 0 : a.tonal
354
452
  };
355
453
  }
356
454
  },
357
455
  variants: [
358
456
  {
359
457
  props: { color: "primary" },
360
- style: ({ theme: e }) => ({
361
- background: e.palette.primary.main
458
+ style: ({ theme: r }) => ({
459
+ background: r.palette.primary.main
362
460
  })
363
461
  }
364
462
  ]
365
463
  }
366
464
  };
367
465
  }
368
- function H(o) {
369
- var e;
370
- for (const r of o)
371
- if (((e = r == null ? void 0 : r.palette) == null ? void 0 : e.mode) === "light")
466
+ function ir(e) {
467
+ var r;
468
+ for (const o of e)
469
+ if (((r = o == null ? void 0 : o.palette) == null ? void 0 : r.mode) === "light")
372
470
  throw new Error(
373
471
  "createNovaMuiTheme: palette.mode 'light' is not yet supported by @wandelbots/mui. Use the default dark theme or omit palette.mode. Light tokens will land when synced from Figma."
374
472
  );
375
473
  }
376
- function j(...o) {
377
- return H(o), s(
378
- V(),
379
- { components: z() },
380
- ...o
474
+ function cr(...e) {
475
+ return ir(e), u(
476
+ er(),
477
+ { components: nr() },
478
+ ...e
381
479
  );
382
480
  }
383
481
  export {
384
- z as commonComponents,
385
- j as createNovaMuiTheme,
386
- V as darkBaseOptions
482
+ nr as commonComponents,
483
+ cr as createNovaMuiTheme,
484
+ er as darkBaseOptions
387
485
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wandelbots/mui",
3
- "version": "1.2.1",
3
+ "version": "1.3.1",
4
4
  "description": "Wandelbots Nova MUI layer: dark-mode MUI-7 theme (createNovaMuiTheme) + presentational React components and input validators.",
5
5
  "type": "module",
6
6
  "sideEffects": [
@@ -36,20 +36,6 @@
36
36
  },
37
37
  "./package.json": "./package.json"
38
38
  },
39
- "scripts": {
40
- "build": "rimraf dist && vite build && tsc -p tsconfig.build.json --emitDeclarationOnly",
41
- "dev": "storybook dev -p 6006 --no-open",
42
- "build-storybook": "storybook build",
43
- "typecheck": "tsc -p tsconfig.json --noEmit",
44
- "test": "vitest run",
45
- "test:unit": "vitest run",
46
- "test:unit:watch": "vitest",
47
- "verify": "node scripts/verify.mjs",
48
- "screenshot": "node scripts/screenshot.mjs",
49
- "ci:test": "run-s ci:test:build ci:test:run",
50
- "ci:test:build": "storybook build --quiet --test",
51
- "ci:test:run": "node scripts/ci-test.mjs"
52
- },
53
39
  "peerDependencies": {
54
40
  "@emotion/react": "^11.11.1",
55
41
  "@emotion/styled": "^11.11.0",
@@ -66,26 +52,40 @@
66
52
  "@emotion/styled": "^11.14.0",
67
53
  "@mui/icons-material": "^7.3.7",
68
54
  "@mui/material": "^7.3.7",
69
- "@storybook/addon-docs": "^10.2.3",
70
- "@storybook/react-vite": "^10.2.3",
71
- "@storybook/test-runner": "^0.24.1",
55
+ "@storybook/addon-docs": "^10.5.10",
56
+ "@storybook/react-vite": "^10.5.10",
57
+ "@storybook/test-runner": "^0.24.4",
72
58
  "@testing-library/jest-dom": "^6.6.3",
73
59
  "@testing-library/react": "^16.3.2",
74
60
  "@testing-library/user-event": "^14.6.1",
75
- "@types/react": "^19.1.8",
76
- "@types/react-dom": "^19.1.0",
77
- "@vitejs/plugin-react": "^4.3.4",
61
+ "@types/react": "^19.2.17",
62
+ "@types/react-dom": "^19.2.3",
63
+ "@vitejs/plugin-react": "^4.4.0",
78
64
  "http-server": "^14.1.1",
79
- "jsdom": "^27.4.0",
65
+ "jsdom": "^29.1.1",
80
66
  "npm-run-all": "^4.1.5",
81
67
  "playwright": "^1.59.1",
82
- "react": "^19.1.0",
83
- "react-dom": "^19.1.0",
68
+ "react": "^19.2.8",
69
+ "react-dom": "^19.2.8",
84
70
  "rimraf": "^6.0.1",
85
71
  "rollup-plugin-preserve-directives": "^0.4.0",
86
- "storybook": "^10.2.3",
87
- "typescript": "^5.8.2",
88
- "vite": "^6.2.0",
72
+ "storybook": "^10.5.10",
73
+ "typescript": "^7.0.2",
74
+ "vite": "^6.4.3",
89
75
  "vitest": "^4.1.10"
76
+ },
77
+ "scripts": {
78
+ "build": "rimraf dist && vite build && tsc -p tsconfig.build.json --emitDeclarationOnly",
79
+ "dev": "storybook dev -p 6006 --no-open",
80
+ "build-storybook": "storybook build",
81
+ "typecheck": "tsc -p tsconfig.json --noEmit",
82
+ "test": "vitest run",
83
+ "test:unit": "vitest run",
84
+ "test:unit:watch": "vitest",
85
+ "verify": "node scripts/verify.mjs",
86
+ "screenshot": "node scripts/screenshot.mjs",
87
+ "ci:test": "run-s ci:test:build ci:test:run",
88
+ "ci:test:build": "storybook build --quiet --test",
89
+ "ci:test:run": "node scripts/ci-test.mjs"
90
90
  }
91
- }
91
+ }