@sectile/vue 0.16.0 → 0.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/chart.js CHANGED
@@ -1,2 +1,2 @@
1
- import{createChartController}from"@sectile/chart/controller";import{createDOMChart}from"@sectile/dom/chart";import{defineComponent,getCurrentScope,h,inject,nextTick,onBeforeUnmount,onMounted,onScopeDispose,provide,shallowRef,toValue,watch}from"vue";function useChart(options){if(options===null||typeof options!=="object")throw new TypeError("useChart options must be an object.");if(options.model===void 0===(options.definition===void 0)){throw new TypeError("useChart requires exactly one model or declarative definition.")}assertControlledDefaults(options);const controlled=controlledValues(options);const source=options.definition===void 0?{model:toValue(options.model)}:{definition:toValue(options.definition),viewCapabilities:toValue(options.viewCapabilities??(()=>Object.freeze([])))};const controller=createChartController({...source,...options.limits===void 0?{}:{limits:options.limits},...defaultValues(options),...Object.keys(controlled).length===0?{}:{controlled}});const binding=bindController(controller,options,true);const stops=[];if(options.model!==void 0){stops.push(watch(()=>toValue(options.model),model=>{binding.replaceModel(model)},{deep:false}))}else{stops.push(watch(()=>[toValue(options.definition),toValue(options.viewCapabilities??(()=>Object.freeze([])))],([definition,capabilities])=>{binding.replaceDefinition(definition,capabilities)},{deep:false}))}for(const sourceRef of[options.activeDatum,options.cursor,options.selection,options.view]){if(sourceRef!==void 0)stops.push(watch(()=>sourceRef.value,()=>{binding.syncControlledValues()},{deep:false}))}const disposeBinding=binding.dispose;const result=Object.freeze({...binding,dispose(){for(const stop of stops.splice(0))stop();disposeBinding()}});if(getCurrentScope()!==void 0)onScopeDispose(result.dispose);return result}class ChartDeclarations{#records=new Map;#publish;#token=0;#scheduled=false;#active=true;#publications=0;#readRecords=0;constructor(publish){this.#publish=publish}register(kind,read){const token=++this.#token;this.#records.set(token,{token,kind,read});this.schedule();let active=true;return Object.freeze({touch:()=>{if(active)this.schedule()},dispose:()=>{if(!active)return;active=false;this.#records.delete(token);this.schedule()}})}publishNow(){if(!this.#active)return;this.#scheduled=false;this.#publish(this.assemble());this.#publications+=1}getDiagnostics(){return Object.freeze({registeredRecords:this.#records.size,publications:this.#publications,readRecords:this.#readRecords})}schedule(){if(!this.#active||this.#scheduled)return;this.#scheduled=true;void nextTick(()=>{if(this.#scheduled)this.publishNow()})}assemble(){const records=[...this.#records.values()].sort((left,right)=>left.token-right.token);this.#readRecords=records.length;const coordinates=records.filter(record=>record.kind==="coordinate");if(coordinates.length!==1)throw new TypeError("ChartRoot requires exactly one ChartCartesian or ChartRadial coordinate.");const coordinate=coordinates[0]?.read();const axes=records.filter(record=>record.kind==="axis").map(record=>record.read());const layers=records.filter(record=>record.kind==="layer").map(record=>record.read());const capabilities=records.filter(record=>record.kind==="view").map(record=>record.read());const navigationRecords=records.filter(record=>record.kind==="navigation");if(navigationRecords.length>1)throw new TypeError("ChartRoot accepts at most one ChartNavigation declaration.");const controls=records.filter(record=>record.kind==="controls").map(record=>record.read());const navigation=navigationRecords[0]?.read();const alternative=controls.includes("built-in")?"built-in":controls.includes("external")?"external":void 0;if(navigation!==void 0&&((navigation.drag??"none")!=="none"||navigation.pinch===true)&&alternative===void 0){throw new TypeError("Chart direct gestures require ChartViewControls or ChartExternalViewControls.")}return Object.freeze({definition:Object.freeze({coordinate:coordinate.kind==="cartesian"?Object.freeze({kind:"cartesian",axes:Object.freeze(axes)}):Object.freeze({kind:"radial"}),layers:Object.freeze(layers)}),viewCapabilities:Object.freeze(capabilities),navigation:Object.freeze({...navigation??{},...alternative===void 0?{}:{controlAlternative:alternative}})})}dispose(){if(!this.#active)return;this.#active=false;this.#scheduled=false;this.#records.clear()}}const chartKey=Symbol("SectileChart");const chartPublicKey=Symbol("SectileChartPublic");const chartOwnerKey=Symbol("SectileChartOwner");const chartAxisKey=Symbol("SectileChartAxis");const chartControlAxisKey=Symbol("SectileChartControlAxis");function useInternalChart(){const context=inject(chartKey);if(context===void 0)throw new TypeError("Chart component must be used inside ChartRoot.");return context}function useChartContext(){const context=inject(chartPublicKey);if(context===void 0)throw new TypeError("useChartContext must be used inside ChartRoot or ChartProvider.");return context}const ChartProviderRuntime=defineComponent({name:"SectileChartProvider",props:{controller:{type:Object,required:true}},setup(props,{slots}){const controller=shallowRef(props.controller);const snapshot=shallowRef(controller.value.getSnapshot());const unsubscribe=controller.value.subscribeSnapshots(next=>{snapshot.value=next});const owner=Object.freeze({controller});const context=Object.freeze({controller,snapshot,dispatch(event){const result=controller.value.dispatch(event);return result.ok?Object.freeze({ok:true,value:result.value.snapshot}):result},applyPatch(patch){return controller.value.applyPatch(patch)}});provide(chartOwnerKey,owner);provide(chartPublicKey,context);onScopeDispose(unsubscribe);return()=>slots["default"]?.({controller:controller.value,snapshot:snapshot.value,state:snapshot.value.state,definition:controller.value.getDefinition()})??null}});const ChartProvider=ChartProviderRuntime;function useChartSelector(selector,options={}){const context=useChartContext();return useChartContextSelector(context,()=>selector(context.snapshot.value?.state??null),options.equals)}function useChartLayerSelector(id,selector,options={}){const context=useChartContext();return useChartContextSelector(context,()=>{const layers=context.controller.value?.getDefinition()?.layers;return selector(layers?.find(layer=>layer.id===id)??null)},options.equals)}function useChartAxisSelector(id,selector,options={}){const context=useChartContext();return useChartContextSelector(context,()=>{const axes=context.controller.value?.getDefinition()?.axes;return selector(axes?.find(axis=>axis.id===id)??null)},options.equals)}function useChartContextSelector(context,read,equals=Object.is){const selected=shallowRef(read());const stop=watch([context.controller,context.snapshot],()=>{const next=read();if(!equals(selected.value,next))selected.value=next},{deep:false,flush:"sync"});onScopeDispose(stop);return selected}const ChartRootRuntime=defineComponent({name:"SectileChartRoot",inheritAttrs:false,props:{limits:{type:Object,default:void 0},modelValue:{type:Object,default:void 0},defaultModelValue:{type:Object,default:void 0},activeDatum:{type:[String,Number],default:void 0},defaultActiveDatum:{type:[String,Number],default:void 0},cursor:{type:[String,Number],default:void 0},defaultCursor:{type:[String,Number],default:void 0},view:{type:Object,default:void 0},defaultView:{type:Object,default:void 0},patch:{type:Object,default:void 0},dom:{type:Object,default:void 0},onError:{type:Function,default:void 0}},emits:{"update:modelValue":_value=>true,"update:activeDatum":_value=>true,"update:cursor":_value=>true,"update:view":_value=>true,command:_command=>true},setup(props,{attrs,emit,expose,slots}){assertRootControlledDefaults(props);const ownerContext=inject(chartOwnerKey,void 0);const ownsController=ownerContext===void 0;const root=shallowRef(null);const canvas=shallowRef(null);const controller=shallowRef(ownerContext?.controller.value??null);const snapshot=shallowRef(controller.value?.getSnapshot()??null);const projection=shallowRef(null);const connection=shallowRef(null);let assembled=null;let unsubscribeCommands=null;let unsubscribeSnapshots=null;let previousState=snapshot.value?.state??null;let mounted=false;let definitionAccepted=false;const controlled=Object.freeze({activeDatum:props.activeDatum!==void 0,cursor:props.cursor!==void 0,selection:props.modelValue!==void 0,view:props.view!==void 0});const report=error=>{if(props.onError!==void 0)props.onError(error);else throw error};const publishSnapshot=()=>{const owner=controller.value;if(owner===null)return;const current=owner.getSnapshot();if(snapshot.value===current)return;const prior=previousState;snapshot.value=current;previousState=current.state;if(prior===null)return;let failure;if(!controlled.activeDatum&&prior.activeDatum!==current.state.activeDatum){try{emit("update:activeDatum",current.state.activeDatum)}catch(error){failure??=[error]}}if(!controlled.cursor&&prior.cursor!==current.state.cursor){try{emit("update:cursor",current.state.cursor)}catch(error){failure??=[error]}}if(!controlled.selection&&prior.selection!==current.state.selection){try{emit("update:modelValue",current.state.selection)}catch(error){failure??=[error]}}if(!controlled.view&&prior.view!==current.state.view){try{emit("update:view",current.state.view)}catch(error){failure??=[error]}}if(failure!==void 0)throw failure[0]};const onCommand=command=>{let failure;try{publishSnapshot()}catch(error){failure??=[error]}try{emit("command",command)}catch(error){failure??=[error]}try{if(command.type==="active-change-requested")emit("update:activeDatum",command.id);else if(command.type==="cursor-change-requested")emit("update:cursor",command.id);else if(command.type==="selection-change-requested")emit("update:modelValue",command.selection);else if(command.type==="view-change-requested")emit("update:view",command.view)}catch(error){failure??=[error]}if(failure!==void 0)throw failure[0]};const connect=()=>{const owner=controller.value;if(!mounted||owner===null||root.value===null||canvas.value===null||connection.value!==null)return;const dom=props.dom??{};try{connection.value=createDOMChart({...dom,root:root.value,canvas:canvas.value,controller:owner,...assembled===null?{}:{navigation:assembled.navigation},onCommand:command=>{dom.onCommand?.(command)},onProjectionChange:next=>{projection.value=next;dom.onProjectionChange?.(next)}});projection.value=connection.value.getProjection()}catch(error){report(error)}};const publishDefinition=next=>{assembled=next;definitionAccepted=false;const owner=controller.value;if(!mounted||owner===null)return;const replaced=owner.replaceDefinition(next.definition,next.viewCapabilities);if(!replaced.ok){report(new TypeError(`${replaced.error.code}: ${replaced.error.message}`));return}definitionAccepted=true;publishSnapshot();const navigation=connection.value?.setNavigation(next.navigation);if(navigation!==void 0&&!navigation.ok)report(new TypeError(`${navigation.error.code}: ${navigation.error.message}`));connection.value?.refresh()};const declarations=new ChartDeclarations(next=>{try{publishDefinition(next)}catch(error){report(error)}});const context=Object.freeze({declarations,controller,canvas,dispatch(event){const result=controller.value?.dispatch(event);if(result!==void 0&&!result.ok)report(new TypeError(`${result.error.code}: ${result.error.message}`));publishSnapshot()}});provide(chartKey,context);const publicContext=Object.freeze({controller,snapshot,dispatch(event){const result=controller.value?.dispatch(event);if(result===void 0)return Object.freeze({ok:true,value:null});publishSnapshot();return result.ok?Object.freeze({ok:true,value:result.value.snapshot}):result},applyPatch(patch){const result=controller.value?.applyPatch(patch);if(result===void 0)return Object.freeze({ok:true,value:null});publishSnapshot();return result}});provide(chartPublicKey,publicContext);const syncControlled=()=>{const owner=controller.value;if(owner===null)return;const result=owner.syncControlledValues(Object.freeze({...controlled.activeDatum?{activeDatum:props.activeDatum??null}:{},...controlled.cursor?{cursor:props.cursor??null}:{},...controlled.selection?{selection:props.modelValue}:{},...controlled.view?{view:props.view??null}:{}}));if(!result.ok)report(new TypeError(`${result.error.code}: ${result.error.message}`));publishSnapshot()};watch(()=>[props.activeDatum,props.cursor,props.modelValue,props.view],syncControlled,{deep:false});watch(()=>props.patch,patch=>{if(patch===null||patch===void 0||controller.value===null)return;const result=controller.value.applyPatch(patch);if(!result.ok)report(new TypeError(`${result.error.code}: ${result.error.message}`));publishSnapshot()},{deep:false});watch(()=>props.dom?.accessibilityLabel,label=>{connection.value?.setAccessibilityLabel(label)},{flush:"post"});onMounted(()=>{mounted=true;try{declarations.publishNow();const next=assembled;const controlledValues2=Object.freeze({...controlled.activeDatum?{activeDatum:props.activeDatum??null}:{},...controlled.cursor?{cursor:props.cursor??null}:{},...controlled.selection?{selection:props.modelValue}:{},...controlled.view?{view:props.view??null}:{}});const initialValues=Object.freeze({...!controlled.activeDatum&&props.defaultActiveDatum!==void 0?{activeDatum:props.defaultActiveDatum}:{},...!controlled.cursor&&props.defaultCursor!==void 0?{cursor:props.defaultCursor}:{},...!controlled.selection&&props.defaultModelValue!==void 0?{selection:props.defaultModelValue}:{},...!controlled.view&&props.defaultView!==void 0?{view:props.defaultView}:{}});if(ownerContext===void 0){controller.value=createChartController({definition:next.definition,viewCapabilities:next.viewCapabilities,...props.limits===void 0?{}:{limits:props.limits},...Object.keys(controlledValues2).length===0?{}:{controlled:controlledValues2},...Object.keys(initialValues).length===0?{}:{initialValues}})}else{const borrowed=ownerContext.controller.value;if(!definitionAccepted)return;controller.value=borrowed;if(Object.keys(controlledValues2).length!==0){const synced=borrowed.syncControlledValues(controlledValues2);if(!synced.ok)throw new TypeError(`${synced.error.code}: ${synced.error.message}`)}}snapshot.value=controller.value.getSnapshot();previousState=snapshot.value.state;unsubscribeCommands=controller.value.subscribeCommands(onCommand);unsubscribeSnapshots=controller.value.subscribeSnapshots(()=>{publishSnapshot()});void nextTick(connect)}catch(error){report(error)}});onBeforeUnmount(()=>{mounted=false;declarations.dispose();connection.value?.disconnect();connection.value=null;unsubscribeCommands?.();unsubscribeCommands=null;unsubscribeSnapshots?.();unsubscribeSnapshots=null;if(ownsController)controller.value?.dispose();controller.value=null});expose({controller,getDeclarationDiagnostics:()=>declarations.getDiagnostics(),refresh:()=>connection.value?.refresh()});return()=>h("div",{...attrs,ref:element=>{root.value=element},"data-scope":"chart","data-part":"root"},slots["default"]?.({controller:controller.value,snapshot:snapshot.value,state:snapshot.value?.state??null,projection:projection.value,definition:controller.value?.getDefinition()??null}))}});const ChartRoot=ChartRootRuntime;const coordinateProps={};const ChartCartesian=defineComponent({name:"SectileChartCartesian",props:coordinateProps,setup(_props,{slots}){const context=useInternalChart();const record=context.declarations.register("coordinate",()=>Object.freeze({kind:"cartesian"}));onBeforeUnmount(record.dispose);return()=>slots["default"]?.()??null}});const ChartRadial=defineComponent({name:"SectileChartRadial",props:coordinateProps,setup(_props,{slots}){const context=useInternalChart();const record=context.declarations.register("coordinate",()=>Object.freeze({kind:"radial"}));onBeforeUnmount(record.dispose);return()=>slots["default"]?.()??null}});const axisProps={id:{type:[String,Number],required:true},scale:{type:String,default:"linear"},domain:{type:[String,Object],default:"auto"},field:{type:String,default:void 0},getValue:{type:Function,default:void 0},ticks:{type:Number,default:void 0},label:{type:String,default:void 0},unit:{type:String,default:void 0}};function axisComponent(orientation){return defineComponent({name:orientation==="x"?"SectileChartXAxis":"SectileChartYAxis",props:axisProps,setup(props,{slots}){const context=useInternalChart();const axis=shallowRef(props.id);provide(chartAxisKey,axis);const value=shallowRef(axisDefinition(props,orientation));const record=context.declarations.register("axis",()=>value.value);watch(()=>[props.id,props.scale,props.domain,props.field,props.getValue,props.ticks,props.label,props.unit],()=>{axis.value=props.id;value.value=axisDefinition(props,orientation);record.touch()},{deep:false,flush:"post"});onBeforeUnmount(record.dispose);return()=>slots["default"]?.()??null}})}const ChartXAxis=axisComponent("x");const ChartYAxis=axisComponent("y");function axisDefinition(props,orientation){return defined({id:props["id"],orientation,scale:props["scale"],domain:props["domain"],field:props["field"],getValue:props["getValue"],ticks:props["ticks"],label:props["label"],unit:props["unit"]})}const layerBaseProps={id:{type:[String,Number],required:true},data:{type:Array,required:true},getId:{type:Function,default:void 0},label:{type:String,default:void 0}};const cartesianLayerProps={...layerBaseProps,xAxis:{type:[String,Number],required:true},yAxis:{type:[String,Number],required:true},getX:{type:Function,default:void 0},getY:{type:Function,default:void 0}};function layerComponent(kind,extraProps={}){return defineComponent({name:`SectileChart${kind[0]?.toUpperCase()}${kind.slice(1)}`,props:{...kind==="pie"||kind==="donut"?layerBaseProps:cartesianLayerProps,...extraProps},setup(props){const context=useInternalChart();const value=shallowRef(layerDefinition(props,kind));const record=context.declarations.register("layer",()=>value.value);watch(()=>Object.values(props),()=>{value.value=layerDefinition(props,kind);record.touch()},{deep:false,flush:"post"});onBeforeUnmount(record.dispose);return()=>null}})}const ChartLine=layerComponent("line");const ChartScatter=layerComponent("scatter",{projection:{type:String,default:"raw"}});const ChartBar=layerComponent("bar",{orientation:{type:String,default:"vertical"}});const ChartBars=ChartBar;const ChartHeatmap=layerComponent("heatmap",{getValue:{type:Function,default:void 0},valueField:{type:String,default:void 0},projection:{type:[String,Object],default:"raw"}});const ChartPie=layerComponent("pie",{getValue:{type:Function,default:void 0},valueField:{type:String,default:void 0},getLabel:{type:Function,default:void 0},labelField:{type:String,default:void 0}});const ChartDonut=layerComponent("donut",{getValue:{type:Function,default:void 0},valueField:{type:String,default:void 0},getLabel:{type:Function,default:void 0},labelField:{type:String,default:void 0},innerRadius:{type:Number,default:.5},outerRadius:{type:Number,default:1}});function layerDefinition(props,kind){return defined({kind,id:props["id"],data:props["data"],getId:props["getId"],label:props["label"],xAxis:props["xAxis"],yAxis:props["yAxis"],getX:props["getX"],getY:props["getY"],projection:props["projection"],orientation:props["orientation"],getValue:props["getValue"],valueField:props["valueField"],getLabel:props["getLabel"],labelField:props["labelField"],innerRadius:props["innerRadius"],outerRadius:props["outerRadius"]})}const ChartAxisView=defineComponent({name:"SectileChartAxisView",props:{axis:{type:[String,Number],default:void 0},initial:{type:Object,default:void 0},minimumSpan:{type:Number,default:void 0},maximumSpan:{type:Number,default:void 0},update:{type:String,default:"preserve"}},setup(props){const context=useInternalChart();const inheritedAxis=inject(chartAxisKey,void 0);const read=()=>viewCapability(props,inheritedAxis?.value);const value=shallowRef(read());const record=context.declarations.register("view",()=>value.value);watch(()=>[props.axis,inheritedAxis?.value,props.initial,props.minimumSpan,props.maximumSpan,props.update],()=>{value.value=read();record.touch()},{deep:false,flush:"post"});onBeforeUnmount(record.dispose);return()=>null}});function viewCapability(props,inheritedAxis){const axisID=props["axis"]??inheritedAxis;if(axisID===void 0)throw new TypeError("ChartAxisView requires an axis prop or an enclosing ChartXAxis or ChartYAxis.");return Object.freeze(defined({axisID,initial:props["initial"],minimumSpan:props["minimumSpan"],maximumSpan:props["maximumSpan"],update:props["update"]}))}const ChartNavigation=defineComponent({name:"SectileChartNavigation",props:{axes:{type:Array,default:void 0},drag:{type:String,default:"none"},wheel:{type:String,default:"native"},wheelModifier:{type:String,default:"none"},pinch:{type:Boolean,default:false},keyboard:{type:Boolean,default:false}},setup(props){const context=useInternalChart();const value=shallowRef(navigationDefinition(props));const record=context.declarations.register("navigation",()=>value.value);watch(()=>[props.axes,props.drag,props.wheel,props.wheelModifier,props.pinch,props.keyboard],()=>{const next=navigationDefinition(props);if(sameNavigation(value.value,next))return;value.value=next;record.touch()},{deep:false,flush:"post"});onBeforeUnmount(record.dispose);return()=>null}});function navigationDefinition(props){return Object.freeze(defined({axes:props["axes"],drag:props["drag"],wheel:props["wheel"],wheelModifier:props["wheelModifier"],pinch:props["pinch"],keyboard:props["keyboard"]}))}function sameNavigation(left,right){return sameStableIDs(left.axes,right.axes)&&left.drag===right.drag&&left.wheel===right.wheel&&left.wheelModifier===right.wheelModifier&&left.pinch===right.pinch&&left.keyboard===right.keyboard}function sameStableIDs(left,right){if(left===right)return true;if(left===void 0||right===void 0||left.length!==right.length)return false;for(let index=0;index<left.length;index+=1)if(left[index]!==right[index])return false;return true}const ChartViewControls=defineComponent({name:"SectileChartViewControls",inheritAttrs:false,props:{axis:{type:[String,Number],default:void 0}},setup(props,{attrs,slots}){const context=useInternalChart();const inheritedAxis=inject(chartAxisKey,void 0);const initialAxis=props.axis??inheritedAxis?.value;if(initialAxis===void 0)throw new TypeError("ChartViewControls requires an axis prop or an enclosing ChartXAxis or ChartYAxis.");const axis=shallowRef(initialAxis);provide(chartControlAxisKey,axis);watch(()=>[props.axis,inheritedAxis?.value],()=>{axis.value=props.axis??inheritedAxis?.value},{deep:false,flush:"sync"});const record=context.declarations.register("controls",()=>"built-in");onBeforeUnmount(record.dispose);return()=>h("div",{...attrs,"data-scope":"chart","data-part":"view-controls"},slots["default"]?.())}});const ChartExternalViewControls=defineComponent({name:"SectileChartExternalViewControls",setup(){const context=useInternalChart();const record=context.declarations.register("controls",()=>"external");onBeforeUnmount(record.dispose);return()=>null}});const axisControlProps={axis:{type:[String,Number],default:void 0},label:{type:String,default:void 0}};const ChartPanControl=defineComponent({name:"SectileChartPanControl",inheritAttrs:false,props:{...axisControlProps,direction:{type:String,required:true},step:{type:Number,default:.1}},setup(props,{attrs,slots}){const context=useInternalChart();const inheritedAxis=inject(chartControlAxisKey,inject(chartAxisKey,void 0));const axis=()=>requiredControlAxis(props.axis,inheritedAxis?.value);return()=>h("button",{...attrs,type:"button",disabled:context.controller.value===null,"aria-label":props.label??`Pan ${String(axis())} ${props.direction}`,"data-scope":"chart","data-part":"pan-control",onClick:()=>context.dispatch({type:"pan-axis-view",axisID:axis(),fraction:props.direction==="backward"?-props.step:props.step,phase:"settled"})},slots["default"]?.()??props.direction)}});const ChartZoomControl=defineComponent({name:"SectileChartZoomControl",inheritAttrs:false,props:{...axisControlProps,direction:{type:String,required:true},factor:{type:Number,default:1.25}},setup(props,{attrs,slots}){const context=useInternalChart();const inheritedAxis=inject(chartControlAxisKey,inject(chartAxisKey,void 0));const axis=()=>requiredControlAxis(props.axis,inheritedAxis?.value);return()=>h("button",{...attrs,type:"button",disabled:context.controller.value===null,"aria-label":props.label??`Zoom ${String(axis())} ${props.direction}`,"data-scope":"chart","data-part":"zoom-control",onClick:()=>context.dispatch({type:"zoom-axis-view",axisID:axis(),factor:props.direction==="in"?props.factor:1/props.factor,anchor:.5,phase:"settled"})},slots["default"]?.()??props.direction)}});const ChartResetView=defineComponent({name:"SectileChartResetView",inheritAttrs:false,props:{...axisControlProps,to:{type:String,default:"initial"}},setup(props,{attrs,slots}){const context=useInternalChart();const inheritedAxis=inject(chartControlAxisKey,inject(chartAxisKey,void 0));const axis=()=>requiredControlAxis(props.axis,inheritedAxis?.value);return()=>h("button",{...attrs,type:"button",disabled:context.controller.value===null,"aria-label":props.label??`Reset ${String(axis())} view`,"data-scope":"chart","data-part":"reset-view",onClick:()=>context.dispatch({type:"reset-axis-view",axisID:axis(),to:props.to,phase:"settled"})},slots["default"]?.()??"Reset")}});const ChartPlot=defineComponent({name:"SectileChartPlot",inheritAttrs:false,setup(_props,{attrs,slots}){return()=>h("div",{...attrs,"data-scope":"chart","data-part":"plot"},slots["default"]?.())}});const ChartRenderer=defineComponent({name:"SectileChartRenderer",inheritAttrs:false,setup(_props,{attrs}){const context=useInternalChart();return()=>h("canvas",{...attrs,ref:element=>{context.canvas.value=element},"aria-hidden":"true","data-scope":"chart","data-part":"renderer"})}});const ChartCanvas=ChartRenderer;function semanticMarker(name,part){return defineComponent({name,setup(){useInternalChart();return()=>null}})}const ChartGrid=semanticMarker("SectileChartGrid","grid");const ChartGridLines=ChartGrid;const ChartLegend=semanticMarker("SectileChartLegend","legend");const ChartAxisTicks=semanticMarker("SectileChartAxisTicks","axis-ticks");const ChartTicks=ChartAxisTicks;const chartSuiteKey=Symbol("SectileChartSuite");const chartComponentSuites=new WeakMap;function createChartComponents(controller){if(controller===null||typeof controller!=="object")throw new TypeError("createChartComponents requires a Chart controller.");const cached=chartComponentSuites.get(controller);if(cached!==void 0)return cached;const token=Object.freeze({controller});const suite=Object.freeze({Provider:boundChartProvider(controller,token),Root:boundChartRoot(token),Cartesian:ChartCartesian,Radial:ChartRadial,XAxis:ChartXAxis,YAxis:ChartYAxis,AxisView:ChartAxisView,Line:ChartLine,Scatter:ChartScatter,Bar:ChartBar,Bars:ChartBars,Heatmap:ChartHeatmap,Pie:ChartPie,Donut:ChartDonut,Navigation:ChartNavigation,ViewControls:ChartViewControls,ExternalViewControls:ChartExternalViewControls,PanControl:ChartPanControl,ZoomControl:ChartZoomControl,ResetView:ChartResetView,Plot:ChartPlot,Renderer:ChartRenderer,Canvas:ChartCanvas,Grid:ChartGrid,GridLines:ChartGridLines,Legend:ChartLegend,AxisTicks:ChartAxisTicks,Ticks:ChartTicks});chartComponentSuites.set(controller,suite);return suite}function boundChartProvider(controller,token){return defineComponent({name:"SectileBoundChartProvider",inheritAttrs:false,setup(_props,{attrs,slots}){provide(chartSuiteKey,token);return()=>h(ChartProviderRuntime,{...attrs,controller},slots)}})}function boundChartRoot(token){return defineComponent({name:"SectileBoundChartRoot",inheritAttrs:false,setup(_props,{attrs,slots}){if(inject(chartSuiteKey,void 0)!==token){throw new TypeError("Controller-bound Chart.Root requires its matching Chart.Provider.")}return()=>h(ChartRootRuntime,attrs,slots)}})}function requiredControlAxis(axis,inheritedAxis){const resolved=axis??inheritedAxis;if(resolved===void 0)throw new TypeError("Chart view control requires an axis prop or an enclosing axis control scope.");return resolved}function bindController(controller,options,owned){const snapshot=shallowRef(controller.getSnapshot());const projection=shallowRef(null);const connection=shallowRef(null);let active=true;const controlledFlags={activeDatum:options.activeDatum!==void 0,cursor:options.cursor!==void 0,selection:options.selection!==void 0,view:options.view!==void 0};const publish=()=>{if(!active)return;const previous=snapshot.value;const current=controller.getSnapshot();if(current===previous)return;snapshot.value=current;let failure;if(!controlledFlags.activeDatum&&current.state.activeDatum!==previous.state.activeDatum){try{options.onActiveDatumChange?.(current.state.activeDatum)}catch(error){failure??=[error]}}if(!controlledFlags.cursor&&current.state.cursor!==previous.state.cursor){try{options.onCursorChange?.(current.state.cursor)}catch(error){failure??=[error]}}if(!controlledFlags.selection&&current.state.selection!==previous.state.selection){try{options.onSelectionChange?.(current.state.selection)}catch(error){failure??=[error]}}if(!controlledFlags.view&&current.state.view!==previous.state.view){try{options.onViewChange?.(current.state.view)}catch(error){failure??=[error]}}if(failure!==void 0)throw failure[0]};const unsubscribeCommands=controller.subscribeCommands(command=>{let failure;if(command.type==="active-change-requested"&&options.activeDatum!==void 0){try{options.activeDatum.value=command.id}catch(error){failure??=[error]}}else if(command.type==="cursor-change-requested"&&options.cursor!==void 0){try{options.cursor.value=command.id}catch(error){failure??=[error]}}else if(command.type==="selection-change-requested"&&options.selection!==void 0){try{options.selection.value=command.selection}catch(error){failure??=[error]}}else if(command.type==="view-change-requested"&&options.view!==void 0){try{options.view.value=command.view}catch(error){failure??=[error]}}try{publish()}catch(error){failure??=[error]}try{options.onCommand?.(command)}catch(error){failure??=[error]}try{if(command.type==="active-change-requested")options.onActiveDatumChange?.(command.id);else if(command.type==="cursor-change-requested")options.onCursorChange?.(command.id);else if(command.type==="selection-change-requested")options.onSelectionChange?.(command.selection);else if(command.type==="view-change-requested")options.onViewChange?.(command.view)}catch(error){failure??=[error]}if(failure!==void 0)throw failure[0]});const unsubscribeSnapshots=controller.subscribeSnapshots(()=>{publish()});const result={controller,snapshot,projection,connection,replaceModel(model,expectedRevision){const value=controller.replaceModel(model,expectedRevision);publish();return value},replaceDefinition(definition,viewCapabilities,expectedRevision){const value=controller.replaceDefinition(definition,viewCapabilities,expectedRevision);publish();return value},applyPatch(patch,expectedRevision){const value=controller.applyPatch(patch,expectedRevision);publish();return value},dispatch(event,expectedRevision){const value=controller.dispatch(event,expectedRevision);publish();return value},syncControlledValues(){const value=controller.syncControlledValues(controlledValues(options));publish();return value},dispose(){if(!active)return;active=false;connection.value?.disconnect();connection.value=null;unsubscribeCommands();unsubscribeSnapshots();if(owned)controller.dispose()}};return Object.freeze(result)}function controlledValues(options){return Object.freeze({...options.activeDatum===void 0?{}:{activeDatum:options.activeDatum.value},...options.cursor===void 0?{}:{cursor:options.cursor.value},...options.selection===void 0?{}:{selection:options.selection.value},...options.view===void 0?{}:{view:options.view.value}})}function defaultValues(options){const values=Object.freeze({...options.activeDatum!==void 0||options.defaultActiveDatum===void 0?{}:{activeDatum:options.defaultActiveDatum},...options.cursor!==void 0||options.defaultCursor===void 0?{}:{cursor:options.defaultCursor},...options.selection!==void 0||options.defaultSelection===void 0?{}:{selection:options.defaultSelection},...options.view!==void 0||options.defaultView===void 0?{}:{view:options.defaultView}});return Object.keys(values).length===0?{}:{initialValues:values}}function assertControlledDefaults(options){if(options.activeDatum!==void 0&&options.defaultActiveDatum!==void 0||options.cursor!==void 0&&options.defaultCursor!==void 0||options.selection!==void 0&&options.defaultSelection!==void 0||options.view!==void 0&&options.defaultView!==void 0){throw new TypeError("Chart controlled values and their default counterparts are mutually exclusive.")}}function assertRootControlledDefaults(props){if(props["modelValue"]!==void 0&&props["defaultModelValue"]!==void 0||props["activeDatum"]!==void 0&&props["defaultActiveDatum"]!==void 0||props["cursor"]!==void 0&&props["defaultCursor"]!==void 0||props["view"]!==void 0&&props["defaultView"]!==void 0){throw new TypeError("ChartRoot controlled props and their default counterparts are mutually exclusive.")}}function defined(value){return Object.fromEntries(Object.entries(value).filter(([,entry])=>entry!==void 0))}export{ChartAxisTicks,ChartAxisView,ChartBar,ChartBars,ChartCanvas,ChartCartesian,ChartDonut,ChartExternalViewControls,ChartGrid,ChartGridLines,ChartHeatmap,ChartLegend,ChartLine,ChartNavigation,ChartPanControl,ChartPie,ChartPlot,ChartProvider,ChartRadial,ChartRenderer,ChartResetView,ChartRoot,ChartScatter,ChartTicks,ChartViewControls,ChartXAxis,ChartYAxis,ChartZoomControl,createChartComponents,useChart,useChartAxisSelector,useChartContext,useChartLayerSelector,useChartSelector};
1
+ import{createChartController}from"@sectile/chart/controller";import{createDOMChart}from"@sectile/dom/chart";import{useControlledStateInvariant}from"./internal/controlled-state.js";import{defineComponent,getCurrentScope,h,inject,nextTick,onBeforeUnmount,onMounted,onScopeDispose,provide,shallowRef,toValue,watch}from"vue";function useChart(options){if(options===null||typeof options!=="object")throw new TypeError("useChart options must be an object.");if(options.model===void 0===(options.definition===void 0)){throw new TypeError("useChart requires exactly one model or declarative definition.")}assertControlledDefaults(options);const controlled=controlledValues(options);const source=options.definition===void 0?{model:toValue(options.model)}:{definition:toValue(options.definition),viewCapabilities:toValue(options.viewCapabilities??(()=>Object.freeze([])))};const controller=createChartController({...source,...options.limits===void 0?{}:{limits:options.limits},...defaultValues(options),...Object.keys(controlled).length===0?{}:{controlled}});const binding=bindController(controller,options,true);const stops=[];if(options.model!==void 0){stops.push(watch(()=>toValue(options.model),model=>{binding.replaceModel(model)},{deep:false}))}else{stops.push(watch(()=>[toValue(options.definition),toValue(options.viewCapabilities??(()=>Object.freeze([])))],([definition,capabilities])=>{binding.replaceDefinition(definition,capabilities)},{deep:false}))}for(const sourceRef of[options.activeDatum,options.cursor,options.selection,options.view]){if(sourceRef!==void 0)stops.push(watch(()=>sourceRef.value,()=>{binding.syncControlledValues()},{deep:false}))}const disposeBinding=binding.dispose;const result=Object.freeze({...binding,dispose(){for(const stop of stops.splice(0))stop();disposeBinding()}});if(getCurrentScope()!==void 0)onScopeDispose(result.dispose);return result}class ChartDeclarations{#records=new Map;#publish;#token=0;#scheduled=false;#active=true;#publications=0;#readRecords=0;constructor(publish){this.#publish=publish}register(kind,read){const token=++this.#token;this.#records.set(token,{token,kind,read});this.schedule();let active=true;return Object.freeze({touch:()=>{if(active)this.schedule()},dispose:()=>{if(!active)return;active=false;this.#records.delete(token);this.schedule()}})}publishNow(){if(!this.#active)return;this.#scheduled=false;this.#publish(this.assemble());this.#publications+=1}getDiagnostics(){return Object.freeze({registeredRecords:this.#records.size,publications:this.#publications,readRecords:this.#readRecords})}schedule(){if(!this.#active||this.#scheduled)return;this.#scheduled=true;void nextTick(()=>{if(this.#scheduled)this.publishNow()})}assemble(){const records=[...this.#records.values()].sort((left,right)=>left.token-right.token);this.#readRecords=records.length;const coordinates=records.filter(record=>record.kind==="coordinate");if(coordinates.length!==1)throw new TypeError("ChartRoot requires exactly one ChartCartesian or ChartRadial coordinate.");const coordinate=coordinates[0]?.read();const axes=records.filter(record=>record.kind==="axis").map(record=>record.read());const layers=records.filter(record=>record.kind==="layer").map(record=>record.read());const capabilities=records.filter(record=>record.kind==="view").map(record=>record.read());const navigationRecords=records.filter(record=>record.kind==="navigation");if(navigationRecords.length>1)throw new TypeError("ChartRoot accepts at most one ChartNavigation declaration.");const controls=records.filter(record=>record.kind==="controls").map(record=>record.read());const navigation=navigationRecords[0]?.read();const alternative=controls.includes("built-in")?"built-in":controls.includes("external")?"external":void 0;if(navigation!==void 0&&((navigation.drag??"none")!=="none"||navigation.pinch===true)&&alternative===void 0){throw new TypeError("Chart direct gestures require ChartViewControls or ChartExternalViewControls.")}return Object.freeze({definition:Object.freeze({coordinate:coordinate.kind==="cartesian"?Object.freeze({kind:"cartesian",axes:Object.freeze(axes)}):Object.freeze({kind:"radial"}),layers:Object.freeze(layers)}),viewCapabilities:Object.freeze(capabilities),navigation:Object.freeze({...navigation??{},...alternative===void 0?{}:{controlAlternative:alternative}})})}dispose(){if(!this.#active)return;this.#active=false;this.#scheduled=false;this.#records.clear()}}const chartKey=Symbol("SectileChart");const chartPublicKey=Symbol("SectileChartPublic");const chartOwnerKey=Symbol("SectileChartOwner");const chartAxisKey=Symbol("SectileChartAxis");const chartControlAxisKey=Symbol("SectileChartControlAxis");function useInternalChart(){const context=inject(chartKey);if(context===void 0)throw new TypeError("Chart component must be used inside ChartRoot.");return context}function useChartContext(){const context=inject(chartPublicKey);if(context===void 0)throw new TypeError("useChartContext must be used inside ChartRoot or ChartProvider.");return context}const ChartProviderRuntime=defineComponent({name:"SectileChartProvider",props:{controller:{type:Object,required:true}},setup(props,{slots}){const controller=shallowRef(props.controller);const snapshot=shallowRef(controller.value.getSnapshot());const unsubscribe=controller.value.subscribeSnapshots(next=>{snapshot.value=next});const owner=Object.freeze({controller});const context=Object.freeze({controller,snapshot,dispatch(event){const result=controller.value.dispatch(event);return result.ok?Object.freeze({ok:true,value:result.value.snapshot}):result},applyPatch(patch){return controller.value.applyPatch(patch)}});provide(chartOwnerKey,owner);provide(chartPublicKey,context);onScopeDispose(unsubscribe);return()=>slots["default"]?.({controller:controller.value,snapshot:snapshot.value,state:snapshot.value.state,definition:controller.value.getDefinition()})??null}});const ChartProvider=ChartProviderRuntime;function useChartSelector(selector,options={}){const context=useChartContext();return useChartContextSelector(context,()=>selector(context.snapshot.value?.state??null),options.equals)}function useChartLayerSelector(id,selector,options={}){const context=useChartContext();return useChartContextSelector(context,()=>{const layers=context.controller.value?.getDefinition()?.layers;return selector(layers?.find(layer=>layer.id===id)??null)},options.equals)}function useChartAxisSelector(id,selector,options={}){const context=useChartContext();return useChartContextSelector(context,()=>{const axes=context.controller.value?.getDefinition()?.axes;return selector(axes?.find(axis=>axis.id===id)??null)},options.equals)}function useChartContextSelector(context,read,equals=Object.is){const selected=shallowRef(read());const stop=watch([context.controller,context.snapshot],()=>{const next=read();if(!equals(selected.value,next))selected.value=next},{deep:false,flush:"sync"});onScopeDispose(stop);return selected}const ChartRootRuntime=defineComponent({name:"SectileChartRoot",inheritAttrs:false,props:{limits:{type:Object,default:void 0},modelValue:{type:Object,default:void 0},defaultModelValue:{type:Object,default:void 0},activeDatum:{type:[String,Number],default:void 0},defaultActiveDatum:{type:[String,Number],default:void 0},cursor:{type:[String,Number],default:void 0},defaultCursor:{type:[String,Number],default:void 0},view:{type:Object,default:void 0},defaultView:{type:Object,default:void 0},patch:{type:Object,default:void 0},dom:{type:Object,default:void 0},onError:{type:Function,default:void 0}},emits:{"update:modelValue":_value=>true,"update:activeDatum":_value=>true,"update:cursor":_value=>true,"update:view":_value=>true,command:_command=>true},setup(props,{attrs,emit,expose,slots}){assertRootControlledDefaults(props);const ownerContext=inject(chartOwnerKey,void 0);const ownsController=ownerContext===void 0;const root=shallowRef(null);const canvas=shallowRef(null);const controller=shallowRef(ownerContext?.controller.value??null);const snapshot=shallowRef(controller.value?.getSnapshot()??null);const projection=shallowRef(null);const connection=shallowRef(null);let assembled=null;let unsubscribeCommands=null;let unsubscribeSnapshots=null;let previousState=snapshot.value?.state??null;let mounted=false;let definitionAccepted=false;const controlled=Object.freeze({activeDatum:useControlledStateInvariant("ChartRoot","activeDatum",()=>props.activeDatum),cursor:useControlledStateInvariant("ChartRoot","cursor",()=>props.cursor),selection:useControlledStateInvariant("ChartRoot","modelValue",()=>props.modelValue),view:useControlledStateInvariant("ChartRoot","view",()=>props.view)});const report=error=>{if(props.onError!==void 0)props.onError(error);else throw error};const publishSnapshot=()=>{const owner=controller.value;if(owner===null)return;const current=owner.getSnapshot();if(snapshot.value===current)return;const prior=previousState;snapshot.value=current;previousState=current.state;if(prior===null)return;let failure;if(!controlled.activeDatum&&prior.activeDatum!==current.state.activeDatum){try{emit("update:activeDatum",current.state.activeDatum)}catch(error){failure??=[error]}}if(!controlled.cursor&&prior.cursor!==current.state.cursor){try{emit("update:cursor",current.state.cursor)}catch(error){failure??=[error]}}if(!controlled.selection&&prior.selection!==current.state.selection){try{emit("update:modelValue",current.state.selection)}catch(error){failure??=[error]}}if(!controlled.view&&prior.view!==current.state.view){try{emit("update:view",current.state.view)}catch(error){failure??=[error]}}if(failure!==void 0)throw failure[0]};const publishRootCommand=command=>{emit("command",command)};const publishRootProposal=command=>{if(command.type==="active-change-requested")emit("update:activeDatum",command.id);else if(command.type==="cursor-change-requested")emit("update:cursor",command.id);else if(command.type==="selection-change-requested")emit("update:modelValue",command.selection);else if(command.type==="view-change-requested")emit("update:view",command.view)};const onCommand=command=>{publishVueChartCommand(command,publishSnapshot,publishRootCommand,publishRootProposal)};const connect=()=>{const owner=controller.value;if(!mounted||owner===null||root.value===null||canvas.value===null||connection.value!==null)return;const dom=props.dom??{};try{connection.value=createDOMChart({...dom,root:root.value,canvas:canvas.value,controller:owner,...assembled===null?{}:{navigation:assembled.navigation},onCommand:command=>{dom.onCommand?.(command)},onProjectionChange:next=>{projection.value=next;dom.onProjectionChange?.(next)},onProjectionError:projectionError=>{let failure;try{dom.onProjectionError?.(projectionError)}catch(error){failure??=[error]}try{report(projectionError)}catch(error){failure??=[error]}if(failure!==void 0)throw failure[0]}});projection.value=connection.value.getProjection()}catch(error){report(error)}};const publishDefinition=next=>{assembled=next;definitionAccepted=false;const owner=controller.value;if(!mounted||owner===null)return;const replaced=owner.replaceDefinition(next.definition,next.viewCapabilities);if(!replaced.ok){report(new TypeError(`${replaced.error.code}: ${replaced.error.message}`));return}definitionAccepted=true;publishSnapshot();const navigation=connection.value?.setNavigation(next.navigation);if(navigation!==void 0&&!navigation.ok)report(new TypeError(`${navigation.error.code}: ${navigation.error.message}`));connection.value?.refresh()};const declarations=new ChartDeclarations(next=>{try{publishDefinition(next)}catch(error){report(error)}});const context=Object.freeze({declarations,controller,canvas,dispatch(event){const result=controller.value?.dispatch(event);if(result!==void 0&&!result.ok)report(new TypeError(`${result.error.code}: ${result.error.message}`));publishSnapshot()}});provide(chartKey,context);const publicContext=Object.freeze({controller,snapshot,dispatch(event){const result=controller.value?.dispatch(event);if(result===void 0)return Object.freeze({ok:true,value:null});publishSnapshot();return result.ok?Object.freeze({ok:true,value:result.value.snapshot}):result},applyPatch(patch){const result=controller.value?.applyPatch(patch);if(result===void 0)return Object.freeze({ok:true,value:null});publishSnapshot();return result}});provide(chartPublicKey,publicContext);const syncControlled=()=>{const owner=controller.value;if(owner===null)return;const result=owner.syncControlledValues(Object.freeze({...controlled.activeDatum?{activeDatum:props.activeDatum??null}:{},...controlled.cursor?{cursor:props.cursor??null}:{},...controlled.selection?{selection:props.modelValue}:{},...controlled.view?{view:props.view??null}:{}}));if(!result.ok)report(new TypeError(`${result.error.code}: ${result.error.message}`));publishSnapshot()};watch(()=>[props.activeDatum,props.cursor,props.modelValue,props.view],syncControlled,{deep:false});watch(()=>props.patch,patch=>{if(patch===null||patch===void 0||controller.value===null)return;const result=controller.value.applyPatch(patch);if(!result.ok)report(new TypeError(`${result.error.code}: ${result.error.message}`));publishSnapshot()},{deep:false});watch(()=>props.dom?.accessibilityLabel,label=>{connection.value?.setAccessibilityLabel(label)},{flush:"post"});onMounted(()=>{mounted=true;try{declarations.publishNow();const next=assembled;const controlledValues2=Object.freeze({...controlled.activeDatum?{activeDatum:props.activeDatum??null}:{},...controlled.cursor?{cursor:props.cursor??null}:{},...controlled.selection?{selection:props.modelValue}:{},...controlled.view?{view:props.view??null}:{}});const initialValues=Object.freeze({...!controlled.activeDatum&&props.defaultActiveDatum!==void 0?{activeDatum:props.defaultActiveDatum}:{},...!controlled.cursor&&props.defaultCursor!==void 0?{cursor:props.defaultCursor}:{},...!controlled.selection&&props.defaultModelValue!==void 0?{selection:props.defaultModelValue}:{},...!controlled.view&&props.defaultView!==void 0?{view:props.defaultView}:{}});if(ownerContext===void 0){controller.value=createChartController({definition:next.definition,viewCapabilities:next.viewCapabilities,...props.limits===void 0?{}:{limits:props.limits},...Object.keys(controlledValues2).length===0?{}:{controlled:controlledValues2},...Object.keys(initialValues).length===0?{}:{initialValues}})}else{const borrowed=ownerContext.controller.value;if(!definitionAccepted)return;controller.value=borrowed;if(Object.keys(controlledValues2).length!==0){const synced=borrowed.syncControlledValues(controlledValues2);if(!synced.ok)throw new TypeError(`${synced.error.code}: ${synced.error.message}`)}}snapshot.value=controller.value.getSnapshot();previousState=snapshot.value.state;unsubscribeCommands=controller.value.subscribeCommands(onCommand);unsubscribeSnapshots=controller.value.subscribeSnapshots(()=>{publishSnapshot()});void nextTick(connect)}catch(error){report(error)}});onBeforeUnmount(()=>{mounted=false;declarations.dispose();connection.value?.disconnect();connection.value=null;unsubscribeCommands?.();unsubscribeCommands=null;unsubscribeSnapshots?.();unsubscribeSnapshots=null;if(ownsController)controller.value?.dispose();controller.value=null});expose({controller,getDeclarationDiagnostics:()=>declarations.getDiagnostics(),refresh:()=>connection.value?.refresh()});return()=>h("div",{...attrs,ref:element=>{root.value=element},"data-scope":"chart","data-part":"root"},slots["default"]?.({controller:controller.value,snapshot:snapshot.value,state:snapshot.value?.state??null,projection:projection.value,definition:controller.value?.getDefinition()??null}))}});const ChartRoot=ChartRootRuntime;const coordinateProps={};const ChartCartesian=defineComponent({name:"SectileChartCartesian",props:coordinateProps,setup(_props,{slots}){const context=useInternalChart();const record=context.declarations.register("coordinate",()=>Object.freeze({kind:"cartesian"}));onBeforeUnmount(record.dispose);return()=>slots["default"]?.()??null}});const ChartRadial=defineComponent({name:"SectileChartRadial",props:coordinateProps,setup(_props,{slots}){const context=useInternalChart();const record=context.declarations.register("coordinate",()=>Object.freeze({kind:"radial"}));onBeforeUnmount(record.dispose);return()=>slots["default"]?.()??null}});const axisProps={id:{type:[String,Number],required:true},scale:{type:String,default:"linear"},domain:{type:[String,Object],default:"auto"},field:{type:String,default:void 0},getValue:{type:Function,default:void 0},ticks:{type:Number,default:void 0},label:{type:String,default:void 0},unit:{type:String,default:void 0}};function axisComponent(orientation){return defineComponent({name:orientation==="x"?"SectileChartXAxis":"SectileChartYAxis",props:axisProps,setup(props,{slots}){const context=useInternalChart();const axis=shallowRef(props.id);provide(chartAxisKey,axis);const value=shallowRef(axisDefinition(props,orientation));const record=context.declarations.register("axis",()=>value.value);watch(()=>[props.id,props.scale,props.domain,props.field,props.getValue,props.ticks,props.label,props.unit],()=>{axis.value=props.id;value.value=axisDefinition(props,orientation);record.touch()},{deep:false,flush:"post"});onBeforeUnmount(record.dispose);return()=>slots["default"]?.()??null}})}const ChartXAxis=axisComponent("x");const ChartYAxis=axisComponent("y");function axisDefinition(props,orientation){return defined({id:props["id"],orientation,scale:props["scale"],domain:props["domain"],field:props["field"],getValue:props["getValue"],ticks:props["ticks"],label:props["label"],unit:props["unit"]})}const layerBaseProps={id:{type:[String,Number],required:true},data:{type:Array,required:true},getId:{type:Function,default:void 0},label:{type:String,default:void 0}};const cartesianLayerProps={...layerBaseProps,xAxis:{type:[String,Number],required:true},yAxis:{type:[String,Number],required:true},getX:{type:Function,default:void 0},getY:{type:Function,default:void 0}};function layerComponent(kind,extraProps={}){return defineComponent({name:`SectileChart${kind[0]?.toUpperCase()}${kind.slice(1)}`,props:{...kind==="pie"||kind==="donut"?layerBaseProps:cartesianLayerProps,...extraProps},setup(props){const context=useInternalChart();const value=shallowRef(layerDefinition(props,kind));const record=context.declarations.register("layer",()=>value.value);watch(()=>Object.values(props),()=>{value.value=layerDefinition(props,kind);record.touch()},{deep:false,flush:"post"});onBeforeUnmount(record.dispose);return()=>null}})}const ChartLine=layerComponent("line");const ChartScatter=layerComponent("scatter",{projection:{type:String,default:"raw"}});const ChartBar=layerComponent("bar",{orientation:{type:String,default:"vertical"}});const ChartBars=ChartBar;const ChartHeatmap=layerComponent("heatmap",{getValue:{type:Function,default:void 0},valueField:{type:String,default:void 0},projection:{type:[String,Object],default:"raw"}});const ChartPie=layerComponent("pie",{getValue:{type:Function,default:void 0},valueField:{type:String,default:void 0},getLabel:{type:Function,default:void 0},labelField:{type:String,default:void 0}});const ChartDonut=layerComponent("donut",{getValue:{type:Function,default:void 0},valueField:{type:String,default:void 0},getLabel:{type:Function,default:void 0},labelField:{type:String,default:void 0},innerRadius:{type:Number,default:.5},outerRadius:{type:Number,default:1}});function layerDefinition(props,kind){return defined({kind,id:props["id"],data:props["data"],getId:props["getId"],label:props["label"],xAxis:props["xAxis"],yAxis:props["yAxis"],getX:props["getX"],getY:props["getY"],projection:props["projection"],orientation:props["orientation"],getValue:props["getValue"],valueField:props["valueField"],getLabel:props["getLabel"],labelField:props["labelField"],innerRadius:props["innerRadius"],outerRadius:props["outerRadius"]})}const ChartAxisView=defineComponent({name:"SectileChartAxisView",props:{axis:{type:[String,Number],default:void 0},initial:{type:Object,default:void 0},minimumSpan:{type:Number,default:void 0},maximumSpan:{type:Number,default:void 0},update:{type:String,default:"preserve"}},setup(props){const context=useInternalChart();const inheritedAxis=inject(chartAxisKey,void 0);const read=()=>viewCapability(props,inheritedAxis?.value);const value=shallowRef(read());const record=context.declarations.register("view",()=>value.value);watch(()=>[props.axis,inheritedAxis?.value,props.initial,props.minimumSpan,props.maximumSpan,props.update],()=>{value.value=read();record.touch()},{deep:false,flush:"post"});onBeforeUnmount(record.dispose);return()=>null}});function viewCapability(props,inheritedAxis){const axisID=props["axis"]??inheritedAxis;if(axisID===void 0)throw new TypeError("ChartAxisView requires an axis prop or an enclosing ChartXAxis or ChartYAxis.");return Object.freeze(defined({axisID,initial:props["initial"],minimumSpan:props["minimumSpan"],maximumSpan:props["maximumSpan"],update:props["update"]}))}const ChartNavigation=defineComponent({name:"SectileChartNavigation",props:{axes:{type:Array,default:void 0},drag:{type:String,default:"none"},wheel:{type:String,default:"native"},wheelModifier:{type:String,default:"none"},pinch:{type:Boolean,default:false},keyboard:{type:Boolean,default:false}},setup(props){const context=useInternalChart();const value=shallowRef(navigationDefinition(props));const record=context.declarations.register("navigation",()=>value.value);watch(()=>[props.axes,props.drag,props.wheel,props.wheelModifier,props.pinch,props.keyboard],()=>{const next=navigationDefinition(props);if(sameNavigation(value.value,next))return;value.value=next;record.touch()},{deep:false,flush:"post"});onBeforeUnmount(record.dispose);return()=>null}});function navigationDefinition(props){return Object.freeze(defined({axes:props["axes"],drag:props["drag"],wheel:props["wheel"],wheelModifier:props["wheelModifier"],pinch:props["pinch"],keyboard:props["keyboard"]}))}function sameNavigation(left,right){return sameStableIDs(left.axes,right.axes)&&left.drag===right.drag&&left.wheel===right.wheel&&left.wheelModifier===right.wheelModifier&&left.pinch===right.pinch&&left.keyboard===right.keyboard}function sameStableIDs(left,right){if(left===right)return true;if(left===void 0||right===void 0||left.length!==right.length)return false;for(let index=0;index<left.length;index+=1)if(left[index]!==right[index])return false;return true}const ChartViewControls=defineComponent({name:"SectileChartViewControls",inheritAttrs:false,props:{axis:{type:[String,Number],default:void 0}},setup(props,{attrs,slots}){const context=useInternalChart();const inheritedAxis=inject(chartAxisKey,void 0);const initialAxis=props.axis??inheritedAxis?.value;if(initialAxis===void 0)throw new TypeError("ChartViewControls requires an axis prop or an enclosing ChartXAxis or ChartYAxis.");const axis=shallowRef(initialAxis);provide(chartControlAxisKey,axis);watch(()=>[props.axis,inheritedAxis?.value],()=>{axis.value=props.axis??inheritedAxis?.value},{deep:false,flush:"sync"});const record=context.declarations.register("controls",()=>"built-in");onBeforeUnmount(record.dispose);return()=>h("div",{...attrs,"data-scope":"chart","data-part":"view-controls"},slots["default"]?.())}});const ChartExternalViewControls=defineComponent({name:"SectileChartExternalViewControls",setup(){const context=useInternalChart();const record=context.declarations.register("controls",()=>"external");onBeforeUnmount(record.dispose);return()=>null}});const axisControlProps={axis:{type:[String,Number],default:void 0},label:{type:String,default:void 0}};const ChartPanControl=defineComponent({name:"SectileChartPanControl",inheritAttrs:false,props:{...axisControlProps,direction:{type:String,required:true},step:{type:Number,default:.1}},setup(props,{attrs,slots}){const context=useInternalChart();const inheritedAxis=inject(chartControlAxisKey,inject(chartAxisKey,void 0));const axis=()=>requiredControlAxis(props.axis,inheritedAxis?.value);return()=>h("button",{...attrs,type:"button",disabled:context.controller.value===null,"aria-label":props.label??`Pan ${String(axis())} ${props.direction}`,"data-scope":"chart","data-part":"pan-control",onClick:()=>context.dispatch({type:"pan-axis-view",axisID:axis(),fraction:props.direction==="backward"?-props.step:props.step,phase:"settled"})},slots["default"]?.()??props.direction)}});const ChartZoomControl=defineComponent({name:"SectileChartZoomControl",inheritAttrs:false,props:{...axisControlProps,direction:{type:String,required:true},factor:{type:Number,default:1.25}},setup(props,{attrs,slots}){const context=useInternalChart();const inheritedAxis=inject(chartControlAxisKey,inject(chartAxisKey,void 0));const axis=()=>requiredControlAxis(props.axis,inheritedAxis?.value);return()=>h("button",{...attrs,type:"button",disabled:context.controller.value===null,"aria-label":props.label??`Zoom ${String(axis())} ${props.direction}`,"data-scope":"chart","data-part":"zoom-control",onClick:()=>context.dispatch({type:"zoom-axis-view",axisID:axis(),factor:props.direction==="in"?props.factor:1/props.factor,anchor:.5,phase:"settled"})},slots["default"]?.()??props.direction)}});const ChartResetView=defineComponent({name:"SectileChartResetView",inheritAttrs:false,props:{...axisControlProps,to:{type:String,default:"initial"}},setup(props,{attrs,slots}){const context=useInternalChart();const inheritedAxis=inject(chartControlAxisKey,inject(chartAxisKey,void 0));const axis=()=>requiredControlAxis(props.axis,inheritedAxis?.value);return()=>h("button",{...attrs,type:"button",disabled:context.controller.value===null,"aria-label":props.label??`Reset ${String(axis())} view`,"data-scope":"chart","data-part":"reset-view",onClick:()=>context.dispatch({type:"reset-axis-view",axisID:axis(),to:props.to,phase:"settled"})},slots["default"]?.()??"Reset")}});const ChartPlot=defineComponent({name:"SectileChartPlot",inheritAttrs:false,setup(_props,{attrs,slots}){return()=>h("div",{...attrs,"data-scope":"chart","data-part":"plot"},slots["default"]?.())}});const ChartRenderer=defineComponent({name:"SectileChartRenderer",inheritAttrs:false,setup(_props,{attrs}){const context=useInternalChart();return()=>h("canvas",{...attrs,ref:element=>{context.canvas.value=element},"aria-hidden":"true","data-scope":"chart","data-part":"renderer"})}});const ChartCanvas=ChartRenderer;function semanticMarker(name,part){return defineComponent({name,setup(){useInternalChart();return()=>null}})}const ChartGrid=semanticMarker("SectileChartGrid","grid");const ChartGridLines=ChartGrid;const ChartLegend=semanticMarker("SectileChartLegend","legend");const ChartAxisTicks=semanticMarker("SectileChartAxisTicks","axis-ticks");const ChartTicks=ChartAxisTicks;const chartSuiteKey=Symbol("SectileChartSuite");const chartComponentSuites=new WeakMap;function createChartComponents(controller){if(controller===null||typeof controller!=="object")throw new TypeError("createChartComponents requires a Chart controller.");const cached=chartComponentSuites.get(controller);if(cached!==void 0)return cached;const token=Object.freeze({controller});const suite=Object.freeze({Provider:boundChartProvider(controller,token),Root:boundChartRoot(token),Cartesian:ChartCartesian,Radial:ChartRadial,XAxis:ChartXAxis,YAxis:ChartYAxis,AxisView:ChartAxisView,Line:ChartLine,Scatter:ChartScatter,Bar:ChartBar,Bars:ChartBars,Heatmap:ChartHeatmap,Pie:ChartPie,Donut:ChartDonut,Navigation:ChartNavigation,ViewControls:ChartViewControls,ExternalViewControls:ChartExternalViewControls,PanControl:ChartPanControl,ZoomControl:ChartZoomControl,ResetView:ChartResetView,Plot:ChartPlot,Renderer:ChartRenderer,Canvas:ChartCanvas,Grid:ChartGrid,GridLines:ChartGridLines,Legend:ChartLegend,AxisTicks:ChartAxisTicks,Ticks:ChartTicks});chartComponentSuites.set(controller,suite);return suite}function boundChartProvider(controller,token){return defineComponent({name:"SectileBoundChartProvider",inheritAttrs:false,setup(_props,{attrs,slots}){provide(chartSuiteKey,token);return()=>h(ChartProviderRuntime,{...attrs,controller},slots)}})}function boundChartRoot(token){return defineComponent({name:"SectileBoundChartRoot",inheritAttrs:false,setup(_props,{attrs,slots}){if(inject(chartSuiteKey,void 0)!==token){throw new TypeError("Controller-bound Chart.Root requires its matching Chart.Provider.")}return()=>h(ChartRootRuntime,attrs,slots)}})}function requiredControlAxis(axis,inheritedAxis){const resolved=axis??inheritedAxis;if(resolved===void 0)throw new TypeError("Chart view control requires an axis prop or an enclosing axis control scope.");return resolved}function publishVueChartCommand(command,publishSnapshot,publishCommand,publishProposal,publishChange){let failure;try{publishSnapshot()}catch(error){failure??=[error]}try{publishCommand(command)}catch(error){failure??=[error]}try{publishProposal(command)}catch(error){failure??=[error]}if(publishChange!==void 0){try{publishChange(command)}catch(error){failure??=[error]}}if(failure!==void 0)throw failure[0]}function bindController(controller,options,owned){const snapshot=shallowRef(controller.getSnapshot());const projection=shallowRef(null);const connection=shallowRef(null);let active=true;const controlledFlags={activeDatum:options.activeDatum!==void 0,cursor:options.cursor!==void 0,selection:options.selection!==void 0,view:options.view!==void 0};const publish=()=>{if(!active)return;const previous=snapshot.value;const current=controller.getSnapshot();if(current===previous)return;snapshot.value=current;let failure;if(!controlledFlags.activeDatum&&current.state.activeDatum!==previous.state.activeDatum){try{options.onActiveDatumChange?.(current.state.activeDatum)}catch(error){failure??=[error]}}if(!controlledFlags.cursor&&current.state.cursor!==previous.state.cursor){try{options.onCursorChange?.(current.state.cursor)}catch(error){failure??=[error]}}if(!controlledFlags.selection&&current.state.selection!==previous.state.selection){try{options.onSelectionChange?.(current.state.selection)}catch(error){failure??=[error]}}if(!controlledFlags.view&&current.state.view!==previous.state.view){try{options.onViewChange?.(current.state.view)}catch(error){failure??=[error]}}if(failure!==void 0)throw failure[0]};const publishComposableCommand=command=>{options.onCommand?.(command)};const publishComposableProposal=command=>{if(command.type==="active-change-requested"&&options.activeDatum!==void 0)options.activeDatum.value=command.id;else if(command.type==="cursor-change-requested"&&options.cursor!==void 0)options.cursor.value=command.id;else if(command.type==="selection-change-requested"&&options.selection!==void 0)options.selection.value=command.selection;else if(command.type==="view-change-requested"&&options.view!==void 0)options.view.value=command.view};const publishComposableChange=command=>{if(command.type==="active-change-requested")options.onActiveDatumChange?.(command.id);else if(command.type==="cursor-change-requested")options.onCursorChange?.(command.id);else if(command.type==="selection-change-requested")options.onSelectionChange?.(command.selection);else if(command.type==="view-change-requested")options.onViewChange?.(command.view)};const unsubscribeCommands=controller.subscribeCommands(command=>{publishVueChartCommand(command,publish,publishComposableCommand,publishComposableProposal,publishComposableChange)});const unsubscribeSnapshots=controller.subscribeSnapshots(()=>{publish()});const result={controller,snapshot,projection,connection,replaceModel(model,expectedRevision){const value=controller.replaceModel(model,expectedRevision);publish();return value},replaceDefinition(definition,viewCapabilities,expectedRevision){const value=controller.replaceDefinition(definition,viewCapabilities,expectedRevision);publish();return value},applyPatch(patch,expectedRevision){const value=controller.applyPatch(patch,expectedRevision);publish();return value},dispatch(event,expectedRevision){const value=controller.dispatch(event,expectedRevision);publish();return value},syncControlledValues(){const value=controller.syncControlledValues(controlledValues(options));publish();return value},dispose(){if(!active)return;active=false;connection.value?.disconnect();connection.value=null;unsubscribeCommands();unsubscribeSnapshots();if(owned)controller.dispose()}};return Object.freeze(result)}function controlledValues(options){return Object.freeze({...options.activeDatum===void 0?{}:{activeDatum:options.activeDatum.value},...options.cursor===void 0?{}:{cursor:options.cursor.value},...options.selection===void 0?{}:{selection:options.selection.value},...options.view===void 0?{}:{view:options.view.value}})}function defaultValues(options){const values=Object.freeze({...options.activeDatum!==void 0||options.defaultActiveDatum===void 0?{}:{activeDatum:options.defaultActiveDatum},...options.cursor!==void 0||options.defaultCursor===void 0?{}:{cursor:options.defaultCursor},...options.selection!==void 0||options.defaultSelection===void 0?{}:{selection:options.defaultSelection},...options.view!==void 0||options.defaultView===void 0?{}:{view:options.defaultView}});return Object.keys(values).length===0?{}:{initialValues:values}}function assertControlledDefaults(options){if(options.activeDatum!==void 0&&options.defaultActiveDatum!==void 0||options.cursor!==void 0&&options.defaultCursor!==void 0||options.selection!==void 0&&options.defaultSelection!==void 0||options.view!==void 0&&options.defaultView!==void 0){throw new TypeError("Chart controlled values and their default counterparts are mutually exclusive.")}}function assertRootControlledDefaults(props){if(props["modelValue"]!==void 0&&props["defaultModelValue"]!==void 0||props["activeDatum"]!==void 0&&props["defaultActiveDatum"]!==void 0||props["cursor"]!==void 0&&props["defaultCursor"]!==void 0||props["view"]!==void 0&&props["defaultView"]!==void 0){throw new TypeError("ChartRoot controlled props and their default counterparts are mutually exclusive.")}}function defined(value){return Object.fromEntries(Object.entries(value).filter(([,entry])=>entry!==void 0))}export{ChartAxisTicks,ChartAxisView,ChartBar,ChartBars,ChartCanvas,ChartCartesian,ChartDonut,ChartExternalViewControls,ChartGrid,ChartGridLines,ChartHeatmap,ChartLegend,ChartLine,ChartNavigation,ChartPanControl,ChartPie,ChartPlot,ChartProvider,ChartRadial,ChartRenderer,ChartResetView,ChartRoot,ChartScatter,ChartTicks,ChartViewControls,ChartXAxis,ChartYAxis,ChartZoomControl,createChartComponents,useChart,useChartAxisSelector,useChartContext,useChartLayerSelector,useChartSelector};
2
2
  //# sourceMappingURL=chart.js.map
package/dist/chart.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/chart.ts"],"mappings":"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","names":["controlledValues"],"file":"chart.js"}
1
+ {"version":3,"sources":["../src/chart.ts"],"mappings":"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","names":["controlledValues"],"file":"chart.js"}
@@ -1,2 +1,2 @@
1
- import{Fragment,Teleport,computed,defineComponent,h,inject,mergeProps,nextTick,onBeforeUnmount,provide,ref,shallowRef,watch}from"vue";import{Primitive}from"../primitive.js";import{useHostDirection,useHostId,useHostPortalTarget}from"../host-provider.js";import{usePresence}from"./presence.js";import{useControlledStateInvariant}from"./controlled-state.js";function createPopupComponents(config){const contextKey=Symbol(`Sectile${config.scope}Root`);const useRoot=part=>{const context=inject(contextKey);if(context===void 0)throw new TypeError(`${part} must be used inside ${config.scope} Root.`);return context};const primitiveProps={as:{type:[String,Object,Function],default:"div"},asChild:{type:Boolean,default:false}};const buttonProps={as:{type:[String,Object,Function],default:"button"},asChild:{type:Boolean,default:false}};const Root=defineComponent({name:`Sectile${pascal(config.scope)}Root`,inheritAttrs:false,props:{open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:false},disabled:{type:Boolean,default:false},modal:{type:Boolean,default:config.modal},label:{type:String,default:void 0},initialFocus:{type:Object,default:void 0},autoFocus:{type:Boolean,default:true},restoreFocus:{type:Boolean,default:true},trapFocus:{type:Boolean,default:config.modal},closeOnInteractOutside:{type:Boolean,default:config.closeOnInteractOutside??false},interactOutsideExclusions:{type:Array,default:void 0},side:{type:String,default:config.defaultSide??"bottom"},position:{type:Boolean,default:true},swipeToDismiss:{type:Boolean,default:true},swipeThreshold:{type:Number,default:80},swipeVelocityThreshold:{type:Number,default:.5},align:{type:String,default:"center"},sideOffset:{type:Number,default:8},collisionPadding:{type:[Number,Object],default:8},collisionBoundary:{type:[String,Object],default:void 0},avoidCollisions:{type:Boolean,default:true},arrowPadding:{type:Number,default:8},hideWhenDetached:{type:Boolean,default:false},strategy:{type:String,default:"absolute"},tracking:{type:String,default:"events"},unmountOnExit:{type:Boolean,default:false}},emits:{"update:open":_open=>true,interactOutside:_event=>true},slots:Object,setup(props,{emit,slots}){const controlled=useControlledStateInvariant(`${config.scope}Root`,"open",()=>props.open);const localOpen=ref(controlled?props.open:props.defaultOpen);const trigger=shallowRef();const anchor=shallowRef();const arrow=shallowRef();const overlay=shallowRef();const handle=shallowRef();const content=shallowRef();const connection=shallowRef();const id=useHostId();const contentID=`sectile-${config.scope}-${id}-content`;const titleID=`sectile-${config.scope}-${id}-title`;const descriptionID=`sectile-${config.scope}-${id}-description`;const open=computed(()=>localOpen.value);const disabled=computed(()=>props.disabled);const modal=computed(()=>props.modal);const unmountOnExit=computed(()=>props.unmountOnExit);const label=computed(()=>props.label);const side=computed(()=>props.side);const position=computed(()=>props.position);const strategy=computed(()=>props.strategy);const update=()=>{if(connection.value===void 0)return;void connection.value.getSnapshot().revision};const disconnect=()=>{connection.value?.disconnect();connection.value=void 0};const connect=()=>{if(content.value===void 0)return;disconnect();connection.value=config.create({root:content.value,...trigger.value===void 0?{}:{trigger:trigger.value},...anchor.value===void 0?{}:{anchor:anchor.value},...arrow.value===void 0?{}:{arrow:arrow.value},...overlay.value===void 0?{}:{overlay:overlay.value},...handle.value===void 0?{}:{handle:handle.value},...controlled?{open:props.open}:{defaultOpen:localOpen.value},disabled:props.disabled,modal:props.modal,...props.label===void 0?{labelledBy:titleID}:{label:props.label},describedBy:descriptionID,...props.initialFocus===void 0?{}:{initialFocus:props.initialFocus},autoFocus:props.autoFocus,restoreFocus:props.restoreFocus,trapFocus:props.trapFocus,closeOnInteractOutside:props.closeOnInteractOutside,...props.interactOutsideExclusions===void 0?{}:{interactOutsideExclusions:props.interactOutsideExclusions},side:props.side,...config.positioned===true?{position:props.position}:{},swipeToDismiss:props.swipeToDismiss,swipeThreshold:props.swipeThreshold,swipeVelocityThreshold:props.swipeVelocityThreshold,align:props.align,sideOffset:props.sideOffset,collisionPadding:props.collisionPadding,...props.collisionBoundary===void 0?{}:{collisionBoundary:props.collisionBoundary},avoidCollisions:props.avoidCollisions,arrowPadding:props.arrowPadding,hideWhenDetached:props.hideWhenDetached,strategy:props.strategy,tracking:props.tracking,manageVisibility:false,onOpenChange:next=>{if(!controlled)localOpen.value=next;emit("update:open",next)},onInteractOutside:event=>{emit("interactOutside",event)},onUpdate:update});update()};let connectScheduled=false;let destroyed=false;const scheduleConnect=()=>{if(connectScheduled||destroyed||props.unmountOnExit&&!localOpen.value)return;connectScheduled=true;void nextTick(()=>{connectScheduled=false;if(!destroyed)connect()})};const elements={trigger,anchor,arrow,overlay,handle,content};const registerElement=(part,element)=>{const target=elements[part];if(target.value===element)return;target.value=element;if(content.value===void 0)disconnect();else scheduleConnect()};const activateTrigger=event=>{if(event?.defaultPrevented===true||connection.value!==void 0||props.disabled||localOpen.value)return;if(!controlled)localOpen.value=true;emit("update:open",true)};const deactivateTrigger=event=>{if(event?.defaultPrevented===true||connection.value!==void 0||!localOpen.value)return;if(!controlled)localOpen.value=false;emit("update:open",false)};watch(()=>props.open,next=>{if(!controlled||next===void 0)return;if(connection.value===void 0){localOpen.value=next;return}const result=connection.value.syncControlledValue(next);if(!result.ok)throw new TypeError(`${config.scope} controlled open state could not be synchronized.`);localOpen.value=next});watch([()=>props.disabled,()=>props.modal,()=>props.label,()=>props.initialFocus,()=>props.autoFocus,()=>props.restoreFocus,()=>props.trapFocus,()=>props.closeOnInteractOutside,()=>props.interactOutsideExclusions,()=>props.side,()=>props.position,()=>props.swipeToDismiss,()=>props.swipeThreshold,()=>props.swipeVelocityThreshold,()=>props.align,()=>props.sideOffset,()=>props.collisionPadding,()=>props.collisionBoundary,()=>props.avoidCollisions,()=>props.arrowPadding,()=>props.hideWhenDetached,()=>props.strategy,()=>props.tracking],connect);onBeforeUnmount(()=>{destroyed=true;disconnect()});provide(contextKey,{open,disabled,modal,unmountOnExit,label,contentID,titleID,descriptionID,side,position,strategy,registerElement,activateTrigger,deactivateTrigger,close:()=>{connection.value?.handleEvent("close")},refresh:()=>{connection.value?.refresh()}});return()=>h(Fragment,null,slots["default"]?.({open:open.value,disabled:props.disabled})??[])}});const Trigger=defineComponent({name:`Sectile${pascal(config.scope)}Trigger`,inheritAttrs:false,props:buttonProps,setup(props,{attrs,slots}){const root=useRoot("Trigger");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:element=>{root.registerElement("trigger",element instanceof HTMLElement?element:void 0)},...config.triggerMode==="click"?{onClick:root.activateTrigger}:{onFocus:root.activateTrigger,onBlur:root.deactivateTrigger,onMouseenter:root.activateTrigger,onMouseleave:root.deactivateTrigger},type:props.as==="button"?"button":void 0,disabled:root.disabled.value,"aria-haspopup":config.role==="tooltip"?void 0:"dialog","aria-expanded":config.triggerMode==="click"?String(root.open.value):void 0,"aria-controls":config.role==="tooltip"?void 0:root.contentID,"aria-describedby":config.role==="tooltip"?root.contentID:void 0,"data-scope":config.scope,"data-part":"trigger","data-state":root.open.value?"open":"closed"}),slots)}});const Content=defineComponent({name:`Sectile${pascal(config.scope)}Content`,inheritAttrs:false,props:primitiveProps,setup(props,{attrs,slots}){const root=useRoot("Content");const direction=useHostDirection();const element=shallowRef();const present=usePresence(root.open,element);watch(present,async()=>{await nextTick();root.refresh()},{flush:"post"});return()=>{if(root.unmountOnExit.value&&!present.value)return null;const exiting=!root.open.value&&present.value;return h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:candidate=>{const node=candidate instanceof HTMLElement?candidate:void 0;element.value=node;root.registerElement("content",node)},id:root.contentID,role:config.role,hidden:!present.value,dir:direction.value,...exiting?{inert:true,"aria-hidden":"true"}:{},style:config.positioned===true&&root.position.value?{position:root.strategy.value,visibility:element.value===void 0?"hidden":void 0}:void 0,"aria-modal":config.role==="tooltip"?void 0:String(root.modal.value),"aria-label":root.label.value,"aria-labelledby":root.label.value===void 0?root.titleID:void 0,"aria-describedby":root.descriptionID,"data-scope":config.scope,"data-part":"content","data-state":root.open.value?"open":"closed","data-side":config.directional===true?root.side.value:void 0,"data-swipe-direction":config.directional===true?swipeDirection(root.side.value):void 0}),slots)}}});const Anchor=defineComponent({name:`Sectile${pascal(config.scope)}Anchor`,inheritAttrs:false,props:primitiveProps,setup(props,{attrs,slots}){const root=useRoot("Anchor");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:element=>{root.registerElement("anchor",element instanceof HTMLElement?element:void 0)},"data-scope":config.scope,"data-part":"anchor"}),slots)}});const Arrow=defineComponent({name:`Sectile${pascal(config.scope)}Arrow`,inheritAttrs:false,props:primitiveProps,setup(props,{attrs,slots}){const root=useRoot("Arrow");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:element=>{root.registerElement("arrow",element instanceof HTMLElement?element:void 0)},"aria-hidden":"true","data-scope":config.scope,"data-part":"arrow"}),slots)}});const Overlay=defineComponent({name:`Sectile${pascal(config.scope)}Overlay`,inheritAttrs:false,props:primitiveProps,setup(props,{attrs,slots}){const root=useRoot("Overlay");const element=shallowRef();const present=usePresence(root.open,element);return()=>{if(root.unmountOnExit.value&&!present.value)return null;const exiting=!root.open.value&&present.value;return h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:candidate=>{const node=candidate instanceof HTMLElement?candidate:void 0;element.value=node;root.registerElement("overlay",node)},hidden:!present.value,"aria-hidden":"true",...exiting?{inert:true}:{},"data-scope":config.scope,"data-part":"overlay","data-state":root.open.value?"open":"closed","data-side":config.directional===true?root.side.value:void 0,"data-swipe-direction":config.directional===true?swipeDirection(root.side.value):void 0}),slots)}}});const Handle=defineComponent({name:`Sectile${pascal(config.scope)}Handle`,inheritAttrs:false,props:primitiveProps,setup(props,{attrs,slots}){const root=useRoot("Handle");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:candidate=>{root.registerElement("handle",candidate instanceof HTMLElement?candidate:void 0)},"aria-hidden":"true","data-scope":config.scope,"data-part":"handle","data-state":root.open.value?"open":"closed","data-side":config.directional===true?root.side.value:void 0,"data-swipe-direction":config.directional===true?swipeDirection(root.side.value):void 0}),slots)}});const Title=createLabelPart("Title","title",root=>root.titleID);const Description=createLabelPart("Description","description",root=>root.descriptionID);const Close=defineComponent({name:`Sectile${pascal(config.scope)}Close`,inheritAttrs:false,props:buttonProps,setup(props,{attrs,slots}){const root=useRoot("Close");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,type:props.as==="button"?"button":void 0,"data-scope":config.scope,"data-part":"close",onClick:root.close}),slots)}});const Portal=defineComponent({name:`Sectile${pascal(config.scope)}Portal`,inheritAttrs:false,props:{to:{type:[String,Object],default:void 0},disabled:{type:Boolean,default:false},defer:{type:Boolean,default:false}},setup(props,{slots}){const portalTarget=useHostPortalTarget();return()=>h(Teleport,{to:props.to??portalTarget.value??"body",disabled:props.disabled,defer:props.defer},slots["default"]?.())}});function createLabelPart(name,part,id){return defineComponent({name:`Sectile${pascal(config.scope)}${name}`,inheritAttrs:false,props:primitiveProps,setup(props,{attrs,slots}){const root=useRoot(name);return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,id:id(root),"data-scope":config.scope,"data-part":part}),slots)}})}return Object.freeze({Root,Trigger,Anchor,Portal,Overlay,Content,Handle,Title,Description,Close,Arrow})}function pascal(value){return value.split("-").map(part=>part[0]?.toUpperCase()+part.slice(1)).join("")}function swipeDirection(side){return side==="top"?"up":side==="bottom"?"down":side}export{createPopupComponents};
1
+ import{Fragment,Teleport,computed,defineComponent,h,inject,mergeProps,nextTick,onBeforeUnmount,provide,ref,shallowRef,watch}from"vue";import{Primitive}from"../primitive.js";import{useHostDirection,useHostId,useHostPortalTarget}from"../host-provider.js";import{usePresence}from"./presence.js";import{useControlledStateInvariant}from"./controlled-state.js";function createPopupComponents(config){const contextKey=Symbol(`Sectile${config.scope}Root`);const useRoot=part=>{const context=inject(contextKey);if(context===void 0)throw new TypeError(`${part} must be used inside ${config.scope} Root.`);return context};const primitiveProps={as:{type:[String,Object,Function],default:"div"},asChild:{type:Boolean,default:false}};const buttonProps={as:{type:[String,Object,Function],default:"button"},asChild:{type:Boolean,default:false}};const Root=defineComponent({name:`Sectile${pascal(config.scope)}Root`,inheritAttrs:false,props:{open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:false},disabled:{type:Boolean,default:false},modal:{type:Boolean,default:config.modal},label:{type:String,default:void 0},initialFocus:{type:Object,default:void 0},autoFocus:{type:Boolean,default:true},restoreFocus:{type:Boolean,default:true},trapFocus:{type:Boolean,default:config.modal},closeOnInteractOutside:{type:Boolean,default:config.closeOnInteractOutside??false},interactOutsideExclusions:{type:Array,default:void 0},side:{type:String,default:config.defaultSide??"bottom"},position:{type:Boolean,default:true},swipeToDismiss:{type:Boolean,default:true},swipeThreshold:{type:Number,default:80},swipeVelocityThreshold:{type:Number,default:.5},align:{type:String,default:"center"},sideOffset:{type:Number,default:8},collisionPadding:{type:[Number,Object],default:8},collisionBoundary:{type:[String,Object],default:void 0},avoidCollisions:{type:Boolean,default:true},arrowPadding:{type:Number,default:8},hideWhenDetached:{type:Boolean,default:false},strategy:{type:String,default:"absolute"},tracking:{type:String,default:"events"},unmountOnExit:{type:Boolean,default:false}},emits:{"update:open":_open=>true,interactOutside:_event=>true},slots:Object,setup(props,{emit,slots}){const controlled=useControlledStateInvariant(`${config.scope}Root`,"open",()=>props.open);const localOpen=ref(controlled?props.open:props.defaultOpen);const trigger=shallowRef();const anchor=shallowRef();const arrow=shallowRef();const overlay=shallowRef();const handle=shallowRef();const content=shallowRef();const connection=shallowRef();const id=useHostId();const contentID=`sectile-${config.scope}-${id}-content`;const titleID=`sectile-${config.scope}-${id}-title`;const descriptionID=`sectile-${config.scope}-${id}-description`;const open=computed(()=>localOpen.value);const disabled=computed(()=>props.disabled);const modal=computed(()=>props.modal);const unmountOnExit=computed(()=>props.unmountOnExit);const label=computed(()=>props.label);const side=computed(()=>props.side);const position=computed(()=>props.position);const strategy=computed(()=>props.strategy);const update=()=>{if(connection.value===void 0)return;void connection.value.getSnapshot().revision};const disconnect=()=>{connection.value?.disconnect();connection.value=void 0};const connect=()=>{if(content.value===void 0)return;disconnect();connection.value=config.create({root:content.value,...trigger.value===void 0?{}:{trigger:trigger.value},...anchor.value===void 0?{}:{anchor:anchor.value},...arrow.value===void 0?{}:{arrow:arrow.value},...overlay.value===void 0?{}:{overlay:overlay.value},...handle.value===void 0?{}:{handle:handle.value},...controlled?{open:props.open}:{defaultOpen:localOpen.value},disabled:props.disabled,modal:props.modal,...props.label===void 0?{labelledBy:titleID}:{label:props.label},describedBy:descriptionID,...props.initialFocus===void 0?{}:{initialFocus:props.initialFocus},autoFocus:props.autoFocus,restoreFocus:props.restoreFocus,trapFocus:props.trapFocus,closeOnInteractOutside:props.closeOnInteractOutside,...props.interactOutsideExclusions===void 0?{}:{interactOutsideExclusions:props.interactOutsideExclusions},side:props.side,...config.positioned===true?{position:props.position}:{},swipeToDismiss:props.swipeToDismiss,swipeThreshold:props.swipeThreshold,swipeVelocityThreshold:props.swipeVelocityThreshold,align:props.align,sideOffset:props.sideOffset,collisionPadding:props.collisionPadding,...props.collisionBoundary===void 0?{}:{collisionBoundary:props.collisionBoundary},avoidCollisions:props.avoidCollisions,arrowPadding:props.arrowPadding,hideWhenDetached:props.hideWhenDetached,strategy:props.strategy,tracking:props.tracking,manageVisibility:false,onOpenChange:next=>{if(!controlled)localOpen.value=next;emit("update:open",next)},onInteractOutside:event=>{emit("interactOutside",event)},onUpdate:update});update()};let connectScheduled=false;let destroyed=false;const scheduleConnect=()=>{if(connectScheduled||destroyed||props.unmountOnExit&&!localOpen.value)return;connectScheduled=true;void nextTick(()=>{connectScheduled=false;if(!destroyed)connect()})};const elements={trigger,anchor,arrow,overlay,handle,content};const registerElement=(part,element)=>{const target=elements[part];if(target.value===element)return;target.value=element;if(content.value===void 0)disconnect();else scheduleConnect()};const activateTrigger=event=>{if(event?.defaultPrevented===true||connection.value!==void 0||props.disabled||localOpen.value)return;if(!controlled)localOpen.value=true;emit("update:open",true)};const deactivateTrigger=event=>{if(event?.defaultPrevented===true||connection.value!==void 0||!localOpen.value)return;if(!controlled)localOpen.value=false;emit("update:open",false)};watch(()=>props.open,next=>{if(!controlled||next===void 0)return;if(connection.value===void 0){localOpen.value=next;return}const result=connection.value.syncControlledValue(next);if(!result.ok)throw new TypeError(`${config.scope} controlled open state could not be synchronized.`);localOpen.value=next});watch([()=>props.disabled,()=>props.modal,()=>props.label,()=>props.initialFocus,()=>props.autoFocus,()=>props.restoreFocus,()=>props.trapFocus,()=>props.closeOnInteractOutside,()=>props.interactOutsideExclusions,()=>props.side,()=>props.position,()=>props.swipeToDismiss,()=>props.swipeThreshold,()=>props.swipeVelocityThreshold,()=>props.align,()=>props.sideOffset,()=>props.collisionPadding,()=>props.collisionBoundary,()=>props.avoidCollisions,()=>props.arrowPadding,()=>props.hideWhenDetached,()=>props.strategy,()=>props.tracking],connect);onBeforeUnmount(()=>{destroyed=true;disconnect()});provide(contextKey,{open,disabled,modal,unmountOnExit,label,contentID,titleID,descriptionID,side,position,strategy,registerElement,activateTrigger,deactivateTrigger,close:()=>{connection.value?.handleEvent("close")},refresh:()=>{connection.value?.refresh()}});return()=>h(Fragment,null,slots["default"]?.({open:open.value,disabled:props.disabled})??[])}});const Trigger=defineComponent({name:`Sectile${pascal(config.scope)}Trigger`,inheritAttrs:false,props:buttonProps,setup(props,{attrs,slots}){const root=useRoot("Trigger");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:element=>{root.registerElement("trigger",element instanceof HTMLElement?element:void 0)},...config.triggerMode==="click"?{onClick:root.activateTrigger}:{onFocus:root.activateTrigger,onBlur:root.deactivateTrigger,onMouseenter:root.activateTrigger,onMouseleave:root.deactivateTrigger},type:props.as==="button"?"button":void 0,disabled:root.disabled.value,"aria-haspopup":config.role==="tooltip"?void 0:"dialog","aria-expanded":config.triggerMode==="click"?String(root.open.value):void 0,"aria-controls":config.role==="tooltip"?void 0:root.contentID,"aria-describedby":config.role==="tooltip"?root.contentID:void 0,"data-scope":config.scope,"data-part":"trigger","data-state":root.open.value?"open":"closed"}),slots)}});const Content=defineComponent({name:`Sectile${pascal(config.scope)}Content`,inheritAttrs:false,props:primitiveProps,setup(props,{attrs,slots}){const root=useRoot("Content");const direction=useHostDirection();const element=shallowRef();const retainedReopen=shallowRef(0);const present=usePresence(root.open,element,()=>{retainedReopen.value+=1});const refreshAfterRender=async()=>{await nextTick();root.refresh()};watch(present,refreshAfterRender,{flush:"post"});watch(retainedReopen,refreshAfterRender,{flush:"post"});return()=>{if(root.unmountOnExit.value&&!present.value)return null;const exiting=!root.open.value&&present.value;return h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:candidate=>{const node=candidate instanceof HTMLElement?candidate:void 0;element.value=node;root.registerElement("content",node)},id:root.contentID,role:config.role,hidden:!present.value,dir:direction.value,...exiting?{inert:true,"aria-hidden":"true"}:{},style:config.positioned===true&&root.position.value?{position:root.strategy.value,visibility:element.value===void 0?"hidden":void 0}:void 0,"aria-modal":config.role==="tooltip"?void 0:String(root.modal.value),"aria-label":root.label.value,"aria-labelledby":root.label.value===void 0?root.titleID:void 0,"aria-describedby":root.descriptionID,"data-scope":config.scope,"data-part":"content","data-state":root.open.value?"open":"closed","data-side":config.directional===true?root.side.value:void 0,"data-swipe-direction":config.directional===true?swipeDirection(root.side.value):void 0}),slots)}}});const Anchor=defineComponent({name:`Sectile${pascal(config.scope)}Anchor`,inheritAttrs:false,props:primitiveProps,setup(props,{attrs,slots}){const root=useRoot("Anchor");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:element=>{root.registerElement("anchor",element instanceof HTMLElement?element:void 0)},"data-scope":config.scope,"data-part":"anchor"}),slots)}});const Arrow=defineComponent({name:`Sectile${pascal(config.scope)}Arrow`,inheritAttrs:false,props:primitiveProps,setup(props,{attrs,slots}){const root=useRoot("Arrow");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:element=>{root.registerElement("arrow",element instanceof HTMLElement?element:void 0)},"aria-hidden":"true","data-scope":config.scope,"data-part":"arrow"}),slots)}});const Overlay=defineComponent({name:`Sectile${pascal(config.scope)}Overlay`,inheritAttrs:false,props:primitiveProps,setup(props,{attrs,slots}){const root=useRoot("Overlay");const element=shallowRef();const present=usePresence(root.open,element);return()=>{if(root.unmountOnExit.value&&!present.value)return null;const exiting=!root.open.value&&present.value;return h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:candidate=>{const node=candidate instanceof HTMLElement?candidate:void 0;element.value=node;root.registerElement("overlay",node)},hidden:!present.value,"aria-hidden":"true",...exiting?{inert:true}:{},"data-scope":config.scope,"data-part":"overlay","data-state":root.open.value?"open":"closed","data-side":config.directional===true?root.side.value:void 0,"data-swipe-direction":config.directional===true?swipeDirection(root.side.value):void 0}),slots)}}});const Handle=defineComponent({name:`Sectile${pascal(config.scope)}Handle`,inheritAttrs:false,props:primitiveProps,setup(props,{attrs,slots}){const root=useRoot("Handle");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:candidate=>{root.registerElement("handle",candidate instanceof HTMLElement?candidate:void 0)},"aria-hidden":"true","data-scope":config.scope,"data-part":"handle","data-state":root.open.value?"open":"closed","data-side":config.directional===true?root.side.value:void 0,"data-swipe-direction":config.directional===true?swipeDirection(root.side.value):void 0}),slots)}});const Title=createLabelPart("Title","title",root=>root.titleID);const Description=createLabelPart("Description","description",root=>root.descriptionID);const Close=defineComponent({name:`Sectile${pascal(config.scope)}Close`,inheritAttrs:false,props:buttonProps,setup(props,{attrs,slots}){const root=useRoot("Close");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,type:props.as==="button"?"button":void 0,"data-scope":config.scope,"data-part":"close",onClick:root.close}),slots)}});const Portal=defineComponent({name:`Sectile${pascal(config.scope)}Portal`,inheritAttrs:false,props:{to:{type:[String,Object],default:void 0},disabled:{type:Boolean,default:false},defer:{type:Boolean,default:false}},setup(props,{slots}){const portalTarget=useHostPortalTarget();return()=>h(Teleport,{to:props.to??portalTarget.value??"body",disabled:props.disabled,defer:props.defer},slots["default"]?.())}});function createLabelPart(name,part,id){return defineComponent({name:`Sectile${pascal(config.scope)}${name}`,inheritAttrs:false,props:primitiveProps,setup(props,{attrs,slots}){const root=useRoot(name);return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,id:id(root),"data-scope":config.scope,"data-part":part}),slots)}})}return Object.freeze({Root,Trigger,Anchor,Portal,Overlay,Content,Handle,Title,Description,Close,Arrow})}function pascal(value){return value.split("-").map(part=>part[0]?.toUpperCase()+part.slice(1)).join("")}function swipeDirection(side){return side==="top"?"up":side==="bottom"?"down":side}export{createPopupComponents};
2
2
  //# sourceMappingURL=popup.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/internal/popup.ts"],"mappings":"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","names":[],"file":"popup.js"}
1
+ {"version":3,"sources":["../../src/internal/popup.ts"],"mappings":"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","names":[],"file":"popup.js"}
@@ -1,2 +1,2 @@
1
1
  import { type ComputedRef, type ShallowRef } from 'vue';
2
- export declare function usePresence(open: ComputedRef<boolean>, element: ShallowRef<HTMLElement | undefined>): ShallowRef<boolean>;
2
+ export declare function usePresence(open: ComputedRef<boolean>, element: ShallowRef<HTMLElement | undefined>, onRetainedReopen?: () => void): ShallowRef<boolean>;
@@ -1,2 +1,2 @@
1
- import{onBeforeUnmount,shallowRef,watch}from"vue";import{createPresence}from"@sectile/dom/presence";function usePresence(open,element){const present=shallowRef(open.value);const initialElement=element.value;const connection=createPresence({open:open.value,...initialElement===void 0?{}:{element:initialElement},onPresentChange:next=>{present.value=next}});watch(open,next=>{if(next)connection.update(true,element.value)},{flush:"sync"});watch([open,element],([next,node])=>{connection.update(next,node)},{flush:"post"});onBeforeUnmount(()=>{connection.disconnect()});return present}export{usePresence};
1
+ import{onBeforeUnmount,shallowRef,watch}from"vue";import{createPresence}from"@sectile/dom/presence";function usePresence(open,element,onRetainedReopen){const present=shallowRef(open.value);const initialElement=element.value;const connection=createPresence({open:open.value,...initialElement===void 0?{}:{element:initialElement},onPresentChange:next=>{present.value=next}});watch(open,(next,previous)=>{if(!next)return;const retainedReopen=previous===false&&connection.getPresent();connection.update(true,element.value);if(retainedReopen)onRetainedReopen?.()},{flush:"sync"});watch([open,element],([next,node])=>{connection.update(next,node)},{flush:"post"});onBeforeUnmount(()=>{connection.disconnect()});return present}export{usePresence};
2
2
  //# sourceMappingURL=presence.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/internal/presence.ts"],"mappings":"AAAA,OAAS,gBAAiB,WAAY,UAAgD,MACtF,OAAS,mBAAsB,wBAEzB,SAAU,YAAY,KAA4B,QAA4C,CAClG,MAAM,QAAU,WAAW,KAAK,KAAK,EACrC,MAAM,eAAiB,QAAQ,MAC/B,MAAM,WAAa,eAAe,CAChC,KAAM,KAAK,MACX,GAAI,iBAAmB,OAAY,CAAA,EAAK,CAAE,QAAS,cAAc,EACjE,gBAAkB,MAAQ,CAAG,QAAQ,MAAQ,IAAM,EACpD,EAED,MAAM,KAAO,MAAQ,CACnB,GAAI,KAAM,WAAW,OAAO,KAAM,QAAQ,KAAK,CACjD,EAAG,CAAE,MAAO,MAAM,CAAE,EACpB,MAAM,CAAC,KAAM,OAAO,EAAG,CAAC,CAAC,KAAM,IAAI,IAAK,CACtC,WAAW,OAAO,KAAM,IAAI,CAC9B,EAAG,CAAE,MAAO,MAAM,CAAE,EACpB,gBAAgB,IAAK,CAAG,WAAW,WAAU,CAAI,CAAC,EAClD,OAAO,OACT","names":[],"file":"presence.js"}
1
+ {"version":3,"sources":["../../src/internal/presence.ts"],"mappings":"AAAA,OAAS,gBAAiB,WAAY,UAAgD,MACtF,OAAS,mBAAsB,wBAEzB,SAAU,YACd,KACA,QACA,iBAA6B,CAE7B,MAAM,QAAU,WAAW,KAAK,KAAK,EACrC,MAAM,eAAiB,QAAQ,MAC/B,MAAM,WAAa,eAAe,CAChC,KAAM,KAAK,MACX,GAAI,iBAAmB,OAAY,CAAA,EAAK,CAAE,QAAS,cAAc,EACjE,gBAAkB,MAAQ,CAAG,QAAQ,MAAQ,IAAM,EACpD,EAED,MAAM,KAAM,CAAC,KAAM,WAAY,CAC7B,GAAI,CAAC,KAAM,OACX,MAAM,eAAiB,WAAa,OAAS,WAAW,WAAU,EAClE,WAAW,OAAO,KAAM,QAAQ,KAAK,EACrC,GAAI,eAAgB,mBAAkB,CACxC,EAAG,CAAE,MAAO,MAAM,CAAE,EACpB,MAAM,CAAC,KAAM,OAAO,EAAG,CAAC,CAAC,KAAM,IAAI,IAAK,CACtC,WAAW,OAAO,KAAM,IAAI,CAC9B,EAAG,CAAE,MAAO,MAAM,CAAE,EACpB,gBAAgB,IAAK,CAAG,WAAW,WAAU,CAAI,CAAC,EAClD,OAAO,OACT","names":[],"file":"presence.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sectile/vue",
3
- "version": "0.16.0",
3
+ "version": "0.16.1",
4
4
  "description": "Headless Vue components for Sectile DOM interaction semantics.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -415,10 +415,10 @@
415
415
  },
416
416
  "dependencies": {
417
417
  "@sectile/core": "^0.14.2",
418
- "@sectile/dom": "^0.16.0"
418
+ "@sectile/dom": "^0.16.1"
419
419
  },
420
420
  "peerDependencies": {
421
- "@sectile/chart": "^0.15.0",
421
+ "@sectile/chart": "^0.15.1",
422
422
  "@sectile/form": "^0.14.2",
423
423
  "@sectile/tabular": "^0.15.0",
424
424
  "@sectile/virtual": "^0.15.0",
@@ -443,7 +443,7 @@
443
443
  }
444
444
  },
445
445
  "devDependencies": {
446
- "@sectile/chart": "0.15.0",
446
+ "@sectile/chart": "0.15.1",
447
447
  "@sectile/form": "0.14.2",
448
448
  "@sectile/tabular": "0.15.0",
449
449
  "@sectile/virtual": "0.15.0",