@recursica/mui-adapter 0.3.0 → 0.5.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.
- package/CHANGELOG.md +12 -0
- package/dist/mui-adapter.cjs +1 -1
- package/dist/mui-adapter.cjs.map +1 -1
- package/dist/mui-adapter.css +1 -1
- package/dist/mui-adapter.js +216 -178
- package/dist/mui-adapter.js.map +1 -1
- package/dist/src/components/Autocomplete/Autocomplete.d.ts +3 -0
- package/dist/src/components/Autocomplete/index.d.ts +1 -0
- package/dist/src/components/Button/Button.d.ts +9 -2
- package/dist/src/components/Loader/Loader.d.ts +9 -2
- package/dist/src/components/index.d.ts +1 -0
- package/package.json +5 -2
- package/src/GlobalExemptions.modules.css +13 -0
- package/src/components/Accordion/Accordion.module.css +56 -0
- package/src/components/Accordion/Accordion.tsx +1 -0
- package/src/components/AssistiveElement/AssistiveElement.module.css +20 -0
- package/src/components/AssistiveElement/AssistiveElement.tsx +1 -0
- package/src/components/Autocomplete/Autocomplete.module.css +47 -0
- package/src/components/Autocomplete/Autocomplete.stories.tsx +35 -0
- package/src/components/Autocomplete/Autocomplete.tsx +8 -0
- package/src/components/Autocomplete/index.ts +1 -0
- package/src/components/Avatar/Avatar.module.css +74 -0
- package/src/components/Avatar/Avatar.tsx +1 -0
- package/src/components/Badge/Badge.module.css +29 -0
- package/src/components/Badge/Badge.tsx +1 -0
- package/src/components/Breadcrumb/Breadcrumb.module.css +6 -0
- package/src/components/Breadcrumb/Breadcrumb.tsx +1 -0
- package/src/components/Button/BUTTON_IMPLEMENTATION_NOTES.md +16 -0
- package/src/components/Button/Button.module.css +154 -18
- package/src/components/Button/Button.stories.tsx +48 -0
- package/src/components/Button/Button.tsx +35 -3
- package/src/components/Card/Card.module.css +38 -0
- package/src/components/Card/Card.tsx +1 -0
- package/src/components/Checkbox/Checkbox.module.css +39 -0
- package/src/components/Checkbox/Checkbox.tsx +1 -0
- package/src/components/Chip/Chip.module.css +51 -0
- package/src/components/Chip/Chip.tsx +1 -0
- package/src/components/DatePicker/DatePicker.module.css +42 -0
- package/src/components/DatePicker/DatePicker.tsx +1 -0
- package/src/components/Dropdown/Dropdown.module.css +46 -0
- package/src/components/Dropdown/Dropdown.tsx +1 -0
- package/src/components/FileInput/FileInput.module.css +47 -0
- package/src/components/FileInput/FileInput.tsx +1 -0
- package/src/components/FileUpload/FileUpload.module.css +40 -0
- package/src/components/FileUpload/FileUpload.tsx +1 -0
- package/src/components/HoverCard/HoverCard.module.css +23 -0
- package/src/components/HoverCard/HoverCard.tsx +1 -0
- package/src/components/Label/Label.module.css +35 -0
- package/src/components/Label/Label.tsx +1 -0
- package/src/components/Link/Link.module.css +8 -0
- package/src/components/Loader/LOADER_IMPLEMENTATION_NOTES.md +25 -0
- package/src/components/Loader/Loader.module.css +166 -0
- package/src/components/Loader/Loader.stories.tsx +90 -22
- package/src/components/Loader/Loader.tsx +69 -5
- package/src/components/Menu/Menu.module.css +53 -0
- package/src/components/Menu/Menu.tsx +1 -0
- package/src/components/Modal/Modal.module.css +36 -0
- package/src/components/Modal/Modal.tsx +1 -0
- package/src/components/NumberInput/NumberInput.module.css +47 -0
- package/src/components/NumberInput/NumberInput.tsx +1 -0
- package/src/components/Pagination/Pagination.module.css +81 -0
- package/src/components/Pagination/Pagination.tsx +1 -0
- package/src/components/Panel/Panel.module.css +38 -0
- package/src/components/Panel/Panel.tsx +1 -0
- package/src/components/Radio/Radio.module.css +37 -0
- package/src/components/Radio/Radio.tsx +1 -0
- package/src/components/ReadOnlyField/ReadOnlyField.module.css +16 -0
- package/src/components/ReadOnlyField/ReadOnlyField.tsx +1 -0
- package/src/components/SegmentedControl/SegmentedControl.module.css +47 -0
- package/src/components/SegmentedControl/SegmentedControl.tsx +1 -0
- package/src/components/Slider/Slider.module.css +86 -0
- package/src/components/Slider/Slider.tsx +1 -0
- package/src/components/Stepper/Stepper.module.css +71 -0
- package/src/components/Stepper/Stepper.tsx +1 -0
- package/src/components/Switch/Switch.module.css +39 -0
- package/src/components/Switch/Switch.tsx +1 -0
- package/src/components/Tabs/Tabs.module.css +79 -0
- package/src/components/Tabs/Tabs.tsx +1 -0
- package/src/components/TextArea/TextArea.module.css +37 -0
- package/src/components/TextArea/TextArea.tsx +1 -0
- package/src/components/TextField/TextField.module.css +47 -0
- package/src/components/TextField/TextField.tsx +1 -0
- package/src/components/TimePicker/TimePicker.module.css +41 -0
- package/src/components/TimePicker/TimePicker.tsx +1 -0
- package/src/components/Timeline/Timeline.module.css +78 -0
- package/src/components/Timeline/Timeline.tsx +1 -0
- package/src/components/Toast/Toast.module.css +32 -0
- package/src/components/Toast/Toast.tsx +1 -0
- package/src/components/Tooltip/Tooltip.module.css +25 -0
- package/src/components/Tooltip/Tooltip.tsx +1 -0
- package/src/components/TransferList/TransferList.module.css +38 -0
- package/src/components/TransferList/TransferList.tsx +1 -0
- package/src/components/index.ts +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @recursica/mui-adapter
|
|
2
2
|
|
|
3
|
+
## 0.5.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 0ead0d7: Updated with mui-adapter changes
|
|
8
|
+
|
|
9
|
+
## 0.4.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- cdd7b9d: Added Loader and Button and uploaded Button loading state
|
|
14
|
+
|
|
3
15
|
## 0.3.0
|
|
4
16
|
|
|
5
17
|
### Minor Changes
|
package/dist/mui-adapter.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),c=require("react"),f=require("@mui/material"),q=e=>r.jsx("div",{...e,children:"Accordion"}),U=e=>r.jsx("div",{...e,children:"AssistiveElement"}),H=e=>r.jsx("div",{...e,children:"Autocomplete"}),Y=e=>r.jsx("div",{...e,children:"Avatar"}),K=e=>r.jsx("div",{...e,children:"Badge"}),Q=c.forwardRef(function(t,n){return r.jsx(f.Box,{ref:n,...t})}),J=e=>r.jsx("div",{...e,children:"Breadcrumb"}),X=["className","classes","style","sx","color","bgcolor","backgroundColor","typography","fontFamily","fontSize","fontWeight","lineHeight","letterSpacing","textAlign","border","borderTop","borderBottom","borderLeft","borderRight","borderColor","borderRadius","boxShadow","display","position","zIndex"],Z=new Set(["m","my","mx","mt","mb","ml","mr","p","py","px","pt","pb","pl","pr","gap","rowGap","columnGap","top","left","bottom","right"]),l={"rec-none":"var(--recursica_brand_dimensions_general_none)","rec-sm":"var(--recursica_brand_dimensions_general_sm)","rec-default":"var(--recursica_brand_dimensions_general_default)","rec-md":"var(--recursica_brand_dimensions_general_md)","rec-lg":"var(--recursica_brand_dimensions_general_lg)","rec-xl":"var(--recursica_brand_dimensions_general_xl)","rec-2xl":"var(--recursica_brand_dimensions_general_2xl)"};function j(e){const t={...e};return"sx"in t&&delete t.sx,t}function b(e,t){if(t)return e;const n={...e};for(const o of X)o in n&&delete n[o];for(const[o,s]of Object.entries(n))typeof s=="string"&&s.startsWith("rec-")&&Z.has(o)&&s in l&&(n[o]=l[s]);return n}const ee="Loader-module__root___6iYOP",k={root:ee},T=c.forwardRef(function({variant:t="oval",size:n="default",overStyled:o=!1,...s},a){const d={sm:"small",md:"default",lg:"large",small:"small",default:"default",large:"large"}[n]||"default",u=b(s,o),p=u.className,x=p?`${k.root} ${p}`:k.root,_=()=>t==="bars"||t==="dots"?r.jsxs(r.Fragment,{children:[r.jsx("span",{}),r.jsx("span",{}),r.jsx("span",{})]}):null;return r.jsx("span",{ref:a,"data-variant":t,"data-size":d,...u,className:x,children:_()})});T.displayName="Loader";const re="Button-module__root___Q2R8-",ne="Button-module__labelText___rFV5p",te="Button-module__iconWrapper___uEKPa",v={root:re,labelText:ne,iconWrapper:te};function oe(e){return e==null||e===""?!1:typeof e=="string"?e.trim()!=="":!0}const A=c.forwardRef(function({variant:t="solid",size:n="default",icon:o,children:s,overStyled:a=!1,loaderVariant:i="oval",loaderSize:d,useRecursicaLoader:u=!0,...p},x){const _=b(p,a),m=_;delete m.fullWidth,delete m.color;const N=!!o||!!m.startIcon,R=!!m.endIcon,G=oe(s),P=(N||R)&&!G;let g="label";P?g="icon-only":(N||R)&&(g="icon-label"),typeof process<"u"&&process.env.NODE_ENV!=="production"&&P&&!m["aria-label"]&&console.warn('[Recursica Button] Icon-only buttons must provide an accessible name. Pass aria-label (e.g. aria-label="Submit").');const L=m.className,M=L?`${v.root} ${L}`:v.root,V=d??(n==="small"?"small":"default");let F=m.loadingIndicator;return u&&(F=r.jsx(T,{variant:i,size:V})),r.jsx(f.Button,{ref:x,disableRipple:!0,disableElevation:!0,className:M,loading:!!m.loading,loadingIndicator:F,startIcon:o!=null?r.jsx("span",{className:v.iconWrapper,"aria-hidden":!0,children:o}):void 0,"data-variant":t,"data-size":n,"data-content":g,...m.loading?{"data-loading":"true"}:{},..._,disabled:!!m.disabled||!!m.loading,children:r.jsx("span",{className:v.labelText,children:s})})});A.displayName="Button";const se=e=>r.jsx("div",{...e,children:"Card"}),ae=e=>r.jsx("div",{...e,children:"Checkbox"}),ie=e=>r.jsx("div",{...e,children:"Chip"}),w=c.forwardRef(function({children:t,size:n,...o},s){const a={"rec-sm":"sm","rec-default":"md","rec-md":"md","rec-lg":"lg","rec-xl":"xl","rec-2xl":"xl"},i=typeof n=="string"&&a[n]?a[n]:n;return r.jsx(f.Container,{ref:s,maxWidth:i,...o,children:t})});w.displayName="Container";const le=e=>r.jsx("div",{...e,children:"DatePicker"}),ce=e=>r.jsx("div",{...e,children:"Dropdown"}),de=e=>r.jsx("div",{...e,children:"FileInput"}),ue=e=>r.jsx("div",{...e,children:"FileUpload"}),B=c.forwardRef(function({children:t,gap:n="rec-default",rowGap:o,columnGap:s,...a},i){const d=j(a),u=typeof n=="string"&&n in l?l[n]:n,p=typeof o=="string"&&o in l?l[o]:o,x=typeof s=="string"&&s in l?l[s]:s;return r.jsx(f.Box,{ref:i,display:"flex",...d,gap:u,rowGap:p,columnGap:x,children:t})});B.displayName="Flex";const pe=e=>r.jsx("div",{...e,children:"FormControlLayout"}),me=e=>r.jsx("div",{...e,children:"FormControlWrapper"}),I=c.forwardRef(function({children:t,gap:n="rec-default",rowGap:o,columnGap:s,...a},i){const d=j(a),u=typeof n=="string"&&n in l?l[n]:n,p=typeof o=="string"&&o in l?l[o]:o,x=typeof s=="string"&&s in l?l[s]:s;return r.jsx(f.Stack,{ref:i,direction:"row",flexWrap:"wrap",spacing:u,sx:{...p?{rowGap:p}:{},...x?{columnGap:x}:{}},...d,children:t})});I.displayName="Group";const xe=e=>r.jsx("div",{...e,children:"HoverCard"}),fe=e=>r.jsx("div",{...e,children:"Label"}),he="Link-module__root___I0VGE",_e="Link-module__iconWrapper___W-LlF",ve="Link-module__labelText___wSvUy",y={root:he,iconWrapper:_e,labelText:ve},W=c.forwardRef(function({icon:t,children:n,overStyled:o=!1,...s},a){const i=b(s,o),u=i.className,p=u?`${y.root} ${u}`:y.root;return r.jsxs(f.Link,{ref:a,className:p,underline:"none",...t?{"data-has-icon":""}:{},...i,children:[t&&r.jsx("span",{className:y.iconWrapper,"aria-hidden":!0,children:t}),r.jsx("span",{className:y.labelText,children:n})]})});W.displayName="Link";const ye=e=>r.jsx("div",{...e,children:"Menu"}),be=e=>r.jsx("div",{...e,children:"Modal"}),ge=e=>r.jsx("div",{...e,children:"NumberInput"}),je=e=>r.jsx("div",{...e,children:"Pagination"}),Te=e=>r.jsx("div",{...e,children:"Panel"}),Ce=e=>r.jsx("div",{...e,children:"Radio"}),Se=e=>r.jsx("div",{...e,children:"ReadOnlyField"}),Ne=e=>r.jsx("div",{...e,children:"SegmentedControl"}),Re=e=>r.jsx("div",{...e,children:"Slider"}),E=c.forwardRef(function({children:t,gap:n="rec-default",...o},s){const a=j(o),i=typeof n=="string"&&n in l?l[n]:n;return r.jsx(f.Stack,{ref:s,spacing:i,...a,children:t})});E.displayName="Stack";const Pe=e=>r.jsx("div",{...e,children:"Stepper"}),Le=e=>r.jsx("div",{...e,children:"Switch"}),Fe=e=>r.jsx("div",{...e,children:"Table"}),ke=e=>r.jsx("div",{...e,children:"Tabs"}),C=c.forwardRef(function({typographyClass:t,overStyled:n=!1,...o},s){const a=b(o,n),d=a.className,u=d?`${t} ${d}`:t;return r.jsx(f.Typography,{ref:s,className:u,variant:"inherit",...a})});C.displayName="Typography";const z=c.forwardRef(function({variant:t="body",...n},o){const s=`recursica_brand_typography_${t}`;return r.jsx(C,{ref:o,typographyClass:s,...n})});z.displayName="Text";const $e=e=>r.jsx("div",{...e,children:"TextArea"}),Ae=e=>r.jsx("div",{...e,children:"TextField"}),we=e=>r.jsx("div",{...e,children:"TimePicker"}),Be=e=>r.jsx("div",{...e,children:"Timeline"}),O=c.forwardRef(function({order:t=1,component:n,...o},s){const a=`recursica_brand_typography_h${t}`,i=`h${t}`;return r.jsx(C,{ref:s,typographyClass:a,component:n||i,...o})});O.displayName="Title";const Ie=e=>r.jsx("div",{...e,children:"Toast"}),We=e=>r.jsx("div",{...e,children:"Tooltip"}),Ee=e=>r.jsx("div",{...e,children:"TransferList"}),ze="_root_1qhn7_3",Oe="_contents_1qhn7_18",h={root:ze,contents:Oe},D=c.forwardRef(function({layer:e,contentsOnly:t,children:n,className:o,style:s,...a},i){const d=t?o?`${h.root} ${h.contents} ${o}`:`${h.root} ${h.contents}`:o?`${h.root} ${o}`:h.root;return r.jsx("div",{ref:i,className:d,style:s,...t?{}:{"data-recursica-layer":String(e)},...a,children:n})});D.displayName="Layer";const S=({emptyText:e="N/A"})=>r.jsx(c.Fragment,{children:e});S.displayName="EmptyValueRenderer";S.check=e=>e==null||e===""||Array.isArray(e)&&e.length===0;const $="data-recursica-theme";function De({children:e,theme:t="light"}){return c.useEffect(()=>{const n=document.documentElement;return n.setAttribute($,t),()=>{n.removeAttribute($)}},[t]),r.jsx(r.Fragment,{children:e})}exports.Accordion=q;exports.AssistiveElement=U;exports.Autocomplete=H;exports.Avatar=Y;exports.Badge=K;exports.Box=Q;exports.Breadcrumb=J;exports.Button=A;exports.Card=se;exports.Checkbox=ae;exports.Chip=ie;exports.Container=w;exports.DatePicker=le;exports.Dropdown=ce;exports.EmptyValueRenderer=S;exports.FileInput=de;exports.FileUpload=ue;exports.Flex=B;exports.FormControlLayout=pe;exports.FormControlWrapper=me;exports.Group=I;exports.HoverCard=xe;exports.Label=fe;exports.Layer=D;exports.Link=W;exports.Loader=T;exports.Menu=ye;exports.Modal=be;exports.NumberInput=ge;exports.Pagination=je;exports.Panel=Te;exports.Radio=Ce;exports.ReadOnlyField=Se;exports.RecursicaThemeProvider=De;exports.SegmentedControl=Ne;exports.Slider=Re;exports.Stack=E;exports.Stepper=Pe;exports.Switch=Le;exports.Table=Fe;exports.Tabs=ke;exports.Text=z;exports.TextArea=$e;exports.TextField=Ae;exports.TimePicker=we;exports.Timeline=Be;exports.Title=O;exports.Toast=Ie;exports.Tooltip=We;exports.TransferList=Ee;
|
|
2
2
|
//# sourceMappingURL=mui-adapter.cjs.map
|
package/dist/mui-adapter.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mui-adapter.cjs","sources":["../src/components/Accordion/Accordion.tsx","../src/components/AssistiveElement/AssistiveElement.tsx","../src/components/Avatar/Avatar.tsx","../src/components/Badge/Badge.tsx","../src/components/Box/Box.tsx","../src/components/Breadcrumb/Breadcrumb.tsx","../src/utils/filterStylingProps.ts","../src/components/Button/Button.tsx","../src/components/Card/Card.tsx","../src/components/Checkbox/Checkbox.tsx","../src/components/Chip/Chip.tsx","../src/components/Container/Container.tsx","../src/components/DatePicker/DatePicker.tsx","../src/components/Dropdown/Dropdown.tsx","../src/components/FileInput/FileInput.tsx","../src/components/FileUpload/FileUpload.tsx","../src/components/Flex/Flex.tsx","../src/components/FormControlLayout/FormControlLayout.tsx","../src/components/FormControlWrapper/FormControlWrapper.tsx","../src/components/Group/Group.tsx","../src/components/HoverCard/HoverCard.tsx","../src/components/Label/Label.tsx","../src/components/Link/Link.tsx","../src/components/Loader/Loader.tsx","../src/components/Menu/Menu.tsx","../src/components/Modal/Modal.tsx","../src/components/NumberInput/NumberInput.tsx","../src/components/Pagination/Pagination.tsx","../src/components/Panel/Panel.tsx","../src/components/Radio/Radio.tsx","../src/components/ReadOnlyField/ReadOnlyField.tsx","../src/components/SegmentedControl/SegmentedControl.tsx","../src/components/Slider/Slider.tsx","../src/components/Stack/Stack.tsx","../src/components/Stepper/Stepper.tsx","../src/components/Switch/Switch.tsx","../src/components/Table/Table.tsx","../src/components/Tabs/Tabs.tsx","../src/components/Typography/Typography.tsx","../src/components/Text/Text.tsx","../src/components/TextArea/TextArea.tsx","../src/components/TextField/TextField.tsx","../src/components/TimePicker/TimePicker.tsx","../src/components/Timeline/Timeline.tsx","../src/components/Title/Title.tsx","../src/components/Toast/Toast.tsx","../src/components/Tooltip/Tooltip.tsx","../src/components/TransferList/TransferList.tsx","../../adapter-common/dist/adapter-common.js"],"sourcesContent":["import React from \"react\";\n\nexport type AccordionProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Accordion: React.FC<AccordionProps> = (props) => {\n return <div {...props}>Accordion</div>;\n};\n","import React from \"react\";\n\nexport type AssistiveElementProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const AssistiveElement: React.FC<AssistiveElementProps> = (props) => {\n return <div {...props}>AssistiveElement</div>;\n};\n","import React from \"react\";\n\nexport type AvatarProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Avatar: React.FC<AvatarProps> = (props) => {\n return <div {...props}>Avatar</div>;\n};\n","import React from \"react\";\n\nexport type BadgeProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Badge: React.FC<BadgeProps> = (props) => {\n return <div {...props}>Badge</div>;\n};\n","/**\n * Box layout wrapper.\n *\n * NOTE: Box is the lowest-level primitive layout component. It explicitly ALLOWS\n * the `sx` prop as an escape hatch. It does not use the strict RecursicaOverStyled gatekeeper\n * or any style stripping utilities.\n */\nimport React, { forwardRef } from \"react\";\nimport { Box as MUIBox, type BoxProps as MUIBoxProps } from \"@mui/material\";\n\nexport type BoxProps<C extends React.ElementType = \"div\"> = MUIBoxProps<\n C,\n { component?: C }\n>;\n\nexport const Box = forwardRef(function Box<C extends React.ElementType = \"div\">(\n props: BoxProps<C>,\n ref: React.Ref<Element>,\n) {\n return <MUIBox ref={ref} {...props} />;\n}) as <C extends React.ElementType = \"div\">(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n props: BoxProps<C> & { ref?: React.ForwardedRef<any> },\n) => React.ReactElement | null;\n","import React from \"react\";\n\nexport type BreadcrumbProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Breadcrumb: React.FC<BreadcrumbProps> = (props) => {\n return <div {...props}>Breadcrumb</div>;\n};\n","/**\n * filterStylingProps\n *\n * This utility acts as the central gatekeeper for strict design-system adherence across\n * all Recursica components mapped over MUI.\n *\n * PHILOSOPHY:\n * Recursica components are designed to be explicitly sandboxed tokens. Allowing external\n * `className` or MUI style props (`sx`, `classes`, etc.) breaks the design system by\n * allowing developers to leak arbitrary designs into components.\n *\n * By default (`overStyled=false`), this utility actively prevents developers from overriding\n * internal component styles (such as background, colors, typography, or internal classes).\n * It safely *permits* external layout overrides (like `margin` / `m`) so that components can\n * easily be spaced alongside other DOM elements.\n *\n * If a developer passes `overStyled={true}`, this filter allows all styling properties to\n * flow through to the underlying MUI component natively, at the developer's own risk.\n *\n * @param props - The raw component props passed down to the wrapper\n * @param overStyled - Boolean toggle to allow raw external styling. Defaults to false.\n * @returns Sanitized component props safe for internal styling merging\n */\n\nexport const BLOCKED_STYLING_KEYS = [\n \"className\",\n \"classes\", // MUI specific nested class overrides\n \"style\",\n \"sx\", // MUI's primary system style prop\n\n // Potential Box/Typography system props to block (if we wrap those)\n \"color\",\n \"bgcolor\",\n \"backgroundColor\",\n \"typography\",\n \"fontFamily\",\n \"fontSize\",\n \"fontWeight\",\n \"lineHeight\",\n \"letterSpacing\",\n \"textAlign\",\n \"border\",\n \"borderTop\",\n \"borderBottom\",\n \"borderLeft\",\n \"borderRight\",\n \"borderColor\",\n \"borderRadius\",\n \"boxShadow\",\n \"display\",\n \"position\",\n \"zIndex\",\n] as const;\n\nexport type BlockedStylingKeys = (typeof BLOCKED_STYLING_KEYS)[number];\n\nexport type RecursicaSpacing =\n | \"rec-none\"\n | \"rec-sm\"\n | \"rec-default\"\n | \"rec-md\"\n | \"rec-lg\"\n | \"rec-xl\"\n | \"rec-2xl\";\n\nexport type RecursicaSize = \"small\" | \"default\" | \"large\";\n\nconst LAYOUT_PROPS = new Set([\n \"m\",\n \"my\",\n \"mx\",\n \"mt\",\n \"mb\",\n \"ml\",\n \"mr\",\n \"p\",\n \"py\",\n \"px\",\n \"pt\",\n \"pb\",\n \"pl\",\n \"pr\",\n \"gap\",\n \"rowGap\",\n \"columnGap\",\n \"top\",\n \"left\",\n \"bottom\",\n \"right\",\n]);\n\nexport const SPACING_MAP: Record<string, string> = {\n \"rec-none\": \"var(--recursica_brand_dimensions_general_none)\",\n \"rec-sm\": \"var(--recursica_brand_dimensions_general_sm)\",\n \"rec-default\": \"var(--recursica_brand_dimensions_general_default)\",\n \"rec-md\": \"var(--recursica_brand_dimensions_general_md)\",\n \"rec-lg\": \"var(--recursica_brand_dimensions_general_lg)\",\n \"rec-xl\": \"var(--recursica_brand_dimensions_general_xl)\",\n \"rec-2xl\": \"var(--recursica_brand_dimensions_general_2xl)\",\n};\n\nexport type ForbiddenStyles = { [K in BlockedStylingKeys]?: never };\n\nexport type OmitSx<T> = Omit<T, \"sx\">;\n\nexport function filterSxProp<T extends Record<string, unknown>>(\n props: T,\n): Omit<T, \"sx\"> {\n const sanitized = { ...props };\n if (\"sx\" in sanitized) {\n delete sanitized[\"sx\"];\n }\n return sanitized as Omit<T, \"sx\">;\n}\n\nexport type RecursicaOverStyled<T> =\n | (Omit<T, BlockedStylingKeys> &\n ForbiddenStyles & { overStyled?: false | undefined })\n | (T & { overStyled: true });\n\nexport function filterStylingProps<T extends Record<string, unknown>>(\n props: T,\n overStyled?: boolean,\n): Partial<T> {\n if (overStyled) {\n return props;\n }\n\n const sanitized = { ...props };\n\n for (const prop of BLOCKED_STYLING_KEYS) {\n if (prop in sanitized) {\n delete sanitized[prop];\n }\n }\n\n // Intercept Recursica spacing tokens for valid layout properties\n for (const [key, value] of Object.entries(sanitized)) {\n if (\n typeof value === \"string\" &&\n value.startsWith(\"rec-\") &&\n LAYOUT_PROPS.has(key)\n ) {\n if (value in SPACING_MAP) {\n (sanitized as Record<string, unknown>)[key] = SPACING_MAP[value];\n }\n }\n }\n\n return sanitized;\n}\n","import React, { forwardRef } from \"react\";\nimport {\n Button as MuiButton,\n type ButtonProps as MuiButtonProps,\n} from \"@mui/material\";\nimport {\n filterStylingProps,\n type RecursicaOverStyled,\n} from \"../../utils/filterStylingProps\";\nimport styles from \"./Button.module.css\";\n\nexport interface RecursicaButtonProps {\n variant?: \"solid\" | \"outline\" | \"text\";\n size?: \"default\" | \"small\";\n icon?: React.ReactNode;\n /**\n * For polymorphic support (e.g., `component=\"a\"`), native to MUI.\n */\n component?: React.ElementType;\n}\n\nexport type ButtonProps = RecursicaOverStyled<\n Omit<MuiButtonProps, \"variant\" | \"size\" | \"color\" | \"fullWidth\"> &\n RecursicaButtonProps\n>;\n\nfunction hasVisibleChildren(children: React.ReactNode): boolean {\n if (children == null || children === \"\") return false;\n if (typeof children === \"string\") return children.trim() !== \"\";\n return true;\n}\n\n/**\n * Recursica Button component wrapping MUI's Button.\n *\n * Supports polymorphism via the `component` prop for custom element rendering.\n * This is particularly useful when you need a button that behaves as a hyperlink (rendering an `<a>` tag)\n * or integrates with a routing library (e.g., `react-router-dom` or Next.js), while preserving full visual styling.\n *\n * @example\n * ```tsx\n * // Renders as an <a> tag natively\n * <Button component=\"a\" href=\"/dashboard\" target=\"_blank\">Navigate</Button>\n *\n * // Renders using a custom router link\n * <Button component={Link} to=\"/home\">Home</Button>\n * ```\n */\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(\n function Button(\n {\n variant = \"solid\",\n size = \"default\",\n icon,\n children,\n overStyled = false,\n ...rest\n },\n ref,\n ) {\n const sanitizedProps = filterStylingProps(rest, overStyled);\n const restRecord = sanitizedProps as Record<string, unknown>;\n\n // Explicitly delete blocked semantic expansion dimension props that MUI uses natively\n delete restRecord[\"fullWidth\"];\n delete restRecord[\"color\"]; // Recursica handles colors internally via tokens\n\n const hasStartIcon = !!icon || !!restRecord[\"startIcon\"];\n const hasEndIcon = !!restRecord[\"endIcon\"];\n const isIconOnly =\n (hasStartIcon || hasEndIcon) && !hasVisibleChildren(children);\n\n if (\n typeof process !== \"undefined\" &&\n process.env.NODE_ENV !== \"production\" &&\n isIconOnly &&\n !restRecord[\"aria-label\"]\n ) {\n console.warn(\n '[Recursica Button] Icon-only buttons must provide an accessible name. Pass aria-label (e.g. aria-label=\"Submit\").',\n );\n }\n\n const classNameProp = restRecord.className as string | undefined;\n const finalClass = classNameProp\n ? `${styles.root} ${classNameProp}`\n : styles.root;\n\n // We don't map Recursica variant/size to MUI's because we want to completely disable MUI's native\n // variant logic (e.g., elevation, shadows) and style everything strictly through our CSS Modules.\n // However, Mui Button requires some string, but we can just leave it as standard or ignore since\n // our CSS resets its properties anyway, but to be clean we just don't pass variant to MUI.\n\n return (\n <MuiButton\n ref={ref}\n disableRipple\n disableElevation\n className={finalClass}\n startIcon={\n icon != null ? (\n <span className={styles.iconWrapper} aria-hidden>\n {icon}\n </span>\n ) : undefined\n }\n data-variant={variant}\n data-size={size}\n {...(isIconOnly ? { \"data-icon-only\": \"\" } : {})}\n {...sanitizedProps}\n >\n <span className={styles.labelText}>{children}</span>\n </MuiButton>\n );\n },\n);\n\nButton.displayName = \"Button\";\n","import React from \"react\";\n\nexport type CardProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Card: React.FC<CardProps> = (props) => {\n return <div {...props}>Card</div>;\n};\n","import React from \"react\";\n\nexport type CheckboxProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Checkbox: React.FC<CheckboxProps> = (props) => {\n return <div {...props}>Checkbox</div>;\n};\n","import React from \"react\";\n\nexport type ChipProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Chip: React.FC<ChipProps> = (props) => {\n return <div {...props}>Chip</div>;\n};\n","/**\n * Container layout wrapper.\n *\n * NOTE: As a foundational structural boundary, the Container component DOES NOT use\n * the `RecursicaOverStyled` gatekeeper. Furthermore, unlike other primitive layouts\n * (Stack, Group, Flex), Container explicitly ALLOWS the `sx` prop as an escape hatch\n * for advanced layout positioning.\n */\nimport React, { forwardRef } from \"react\";\nimport {\n Container as MUIContainer,\n type ContainerProps as MUIContainerProps,\n} from \"@mui/material\";\nimport { type RecursicaSpacing } from \"../../utils/filterStylingProps\";\n\nexport interface RecursicaContainerProps {\n children?: React.ReactNode;\n size?:\n | \"xs\"\n | \"sm\"\n | \"md\"\n | \"lg\"\n | \"xl\"\n | RecursicaSpacing\n | (string & {})\n | number;\n}\n\nexport type ContainerProps = Omit<MUIContainerProps, \"maxWidth\"> &\n RecursicaContainerProps;\n\nexport const Container = forwardRef<HTMLDivElement, ContainerProps>(\n function Container({ children, size, ...rest }, ref) {\n const mapSize: Record<string, \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\"> = {\n \"rec-sm\": \"sm\",\n \"rec-default\": \"md\",\n \"rec-md\": \"md\",\n \"rec-lg\": \"lg\",\n \"rec-xl\": \"xl\",\n \"rec-2xl\": \"xl\",\n };\n\n const resolvedSize =\n typeof size === \"string\" && mapSize[size] ? mapSize[size] : size;\n\n return (\n <MUIContainer\n ref={ref}\n maxWidth={resolvedSize as MUIContainerProps[\"maxWidth\"]}\n {...rest}\n >\n {children}\n </MUIContainer>\n );\n },\n);\n\nContainer.displayName = \"Container\";\n","import React from \"react\";\n\nexport type DatePickerProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const DatePicker: React.FC<DatePickerProps> = (props) => {\n return <div {...props}>DatePicker</div>;\n};\n","import React from \"react\";\n\nexport type DropdownProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Dropdown: React.FC<DropdownProps> = (props) => {\n return <div {...props}>Dropdown</div>;\n};\n","import React from \"react\";\n\nexport type FileInputProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FileInput: React.FC<FileInputProps> = (props) => {\n return <div {...props}>FileInput</div>;\n};\n","import React from \"react\";\n\nexport type FileUploadProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FileUpload: React.FC<FileUploadProps> = (props) => {\n return <div {...props}>FileUpload</div>;\n};\n","/**\n * Flex layout wrapper.\n *\n * NOTE: MUI does not have a native `<Flex>` component (it relies on `<Box display=\"flex\">`\n * or `<Stack>`). To maintain API parity with the mantine-adapter and provide a consistent\n * developer experience, this component wraps MUI's Box and forces `display=\"flex\"`.\n *\n * Like Stack and Group, this is a primitive layout component. It strictly filters out the\n * `sx` prop using `OmitSx` and `filterSxProp` to enforce the use of standard layout scales.\n */\nimport React, { forwardRef } from \"react\";\nimport { Box as MUIBox, type BoxProps as MUIBoxProps } from \"@mui/material\";\nimport {\n type RecursicaSpacing,\n SPACING_MAP,\n type OmitSx,\n filterSxProp,\n} from \"../../utils/filterStylingProps\";\n\nexport interface RecursicaFlexProps {\n /**\n * Content to render inside the flex container.\n */\n children?: React.ReactNode;\n\n /**\n * The gap between flex items. Accepts standard MUI spacing or Recursica gap tokens\n * (e.g. \"rec-md\").\n */\n gap?: string | number | RecursicaSpacing;\n\n /**\n * The vertical gap between flex items when wrapping. Accepts standard MUI spacing\n * or Recursica gap tokens.\n */\n rowGap?: string | number | RecursicaSpacing;\n\n /**\n * The horizontal gap between flex items when wrapping. Accepts standard MUI spacing\n * or Recursica gap tokens.\n */\n columnGap?: string | number | RecursicaSpacing;\n}\n\nexport type FlexProps = OmitSx<MUIBoxProps & RecursicaFlexProps>;\n\nexport const Flex = forwardRef<HTMLDivElement, FlexProps>(function Flex(\n { children, gap = \"rec-default\", rowGap, columnGap, ...rest },\n ref,\n) {\n const safeProps = filterSxProp(rest as Record<string, unknown>);\n const resolvedGap =\n typeof gap === \"string\" && gap in SPACING_MAP\n ? SPACING_MAP[gap as keyof typeof SPACING_MAP]\n : gap;\n const resolvedRowGap =\n typeof rowGap === \"string\" && rowGap in SPACING_MAP\n ? SPACING_MAP[rowGap as keyof typeof SPACING_MAP]\n : rowGap;\n const resolvedColumnGap =\n typeof columnGap === \"string\" && columnGap in SPACING_MAP\n ? SPACING_MAP[columnGap as keyof typeof SPACING_MAP]\n : columnGap;\n\n return (\n <MUIBox\n ref={ref}\n display=\"flex\"\n {...safeProps}\n gap={resolvedGap}\n rowGap={resolvedRowGap}\n columnGap={resolvedColumnGap}\n >\n {children}\n </MUIBox>\n );\n});\n\nFlex.displayName = \"Flex\";\n","import React from \"react\";\n\nexport type FormControlLayoutProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FormControlLayout: React.FC<FormControlLayoutProps> = (props) => {\n return <div {...props}>FormControlLayout</div>;\n};\n","import React from \"react\";\n\nexport type FormControlWrapperProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FormControlWrapper: React.FC<FormControlWrapperProps> = (\n props,\n) => {\n return <div {...props}>FormControlWrapper</div>;\n};\n","import React, { forwardRef } from \"react\";\nimport {\n Stack as MUIStack,\n type StackProps as MUIStackProps,\n} from \"@mui/material\";\nimport {\n type RecursicaSpacing,\n SPACING_MAP,\n type OmitSx,\n filterSxProp,\n} from \"../../utils/filterStylingProps\";\n\nexport interface RecursicaGroupProps {\n children?: React.ReactNode;\n gap?: MUIStackProps[\"spacing\"] | RecursicaSpacing;\n rowGap?: MUIStackProps[\"spacing\"] | RecursicaSpacing;\n columnGap?: MUIStackProps[\"spacing\"] | RecursicaSpacing;\n}\n\nexport type GroupProps = OmitSx<\n Omit<MUIStackProps, \"spacing\" | \"direction\"> & RecursicaGroupProps\n>;\n\nexport const Group = forwardRef<HTMLDivElement, GroupProps>(function Group(\n { children, gap = \"rec-default\", rowGap, columnGap, ...rest },\n ref,\n) {\n const safeProps = filterSxProp(rest as Record<string, unknown>);\n const resolvedGap =\n typeof gap === \"string\" && gap in SPACING_MAP\n ? SPACING_MAP[gap as keyof typeof SPACING_MAP]\n : gap;\n const resolvedRowGap =\n typeof rowGap === \"string\" && rowGap in SPACING_MAP\n ? SPACING_MAP[rowGap as keyof typeof SPACING_MAP]\n : rowGap;\n const resolvedColumnGap =\n typeof columnGap === \"string\" && columnGap in SPACING_MAP\n ? SPACING_MAP[columnGap as keyof typeof SPACING_MAP]\n : columnGap;\n\n return (\n <MUIStack\n ref={ref}\n direction=\"row\"\n flexWrap=\"wrap\"\n spacing={resolvedGap}\n sx={{\n ...(resolvedRowGap ? { rowGap: resolvedRowGap } : {}),\n ...(resolvedColumnGap ? { columnGap: resolvedColumnGap } : {}),\n }}\n {...safeProps}\n >\n {children}\n </MUIStack>\n );\n});\n\nGroup.displayName = \"Group\";\n","import React from \"react\";\n\nexport type HoverCardProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const HoverCard: React.FC<HoverCardProps> = (props) => {\n return <div {...props}>HoverCard</div>;\n};\n","import React from \"react\";\n\nexport type LabelProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Label: React.FC<LabelProps> = (props) => {\n return <div {...props}>Label</div>;\n};\n","import React, { forwardRef } from \"react\";\nimport { Link as MUILink, type LinkProps as MUILinkProps } from \"@mui/material\";\nimport {\n filterStylingProps,\n type RecursicaOverStyled,\n} from \"../../utils/filterStylingProps\";\nimport styles from \"./Link.module.css\";\n\nexport interface RecursicaLinkProps {\n icon?: React.ReactNode;\n children?: React.ReactNode;\n component?: React.ElementType;\n}\n\nexport type LinkProps = RecursicaOverStyled<\n Omit<MUILinkProps, \"underline\"> & RecursicaLinkProps\n>;\n\nexport const Link = forwardRef<HTMLAnchorElement, LinkProps>(function Link(\n { icon, children, overStyled = false, ...rest },\n ref,\n) {\n const sanitizedProps = filterStylingProps(rest, overStyled);\n const restRecord = sanitizedProps as Record<string, unknown>;\n\n const classNameProp = restRecord.className as string | undefined;\n const finalClass = classNameProp\n ? `${styles.root} ${classNameProp}`\n : styles.root;\n\n return (\n <MUILink\n ref={ref}\n className={finalClass}\n underline=\"none\"\n {...(icon ? { \"data-has-icon\": \"\" } : {})}\n {...sanitizedProps}\n >\n {icon && (\n <span className={styles.iconWrapper} aria-hidden>\n {icon}\n </span>\n )}\n <span className={styles.labelText}>{children}</span>\n </MUILink>\n );\n});\n\nLink.displayName = \"Link\";\n","import React from \"react\";\n\nexport type LoaderProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Loader: React.FC<LoaderProps> = (props) => {\n return <div {...props}>Loader</div>;\n};\n","import React from \"react\";\n\nexport type MenuProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Menu: React.FC<MenuProps> = (props) => {\n return <div {...props}>Menu</div>;\n};\n","import React from \"react\";\n\nexport type ModalProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Modal: React.FC<ModalProps> = (props) => {\n return <div {...props}>Modal</div>;\n};\n","import React from \"react\";\n\nexport type NumberInputProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const NumberInput: React.FC<NumberInputProps> = (props) => {\n return <div {...props}>NumberInput</div>;\n};\n","import React from \"react\";\n\nexport type PaginationProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Pagination: React.FC<PaginationProps> = (props) => {\n return <div {...props}>Pagination</div>;\n};\n","import React from \"react\";\n\nexport type PanelProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Panel: React.FC<PanelProps> = (props) => {\n return <div {...props}>Panel</div>;\n};\n","import React from \"react\";\n\nexport type RadioProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Radio: React.FC<RadioProps> = (props) => {\n return <div {...props}>Radio</div>;\n};\n","import React from \"react\";\n\nexport type ReadOnlyFieldProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const ReadOnlyField: React.FC<ReadOnlyFieldProps> = (props) => {\n return <div {...props}>ReadOnlyField</div>;\n};\n","import React from \"react\";\n\nexport type SegmentedControlProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const SegmentedControl: React.FC<SegmentedControlProps> = (props) => {\n return <div {...props}>SegmentedControl</div>;\n};\n","import React from \"react\";\n\nexport type SliderProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Slider: React.FC<SliderProps> = (props) => {\n return <div {...props}>Slider</div>;\n};\n","import React, { forwardRef } from \"react\";\nimport {\n Stack as MUIStack,\n type StackProps as MUIStackProps,\n} from \"@mui/material\";\nimport {\n type RecursicaSpacing,\n SPACING_MAP,\n type OmitSx,\n filterSxProp,\n} from \"../../utils/filterStylingProps\";\n\nexport interface RecursicaStackProps {\n children?: React.ReactNode;\n gap?: MUIStackProps[\"spacing\"] | RecursicaSpacing;\n}\n\nexport type StackProps = OmitSx<\n Omit<MUIStackProps, \"spacing\"> & RecursicaStackProps\n>;\n\nexport const Stack = forwardRef<HTMLDivElement, StackProps>(function Stack(\n { children, gap = \"rec-default\", ...rest },\n ref,\n) {\n const safeProps = filterSxProp(rest as Record<string, unknown>);\n const resolvedGap =\n typeof gap === \"string\" && gap in SPACING_MAP\n ? SPACING_MAP[gap as keyof typeof SPACING_MAP]\n : gap;\n\n return (\n <MUIStack ref={ref} spacing={resolvedGap} {...safeProps}>\n {children}\n </MUIStack>\n );\n});\n\nStack.displayName = \"Stack\";\n","import React from \"react\";\n\nexport type StepperProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Stepper: React.FC<StepperProps> = (props) => {\n return <div {...props}>Stepper</div>;\n};\n","import React from \"react\";\n\nexport type SwitchProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Switch: React.FC<SwitchProps> = (props) => {\n return <div {...props}>Switch</div>;\n};\n","import React from \"react\";\n\nexport type TableProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Table: React.FC<TableProps> = (props) => {\n return <div {...props}>Table</div>;\n};\n","import React from \"react\";\n\nexport type TabsProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Tabs: React.FC<TabsProps> = (props) => {\n return <div {...props}>Tabs</div>;\n};\n","import React, { forwardRef } from \"react\";\nimport {\n Typography as MuiTypography,\n type TypographyProps as MuiTypographyProps,\n} from \"@mui/material\";\nimport {\n filterStylingProps,\n type RecursicaOverStyled,\n} from \"../../utils/filterStylingProps\";\n\nexport type TypographyProps = RecursicaOverStyled<\n Omit<MuiTypographyProps, \"variant\"> & {\n /**\n * Internal typography class mapping\n */\n typographyClass: string;\n component?: React.ElementType;\n }\n>;\n\nexport const Typography = forwardRef<HTMLElement, TypographyProps>(\n function Typography({ typographyClass, overStyled = false, ...rest }, ref) {\n const sanitizedProps = filterStylingProps(rest, overStyled);\n const restRecord = sanitizedProps as Record<string, unknown>;\n\n const classNameProp = restRecord.className as string | undefined;\n const finalClass = classNameProp\n ? `${typographyClass} ${classNameProp}`\n : typographyClass;\n\n return (\n <MuiTypography\n ref={ref}\n className={finalClass}\n variant=\"inherit\"\n {...sanitizedProps}\n />\n );\n },\n);\n\nTypography.displayName = \"Typography\";\n","import React, { forwardRef } from \"react\";\nimport { Typography } from \"../Typography/Typography\";\nimport { type RecursicaOverStyled } from \"../../utils/filterStylingProps\";\nimport { type TypographyProps as MuiTypographyProps } from \"@mui/material\";\n\nexport type TextVariant =\n | \"body\"\n | \"body-small\"\n | \"caption\"\n | \"overline\"\n | \"subtitle\"\n | \"subtitle-small\";\n\nexport type RecursicaTextProps = Omit<MuiTypographyProps, \"variant\"> & {\n variant?: TextVariant;\n children?: React.ReactNode;\n component?: React.ElementType;\n};\n\nexport type TextProps = RecursicaOverStyled<RecursicaTextProps>;\n\nexport const Text = forwardRef<HTMLElement, TextProps>(function Text(\n { variant = \"body\", ...rest },\n ref,\n) {\n const typographyClass = `recursica_brand_typography_${variant}`;\n return <Typography ref={ref} typographyClass={typographyClass} {...rest} />;\n});\n\nText.displayName = \"Text\";\n","import React from \"react\";\n\nexport type TextAreaProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TextArea: React.FC<TextAreaProps> = (props) => {\n return <div {...props}>TextArea</div>;\n};\n","import React from \"react\";\n\nexport type TextFieldProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TextField: React.FC<TextFieldProps> = (props) => {\n return <div {...props}>TextField</div>;\n};\n","import React from \"react\";\n\nexport type TimePickerProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TimePicker: React.FC<TimePickerProps> = (props) => {\n return <div {...props}>TimePicker</div>;\n};\n","import React from \"react\";\n\nexport type TimelineProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Timeline: React.FC<TimelineProps> = (props) => {\n return <div {...props}>Timeline</div>;\n};\n","import React, { forwardRef } from \"react\";\nimport { Typography } from \"../Typography/Typography\";\nimport { type RecursicaOverStyled } from \"../../utils/filterStylingProps\";\nimport { type TypographyProps as MuiTypographyProps } from \"@mui/material\";\n\nexport type RecursicaTitleProps = Omit<MuiTypographyProps, \"variant\"> & {\n order?: 1 | 2 | 3 | 4 | 5 | 6;\n children?: React.ReactNode;\n component?: React.ElementType;\n};\n\nexport type TitleProps = RecursicaOverStyled<RecursicaTitleProps>;\n\nexport const Title = forwardRef<HTMLElement, TitleProps>(function Title(\n { order = 1, component, ...rest },\n ref,\n) {\n const typographyClass = `recursica_brand_typography_h${order}`;\n const defaultComponent = `h${order}` as React.ElementType;\n\n return (\n <Typography\n ref={ref}\n typographyClass={typographyClass}\n component={component || defaultComponent}\n {...rest}\n />\n );\n});\n\nTitle.displayName = \"Title\";\n","import React from \"react\";\n\nexport type ToastProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Toast: React.FC<ToastProps> = (props) => {\n return <div {...props}>Toast</div>;\n};\n","import React from \"react\";\n\nexport type TooltipProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Tooltip: React.FC<TooltipProps> = (props) => {\n return <div {...props}>Tooltip</div>;\n};\n","import React from \"react\";\n\nexport type TransferListProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TransferList: React.FC<TransferListProps> = (props) => {\n return <div {...props}>TransferList</div>;\n};\n","import { jsx as c, Fragment as f } from \"react/jsx-runtime\";\nimport h, { forwardRef as l, useEffect as p } from \"react\";\nconst E = \"_root_1qhn7_3\", _ = \"_contents_1qhn7_18\", r = {\n root: E,\n contents: _\n}, $ = l(function({ layer: o, contentsOnly: e, children: i, className: n, style: u, ...m }, d) {\n const y = e ? n ? `${r.root} ${r.contents} ${n}` : `${r.root} ${r.contents}` : n ? `${r.root} ${n}` : r.root;\n return /* @__PURE__ */ c(\n \"div\",\n {\n ref: d,\n className: y,\n style: u,\n ...e ? {} : { \"data-recursica-layer\": String(o) },\n ...m,\n children: i\n }\n );\n});\n$.displayName = \"Layer\";\nconst a = ({ emptyText: t = \"N/A\" }) => /* @__PURE__ */ c(h.Fragment, { children: t });\na.displayName = \"EmptyValueRenderer\";\na.check = (t) => t == null || t === \"\" || Array.isArray(t) && t.length === 0;\nconst s = \"data-recursica-theme\";\nfunction g({\n children: t,\n theme: o = \"light\"\n}) {\n return p(() => {\n const e = document.documentElement;\n return e.setAttribute(s, o), () => {\n e.removeAttribute(s);\n };\n }, [o]), /* @__PURE__ */ c(f, { children: t });\n}\nexport {\n a as EmptyValueRenderer,\n $ as Layer,\n g as RecursicaThemeProvider\n};\n//# sourceMappingURL=adapter-common.js.map\n"],"names":["Accordion","props","jsx","AssistiveElement","Avatar","Badge","Box","forwardRef","ref","MUIBox","Breadcrumb","BLOCKED_STYLING_KEYS","LAYOUT_PROPS","SPACING_MAP","filterSxProp","sanitized","filterStylingProps","overStyled","prop","key","value","hasVisibleChildren","children","Button","variant","size","icon","rest","sanitizedProps","restRecord","hasStartIcon","hasEndIcon","isIconOnly","classNameProp","finalClass","styles","MuiButton","Card","Checkbox","Chip","Container","mapSize","resolvedSize","MUIContainer","DatePicker","Dropdown","FileInput","FileUpload","Flex","gap","rowGap","columnGap","safeProps","resolvedGap","resolvedRowGap","resolvedColumnGap","FormControlLayout","FormControlWrapper","Group","MUIStack","HoverCard","Label","Link","jsxs","MUILink","Loader","Menu","Modal","NumberInput","Pagination","Panel","Radio","ReadOnlyField","SegmentedControl","Slider","Stack","Stepper","Switch","Table","Tabs","Typography","typographyClass","MuiTypography","Text","TextArea","TextField","TimePicker","Timeline","Title","order","component","defaultComponent","Toast","Tooltip","TransferList","E","_","r","$","l","o","e","i","n","u","m","d","y","c","a","t","h","s","g","p","f"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mui-adapter.cjs","sources":["../src/components/Accordion/Accordion.tsx","../src/components/AssistiveElement/AssistiveElement.tsx","../src/components/Autocomplete/Autocomplete.tsx","../src/components/Avatar/Avatar.tsx","../src/components/Badge/Badge.tsx","../src/components/Box/Box.tsx","../src/components/Breadcrumb/Breadcrumb.tsx","../src/utils/filterStylingProps.ts","../src/components/Loader/Loader.tsx","../src/components/Button/Button.tsx","../src/components/Card/Card.tsx","../src/components/Checkbox/Checkbox.tsx","../src/components/Chip/Chip.tsx","../src/components/Container/Container.tsx","../src/components/DatePicker/DatePicker.tsx","../src/components/Dropdown/Dropdown.tsx","../src/components/FileInput/FileInput.tsx","../src/components/FileUpload/FileUpload.tsx","../src/components/Flex/Flex.tsx","../src/components/FormControlLayout/FormControlLayout.tsx","../src/components/FormControlWrapper/FormControlWrapper.tsx","../src/components/Group/Group.tsx","../src/components/HoverCard/HoverCard.tsx","../src/components/Label/Label.tsx","../src/components/Link/Link.tsx","../src/components/Menu/Menu.tsx","../src/components/Modal/Modal.tsx","../src/components/NumberInput/NumberInput.tsx","../src/components/Pagination/Pagination.tsx","../src/components/Panel/Panel.tsx","../src/components/Radio/Radio.tsx","../src/components/ReadOnlyField/ReadOnlyField.tsx","../src/components/SegmentedControl/SegmentedControl.tsx","../src/components/Slider/Slider.tsx","../src/components/Stack/Stack.tsx","../src/components/Stepper/Stepper.tsx","../src/components/Switch/Switch.tsx","../src/components/Table/Table.tsx","../src/components/Tabs/Tabs.tsx","../src/components/Typography/Typography.tsx","../src/components/Text/Text.tsx","../src/components/TextArea/TextArea.tsx","../src/components/TextField/TextField.tsx","../src/components/TimePicker/TimePicker.tsx","../src/components/Timeline/Timeline.tsx","../src/components/Title/Title.tsx","../src/components/Toast/Toast.tsx","../src/components/Tooltip/Tooltip.tsx","../src/components/TransferList/TransferList.tsx","../../adapter-common/dist/adapter-common.js"],"sourcesContent":["import React from \"react\";\nimport \"./Accordion.module.css\";\n\nexport type AccordionProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Accordion: React.FC<AccordionProps> = (props) => {\n return <div {...props}>Accordion</div>;\n};\n","import React from \"react\";\nimport \"./AssistiveElement.module.css\";\n\nexport type AssistiveElementProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const AssistiveElement: React.FC<AssistiveElementProps> = (props) => {\n return <div {...props}>AssistiveElement</div>;\n};\n","import React from \"react\";\nimport \"./Autocomplete.module.css\";\n\nexport type AutocompleteProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Autocomplete: React.FC<AutocompleteProps> = (props) => {\n return <div {...props}>Autocomplete</div>;\n};\n","import React from \"react\";\nimport \"./Avatar.module.css\";\n\nexport type AvatarProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Avatar: React.FC<AvatarProps> = (props) => {\n return <div {...props}>Avatar</div>;\n};\n","import React from \"react\";\nimport \"./Badge.module.css\";\n\nexport type BadgeProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Badge: React.FC<BadgeProps> = (props) => {\n return <div {...props}>Badge</div>;\n};\n","/**\n * Box layout wrapper.\n *\n * NOTE: Box is the lowest-level primitive layout component. It explicitly ALLOWS\n * the `sx` prop as an escape hatch. It does not use the strict RecursicaOverStyled gatekeeper\n * or any style stripping utilities.\n */\nimport React, { forwardRef } from \"react\";\nimport { Box as MUIBox, type BoxProps as MUIBoxProps } from \"@mui/material\";\n\nexport type BoxProps<C extends React.ElementType = \"div\"> = MUIBoxProps<\n C,\n { component?: C }\n>;\n\nexport const Box = forwardRef(function Box<C extends React.ElementType = \"div\">(\n props: BoxProps<C>,\n ref: React.Ref<Element>,\n) {\n return <MUIBox ref={ref} {...props} />;\n}) as <C extends React.ElementType = \"div\">(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n props: BoxProps<C> & { ref?: React.ForwardedRef<any> },\n) => React.ReactElement | null;\n","import React from \"react\";\nimport \"./Breadcrumb.module.css\";\n\nexport type BreadcrumbProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Breadcrumb: React.FC<BreadcrumbProps> = (props) => {\n return <div {...props}>Breadcrumb</div>;\n};\n","/**\n * filterStylingProps\n *\n * This utility acts as the central gatekeeper for strict design-system adherence across\n * all Recursica components mapped over MUI.\n *\n * PHILOSOPHY:\n * Recursica components are designed to be explicitly sandboxed tokens. Allowing external\n * `className` or MUI style props (`sx`, `classes`, etc.) breaks the design system by\n * allowing developers to leak arbitrary designs into components.\n *\n * By default (`overStyled=false`), this utility actively prevents developers from overriding\n * internal component styles (such as background, colors, typography, or internal classes).\n * It safely *permits* external layout overrides (like `margin` / `m`) so that components can\n * easily be spaced alongside other DOM elements.\n *\n * If a developer passes `overStyled={true}`, this filter allows all styling properties to\n * flow through to the underlying MUI component natively, at the developer's own risk.\n *\n * @param props - The raw component props passed down to the wrapper\n * @param overStyled - Boolean toggle to allow raw external styling. Defaults to false.\n * @returns Sanitized component props safe for internal styling merging\n */\n\nexport const BLOCKED_STYLING_KEYS = [\n \"className\",\n \"classes\", // MUI specific nested class overrides\n \"style\",\n \"sx\", // MUI's primary system style prop\n\n // Potential Box/Typography system props to block (if we wrap those)\n \"color\",\n \"bgcolor\",\n \"backgroundColor\",\n \"typography\",\n \"fontFamily\",\n \"fontSize\",\n \"fontWeight\",\n \"lineHeight\",\n \"letterSpacing\",\n \"textAlign\",\n \"border\",\n \"borderTop\",\n \"borderBottom\",\n \"borderLeft\",\n \"borderRight\",\n \"borderColor\",\n \"borderRadius\",\n \"boxShadow\",\n \"display\",\n \"position\",\n \"zIndex\",\n] as const;\n\nexport type BlockedStylingKeys = (typeof BLOCKED_STYLING_KEYS)[number];\n\nexport type RecursicaSpacing =\n | \"rec-none\"\n | \"rec-sm\"\n | \"rec-default\"\n | \"rec-md\"\n | \"rec-lg\"\n | \"rec-xl\"\n | \"rec-2xl\";\n\nexport type RecursicaSize = \"small\" | \"default\" | \"large\";\n\nconst LAYOUT_PROPS = new Set([\n \"m\",\n \"my\",\n \"mx\",\n \"mt\",\n \"mb\",\n \"ml\",\n \"mr\",\n \"p\",\n \"py\",\n \"px\",\n \"pt\",\n \"pb\",\n \"pl\",\n \"pr\",\n \"gap\",\n \"rowGap\",\n \"columnGap\",\n \"top\",\n \"left\",\n \"bottom\",\n \"right\",\n]);\n\nexport const SPACING_MAP: Record<string, string> = {\n \"rec-none\": \"var(--recursica_brand_dimensions_general_none)\",\n \"rec-sm\": \"var(--recursica_brand_dimensions_general_sm)\",\n \"rec-default\": \"var(--recursica_brand_dimensions_general_default)\",\n \"rec-md\": \"var(--recursica_brand_dimensions_general_md)\",\n \"rec-lg\": \"var(--recursica_brand_dimensions_general_lg)\",\n \"rec-xl\": \"var(--recursica_brand_dimensions_general_xl)\",\n \"rec-2xl\": \"var(--recursica_brand_dimensions_general_2xl)\",\n};\n\nexport type ForbiddenStyles = { [K in BlockedStylingKeys]?: never };\n\nexport type OmitSx<T> = Omit<T, \"sx\">;\n\nexport function filterSxProp<T extends Record<string, unknown>>(\n props: T,\n): Omit<T, \"sx\"> {\n const sanitized = { ...props };\n if (\"sx\" in sanitized) {\n delete sanitized[\"sx\"];\n }\n return sanitized as Omit<T, \"sx\">;\n}\n\nexport type RecursicaOverStyled<T> =\n | (Omit<T, BlockedStylingKeys> &\n ForbiddenStyles & { overStyled?: false | undefined })\n | (T & { overStyled: true });\n\nexport function filterStylingProps<T extends Record<string, unknown>>(\n props: T,\n overStyled?: boolean,\n): Partial<T> {\n if (overStyled) {\n return props;\n }\n\n const sanitized = { ...props };\n\n for (const prop of BLOCKED_STYLING_KEYS) {\n if (prop in sanitized) {\n delete sanitized[prop];\n }\n }\n\n // Intercept Recursica spacing tokens for valid layout properties\n for (const [key, value] of Object.entries(sanitized)) {\n if (\n typeof value === \"string\" &&\n value.startsWith(\"rec-\") &&\n LAYOUT_PROPS.has(key)\n ) {\n if (value in SPACING_MAP) {\n (sanitized as Record<string, unknown>)[key] = SPACING_MAP[value];\n }\n }\n }\n\n return sanitized;\n}\n","import React, { forwardRef } from \"react\";\nimport {\n filterStylingProps,\n type RecursicaOverStyled,\n type RecursicaSize,\n} from \"../../utils/filterStylingProps\";\nimport styles from \"./Loader.module.css\";\n\nexport interface RecursicaLoaderProps {\n /** Map to the component styles defined in variables */\n variant?: \"oval\" | \"bars\" | \"dots\";\n /** Map to Recursica sizes */\n size?: \"sm\" | \"md\" | \"lg\" | RecursicaSize;\n}\n\nexport type LoaderProps = RecursicaOverStyled<\n React.HTMLAttributes<HTMLSpanElement> & RecursicaLoaderProps\n>;\n\nexport const Loader = forwardRef<HTMLSpanElement, LoaderProps>(function Loader(\n { variant = \"oval\", size = \"default\", overStyled = false, ...rest },\n ref,\n) {\n const mapSize = {\n sm: \"small\",\n md: \"default\",\n lg: \"large\",\n small: \"small\",\n default: \"default\",\n large: \"large\",\n } as const;\n\n const resolvedSize = mapSize[size] || \"default\";\n\n // Strip all visual override injections unless developer has specifically opted into overStyling.\n // External layout props like margins are safely preserved.\n const sanitizedProps = filterStylingProps(rest, overStyled);\n\n const classNameProp = (sanitizedProps as Record<string, unknown>)\n .className as string | undefined;\n const finalClass = classNameProp\n ? `${styles.root} ${classNameProp}`\n : styles.root;\n\n const renderChildren = () => {\n if (variant === \"bars\" || variant === \"dots\") {\n return (\n <>\n <span />\n <span />\n <span />\n </>\n );\n }\n return null; // Oval is handled purely via CSS ::after\n };\n\n return (\n <span\n ref={ref}\n data-variant={variant}\n data-size={resolvedSize}\n {...sanitizedProps}\n className={finalClass}\n >\n {renderChildren()}\n </span>\n );\n});\n\nLoader.displayName = \"Loader\";\n","import React, { forwardRef } from \"react\";\nimport { Loader } from \"../Loader/Loader\";\nimport type { RecursicaLoaderProps } from \"../Loader/Loader\";\nimport {\n Button as MuiButton,\n type ButtonProps as MuiButtonProps,\n} from \"@mui/material\";\nimport {\n filterStylingProps,\n type RecursicaOverStyled,\n} from \"../../utils/filterStylingProps\";\nimport styles from \"./Button.module.css\";\n\nexport interface RecursicaButtonProps {\n variant?: \"solid\" | \"outline\" | \"text\";\n size?: \"default\" | \"small\";\n icon?: React.ReactNode;\n /**\n * For polymorphic support (e.g., `component=\"a\"`), native to MUI.\n */\n component?: React.ElementType;\n /** Which Recursica Loader variant to use */\n loaderVariant?: RecursicaLoaderProps[\"variant\"];\n /** The size variant for the loader */\n loaderSize?: RecursicaLoaderProps[\"size\"];\n /** Whether to use the Recursica loader or fallback to the Mantine loader */\n useRecursicaLoader?: boolean;\n}\n\nexport type ButtonProps = RecursicaOverStyled<\n Omit<MuiButtonProps, \"variant\" | \"size\" | \"color\" | \"fullWidth\"> &\n RecursicaButtonProps\n>;\n\nfunction hasVisibleChildren(children: React.ReactNode): boolean {\n if (children == null || children === \"\") return false;\n if (typeof children === \"string\") return children.trim() !== \"\";\n return true;\n}\n\n/**\n * Recursica Button component wrapping MUI's Button.\n *\n * Supports polymorphism via the `component` prop for custom element rendering.\n * This is particularly useful when you need a button that behaves as a hyperlink (rendering an `<a>` tag)\n * or integrates with a routing library (e.g., `react-router-dom` or Next.js), while preserving full visual styling.\n *\n * @example\n * ```tsx\n * // Renders as an <a> tag natively\n * <Button component=\"a\" href=\"/dashboard\" target=\"_blank\">Navigate</Button>\n *\n * // Renders using a custom router link\n * <Button component={Link} to=\"/home\">Home</Button>\n * ```\n */\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(\n function Button(\n {\n variant = \"solid\",\n size = \"default\",\n icon,\n children,\n overStyled = false,\n loaderVariant = \"oval\",\n loaderSize,\n useRecursicaLoader = true,\n ...rest\n },\n ref,\n ) {\n const sanitizedProps = filterStylingProps(rest, overStyled);\n const restRecord = sanitizedProps as Record<string, unknown>;\n\n // Explicitly delete blocked semantic expansion dimension props that MUI uses natively\n delete restRecord[\"fullWidth\"];\n delete restRecord[\"color\"]; // Recursica handles colors internally via tokens\n\n const hasStartIcon = !!icon || !!restRecord[\"startIcon\"];\n const hasEndIcon = !!restRecord[\"endIcon\"];\n const hasVisibleText = hasVisibleChildren(children);\n const isIconOnly = (hasStartIcon || hasEndIcon) && !hasVisibleText;\n\n let contentType = \"label\";\n if (isIconOnly) {\n contentType = \"icon-only\";\n } else if (hasStartIcon || hasEndIcon) {\n contentType = \"icon-label\";\n }\n\n if (\n typeof process !== \"undefined\" &&\n process.env.NODE_ENV !== \"production\" &&\n isIconOnly &&\n !restRecord[\"aria-label\"]\n ) {\n console.warn(\n '[Recursica Button] Icon-only buttons must provide an accessible name. Pass aria-label (e.g. aria-label=\"Submit\").',\n );\n }\n\n const classNameProp = restRecord.className as string | undefined;\n const finalClass = classNameProp\n ? `${styles.root} ${classNameProp}`\n : styles.root;\n\n // We don't map Recursica variant/size to MUI's because we want to completely disable MUI's native\n // variant logic (e.g., elevation, shadows) and style everything strictly through our CSS Modules.\n // However, Mui Button requires some string, but we can just leave it as standard or ignore since\n // our CSS resets its properties anyway, but to be clean we just don't pass variant to MUI.\n\n const resolvedLoaderSize =\n loaderSize ?? (size === \"small\" ? \"small\" : \"default\");\n\n let loadingIndicator = restRecord.loadingIndicator as React.ReactNode;\n if (useRecursicaLoader) {\n loadingIndicator = (\n <Loader variant={loaderVariant} size={resolvedLoaderSize} />\n );\n }\n\n return (\n <MuiButton\n ref={ref}\n disableRipple\n disableElevation\n className={finalClass}\n loading={!!restRecord.loading}\n loadingIndicator={loadingIndicator}\n startIcon={\n icon != null ? (\n <span className={styles.iconWrapper} aria-hidden>\n {icon}\n </span>\n ) : undefined\n }\n data-variant={variant}\n data-size={size}\n data-content={contentType}\n {...(restRecord.loading ? { \"data-loading\": \"true\" } : {})}\n {...sanitizedProps}\n disabled={!!restRecord.disabled || !!restRecord.loading}\n >\n <span className={styles.labelText}>{children}</span>\n </MuiButton>\n );\n },\n);\n\nButton.displayName = \"Button\";\n","import React from \"react\";\nimport \"./Card.module.css\";\n\nexport type CardProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Card: React.FC<CardProps> = (props) => {\n return <div {...props}>Card</div>;\n};\n","import React from \"react\";\nimport \"./Checkbox.module.css\";\n\nexport type CheckboxProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Checkbox: React.FC<CheckboxProps> = (props) => {\n return <div {...props}>Checkbox</div>;\n};\n","import React from \"react\";\nimport \"./Chip.module.css\";\n\nexport type ChipProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Chip: React.FC<ChipProps> = (props) => {\n return <div {...props}>Chip</div>;\n};\n","/**\n * Container layout wrapper.\n *\n * NOTE: As a foundational structural boundary, the Container component DOES NOT use\n * the `RecursicaOverStyled` gatekeeper. Furthermore, unlike other primitive layouts\n * (Stack, Group, Flex), Container explicitly ALLOWS the `sx` prop as an escape hatch\n * for advanced layout positioning.\n */\nimport React, { forwardRef } from \"react\";\nimport {\n Container as MUIContainer,\n type ContainerProps as MUIContainerProps,\n} from \"@mui/material\";\nimport { type RecursicaSpacing } from \"../../utils/filterStylingProps\";\n\nexport interface RecursicaContainerProps {\n children?: React.ReactNode;\n size?:\n | \"xs\"\n | \"sm\"\n | \"md\"\n | \"lg\"\n | \"xl\"\n | RecursicaSpacing\n | (string & {})\n | number;\n}\n\nexport type ContainerProps = Omit<MUIContainerProps, \"maxWidth\"> &\n RecursicaContainerProps;\n\nexport const Container = forwardRef<HTMLDivElement, ContainerProps>(\n function Container({ children, size, ...rest }, ref) {\n const mapSize: Record<string, \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\"> = {\n \"rec-sm\": \"sm\",\n \"rec-default\": \"md\",\n \"rec-md\": \"md\",\n \"rec-lg\": \"lg\",\n \"rec-xl\": \"xl\",\n \"rec-2xl\": \"xl\",\n };\n\n const resolvedSize =\n typeof size === \"string\" && mapSize[size] ? mapSize[size] : size;\n\n return (\n <MUIContainer\n ref={ref}\n maxWidth={resolvedSize as MUIContainerProps[\"maxWidth\"]}\n {...rest}\n >\n {children}\n </MUIContainer>\n );\n },\n);\n\nContainer.displayName = \"Container\";\n","import React from \"react\";\nimport \"./DatePicker.module.css\";\n\nexport type DatePickerProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const DatePicker: React.FC<DatePickerProps> = (props) => {\n return <div {...props}>DatePicker</div>;\n};\n","import React from \"react\";\nimport \"./Dropdown.module.css\";\n\nexport type DropdownProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Dropdown: React.FC<DropdownProps> = (props) => {\n return <div {...props}>Dropdown</div>;\n};\n","import React from \"react\";\nimport \"./FileInput.module.css\";\n\nexport type FileInputProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FileInput: React.FC<FileInputProps> = (props) => {\n return <div {...props}>FileInput</div>;\n};\n","import React from \"react\";\nimport \"./FileUpload.module.css\";\n\nexport type FileUploadProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FileUpload: React.FC<FileUploadProps> = (props) => {\n return <div {...props}>FileUpload</div>;\n};\n","/**\n * Flex layout wrapper.\n *\n * NOTE: MUI does not have a native `<Flex>` component (it relies on `<Box display=\"flex\">`\n * or `<Stack>`). To maintain API parity with the mantine-adapter and provide a consistent\n * developer experience, this component wraps MUI's Box and forces `display=\"flex\"`.\n *\n * Like Stack and Group, this is a primitive layout component. It strictly filters out the\n * `sx` prop using `OmitSx` and `filterSxProp` to enforce the use of standard layout scales.\n */\nimport React, { forwardRef } from \"react\";\nimport { Box as MUIBox, type BoxProps as MUIBoxProps } from \"@mui/material\";\nimport {\n type RecursicaSpacing,\n SPACING_MAP,\n type OmitSx,\n filterSxProp,\n} from \"../../utils/filterStylingProps\";\n\nexport interface RecursicaFlexProps {\n /**\n * Content to render inside the flex container.\n */\n children?: React.ReactNode;\n\n /**\n * The gap between flex items. Accepts standard MUI spacing or Recursica gap tokens\n * (e.g. \"rec-md\").\n */\n gap?: string | number | RecursicaSpacing;\n\n /**\n * The vertical gap between flex items when wrapping. Accepts standard MUI spacing\n * or Recursica gap tokens.\n */\n rowGap?: string | number | RecursicaSpacing;\n\n /**\n * The horizontal gap between flex items when wrapping. Accepts standard MUI spacing\n * or Recursica gap tokens.\n */\n columnGap?: string | number | RecursicaSpacing;\n}\n\nexport type FlexProps = OmitSx<MUIBoxProps & RecursicaFlexProps>;\n\nexport const Flex = forwardRef<HTMLDivElement, FlexProps>(function Flex(\n { children, gap = \"rec-default\", rowGap, columnGap, ...rest },\n ref,\n) {\n const safeProps = filterSxProp(rest as Record<string, unknown>);\n const resolvedGap =\n typeof gap === \"string\" && gap in SPACING_MAP\n ? SPACING_MAP[gap as keyof typeof SPACING_MAP]\n : gap;\n const resolvedRowGap =\n typeof rowGap === \"string\" && rowGap in SPACING_MAP\n ? SPACING_MAP[rowGap as keyof typeof SPACING_MAP]\n : rowGap;\n const resolvedColumnGap =\n typeof columnGap === \"string\" && columnGap in SPACING_MAP\n ? SPACING_MAP[columnGap as keyof typeof SPACING_MAP]\n : columnGap;\n\n return (\n <MUIBox\n ref={ref}\n display=\"flex\"\n {...safeProps}\n gap={resolvedGap}\n rowGap={resolvedRowGap}\n columnGap={resolvedColumnGap}\n >\n {children}\n </MUIBox>\n );\n});\n\nFlex.displayName = \"Flex\";\n","import React from \"react\";\n\nexport type FormControlLayoutProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FormControlLayout: React.FC<FormControlLayoutProps> = (props) => {\n return <div {...props}>FormControlLayout</div>;\n};\n","import React from \"react\";\n\nexport type FormControlWrapperProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FormControlWrapper: React.FC<FormControlWrapperProps> = (\n props,\n) => {\n return <div {...props}>FormControlWrapper</div>;\n};\n","import React, { forwardRef } from \"react\";\nimport {\n Stack as MUIStack,\n type StackProps as MUIStackProps,\n} from \"@mui/material\";\nimport {\n type RecursicaSpacing,\n SPACING_MAP,\n type OmitSx,\n filterSxProp,\n} from \"../../utils/filterStylingProps\";\n\nexport interface RecursicaGroupProps {\n children?: React.ReactNode;\n gap?: MUIStackProps[\"spacing\"] | RecursicaSpacing;\n rowGap?: MUIStackProps[\"spacing\"] | RecursicaSpacing;\n columnGap?: MUIStackProps[\"spacing\"] | RecursicaSpacing;\n}\n\nexport type GroupProps = OmitSx<\n Omit<MUIStackProps, \"spacing\" | \"direction\"> & RecursicaGroupProps\n>;\n\nexport const Group = forwardRef<HTMLDivElement, GroupProps>(function Group(\n { children, gap = \"rec-default\", rowGap, columnGap, ...rest },\n ref,\n) {\n const safeProps = filterSxProp(rest as Record<string, unknown>);\n const resolvedGap =\n typeof gap === \"string\" && gap in SPACING_MAP\n ? SPACING_MAP[gap as keyof typeof SPACING_MAP]\n : gap;\n const resolvedRowGap =\n typeof rowGap === \"string\" && rowGap in SPACING_MAP\n ? SPACING_MAP[rowGap as keyof typeof SPACING_MAP]\n : rowGap;\n const resolvedColumnGap =\n typeof columnGap === \"string\" && columnGap in SPACING_MAP\n ? SPACING_MAP[columnGap as keyof typeof SPACING_MAP]\n : columnGap;\n\n return (\n <MUIStack\n ref={ref}\n direction=\"row\"\n flexWrap=\"wrap\"\n spacing={resolvedGap}\n sx={{\n ...(resolvedRowGap ? { rowGap: resolvedRowGap } : {}),\n ...(resolvedColumnGap ? { columnGap: resolvedColumnGap } : {}),\n }}\n {...safeProps}\n >\n {children}\n </MUIStack>\n );\n});\n\nGroup.displayName = \"Group\";\n","import React from \"react\";\nimport \"./HoverCard.module.css\";\n\nexport type HoverCardProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const HoverCard: React.FC<HoverCardProps> = (props) => {\n return <div {...props}>HoverCard</div>;\n};\n","import React from \"react\";\nimport \"./Label.module.css\";\n\nexport type LabelProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Label: React.FC<LabelProps> = (props) => {\n return <div {...props}>Label</div>;\n};\n","import React, { forwardRef } from \"react\";\nimport { Link as MUILink, type LinkProps as MUILinkProps } from \"@mui/material\";\nimport {\n filterStylingProps,\n type RecursicaOverStyled,\n} from \"../../utils/filterStylingProps\";\nimport styles from \"./Link.module.css\";\n\nexport interface RecursicaLinkProps {\n icon?: React.ReactNode;\n children?: React.ReactNode;\n component?: React.ElementType;\n}\n\nexport type LinkProps = RecursicaOverStyled<\n Omit<MUILinkProps, \"underline\"> & RecursicaLinkProps\n>;\n\nexport const Link = forwardRef<HTMLAnchorElement, LinkProps>(function Link(\n { icon, children, overStyled = false, ...rest },\n ref,\n) {\n const sanitizedProps = filterStylingProps(rest, overStyled);\n const restRecord = sanitizedProps as Record<string, unknown>;\n\n const classNameProp = restRecord.className as string | undefined;\n const finalClass = classNameProp\n ? `${styles.root} ${classNameProp}`\n : styles.root;\n\n return (\n <MUILink\n ref={ref}\n className={finalClass}\n underline=\"none\"\n {...(icon ? { \"data-has-icon\": \"\" } : {})}\n {...sanitizedProps}\n >\n {icon && (\n <span className={styles.iconWrapper} aria-hidden>\n {icon}\n </span>\n )}\n <span className={styles.labelText}>{children}</span>\n </MUILink>\n );\n});\n\nLink.displayName = \"Link\";\n","import React from \"react\";\nimport \"./Menu.module.css\";\n\nexport type MenuProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Menu: React.FC<MenuProps> = (props) => {\n return <div {...props}>Menu</div>;\n};\n","import React from \"react\";\nimport \"./Modal.module.css\";\n\nexport type ModalProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Modal: React.FC<ModalProps> = (props) => {\n return <div {...props}>Modal</div>;\n};\n","import React from \"react\";\nimport \"./NumberInput.module.css\";\n\nexport type NumberInputProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const NumberInput: React.FC<NumberInputProps> = (props) => {\n return <div {...props}>NumberInput</div>;\n};\n","import React from \"react\";\nimport \"./Pagination.module.css\";\n\nexport type PaginationProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Pagination: React.FC<PaginationProps> = (props) => {\n return <div {...props}>Pagination</div>;\n};\n","import React from \"react\";\nimport \"./Panel.module.css\";\n\nexport type PanelProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Panel: React.FC<PanelProps> = (props) => {\n return <div {...props}>Panel</div>;\n};\n","import React from \"react\";\nimport \"./Radio.module.css\";\n\nexport type RadioProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Radio: React.FC<RadioProps> = (props) => {\n return <div {...props}>Radio</div>;\n};\n","import React from \"react\";\nimport \"./ReadOnlyField.module.css\";\n\nexport type ReadOnlyFieldProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const ReadOnlyField: React.FC<ReadOnlyFieldProps> = (props) => {\n return <div {...props}>ReadOnlyField</div>;\n};\n","import React from \"react\";\nimport \"./SegmentedControl.module.css\";\n\nexport type SegmentedControlProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const SegmentedControl: React.FC<SegmentedControlProps> = (props) => {\n return <div {...props}>SegmentedControl</div>;\n};\n","import React from \"react\";\nimport \"./Slider.module.css\";\n\nexport type SliderProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Slider: React.FC<SliderProps> = (props) => {\n return <div {...props}>Slider</div>;\n};\n","import React, { forwardRef } from \"react\";\nimport {\n Stack as MUIStack,\n type StackProps as MUIStackProps,\n} from \"@mui/material\";\nimport {\n type RecursicaSpacing,\n SPACING_MAP,\n type OmitSx,\n filterSxProp,\n} from \"../../utils/filterStylingProps\";\n\nexport interface RecursicaStackProps {\n children?: React.ReactNode;\n gap?: MUIStackProps[\"spacing\"] | RecursicaSpacing;\n}\n\nexport type StackProps = OmitSx<\n Omit<MUIStackProps, \"spacing\"> & RecursicaStackProps\n>;\n\nexport const Stack = forwardRef<HTMLDivElement, StackProps>(function Stack(\n { children, gap = \"rec-default\", ...rest },\n ref,\n) {\n const safeProps = filterSxProp(rest as Record<string, unknown>);\n const resolvedGap =\n typeof gap === \"string\" && gap in SPACING_MAP\n ? SPACING_MAP[gap as keyof typeof SPACING_MAP]\n : gap;\n\n return (\n <MUIStack ref={ref} spacing={resolvedGap} {...safeProps}>\n {children}\n </MUIStack>\n );\n});\n\nStack.displayName = \"Stack\";\n","import React from \"react\";\nimport \"./Stepper.module.css\";\n\nexport type StepperProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Stepper: React.FC<StepperProps> = (props) => {\n return <div {...props}>Stepper</div>;\n};\n","import React from \"react\";\nimport \"./Switch.module.css\";\n\nexport type SwitchProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Switch: React.FC<SwitchProps> = (props) => {\n return <div {...props}>Switch</div>;\n};\n","import React from \"react\";\n\nexport type TableProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Table: React.FC<TableProps> = (props) => {\n return <div {...props}>Table</div>;\n};\n","import React from \"react\";\nimport \"./Tabs.module.css\";\n\nexport type TabsProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Tabs: React.FC<TabsProps> = (props) => {\n return <div {...props}>Tabs</div>;\n};\n","import React, { forwardRef } from \"react\";\nimport {\n Typography as MuiTypography,\n type TypographyProps as MuiTypographyProps,\n} from \"@mui/material\";\nimport {\n filterStylingProps,\n type RecursicaOverStyled,\n} from \"../../utils/filterStylingProps\";\n\nexport type TypographyProps = RecursicaOverStyled<\n Omit<MuiTypographyProps, \"variant\"> & {\n /**\n * Internal typography class mapping\n */\n typographyClass: string;\n component?: React.ElementType;\n }\n>;\n\nexport const Typography = forwardRef<HTMLElement, TypographyProps>(\n function Typography({ typographyClass, overStyled = false, ...rest }, ref) {\n const sanitizedProps = filterStylingProps(rest, overStyled);\n const restRecord = sanitizedProps as Record<string, unknown>;\n\n const classNameProp = restRecord.className as string | undefined;\n const finalClass = classNameProp\n ? `${typographyClass} ${classNameProp}`\n : typographyClass;\n\n return (\n <MuiTypography\n ref={ref}\n className={finalClass}\n variant=\"inherit\"\n {...sanitizedProps}\n />\n );\n },\n);\n\nTypography.displayName = \"Typography\";\n","import React, { forwardRef } from \"react\";\nimport { Typography } from \"../Typography/Typography\";\nimport { type RecursicaOverStyled } from \"../../utils/filterStylingProps\";\nimport { type TypographyProps as MuiTypographyProps } from \"@mui/material\";\n\nexport type TextVariant =\n | \"body\"\n | \"body-small\"\n | \"caption\"\n | \"overline\"\n | \"subtitle\"\n | \"subtitle-small\";\n\nexport type RecursicaTextProps = Omit<MuiTypographyProps, \"variant\"> & {\n variant?: TextVariant;\n children?: React.ReactNode;\n component?: React.ElementType;\n};\n\nexport type TextProps = RecursicaOverStyled<RecursicaTextProps>;\n\nexport const Text = forwardRef<HTMLElement, TextProps>(function Text(\n { variant = \"body\", ...rest },\n ref,\n) {\n const typographyClass = `recursica_brand_typography_${variant}`;\n return <Typography ref={ref} typographyClass={typographyClass} {...rest} />;\n});\n\nText.displayName = \"Text\";\n","import React from \"react\";\nimport \"./TextArea.module.css\";\n\nexport type TextAreaProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TextArea: React.FC<TextAreaProps> = (props) => {\n return <div {...props}>TextArea</div>;\n};\n","import React from \"react\";\nimport \"./TextField.module.css\";\n\nexport type TextFieldProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TextField: React.FC<TextFieldProps> = (props) => {\n return <div {...props}>TextField</div>;\n};\n","import React from \"react\";\nimport \"./TimePicker.module.css\";\n\nexport type TimePickerProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TimePicker: React.FC<TimePickerProps> = (props) => {\n return <div {...props}>TimePicker</div>;\n};\n","import React from \"react\";\nimport \"./Timeline.module.css\";\n\nexport type TimelineProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Timeline: React.FC<TimelineProps> = (props) => {\n return <div {...props}>Timeline</div>;\n};\n","import React, { forwardRef } from \"react\";\nimport { Typography } from \"../Typography/Typography\";\nimport { type RecursicaOverStyled } from \"../../utils/filterStylingProps\";\nimport { type TypographyProps as MuiTypographyProps } from \"@mui/material\";\n\nexport type RecursicaTitleProps = Omit<MuiTypographyProps, \"variant\"> & {\n order?: 1 | 2 | 3 | 4 | 5 | 6;\n children?: React.ReactNode;\n component?: React.ElementType;\n};\n\nexport type TitleProps = RecursicaOverStyled<RecursicaTitleProps>;\n\nexport const Title = forwardRef<HTMLElement, TitleProps>(function Title(\n { order = 1, component, ...rest },\n ref,\n) {\n const typographyClass = `recursica_brand_typography_h${order}`;\n const defaultComponent = `h${order}` as React.ElementType;\n\n return (\n <Typography\n ref={ref}\n typographyClass={typographyClass}\n component={component || defaultComponent}\n {...rest}\n />\n );\n});\n\nTitle.displayName = \"Title\";\n","import React from \"react\";\nimport \"./Toast.module.css\";\n\nexport type ToastProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Toast: React.FC<ToastProps> = (props) => {\n return <div {...props}>Toast</div>;\n};\n","import React from \"react\";\nimport \"./Tooltip.module.css\";\n\nexport type TooltipProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Tooltip: React.FC<TooltipProps> = (props) => {\n return <div {...props}>Tooltip</div>;\n};\n","import React from \"react\";\nimport \"./TransferList.module.css\";\n\nexport type TransferListProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TransferList: React.FC<TransferListProps> = (props) => {\n return <div {...props}>TransferList</div>;\n};\n","import { jsx as c, Fragment as f } from \"react/jsx-runtime\";\nimport h, { forwardRef as l, useEffect as p } from \"react\";\nconst E = \"_root_1qhn7_3\", _ = \"_contents_1qhn7_18\", r = {\n root: E,\n contents: _\n}, $ = l(function({ layer: o, contentsOnly: e, children: i, className: n, style: u, ...m }, d) {\n const y = e ? n ? `${r.root} ${r.contents} ${n}` : `${r.root} ${r.contents}` : n ? `${r.root} ${n}` : r.root;\n return /* @__PURE__ */ c(\n \"div\",\n {\n ref: d,\n className: y,\n style: u,\n ...e ? {} : { \"data-recursica-layer\": String(o) },\n ...m,\n children: i\n }\n );\n});\n$.displayName = \"Layer\";\nconst a = ({ emptyText: t = \"N/A\" }) => /* @__PURE__ */ c(h.Fragment, { children: t });\na.displayName = \"EmptyValueRenderer\";\na.check = (t) => t == null || t === \"\" || Array.isArray(t) && t.length === 0;\nconst s = \"data-recursica-theme\";\nfunction g({\n children: t,\n theme: o = \"light\"\n}) {\n return p(() => {\n const e = document.documentElement;\n return e.setAttribute(s, o), () => {\n e.removeAttribute(s);\n };\n }, [o]), /* @__PURE__ */ c(f, { children: t });\n}\nexport {\n a as EmptyValueRenderer,\n $ as Layer,\n g as RecursicaThemeProvider\n};\n//# sourceMappingURL=adapter-common.js.map\n"],"names":["Accordion","props","jsx","AssistiveElement","Autocomplete","Avatar","Badge","Box","forwardRef","ref","MUIBox","Breadcrumb","BLOCKED_STYLING_KEYS","LAYOUT_PROPS","SPACING_MAP","filterSxProp","sanitized","filterStylingProps","overStyled","prop","key","value","Loader","variant","size","rest","resolvedSize","sanitizedProps","classNameProp","finalClass","styles","renderChildren","jsxs","Fragment","hasVisibleChildren","children","Button","icon","loaderVariant","loaderSize","useRecursicaLoader","restRecord","hasStartIcon","hasEndIcon","hasVisibleText","isIconOnly","contentType","resolvedLoaderSize","loadingIndicator","MuiButton","Card","Checkbox","Chip","Container","mapSize","MUIContainer","DatePicker","Dropdown","FileInput","FileUpload","Flex","gap","rowGap","columnGap","safeProps","resolvedGap","resolvedRowGap","resolvedColumnGap","FormControlLayout","FormControlWrapper","Group","MUIStack","HoverCard","Label","Link","MUILink","Menu","Modal","NumberInput","Pagination","Panel","Radio","ReadOnlyField","SegmentedControl","Slider","Stack","Stepper","Switch","Table","Tabs","Typography","typographyClass","MuiTypography","Text","TextArea","TextField","TimePicker","Timeline","Title","order","component","defaultComponent","Toast","Tooltip","TransferList","E","_","r","$","l","o","e","i","n","u","m","d","y","c","a","t","h","s","g","p","f"],"mappings":"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"}
|
package/dist/mui-adapter.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
._root_1qhn7_3{display:block;border-style:solid}._root_1qhn7_3._contents_1qhn7_18{display:contents;border-style:unset}._root_1qhn7_3[data-recursica-layer="0"]{background-color:var(--recursica_brand_layer_0_properties_surface);color:var(--recursica_brand_layer_0_elements_text_color);border-color:var(--recursica_brand_layer_0_properties_border-color);border-width:var(--recursica_brand_layer_0_properties_border-size);border-radius:var(--recursica_brand_layer_0_properties_border-radius);box-shadow:var(--recursica_brand_layer_0_properties_elevation);padding:var(--recursica_brand_layer_0_properties_padding)}._root_1qhn7_3[data-recursica-layer="1"]{background-color:var(--recursica_brand_layer_1_properties_surface);color:var(--recursica_brand_layer_1_elements_text_color);border-color:var(--recursica_brand_layer_1_properties_border-color);border-width:var(--recursica_brand_layer_1_properties_border-size);border-radius:var(--recursica_brand_layer_1_properties_border-radius);box-shadow:var(--recursica_brand_layer_1_properties_elevation);padding:var(--recursica_brand_layer_1_properties_padding)}._root_1qhn7_3[data-recursica-layer="2"]{background-color:var(--recursica_brand_layer_2_properties_surface);color:var(--recursica_brand_layer_2_elements_text_color);border-color:var(--recursica_brand_layer_2_properties_border-color);border-width:var(--recursica_brand_layer_2_properties_border-size);border-radius:var(--recursica_brand_layer_2_properties_border-radius);box-shadow:var(--recursica_brand_layer_2_properties_elevation);padding:var(--recursica_brand_layer_2_properties_padding)}._root_1qhn7_3[data-recursica-layer="3"]{background-color:var(--recursica_brand_layer_3_properties_surface);color:var(--recursica_brand_layer_3_elements_text_color);border-color:var(--recursica_brand_layer_3_properties_border-color);border-width:var(--recursica_brand_layer_3_properties_border-size);border-radius:var(--recursica_brand_layer_3_properties_border-radius);box-shadow:var(--recursica_brand_layer_3_properties_elevation);padding:var(--recursica_brand_layer_3_properties_padding)}.Button-module__root___Q2R8-{box-sizing:border-box;margin:0;border-style:solid;overflow:hidden;position:relative;transition:all .2s ease;width:fit-content;font-family:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_font-family );font-size:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_font-size );font-style:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_font-style );font-weight:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_font-weight );letter-spacing:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_letter-spacing );line-height:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_line-height );text-decoration:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_text-decoration );text-transform:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_text-transform )}.Button-module__root___Q2R8-{text-transform:none;min-width:0;color:inherit;background-color:transparent}.Button-module__root___Q2R8->*{min-width:0;position:relative;z-index:1}.Button-module__label___UJ3Zt{display:flex;align-items:center;min-width:0;flex:1 1 0}.Button-module__labelText___rFV5p{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:inherit;line-height:inherit}.Button-module__root___Q2R8-[data-size=default]{border-radius:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_border-radius );height:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_height );min-width:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_min-width );padding:0 var( --recursica_ui-kit_components_button_variants_sizes_default_properties_horizontal-padding )}.Button-module__root___Q2R8-[data-size=default] .Button-module__labelText___rFV5p{max-width:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_max-label-width )}.Button-module__root___Q2R8-[data-size=small]{border-radius:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_border-radius );height:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_height );min-width:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_min-width );padding:0 var( --recursica_ui-kit_components_button_variants_sizes_small_properties_horizontal-padding );font-family:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_text_font-family, var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_font-family ) );font-size:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_text_font-size, var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_font-size ) );font-weight:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_text_font-weight, var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_font-weight ) )}.Button-module__root___Q2R8-[data-size=small] .Button-module__labelText___rFV5p{max-width:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_max-label-width )}.Button-module__iconWrapper___uEKPa{display:flex;align-items:center;justify-content:center;flex-shrink:0}.Button-module__iconWrapper___uEKPa>*{width:100%;height:100%;object-fit:contain}.Button-module__root___Q2R8-[data-size=default] .Button-module__iconWrapper___uEKPa{width:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_icon );height:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_icon )}.Button-module__root___Q2R8-[data-size=small] .Button-module__iconWrapper___uEKPa{width:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_icon );height:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_icon )}.Button-module__root___Q2R8-[data-size=default] .Button-module__MuiButton-startIcon___t3CJU,.Button-module__root___Q2R8-[data-size=default] .Button-module__MuiButton-endIcon___AxvyP{margin-left:0;margin-right:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_icon-text-gap )}.Button-module__root___Q2R8-[data-size=small] .Button-module__MuiButton-startIcon___t3CJU,.Button-module__root___Q2R8-[data-size=small] .Button-module__MuiButton-endIcon___AxvyP{margin-left:0;margin-right:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_icon-text-gap )}.Button-module__root___Q2R8-[data-icon-only] .Button-module__MuiButton-startIcon___t3CJU,.Button-module__root___Q2R8-[data-icon-only] .Button-module__MuiButton-endIcon___AxvyP{margin-right:0;margin-left:0}.Button-module__root___Q2R8-[data-size=default]:disabled,.Button-module__root___Q2R8-[data-size=default].Mui-disabled{opacity:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_disabled-opacity );cursor:not-allowed}.Button-module__root___Q2R8-[data-size=small]:disabled,.Button-module__root___Q2R8-[data-size=small].Mui-disabled{opacity:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_disabled-opacity );cursor:not-allowed}.Button-module__root___Q2R8-:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;z-index:0;pointer-events:none;transition:opacity .15s ease;opacity:0}.Button-module__root___Q2R8-[data-size=default]:after{background-color:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_hover-color )}.Button-module__root___Q2R8-[data-size=small]:after{background-color:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_hover-color )}.Button-module__root___Q2R8-:hover:not(:disabled):not(.Mui-disabled):after{opacity:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_hover-opacity, .1 )}.Button-module__root___Q2R8-[data-variant=solid]{border-width:var( --recursica_ui-kit_components_button_variants_styles_solid_properties_border-size );box-shadow:var( --recursica_ui-kit_components_button_variants_styles_solid_properties_elevation );background-color:var( --recursica_ui-kit_components_button_variants_styles_solid_properties_colors_background );border-color:var( --recursica_ui-kit_components_button_variants_styles_solid_properties_colors_border-color );color:var( --recursica_ui-kit_components_button_variants_styles_solid_properties_colors_text )}.Button-module__root___Q2R8-[data-variant=solid]:hover:not(:disabled):not(.Mui-disabled){color:var( --recursica_ui-kit_components_button_variants_styles_solid_properties_colors_text-hover )}.Button-module__root___Q2R8-[data-variant=outline]{border-width:var( --recursica_ui-kit_components_button_variants_styles_outline_properties_border-size );box-shadow:var( --recursica_ui-kit_components_button_variants_styles_outline_properties_elevation );background-color:var( --recursica_ui-kit_components_button_variants_styles_outline_properties_colors_background );border-color:var( --recursica_ui-kit_components_button_variants_styles_outline_properties_colors_border-color );color:var( --recursica_ui-kit_components_button_variants_styles_outline_properties_colors_text )}.Button-module__root___Q2R8-[data-variant=outline]:hover:not(:disabled):not(.Mui-disabled){color:var( --recursica_ui-kit_components_button_variants_styles_outline_properties_colors_text-hover )}.Button-module__root___Q2R8-[data-variant=text]{border-width:var( --recursica_ui-kit_components_button_variants_styles_text_properties_border-size );box-shadow:var( --recursica_ui-kit_components_button_variants_styles_text_properties_elevation );background-color:var( --recursica_ui-kit_components_button_variants_styles_text_properties_colors_background );border-color:var( --recursica_ui-kit_components_button_variants_styles_text_properties_colors_border-color );color:var( --recursica_ui-kit_components_button_variants_styles_text_properties_colors_text )}.Button-module__root___Q2R8-[data-variant=text]:hover:not(:disabled):not(.Mui-disabled){color:var( --recursica_ui-kit_components_button_variants_styles_text_properties_colors_text-hover )}.Link-module__root___I0VGE{display:inline-flex;align-items:center;cursor:pointer;text-decoration:none;color:inherit;font-family:var( --recursica_ui-kit_components_link_properties_text_font-family );font-size:var(--recursica_ui-kit_components_link_properties_text_font-size);letter-spacing:var( --recursica_ui-kit_components_link_properties_text_letter-spacing );line-height:var( --recursica_ui-kit_components_link_properties_text_line-height );font-style:var( --recursica_ui-kit_components_link_variants_states_default_properties_text_font-style );font-weight:var( --recursica_ui-kit_components_link_variants_states_default_properties_text_font-weight );text-decoration:var( --recursica_ui-kit_components_link_variants_states_default_properties_text_text-decoration );color:var( --recursica_ui-kit_components_link_variants_states_default_properties_colors_text )}.Link-module__root___I0VGE[data-has-icon]{gap:var(--recursica_ui-kit_components_link_properties_icon-text-gap)}.Link-module__root___I0VGE:hover{text-decoration:var( --recursica_ui-kit_components_link_variants_states_hover_properties_text_text-decoration );font-style:var( --recursica_ui-kit_components_link_variants_states_hover_properties_text_font-style );font-weight:var( --recursica_ui-kit_components_link_variants_states_hover_properties_text_font-weight );color:var( --recursica_ui-kit_components_link_variants_states_hover_properties_colors_text )}.Link-module__root___I0VGE:visited{text-decoration:var( --recursica_ui-kit_components_link_variants_states_visited_properties_text_text-decoration );font-style:var( --recursica_ui-kit_components_link_variants_states_visited_properties_text_font-style );font-weight:var( --recursica_ui-kit_components_link_variants_states_visited_properties_text_font-weight );color:var( --recursica_ui-kit_components_link_variants_states_visited_properties_colors_text )}.Link-module__root___I0VGE:visited:hover{text-decoration:var( --recursica_ui-kit_components_link_variants_states_visited-hover_properties_text_text-decoration );font-style:var( --recursica_ui-kit_components_link_variants_states_visited-hover_properties_text_font-style );font-weight:var( --recursica_ui-kit_components_link_variants_states_visited-hover_properties_text_font-weight );color:var( --recursica_ui-kit_components_link_variants_states_visited-hover_properties_colors_text )}.Link-module__iconWrapper___W-LlF{display:flex;align-items:center;justify-content:center;width:var(--recursica_ui-kit_components_link_properties_icon-size);height:var(--recursica_ui-kit_components_link_properties_icon-size);color:var( --recursica_ui-kit_components_link_variants_states_default_properties_colors_icon )}.Link-module__root___I0VGE:hover .Link-module__iconWrapper___W-LlF{color:var( --recursica_ui-kit_components_link_variants_states_hover_properties_colors_icon )}.Link-module__root___I0VGE:visited .Link-module__iconWrapper___W-LlF{color:var( --recursica_ui-kit_components_link_variants_states_visited_properties_colors_icon )}.Link-module__root___I0VGE:visited:hover .Link-module__iconWrapper___W-LlF{color:var( --recursica_ui-kit_components_link_variants_states_visited-hover_properties_colors_icon )}.Link-module__labelText___wSvUy{min-width:0}
|
|
1
|
+
._root_1qhn7_3{display:block;border-style:solid}._root_1qhn7_3._contents_1qhn7_18{display:contents;border-style:unset}._root_1qhn7_3[data-recursica-layer="0"]{background-color:var(--recursica_brand_layer_0_properties_surface);color:var(--recursica_brand_layer_0_elements_text_color);border-color:var(--recursica_brand_layer_0_properties_border-color);border-width:var(--recursica_brand_layer_0_properties_border-size);border-radius:var(--recursica_brand_layer_0_properties_border-radius);box-shadow:var(--recursica_brand_layer_0_properties_elevation);padding:var(--recursica_brand_layer_0_properties_padding)}._root_1qhn7_3[data-recursica-layer="1"]{background-color:var(--recursica_brand_layer_1_properties_surface);color:var(--recursica_brand_layer_1_elements_text_color);border-color:var(--recursica_brand_layer_1_properties_border-color);border-width:var(--recursica_brand_layer_1_properties_border-size);border-radius:var(--recursica_brand_layer_1_properties_border-radius);box-shadow:var(--recursica_brand_layer_1_properties_elevation);padding:var(--recursica_brand_layer_1_properties_padding)}._root_1qhn7_3[data-recursica-layer="2"]{background-color:var(--recursica_brand_layer_2_properties_surface);color:var(--recursica_brand_layer_2_elements_text_color);border-color:var(--recursica_brand_layer_2_properties_border-color);border-width:var(--recursica_brand_layer_2_properties_border-size);border-radius:var(--recursica_brand_layer_2_properties_border-radius);box-shadow:var(--recursica_brand_layer_2_properties_elevation);padding:var(--recursica_brand_layer_2_properties_padding)}._root_1qhn7_3[data-recursica-layer="3"]{background-color:var(--recursica_brand_layer_3_properties_surface);color:var(--recursica_brand_layer_3_elements_text_color);border-color:var(--recursica_brand_layer_3_properties_border-color);border-width:var(--recursica_brand_layer_3_properties_border-size);border-radius:var(--recursica_brand_layer_3_properties_border-radius);box-shadow:var(--recursica_brand_layer_3_properties_elevation);padding:var(--recursica_brand_layer_3_properties_padding)}.Loader-module__root___6iYOP{--loader-color: var( --recursica_ui-kit_components_loader_properties_indicator-color, currentColor );box-sizing:border-box}.Loader-module__root___6iYOP *{box-sizing:border-box}.Loader-module__root___6iYOP[data-size=small]{--loader-size: var( --recursica_ui-kit_components_loader_variants_sizes_small_properties_size )}.Loader-module__root___6iYOP[data-size=small][data-variant=oval]{--loader-thickness: var( --recursica_ui-kit_components_loader_variants_sizes_small_properties_thickness )}.Loader-module__root___6iYOP[data-size=small]:not([data-variant=oval]) span{border-radius:var( --recursica_ui-kit_components_loader_variants_sizes_small_properties_border-radius )}.Loader-module__root___6iYOP[data-size=default]{--loader-size: var( --recursica_ui-kit_components_loader_variants_sizes_default_properties_size )}.Loader-module__root___6iYOP[data-size=default][data-variant=oval]{--loader-thickness: var( --recursica_ui-kit_components_loader_variants_sizes_default_properties_thickness )}.Loader-module__root___6iYOP[data-size=default]:not([data-variant=oval]) span{border-radius:var( --recursica_ui-kit_components_loader_variants_sizes_default_properties_border-radius )}.Loader-module__root___6iYOP[data-size=large]{--loader-size: var( --recursica_ui-kit_components_loader_variants_sizes_large_properties_size )}.Loader-module__root___6iYOP[data-size=large][data-variant=oval]{--loader-thickness: var( --recursica_ui-kit_components_loader_variants_sizes_large_properties_thickness )}.Loader-module__root___6iYOP[data-size=large]:not([data-variant=oval]) span{border-radius:var( --recursica_ui-kit_components_loader_variants_sizes_large_properties_border-radius )}@keyframes Loader-module__oval-spin___-8un6{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.Loader-module__root___6iYOP[data-variant=oval]{display:inline-block;width:var(--loader-size);height:var(--loader-size)}.Loader-module__root___6iYOP[data-variant=oval]:after{content:"";display:block;width:var(--loader-size);height:var(--loader-size);border-radius:10000px;border-width:var(--loader-thickness);border-style:solid;border-color:var(--loader-color) var(--loader-color) var(--loader-color) transparent;animation:Loader-module__oval-spin___-8un6 1.2s linear infinite}@keyframes Loader-module__bars-bounce___6Tov2{0%{transform:scale(.6);opacity:0}50%,to{transform:scale(1);opacity:1}}.Loader-module__root___6iYOP[data-variant=bars]{position:relative;width:var(--loader-size);height:var(--loader-size);display:flex;align-items:center;justify-content:center;gap:calc(var(--loader-size) / 5)}.Loader-module__root___6iYOP[data-variant=bars] span{flex:1;height:100%;background:var(--loader-color);animation:Loader-module__bars-bounce___6Tov2 1.2s cubic-bezier(0,.5,.5,1) infinite}.Loader-module__root___6iYOP[data-variant=bars] span:nth-of-type(1){animation-delay:-.24s}.Loader-module__root___6iYOP[data-variant=bars] span:nth-of-type(2){animation-delay:-.12s}.Loader-module__root___6iYOP[data-variant=bars] span:nth-of-type(3){animation-delay:0}@keyframes Loader-module__dots-pulse___YV7qk{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.6);opacity:.5}}.Loader-module__root___6iYOP[data-variant=dots]{display:flex;justify-content:center;align-items:center;gap:calc(var(--loader-size) / 10);position:relative;width:var(--loader-size);height:var(--loader-size)}.Loader-module__root___6iYOP[data-variant=dots] span{width:calc(var(--loader-size) / 3 - var(--loader-size) / 15);height:calc(var(--loader-size) / 3 - var(--loader-size) / 15);background:var(--loader-color);animation:Loader-module__dots-pulse___YV7qk .8s infinite linear}.Loader-module__root___6iYOP[data-variant=dots] span:nth-child(2){animation-delay:.4s}.Button-module__root___Q2R8-{box-sizing:border-box;margin:0;border-style:solid;overflow:hidden;position:relative;transition:all .2s ease;width:fit-content;font-family:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_font-family );font-size:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_font-size );font-style:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_font-style );font-weight:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_font-weight );letter-spacing:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_letter-spacing );line-height:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_line-height );text-decoration:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_text-decoration );text-transform:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_text-transform )}.Button-module__root___Q2R8-{text-transform:none;min-width:0;color:inherit;background-color:transparent}.Button-module__root___Q2R8->*:not(.MuiButton-loadingIndicator){min-width:0;position:relative;z-index:1}.Button-module__label___UJ3Zt{display:flex;align-items:center;min-width:0;flex:1 1 0}.Button-module__labelText___rFV5p{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:inherit;line-height:inherit}.Button-module__root___Q2R8-[data-loading=true] .Button-module__labelText___rFV5p{visibility:hidden}.Button-module__root___Q2R8-[data-loading=true]{opacity:1!important}.Button-module__root___Q2R8-[data-size=default][data-variant=solid][data-loading=true]{background-color:color-mix(in srgb,var( --recursica_ui-kit_components_button_variants_styles_solid_properties_colors_background ) calc(var( --recursica_ui-kit_components_button_variants_sizes_default_properties_disabled-opacity ) * 100%),transparent)!important}.Button-module__root___Q2R8-[data-size=small][data-variant=solid][data-loading=true]{background-color:color-mix(in srgb,var( --recursica_ui-kit_components_button_variants_styles_solid_properties_colors_background ) calc(var( --recursica_ui-kit_components_button_variants_sizes_small_properties_disabled-opacity ) * 100%),transparent)!important}.Button-module__root___Q2R8-[data-size=default]{height:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_height )}.Button-module__root___Q2R8-[data-size=default][data-content=label]{border-radius:var( --recursica_ui-kit_components_button_variants_content_label_variants_sizes_default_properties_border-radius );min-width:var( --recursica_ui-kit_components_button_variants_content_label_variants_sizes_default_properties_min-width );padding:0 var( --recursica_ui-kit_components_button_variants_content_label_variants_sizes_default_properties_horizontal-padding )}.Button-module__root___Q2R8-[data-size=default][data-content=icon-label]{border-radius:var( --recursica_ui-kit_components_button_variants_content_icon-label_variants_sizes_default_properties_border-radius );min-width:var( --recursica_ui-kit_components_button_variants_content_icon-label_variants_sizes_default_properties_min-width );padding:0 var( --recursica_ui-kit_components_button_variants_content_icon-label_variants_sizes_default_properties_horizontal-padding )}.Button-module__root___Q2R8-[data-size=default][data-content=icon-only]{border-radius:var( --recursica_ui-kit_components_button_variants_content_icon-only_variants_sizes_default_properties_border-radius );min-width:var( --recursica_ui-kit_components_button_variants_content_icon-only_variants_sizes_default_properties_min-width );padding:0 var( --recursica_ui-kit_components_button_variants_content_icon-only_variants_sizes_default_properties_horizontal-padding )}.Button-module__root___Q2R8-[data-size=default] .Button-module__labelText___rFV5p{max-width:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_max-label-width )}.Button-module__root___Q2R8-[data-size=small]{height:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_height );font-family:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_text_font-family, var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_font-family ) );font-size:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_text_font-size, var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_font-size ) );font-weight:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_text_font-weight, var( --recursica_ui-kit_components_button_variants_sizes_default_properties_text_font-weight ) )}.Button-module__root___Q2R8-[data-size=small][data-content=label]{border-radius:var( --recursica_ui-kit_components_button_variants_content_label_variants_sizes_small_properties_border-radius );min-width:var( --recursica_ui-kit_components_button_variants_content_label_variants_sizes_small_properties_min-width );padding:0 var( --recursica_ui-kit_components_button_variants_content_label_variants_sizes_small_properties_horizontal-padding )}.Button-module__root___Q2R8-[data-size=small][data-content=icon-label]{border-radius:var( --recursica_ui-kit_components_button_variants_content_icon-label_variants_sizes_small_properties_border-radius );min-width:var( --recursica_ui-kit_components_button_variants_content_icon-label_variants_sizes_small_properties_min-width );padding:0 var( --recursica_ui-kit_components_button_variants_content_icon-label_variants_sizes_small_properties_horizontal-padding )}.Button-module__root___Q2R8-[data-size=small][data-content=icon-only]{border-radius:var( --recursica_ui-kit_components_button_variants_content_icon-only_variants_sizes_small_properties_border-radius );min-width:var( --recursica_ui-kit_components_button_variants_content_icon-only_variants_sizes_small_properties_min-width );padding:0 var( --recursica_ui-kit_components_button_variants_content_icon-only_variants_sizes_small_properties_horizontal-padding )}.Button-module__root___Q2R8-[data-size=small] .Button-module__labelText___rFV5p{max-width:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_max-label-width )}.Button-module__iconWrapper___uEKPa{display:flex;align-items:center;justify-content:center;flex-shrink:0}.Button-module__iconWrapper___uEKPa>*{width:100%;height:100%;object-fit:contain}.Button-module__root___Q2R8-[data-size=default] .Button-module__iconWrapper___uEKPa{width:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_icon );height:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_icon )}.Button-module__root___Q2R8-[data-size=small] .Button-module__iconWrapper___uEKPa{width:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_icon );height:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_icon )}.Button-module__root___Q2R8-[data-size=default] .Button-module__MuiButton-startIcon___t3CJU,.Button-module__root___Q2R8-[data-size=default] .Button-module__MuiButton-endIcon___AxvyP{margin-left:0;margin-right:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_icon-text-gap )}.Button-module__root___Q2R8-[data-size=small] .Button-module__MuiButton-startIcon___t3CJU,.Button-module__root___Q2R8-[data-size=small] .Button-module__MuiButton-endIcon___AxvyP{margin-left:0;margin-right:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_icon-text-gap )}.Button-module__root___Q2R8-[data-content=icon-only] .Button-module__labelText___rFV5p{display:none}.Button-module__root___Q2R8-[data-content=icon-only] .Button-module__MuiButton-startIcon___t3CJU,.Button-module__root___Q2R8-[data-content=icon-only] .Button-module__MuiButton-endIcon___AxvyP{margin-right:0;margin-left:0}.Button-module__root___Q2R8-[data-size=default]:disabled,.Button-module__root___Q2R8-[data-size=default].Mui-disabled{opacity:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_disabled-opacity );cursor:not-allowed}.Button-module__root___Q2R8-[data-size=small]:disabled,.Button-module__root___Q2R8-[data-size=small].Mui-disabled{opacity:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_disabled-opacity );cursor:not-allowed}.Button-module__root___Q2R8-:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;z-index:0;pointer-events:none;transition:opacity .15s ease;opacity:0}.Button-module__root___Q2R8-[data-size=default]:after{background-color:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_hover-color )}.Button-module__root___Q2R8-[data-size=small]:after{background-color:var( --recursica_ui-kit_components_button_variants_sizes_small_properties_hover-color )}.Button-module__root___Q2R8-:hover:not(:disabled):not(.Mui-disabled):after{opacity:var( --recursica_ui-kit_components_button_variants_sizes_default_properties_hover-opacity, .1 )}.Button-module__root___Q2R8-[data-variant=solid]{border-width:var( --recursica_ui-kit_components_button_variants_styles_solid_properties_border-size );box-shadow:var( --recursica_ui-kit_components_button_variants_styles_solid_properties_elevation );background-color:var( --recursica_ui-kit_components_button_variants_styles_solid_properties_colors_background );border-color:var( --recursica_ui-kit_components_button_variants_styles_solid_properties_colors_border-color );color:var( --recursica_ui-kit_components_button_variants_styles_solid_properties_colors_text )}.Button-module__root___Q2R8-[data-variant=solid] .Button-module__iconWrapper___uEKPa{color:var( --recursica_ui-kit_components_button_variants_styles_solid_properties_colors_icon-color )}.Button-module__root___Q2R8-[data-variant=solid]:hover:not(:disabled):not(.Mui-disabled){color:var( --recursica_ui-kit_components_button_variants_styles_solid_properties_colors_text-hover );box-shadow:var( --recursica_ui-kit_components_button_variants_styles_solid_properties_hover-elevation )}.Button-module__root___Q2R8-[data-variant=outline]{border-width:var( --recursica_ui-kit_components_button_variants_styles_outline_properties_border-size );box-shadow:var( --recursica_ui-kit_components_button_variants_styles_outline_properties_elevation );background-color:var( --recursica_ui-kit_components_button_variants_styles_outline_properties_colors_background );border-color:var( --recursica_ui-kit_components_button_variants_styles_outline_properties_colors_border-color );color:var( --recursica_ui-kit_components_button_variants_styles_outline_properties_colors_text )}.Button-module__root___Q2R8-[data-variant=outline] .Button-module__iconWrapper___uEKPa{color:var( --recursica_ui-kit_components_button_variants_styles_outline_properties_colors_icon-color )}.Button-module__root___Q2R8-[data-variant=outline]:hover:not(:disabled):not(.Mui-disabled){color:var( --recursica_ui-kit_components_button_variants_styles_outline_properties_colors_text-hover );box-shadow:var( --recursica_ui-kit_components_button_variants_styles_outline_properties_hover-elevation )}.Button-module__root___Q2R8-[data-variant=text]{border-width:var( --recursica_ui-kit_components_button_variants_styles_text_properties_border-size );box-shadow:var( --recursica_ui-kit_components_button_variants_styles_text_properties_elevation );background-color:var( --recursica_ui-kit_components_button_variants_styles_text_properties_colors_background );border-color:var( --recursica_ui-kit_components_button_variants_styles_text_properties_colors_border-color );color:var( --recursica_ui-kit_components_button_variants_styles_text_properties_colors_text )}.Button-module__root___Q2R8-[data-variant=text] .Button-module__iconWrapper___uEKPa{color:var( --recursica_ui-kit_components_button_variants_styles_text_properties_colors_icon-color )}.Button-module__root___Q2R8-[data-variant=text]:hover:not(:disabled):not(.Mui-disabled){color:var( --recursica_ui-kit_components_button_variants_styles_text_properties_colors_text-hover );box-shadow:var( --recursica_ui-kit_components_button_variants_styles_text_properties_hover-elevation )}.Link-module__root___I0VGE{display:inline-flex;align-items:center;cursor:pointer;text-decoration:none;color:inherit;font-family:var( --recursica_ui-kit_components_link_properties_text_font-family );font-size:var(--recursica_ui-kit_components_link_properties_text_font-size);letter-spacing:var( --recursica_ui-kit_components_link_properties_text_letter-spacing );line-height:var( --recursica_ui-kit_components_link_properties_text_line-height );font-style:var( --recursica_ui-kit_components_link_variants_states_default_properties_text_font-style );font-weight:var( --recursica_ui-kit_components_link_variants_states_default_properties_text_font-weight );text-decoration:var( --recursica_ui-kit_components_link_variants_states_default_properties_text_text-decoration );color:var( --recursica_ui-kit_components_link_variants_states_default_properties_colors_text )}.Link-module__root___I0VGE[data-has-icon]{gap:var(--recursica_ui-kit_components_link_properties_icon-text-gap)}.Link-module__root___I0VGE:hover{text-decoration:var( --recursica_ui-kit_components_link_variants_states_hover_properties_text_text-decoration );font-style:var( --recursica_ui-kit_components_link_variants_states_hover_properties_text_font-style );font-weight:var( --recursica_ui-kit_components_link_variants_states_hover_properties_text_font-weight );color:var( --recursica_ui-kit_components_link_variants_states_hover_properties_colors_text )}.Link-module__root___I0VGE:visited{text-decoration:var( --recursica_ui-kit_components_link_variants_states_visited_properties_text_text-decoration );font-style:var( --recursica_ui-kit_components_link_variants_states_visited_properties_text_font-style );font-weight:var( --recursica_ui-kit_components_link_variants_states_visited_properties_text_font-weight );color:var( --recursica_ui-kit_components_link_variants_states_visited_properties_colors_text )}.Link-module__root___I0VGE:visited:hover{text-decoration:var( --recursica_ui-kit_components_link_variants_states_visited-hover_properties_text_text-decoration );font-style:var( --recursica_ui-kit_components_link_variants_states_visited-hover_properties_text_font-style );font-weight:var( --recursica_ui-kit_components_link_variants_states_visited-hover_properties_text_font-weight );color:var( --recursica_ui-kit_components_link_variants_states_visited-hover_properties_colors_text )}.Link-module__iconWrapper___W-LlF{display:flex;align-items:center;justify-content:center;width:var(--recursica_ui-kit_components_link_properties_icon-size);height:var(--recursica_ui-kit_components_link_properties_icon-size);color:var( --recursica_ui-kit_components_link_variants_states_default_properties_colors_icon )}.Link-module__root___I0VGE:hover .Link-module__iconWrapper___W-LlF{color:var( --recursica_ui-kit_components_link_variants_states_hover_properties_colors_icon )}.Link-module__root___I0VGE:visited .Link-module__iconWrapper___W-LlF{color:var( --recursica_ui-kit_components_link_variants_states_visited_properties_colors_icon )}.Link-module__root___I0VGE:visited:hover .Link-module__iconWrapper___W-LlF{color:var( --recursica_ui-kit_components_link_variants_states_visited-hover_properties_colors_icon )}.Link-module__labelText___wSvUy{min-width:0}
|