@cgi-learning-hub/ui
Version:
@cgi-learning-hub/ui is an open-source React component library that implements UI for HUB's features
2 lines (1 loc) • 3.96 kB
JavaScript
"use strict";const e=require("./index-DLnSn8GT.cjs"),f=require("./DefaultPropsProvider-Cnf49AIv.cjs"),V=require("react"),t=require("./identifier-BoZelETM.cjs"),D=require("react/jsx-runtime"),C=require("./styled-Cax0O00h.cjs"),q=require("./extendSxProp-ZMCunXYm.cjs"),B=require("./useThemeProps-B9E_wuN9.cjs");function N(o){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(o){for(const r in o)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(o,r);Object.defineProperty(s,r,n.get?n:{enumerable:!0,get:()=>o[r]})}}return s.default=o,Object.freeze(s)}const P=N(V),R=t.createTheme$1(),E=C.styled("div",{name:"MuiStack",slot:"Root"});function M(o){return B.useThemeProps({props:o,name:"MuiStack",defaultTheme:R})}function w(o,s){const r=P.Children.toArray(o).filter(Boolean);return r.reduce((n,a,c)=>(n.push(a),c<r.length-1&&n.push(P.cloneElement(s,{key:`separator-${c}`})),n),[])}const F=o=>({row:"Left","row-reverse":"Right",column:"Top","column-reverse":"Bottom"})[o],_=({ownerState:o,theme:s})=>{let r={display:"flex",flexDirection:"column",...t.handleBreakpoints({theme:s},t.resolveBreakpointValues({values:o.direction,breakpoints:s.breakpoints.values}),n=>({flexDirection:n}))};if(o.spacing){const n=t.createUnarySpacing(s),a=Object.keys(s.breakpoints.values).reduce((p,i)=>((typeof o.spacing=="object"&&o.spacing[i]!=null||typeof o.direction=="object"&&o.direction[i]!=null)&&(p[i]=!0),p),{}),c=t.resolveBreakpointValues({values:o.direction,base:a}),l=t.resolveBreakpointValues({values:o.spacing,base:a});typeof c=="object"&&Object.keys(c).forEach((p,i,y)=>{if(!c[p]){const T=i>0?c[y[i-1]]:"column";c[p]=T}});const u=(p,i)=>o.useFlexGap?{gap:t.getValue(n,p)}:{"& > :not(style):not(style)":{margin:0},"& > :not(style) ~ :not(style)":{[`margin${F(i?c[i]:o.direction)}`]:t.getValue(n,p)}};r=t.deepmerge(r,t.handleBreakpoints({theme:s},l,u))}return r=t.mergeBreakpointsInOrder(s.breakpoints,r),r};function G(o={}){const{createStyledComponent:s=E,useThemeProps:r=M,componentName:n="MuiStack"}=o,a=()=>{const u={root:["root"]};return f.composeClasses(u,p=>t.generateUtilityClass(n,p),{})},c=s(_),l=P.forwardRef(function(p,i){const y=r(p),d=q.extendSxProp(y),{component:T="div",direction:g="column",spacing:b=0,divider:m,children:v,className:j,useFlexGap:k=!1,...h}=d,x={direction:g,spacing:b,useFlexGap:k},S=a();return D.jsx(c,{as:T,ownerState:x,ref:i,className:t.clsx(S.root,j),...h,children:m?w(v,m):v})});return process.env.NODE_ENV!=="production"&&(l.propTypes={children:e.PropTypes.node,direction:e.PropTypes.oneOfType([e.PropTypes.oneOf(["column-reverse","column","row-reverse","row"]),e.PropTypes.arrayOf(e.PropTypes.oneOf(["column-reverse","column","row-reverse","row"])),e.PropTypes.object]),divider:e.PropTypes.node,spacing:e.PropTypes.oneOfType([e.PropTypes.arrayOf(e.PropTypes.oneOfType([e.PropTypes.number,e.PropTypes.string])),e.PropTypes.number,e.PropTypes.object,e.PropTypes.string]),sx:e.PropTypes.oneOfType([e.PropTypes.arrayOf(e.PropTypes.oneOfType([e.PropTypes.func,e.PropTypes.object,e.PropTypes.bool])),e.PropTypes.func,e.PropTypes.object])}),l}const O=G({createStyledComponent:f.styled("div",{name:"MuiStack",slot:"Root"}),useThemeProps:o=>f.useDefaultProps({props:o,name:"MuiStack"})});process.env.NODE_ENV!=="production"&&(O.propTypes={children:e.PropTypes.node,component:e.PropTypes.elementType,direction:e.PropTypes.oneOfType([e.PropTypes.oneOf(["column-reverse","column","row-reverse","row"]),e.PropTypes.arrayOf(e.PropTypes.oneOf(["column-reverse","column","row-reverse","row"])),e.PropTypes.object]),divider:e.PropTypes.node,spacing:e.PropTypes.oneOfType([e.PropTypes.arrayOf(e.PropTypes.oneOfType([e.PropTypes.number,e.PropTypes.string])),e.PropTypes.number,e.PropTypes.object,e.PropTypes.string]),sx:e.PropTypes.oneOfType([e.PropTypes.arrayOf(e.PropTypes.oneOfType([e.PropTypes.func,e.PropTypes.object,e.PropTypes.bool])),e.PropTypes.func,e.PropTypes.object]),useFlexGap:e.PropTypes.bool});exports.Stack=O;