reka-ui
Version:
Vue port for Radix UI Primitives.
1 lines • 2.11 kB
Source Map (JSON)
{"version":3,"file":"NumberFieldDecrement.cjs","sources":["../../src/NumberField/NumberFieldDecrement.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { PrimitiveProps } from '@/Primitive'\nimport { injectNumberFieldRootContext } from './NumberFieldRoot.vue'\nimport { usePressedHold } from './utils'\nimport { computed } from 'vue'\n\nexport interface NumberFieldDecrementProps extends PrimitiveProps {\n disabled?: boolean\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { Primitive, usePrimitiveElement } from '@/Primitive'\n\nconst props = withDefaults(defineProps<NumberFieldDecrementProps>(), {\n as: 'button',\n})\n\nconst rootContext = injectNumberFieldRootContext()\nconst isDisabled = computed(() => rootContext.disabled?.value || props.disabled || rootContext.isDecreaseDisabled.value)\n\nconst { primitiveElement, currentElement } = usePrimitiveElement()\nconst { isPressed, onTrigger } = usePressedHold({ target: currentElement, disabled: isDisabled })\n\nonTrigger(() => {\n rootContext.handleDecrease()\n})\n</script>\n\n<template>\n <Primitive\n v-bind=\"props\"\n ref=\"primitiveElement\"\n tabindex=\"-1\"\n aria-label=\"Decrease\"\n :type=\"as === 'button' ? 'button' : undefined\"\n :style=\"{\n userSelect: isPressed ? 'none' : undefined,\n }\"\n :disabled=\"isDisabled ? '' : undefined\"\n :data-disabled=\"isDisabled ? '' : undefined\"\n :data-pressed=\"isPressed ? 'true' : undefined\"\n @contextmenu.prevent\n >\n <slot />\n </Primitive>\n</template>\n"],"names":["injectNumberFieldRootContext","computed","usePrimitiveElement","usePressedHold"],"mappings":";;;;;;;;;;;;;;;;AAcA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAId,IAAA,MAAM,cAAcA,wDAA6B,EAAA;AACjD,IAAM,MAAA,UAAA,GAAaC,YAAS,CAAA,MAAM,WAAY,CAAA,QAAA,EAAU,SAAS,KAAM,CAAA,QAAA,IAAY,WAAY,CAAA,kBAAA,CAAmB,KAAK,CAAA;AAEvH,IAAA,MAAM,EAAE,gBAAA,EAAkB,cAAe,EAAA,GAAIC,iDAAoB,EAAA;AACjE,IAAM,MAAA,EAAE,SAAW,EAAA,SAAA,EAAc,GAAAC,gCAAA,CAAe,EAAE,MAAQ,EAAA,cAAA,EAAgB,QAAU,EAAA,UAAA,EAAY,CAAA;AAEhG,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,WAAA,CAAY,cAAe,EAAA;AAAA,KAC5B,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}