@vuetify/nightly 3.6.5-master.2024-05-12 → 3.6.5-master.2024-05-14

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.
@@ -1 +1 @@
1
- {"version":3,"file":"VNumberInput.mjs","names":["VBtn","VDefaultsProvider","VDivider","makeVTextFieldProps","VTextField","useProxiedModel","computed","watchEffect","clamp","genericComponent","getDecimals","omit","propsFactory","useRender","makeVNumberInputProps","controlVariant","type","String","default","inset","Boolean","hideInput","min","Number","Infinity","max","step","VNumberInput","name","inheritAttrs","props","emits","val","setup","_ref","attrs","emit","slots","model","stepDecimals","modelDecimals","value","canIncrease","canDecrease","incrementSlotProps","click","onClickUp","decrementSlotProps","onClickDown","toggleUpDown","increment","arguments","length","undefined","decimals","Math","toFixed","onKeydown","e","includes","key","ctrlKey","preventDefault","test","onModelUpdate","v","modelValue","_","textFieldProps","filterProps","controlNode","defaultHeight","_createVNode","decrement","disabled","flat","height","size","icon","dividerNode","appendInnerControl","reverse","_Fragment","hasAppendInner","prependInnerControl","hasPrependInner","_mergeProps","class","style","_len","args","Array","_key","_len2","_key2"],"sources":["../../../src/labs/VNumberInput/VNumberInput.tsx"],"sourcesContent":["// Styles\nimport './VNumberInput.sass'\n\n// Components\nimport { VBtn } from '../../components/VBtn'\nimport { VDefaultsProvider } from '../../components/VDefaultsProvider'\nimport { VDivider } from '../../components/VDivider'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, watchEffect } from 'vue'\nimport { clamp, genericComponent, getDecimals, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VTextFieldSlots } from '@/components/VTextField/VTextField'\n\ntype ControlSlot = {\n click: () => void\n}\n\ntype VNumberInputSlots = Omit<VTextFieldSlots, 'default'> & {\n increment: ControlSlot\n decrement: ControlSlot\n}\n\ntype ControlVariant = 'default' | 'stacked' | 'split'\n\nconst makeVNumberInputProps = propsFactory({\n controlVariant: {\n type: String as PropType<ControlVariant>,\n default: 'default',\n },\n inset: Boolean,\n hideInput: Boolean,\n min: {\n type: Number,\n default: -Infinity,\n },\n max: {\n type: Number,\n default: Infinity,\n },\n step: {\n type: Number,\n default: 1,\n },\n\n ...omit(makeVTextFieldProps(), ['appendInnerIcon', 'prependInnerIcon']),\n}, 'VNumberInput')\n\nexport const VNumberInput = genericComponent<VNumberInputSlots>()({\n name: 'VNumberInput',\n\n inheritAttrs: false,\n\n props: {\n ...makeVNumberInputProps(),\n },\n\n emits: {\n 'update:modelValue': (val: number) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n\n const stepDecimals = computed(() => getDecimals(props.step))\n const modelDecimals = computed(() => model.value != null ? getDecimals(model.value) : 0)\n\n const canIncrease = computed(() => {\n if (model.value == null) return true\n return model.value + props.step <= props.max\n })\n const canDecrease = computed(() => {\n if (model.value == null) return true\n return model.value - props.step >= props.min\n })\n\n watchEffect(() => {\n if (model.value != null && (model.value < props.min || model.value > props.max)) {\n model.value = clamp(model.value, props.min, props.max)\n }\n })\n\n const controlVariant = computed(() => {\n return props.hideInput ? 'stacked' : props.controlVariant\n })\n\n const incrementSlotProps = computed(() => ({ click: onClickUp }))\n\n const decrementSlotProps = computed(() => ({ click: onClickDown }))\n\n function toggleUpDown (increment = true) {\n if (model.value == null) {\n model.value = 0\n return\n }\n\n const decimals = Math.max(modelDecimals.value, stepDecimals.value)\n if (increment) {\n if (canIncrease.value) model.value = +(((model.value + props.step).toFixed(decimals)))\n } else {\n if (canDecrease.value) model.value = +(((model.value - props.step).toFixed(decimals)))\n }\n }\n\n function onClickUp () {\n toggleUpDown()\n }\n\n function onClickDown () {\n toggleUpDown(false)\n }\n\n function onKeydown (e: KeyboardEvent) {\n if (\n ['Enter', 'ArrowLeft', 'ArrowRight', 'Backspace', 'Tab'].includes(e.key) ||\n e.ctrlKey\n ) return\n\n if (['ArrowDown'].includes(e.key)) {\n e.preventDefault()\n toggleUpDown(false)\n return\n }\n if (['ArrowUp'].includes(e.key)) {\n e.preventDefault()\n toggleUpDown()\n return\n }\n\n // Only numbers, +, - & . are allowed\n if (!/^[0-9\\-+.]+$/.test(e.key)) {\n e.preventDefault()\n }\n }\n\n function onModelUpdate (v: string) {\n model.value = v ? +(v) : undefined\n }\n\n useRender(() => {\n const { modelValue: _, ...textFieldProps } = VTextField.filterProps(props)\n\n function controlNode () {\n const defaultHeight = controlVariant.value === 'stacked' ? 'auto' : '100%'\n return (\n <div class=\"v-number-input__control\">\n {\n !slots.decrement ? (\n <VBtn\n disabled={ !canDecrease.value }\n flat\n key=\"decrement-btn\"\n height={ defaultHeight }\n name=\"decrement-btn\"\n icon=\"$expand\"\n size=\"small\"\n tabindex=\"-1\"\n onClick={ onClickDown }\n />\n ) : (\n <VDefaultsProvider\n key=\"decrement-defaults\"\n defaults={{\n VBtn: {\n disabled: !canDecrease.value,\n flat: true,\n height: defaultHeight,\n size: 'small',\n icon: '$expand',\n },\n }}\n >\n { slots.decrement(decrementSlotProps.value) }\n </VDefaultsProvider>\n )\n }\n\n <VDivider\n vertical={ controlVariant.value !== 'stacked' }\n />\n\n {\n !slots.increment ? (\n <VBtn\n disabled={ !canIncrease.value }\n flat\n key=\"increment-btn\"\n height={ defaultHeight }\n name=\"increment-btn\"\n icon=\"$collapse\"\n onClick={ onClickUp }\n size=\"small\"\n tabindex=\"-1\"\n />\n ) : (\n <VDefaultsProvider\n key=\"increment-defaults\"\n defaults={{\n VBtn: {\n disabled: !canIncrease.value,\n flat: true,\n height: defaultHeight,\n size: 'small',\n icon: '$collapse',\n },\n }}\n >\n { slots.increment(incrementSlotProps.value) }\n </VDefaultsProvider>\n )\n }\n </div>\n )\n }\n\n function dividerNode () {\n return !props.hideInput && !props.inset ? <VDivider vertical /> : undefined\n }\n\n const appendInnerControl =\n controlVariant.value === 'split'\n ? (\n <div class=\"v-number-input__control\">\n <VDivider vertical />\n\n <VBtn\n flat\n height=\"100%\"\n icon=\"$plus\"\n tile\n tabindex=\"-1\"\n onClick={ onClickUp }\n />\n </div>\n ) : (!props.reverse\n ? <>{ dividerNode() }{ controlNode() }</>\n : undefined)\n\n const hasAppendInner = slots['append-inner'] || appendInnerControl\n\n const prependInnerControl =\n controlVariant.value === 'split'\n ? (\n <div class=\"v-number-input__control\">\n <VBtn\n flat\n height=\"100%\"\n icon=\"$minus\"\n tile\n tabindex=\"-1\"\n onClick={ onClickDown }\n />\n\n <VDivider vertical />\n </div>\n ) : (props.reverse\n ? <>{ controlNode() }{ dividerNode() }</>\n : undefined)\n\n const hasPrependInner = slots['prepend-inner'] || prependInnerControl\n\n return (\n <VTextField\n modelValue={ model.value }\n onUpdate:modelValue={ onModelUpdate }\n onKeydown={ onKeydown }\n class={[\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 props.class,\n ]}\n { ...textFieldProps }\n style={ props.style }\n >\n {{\n ...slots,\n 'append-inner': hasAppendInner ? (...args) => (\n <>\n { slots['append-inner']?.(...args) }\n { appendInnerControl }\n </>\n ) : undefined,\n 'prepend-inner': hasPrependInner ? (...args) => (\n <>\n { prependInnerControl }\n { slots['prepend-inner']?.(...args) }\n </>\n ) : undefined,\n }}\n </VTextField>\n )\n })\n },\n})\n\nexport type VNumberInput = InstanceType<typeof VNumberInput>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VNumberInput.mjs","names":["VBtn","VDefaultsProvider","VDivider","makeVTextFieldProps","VTextField","useProxiedModel","computed","watchEffect","clamp","genericComponent","getDecimals","omit","propsFactory","useRender","makeVNumberInputProps","controlVariant","type","String","default","inset","Boolean","hideInput","min","Number","Infinity","max","step","VNumberInput","name","inheritAttrs","props","emits","val","setup","_ref","attrs","emit","slots","model","stepDecimals","modelDecimals","value","canIncrease","canDecrease","incrementSlotProps","click","onClickUp","decrementSlotProps","onClickDown","toggleUpDown","increment","arguments","length","undefined","decimals","Math","toFixed","e","stopPropagation","onKeydown","includes","key","ctrlKey","preventDefault","test","onModelUpdate","v","onControlMousedown","modelValue","_","textFieldProps","filterProps","controlNode","defaultHeight","_createVNode","decrement","disabled","flat","height","size","icon","dividerNode","appendInnerControl","reverse","_Fragment","hasAppendInner","prependInnerControl","hasPrependInner","_mergeProps","class","style","_len","args","Array","_key","_len2","_key2"],"sources":["../../../src/labs/VNumberInput/VNumberInput.tsx"],"sourcesContent":["// Styles\nimport './VNumberInput.sass'\n\n// Components\nimport { VBtn } from '../../components/VBtn'\nimport { VDefaultsProvider } from '../../components/VDefaultsProvider'\nimport { VDivider } from '../../components/VDivider'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, watchEffect } from 'vue'\nimport { clamp, genericComponent, getDecimals, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VTextFieldSlots } from '@/components/VTextField/VTextField'\n\ntype ControlSlot = {\n click: (e: MouseEvent) => void\n}\n\ntype VNumberInputSlots = Omit<VTextFieldSlots, 'default'> & {\n increment: ControlSlot\n decrement: ControlSlot\n}\n\ntype ControlVariant = 'default' | 'stacked' | 'split'\n\nconst makeVNumberInputProps = propsFactory({\n controlVariant: {\n type: String as PropType<ControlVariant>,\n default: 'default',\n },\n inset: Boolean,\n hideInput: Boolean,\n min: {\n type: Number,\n default: -Infinity,\n },\n max: {\n type: Number,\n default: Infinity,\n },\n step: {\n type: Number,\n default: 1,\n },\n\n ...omit(makeVTextFieldProps(), ['appendInnerIcon', 'prependInnerIcon']),\n}, 'VNumberInput')\n\nexport const VNumberInput = genericComponent<VNumberInputSlots>()({\n name: 'VNumberInput',\n\n inheritAttrs: false,\n\n props: {\n ...makeVNumberInputProps(),\n },\n\n emits: {\n 'update:modelValue': (val: number) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n\n const stepDecimals = computed(() => getDecimals(props.step))\n const modelDecimals = computed(() => model.value != null ? getDecimals(model.value) : 0)\n\n const canIncrease = computed(() => {\n if (model.value == null) return true\n return model.value + props.step <= props.max\n })\n const canDecrease = computed(() => {\n if (model.value == null) return true\n return model.value - props.step >= props.min\n })\n\n watchEffect(() => {\n if (model.value != null && (model.value < props.min || model.value > props.max)) {\n model.value = clamp(model.value, props.min, props.max)\n }\n })\n\n const controlVariant = computed(() => {\n return props.hideInput ? 'stacked' : props.controlVariant\n })\n\n const incrementSlotProps = computed(() => ({ click: onClickUp }))\n\n const decrementSlotProps = computed(() => ({ click: onClickDown }))\n\n function toggleUpDown (increment = true) {\n if (model.value == null) {\n model.value = 0\n return\n }\n\n const decimals = Math.max(modelDecimals.value, stepDecimals.value)\n if (increment) {\n if (canIncrease.value) model.value = +(((model.value + props.step).toFixed(decimals)))\n } else {\n if (canDecrease.value) model.value = +(((model.value - props.step).toFixed(decimals)))\n }\n }\n\n function onClickUp (e: MouseEvent) {\n e.stopPropagation()\n toggleUpDown()\n }\n\n function onClickDown (e: MouseEvent) {\n e.stopPropagation()\n toggleUpDown(false)\n }\n\n function onKeydown (e: KeyboardEvent) {\n if (\n ['Enter', 'ArrowLeft', 'ArrowRight', 'Backspace', 'Tab'].includes(e.key) ||\n e.ctrlKey\n ) return\n\n if (['ArrowDown'].includes(e.key)) {\n e.preventDefault()\n toggleUpDown(false)\n return\n }\n if (['ArrowUp'].includes(e.key)) {\n e.preventDefault()\n toggleUpDown()\n return\n }\n\n // Only numbers, +, - & . are allowed\n if (!/^[0-9\\-+.]+$/.test(e.key)) {\n e.preventDefault()\n }\n }\n\n function onModelUpdate (v: string) {\n model.value = v ? +(v) : undefined\n }\n\n function onControlMousedown (e: MouseEvent) {\n e.stopPropagation()\n }\n\n useRender(() => {\n const { modelValue: _, ...textFieldProps } = VTextField.filterProps(props)\n\n function controlNode () {\n const defaultHeight = controlVariant.value === 'stacked' ? 'auto' : '100%'\n return (\n <div class=\"v-number-input__control\">\n {\n !slots.decrement ? (\n <VBtn\n disabled={ !canDecrease.value }\n flat\n key=\"decrement-btn\"\n height={ defaultHeight }\n name=\"decrement-btn\"\n icon=\"$expand\"\n size=\"small\"\n tabindex=\"-1\"\n onClick={ onClickDown }\n onMousedown={ onControlMousedown }\n />\n ) : (\n <VDefaultsProvider\n key=\"decrement-defaults\"\n defaults={{\n VBtn: {\n disabled: !canDecrease.value,\n flat: true,\n height: defaultHeight,\n size: 'small',\n icon: '$expand',\n },\n }}\n >\n { slots.decrement(decrementSlotProps.value) }\n </VDefaultsProvider>\n )\n }\n\n <VDivider\n vertical={ controlVariant.value !== 'stacked' }\n />\n\n {\n !slots.increment ? (\n <VBtn\n disabled={ !canIncrease.value }\n flat\n key=\"increment-btn\"\n height={ defaultHeight }\n name=\"increment-btn\"\n icon=\"$collapse\"\n onClick={ onClickUp }\n onMousedown={ onControlMousedown }\n size=\"small\"\n tabindex=\"-1\"\n />\n ) : (\n <VDefaultsProvider\n key=\"increment-defaults\"\n defaults={{\n VBtn: {\n disabled: !canIncrease.value,\n flat: true,\n height: defaultHeight,\n size: 'small',\n icon: '$collapse',\n },\n }}\n >\n { slots.increment(incrementSlotProps.value) }\n </VDefaultsProvider>\n )\n }\n </div>\n )\n }\n\n function dividerNode () {\n return !props.hideInput && !props.inset ? <VDivider vertical /> : undefined\n }\n\n const appendInnerControl =\n controlVariant.value === 'split'\n ? (\n <div class=\"v-number-input__control\">\n <VDivider vertical />\n\n <VBtn\n flat\n height=\"100%\"\n icon=\"$plus\"\n tile\n tabindex=\"-1\"\n onClick={ onClickUp }\n onMousedown={ onControlMousedown }\n />\n </div>\n ) : (!props.reverse\n ? <>{ dividerNode() }{ controlNode() }</>\n : undefined)\n\n const hasAppendInner = slots['append-inner'] || appendInnerControl\n\n const prependInnerControl =\n controlVariant.value === 'split'\n ? (\n <div class=\"v-number-input__control\">\n <VBtn\n flat\n height=\"100%\"\n icon=\"$minus\"\n tile\n tabindex=\"-1\"\n onClick={ onClickDown }\n onMousedown={ onControlMousedown }\n />\n\n <VDivider vertical />\n </div>\n ) : (props.reverse\n ? <>{ controlNode() }{ dividerNode() }</>\n : undefined)\n\n const hasPrependInner = slots['prepend-inner'] || prependInnerControl\n\n return (\n <VTextField\n modelValue={ model.value }\n onUpdate:modelValue={ onModelUpdate }\n onKeydown={ onKeydown }\n class={[\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 props.class,\n ]}\n { ...textFieldProps }\n style={ props.style }\n inputmode=\"decimal\"\n >\n {{\n ...slots,\n 'append-inner': hasAppendInner ? (...args) => (\n <>\n { slots['append-inner']?.(...args) }\n { appendInnerControl }\n </>\n ) : undefined,\n 'prepend-inner': hasPrependInner ? (...args) => (\n <>\n { prependInnerControl }\n { slots['prepend-inner']?.(...args) }\n </>\n ) : undefined,\n }}\n </VTextField>\n )\n })\n },\n})\n\nexport type VNumberInput = InstanceType<typeof VNumberInput>\n"],"mappings":"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","ignoreList":[]}
@@ -51,7 +51,7 @@ interface DefaultInputSlot {
51
51
  }
52
52
 
53
53
  type ControlSlot = {
54
- click: () => void;
54
+ click: (e: MouseEvent) => void;
55
55
  };
56
56
  type ControlVariant = 'default' | 'stacked' | 'split';
57
57
  declare const VNumberInput: {
@@ -2902,7 +2902,7 @@ interface DefaultInputSlot {
2902
2902
  }
2903
2903
 
2904
2904
  type ControlSlot = {
2905
- click: () => void;
2905
+ click: (e: MouseEvent) => void;
2906
2906
  };
2907
2907
  type ControlVariant = 'default' | 'stacked' | 'split';
2908
2908
  declare const VNumberInput: {
package/lib/locale/hu.mjs CHANGED
@@ -1,11 +1,11 @@
1
1
  export default {
2
2
  badge: 'Jelvény',
3
- open: 'Open',
3
+ open: 'Megnyit',
4
4
  close: 'Bezárás',
5
- dismiss: 'Dismiss',
5
+ dismiss: 'Elutasít',
6
6
  confirmEdit: {
7
7
  ok: 'OK',
8
- cancel: 'Cancel'
8
+ cancel: 'Mégsem'
9
9
  },
10
10
  dataIterator: {
11
11
  noResultsText: 'Nincs egyező találat',
@@ -36,15 +36,15 @@ export default {
36
36
  divider: 'to'
37
37
  },
38
38
  datePicker: {
39
- itemsSelected: '{0} selected',
39
+ itemsSelected: '{0} kiválasztva',
40
40
  range: {
41
- title: 'Select dates',
42
- header: 'Enter dates'
41
+ title: 'Válassza ki a dátumokat',
42
+ header: 'Adja meg a dátumokat'
43
43
  },
44
- title: 'Select date',
45
- header: 'Enter date',
44
+ title: 'Válassza ki a dátumot',
45
+ header: 'Adja meg a dátumot',
46
46
  input: {
47
- placeholder: 'Enter date'
47
+ placeholder: 'Adja meg a dátumot'
48
48
  }
49
49
  },
50
50
  noDataText: 'Nincs elérhető adat',
@@ -57,7 +57,7 @@ export default {
57
57
  },
58
58
  calendar: {
59
59
  moreEvents: '{0} további',
60
- today: 'Today'
60
+ today: 'Ma'
61
61
  },
62
62
  input: {
63
63
  clear: 'Clear {0}',
@@ -72,7 +72,7 @@ export default {
72
72
  timePicker: {
73
73
  am: 'de',
74
74
  pm: 'du',
75
- title: 'Select Time'
75
+ title: 'Válassza ki az időpontot'
76
76
  },
77
77
  pagination: {
78
78
  ariaLabel: {
@@ -81,23 +81,23 @@ export default {
81
81
  previous: 'Előző oldal',
82
82
  page: 'Menj a(z) {0}. oldalra',
83
83
  currentPage: 'Aktuális oldal: {0}',
84
- first: 'First page',
85
- last: 'Last page'
84
+ first: 'Első oldal',
85
+ last: 'Utolsó oldal'
86
86
  }
87
87
  },
88
88
  stepper: {
89
- next: 'Next',
90
- prev: 'Previous'
89
+ next: 'Következő',
90
+ prev: 'Előző'
91
91
  },
92
92
  rating: {
93
93
  ariaLabel: {
94
94
  item: 'Rating {0} of {1}'
95
95
  }
96
96
  },
97
- loading: 'Loading...',
97
+ loading: 'Betöltés...',
98
98
  infiniteScroll: {
99
- loadMore: 'Load more',
100
- empty: 'No more'
99
+ loadMore: 'Továbbiak',
100
+ empty: 'Nincsen több'
101
101
  }
102
102
  };
103
103
  //# sourceMappingURL=hu.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"hu.mjs","names":["badge","open","close","dismiss","confirmEdit","ok","cancel","dataIterator","noResultsText","loadingText","dataTable","itemsPerPageText","ariaLabel","sortDescending","sortAscending","sortNone","activateNone","activateDescending","activateAscending","sortBy","dataFooter","itemsPerPageAll","nextPage","prevPage","firstPage","lastPage","pageText","dateRangeInput","divider","datePicker","itemsSelected","range","title","header","input","placeholder","noDataText","carousel","prev","next","delimiter","calendar","moreEvents","today","clear","prependAction","appendAction","otp","fileInput","counter","counterSize","timePicker","am","pm","pagination","root","previous","page","currentPage","first","last","stepper","rating","item","loading","infiniteScroll","loadMore","empty"],"sources":["../../src/locale/hu.ts"],"sourcesContent":["export default {\n badge: 'Jelvény',\n open: 'Open',\n close: 'Bezárás',\n dismiss: 'Dismiss',\n confirmEdit: {\n ok: 'OK',\n cancel: 'Cancel',\n },\n dataIterator: {\n noResultsText: 'Nincs egyező találat',\n loadingText: 'Betöltés...',\n },\n dataTable: {\n itemsPerPageText: 'Elem oldalanként:',\n ariaLabel: {\n sortDescending: 'Csökkenő sorrendbe rendezve.',\n sortAscending: 'Növekvő sorrendbe rendezve.',\n sortNone: 'Rendezetlen.',\n activateNone: 'Rendezés törlése.',\n activateDescending: 'Aktiváld a csökkenő rendezésért.',\n activateAscending: 'Aktiváld a növekvő rendezésért.',\n },\n sortBy: 'Rendezés',\n },\n dataFooter: {\n itemsPerPageText: 'Elem oldalanként:',\n itemsPerPageAll: 'Mind',\n nextPage: 'Következő oldal',\n prevPage: 'Előző oldal',\n firstPage: 'Első oldal',\n lastPage: 'Utolsó oldal',\n pageText: '{0}-{1} / {2}',\n },\n dateRangeInput: {\n divider: 'to',\n },\n datePicker: {\n itemsSelected: '{0} selected',\n range: {\n title: 'Select dates',\n header: 'Enter dates',\n },\n title: 'Select date',\n header: 'Enter date',\n input: {\n placeholder: 'Enter date',\n },\n },\n noDataText: 'Nincs elérhető adat',\n carousel: {\n prev: 'Előző',\n next: 'Következő',\n ariaLabel: {\n delimiter: 'Dia {0}/{1}',\n },\n },\n calendar: {\n moreEvents: '{0} további',\n today: 'Today',\n },\n input: {\n clear: 'Clear {0}',\n prependAction: '{0} prepended action',\n appendAction: '{0} appended action',\n otp: 'Please enter OTP character {0}',\n },\n fileInput: {\n counter: '{0} fájl',\n counterSize: '{0} fájl ({1} összesen)',\n },\n timePicker: {\n am: 'de',\n pm: 'du',\n title: 'Select Time',\n },\n pagination: {\n ariaLabel: {\n root: 'Oldal navigáció',\n next: 'Következő oldal',\n previous: 'Előző oldal',\n page: 'Menj a(z) {0}. oldalra',\n currentPage: 'Aktuális oldal: {0}',\n first: 'First page',\n last: 'Last page',\n },\n },\n stepper: {\n next: 'Next',\n prev: 'Previous',\n },\n rating: {\n ariaLabel: {\n item: 'Rating {0} of {1}',\n },\n },\n loading: 'Loading...',\n infiniteScroll: {\n loadMore: 'Load more',\n empty: 'No more',\n },\n}\n"],"mappings":"AAAA,eAAe;EACbA,KAAK,EAAE,SAAS;EAChBC,IAAI,EAAE,MAAM;EACZC,KAAK,EAAE,SAAS;EAChBC,OAAO,EAAE,SAAS;EAClBC,WAAW,EAAE;IACXC,EAAE,EAAE,IAAI;IACRC,MAAM,EAAE;EACV,CAAC;EACDC,YAAY,EAAE;IACZC,aAAa,EAAE,sBAAsB;IACrCC,WAAW,EAAE;EACf,CAAC;EACDC,SAAS,EAAE;IACTC,gBAAgB,EAAE,mBAAmB;IACrCC,SAAS,EAAE;MACTC,cAAc,EAAE,8BAA8B;MAC9CC,aAAa,EAAE,6BAA6B;MAC5CC,QAAQ,EAAE,cAAc;MACxBC,YAAY,EAAE,mBAAmB;MACjCC,kBAAkB,EAAE,kCAAkC;MACtDC,iBAAiB,EAAE;IACrB,CAAC;IACDC,MAAM,EAAE;EACV,CAAC;EACDC,UAAU,EAAE;IACVT,gBAAgB,EAAE,mBAAmB;IACrCU,eAAe,EAAE,MAAM;IACvBC,QAAQ,EAAE,iBAAiB;IAC3BC,QAAQ,EAAE,aAAa;IACvBC,SAAS,EAAE,YAAY;IACvBC,QAAQ,EAAE,cAAc;IACxBC,QAAQ,EAAE;EACZ,CAAC;EACDC,cAAc,EAAE;IACdC,OAAO,EAAE;EACX,CAAC;EACDC,UAAU,EAAE;IACVC,aAAa,EAAE,cAAc;IAC7BC,KAAK,EAAE;MACLC,KAAK,EAAE,cAAc;MACrBC,MAAM,EAAE;IACV,CAAC;IACDD,KAAK,EAAE,aAAa;IACpBC,MAAM,EAAE,YAAY;IACpBC,KAAK,EAAE;MACLC,WAAW,EAAE;IACf;EACF,CAAC;EACDC,UAAU,EAAE,qBAAqB;EACjCC,QAAQ,EAAE;IACRC,IAAI,EAAE,OAAO;IACbC,IAAI,EAAE,WAAW;IACjB3B,SAAS,EAAE;MACT4B,SAAS,EAAE;IACb;EACF,CAAC;EACDC,QAAQ,EAAE;IACRC,UAAU,EAAE,aAAa;IACzBC,KAAK,EAAE;EACT,CAAC;EACDT,KAAK,EAAE;IACLU,KAAK,EAAE,WAAW;IAClBC,aAAa,EAAE,sBAAsB;IACrCC,YAAY,EAAE,qBAAqB;IACnCC,GAAG,EAAE;EACP,CAAC;EACDC,SAAS,EAAE;IACTC,OAAO,EAAE,UAAU;IACnBC,WAAW,EAAE;EACf,CAAC;EACDC,UAAU,EAAE;IACVC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRrB,KAAK,EAAE;EACT,CAAC;EACDsB,UAAU,EAAE;IACV1C,SAAS,EAAE;MACT2C,IAAI,EAAE,iBAAiB;MACvBhB,IAAI,EAAE,iBAAiB;MACvBiB,QAAQ,EAAE,aAAa;MACvBC,IAAI,EAAE,wBAAwB;MAC9BC,WAAW,EAAE,qBAAqB;MAClCC,KAAK,EAAE,YAAY;MACnBC,IAAI,EAAE;IACR;EACF,CAAC;EACDC,OAAO,EAAE;IACPtB,IAAI,EAAE,MAAM;IACZD,IAAI,EAAE;EACR,CAAC;EACDwB,MAAM,EAAE;IACNlD,SAAS,EAAE;MACTmD,IAAI,EAAE;IACR;EACF,CAAC;EACDC,OAAO,EAAE,YAAY;EACrBC,cAAc,EAAE;IACdC,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE;EACT;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"hu.mjs","names":["badge","open","close","dismiss","confirmEdit","ok","cancel","dataIterator","noResultsText","loadingText","dataTable","itemsPerPageText","ariaLabel","sortDescending","sortAscending","sortNone","activateNone","activateDescending","activateAscending","sortBy","dataFooter","itemsPerPageAll","nextPage","prevPage","firstPage","lastPage","pageText","dateRangeInput","divider","datePicker","itemsSelected","range","title","header","input","placeholder","noDataText","carousel","prev","next","delimiter","calendar","moreEvents","today","clear","prependAction","appendAction","otp","fileInput","counter","counterSize","timePicker","am","pm","pagination","root","previous","page","currentPage","first","last","stepper","rating","item","loading","infiniteScroll","loadMore","empty"],"sources":["../../src/locale/hu.ts"],"sourcesContent":["export default {\n badge: 'Jelvény',\n open: 'Megnyit',\n close: 'Bezárás',\n dismiss: 'Elutasít',\n confirmEdit: {\n ok: 'OK',\n cancel: 'Mégsem',\n },\n dataIterator: {\n noResultsText: 'Nincs egyező találat',\n loadingText: 'Betöltés...',\n },\n dataTable: {\n itemsPerPageText: 'Elem oldalanként:',\n ariaLabel: {\n sortDescending: 'Csökkenő sorrendbe rendezve.',\n sortAscending: 'Növekvő sorrendbe rendezve.',\n sortNone: 'Rendezetlen.',\n activateNone: 'Rendezés törlése.',\n activateDescending: 'Aktiváld a csökkenő rendezésért.',\n activateAscending: 'Aktiváld a növekvő rendezésért.',\n },\n sortBy: 'Rendezés',\n },\n dataFooter: {\n itemsPerPageText: 'Elem oldalanként:',\n itemsPerPageAll: 'Mind',\n nextPage: 'Következő oldal',\n prevPage: 'Előző oldal',\n firstPage: 'Első oldal',\n lastPage: 'Utolsó oldal',\n pageText: '{0}-{1} / {2}',\n },\n dateRangeInput: {\n divider: 'to',\n },\n datePicker: {\n itemsSelected: '{0} kiválasztva',\n range: {\n title: 'Válassza ki a dátumokat',\n header: 'Adja meg a dátumokat',\n },\n title: 'Válassza ki a dátumot',\n header: 'Adja meg a dátumot',\n input: {\n placeholder: 'Adja meg a dátumot',\n },\n },\n noDataText: 'Nincs elérhető adat',\n carousel: {\n prev: 'Előző',\n next: 'Következő',\n ariaLabel: {\n delimiter: 'Dia {0}/{1}',\n },\n },\n calendar: {\n moreEvents: '{0} további',\n today: 'Ma',\n },\n input: {\n clear: 'Clear {0}',\n prependAction: '{0} prepended action',\n appendAction: '{0} appended action',\n otp: 'Please enter OTP character {0}',\n },\n fileInput: {\n counter: '{0} fájl',\n counterSize: '{0} fájl ({1} összesen)',\n },\n timePicker: {\n am: 'de',\n pm: 'du',\n title: 'Válassza ki az időpontot',\n },\n pagination: {\n ariaLabel: {\n root: 'Oldal navigáció',\n next: 'Következő oldal',\n previous: 'Előző oldal',\n page: 'Menj a(z) {0}. oldalra',\n currentPage: 'Aktuális oldal: {0}',\n first: 'Első oldal',\n last: 'Utolsó oldal',\n },\n },\n stepper: {\n next: 'Következő',\n prev: 'Előző',\n },\n rating: {\n ariaLabel: {\n item: 'Rating {0} of {1}',\n },\n },\n loading: 'Betöltés...',\n infiniteScroll: {\n loadMore: 'Továbbiak',\n empty: 'Nincsen több',\n },\n}\n"],"mappings":"AAAA,eAAe;EACbA,KAAK,EAAE,SAAS;EAChBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,SAAS;EAChBC,OAAO,EAAE,UAAU;EACnBC,WAAW,EAAE;IACXC,EAAE,EAAE,IAAI;IACRC,MAAM,EAAE;EACV,CAAC;EACDC,YAAY,EAAE;IACZC,aAAa,EAAE,sBAAsB;IACrCC,WAAW,EAAE;EACf,CAAC;EACDC,SAAS,EAAE;IACTC,gBAAgB,EAAE,mBAAmB;IACrCC,SAAS,EAAE;MACTC,cAAc,EAAE,8BAA8B;MAC9CC,aAAa,EAAE,6BAA6B;MAC5CC,QAAQ,EAAE,cAAc;MACxBC,YAAY,EAAE,mBAAmB;MACjCC,kBAAkB,EAAE,kCAAkC;MACtDC,iBAAiB,EAAE;IACrB,CAAC;IACDC,MAAM,EAAE;EACV,CAAC;EACDC,UAAU,EAAE;IACVT,gBAAgB,EAAE,mBAAmB;IACrCU,eAAe,EAAE,MAAM;IACvBC,QAAQ,EAAE,iBAAiB;IAC3BC,QAAQ,EAAE,aAAa;IACvBC,SAAS,EAAE,YAAY;IACvBC,QAAQ,EAAE,cAAc;IACxBC,QAAQ,EAAE;EACZ,CAAC;EACDC,cAAc,EAAE;IACdC,OAAO,EAAE;EACX,CAAC;EACDC,UAAU,EAAE;IACVC,aAAa,EAAE,iBAAiB;IAChCC,KAAK,EAAE;MACLC,KAAK,EAAE,yBAAyB;MAChCC,MAAM,EAAE;IACV,CAAC;IACDD,KAAK,EAAE,uBAAuB;IAC9BC,MAAM,EAAE,oBAAoB;IAC5BC,KAAK,EAAE;MACLC,WAAW,EAAE;IACf;EACF,CAAC;EACDC,UAAU,EAAE,qBAAqB;EACjCC,QAAQ,EAAE;IACRC,IAAI,EAAE,OAAO;IACbC,IAAI,EAAE,WAAW;IACjB3B,SAAS,EAAE;MACT4B,SAAS,EAAE;IACb;EACF,CAAC;EACDC,QAAQ,EAAE;IACRC,UAAU,EAAE,aAAa;IACzBC,KAAK,EAAE;EACT,CAAC;EACDT,KAAK,EAAE;IACLU,KAAK,EAAE,WAAW;IAClBC,aAAa,EAAE,sBAAsB;IACrCC,YAAY,EAAE,qBAAqB;IACnCC,GAAG,EAAE;EACP,CAAC;EACDC,SAAS,EAAE;IACTC,OAAO,EAAE,UAAU;IACnBC,WAAW,EAAE;EACf,CAAC;EACDC,UAAU,EAAE;IACVC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRrB,KAAK,EAAE;EACT,CAAC;EACDsB,UAAU,EAAE;IACV1C,SAAS,EAAE;MACT2C,IAAI,EAAE,iBAAiB;MACvBhB,IAAI,EAAE,iBAAiB;MACvBiB,QAAQ,EAAE,aAAa;MACvBC,IAAI,EAAE,wBAAwB;MAC9BC,WAAW,EAAE,qBAAqB;MAClCC,KAAK,EAAE,YAAY;MACnBC,IAAI,EAAE;IACR;EACF,CAAC;EACDC,OAAO,EAAE;IACPtB,IAAI,EAAE,WAAW;IACjBD,IAAI,EAAE;EACR,CAAC;EACDwB,MAAM,EAAE;IACNlD,SAAS,EAAE;MACTmD,IAAI,EAAE;IACR;EACF,CAAC;EACDC,OAAO,EAAE,aAAa;EACtBC,cAAc,EAAE;IACdC,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE;EACT;AACF,CAAC","ignoreList":[]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@vuetify/nightly",
3
3
  "description": "Vue Material Component Framework",
4
- "version": "3.6.5-master.2024-05-12",
4
+ "version": "3.6.5-master.2024-05-14",
5
5
  "author": {
6
6
  "name": "John Leider",
7
7
  "email": "john@vuetifyjs.com"