@nhtio/lucid-resourceful-vue-components 0.1.0-master-e14740ea → 0.1.0-master-54839a90
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/{VBtn-DhfYEt9V.mjs → VBtn-C4WCntKg.mjs} +8 -8
- package/{VBtn-DhfYEt9V.mjs.map → VBtn-C4WCntKg.mjs.map} +1 -1
- package/{VDatePicker-D0OTAyvJ.mjs → VDatePicker-DOCNk-HL.mjs} +166 -166
- package/{VDatePicker-D0OTAyvJ.mjs.map → VDatePicker-DOCNk-HL.mjs.map} +1 -1
- package/{VEmptyState-BFrXSTJ-.mjs → VEmptyState-CfouFZTg.mjs} +41 -41
- package/{VEmptyState-BFrXSTJ-.mjs.map → VEmptyState-CfouFZTg.mjs.map} +1 -1
- package/{VHover-DLvOmsjv.mjs → VHover-DvUhdfsL.mjs} +3 -3
- package/{VHover-DLvOmsjv.mjs.map → VHover-DvUhdfsL.mjs.map} +1 -1
- package/{VListItem-LNaoM8S4.mjs → VListItem-BT-NXJyi.mjs} +56 -56
- package/{VListItem-LNaoM8S4.mjs.map → VListItem-BT-NXJyi.mjs.map} +1 -1
- package/{VMenu-9rTbTKtH.mjs → VMenu-Bk2NN8qb.mjs} +28 -28
- package/{VMenu-9rTbTKtH.mjs.map → VMenu-Bk2NN8qb.mjs.map} +1 -1
- package/{VPicker-BGuRD0KW.mjs → VPicker-DmY6CdER.mjs} +5 -5
- package/{VPicker-BGuRD0KW.mjs.map → VPicker-DmY6CdER.mjs.map} +1 -1
- package/{VRadioGroup-Dx_wEqzl.mjs → VRadioGroup-BO7XdtLS.mjs} +21 -21
- package/{VRadioGroup-Dx_wEqzl.mjs.map → VRadioGroup-BO7XdtLS.mjs.map} +1 -1
- package/{VRow-DaLdbIGw.mjs → VRow-BhNJcY5-.mjs} +17 -17
- package/{VRow-DaLdbIGw.mjs.map → VRow-BhNJcY5-.mjs.map} +1 -1
- package/{VSheet-DnIfs-1c.mjs → VSheet-Bkr-m6FE.mjs} +14 -14
- package/{VSheet-DnIfs-1c.mjs.map → VSheet-Bkr-m6FE.mjs.map} +1 -1
- package/{actions-8bWGsB-p.mjs → actions-ORUmfJR5.mjs} +15 -15
- package/{actions-8bWGsB-p.mjs.map → actions-ORUmfJR5.mjs.map} +1 -1
- package/{alert-IW1AIWZw.mjs → alert-pFT7pWTZ.mjs} +97 -94
- package/alert-pFT7pWTZ.mjs.map +1 -0
- package/{bigint-Jmfa2L4S.mjs → bigint-CCM0aPaS.mjs} +6 -6
- package/{bigint-Jmfa2L4S.mjs.map → bigint-CCM0aPaS.mjs.map} +1 -1
- package/{boolean-BEY7eBxf.mjs → boolean-1-MOJPSu.mjs} +40 -40
- package/{boolean-BEY7eBxf.mjs.map → boolean-1-MOJPSu.mjs.map} +1 -1
- package/{clipboard-BoKd7mFG.mjs → clipboard-CdGABqm1.mjs} +51 -51
- package/{clipboard-BoKd7mFG.mjs.map → clipboard-CdGABqm1.mjs.map} +1 -1
- package/{colorUtils-DmtKYNgW.mjs → colorUtils-BdpqbLZS.mjs} +3 -3
- package/{colorUtils-DmtKYNgW.mjs.map → colorUtils-BdpqbLZS.mjs.map} +1 -1
- package/{common-BeDAn4wu.mjs → common-Bi5RUD-n.mjs} +8881 -8880
- package/common-Bi5RUD-n.mjs.map +1 -0
- package/{component-CjPpW_A2.mjs → component-DhEJuSE6.mjs} +2 -2
- package/{component-CjPpW_A2.mjs.map → component-DhEJuSE6.mjs.map} +1 -1
- package/components/autorefresh_controller.mjs +1 -1
- package/components/control_button.mjs +1 -1
- package/components/control_button_bar.mjs +2 -2
- package/components/control_menu.mjs +1 -1
- package/components/custom_field.mjs +1 -1
- package/components/exporter.mjs +1 -1
- package/components/fields/bigint.mjs +1 -1
- package/components/fields/boolean.mjs +1 -1
- package/components/fields/date.mjs +1 -1
- package/components/fields/date_time.mjs +1 -1
- package/components/fields/enum.mjs +1 -1
- package/components/fields/integer.mjs +1 -1
- package/components/fields/number.mjs +1 -1
- package/components/fields/string.mjs +1 -1
- package/components/fields/unsigned_integer.mjs +1 -1
- package/components/fields.mjs +9 -9
- package/components/form_with_validation.mjs +1 -1
- package/components/resourceful_alerter.mjs +1 -1
- package/components/resourceful_index.mjs +1 -1
- package/components/resourceful_record.mjs +2 -2
- package/components/resourceful_record_default_form.mjs +1 -1
- package/components/resourceful_record_form.mjs +1 -1
- package/components/sortable.mjs +1 -1
- package/components/svg_icon.mjs +1 -1
- package/components/timezone_picker.mjs +1 -1
- package/components.mjs +23 -23
- package/composables.mjs +8 -8
- package/{console-CRXioSFP.mjs → console-Dgoi3FwV.mjs} +2 -2
- package/{console-CRXioSFP.mjs.map → console-Dgoi3FwV.mjs.map} +1 -1
- package/{custom-Y1WJVKP9.mjs → custom-DQmbYYPh.mjs} +17 -17
- package/{custom-Y1WJVKP9.mjs.map → custom-DQmbYYPh.mjs.map} +1 -1
- package/{date-BxEeCNWD.mjs → date-E_8RP3gK.mjs} +21 -21
- package/{date-BxEeCNWD.mjs.map → date-E_8RP3gK.mjs.map} +1 -1
- package/{date_time-6kpv7eDF.mjs → date_time-BmYl2TFi.mjs} +300 -300
- package/{date_time-6kpv7eDF.mjs.map → date_time-BmYl2TFi.mjs.map} +1 -1
- package/{display-kAyhIPBH.mjs → display-B089h_sz.mjs} +30 -28
- package/display-B089h_sz.mjs.map +1 -0
- package/{display-CO0pTIEs.mjs → display-dv4cOwRN.mjs} +42 -42
- package/{display-CO0pTIEs.mjs.map → display-dv4cOwRN.mjs.map} +1 -1
- package/{display-DvzWa1QO.mjs → display-fXo4JeIS.mjs} +41 -41
- package/{display-DvzWa1QO.mjs.map → display-fXo4JeIS.mjs.map} +1 -1
- package/{elevation-CMzO50xm.mjs → elevation-YNOj0hSa.mjs} +82 -82
- package/{elevation-CMzO50xm.mjs.map → elevation-YNOj0hSa.mjs.map} +1 -1
- package/{enum-noYU2Cqh.mjs → enum-8itqseZa.mjs} +22 -22
- package/{enum-noYU2Cqh.mjs.map → enum-8itqseZa.mjs.map} +1 -1
- package/factories.mjs +1 -1
- package/{field_composer-DpJx0Oz1.mjs → field_composer-ugYyDQNY.mjs} +7 -7
- package/{field_composer-DpJx0Oz1.mjs.map → field_composer-ugYyDQNY.mjs.map} +1 -1
- package/{form-CDLcDPyU.mjs → form-BtDnRXYm.mjs} +45 -45
- package/{form-CDLcDPyU.mjs.map → form-BtDnRXYm.mjs.map} +1 -1
- package/{guards-B99p3BPj.mjs → guards-Cby4QwzY.mjs} +2 -2
- package/{guards-B99p3BPj.mjs.map → guards-Cby4QwzY.mjs.map} +1 -1
- package/guards.mjs +4 -4
- package/helpers.mjs +6 -6
- package/{index-C9UuBVyI.mjs → index-3XRUa28C.mjs} +12 -12
- package/{index-C9UuBVyI.mjs.map → index-3XRUa28C.mjs.map} +1 -1
- package/{index-CzI9mHIx.mjs → index-BCQmj6cf.mjs} +13 -13
- package/{index-CzI9mHIx.mjs.map → index-BCQmj6cf.mjs.map} +1 -1
- package/{index-bXmNb9jX.mjs → index-BgevbZTt.mjs} +10 -10
- package/{index-bXmNb9jX.mjs.map → index-BgevbZTt.mjs.map} +1 -1
- package/{index-BaWthszI.mjs → index-C-PCfO1S.mjs} +2 -2
- package/{index-BaWthszI.mjs.map → index-C-PCfO1S.mjs.map} +1 -1
- package/{index-Bi050X9r.mjs → index-CSyOYGEi.mjs} +8 -8
- package/{index-Bi050X9r.mjs.map → index-CSyOYGEi.mjs.map} +1 -1
- package/{index-CIvylvfa.mjs → index-D9i1PRci.mjs} +5701 -5698
- package/{index-CIvylvfa.mjs.map → index-D9i1PRci.mjs.map} +1 -1
- package/{index-B2rKM3mR.mjs → index-DWv9iKZs.mjs} +21 -21
- package/{index-B2rKM3mR.mjs.map → index-DWv9iKZs.mjs.map} +1 -1
- package/{index-slHxe6b-.mjs → index-VpcXNOpn.mjs} +2 -2
- package/{index-slHxe6b-.mjs.map → index-VpcXNOpn.mjs.map} +1 -1
- package/{index-BUpccfIz.mjs → index-fiZltUBs.mjs} +3 -3
- package/{index-BUpccfIz.mjs.map → index-fiZltUBs.mjs.map} +1 -1
- package/index.mjs +31 -31
- package/{integer-BIJ4_I8y.mjs → integer-W2_SlKV1.mjs} +5 -5
- package/{integer-BIJ4_I8y.mjs.map → integer-W2_SlKV1.mjs.map} +1 -1
- package/{mdi-CqMJqgQi.mjs → mdi-DC1jeTJJ.mjs} +55 -55
- package/{mdi-CqMJqgQi.mjs.map → mdi-DC1jeTJJ.mjs.map} +1 -1
- package/{number-z_LAINPM.mjs → number-DgwZBxOw.mjs} +101 -101
- package/{number-z_LAINPM.mjs.map → number-DgwZBxOw.mjs.map} +1 -1
- package/package.json +31 -31
- package/{position-Ai5XksAO.mjs → position-B9VPkbhU.mjs} +2 -2
- package/{position-Ai5XksAO.mjs.map → position-B9VPkbhU.mjs.map} +1 -1
- package/private/control-button-bar/props.d.ts +10 -10
- package/private/fields/bigint.d.ts +128 -128
- package/private/fields/boolean.d.ts +68 -68
- package/private/fields/common.d.ts +16 -16
- package/private/fields/custom.d.ts +2 -2
- package/private/fields/date.d.ts +24 -24
- package/private/fields/date_time.d.ts +24 -24
- package/private/fields/enum.d.ts +68 -68
- package/private/fields/integer.d.ts +107 -107
- package/private/fields/multiple.d.ts +17 -17
- package/private/fields/number.d.ts +46 -46
- package/private/fields/read_mode_renderer.d.ts +17 -17
- package/private/fields/string.d.ts +24 -24
- package/private/fields/unsigned_integer.d.ts +107 -107
- package/private/filtration/filter_group_condition_element.d.ts +36 -36
- package/private/resourceful-index/index.d.ts +17 -17
- package/private/resourceful-index/partials/_controls.d.ts +1 -1
- package/private/resourceful-index/partials/_per_page_selector.d.ts +1 -1
- package/private/resourceful-index/props.d.ts +34 -34
- package/private/resourceful-record/form.d.ts +12 -12
- package/private/resourceful-record/index.d.ts +13 -13
- package/private/resourceful-record/props.d.ts +20 -20
- package/private/sortable/index.d.ts +1 -1
- package/{props-p4f5Pa5h.mjs → props-COvhL78L.mjs} +4 -4
- package/{props-p4f5Pa5h.mjs.map → props-COvhL78L.mjs.map} +1 -1
- package/{props-BYX22zcE.mjs → props-GYFmAF5-.mjs} +6 -6
- package/{props-BYX22zcE.mjs.map → props-GYFmAF5-.mjs.map} +1 -1
- package/{renderers-BKUvrrVm.mjs → renderers-BP4li2WT.mjs} +13 -13
- package/{renderers-BKUvrrVm.mjs.map → renderers-BP4li2WT.mjs.map} +1 -1
- package/{string-Dmr8SRMf.mjs → string-RfpfCwEn.mjs} +137 -137
- package/{string-Dmr8SRMf.mjs.map → string-RfpfCwEn.mjs.map} +1 -1
- package/{unsigned_integer-BliPiCXO.mjs → unsigned_integer-Cg6tbRJj.mjs} +4 -4
- package/{unsigned_integer-BliPiCXO.mjs.map → unsigned_integer-Cg6tbRJj.mjs.map} +1 -1
- package/useRender-CfNJA_8a.mjs +9 -0
- package/{useRender-BD1xw5zG.mjs.map → useRender-CfNJA_8a.mjs.map} +1 -1
- package/{utils-DqXWb-4f.mjs → utils-D3ZGaTyv.mjs} +48 -48
- package/{utils-DqXWb-4f.mjs.map → utils-D3ZGaTyv.mjs.map} +1 -1
- package/{validation-DS3tTSk5.mjs → validation-BF_JkNWB.mjs} +4 -4
- package/{validation-DS3tTSk5.mjs.map → validation-BF_JkNWB.mjs.map} +1 -1
- package/VBtn.css +0 -1
- package/VDatePicker.css +0 -1
- package/VEmptyState.css +0 -1
- package/VListItem.css +0 -1
- package/VMenu.css +0 -1
- package/VPicker.css +0 -1
- package/VRadioGroup.css +0 -1
- package/VSheet.css +0 -1
- package/actions.css +0 -1
- package/alert-IW1AIWZw.mjs.map +0 -1
- package/boolean.css +0 -1
- package/clipboard.css +0 -1
- package/common-BeDAn4wu.mjs.map +0 -1
- package/common.css +0 -1
- package/date_time.css +0 -1
- package/display-kAyhIPBH.mjs.map +0 -1
- package/display.css +0 -1
- package/display2.css +0 -1
- package/elevation.css +0 -1
- package/index.css +0 -1
- package/mdi.css +0 -1
- package/number.css +0 -1
- package/string.css +0 -1
- package/useRender-BD1xw5zG.mjs +0 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bigint-Jmfa2L4S.mjs","sources":["../src/private/fields/bigint.ts"],"sourcesContent":["/*\n|--------------------------------------------------------------------------\n| Resourceful BigInt Field\n|--------------------------------------------------------------------------\n|\n| A sophisticated field component for handling unlimited precision integer values\n| using Big.js for arithmetic operations and JSON-safe serialization. This field\n| extends beyond JavaScript's Number.MAX_SAFE_INTEGER limitations while maintaining\n| full compatibility with the resourceful field ecosystem.\n|\n| ## Core Features\n|\n| - **Unlimited Precision**: Handles arbitrarily large integers using Big.js\n| - **JSON Safety**: Configurable serialization (string or native bigint)\n| - **VTextField Base**: Uses VTextField with recreated VNumberInput controls\n| - **Multiple Mode**: Combobox variant with deletable chips for arrays\n| - **Format Support**: Integration with numeral.js formatting options\n| - **Validation Pipeline**: Sophisticated boundary checking and type conversion\n|\n| ## Technical Implementation\n|\n| The field uses VTextField as its base component instead of VNumberInput due to\n| BigInt incompatibility with HTML number inputs. Custom increment/decrement\n| controls are recreated to match VNumberInput behavior with proper pointer\n| capture and keyboard navigation.\n|\n| Type conversion utilities (toEmitable/fromEmitable) handle the complex bridge\n| between BigInt values and the component's string-based internal representation,\n| ensuring JSON safety and precision preservation.\n|\n| ## Usage Examples\n|\n| ```vue\n| <!-- Basic BigInt field -->\n| <RBigIntField\n| v-model=\"largeNumber\"\n| label=\"Large Number\"\n| format=\"0,0\"\n| />\n|\n| <!-- Multiple BigInt values -->\n| <RBigIntField\n| v-model=\"largeNumbers\"\n| multiple\n| label=\"Large Numbers\"\n| format=\"0,0\"\n| />\n|\n| <!-- With constraints -->\n| <RBigIntField\n| v-model=\"constrainedNumber\"\n| label=\"Constrained Number\"\n| :min=\"1000000000000000n\"\n| :max=\"9999999999999999n\"\n| />\n|\n| <!-- Read-only display -->\n| <RBigIntField\n| v-model=\"displayNumber\"\n| label=\"Display Number\"\n| render-mode=\"read\"\n| format=\"0.0a\"\n| />\n| ```\n|\n| ## Control Variants\n|\n| - **default**: Stacked increment/decrement buttons on the right\n| - **split**: Decrement on left, increment on right \n| - **stacked**: Vertical arrangement of controls\n| - **hidden**: No increment/decrement controls\n|\n| ## JSON Safety\n|\n| When `jsonSafe` is true (default), values are emitted as strings to ensure\n| compatibility with JSON serialization. When false, native BigInt values are\n| used for maximum type safety.\n*/\n\nimport { default as Big } from 'big.js'\nimport { VBtn } from 'vuetify/components/VBtn'\nimport { commonEmitsValidators } from './common'\nimport { useFieldComposer } from './field_composer'\nimport { VDivider } from 'vuetify/components/VDivider'\nimport { propsAndEmitsFactory } from '../common/factories'\nimport { h, defineComponent, toRefs, computed } from 'vue'\nimport { VTextField } from 'vuetify/components/VTextField'\nimport { omit, pick } from '@nhtio/vuetifiable/util/helpers'\nimport { formatBigNumber } from '../common/big_number_formatter'\nimport { propsFactory } from '@nhtio/vuetifiable/util/propsFactory'\nimport { makeRNumberFieldProps, makeVNumberInputProps } from './number'\nimport { stripUndefinedValuesFromObject, useSlot } from '../common/utils'\nimport { makeVTextFieldProps } from '@nhtio/vuetifiable/components/VTextField/VTextField'\nimport type { VNumberInputSlots } from './number'\nimport type { SingleFieldRenderer } from './field_composer'\nimport type { LooseRequired } from '@vue/shared/dist/shared.d.ts'\nimport type { NamedSlotParameters, ExtractSlotDefinitions } from '../common/types'\nimport type { CommonResourcefulFieldPublicProps, RFieldStringifier } from './common'\nimport type {\n PropType,\n ExtractPublicPropTypes,\n ToRefs,\n SlotsType,\n ComponentPublicInstance,\n} from 'vue'\n\n/**\n * Creates the base props for RBigIntField component.\n *\n * Extends RNumberField props while replacing min/max/step/precision with BigInt-specific\n * implementations. Adds VTextField's reverse prop and VNumberInput's hideInput/inset props\n * for complete control over the field appearance and behavior.\n *\n * @returns Props factory function for RBigIntField base properties\n *\n * @example\n * ```typescript\n * const props = makeRBigIntFieldBaseProps()\n * // props.min accepts string | number | bigint\n * // props.max accepts string | number | bigint\n * // props.jsonSafe controls serialization format\n * ```\n */\nexport const makeRBigIntFieldBaseProps = propsFactory(\n {\n ...omit(makeRNumberFieldProps(), ['min', 'max', 'precision']),\n ...pick(makeVTextFieldProps(), ['reverse']),\n ...pick(makeVNumberInputProps(), ['hideInput', 'inset']),\n min: {\n type: [String, Number, BigInt] as PropType<string | number | bigint | undefined>,\n default: undefined,\n },\n max: {\n type: [String, Number, BigInt] as PropType<string | number | bigint | undefined>,\n default: undefined,\n },\n jsonSafe: {\n type: Boolean,\n default: true,\n },\n },\n 'RBigIntField'\n)\n\n/**\n * Represents the value types that can be handled by RBigIntField.\n *\n * Supports string, number, and bigint inputs for maximum flexibility.\n * All values are internally converted to Big.js instances for precision\n * arithmetic and then emitted according to the jsonSafe configuration.\n *\n * @example\n * ```typescript\n * const stringValue: RBigIntFieldValue = \"123456789012345678901234567890\"\n * const numberValue: RBigIntFieldValue = 42\n * const bigintValue: RBigIntFieldValue = 123456789012345678901234567890n\n * ```\n */\nexport type RBigIntFieldValue = string | number | bigint\n\nconst isValidSingleRBigIntFieldValue = (value: RBigIntFieldValue) => {\n if (typeof value === 'bigint') return true\n if (\n typeof value === 'number' &&\n !Number.isNaN(value) &&\n Number.isFinite(value) &&\n Number.isInteger(value)\n )\n return true\n try {\n const asBig = new Big(value.toString())\n if (asBig.toFixed(0) !== value.toString()) return false\n return true\n } catch (e) {\n return e instanceof Error ? false : false\n }\n}\n\nconst isValidRBigIntFieldValue = (\n value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined\n) => {\n if ('undefined' === typeof value || null === value) return true\n if (Array.isArray(value)) return value.every(isValidSingleRBigIntFieldValue)\n return isValidSingleRBigIntFieldValue(value)\n}\n\n/**\n * Creates the complete props and emits configuration for RBigIntField.\n *\n * Combines the base props with validation-enabled emits for model value updates.\n * All emit values are validated through isValidRBigIntFieldValue before emission.\n *\n * @returns Object containing makeProps function and emits configuration\n *\n * @example\n * ```typescript\n * const { makeProps, emits } = propsAndEmitsFactory(...)\n * // Use in component definition\n * export const RBigIntField = defineComponent({\n * props: makeProps(),\n * emits: emits,\n * // ...\n * })\n * ```\n */\nconst { makeProps: makeRBigIntFieldProps, emits: rBigIntFieldEmits } = propsAndEmitsFactory(\n {\n ...makeRBigIntFieldBaseProps(),\n },\n {\n 'update:modelValue': (value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined) =>\n isValidRBigIntFieldValue(value),\n 'update:model-value': (value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined) =>\n isValidRBigIntFieldValue(value),\n ...commonEmitsValidators,\n },\n ''\n)\n\n/**\n * Props factory function for RBigIntField component.\n *\n * @example\n * ```typescript\n * const props = makeRBigIntFieldProps()\n * ```\n */\n/**\n * Emits configuration for RBigIntField component with validation.\n *\n * @example\n * ```typescript\n * const emits = rBigIntFieldEmits\n * ```\n */\nexport { makeRBigIntFieldProps, rBigIntFieldEmits }\n\n/**\n * Type definition for RBigIntField component props.\n *\n * Extracted from the props factory function to provide type safety\n * for component usage and prop validation.\n *\n * @example\n * ```typescript\n * const props: RBigIntFieldProps = {\n * modelValue: \"123456789012345678901234567890\",\n * label: \"Large Number\",\n * format: \"0,0\",\n * jsonSafe: true\n * }\n * ```\n */\nexport type RBigIntFieldProps = ExtractPublicPropTypes<ReturnType<typeof makeRBigIntFieldProps>>\n\ntype VTextfieldPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVTextFieldProps>>\ntype VTextFieldSlots = ExtractSlotDefinitions<typeof VTextField.slots>\ntype VTextFieldAppendInnerArgs = NamedSlotParameters<VTextFieldSlots, 'append-inner'>\ntype VTextFieldPrependInnerArgs = NamedSlotParameters<VTextFieldSlots, 'prepend-inner'>\n\nconst safeGetAsBig = (value: RBigIntFieldValue): Big | Error => {\n try {\n return new Big(value.toString())\n } catch (error: unknown) {\n return new Error('Invalid BigInt value', {\n cause: error instanceof Error ? error : undefined,\n })\n }\n}\n\nconst isEmitable = (\n value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined,\n min: string | number | bigint | undefined,\n max: string | number | bigint | undefined\n) => {\n if (!isValidRBigIntFieldValue(value)) return false\n if ('undefined' === typeof value || null === value) return true\n if ('undefined' === typeof min && 'undefined' === typeof max) return true\n try {\n const minAsBig = 'undefined' === typeof min ? min : new Big(min.toString())\n const maxAsBig = 'undefined' === typeof max ? max : new Big(max.toString())\n const valueAsBig = Array.isArray(value)\n ? value.map((v) => safeGetAsBig(v))\n : safeGetAsBig(value)\n if (Array.isArray(valueAsBig)) {\n return valueAsBig.every((v) => {\n // if we caught and error, the value\n // is assumed to be not safe to emit\n if (v instanceof Error) return false\n if (minAsBig && v.lte(minAsBig)) return false\n if (maxAsBig && v.gte(maxAsBig)) return false\n return true\n })\n } else {\n // if we caught and error, the value\n // is assumed to be not safe to emit\n if (valueAsBig instanceof Error) return false\n if (minAsBig && valueAsBig.lte(minAsBig)) return false\n if (maxAsBig && valueAsBig.gte(maxAsBig)) return false\n return true\n }\n } catch {\n // if we caught and error, the value\n // is assumed to be not safe to emit\n return false\n }\n}\n\nexport const toEmitable = (\n value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined,\n jsonSafe: boolean = true\n): RBigIntFieldValue | RBigIntFieldValue[] | null | undefined => {\n if (Array.isArray(value)) {\n return value\n .map((v) => toEmitable(v, jsonSafe))\n .filter((v) => v !== undefined && v !== null) as RBigIntFieldValue[]\n }\n if ('undefined' === typeof value || null === value) return value\n try {\n const asBig = new Big(value.toString())\n if (jsonSafe) {\n return asBig.toFixed(0)\n }\n // if the number is outside of a Number objects boundaries, we must return a bigint\n if (asBig.gt(Number.MAX_SAFE_INTEGER) || asBig.lt(Number.MIN_SAFE_INTEGER)) {\n return BigInt(asBig.toFixed(0))\n }\n return 'number' === typeof value ? Number.parseInt(asBig.toFixed(0)) : BigInt(asBig.toFixed(0))\n } catch {\n return undefined\n }\n}\n\nconst fromEmitable = (\n value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined\n): string | string[] | null | undefined => {\n if (Array.isArray(value)) {\n return value\n .map((v) => fromEmitable(v))\n .filter((v) => v !== undefined && v !== null) as string[]\n }\n if ('undefined' === typeof value || null === value) return value\n try {\n const asBig = new Big(value.toString())\n return asBig.toFixed(0)\n } catch {\n return undefined\n }\n}\n\n/**\n * RBigIntField - A sophisticated Vue component for handling unlimited precision integers.\n *\n * This component provides a comprehensive solution for working with large integers that\n * exceed JavaScript's Number.MAX_SAFE_INTEGER. It uses Big.js for arithmetic operations\n * and provides seamless integration with the resourceful field ecosystem.\n *\n * ## Key Features\n *\n * - **Unlimited Precision**: Handle arbitrarily large integers using Big.js\n * - **JSON Compatibility**: Configurable serialization for API compatibility\n * - **Input Controls**: Custom increment/decrement buttons with proper accessibility\n * - **Multiple Values**: Support for arrays with chip-based interface\n * - **Validation**: Comprehensive boundary checking and type validation\n * - **Formatting**: Integration with numeral.js for display formatting\n *\n * ## Technical Details\n *\n * The component uses VTextField as its base instead of VNumberInput due to BigInt\n * incompatibility with HTML number inputs. Custom controls are recreated to match\n * VNumberInput behavior while supporting unlimited precision values.\n *\n * @example\n * ```vue\n * <template>\n * <!-- Basic usage -->\n * <RBigIntField\n * v-model=\"largeNumber\"\n * label=\"Large Number\"\n * format=\"0,0\"\n * />\n *\n * <!-- Multiple values -->\n * <RBigIntField\n * v-model=\"largeNumbers\"\n * multiple\n * label=\"Large Numbers\"\n * />\n *\n * <!-- With constraints -->\n * <RBigIntField\n * v-model=\"constrainedNumber\"\n * :min=\"1000000000000000n\"\n * :max=\"9999999999999999n\"\n * />\n * </template>\n * ```\n */\nexport const RBigIntField = defineComponent({\n name: 'RBigIntField',\n props: makeRBigIntFieldProps(),\n emits: rBigIntFieldEmits,\n slots: Object as SlotsType<VNumberInputSlots>,\n setup(props, { emit, slots }) {\n const {\n focused,\n disabled,\n error,\n errorMessages,\n maxErrors,\n name,\n label,\n readonly,\n validateOn,\n theme,\n width,\n maxWidth,\n minWidth,\n density,\n class: className,\n style,\n id,\n baseColor,\n color,\n glow,\n iconColor,\n hideDetails,\n hint,\n persistentHint,\n messages,\n direction,\n modelValue,\n renderMode,\n multiple,\n choices,\n allowUnspecifiedChoices,\n to,\n href,\n menuIcon,\n active,\n variant,\n prefix,\n persistentPlaceholder,\n suffix,\n role,\n noValuesText,\n clearIcon,\n controlVariant,\n format,\n incrementIcon,\n decrementIcon,\n collapseIcon,\n expandIcon,\n reverse,\n hideInput,\n inset,\n step,\n dirty,\n onBlur,\n onChange,\n onInput,\n } = toRefs(props)\n const fixedEmit: typeof emit = (event, ...args) => {\n switch (event) {\n case 'update:modelValue':\n case 'update:model-value': {\n const canEmit = args.every((v) =>\n isEmitable(\n v as RBigIntFieldValue | RBigIntFieldValue[] | null | undefined,\n props.min,\n props.max\n )\n )\n if (!canEmit) return\n // @ts-expect-error\n return emit(event, ...args.map((v) => toEmitable(v, props.jsonSafe)))\n }\n\n default:\n // @ts-expect-error\n return emit(event, ...args)\n }\n }\n const onUpdateModelValueCamelProp = (\n value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined\n ) => {\n if ('undefined' === typeof props['onUpdate:modelValue']) return\n const emitable = toEmitable(value, props.jsonSafe)\n if (!isEmitable(emitable, props.min, props.max)) return\n props['onUpdate:modelValue'](emitable)\n }\n const onUpdateModelValueKebabProp = (\n value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined\n ) => {\n if ('undefined' === typeof props['onUpdate:model-value']) return\n const emitable = toEmitable(value, props.jsonSafe)\n if (!isEmitable(emitable, props.min, props.max)) return\n props['onUpdate:model-value'](emitable)\n }\n const textifiedModelValue = computed(() => fromEmitable(modelValue.value))\n const stringifier = computed<RFieldStringifier<RBigIntFieldValue>>(() => {\n return (val: RBigIntFieldValue) => {\n if (!isValidSingleRBigIntFieldValue(val)) return ''\n try {\n const asBig = new Big(val.toString())\n // return numeral(asBig.toFixed(0)).format(format.value)\n return formatBigNumber(asBig, format.value)\n } catch {\n return ''\n }\n }\n })\n const commonProps: ToRefs<LooseRequired<Readonly<CommonResourcefulFieldPublicProps>>> = {\n style,\n label,\n density,\n renderMode,\n multiple,\n to,\n href,\n menuIcon,\n active,\n theme,\n disabled,\n variant,\n prefix,\n persistentPlaceholder,\n suffix,\n role,\n focused,\n noValuesText,\n choices,\n allowUnspecifiedChoices,\n 'class': className,\n 'onUpdate:focused': toRefs(props)['onUpdate:focused'],\n 'onClick:append': toRefs(props)['onClick:append'],\n 'onClick:appendInner': toRefs(props)['onClick:appendInner'],\n 'onClick:clear': toRefs(props)['onClick:clear'],\n 'onClick:prependInner': toRefs(props)['onClick:prependInner'],\n 'onClick:prepend': toRefs(props)['onClick:prepend'],\n 'onMousedown:control': toRefs(props)['onMousedown:control'],\n 'onClick:control': toRefs(props)['onClick:control'],\n error,\n errorMessages,\n dirty,\n onBlur,\n onChange,\n onInput,\n }\n const VNumberInputFieldBindings = computed<VTextfieldPublicProps>(() =>\n stripUndefinedValuesFromObject({\n focused: focused.value,\n disabled: disabled.value,\n error: error.value,\n errorMessages: errorMessages.value,\n maxErrors: maxErrors.value,\n name: name.value,\n label: label.value,\n readonly: readonly.value,\n validateOn: validateOn.value,\n theme: theme.value,\n width: width.value,\n maxWidth: maxWidth.value,\n minWidth: minWidth.value,\n density: density.value,\n class: className.value,\n style: style.value,\n id: id.value,\n baseColor: baseColor.value,\n color: color.value,\n glow: glow.value,\n iconColor: iconColor.value,\n hideDetails: hideDetails.value,\n hint: hint.value,\n persistentHint: persistentHint.value,\n messages: messages.value,\n direction: direction.value,\n variant: variant.value,\n clearIcon: clearIcon.value,\n controlVariant: controlVariant.value,\n active: active.value,\n prefix: prefix.value,\n persistentPlaceholder: persistentPlaceholder.value,\n suffix: suffix.value,\n role: role.value,\n dirty: dirty.value,\n onBlur: onBlur.value,\n onChange: onChange.value,\n onInput: onInput.value,\n })\n )\n const normalizedIncrementIcon = computed(() =>\n controlVariant.value === 'split' ? incrementIcon.value : collapseIcon.value\n )\n const normalizedDecrementIcon = computed(() =>\n controlVariant.value === 'split' ? decrementIcon.value : expandIcon.value\n )\n const normalizedControlNodeSize = computed(() =>\n controlVariant.value === 'split' ? 'default' : 'small'\n )\n const normalizedControlNodeDefaultHeight = computed(() =>\n controlVariant.value === 'stacked' ? 'auto' : '100%'\n )\n const normalizedControlsDisabled = computed(() => disabled.value || readonly.value)\n const normalizedStep = computed(() => {\n const stepValue = step.value ?? 1\n if (stepValue <= 0) return 1\n return Math.round(stepValue) || 1\n })\n const singleFieldRenderer: SingleFieldRenderer = ({\n props: fieldBindings,\n isMultiAdd,\n add,\n }) => {\n const canIncrease = computed(() => {\n if (normalizedControlsDisabled.value) return false\n const isBig = safeGetAsBig(fieldBindings.modelValue as RBigIntFieldValue)\n if (isBig instanceof Error) return false\n const maxAsBig = 'undefined' === typeof props.max ? undefined : safeGetAsBig(props.max)\n if (maxAsBig instanceof Error) return false\n if ('undefined' === typeof maxAsBig) return true\n return isBig.add(normalizedStep.value).lte(maxAsBig)\n })\n const canDecrease = computed(() => {\n if (normalizedControlsDisabled.value) return false\n const isBig = safeGetAsBig(fieldBindings.modelValue as RBigIntFieldValue)\n if (isBig instanceof Error) return false\n const minAsBig = 'undefined' === typeof props.min ? undefined : safeGetAsBig(props.min)\n if (minAsBig instanceof Error) return false\n if ('undefined' === typeof minAsBig) return true\n return isBig.sub(normalizedStep.value).gte(minAsBig)\n })\n const incrementSlot = useSlot<VNumberInputSlots>('increment', slots)\n const decrementSlot = useSlot<VNumberInputSlots>('decrement', slots)\n const incrementControlNode = () => {\n const slotProps = {\n props: {\n onClick: (e: MouseEvent) => e.stopPropagation(),\n onPointerup: (e: PointerEvent) => {\n const el = e.currentTarget as HTMLElement\n el?.releasePointerCapture(e.pointerId)\n e.preventDefault()\n e.stopPropagation()\n },\n onPointerdown: (e: PointerEvent) => {\n const el = e.currentTarget as HTMLElement\n el?.setPointerCapture(e.pointerId)\n e.preventDefault()\n e.stopPropagation()\n // Increment logic here\n if (canIncrease.value) {\n const current = safeGetAsBig(fieldBindings.modelValue as RBigIntFieldValue)\n if (!(current instanceof Error)) {\n fieldBindings['onUpdate:modelValue'](current.add(1).toFixed(0))\n }\n }\n },\n onPointercancel: (e: PointerEvent) => {\n const el = e.currentTarget as HTMLElement\n el?.releasePointerCapture(e.pointerId)\n },\n },\n }\n\n return incrementSlot\n ? // @ts-expect-error\n incrementSlot(slotProps)\n : h(VBtn, {\n disabled: !canIncrease.value,\n flat: true,\n height: normalizedControlNodeDefaultHeight.value,\n icon: normalizedIncrementIcon.value,\n size: normalizedControlNodeSize.value,\n tabindex: '-1',\n ...slotProps.props,\n })\n }\n const decrementControlNode = () => {\n const slotProps = {\n props: {\n onClick: (e: MouseEvent) => e.stopPropagation(),\n onPointerup: (e: PointerEvent) => {\n const el = e.currentTarget as HTMLElement\n el?.releasePointerCapture(e.pointerId)\n e.preventDefault()\n e.stopPropagation()\n },\n onPointerdown: (e: PointerEvent) => {\n const el = e.currentTarget as HTMLElement\n el?.setPointerCapture(e.pointerId)\n e.preventDefault()\n e.stopPropagation()\n // Decrement logic here\n if (canDecrease.value) {\n const current = safeGetAsBig(fieldBindings.modelValue as RBigIntFieldValue)\n if (!(current instanceof Error)) {\n fieldBindings['onUpdate:modelValue'](current.sub(1).toFixed(0))\n }\n }\n },\n onPointercancel: (e: PointerEvent) => {\n const el = e.currentTarget as HTMLElement\n el?.releasePointerCapture(e.pointerId)\n },\n },\n }\n\n return decrementSlot\n ? // @ts-expect-error\n decrementSlot(slotProps)\n : h(VBtn, {\n disabled: !canDecrease.value,\n flat: true,\n height: normalizedControlNodeDefaultHeight.value,\n icon: normalizedDecrementIcon.value,\n size: normalizedControlNodeSize.value,\n tabindex: '-1',\n ...slotProps.props,\n })\n }\n const appendInnerSlot = () => {\n if (controlVariant.value === 'split') {\n return h('div', { class: 'v-number-input__control' }, [\n h(VDivider, { vertical: true }),\n incrementControlNode(),\n ])\n } else if (!reverse.value && controlVariant.value !== 'hidden') {\n return [\n !hideInput.value && !inset.value && h(VDivider, { vertical: true }),\n h('div', { class: 'v-number-input__control' }, [\n decrementControlNode(),\n h(VDivider, { vertical: controlVariant.value !== 'stacked' }),\n incrementControlNode(),\n ]),\n ]\n }\n return undefined\n }\n const prependInnerSlot = () => {\n if (controlVariant.value === 'split') {\n return h('div', { class: 'v-number-input__control' }, [\n decrementControlNode(),\n h(VDivider, { vertical: true }),\n ])\n } else if (reverse.value && controlVariant.value !== 'hidden') {\n return [\n h('div', { class: 'v-number-input__control' }, [\n decrementControlNode(),\n h(VDivider, { vertical: controlVariant.value !== 'stacked' }),\n incrementControlNode(),\n ]),\n !hideInput.value && !inset.value && h(VDivider, { vertical: true }),\n ]\n }\n return undefined\n }\n return h(\n VTextField,\n {\n ...VNumberInputFieldBindings.value,\n ...fieldBindings,\n class: isMultiAdd\n ? []\n : [\n 'v-number-input',\n {\n 'v-number-input--default': controlVariant.value === 'default',\n 'v-number-input--hide-input': props.hideInput,\n 'v-number-input--inset': props.inset,\n 'v-number-input--reverse': props.reverse,\n 'v-number-input--split': controlVariant.value === 'split',\n 'v-number-input--stacked': controlVariant.value === 'stacked',\n },\n VNumberInputFieldBindings.value.class,\n ],\n hideDetails: isMultiAdd ? true : VNumberInputFieldBindings.value.hideDetails,\n inputmode: 'decimal',\n onKeydown: (e: KeyboardEvent) => {\n if (e.key === 'Enter' && isMultiAdd) {\n queueMicrotask(() => add())\n } else if (['ArrowUp', 'ArrowDown'].includes(e.key)) {\n e.preventDefault()\n const current = safeGetAsBig(fieldBindings.modelValue as RBigIntFieldValue)\n if (!(current instanceof Error)) {\n if (e.key === 'ArrowUp' && canIncrease.value) {\n fieldBindings['onUpdate:modelValue'](current.add(1).toString())\n } else if (e.key === 'ArrowDown' && canDecrease.value) {\n fieldBindings['onUpdate:modelValue'](current.sub(1).toString())\n }\n }\n }\n },\n },\n // eslint-disable-next-line @nht/require-function-slots-for-programmatic-components\n {\n ...slots,\n 'append-inner': (...args: VTextFieldAppendInnerArgs) => [\n slots['append-inner']?.(...args),\n appendInnerSlot(),\n ],\n 'prepend-inner': (...args: VTextFieldPrependInnerArgs) => [\n prependInnerSlot(),\n slots['prepend-inner']?.(...args),\n ],\n }\n )\n }\n const { composed } = useFieldComposer(\n commonProps,\n stringifier,\n singleFieldRenderer,\n fixedEmit,\n onUpdateModelValueCamelProp,\n onUpdateModelValueKebabProp,\n textifiedModelValue,\n textifiedModelValue.value\n )\n return composed\n },\n})\n\nexport type RBigIntField = typeof RBigIntField & ComponentPublicInstance\n"],"names":["makeRBigIntFieldBaseProps","propsFactory","omit","makeRNumberFieldProps","pick","makeVTextFieldProps","makeVNumberInputProps","isValidSingleRBigIntFieldValue","value","Big","e","isValidRBigIntFieldValue","makeRBigIntFieldProps","rBigIntFieldEmits","propsAndEmitsFactory","commonEmitsValidators","safeGetAsBig","error","isEmitable","min","max","minAsBig","maxAsBig","valueAsBig","toEmitable","jsonSafe","v","asBig","fromEmitable","RBigIntField","defineComponent","props","emit","slots","focused","disabled","errorMessages","maxErrors","name","label","readonly","validateOn","theme","width","maxWidth","minWidth","density","className","style","id","baseColor","color","glow","iconColor","hideDetails","hint","persistentHint","messages","direction","modelValue","renderMode","multiple","choices","allowUnspecifiedChoices","to","href","menuIcon","active","variant","prefix","persistentPlaceholder","suffix","role","noValuesText","clearIcon","controlVariant","format","incrementIcon","decrementIcon","collapseIcon","expandIcon","reverse","hideInput","inset","step","dirty","onBlur","onChange","onInput","toRefs","fixedEmit","event","args","onUpdateModelValueCamelProp","emitable","onUpdateModelValueKebabProp","textifiedModelValue","computed","stringifier","val","formatBigNumber","commonProps","VNumberInputFieldBindings","stripUndefinedValuesFromObject","normalizedIncrementIcon","normalizedDecrementIcon","normalizedControlNodeSize","normalizedControlNodeDefaultHeight","normalizedControlsDisabled","normalizedStep","stepValue","singleFieldRenderer","fieldBindings","isMultiAdd","add","canIncrease","isBig","canDecrease","incrementSlot","useSlot","decrementSlot","incrementControlNode","slotProps","current","h","VBtn","decrementControlNode","appendInnerSlot","VDivider","prependInnerSlot","VTextField","composed","useFieldComposer"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bigint-CCM0aPaS.mjs","sources":["../src/private/fields/bigint.ts"],"sourcesContent":["/*\n|--------------------------------------------------------------------------\n| Resourceful BigInt Field\n|--------------------------------------------------------------------------\n|\n| A sophisticated field component for handling unlimited precision integer values\n| using Big.js for arithmetic operations and JSON-safe serialization. This field\n| extends beyond JavaScript's Number.MAX_SAFE_INTEGER limitations while maintaining\n| full compatibility with the resourceful field ecosystem.\n|\n| ## Core Features\n|\n| - **Unlimited Precision**: Handles arbitrarily large integers using Big.js\n| - **JSON Safety**: Configurable serialization (string or native bigint)\n| - **VTextField Base**: Uses VTextField with recreated VNumberInput controls\n| - **Multiple Mode**: Combobox variant with deletable chips for arrays\n| - **Format Support**: Integration with numeral.js formatting options\n| - **Validation Pipeline**: Sophisticated boundary checking and type conversion\n|\n| ## Technical Implementation\n|\n| The field uses VTextField as its base component instead of VNumberInput due to\n| BigInt incompatibility with HTML number inputs. Custom increment/decrement\n| controls are recreated to match VNumberInput behavior with proper pointer\n| capture and keyboard navigation.\n|\n| Type conversion utilities (toEmitable/fromEmitable) handle the complex bridge\n| between BigInt values and the component's string-based internal representation,\n| ensuring JSON safety and precision preservation.\n|\n| ## Usage Examples\n|\n| ```vue\n| <!-- Basic BigInt field -->\n| <RBigIntField\n| v-model=\"largeNumber\"\n| label=\"Large Number\"\n| format=\"0,0\"\n| />\n|\n| <!-- Multiple BigInt values -->\n| <RBigIntField\n| v-model=\"largeNumbers\"\n| multiple\n| label=\"Large Numbers\"\n| format=\"0,0\"\n| />\n|\n| <!-- With constraints -->\n| <RBigIntField\n| v-model=\"constrainedNumber\"\n| label=\"Constrained Number\"\n| :min=\"1000000000000000n\"\n| :max=\"9999999999999999n\"\n| />\n|\n| <!-- Read-only display -->\n| <RBigIntField\n| v-model=\"displayNumber\"\n| label=\"Display Number\"\n| render-mode=\"read\"\n| format=\"0.0a\"\n| />\n| ```\n|\n| ## Control Variants\n|\n| - **default**: Stacked increment/decrement buttons on the right\n| - **split**: Decrement on left, increment on right \n| - **stacked**: Vertical arrangement of controls\n| - **hidden**: No increment/decrement controls\n|\n| ## JSON Safety\n|\n| When `jsonSafe` is true (default), values are emitted as strings to ensure\n| compatibility with JSON serialization. When false, native BigInt values are\n| used for maximum type safety.\n*/\n\nimport { default as Big } from 'big.js'\nimport { VBtn } from 'vuetify/components/VBtn'\nimport { commonEmitsValidators } from './common'\nimport { useFieldComposer } from './field_composer'\nimport { VDivider } from 'vuetify/components/VDivider'\nimport { propsAndEmitsFactory } from '../common/factories'\nimport { h, defineComponent, toRefs, computed } from 'vue'\nimport { VTextField } from 'vuetify/components/VTextField'\nimport { omit, pick } from '@nhtio/vuetifiable/util/helpers'\nimport { formatBigNumber } from '../common/big_number_formatter'\nimport { propsFactory } from '@nhtio/vuetifiable/util/propsFactory'\nimport { makeRNumberFieldProps, makeVNumberInputProps } from './number'\nimport { stripUndefinedValuesFromObject, useSlot } from '../common/utils'\nimport { makeVTextFieldProps } from '@nhtio/vuetifiable/components/VTextField/VTextField'\nimport type { VNumberInputSlots } from './number'\nimport type { SingleFieldRenderer } from './field_composer'\nimport type { LooseRequired } from '@vue/shared/dist/shared.d.ts'\nimport type { NamedSlotParameters, ExtractSlotDefinitions } from '../common/types'\nimport type { CommonResourcefulFieldPublicProps, RFieldStringifier } from './common'\nimport type {\n PropType,\n ExtractPublicPropTypes,\n ToRefs,\n SlotsType,\n ComponentPublicInstance,\n} from 'vue'\n\n/**\n * Creates the base props for RBigIntField component.\n *\n * Extends RNumberField props while replacing min/max/step/precision with BigInt-specific\n * implementations. Adds VTextField's reverse prop and VNumberInput's hideInput/inset props\n * for complete control over the field appearance and behavior.\n *\n * @returns Props factory function for RBigIntField base properties\n *\n * @example\n * ```typescript\n * const props = makeRBigIntFieldBaseProps()\n * // props.min accepts string | number | bigint\n * // props.max accepts string | number | bigint\n * // props.jsonSafe controls serialization format\n * ```\n */\nexport const makeRBigIntFieldBaseProps = propsFactory(\n {\n ...omit(makeRNumberFieldProps(), ['min', 'max', 'precision']),\n ...pick(makeVTextFieldProps(), ['reverse']),\n ...pick(makeVNumberInputProps(), ['hideInput', 'inset']),\n min: {\n type: [String, Number, BigInt] as PropType<string | number | bigint | undefined>,\n default: undefined,\n },\n max: {\n type: [String, Number, BigInt] as PropType<string | number | bigint | undefined>,\n default: undefined,\n },\n jsonSafe: {\n type: Boolean,\n default: true,\n },\n },\n 'RBigIntField'\n)\n\n/**\n * Represents the value types that can be handled by RBigIntField.\n *\n * Supports string, number, and bigint inputs for maximum flexibility.\n * All values are internally converted to Big.js instances for precision\n * arithmetic and then emitted according to the jsonSafe configuration.\n *\n * @example\n * ```typescript\n * const stringValue: RBigIntFieldValue = \"123456789012345678901234567890\"\n * const numberValue: RBigIntFieldValue = 42\n * const bigintValue: RBigIntFieldValue = 123456789012345678901234567890n\n * ```\n */\nexport type RBigIntFieldValue = string | number | bigint\n\nconst isValidSingleRBigIntFieldValue = (value: RBigIntFieldValue) => {\n if (typeof value === 'bigint') return true\n if (\n typeof value === 'number' &&\n !Number.isNaN(value) &&\n Number.isFinite(value) &&\n Number.isInteger(value)\n )\n return true\n try {\n const asBig = new Big(value.toString())\n if (asBig.toFixed(0) !== value.toString()) return false\n return true\n } catch (e) {\n return e instanceof Error ? false : false\n }\n}\n\nconst isValidRBigIntFieldValue = (\n value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined\n) => {\n if ('undefined' === typeof value || null === value) return true\n if (Array.isArray(value)) return value.every(isValidSingleRBigIntFieldValue)\n return isValidSingleRBigIntFieldValue(value)\n}\n\n/**\n * Creates the complete props and emits configuration for RBigIntField.\n *\n * Combines the base props with validation-enabled emits for model value updates.\n * All emit values are validated through isValidRBigIntFieldValue before emission.\n *\n * @returns Object containing makeProps function and emits configuration\n *\n * @example\n * ```typescript\n * const { makeProps, emits } = propsAndEmitsFactory(...)\n * // Use in component definition\n * export const RBigIntField = defineComponent({\n * props: makeProps(),\n * emits: emits,\n * // ...\n * })\n * ```\n */\nconst { makeProps: makeRBigIntFieldProps, emits: rBigIntFieldEmits } = propsAndEmitsFactory(\n {\n ...makeRBigIntFieldBaseProps(),\n },\n {\n 'update:modelValue': (value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined) =>\n isValidRBigIntFieldValue(value),\n 'update:model-value': (value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined) =>\n isValidRBigIntFieldValue(value),\n ...commonEmitsValidators,\n },\n ''\n)\n\n/**\n * Props factory function for RBigIntField component.\n *\n * @example\n * ```typescript\n * const props = makeRBigIntFieldProps()\n * ```\n */\n/**\n * Emits configuration for RBigIntField component with validation.\n *\n * @example\n * ```typescript\n * const emits = rBigIntFieldEmits\n * ```\n */\nexport { makeRBigIntFieldProps, rBigIntFieldEmits }\n\n/**\n * Type definition for RBigIntField component props.\n *\n * Extracted from the props factory function to provide type safety\n * for component usage and prop validation.\n *\n * @example\n * ```typescript\n * const props: RBigIntFieldProps = {\n * modelValue: \"123456789012345678901234567890\",\n * label: \"Large Number\",\n * format: \"0,0\",\n * jsonSafe: true\n * }\n * ```\n */\nexport type RBigIntFieldProps = ExtractPublicPropTypes<ReturnType<typeof makeRBigIntFieldProps>>\n\ntype VTextfieldPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVTextFieldProps>>\ntype VTextFieldSlots = ExtractSlotDefinitions<typeof VTextField.slots>\ntype VTextFieldAppendInnerArgs = NamedSlotParameters<VTextFieldSlots, 'append-inner'>\ntype VTextFieldPrependInnerArgs = NamedSlotParameters<VTextFieldSlots, 'prepend-inner'>\n\nconst safeGetAsBig = (value: RBigIntFieldValue): Big | Error => {\n try {\n return new Big(value.toString())\n } catch (error: unknown) {\n return new Error('Invalid BigInt value', {\n cause: error instanceof Error ? error : undefined,\n })\n }\n}\n\nconst isEmitable = (\n value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined,\n min: string | number | bigint | undefined,\n max: string | number | bigint | undefined\n) => {\n if (!isValidRBigIntFieldValue(value)) return false\n if ('undefined' === typeof value || null === value) return true\n if ('undefined' === typeof min && 'undefined' === typeof max) return true\n try {\n const minAsBig = 'undefined' === typeof min ? min : new Big(min.toString())\n const maxAsBig = 'undefined' === typeof max ? max : new Big(max.toString())\n const valueAsBig = Array.isArray(value)\n ? value.map((v) => safeGetAsBig(v))\n : safeGetAsBig(value)\n if (Array.isArray(valueAsBig)) {\n return valueAsBig.every((v) => {\n // if we caught and error, the value\n // is assumed to be not safe to emit\n if (v instanceof Error) return false\n if (minAsBig && v.lte(minAsBig)) return false\n if (maxAsBig && v.gte(maxAsBig)) return false\n return true\n })\n } else {\n // if we caught and error, the value\n // is assumed to be not safe to emit\n if (valueAsBig instanceof Error) return false\n if (minAsBig && valueAsBig.lte(minAsBig)) return false\n if (maxAsBig && valueAsBig.gte(maxAsBig)) return false\n return true\n }\n } catch {\n // if we caught and error, the value\n // is assumed to be not safe to emit\n return false\n }\n}\n\nexport const toEmitable = (\n value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined,\n jsonSafe: boolean = true\n): RBigIntFieldValue | RBigIntFieldValue[] | null | undefined => {\n if (Array.isArray(value)) {\n return value\n .map((v) => toEmitable(v, jsonSafe))\n .filter((v) => v !== undefined && v !== null) as RBigIntFieldValue[]\n }\n if ('undefined' === typeof value || null === value) return value\n try {\n const asBig = new Big(value.toString())\n if (jsonSafe) {\n return asBig.toFixed(0)\n }\n // if the number is outside of a Number objects boundaries, we must return a bigint\n if (asBig.gt(Number.MAX_SAFE_INTEGER) || asBig.lt(Number.MIN_SAFE_INTEGER)) {\n return BigInt(asBig.toFixed(0))\n }\n return 'number' === typeof value ? Number.parseInt(asBig.toFixed(0)) : BigInt(asBig.toFixed(0))\n } catch {\n return undefined\n }\n}\n\nconst fromEmitable = (\n value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined\n): string | string[] | null | undefined => {\n if (Array.isArray(value)) {\n return value\n .map((v) => fromEmitable(v))\n .filter((v) => v !== undefined && v !== null) as string[]\n }\n if ('undefined' === typeof value || null === value) return value\n try {\n const asBig = new Big(value.toString())\n return asBig.toFixed(0)\n } catch {\n return undefined\n }\n}\n\n/**\n * RBigIntField - A sophisticated Vue component for handling unlimited precision integers.\n *\n * This component provides a comprehensive solution for working with large integers that\n * exceed JavaScript's Number.MAX_SAFE_INTEGER. It uses Big.js for arithmetic operations\n * and provides seamless integration with the resourceful field ecosystem.\n *\n * ## Key Features\n *\n * - **Unlimited Precision**: Handle arbitrarily large integers using Big.js\n * - **JSON Compatibility**: Configurable serialization for API compatibility\n * - **Input Controls**: Custom increment/decrement buttons with proper accessibility\n * - **Multiple Values**: Support for arrays with chip-based interface\n * - **Validation**: Comprehensive boundary checking and type validation\n * - **Formatting**: Integration with numeral.js for display formatting\n *\n * ## Technical Details\n *\n * The component uses VTextField as its base instead of VNumberInput due to BigInt\n * incompatibility with HTML number inputs. Custom controls are recreated to match\n * VNumberInput behavior while supporting unlimited precision values.\n *\n * @example\n * ```vue\n * <template>\n * <!-- Basic usage -->\n * <RBigIntField\n * v-model=\"largeNumber\"\n * label=\"Large Number\"\n * format=\"0,0\"\n * />\n *\n * <!-- Multiple values -->\n * <RBigIntField\n * v-model=\"largeNumbers\"\n * multiple\n * label=\"Large Numbers\"\n * />\n *\n * <!-- With constraints -->\n * <RBigIntField\n * v-model=\"constrainedNumber\"\n * :min=\"1000000000000000n\"\n * :max=\"9999999999999999n\"\n * />\n * </template>\n * ```\n */\nexport const RBigIntField = defineComponent({\n name: 'RBigIntField',\n props: makeRBigIntFieldProps(),\n emits: rBigIntFieldEmits,\n slots: Object as SlotsType<VNumberInputSlots>,\n setup(props, { emit, slots }) {\n const {\n focused,\n disabled,\n error,\n errorMessages,\n maxErrors,\n name,\n label,\n readonly,\n validateOn,\n theme,\n width,\n maxWidth,\n minWidth,\n density,\n class: className,\n style,\n id,\n baseColor,\n color,\n glow,\n iconColor,\n hideDetails,\n hint,\n persistentHint,\n messages,\n direction,\n modelValue,\n renderMode,\n multiple,\n choices,\n allowUnspecifiedChoices,\n to,\n href,\n menuIcon,\n active,\n variant,\n prefix,\n persistentPlaceholder,\n suffix,\n role,\n noValuesText,\n clearIcon,\n controlVariant,\n format,\n incrementIcon,\n decrementIcon,\n collapseIcon,\n expandIcon,\n reverse,\n hideInput,\n inset,\n step,\n dirty,\n onBlur,\n onChange,\n onInput,\n } = toRefs(props)\n const fixedEmit: typeof emit = (event, ...args) => {\n switch (event) {\n case 'update:modelValue':\n case 'update:model-value': {\n const canEmit = args.every((v) =>\n isEmitable(\n v as RBigIntFieldValue | RBigIntFieldValue[] | null | undefined,\n props.min,\n props.max\n )\n )\n if (!canEmit) return\n // @ts-expect-error\n return emit(event, ...args.map((v) => toEmitable(v, props.jsonSafe)))\n }\n\n default:\n // @ts-expect-error\n return emit(event, ...args)\n }\n }\n const onUpdateModelValueCamelProp = (\n value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined\n ) => {\n if ('undefined' === typeof props['onUpdate:modelValue']) return\n const emitable = toEmitable(value, props.jsonSafe)\n if (!isEmitable(emitable, props.min, props.max)) return\n props['onUpdate:modelValue'](emitable)\n }\n const onUpdateModelValueKebabProp = (\n value: RBigIntFieldValue | RBigIntFieldValue[] | null | undefined\n ) => {\n if ('undefined' === typeof props['onUpdate:model-value']) return\n const emitable = toEmitable(value, props.jsonSafe)\n if (!isEmitable(emitable, props.min, props.max)) return\n props['onUpdate:model-value'](emitable)\n }\n const textifiedModelValue = computed(() => fromEmitable(modelValue.value))\n const stringifier = computed<RFieldStringifier<RBigIntFieldValue>>(() => {\n return (val: RBigIntFieldValue) => {\n if (!isValidSingleRBigIntFieldValue(val)) return ''\n try {\n const asBig = new Big(val.toString())\n // return numeral(asBig.toFixed(0)).format(format.value)\n return formatBigNumber(asBig, format.value)\n } catch {\n return ''\n }\n }\n })\n const commonProps: ToRefs<LooseRequired<Readonly<CommonResourcefulFieldPublicProps>>> = {\n style,\n label,\n density,\n renderMode,\n multiple,\n to,\n href,\n menuIcon,\n active,\n theme,\n disabled,\n variant,\n prefix,\n persistentPlaceholder,\n suffix,\n role,\n focused,\n noValuesText,\n choices,\n allowUnspecifiedChoices,\n 'class': className,\n 'onUpdate:focused': toRefs(props)['onUpdate:focused'],\n 'onClick:append': toRefs(props)['onClick:append'],\n 'onClick:appendInner': toRefs(props)['onClick:appendInner'],\n 'onClick:clear': toRefs(props)['onClick:clear'],\n 'onClick:prependInner': toRefs(props)['onClick:prependInner'],\n 'onClick:prepend': toRefs(props)['onClick:prepend'],\n 'onMousedown:control': toRefs(props)['onMousedown:control'],\n 'onClick:control': toRefs(props)['onClick:control'],\n error,\n errorMessages,\n dirty,\n onBlur,\n onChange,\n onInput,\n }\n const VNumberInputFieldBindings = computed<VTextfieldPublicProps>(() =>\n stripUndefinedValuesFromObject({\n focused: focused.value,\n disabled: disabled.value,\n error: error.value,\n errorMessages: errorMessages.value,\n maxErrors: maxErrors.value,\n name: name.value,\n label: label.value,\n readonly: readonly.value,\n validateOn: validateOn.value,\n theme: theme.value,\n width: width.value,\n maxWidth: maxWidth.value,\n minWidth: minWidth.value,\n density: density.value,\n class: className.value,\n style: style.value,\n id: id.value,\n baseColor: baseColor.value,\n color: color.value,\n glow: glow.value,\n iconColor: iconColor.value,\n hideDetails: hideDetails.value,\n hint: hint.value,\n persistentHint: persistentHint.value,\n messages: messages.value,\n direction: direction.value,\n variant: variant.value,\n clearIcon: clearIcon.value,\n controlVariant: controlVariant.value,\n active: active.value,\n prefix: prefix.value,\n persistentPlaceholder: persistentPlaceholder.value,\n suffix: suffix.value,\n role: role.value,\n dirty: dirty.value,\n onBlur: onBlur.value,\n onChange: onChange.value,\n onInput: onInput.value,\n })\n )\n const normalizedIncrementIcon = computed(() =>\n controlVariant.value === 'split' ? incrementIcon.value : collapseIcon.value\n )\n const normalizedDecrementIcon = computed(() =>\n controlVariant.value === 'split' ? decrementIcon.value : expandIcon.value\n )\n const normalizedControlNodeSize = computed(() =>\n controlVariant.value === 'split' ? 'default' : 'small'\n )\n const normalizedControlNodeDefaultHeight = computed(() =>\n controlVariant.value === 'stacked' ? 'auto' : '100%'\n )\n const normalizedControlsDisabled = computed(() => disabled.value || readonly.value)\n const normalizedStep = computed(() => {\n const stepValue = step.value ?? 1\n if (stepValue <= 0) return 1\n return Math.round(stepValue) || 1\n })\n const singleFieldRenderer: SingleFieldRenderer = ({\n props: fieldBindings,\n isMultiAdd,\n add,\n }) => {\n const canIncrease = computed(() => {\n if (normalizedControlsDisabled.value) return false\n const isBig = safeGetAsBig(fieldBindings.modelValue as RBigIntFieldValue)\n if (isBig instanceof Error) return false\n const maxAsBig = 'undefined' === typeof props.max ? undefined : safeGetAsBig(props.max)\n if (maxAsBig instanceof Error) return false\n if ('undefined' === typeof maxAsBig) return true\n return isBig.add(normalizedStep.value).lte(maxAsBig)\n })\n const canDecrease = computed(() => {\n if (normalizedControlsDisabled.value) return false\n const isBig = safeGetAsBig(fieldBindings.modelValue as RBigIntFieldValue)\n if (isBig instanceof Error) return false\n const minAsBig = 'undefined' === typeof props.min ? undefined : safeGetAsBig(props.min)\n if (minAsBig instanceof Error) return false\n if ('undefined' === typeof minAsBig) return true\n return isBig.sub(normalizedStep.value).gte(minAsBig)\n })\n const incrementSlot = useSlot<VNumberInputSlots>('increment', slots)\n const decrementSlot = useSlot<VNumberInputSlots>('decrement', slots)\n const incrementControlNode = () => {\n const slotProps = {\n props: {\n onClick: (e: MouseEvent) => e.stopPropagation(),\n onPointerup: (e: PointerEvent) => {\n const el = e.currentTarget as HTMLElement\n el?.releasePointerCapture(e.pointerId)\n e.preventDefault()\n e.stopPropagation()\n },\n onPointerdown: (e: PointerEvent) => {\n const el = e.currentTarget as HTMLElement\n el?.setPointerCapture(e.pointerId)\n e.preventDefault()\n e.stopPropagation()\n // Increment logic here\n if (canIncrease.value) {\n const current = safeGetAsBig(fieldBindings.modelValue as RBigIntFieldValue)\n if (!(current instanceof Error)) {\n fieldBindings['onUpdate:modelValue'](current.add(1).toFixed(0))\n }\n }\n },\n onPointercancel: (e: PointerEvent) => {\n const el = e.currentTarget as HTMLElement\n el?.releasePointerCapture(e.pointerId)\n },\n },\n }\n\n return incrementSlot\n ? // @ts-expect-error\n incrementSlot(slotProps)\n : h(VBtn, {\n disabled: !canIncrease.value,\n flat: true,\n height: normalizedControlNodeDefaultHeight.value,\n icon: normalizedIncrementIcon.value,\n size: normalizedControlNodeSize.value,\n tabindex: '-1',\n ...slotProps.props,\n })\n }\n const decrementControlNode = () => {\n const slotProps = {\n props: {\n onClick: (e: MouseEvent) => e.stopPropagation(),\n onPointerup: (e: PointerEvent) => {\n const el = e.currentTarget as HTMLElement\n el?.releasePointerCapture(e.pointerId)\n e.preventDefault()\n e.stopPropagation()\n },\n onPointerdown: (e: PointerEvent) => {\n const el = e.currentTarget as HTMLElement\n el?.setPointerCapture(e.pointerId)\n e.preventDefault()\n e.stopPropagation()\n // Decrement logic here\n if (canDecrease.value) {\n const current = safeGetAsBig(fieldBindings.modelValue as RBigIntFieldValue)\n if (!(current instanceof Error)) {\n fieldBindings['onUpdate:modelValue'](current.sub(1).toFixed(0))\n }\n }\n },\n onPointercancel: (e: PointerEvent) => {\n const el = e.currentTarget as HTMLElement\n el?.releasePointerCapture(e.pointerId)\n },\n },\n }\n\n return decrementSlot\n ? // @ts-expect-error\n decrementSlot(slotProps)\n : h(VBtn, {\n disabled: !canDecrease.value,\n flat: true,\n height: normalizedControlNodeDefaultHeight.value,\n icon: normalizedDecrementIcon.value,\n size: normalizedControlNodeSize.value,\n tabindex: '-1',\n ...slotProps.props,\n })\n }\n const appendInnerSlot = () => {\n if (controlVariant.value === 'split') {\n return h('div', { class: 'v-number-input__control' }, [\n h(VDivider, { vertical: true }),\n incrementControlNode(),\n ])\n } else if (!reverse.value && controlVariant.value !== 'hidden') {\n return [\n !hideInput.value && !inset.value && h(VDivider, { vertical: true }),\n h('div', { class: 'v-number-input__control' }, [\n decrementControlNode(),\n h(VDivider, { vertical: controlVariant.value !== 'stacked' }),\n incrementControlNode(),\n ]),\n ]\n }\n return undefined\n }\n const prependInnerSlot = () => {\n if (controlVariant.value === 'split') {\n return h('div', { class: 'v-number-input__control' }, [\n decrementControlNode(),\n h(VDivider, { vertical: true }),\n ])\n } else if (reverse.value && controlVariant.value !== 'hidden') {\n return [\n h('div', { class: 'v-number-input__control' }, [\n decrementControlNode(),\n h(VDivider, { vertical: controlVariant.value !== 'stacked' }),\n incrementControlNode(),\n ]),\n !hideInput.value && !inset.value && h(VDivider, { vertical: true }),\n ]\n }\n return undefined\n }\n return h(\n VTextField,\n {\n ...VNumberInputFieldBindings.value,\n ...fieldBindings,\n class: isMultiAdd\n ? []\n : [\n 'v-number-input',\n {\n 'v-number-input--default': controlVariant.value === 'default',\n 'v-number-input--hide-input': props.hideInput,\n 'v-number-input--inset': props.inset,\n 'v-number-input--reverse': props.reverse,\n 'v-number-input--split': controlVariant.value === 'split',\n 'v-number-input--stacked': controlVariant.value === 'stacked',\n },\n VNumberInputFieldBindings.value.class,\n ],\n hideDetails: isMultiAdd ? true : VNumberInputFieldBindings.value.hideDetails,\n inputmode: 'decimal',\n onKeydown: (e: KeyboardEvent) => {\n if (e.key === 'Enter' && isMultiAdd) {\n queueMicrotask(() => add())\n } else if (['ArrowUp', 'ArrowDown'].includes(e.key)) {\n e.preventDefault()\n const current = safeGetAsBig(fieldBindings.modelValue as RBigIntFieldValue)\n if (!(current instanceof Error)) {\n if (e.key === 'ArrowUp' && canIncrease.value) {\n fieldBindings['onUpdate:modelValue'](current.add(1).toString())\n } else if (e.key === 'ArrowDown' && canDecrease.value) {\n fieldBindings['onUpdate:modelValue'](current.sub(1).toString())\n }\n }\n }\n },\n },\n // eslint-disable-next-line @nht/require-function-slots-for-programmatic-components\n {\n ...slots,\n 'append-inner': (...args: VTextFieldAppendInnerArgs) => [\n slots['append-inner']?.(...args),\n appendInnerSlot(),\n ],\n 'prepend-inner': (...args: VTextFieldPrependInnerArgs) => [\n prependInnerSlot(),\n slots['prepend-inner']?.(...args),\n ],\n }\n )\n }\n const { composed } = useFieldComposer(\n commonProps,\n stringifier,\n singleFieldRenderer,\n fixedEmit,\n onUpdateModelValueCamelProp,\n onUpdateModelValueKebabProp,\n textifiedModelValue,\n textifiedModelValue.value\n )\n return composed\n },\n})\n\nexport type RBigIntField = typeof RBigIntField & ComponentPublicInstance\n"],"names":["makeRBigIntFieldBaseProps","propsFactory","omit","makeRNumberFieldProps","pick","makeVTextFieldProps","makeVNumberInputProps","isValidSingleRBigIntFieldValue","value","Big","e","isValidRBigIntFieldValue","makeRBigIntFieldProps","rBigIntFieldEmits","propsAndEmitsFactory","commonEmitsValidators","safeGetAsBig","error","isEmitable","min","max","minAsBig","maxAsBig","valueAsBig","toEmitable","jsonSafe","v","asBig","fromEmitable","RBigIntField","defineComponent","props","emit","slots","focused","disabled","errorMessages","maxErrors","name","label","readonly","validateOn","theme","width","maxWidth","minWidth","density","className","style","id","baseColor","color","glow","iconColor","hideDetails","hint","persistentHint","messages","direction","modelValue","renderMode","multiple","choices","allowUnspecifiedChoices","to","href","menuIcon","active","variant","prefix","persistentPlaceholder","suffix","role","noValuesText","clearIcon","controlVariant","format","incrementIcon","decrementIcon","collapseIcon","expandIcon","reverse","hideInput","inset","step","dirty","onBlur","onChange","onInput","toRefs","fixedEmit","event","args","onUpdateModelValueCamelProp","emitable","onUpdateModelValueKebabProp","textifiedModelValue","computed","stringifier","val","formatBigNumber","commonProps","VNumberInputFieldBindings","stripUndefinedValuesFromObject","normalizedIncrementIcon","normalizedDecrementIcon","normalizedControlNodeSize","normalizedControlNodeDefaultHeight","normalizedControlsDisabled","normalizedStep","stepValue","singleFieldRenderer","fieldBindings","isMultiAdd","add","canIncrease","isBig","canDecrease","incrementSlot","useSlot","decrementSlot","incrementControlNode","slotProps","current","h","VBtn","decrementControlNode","appendInnerSlot","VDivider","prependInnerSlot","VTextField","composed","useFieldComposer"],"mappings":"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"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { a as aa } from "./ioc-Du_Tgg-1.mjs";
|
|
2
|
-
import { S as m } from "./index-
|
|
3
|
-
import { u as la } from "./field_composer-
|
|
4
|
-
import { d as oa,
|
|
5
|
-
import { ref as
|
|
6
|
-
import { I as x } from "./elevation-
|
|
7
|
-
import { w as Fe,
|
|
8
|
-
import { r as xe,
|
|
9
|
-
import { V as ka, a as Ca } from "./VRadioGroup-
|
|
10
|
-
import { g as Ie, p as Se, u as X,
|
|
11
|
-
|
|
2
|
+
import { S as m } from "./index-C-PCfO1S.mjs";
|
|
3
|
+
import { u as la } from "./field_composer-ugYyDQNY.mjs";
|
|
4
|
+
import { d as oa, x as ta, w as fe, s as j } from "./utils-D3ZGaTyv.mjs";
|
|
5
|
+
import { ref as G, useId as Ce, createVNode as c, mergeProps as N, toRef as he, createElementVNode as M, Fragment as na, normalizeStyle as pe, normalizeClass as Ve, h as o, defineComponent as sa, toRefs as d, computed as n } from "vue";
|
|
6
|
+
import { I as x } from "./elevation-YNOj0hSa.mjs";
|
|
7
|
+
import { w as Fe, j as L, x as be, r as ge, y as ra, n as ye, o as ia, c as ua, b as da, g as ca, h as va, z as ma } from "./common-Bi5RUD-n.mjs";
|
|
8
|
+
import { r as xe, e as fa, f as ha, g as pa, F as Va, G as ba, H as ya, d as we } from "./mdi-DC1jeTJJ.mjs";
|
|
9
|
+
import { V as ka, a as Ca } from "./VRadioGroup-BO7XdtLS.mjs";
|
|
10
|
+
import { g as Ie, p as Se, u as X, o as Re, L as Pe, F as Fa, Y as ga, Z as xa, E as wa, _ as Ia, a as Sa, $ as Ra, d as Pa } from "./display-fXo4JeIS.mjs";
|
|
11
|
+
const Ba = Se({
|
|
12
12
|
...ge(),
|
|
13
13
|
...Fa(ra(), ["inline"])
|
|
14
14
|
}, "VCheckbox"), Aa = Ie()({
|
|
@@ -28,10 +28,10 @@ import './boolean.css';const Ba = Se({
|
|
|
28
28
|
isFocused: s,
|
|
29
29
|
focus: w,
|
|
30
30
|
blur: I
|
|
31
|
-
} = Fe(e), b =
|
|
31
|
+
} = Fe(e), b = G(), S = Ce();
|
|
32
32
|
return Re(() => {
|
|
33
33
|
const [h, y] = Pe(v), k = L.filterProps(e), C = be.filterProps(e);
|
|
34
|
-
return c(L,
|
|
34
|
+
return c(L, N({
|
|
35
35
|
ref: b,
|
|
36
36
|
class: ["v-checkbox", e.class]
|
|
37
37
|
}, h, k, {
|
|
@@ -50,7 +50,7 @@ import './boolean.css';const Ba = Se({
|
|
|
50
50
|
isReadonly: u,
|
|
51
51
|
isValid: F
|
|
52
52
|
} = p;
|
|
53
|
-
return c(be,
|
|
53
|
+
return c(be, N(C, {
|
|
54
54
|
id: R.value,
|
|
55
55
|
"aria-describedby": P.value,
|
|
56
56
|
disabled: r.value,
|
|
@@ -96,7 +96,7 @@ import './boolean.css';const Ba = Se({
|
|
|
96
96
|
isFocused: I,
|
|
97
97
|
focus: b,
|
|
98
98
|
blur: S
|
|
99
|
-
} = Fe(e), h =
|
|
99
|
+
} = Fe(e), h = G(), y = G(), k = xa && window.matchMedia("(forced-colors: active)").matches, C = he(() => typeof e.loading == "string" && e.loading !== "" ? e.loading : e.color), p = Ce(), R = he(() => e.id || `switch-${p}`);
|
|
100
100
|
function P() {
|
|
101
101
|
t.value && (t.value = !1);
|
|
102
102
|
}
|
|
@@ -105,7 +105,7 @@ import './boolean.css';const Ba = Se({
|
|
|
105
105
|
}
|
|
106
106
|
return Re(() => {
|
|
107
107
|
const [u, F] = Pe(v), B = L.filterProps(e), Y = ye.filterProps(e);
|
|
108
|
-
return c(L,
|
|
108
|
+
return c(L, N({
|
|
109
109
|
ref: y,
|
|
110
110
|
class: ["v-switch", {
|
|
111
111
|
"v-switch--flat": e.flat
|
|
@@ -134,7 +134,7 @@ import './boolean.css';const Ba = Se({
|
|
|
134
134
|
model: s,
|
|
135
135
|
isValid: D
|
|
136
136
|
};
|
|
137
|
-
return c(ye,
|
|
137
|
+
return c(ye, N({
|
|
138
138
|
ref: h
|
|
139
139
|
}, Y, {
|
|
140
140
|
modelValue: s.value,
|
|
@@ -170,14 +170,14 @@ import './boolean.css';const Ba = Se({
|
|
|
170
170
|
let {
|
|
171
171
|
inputNode: T,
|
|
172
172
|
icon: i,
|
|
173
|
-
backgroundColorClasses:
|
|
174
|
-
backgroundColorStyles:
|
|
173
|
+
backgroundColorClasses: E,
|
|
174
|
+
backgroundColorStyles: O
|
|
175
175
|
} = V;
|
|
176
176
|
return M(na, null, [T, M("div", {
|
|
177
177
|
class: Ve(["v-switch__thumb", {
|
|
178
178
|
"v-switch__thumb--filled": i || e.loading
|
|
179
|
-
}, e.inset || k ? void 0 :
|
|
180
|
-
style: pe(e.inset ? void 0 :
|
|
179
|
+
}, e.inset || k ? void 0 : E.value]),
|
|
180
|
+
style: pe(e.inset ? void 0 : O.value)
|
|
181
181
|
}, [l.thumb ? c(wa, {
|
|
182
182
|
defaults: {
|
|
183
183
|
VIcon: {
|
|
@@ -347,8 +347,8 @@ import './boolean.css';const Ba = Se({
|
|
|
347
347
|
direction: V,
|
|
348
348
|
modelValue: T,
|
|
349
349
|
renderAs: i,
|
|
350
|
-
textForTrue:
|
|
351
|
-
textForFalse:
|
|
350
|
+
textForTrue: E,
|
|
351
|
+
textForFalse: O,
|
|
352
352
|
textForUndetermined: g,
|
|
353
353
|
iconForTrue: Be,
|
|
354
354
|
iconForFalse: Ae,
|
|
@@ -366,21 +366,21 @@ import './boolean.css';const Ba = Se({
|
|
|
366
366
|
suffix: te,
|
|
367
367
|
role: ne,
|
|
368
368
|
noValuesText: za,
|
|
369
|
-
selectMenuIcon:
|
|
369
|
+
selectMenuIcon: Ee,
|
|
370
370
|
ripple: Q,
|
|
371
|
-
iconForSelectedRadio:
|
|
371
|
+
iconForSelectedRadio: Oe,
|
|
372
372
|
iconForUnselectedRadio: We,
|
|
373
373
|
dirty: He,
|
|
374
374
|
onBlur: $e,
|
|
375
|
-
onChange:
|
|
376
|
-
onInput:
|
|
375
|
+
onChange: je,
|
|
376
|
+
onInput: Ge
|
|
377
377
|
} = d(e), H = n(() => {
|
|
378
378
|
const a = [];
|
|
379
379
|
return W.value ? (W.value.includes(!0) && a.push(!0), W.value.includes(!1) && a.push(!1), W.value.includes(null) && a.push(null)) : a.push(...z), a;
|
|
380
|
-
}),
|
|
381
|
-
() => typeof
|
|
380
|
+
}), Ne = n(
|
|
381
|
+
() => typeof E.value == "string" ? E.value : l("boolean.true")
|
|
382
382
|
), Le = n(
|
|
383
|
-
() => typeof
|
|
383
|
+
() => typeof O.value == "string" ? O.value : l("boolean.false")
|
|
384
384
|
), Ye = n(
|
|
385
385
|
() => typeof g.value == "string" ? g.value : l("boolean.undetermined")
|
|
386
386
|
), Ze = {
|
|
@@ -401,7 +401,7 @@ import './boolean.css';const Ba = Se({
|
|
|
401
401
|
suffix: te,
|
|
402
402
|
role: ne,
|
|
403
403
|
focused: t,
|
|
404
|
-
allowUnspecifiedChoices:
|
|
404
|
+
allowUnspecifiedChoices: G(!1),
|
|
405
405
|
choices: H,
|
|
406
406
|
class: u,
|
|
407
407
|
"onUpdate:focused": d(e)["onUpdate:focused"],
|
|
@@ -415,7 +415,7 @@ import './boolean.css';const Ba = Se({
|
|
|
415
415
|
}, se = n(() => (a) => {
|
|
416
416
|
switch (a) {
|
|
417
417
|
case !0:
|
|
418
|
-
return
|
|
418
|
+
return Ne.value;
|
|
419
419
|
case !1:
|
|
420
420
|
return Le.value;
|
|
421
421
|
default:
|
|
@@ -455,10 +455,10 @@ import './boolean.css';const Ba = Se({
|
|
|
455
455
|
direction: V.value,
|
|
456
456
|
dirty: He.value,
|
|
457
457
|
onBlur: $e.value,
|
|
458
|
-
onChange:
|
|
459
|
-
onInput:
|
|
458
|
+
onChange: je.value,
|
|
459
|
+
onInput: Ge.value
|
|
460
460
|
})), ie = n(
|
|
461
|
-
() =>
|
|
461
|
+
() => j({
|
|
462
462
|
..._.value,
|
|
463
463
|
active: ee.value,
|
|
464
464
|
disabled: _.value.disabled || void 0,
|
|
@@ -469,14 +469,14 @@ import './boolean.css';const Ba = Se({
|
|
|
469
469
|
itemTitle: "label",
|
|
470
470
|
itemValue: "value",
|
|
471
471
|
variant: ae.value,
|
|
472
|
-
menuIcon:
|
|
472
|
+
menuIcon: Ee.value,
|
|
473
473
|
prefix: le.value,
|
|
474
474
|
persistentPlaceholder: oe.value,
|
|
475
475
|
suffix: te.value,
|
|
476
476
|
role: ne.value
|
|
477
477
|
})
|
|
478
478
|
), ue = n(
|
|
479
|
-
() =>
|
|
479
|
+
() => j({
|
|
480
480
|
..._.value,
|
|
481
481
|
density: r.value,
|
|
482
482
|
falseValue: !1,
|
|
@@ -484,7 +484,7 @@ import './boolean.css';const Ba = Se({
|
|
|
484
484
|
trueValue: !0
|
|
485
485
|
})
|
|
486
486
|
), de = n(
|
|
487
|
-
() =>
|
|
487
|
+
() => j({
|
|
488
488
|
..._.value,
|
|
489
489
|
density: r.value,
|
|
490
490
|
falseIcon: Ae.value,
|
|
@@ -495,11 +495,11 @@ import './boolean.css';const Ba = Se({
|
|
|
495
495
|
trueValue: !0
|
|
496
496
|
})
|
|
497
497
|
), ce = n(
|
|
498
|
-
() =>
|
|
498
|
+
() => j({
|
|
499
499
|
..._.value,
|
|
500
500
|
density: r.value,
|
|
501
501
|
falseIcon: We.value,
|
|
502
|
-
trueIcon:
|
|
502
|
+
trueIcon: Oe.value,
|
|
503
503
|
ripple: Q.value
|
|
504
504
|
})
|
|
505
505
|
), qe = ({ props: a, isMultiAdd: $ }) => {
|
|
@@ -574,4 +574,4 @@ export {
|
|
|
574
574
|
z as a,
|
|
575
575
|
Ya as b
|
|
576
576
|
};
|
|
577
|
-
//# sourceMappingURL=boolean-
|
|
577
|
+
//# sourceMappingURL=boolean-1-MOJPSu.mjs.map
|