UNPKG

@infinityfx/fluid

Version:

React UI library, using zero-runtime CSS-in-JS.

3 lines (2 loc) 2.58 kB
import{jsx as e,jsxs as t}from"react/jsx-runtime";import{combineClasses as r,classes as i}from"../../core/utils.js";import{Children as a}from"react";import{createStyles as n}from"../../core/style.js";const o=n("timeline",{".timeline":{display:"grid"},".d__horizontal":{gridAutoFlow:"column"},".timeline.uniform":{gridAutoColumns:"1fr",gridAutoRows:"1fr"},".event":{display:"flex",gap:"var(--f-spacing-sml)"},".d__horizontal .event":{flexDirection:"column"},".event:not(:first-child) .content":{alignSelf:"center"},".event:last-child .content":{alignSelf:"flex-end"},".d__horizontal .event:not(:first-child) .content":{paddingLeft:"var(--f-spacing-xsm)"},".d__horizontal .event:not(:last-child) .content":{paddingRight:"var(--f-spacing-xsm)"},".d__vertical.overflow .event:last-child .content":{alignSelf:"flex-start",paddingTop:"6px"},".axis":{display:"flex",gap:"3px",alignItems:"center"},".d__vertical .axis":{flexDirection:"column"},".bullet":{position:"relative",height:"1.5em",width:"1.5em",borderRadius:"999px",border:"solid 3px var(--f-clr-grey-200)",zIndex:1,transition:"border-color .25s"},".bullet::after":{content:'""',position:"absolute",inset:"3px",borderRadius:"999px",backgroundColor:"var(--f-clr-primary-100)",opacity:0,transition:"opacity .25s"},'.bullet[data-active="true"]':{borderColor:"var(--f-clr-primary-100)"},'.bullet[data-active="true"]::after':{opacity:1},".segment":{height:"3px",backgroundColor:"var(--f-clr-grey-200)",transition:"background-color .25s",flexGrow:1},".overflow .event:last-child .segment":{flexGrow:0},".d__horizontal .segment":{height:"3px",minWidth:"3px"},".d__vertical .segment":{width:"3px",minHeight:"3px",writingMode:"vertical-lr"},".segment:first-child":{borderStartEndRadius:"99px",borderEndEndRadius:"99px"},".segment:last-child":{borderEndStartRadius:"99px",borderStartStartRadius:"99px"},'.segment[data-active="true"]':{backgroundColor:"var(--f-clr-primary-100)"}});function l({children:n,cc:l={},active:d,direction:s="horizontal",uniform:c,reverse:m,overflow:p=!1,...v}){const f=r(o,l),g=a.toArray(n);return e("div",{...v,className:i(f.timeline,f[`d__${s}`],c&&f.uniform,p&&f.overflow,v.className),children:g.map(((r,i)=>{const a=m?g.length-1-i:i;return t("div",{className:f.event,children:[t("div",{className:f.axis,children:[0!==i&&e("div",{className:f.segment,"data-active":m?a+1<d:a<d}),e("div",{className:f.bullet,"data-active":a<d}),i!==g.length-1&&e("div",{className:f.segment,"data-active":m?a<d:a+1<d})]}),e("div",{className:f.content,children:r})]},i)}))})}export{l as default}; //# sourceMappingURL=timeline.js.map