import type { ICombadgeNuxtHelperProps } from "../../src/runtime/composables/useCombadgeHelper"
export default defineNuxtPlugin(() => {
return {
provide: {
counter: (props: ICombadgeNuxtHelperProps) => {
console.log(props)
switch (props.method) {
case "get":
throw new Error("NotSupported");
case "set":
throw new Error("NotSupported");
case "action":
{
const parsed = parseInt(props.data) || 0
switch (props.params) {
case "up":
return parsed + 1
case "down":
return parsed - 1
}
break;
}
}
return props.data;
}
}
}
})
<template>
<c-input state-src="local-storage://counter-state" type="number" />
<c-label state-src="local-storage://counter-state" />
<c-button state-src="local-storage://counter-state" state-action="helper://counter" state-action-params="up"> Count Up </c-button>
<c-button state-src="local-storage://counter-state" state-action="helper://counter" state-action-params="down">Count Down </c-button>
</template>
<script setup>
</script>