@conciv/ui-kit-system 0.0.1 → 0.0.3
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/dist/index.js.map +1 -1
- package/dist/presence.d.ts.map +1 -1
- package/dist/relative-time.d.ts.map +1 -1
- package/dist/swap.d.ts.map +1 -1
- package/dist/tokens.d.ts.map +1 -1
- package/dist/tokens.js.map +1 -1
- package/package.json +3 -3
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["splitProps","JSX","ButtonVariant","ButtonSize","BASE","VARIANT","Record","solid","ghost","outline","danger","SIZE","sm","md","icon","Button","props","ButtonHTMLAttributes","HTMLButtonElement","variant","size","Element","local","rest","_el$","_tmpl$","_$spread","_$mergeProps","type","class","splitProps","ComponentProps","Collapsible","Ark","CONTENT","Content","props","local","rest","_$createComponent","_$mergeProps","class","Object","assign","JSX","HoverCard","Ark","CONTENT","props","trigger","Element","triggerClass","children","openDelay","closeDelay","sideOffset","class","label","_$createComponent","Root","positioning","strategy","placement","gutter","Trigger","aria-label","Positioner","Content","splitProps","ComponentProps","ScrollArea","Ark","SCROLLBAR","THUMB","Scrollbar","props","local","rest","_$createComponent","_$mergeProps","class","Thumb","Object","assign","JSX","Dialog","Ark","BACKDROP","POSITIONER","CONTENT","props","open","onOpenChange","label","dismissable","children","Element","_$createComponent","Root","d","role","modal","closeOnEscape","closeOnInteractOutside","Backdrop","Positioner","Content","aria-label","DialogApi","createEffect","onMount","Show","splitProps","JSX","Field","ROOT","LABEL","INPUT","TextField","props","InputHTMLAttributes","HTMLInputElement","label","Element","local","rest","_$createComponent","Root","class","children","when","Label","Input","_$mergeProps","TEXTAREA","TEXTAREA_BARE","TextAreaProps","Omit","TextareaHTMLAttributes","HTMLTextAreaElement","minRows","maxRows","onHeightChange","height","unstyled","rowsToPx","el","rows","styles","getComputedStyle","lineHeight","Number","parseFloat","vertical","paddingTop","paddingBottom","borderTopWidth","borderBottomWidth","TextArea","grow","max","min","style","next","Math","scrollHeight","overflowY","value","forwardRef","ref","_el$","_tmpl$","$$input","event","onInput","_$use","node","_$spread","_$delegateEvents","splitProps","ComponentProps","Tooltip","Ark","CONTENT","Root","props","local","rest","_$createComponent","_$mergeProps","openDelay","closeDelay","positioning","strategy","placement","gutter","Content","class","Object","assign","splitProps","ComponentProps","Menu","Ark","CONTENT","ITEM","ITEM_GROUP_LABEL","SEPARATOR","Root","props","local","rest","_$createComponent","_$mergeProps","positioning","strategy","placement","gutter","Content","class","Item","ItemGroupLabel","Separator","Object","assign","splitProps","ComponentProps","Popover","Ark","CONTENT","Root","props","local","rest","_$createComponent","_$mergeProps","positioning","strategy","placement","gutter","Content","class","Object","assign","PopoverApi","Show","JSX","Toast","Ark","Toaster","ArkToaster","createToaster","XIcon","ROOT","TITLE","DESCRIPTION","CLOSE","ToasterInstance","ReturnType","props","toaster","Element","_$createComponent","children","toast","Root","Title","title","when","description","Description","CloseTrigger","size","Object","assign","splitProps","ComponentProps","Avatar","Ark","ROOT","IMAGE","FALLBACK","Root","props","local","rest","_$createComponent","_$mergeProps","class","Image","Fallback","Object","assign","JSX","Format","RelativeTime","props","value","Date","class","Element","_el$","_tmpl$","_$insert","_$createComponent","numeric","style","_$effect","_$className","splitProps","ComponentProps","Tabs","Ark","LIST","TRIGGER","CONTENT","INDICATOR","List","props","local","rest","_$createComponent","_$mergeProps","class","Trigger","Content","Indicator","Object","assign","splitProps","ComponentProps","Switch","Ark","ROOT","CONTROL","THUMB","LABEL","Root","props","local","rest","_$createComponent","_$mergeProps","class","Control","Thumb","Label","Object","assign","splitProps","ComponentProps","Swap","Ark","INDICATOR","Indicator","props","local","rest","_$createComponent","_$mergeProps","class","Object","assign","splitProps","ComponentProps","Presence","Ark","PRESENCE","props","local","rest","_$createComponent","_$mergeProps","class"],"sources":["../src/button.tsx","../src/collapsible.tsx","../src/hover-card.tsx","../src/scroll-area.tsx","../src/dialog.tsx","../src/text-field.tsx","../src/tooltip.tsx","../src/menu.tsx","../src/popover.tsx","../src/toast.tsx","../src/avatar.tsx","../src/relative-time.tsx","../src/tabs.tsx","../src/switch.tsx","../src/swap.tsx","../src/presence.tsx"],"sourcesContent":["import {splitProps, type JSX} from 'solid-js'\n\nexport type ButtonVariant = 'solid' | 'ghost' | 'outline' | 'danger'\nexport type ButtonSize = 'sm' | 'md' | 'icon'\n\nconst BASE =\n 'inline-flex items-center justify-center gap-1.5 font-pw cursor-pointer trans-btn focus-ring [border:1px_solid_transparent] disabled:opacity-50 disabled:cursor-not-allowed'\n\nconst VARIANT: Record<ButtonVariant, string> = {\n solid: 'bg-pw-accent text-pw-on-accent hover:bg-pw-accent-hi',\n ghost: 'bg-transparent text-pw-text-2 hover:text-pw-text hover:bg-pw-fill-strong',\n outline: 'bg-pw-fill text-pw-text [border-color:var(--pw-line)] hover:bg-pw-fill-strong',\n danger: 'bg-pw-danger text-pw-on-accent hover:opacity-90',\n}\n\nconst SIZE: Record<ButtonSize, string> = {\n sm: 'text-[0.6875rem] rounded-pw-sm py-0.5 px-2',\n md: 'text-[0.8125rem] rounded-pw-md py-2 px-3',\n icon: 'rounded-pw-md size-9.5',\n}\n\nexport function Button(\n props: JSX.ButtonHTMLAttributes<HTMLButtonElement> & {variant?: ButtonVariant; size?: ButtonSize},\n): JSX.Element {\n const [local, rest] = splitProps(props, ['variant', 'size', 'class', 'type'])\n return (\n <button\n type={local.type ?? 'button'}\n class={`${BASE} ${VARIANT[local.variant ?? 'solid']} ${SIZE[local.size ?? 'md']} ${local.class ?? ''}`}\n {...rest}\n />\n )\n}\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Collapsible as Ark} from '@ark-ui/solid/collapsible'\n\nconst CONTENT = 'overflow-hidden data-[state=open]:anim-collapse-open data-[state=closed]:anim-collapse-closed'\n\nfunction Content(props: ComponentProps<typeof Ark.Content>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Content {...rest} class={`${CONTENT} ${local.class ?? ''}`} />\n}\n\nexport const Collapsible = Object.assign({}, Ark, {Content})\n","import type {JSX} from 'solid-js'\nimport {HoverCard as Ark} from '@ark-ui/solid/hover-card'\n\nconst CONTENT =\n 'hidden data-[state=open]:block data-[state=open]:anim-combo z-[2147483647] w-60 rounded-pw-md overflow-hidden bg-pw-panel text-pw-text border border-pw-line shadow-pw-lg text-[0.75rem] focus-visible:outline-none'\n\nexport function HoverCard(props: {\n trigger: JSX.Element\n triggerClass?: string\n children: JSX.Element\n openDelay?: number\n closeDelay?: number\n sideOffset?: number\n class?: string\n label?: string\n}): JSX.Element {\n return (\n <Ark.Root\n openDelay={props.openDelay ?? 0}\n closeDelay={props.closeDelay ?? 120}\n positioning={{strategy: 'fixed', placement: 'bottom-start', gutter: props.sideOffset ?? 6}}\n >\n <Ark.Trigger class={props.triggerClass} aria-label={props.label}>\n {props.trigger}\n </Ark.Trigger>\n <Ark.Positioner>\n <Ark.Content class={`${CONTENT} ${props.class ?? ''}`}>{props.children}</Ark.Content>\n </Ark.Positioner>\n </Ark.Root>\n )\n}\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {ScrollArea as Ark} from '@ark-ui/solid/scroll-area'\n\nconst SCROLLBAR =\n 'flex p-0.5 opacity-0 pointer-events-none [transition:opacity_150ms] [&[data-hover]]:opacity-100 [&[data-scrolling]]:opacity-100 [&[data-hover]]:pointer-events-auto [&[data-scrolling]]:pointer-events-auto [&[data-orientation=vertical]]:w-2 [&[data-orientation=horizontal]]:h-2 [&[data-orientation=vertical]:not([data-overflow-y])]:hidden [&[data-orientation=horizontal]:not([data-overflow-x])]:hidden'\nconst THUMB =\n 'w-full rounded-pw-pill bg-pw-accent-link [&[data-orientation=horizontal]]:w-auto [&[data-orientation=horizontal]]:h-full'\n\nfunction Scrollbar(props: ComponentProps<typeof Ark.Scrollbar>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Scrollbar {...rest} class={`${SCROLLBAR} ${local.class ?? ''}`} />\n}\n\nfunction Thumb(props: ComponentProps<typeof Ark.Thumb>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Thumb {...rest} class={`${THUMB} ${local.class ?? ''}`} />\n}\n\nexport const ScrollArea = Object.assign({}, Ark, {Scrollbar, Thumb})\n","import type {JSX} from 'solid-js'\nimport {Dialog as Ark} from '@ark-ui/solid/dialog'\n\nconst BACKDROP = 'fixed inset-0 z-[2147483646] bg-[rgba(0,0,0,0.55)] [backdrop-filter:blur(0.125rem)]'\nconst POSITIONER = 'fixed inset-0 z-[2147483647] flex items-center justify-center p-4'\nconst CONTENT =\n 'w-90 max-w-[calc(100vw-2rem)] rounded-pw-lg bg-pw-panel text-pw-text border border-pw-line shadow-pw-lg p-4 focus-visible:outline-none data-[state=open]:anim-rise'\n\nexport function Dialog(props: {\n open: boolean\n onOpenChange?: (open: boolean) => void\n label?: string\n dismissable?: boolean\n children: JSX.Element\n}): JSX.Element {\n return (\n <Ark.Root\n open={props.open}\n onOpenChange={(d) => props.onOpenChange?.(d.open)}\n role=\"alertdialog\"\n modal\n closeOnEscape={props.dismissable ?? false}\n closeOnInteractOutside={props.dismissable ?? false}\n >\n <Ark.Backdrop class={BACKDROP} />\n <Ark.Positioner class={POSITIONER}>\n <Ark.Content class={CONTENT} aria-label={props.label}>\n {props.children}\n </Ark.Content>\n </Ark.Positioner>\n </Ark.Root>\n )\n}\n\nexport type DialogApi = typeof Dialog\n","import {createEffect, onMount, Show, splitProps, type JSX} from 'solid-js'\nimport {Field} from '@ark-ui/solid/field'\n\nconst ROOT = 'flex flex-col gap-1'\nconst LABEL = 'text-[0.75rem] text-pw-text-2 font-pw'\nconst INPUT =\n 'w-full font-pw text-[0.8125rem] rounded-pw-md bg-pw-fill text-pw-text [border:1px_solid_var(--pw-line)] py-2 px-3 focus-ring placeholder:text-pw-text-3'\n\nexport function TextField(props: JSX.InputHTMLAttributes<HTMLInputElement> & {label?: string}): JSX.Element {\n const [local, rest] = splitProps(props, ['label', 'class'])\n return (\n <Field.Root class={`${ROOT} ${local.class ?? ''}`}>\n <Show when={local.label}>\n <Field.Label class={LABEL}>{local.label}</Field.Label>\n </Show>\n <Field.Input class={INPUT} {...rest} />\n </Field.Root>\n )\n}\n\nconst TEXTAREA =\n 'w-full resize-none font-pw text-[0.8125rem] rounded-pw-md bg-pw-fill text-pw-text [border:1px_solid_var(--pw-line)] py-2 px-3 focus-ring placeholder:text-pw-text-3'\n// Chrome-less variant: just the autosizing textarea, for callers that supply their own box (e.g. a composer).\nconst TEXTAREA_BARE =\n 'w-full resize-none [background:transparent] [border:none] [font:inherit] focus-visible:outline-none'\n\nexport type TextAreaProps = Omit<JSX.TextareaHTMLAttributes<HTMLTextAreaElement>, 'style'> & {\n minRows?: number\n maxRows?: number\n onHeightChange?: (height: number) => void\n unstyled?: boolean\n}\n\nfunction rowsToPx(el: HTMLTextAreaElement, rows: number): number {\n const styles = getComputedStyle(el)\n const lineHeight = Number.parseFloat(styles.lineHeight) || 20\n const vertical =\n Number.parseFloat(styles.paddingTop) +\n Number.parseFloat(styles.paddingBottom) +\n Number.parseFloat(styles.borderTopWidth) +\n Number.parseFloat(styles.borderBottomWidth)\n return rows * lineHeight + vertical\n}\n\nexport function TextArea(props: TextAreaProps): JSX.Element {\n const [local, rest] = splitProps(props, [\n 'class',\n 'minRows',\n 'maxRows',\n 'onHeightChange',\n 'onInput',\n 'value',\n 'ref',\n 'unstyled',\n ])\n let el: HTMLTextAreaElement | undefined\n const grow = () => {\n if (!el) return\n const max = rowsToPx(el, local.maxRows ?? 5)\n const min = rowsToPx(el, local.minRows ?? 1)\n el.style.height = 'auto'\n const next = Math.max(min, Math.min(el.scrollHeight, max))\n el.style.height = `${next}px`\n el.style.overflowY = el.scrollHeight > max ? 'auto' : 'hidden'\n local.onHeightChange?.(next)\n }\n onMount(grow)\n createEffect(() => {\n void local.value\n grow()\n })\n const forwardRef = local.ref\n return (\n <textarea\n ref={(node) => {\n el = node\n if (typeof forwardRef === 'function') forwardRef(node)\n }}\n rows={local.minRows ?? 1}\n class={`${local.unstyled ? TEXTAREA_BARE : TEXTAREA} ${local.class ?? ''}`}\n value={local.value}\n onInput={(event) => {\n grow()\n if (typeof local.onInput === 'function') local.onInput(event)\n }}\n {...rest}\n />\n )\n}\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Tooltip as Ark} from '@ark-ui/solid/tooltip'\n\nconst CONTENT =\n 'hidden data-[state=open]:block data-[state=open]:anim-combo z-[2147483647] rounded-pw-sm bg-pw-panel text-pw-text border border-pw-line shadow-pw-lg py-1 px-2 text-[0.6875rem] max-w-60 focus-visible:outline-none'\n\nfunction Root(props: ComponentProps<typeof Ark.Root>) {\n const [local, rest] = splitProps(props, ['positioning', 'openDelay', 'closeDelay'])\n return (\n <Ark.Root\n openDelay={local.openDelay ?? 300}\n closeDelay={local.closeDelay ?? 80}\n positioning={{strategy: 'fixed', placement: 'top', gutter: 6, ...local.positioning}}\n {...rest}\n />\n )\n}\n\nfunction Content(props: ComponentProps<typeof Ark.Content>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Content {...rest} class={`${CONTENT} ${local.class ?? ''}`} />\n}\n\nexport const Tooltip = Object.assign({}, Ark, {Root, Content})\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Menu as Ark} from '@ark-ui/solid/menu'\n\nconst CONTENT =\n 'hidden data-[state=open]:block data-[state=open]:anim-combo z-[2147483647] min-w-44 rounded-pw-md bg-pw-panel text-pw-text border border-pw-line shadow-pw-lg p-1 focus-visible:outline-none'\nconst ITEM =\n 'flex items-center gap-2 min-h-8 py-1.5 px-2.5 rounded-pw-sm text-[0.8125rem] text-pw-text-2 cursor-pointer select-none outline-none data-[highlighted]:bg-pw-fill-strong data-[highlighted]:text-pw-text data-[disabled]:opacity-50 data-[disabled]:cursor-not-allowed'\nconst ITEM_GROUP_LABEL = 'py-1.5 px-2.5 text-[0.6875rem] font-pw text-pw-text-3 uppercase tracking-wide'\nconst SEPARATOR = 'h-px my-1 bg-pw-line'\n\nfunction Root(props: ComponentProps<typeof Ark.Root>) {\n const [local, rest] = splitProps(props, ['positioning'])\n return (\n <Ark.Root positioning={{strategy: 'fixed', placement: 'bottom-start', gutter: 4, ...local.positioning}} {...rest} />\n )\n}\n\nfunction Content(props: ComponentProps<typeof Ark.Content>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Content {...rest} class={`${CONTENT} ${local.class ?? ''}`} />\n}\n\nfunction Item(props: ComponentProps<typeof Ark.Item>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Item {...rest} class={`${ITEM} ${local.class ?? ''}`} />\n}\n\nfunction ItemGroupLabel(props: ComponentProps<typeof Ark.ItemGroupLabel>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.ItemGroupLabel {...rest} class={`${ITEM_GROUP_LABEL} ${local.class ?? ''}`} />\n}\n\nfunction Separator(props: ComponentProps<typeof Ark.Separator>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Separator {...rest} class={`${SEPARATOR} ${local.class ?? ''}`} />\n}\n\nexport const Menu = Object.assign({}, Ark, {Root, Content, Item, ItemGroupLabel, Separator})\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Popover as Ark} from '@ark-ui/solid/popover'\n\nconst CONTENT =\n 'hidden data-[state=open]:block data-[state=open]:anim-rise z-[2147483647] rounded-pw-lg bg-pw-panel text-pw-text border border-pw-line shadow-pw-lg focus-visible:outline-none'\n\nfunction Root(props: ComponentProps<typeof Ark.Root>) {\n const [local, rest] = splitProps(props, ['positioning'])\n return <Ark.Root positioning={{strategy: 'fixed', placement: 'top-end', gutter: 8, ...local.positioning}} {...rest} />\n}\n\nfunction Content(props: ComponentProps<typeof Ark.Content>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Content {...rest} class={`${CONTENT} ${local.class ?? ''}`} />\n}\n\nexport const Popover = Object.assign({}, Ark, {Root, Content})\nexport type PopoverApi = typeof Popover\n","import {Show, type JSX} from 'solid-js'\nimport {Toast as Ark, Toaster as ArkToaster, createToaster} from '@ark-ui/solid/toast'\nimport {XIcon} from 'lucide-solid'\n\nconst ROOT =\n 'relative w-80 max-w-[calc(100vw-2rem)] flex flex-col gap-1 items-start py-3 pl-3.5 pr-9 rounded-pw-md bg-pw-panel text-pw-text border border-pw-line shadow-pw-lg [translate:var(--x)_var(--y)] [scale:var(--scale)] [z-index:var(--z-index)] [height:var(--height)] [opacity:var(--opacity)] data-[type=error]:[border-color:var(--pw-danger)] data-[type=success]:[border-color:var(--pw-success)]'\nconst TITLE = 'text-[0.8125rem] font-pw text-pw-text-hi'\nconst DESCRIPTION = 'text-[0.75rem] text-pw-text-2'\nconst CLOSE =\n 'absolute top-1.5 right-1.5 inline-flex items-center justify-center size-7 rounded-pw-sm text-pw-text-3 cursor-pointer hover:text-pw-text hover:bg-pw-fill-strong focus-ring'\n\ntype ToasterInstance = ReturnType<typeof createToaster>\n\nfunction Toaster(props: {toaster: ToasterInstance}): JSX.Element {\n return (\n <ArkToaster toaster={props.toaster}>\n {(toast) => (\n <Ark.Root class={ROOT}>\n <Ark.Title class={TITLE}>{toast().title}</Ark.Title>\n <Show when={toast().description}>\n <Ark.Description class={DESCRIPTION}>{toast().description}</Ark.Description>\n </Show>\n <Ark.CloseTrigger class={CLOSE} aria-label=\"Dismiss notification\">\n <XIcon size={16} />\n </Ark.CloseTrigger>\n </Ark.Root>\n )}\n </ArkToaster>\n )\n}\n\nexport const Toast = Object.assign({}, Ark, {Toaster, createToaster})\nexport {createToaster}\nexport type {ToasterInstance}\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Avatar as Ark} from '@ark-ui/solid/avatar'\n\nconst ROOT =\n 'inline-flex items-center justify-center size-7 rounded-pw-pill overflow-hidden bg-pw-fill-strong text-pw-text-2 text-[0.6875rem] font-pw select-none shrink-0'\nconst IMAGE = 'size-full object-cover'\nconst FALLBACK = 'inline-flex items-center justify-center size-full uppercase'\n\nfunction Root(props: ComponentProps<typeof Ark.Root>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Root {...rest} class={`${ROOT} ${local.class ?? ''}`} />\n}\n\nfunction Image(props: ComponentProps<typeof Ark.Image>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Image {...rest} class={`${IMAGE} ${local.class ?? ''}`} />\n}\n\nfunction Fallback(props: ComponentProps<typeof Ark.Fallback>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Fallback {...rest} class={`${FALLBACK} ${local.class ?? ''}`} />\n}\n\nexport const Avatar = Object.assign({}, Ark, {Root, Image, Fallback})\n","import type {JSX} from 'solid-js'\nimport {Format} from '@ark-ui/solid/format'\n\n// Ark's Intl.RelativeTimeFormat wrapper (locale-aware, cached). numeric:'auto' renders \"now\"/\"yesterday\"\n// rather than \"in 0 seconds\"; it formats against the live clock, so a just-created item never reads as\n// the future — replacing a hand-rolled formatter that did.\nexport function RelativeTime(props: {value: Date; class?: string}): JSX.Element {\n return (\n <span class={props.class}>\n <Format.RelativeTime value={props.value} numeric=\"auto\" style=\"narrow\" />\n </span>\n )\n}\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Tabs as Ark} from '@ark-ui/solid/tabs'\n\nconst LIST = 'relative flex items-center gap-1 border-b border-pw-line'\nconst TRIGGER =\n 'relative inline-flex items-center gap-1.5 py-2 px-3 text-[0.8125rem] font-pw text-pw-text-3 cursor-pointer select-none trans-btn hover:text-pw-text-2 data-[selected]:text-pw-text focus-ring disabled:opacity-50 disabled:cursor-not-allowed'\nconst CONTENT = 'pt-3 focus-visible:outline-none'\nconst INDICATOR = 'absolute bottom-0 h-0.5 bg-pw-accent [width:var(--width)] [left:var(--left)] trans-btn'\n\nfunction List(props: ComponentProps<typeof Ark.List>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.List {...rest} class={`${LIST} ${local.class ?? ''}`} />\n}\n\nfunction Trigger(props: ComponentProps<typeof Ark.Trigger>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Trigger {...rest} class={`${TRIGGER} ${local.class ?? ''}`} />\n}\n\nfunction Content(props: ComponentProps<typeof Ark.Content>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Content {...rest} class={`${CONTENT} ${local.class ?? ''}`} />\n}\n\nfunction Indicator(props: ComponentProps<typeof Ark.Indicator>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Indicator {...rest} class={`${INDICATOR} ${local.class ?? ''}`} />\n}\n\nexport const Tabs = Object.assign({}, Ark, {List, Trigger, Content, Indicator})\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Switch as Ark} from '@ark-ui/solid/switch'\n\nconst ROOT =\n 'inline-flex items-center gap-2 cursor-pointer select-none data-[disabled]:opacity-50 data-[disabled]:cursor-not-allowed'\nconst CONTROL =\n 'relative inline-flex items-center w-8 h-4.5 rounded-pw-pill bg-pw-fill-strong [border:1px_solid_var(--pw-line)] trans-btn data-[state=checked]:bg-pw-accent data-[state=checked]:[border-color:var(--pw-accent)] focus-within:[outline:0.125rem_solid_var(--pw-accent)] focus-within:[outline-offset:0.125rem]'\nconst THUMB =\n 'size-3.5 rounded-pw-pill bg-pw-text translate-x-0.5 trans-btn data-[state=checked]:translate-x-3.5 data-[state=checked]:bg-pw-on-accent'\nconst LABEL = 'text-[0.8125rem] font-pw text-pw-text-2'\n\nfunction Root(props: ComponentProps<typeof Ark.Root>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Root {...rest} class={`${ROOT} ${local.class ?? ''}`} />\n}\n\nfunction Control(props: ComponentProps<typeof Ark.Control>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Control {...rest} class={`${CONTROL} ${local.class ?? ''}`} />\n}\n\nfunction Thumb(props: ComponentProps<typeof Ark.Thumb>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Thumb {...rest} class={`${THUMB} ${local.class ?? ''}`} />\n}\n\nfunction Label(props: ComponentProps<typeof Ark.Label>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Label {...rest} class={`${LABEL} ${local.class ?? ''}`} />\n}\n\nexport const Switch = Object.assign({}, Ark, {Root, Control, Thumb, Label})\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Swap as Ark} from '@ark-ui/solid/swap'\n\n// Crossfade/scale between two states (e.g. Copy → Check). Both indicators stack in one grid cell\n// (Ark sets grid-area); the active rests visible and the inactive fades/scales out. We key off Ark's\n// `hidden` attribute (`!present`), NOT data-state: Ark's useSwap forces skipAnimationOnMount, so\n// data-state is `undefined` on first mount — keying on `data-[state=open]` would leave the active\n// indicator at opacity 0 until the first toggle. `hidden` is set correctly from mount; we override its\n// UA `display:none` (class+attr beats the UA rule) so the crossfade can still animate opacity.\nconst INDICATOR =\n 'inline-flex [transition:opacity_150ms_ease,scale_150ms_ease] [&[hidden]]:opacity-0 [&[hidden]]:[scale:0.6] [&[hidden]]:[display:inline-flex]'\n\nfunction Indicator(props: ComponentProps<typeof Ark.Indicator>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Indicator {...rest} class={`${INDICATOR} ${local.class ?? ''}`} />\n}\n\nexport const Swap = Object.assign({}, Ark, {Indicator})\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Presence as Ark} from '@ark-ui/solid/presence'\n\n// Mount/unmount animation primitive: keeps the node mounted through its exit keyframe (Ark waits for\n// animationend), driven by data-state. Default scale+fade; pass unmountOnExit to drop it after exit.\nconst PRESENCE = 'data-[state=open]:anim-presence-in data-[state=closed]:anim-presence-out'\n\nexport function Presence(props: ComponentProps<typeof Ark>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark {...rest} class={`${PRESENCE} ${local.class ?? ''}`} />\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["splitProps","JSX","ButtonVariant","ButtonSize","BASE","VARIANT","Record","solid","ghost","outline","danger","SIZE","sm","md","icon","Button","props","ButtonHTMLAttributes","HTMLButtonElement","variant","size","Element","local","rest","_el$","_tmpl$","_$spread","_$mergeProps","type","class","splitProps","ComponentProps","Collapsible","Ark","CONTENT","Content","props","local","rest","_$createComponent","_$mergeProps","class","Object","assign","JSX","HoverCard","Ark","CONTENT","props","trigger","Element","triggerClass","children","openDelay","closeDelay","sideOffset","class","label","_$createComponent","Root","positioning","strategy","placement","gutter","Trigger","aria-label","Positioner","Content","splitProps","ComponentProps","ScrollArea","Ark","SCROLLBAR","THUMB","Scrollbar","props","local","rest","_$createComponent","_$mergeProps","class","Thumb","Object","assign","JSX","Dialog","Ark","BACKDROP","POSITIONER","CONTENT","props","open","onOpenChange","label","dismissable","children","Element","_$createComponent","Root","d","role","modal","closeOnEscape","closeOnInteractOutside","Backdrop","Positioner","Content","aria-label","DialogApi","createEffect","onMount","Show","splitProps","JSX","Field","ROOT","LABEL","INPUT","TextField","props","InputHTMLAttributes","HTMLInputElement","label","Element","local","rest","_$createComponent","Root","class","children","when","Label","Input","_$mergeProps","TEXTAREA","TEXTAREA_BARE","TextAreaProps","Omit","TextareaHTMLAttributes","HTMLTextAreaElement","minRows","maxRows","onHeightChange","height","unstyled","rowsToPx","el","rows","styles","getComputedStyle","lineHeight","Number","parseFloat","vertical","paddingTop","paddingBottom","borderTopWidth","borderBottomWidth","TextArea","grow","max","min","style","next","Math","scrollHeight","overflowY","value","forwardRef","ref","_el$","_tmpl$","$$input","event","onInput","_$use","node","_$spread","_$delegateEvents","splitProps","ComponentProps","Tooltip","Ark","CONTENT","Root","props","local","rest","_$createComponent","_$mergeProps","openDelay","closeDelay","positioning","strategy","placement","gutter","Content","class","Object","assign","splitProps","ComponentProps","Menu","Ark","CONTENT","ITEM","ITEM_GROUP_LABEL","SEPARATOR","Root","props","local","rest","_$createComponent","_$mergeProps","positioning","strategy","placement","gutter","Content","class","Item","ItemGroupLabel","Separator","Object","assign","splitProps","ComponentProps","Popover","Ark","CONTENT","Root","props","local","rest","_$createComponent","_$mergeProps","positioning","strategy","placement","gutter","Content","class","Object","assign","PopoverApi","Show","JSX","Toast","Ark","Toaster","ArkToaster","createToaster","XIcon","ROOT","TITLE","DESCRIPTION","CLOSE","ToasterInstance","ReturnType","props","toaster","Element","_$createComponent","children","toast","Root","Title","title","when","description","Description","CloseTrigger","size","Object","assign","splitProps","ComponentProps","Avatar","Ark","ROOT","IMAGE","FALLBACK","Root","props","local","rest","_$createComponent","_$mergeProps","class","Image","Fallback","Object","assign","JSX","Format","RelativeTime","props","value","Date","class","Element","_el$","_tmpl$","_$insert","_$createComponent","numeric","style","_$effect","_$className","splitProps","ComponentProps","Tabs","Ark","LIST","TRIGGER","CONTENT","INDICATOR","List","props","local","rest","_$createComponent","_$mergeProps","class","Trigger","Content","Indicator","Object","assign","splitProps","ComponentProps","Switch","Ark","ROOT","CONTROL","THUMB","LABEL","Root","props","local","rest","_$createComponent","_$mergeProps","class","Control","Thumb","Label","Object","assign","splitProps","ComponentProps","Swap","Ark","INDICATOR","Indicator","props","local","rest","_$createComponent","_$mergeProps","class","Object","assign","splitProps","ComponentProps","Presence","Ark","PRESENCE","props","local","rest","_$createComponent","_$mergeProps","class"],"sources":["../src/button.tsx","../src/collapsible.tsx","../src/hover-card.tsx","../src/scroll-area.tsx","../src/dialog.tsx","../src/text-field.tsx","../src/tooltip.tsx","../src/menu.tsx","../src/popover.tsx","../src/toast.tsx","../src/avatar.tsx","../src/relative-time.tsx","../src/tabs.tsx","../src/switch.tsx","../src/swap.tsx","../src/presence.tsx"],"sourcesContent":["import {splitProps, type JSX} from 'solid-js'\n\nexport type ButtonVariant = 'solid' | 'ghost' | 'outline' | 'danger'\nexport type ButtonSize = 'sm' | 'md' | 'icon'\n\nconst BASE =\n 'inline-flex items-center justify-center gap-1.5 font-pw cursor-pointer trans-btn focus-ring [border:1px_solid_transparent] disabled:opacity-50 disabled:cursor-not-allowed'\n\nconst VARIANT: Record<ButtonVariant, string> = {\n solid: 'bg-pw-accent text-pw-on-accent hover:bg-pw-accent-hi',\n ghost: 'bg-transparent text-pw-text-2 hover:text-pw-text hover:bg-pw-fill-strong',\n outline: 'bg-pw-fill text-pw-text [border-color:var(--pw-line)] hover:bg-pw-fill-strong',\n danger: 'bg-pw-danger text-pw-on-accent hover:opacity-90',\n}\n\nconst SIZE: Record<ButtonSize, string> = {\n sm: 'text-[0.6875rem] rounded-pw-sm py-0.5 px-2',\n md: 'text-[0.8125rem] rounded-pw-md py-2 px-3',\n icon: 'rounded-pw-md size-9.5',\n}\n\nexport function Button(\n props: JSX.ButtonHTMLAttributes<HTMLButtonElement> & {variant?: ButtonVariant; size?: ButtonSize},\n): JSX.Element {\n const [local, rest] = splitProps(props, ['variant', 'size', 'class', 'type'])\n return (\n <button\n type={local.type ?? 'button'}\n class={`${BASE} ${VARIANT[local.variant ?? 'solid']} ${SIZE[local.size ?? 'md']} ${local.class ?? ''}`}\n {...rest}\n />\n )\n}\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Collapsible as Ark} from '@ark-ui/solid/collapsible'\n\nconst CONTENT = 'overflow-hidden data-[state=open]:anim-collapse-open data-[state=closed]:anim-collapse-closed'\n\nfunction Content(props: ComponentProps<typeof Ark.Content>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Content {...rest} class={`${CONTENT} ${local.class ?? ''}`} />\n}\n\nexport const Collapsible = Object.assign({}, Ark, {Content})\n","import type {JSX} from 'solid-js'\nimport {HoverCard as Ark} from '@ark-ui/solid/hover-card'\n\nconst CONTENT =\n 'hidden data-[state=open]:block data-[state=open]:anim-combo z-[2147483647] w-60 rounded-pw-md overflow-hidden bg-pw-panel text-pw-text border border-pw-line shadow-pw-lg text-[0.75rem] focus-visible:outline-none'\n\nexport function HoverCard(props: {\n trigger: JSX.Element\n triggerClass?: string\n children: JSX.Element\n openDelay?: number\n closeDelay?: number\n sideOffset?: number\n class?: string\n label?: string\n}): JSX.Element {\n return (\n <Ark.Root\n openDelay={props.openDelay ?? 0}\n closeDelay={props.closeDelay ?? 120}\n positioning={{strategy: 'fixed', placement: 'bottom-start', gutter: props.sideOffset ?? 6}}\n >\n <Ark.Trigger class={props.triggerClass} aria-label={props.label}>\n {props.trigger}\n </Ark.Trigger>\n <Ark.Positioner>\n <Ark.Content class={`${CONTENT} ${props.class ?? ''}`}>{props.children}</Ark.Content>\n </Ark.Positioner>\n </Ark.Root>\n )\n}\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {ScrollArea as Ark} from '@ark-ui/solid/scroll-area'\n\nconst SCROLLBAR =\n 'flex p-0.5 opacity-0 pointer-events-none [transition:opacity_150ms] [&[data-hover]]:opacity-100 [&[data-scrolling]]:opacity-100 [&[data-hover]]:pointer-events-auto [&[data-scrolling]]:pointer-events-auto [&[data-orientation=vertical]]:w-2 [&[data-orientation=horizontal]]:h-2 [&[data-orientation=vertical]:not([data-overflow-y])]:hidden [&[data-orientation=horizontal]:not([data-overflow-x])]:hidden'\nconst THUMB =\n 'w-full rounded-pw-pill bg-pw-accent-link [&[data-orientation=horizontal]]:w-auto [&[data-orientation=horizontal]]:h-full'\n\nfunction Scrollbar(props: ComponentProps<typeof Ark.Scrollbar>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Scrollbar {...rest} class={`${SCROLLBAR} ${local.class ?? ''}`} />\n}\n\nfunction Thumb(props: ComponentProps<typeof Ark.Thumb>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Thumb {...rest} class={`${THUMB} ${local.class ?? ''}`} />\n}\n\nexport const ScrollArea = Object.assign({}, Ark, {Scrollbar, Thumb})\n","import type {JSX} from 'solid-js'\nimport {Dialog as Ark} from '@ark-ui/solid/dialog'\n\nconst BACKDROP = 'fixed inset-0 z-[2147483646] bg-[rgba(0,0,0,0.55)] [backdrop-filter:blur(0.125rem)]'\nconst POSITIONER = 'fixed inset-0 z-[2147483647] flex items-center justify-center p-4'\nconst CONTENT =\n 'w-90 max-w-[calc(100vw-2rem)] rounded-pw-lg bg-pw-panel text-pw-text border border-pw-line shadow-pw-lg p-4 focus-visible:outline-none data-[state=open]:anim-rise'\n\nexport function Dialog(props: {\n open: boolean\n onOpenChange?: (open: boolean) => void\n label?: string\n dismissable?: boolean\n children: JSX.Element\n}): JSX.Element {\n return (\n <Ark.Root\n open={props.open}\n onOpenChange={(d) => props.onOpenChange?.(d.open)}\n role=\"alertdialog\"\n modal\n closeOnEscape={props.dismissable ?? false}\n closeOnInteractOutside={props.dismissable ?? false}\n >\n <Ark.Backdrop class={BACKDROP} />\n <Ark.Positioner class={POSITIONER}>\n <Ark.Content class={CONTENT} aria-label={props.label}>\n {props.children}\n </Ark.Content>\n </Ark.Positioner>\n </Ark.Root>\n )\n}\n\nexport type DialogApi = typeof Dialog\n","import {createEffect, onMount, Show, splitProps, type JSX} from 'solid-js'\nimport {Field} from '@ark-ui/solid/field'\n\nconst ROOT = 'flex flex-col gap-1'\nconst LABEL = 'text-[0.75rem] text-pw-text-2 font-pw'\nconst INPUT =\n 'w-full font-pw text-[0.8125rem] rounded-pw-md bg-pw-fill text-pw-text [border:1px_solid_var(--pw-line)] py-2 px-3 focus-ring placeholder:text-pw-text-3'\n\nexport function TextField(props: JSX.InputHTMLAttributes<HTMLInputElement> & {label?: string}): JSX.Element {\n const [local, rest] = splitProps(props, ['label', 'class'])\n return (\n <Field.Root class={`${ROOT} ${local.class ?? ''}`}>\n <Show when={local.label}>\n <Field.Label class={LABEL}>{local.label}</Field.Label>\n </Show>\n <Field.Input class={INPUT} {...rest} />\n </Field.Root>\n )\n}\n\nconst TEXTAREA =\n 'w-full resize-none font-pw text-[0.8125rem] rounded-pw-md bg-pw-fill text-pw-text [border:1px_solid_var(--pw-line)] py-2 px-3 focus-ring placeholder:text-pw-text-3'\n\nconst TEXTAREA_BARE =\n 'w-full resize-none [background:transparent] [border:none] [font:inherit] focus-visible:outline-none'\n\nexport type TextAreaProps = Omit<JSX.TextareaHTMLAttributes<HTMLTextAreaElement>, 'style'> & {\n minRows?: number\n maxRows?: number\n onHeightChange?: (height: number) => void\n unstyled?: boolean\n}\n\nfunction rowsToPx(el: HTMLTextAreaElement, rows: number): number {\n const styles = getComputedStyle(el)\n const lineHeight = Number.parseFloat(styles.lineHeight) || 20\n const vertical =\n Number.parseFloat(styles.paddingTop) +\n Number.parseFloat(styles.paddingBottom) +\n Number.parseFloat(styles.borderTopWidth) +\n Number.parseFloat(styles.borderBottomWidth)\n return rows * lineHeight + vertical\n}\n\nexport function TextArea(props: TextAreaProps): JSX.Element {\n const [local, rest] = splitProps(props, [\n 'class',\n 'minRows',\n 'maxRows',\n 'onHeightChange',\n 'onInput',\n 'value',\n 'ref',\n 'unstyled',\n ])\n let el: HTMLTextAreaElement | undefined\n const grow = () => {\n if (!el) return\n const max = rowsToPx(el, local.maxRows ?? 5)\n const min = rowsToPx(el, local.minRows ?? 1)\n el.style.height = 'auto'\n const next = Math.max(min, Math.min(el.scrollHeight, max))\n el.style.height = `${next}px`\n el.style.overflowY = el.scrollHeight > max ? 'auto' : 'hidden'\n local.onHeightChange?.(next)\n }\n onMount(grow)\n createEffect(() => {\n void local.value\n grow()\n })\n const forwardRef = local.ref\n return (\n <textarea\n ref={(node) => {\n el = node\n if (typeof forwardRef === 'function') forwardRef(node)\n }}\n rows={local.minRows ?? 1}\n class={`${local.unstyled ? TEXTAREA_BARE : TEXTAREA} ${local.class ?? ''}`}\n value={local.value}\n onInput={(event) => {\n grow()\n if (typeof local.onInput === 'function') local.onInput(event)\n }}\n {...rest}\n />\n )\n}\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Tooltip as Ark} from '@ark-ui/solid/tooltip'\n\nconst CONTENT =\n 'hidden data-[state=open]:block data-[state=open]:anim-combo z-[2147483647] rounded-pw-sm bg-pw-panel text-pw-text border border-pw-line shadow-pw-lg py-1 px-2 text-[0.6875rem] max-w-60 focus-visible:outline-none'\n\nfunction Root(props: ComponentProps<typeof Ark.Root>) {\n const [local, rest] = splitProps(props, ['positioning', 'openDelay', 'closeDelay'])\n return (\n <Ark.Root\n openDelay={local.openDelay ?? 300}\n closeDelay={local.closeDelay ?? 80}\n positioning={{strategy: 'fixed', placement: 'top', gutter: 6, ...local.positioning}}\n {...rest}\n />\n )\n}\n\nfunction Content(props: ComponentProps<typeof Ark.Content>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Content {...rest} class={`${CONTENT} ${local.class ?? ''}`} />\n}\n\nexport const Tooltip = Object.assign({}, Ark, {Root, Content})\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Menu as Ark} from '@ark-ui/solid/menu'\n\nconst CONTENT =\n 'hidden data-[state=open]:block data-[state=open]:anim-combo z-[2147483647] min-w-44 rounded-pw-md bg-pw-panel text-pw-text border border-pw-line shadow-pw-lg p-1 focus-visible:outline-none'\nconst ITEM =\n 'flex items-center gap-2 min-h-8 py-1.5 px-2.5 rounded-pw-sm text-[0.8125rem] text-pw-text-2 cursor-pointer select-none outline-none data-[highlighted]:bg-pw-fill-strong data-[highlighted]:text-pw-text data-[disabled]:opacity-50 data-[disabled]:cursor-not-allowed'\nconst ITEM_GROUP_LABEL = 'py-1.5 px-2.5 text-[0.6875rem] font-pw text-pw-text-3 uppercase tracking-wide'\nconst SEPARATOR = 'h-px my-1 bg-pw-line'\n\nfunction Root(props: ComponentProps<typeof Ark.Root>) {\n const [local, rest] = splitProps(props, ['positioning'])\n return (\n <Ark.Root positioning={{strategy: 'fixed', placement: 'bottom-start', gutter: 4, ...local.positioning}} {...rest} />\n )\n}\n\nfunction Content(props: ComponentProps<typeof Ark.Content>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Content {...rest} class={`${CONTENT} ${local.class ?? ''}`} />\n}\n\nfunction Item(props: ComponentProps<typeof Ark.Item>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Item {...rest} class={`${ITEM} ${local.class ?? ''}`} />\n}\n\nfunction ItemGroupLabel(props: ComponentProps<typeof Ark.ItemGroupLabel>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.ItemGroupLabel {...rest} class={`${ITEM_GROUP_LABEL} ${local.class ?? ''}`} />\n}\n\nfunction Separator(props: ComponentProps<typeof Ark.Separator>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Separator {...rest} class={`${SEPARATOR} ${local.class ?? ''}`} />\n}\n\nexport const Menu = Object.assign({}, Ark, {Root, Content, Item, ItemGroupLabel, Separator})\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Popover as Ark} from '@ark-ui/solid/popover'\n\nconst CONTENT =\n 'hidden data-[state=open]:block data-[state=open]:anim-rise z-[2147483647] rounded-pw-lg bg-pw-panel text-pw-text border border-pw-line shadow-pw-lg focus-visible:outline-none'\n\nfunction Root(props: ComponentProps<typeof Ark.Root>) {\n const [local, rest] = splitProps(props, ['positioning'])\n return <Ark.Root positioning={{strategy: 'fixed', placement: 'top-end', gutter: 8, ...local.positioning}} {...rest} />\n}\n\nfunction Content(props: ComponentProps<typeof Ark.Content>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Content {...rest} class={`${CONTENT} ${local.class ?? ''}`} />\n}\n\nexport const Popover = Object.assign({}, Ark, {Root, Content})\nexport type PopoverApi = typeof Popover\n","import {Show, type JSX} from 'solid-js'\nimport {Toast as Ark, Toaster as ArkToaster, createToaster} from '@ark-ui/solid/toast'\nimport {XIcon} from 'lucide-solid'\n\nconst ROOT =\n 'relative w-80 max-w-[calc(100vw-2rem)] flex flex-col gap-1 items-start py-3 pl-3.5 pr-9 rounded-pw-md bg-pw-panel text-pw-text border border-pw-line shadow-pw-lg [translate:var(--x)_var(--y)] [scale:var(--scale)] [z-index:var(--z-index)] [height:var(--height)] [opacity:var(--opacity)] data-[type=error]:[border-color:var(--pw-danger)] data-[type=success]:[border-color:var(--pw-success)]'\nconst TITLE = 'text-[0.8125rem] font-pw text-pw-text-hi'\nconst DESCRIPTION = 'text-[0.75rem] text-pw-text-2'\nconst CLOSE =\n 'absolute top-1.5 right-1.5 inline-flex items-center justify-center size-7 rounded-pw-sm text-pw-text-3 cursor-pointer hover:text-pw-text hover:bg-pw-fill-strong focus-ring'\n\ntype ToasterInstance = ReturnType<typeof createToaster>\n\nfunction Toaster(props: {toaster: ToasterInstance}): JSX.Element {\n return (\n <ArkToaster toaster={props.toaster}>\n {(toast) => (\n <Ark.Root class={ROOT}>\n <Ark.Title class={TITLE}>{toast().title}</Ark.Title>\n <Show when={toast().description}>\n <Ark.Description class={DESCRIPTION}>{toast().description}</Ark.Description>\n </Show>\n <Ark.CloseTrigger class={CLOSE} aria-label=\"Dismiss notification\">\n <XIcon size={16} />\n </Ark.CloseTrigger>\n </Ark.Root>\n )}\n </ArkToaster>\n )\n}\n\nexport const Toast = Object.assign({}, Ark, {Toaster, createToaster})\nexport {createToaster}\nexport type {ToasterInstance}\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Avatar as Ark} from '@ark-ui/solid/avatar'\n\nconst ROOT =\n 'inline-flex items-center justify-center size-7 rounded-pw-pill overflow-hidden bg-pw-fill-strong text-pw-text-2 text-[0.6875rem] font-pw select-none shrink-0'\nconst IMAGE = 'size-full object-cover'\nconst FALLBACK = 'inline-flex items-center justify-center size-full uppercase'\n\nfunction Root(props: ComponentProps<typeof Ark.Root>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Root {...rest} class={`${ROOT} ${local.class ?? ''}`} />\n}\n\nfunction Image(props: ComponentProps<typeof Ark.Image>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Image {...rest} class={`${IMAGE} ${local.class ?? ''}`} />\n}\n\nfunction Fallback(props: ComponentProps<typeof Ark.Fallback>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Fallback {...rest} class={`${FALLBACK} ${local.class ?? ''}`} />\n}\n\nexport const Avatar = Object.assign({}, Ark, {Root, Image, Fallback})\n","import type {JSX} from 'solid-js'\nimport {Format} from '@ark-ui/solid/format'\n\nexport function RelativeTime(props: {value: Date; class?: string}): JSX.Element {\n return (\n <span class={props.class}>\n <Format.RelativeTime value={props.value} numeric=\"auto\" style=\"narrow\" />\n </span>\n )\n}\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Tabs as Ark} from '@ark-ui/solid/tabs'\n\nconst LIST = 'relative flex items-center gap-1 border-b border-pw-line'\nconst TRIGGER =\n 'relative inline-flex items-center gap-1.5 py-2 px-3 text-[0.8125rem] font-pw text-pw-text-3 cursor-pointer select-none trans-btn hover:text-pw-text-2 data-[selected]:text-pw-text focus-ring disabled:opacity-50 disabled:cursor-not-allowed'\nconst CONTENT = 'pt-3 focus-visible:outline-none'\nconst INDICATOR = 'absolute bottom-0 h-0.5 bg-pw-accent [width:var(--width)] [left:var(--left)] trans-btn'\n\nfunction List(props: ComponentProps<typeof Ark.List>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.List {...rest} class={`${LIST} ${local.class ?? ''}`} />\n}\n\nfunction Trigger(props: ComponentProps<typeof Ark.Trigger>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Trigger {...rest} class={`${TRIGGER} ${local.class ?? ''}`} />\n}\n\nfunction Content(props: ComponentProps<typeof Ark.Content>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Content {...rest} class={`${CONTENT} ${local.class ?? ''}`} />\n}\n\nfunction Indicator(props: ComponentProps<typeof Ark.Indicator>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Indicator {...rest} class={`${INDICATOR} ${local.class ?? ''}`} />\n}\n\nexport const Tabs = Object.assign({}, Ark, {List, Trigger, Content, Indicator})\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Switch as Ark} from '@ark-ui/solid/switch'\n\nconst ROOT =\n 'inline-flex items-center gap-2 cursor-pointer select-none data-[disabled]:opacity-50 data-[disabled]:cursor-not-allowed'\nconst CONTROL =\n 'relative inline-flex items-center w-8 h-4.5 rounded-pw-pill bg-pw-fill-strong [border:1px_solid_var(--pw-line)] trans-btn data-[state=checked]:bg-pw-accent data-[state=checked]:[border-color:var(--pw-accent)] focus-within:[outline:0.125rem_solid_var(--pw-accent)] focus-within:[outline-offset:0.125rem]'\nconst THUMB =\n 'size-3.5 rounded-pw-pill bg-pw-text translate-x-0.5 trans-btn data-[state=checked]:translate-x-3.5 data-[state=checked]:bg-pw-on-accent'\nconst LABEL = 'text-[0.8125rem] font-pw text-pw-text-2'\n\nfunction Root(props: ComponentProps<typeof Ark.Root>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Root {...rest} class={`${ROOT} ${local.class ?? ''}`} />\n}\n\nfunction Control(props: ComponentProps<typeof Ark.Control>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Control {...rest} class={`${CONTROL} ${local.class ?? ''}`} />\n}\n\nfunction Thumb(props: ComponentProps<typeof Ark.Thumb>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Thumb {...rest} class={`${THUMB} ${local.class ?? ''}`} />\n}\n\nfunction Label(props: ComponentProps<typeof Ark.Label>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Label {...rest} class={`${LABEL} ${local.class ?? ''}`} />\n}\n\nexport const Switch = Object.assign({}, Ark, {Root, Control, Thumb, Label})\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Swap as Ark} from '@ark-ui/solid/swap'\n\nconst INDICATOR =\n 'inline-flex [transition:opacity_150ms_ease,scale_150ms_ease] [&[hidden]]:opacity-0 [&[hidden]]:[scale:0.6] [&[hidden]]:[display:inline-flex]'\n\nfunction Indicator(props: ComponentProps<typeof Ark.Indicator>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark.Indicator {...rest} class={`${INDICATOR} ${local.class ?? ''}`} />\n}\n\nexport const Swap = Object.assign({}, Ark, {Indicator})\n","import {splitProps, type ComponentProps} from 'solid-js'\nimport {Presence as Ark} from '@ark-ui/solid/presence'\n\nconst PRESENCE = 'data-[state=open]:anim-presence-in data-[state=closed]:anim-presence-out'\n\nexport function Presence(props: ComponentProps<typeof Ark>) {\n const [local, rest] = splitProps(props, ['class'])\n return <Ark {...rest} class={`${PRESENCE} ${local.class ?? ''}`} />\n}\n"],"mappings":"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"}
|
package/dist/presence.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presence.d.ts","sourceRoot":"","sources":["../src/presence.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,cAAc,EAAC,MAAM,UAAU,CAAA;AACxD,OAAO,EAAC,QAAQ,IAAI,GAAG,EAAC,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"presence.d.ts","sourceRoot":"","sources":["../src/presence.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,cAAc,EAAC,MAAM,UAAU,CAAA;AACxD,OAAO,EAAC,QAAQ,IAAI,GAAG,EAAC,MAAM,wBAAwB,CAAA;AAItD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC,OAAO,GAAG,CAAC,kCAGzD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relative-time.d.ts","sourceRoot":"","sources":["../src/relative-time.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"relative-time.d.ts","sourceRoot":"","sources":["../src/relative-time.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,UAAU,CAAA;AAGjC,wBAAgB,YAAY,CAAC,KAAK,EAAE;IAAC,KAAK,EAAE,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAC,GAAG,GAAG,CAAC,OAAO,CAM9E"}
|
package/dist/swap.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swap.d.ts","sourceRoot":"","sources":["../src/swap.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,cAAc,EAAC,MAAM,UAAU,CAAA;AACxD,OAAO,EAAC,IAAI,IAAI,GAAG,EAAC,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"swap.d.ts","sourceRoot":"","sources":["../src/swap.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,cAAc,EAAC,MAAM,UAAU,CAAA;AACxD,OAAO,EAAC,IAAI,IAAI,GAAG,EAAC,MAAM,oBAAoB,CAAA;AAK9C,iBAAS,SAAS,CAAC,KAAK,EAAE,cAAc,CAAC,OAAO,GAAG,CAAC,SAAS,CAAC,kCAG7D;AAED,eAAO,MAAM,IAAI;;CAAsC,CAAA"}
|
package/dist/tokens.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CT,CAAA;AAEV,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,MAAM,CAAA;AAChD,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAA;AAEjE,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,CAAC,GAAG,MAAM,CAG/E"}
|
package/dist/tokens.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.js","names":[],"sources":["../src/tokens.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"tokens.js","names":[],"sources":["../src/tokens.ts"],"sourcesContent":["export const TOKENS = {\n 'pw-hue': {\n value: '328',\n description: 'react-grab brand magenta hue; every neutral is tinted toward it',\n overridable: true,\n },\n 'pw-accent': {value: '#ff40e0', description: 'brand accent (exact react-grab hex)', overridable: true},\n 'pw-accent-hi': {value: 'color-mix(in oklch, var(--pw-accent), white 14%)', description: 'accent hover'},\n 'pw-accent-link': {value: 'color-mix(in oklch, var(--pw-accent), white 34%)', description: 'accent links'},\n 'pw-accent-08': {value: 'color-mix(in oklch, var(--pw-accent) 10%, transparent)', description: 'accent tint 8%'},\n 'pw-accent-20': {value: 'color-mix(in oklch, var(--pw-accent) 22%, transparent)', description: 'accent tint 20%'},\n 'pw-accent-line': {value: 'color-mix(in oklch, var(--pw-accent) 42%, transparent)', description: 'accent border'},\n 'pw-panel': {value: 'oklch(0.2 0.012 var(--pw-hue))', description: 'opaque dark panel'},\n 'pw-panel-sunk': {value: 'oklch(0.16 0.012 var(--pw-hue))', description: 'deepest field bg'},\n 'pw-glass': {value: 'oklch(0.21 0.014 var(--pw-hue) / 0.97)', description: 'chat panel surface'},\n 'pw-fill': {value: 'oklch(1 0 0 / 0.05)', description: 'input / elevated fill'},\n 'pw-fill-soft': {value: 'oklch(1 0 0 / 0.04)', description: 'soft fill'},\n 'pw-fill-strong': {value: 'oklch(1 0 0 / 0.1)', description: 'strong fill'},\n 'pw-sunken': {value: 'oklch(0.12 0.01 var(--pw-hue) / 0.5)', description: 'code / pre blocks'},\n 'pw-text': {value: 'oklch(0.93 0.006 var(--pw-hue))', description: 'primary body text'},\n 'pw-text-hi': {value: 'oklch(0.98 0.008 var(--pw-hue))', description: 'emphasis / near-white'},\n 'pw-text-2': {value: 'oklch(0.74 0.012 var(--pw-hue))', description: 'secondary / muted'},\n 'pw-text-3': {value: 'oklch(0.64 0.012 var(--pw-hue))', description: 'faint / metadata'},\n 'pw-on-accent': {value: 'oklch(0.22 0.03 var(--pw-hue))', description: 'text on a magenta fill'},\n 'pw-agent': {value: 'oklch(0.79 0.13 188)', description: 'fixed agent hue (teal)'},\n 'pw-danger': {value: 'oklch(0.72 0.15 25)', description: 'error text on dark'},\n 'pw-danger-line': {value: 'oklch(0.72 0.15 25 / 0.42)', description: 'error border'},\n 'pw-success': {value: 'oklch(0.82 0.16 162)', description: 'success'},\n 'pw-warn': {value: 'oklch(0.81 0.12 95)', description: 'skipped-test gold'},\n 'pw-dim': {value: 'oklch(0.5 0.02 var(--pw-hue))', description: 'thinking shimmer base'},\n 'pw-line': {value: 'oklch(1 0 0 / 0.1)', description: 'line'},\n 'pw-line-2': {value: 'oklch(1 0 0 / 0.18)', description: 'line strong'},\n 'pw-line-soft': {value: 'oklch(1 0 0 / 0.06)', description: 'line soft'},\n 'pw-r-sm': {value: '8px', description: 'radius sm'},\n 'pw-r-md': {value: '12px', description: 'radius md'},\n 'pw-r-lg': {value: '18px', description: 'radius lg'},\n 'pw-r-pill': {value: '999px', description: 'radius pill'},\n 'pw-shadow': {value: '0 8px 28px oklch(0.12 0.02 var(--pw-hue) / 0.45)', description: 'elevation'},\n 'pw-shadow-lg': {value: '0 16px 44px oklch(0.1 0.03 var(--pw-hue) / 0.55)', description: 'elevation lg'},\n 'pw-shadow-hover': {value: '0 14px 34px oklch(0.1 0.03 var(--pw-hue) / 0.6)', description: 'elevation hover'},\n 'pw-ease': {value: 'cubic-bezier(0.22, 1, 0.36, 1)', description: 'ease-out-quart'},\n 'pw-ease-expo': {value: 'cubic-bezier(0.16, 1, 0.3, 1)', description: 'ease-out-expo'},\n 'pw-font': {value: 'system-ui, -apple-system, sans-serif', description: 'sans font stack'},\n 'pw-mono': {value: 'ui-monospace, monospace', description: 'mono font stack'},\n} as const\n\nexport type ThemeTokenName = keyof typeof TOKENS\nexport type ThemeTokens = Partial<Record<ThemeTokenName, string>>\n\nexport function renderTokensCss(tokens: Record<string, {value: string}>): string {\n const lines = Object.entries(tokens).map(([name, def]) => ` --${name}: ${def.value};`)\n return `:host,\\n:root {\\n${lines.join('\\n')}\\n}\\n`\n}\n"],"mappings":";AAAA,IAAa,IAAS;CACpB,UAAU;EACR,OAAO;EACP,aAAa;EACb,aAAa;CACf;CACA,aAAa;EAAC,OAAO;EAAW,aAAa;EAAuC,aAAa;CAAI;CACrG,gBAAgB;EAAC,OAAO;EAAoD,aAAa;CAAc;CACvG,kBAAkB;EAAC,OAAO;EAAoD,aAAa;CAAc;CACzG,gBAAgB;EAAC,OAAO;EAA0D,aAAa;CAAgB;CAC/G,gBAAgB;EAAC,OAAO;EAA0D,aAAa;CAAiB;CAChH,kBAAkB;EAAC,OAAO;EAA0D,aAAa;CAAe;CAChH,YAAY;EAAC,OAAO;EAAkC,aAAa;CAAmB;CACtF,iBAAiB;EAAC,OAAO;EAAmC,aAAa;CAAkB;CAC3F,YAAY;EAAC,OAAO;EAA0C,aAAa;CAAoB;CAC/F,WAAW;EAAC,OAAO;EAAuB,aAAa;CAAuB;CAC9E,gBAAgB;EAAC,OAAO;EAAuB,aAAa;CAAW;CACvE,kBAAkB;EAAC,OAAO;EAAsB,aAAa;CAAa;CAC1E,aAAa;EAAC,OAAO;EAAwC,aAAa;CAAmB;CAC7F,WAAW;EAAC,OAAO;EAAmC,aAAa;CAAmB;CACtF,cAAc;EAAC,OAAO;EAAmC,aAAa;CAAuB;CAC7F,aAAa;EAAC,OAAO;EAAmC,aAAa;CAAmB;CACxF,aAAa;EAAC,OAAO;EAAmC,aAAa;CAAkB;CACvF,gBAAgB;EAAC,OAAO;EAAkC,aAAa;CAAwB;CAC/F,YAAY;EAAC,OAAO;EAAwB,aAAa;CAAwB;CACjF,aAAa;EAAC,OAAO;EAAuB,aAAa;CAAoB;CAC7E,kBAAkB;EAAC,OAAO;EAA8B,aAAa;CAAc;CACnF,cAAc;EAAC,OAAO;EAAwB,aAAa;CAAS;CACpE,WAAW;EAAC,OAAO;EAAuB,aAAa;CAAmB;CAC1E,UAAU;EAAC,OAAO;EAAiC,aAAa;CAAuB;CACvF,WAAW;EAAC,OAAO;EAAsB,aAAa;CAAM;CAC5D,aAAa;EAAC,OAAO;EAAuB,aAAa;CAAa;CACtE,gBAAgB;EAAC,OAAO;EAAuB,aAAa;CAAW;CACvE,WAAW;EAAC,OAAO;EAAO,aAAa;CAAW;CAClD,WAAW;EAAC,OAAO;EAAQ,aAAa;CAAW;CACnD,WAAW;EAAC,OAAO;EAAQ,aAAa;CAAW;CACnD,aAAa;EAAC,OAAO;EAAS,aAAa;CAAa;CACxD,aAAa;EAAC,OAAO;EAAoD,aAAa;CAAW;CACjG,gBAAgB;EAAC,OAAO;EAAoD,aAAa;CAAc;CACvG,mBAAmB;EAAC,OAAO;EAAmD,aAAa;CAAiB;CAC5G,WAAW;EAAC,OAAO;EAAkC,aAAa;CAAgB;CAClF,gBAAgB;EAAC,OAAO;EAAiC,aAAa;CAAe;CACrF,WAAW;EAAC,OAAO;EAAwC,aAAa;CAAiB;CACzF,WAAW;EAAC,OAAO;EAA2B,aAAa;CAAiB;AAC9E;AAKA,SAAgB,EAAgB,GAAiD;CAE/E,OAAO,oBADO,OAAO,QAAQ,CAAM,EAAE,KAAK,CAAC,GAAM,OAAS,OAAO,EAAK,IAAI,EAAI,MAAM,EACzD,EAAM,KAAK,IAAI,EAAE;AAC9C"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@conciv/ui-kit-system",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"description": "The conciv design system: SolidJS primitives (Button + Ark-UI-based Collapsible, HoverCard, ScrollArea, Combobox, Progress) styled with the shared UnoCSS preset, so every surface looks and behaves identically. Each component is viewable in Storybook.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ark-ui",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"solid-js",
|
|
10
10
|
"ui-kit"
|
|
11
11
|
],
|
|
12
|
-
"homepage": "https://
|
|
12
|
+
"homepage": "https://conciv.dev",
|
|
13
13
|
"bugs": "https://github.com/conciv-dev/conciv/issues",
|
|
14
14
|
"license": "MIT",
|
|
15
15
|
"repository": {
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
"vite": "^8.0.16",
|
|
61
61
|
"vite-plugin-solid": "^2.11.12",
|
|
62
62
|
"vitest": "^4.1.8",
|
|
63
|
-
"@conciv/uno-preset": "0.0.
|
|
63
|
+
"@conciv/uno-preset": "0.0.3"
|
|
64
64
|
},
|
|
65
65
|
"peerDependencies": {
|
|
66
66
|
"solid-js": "^1.9.13"
|