diff --git a/.eslintrc.js b/.eslintrc.js index 70f5cd5ea57..92ae70b7419 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -6,7 +6,7 @@ module.exports = { sourceType: 'module', project: './tsconfig.eslint.json', tsconfigRootDir: __dirname, - extraFileExtensions: ['.vue'], + extraFileExtensions: ['.vue', '.json'], suppressDeprecatedPropertyWarnings: true, }, extends: [ @@ -239,5 +239,16 @@ module.exports = { 'import/no-duplicates': 'off', }, }, + { + files: '**/*.json', + rules: { + quotes: ['error', 'double'], + 'comma-dangle': ['error', 'never'], + 'quote-props': ['error', 'always'], + 'max-len': 'off', + 'no-unused-expressions': 'off', + 'no-template-curly-in-string': 'off', + }, + }, ], } diff --git a/README.md b/README.md index 11e65db64d4..76597273c94 100644 --- a/README.md +++ b/README.md @@ -61,15 +61,15 @@ Funds donated through GitHub Sponsors and Patreon go directly to support John an - - Your Logo Here + + -

Palladium Sponsors

+

Diamond Sponsors

@@ -116,11 +116,6 @@ Funds donated through GitHub Sponsors and Patreon go directly to support John an - +
- - - - @@ -131,6 +126,11 @@ Funds donated through GitHub Sponsors and Patreon go directly to support John an + + + +
diff --git a/packages/api-generator/package.json b/packages/api-generator/package.json index 50b75552158..e23bffdd71c 100755 --- a/packages/api-generator/package.json +++ b/packages/api-generator/package.json @@ -5,7 +5,7 @@ "description": "", "scripts": { "build": "node --loader tsx --no-warnings src/index.ts", - "lint": "eslint --ext .ts src -f codeframe --max-warnings 0", + "lint": "eslint --ext .ts,.json src -f codeframe --max-warnings 0", "lint:fix": "yarn lint --fix" }, "author": "", diff --git a/packages/api-generator/src/locale/en/Slider.json b/packages/api-generator/src/locale/en/Slider.json index 0967ef424bc..388b2ae3dce 100644 --- a/packages/api-generator/src/locale/en/Slider.json +++ b/packages/api-generator/src/locale/en/Slider.json @@ -1 +1,18 @@ -{} +{ + "props": { + "max": "Sets the maximum allowed value.", + "min": "Sets the minimum allowed value.", + "reverse": "Reverses the slider direction.", + "showTicks": "Show track ticks. If `true` it shows ticks when using slider. If set to `'always'` it always shows ticks.", + "step": "If greater than 0, sets step interval for ticks.", + "thumbColor": "Sets the thumb and thumb label color.", + "thumbLabel": "Show thumb label. If `true` it shows label when using slider. If set to `'always'` it always shows label.", + "thumbSize": "Controls the size of the thumb label.", + "ticks": "Show track ticks. If `true` it shows ticks when using slider. If set to `'always'` it always shows ticks.", + "tickLabels": "When provided with Array, will attempt to map the labels to each step in index order.", + "tickSize": "Controls the size of **ticks**", + "trackColor": "Sets the track's color", + "trackFillColor": "Sets the track's fill color", + "trackSize": "Sets the track's size (height)." + } +} diff --git a/packages/api-generator/src/locale/en/VFileInput.json b/packages/api-generator/src/locale/en/VFileInput.json index f5e1b30396c..1530cc6a21d 100644 --- a/packages/api-generator/src/locale/en/VFileInput.json +++ b/packages/api-generator/src/locale/en/VFileInput.json @@ -2,6 +2,7 @@ "props": { "accept": "One or more [unique file type specifiers](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#Unique_file_type_specifiers) describing file types to allow.", "chips": "Changes display of selections to chips.", + "counter": "Displays the number of selected files.", "counterSizeString": "The text displayed when using the **counter** and **show-size** props. Can also be customized globally on the [internationalization page](/customization/internationalization).", "counterString": "The text displayed when using the **counter** prop. Can also be customized globally on the [internationalization page](/customization/internationalization).", "hideInput": "Display the icon only without the input (file names).", @@ -12,6 +13,7 @@ "value": "A single or array of [File objects](https://developer.mozilla.org/en-US/docs/Web/API/File)." }, "slots": { + "counter": "Slot for the input’s counter text.", "selection": "Slot for defining a custom appearance for selected item(s). Provides the current **index**, **text** (truncated) and [file](https://developer.mozilla.org/en-US/docs/Web/API/File)." }, "events": { diff --git a/packages/api-generator/src/locale/en/VInput.json b/packages/api-generator/src/locale/en/VInput.json index 2bf1adc73f5..47f3a7804c3 100644 --- a/packages/api-generator/src/locale/en/VInput.json +++ b/packages/api-generator/src/locale/en/VInput.json @@ -8,6 +8,7 @@ "dense": "Reduces the input height.", "height": "Sets the height of the input.", "hint": "Displays hint text below the input when focused. Force this always open with the [persistent-hint](#props-persistent-hint) property.", + "id": "Sets the DOM id on the component.", "loading": "Displays linear progress bar. Can either be a String which specifies which color is applied to the progress bar (any material color or theme color - **primary**, **secondary**, **success**, **info**, **warning**, **error**) or a Boolean which uses the component **color** (set by color prop - if it's supported by the component) or the primary color.", "persistentHint": "Forces [hint](#props-hint) to always be visible.", "placeholder": "Sets the input's placeholder text.", @@ -24,5 +25,10 @@ "click:prepend": "Emitted when prepended icon is clicked.", "mousedown": "Emitted when click is pressed.", "mouseup": "Emitted when click is released." + }, + "exposed": { + "reset": "Resets the input value.", + "resetValidation": "Resets validation of the input without modifying its value.", + "validate": "Validates the input's value." } } diff --git a/packages/api-generator/src/locale/en/VLabel.json b/packages/api-generator/src/locale/en/VLabel.json index 0967ef424bc..ecc2cd81119 100644 --- a/packages/api-generator/src/locale/en/VLabel.json +++ b/packages/api-generator/src/locale/en/VLabel.json @@ -1 +1,5 @@ -{} +{ + "props": { + "clickable": "Changes the cursor to a pointer when the mouse is over the element." + } +} diff --git a/packages/api-generator/src/locale/en/VRangeSlider.json b/packages/api-generator/src/locale/en/VRangeSlider.json index 0967ef424bc..3e062738f3d 100644 --- a/packages/api-generator/src/locale/en/VRangeSlider.json +++ b/packages/api-generator/src/locale/en/VRangeSlider.json @@ -1 +1,14 @@ -{} +{ + "props": { + "strict": "Disallows dragging the ending thumb past the starting thumb and vice versa." + + }, + "slots": { + "thumb-label": "Slot for the thumb label.", + "tick-label": "Slot for the tick label." + }, + "events": { + "end": "Slider value emitted at the end of slider movement.", + "start": "Slider value emitted at start of slider movement." + } +} diff --git a/packages/api-generator/src/locale/en/VRow.json b/packages/api-generator/src/locale/en/VRow.json index 322a0305e55..6185af89286 100644 --- a/packages/api-generator/src/locale/en/VRow.json +++ b/packages/api-generator/src/locale/en/VRow.json @@ -5,17 +5,20 @@ "alignMd": "Changes the **align-items** property on medium and greater breakpoints.", "alignSm": "Changes the **align-items** property on small and greater breakpoints.", "alignXl": "Changes the **align-items** property on extra large and greater breakpoints.", + "alignXxl": "Changes the **align-items** property on extra extra large and greater breakpoints.", "alignContent": "Applies the [align-content](https://developer.mozilla.org/en-US/docs/Web/CSS/align-content) css property. Available options are: **start**, **center**, **end**, **space-between**, **space-around** and **stretch**.", "alignContentLg": "Changes the **align-content** property on large and greater breakpoints.", "alignContentMd": "Changes the **align-content** property on medium and greater breakpoints.", "alignContentSm": "Changes the **align-content** property on small and greater breakpoints.", "alignContentXl": "Changes the **align-content** property on extra large and greater breakpoints.", + "alignContentXxl": "Changes the **align-content** property on extra extra large and greater breakpoints.", "dense": "Reduces the gutter between `v-col`s.", "justify": "Applies the [justify-content](https://developer.mozilla.org/en-US/docs/Web/CSS/justify-content) css property. Available options are: **start**, **center**, **end**, **space-between** and **space-around**.", "justifyLg": "Changes the **justify-content** property on large and greater breakpoints.", "justifyMd": "Changes the **justify-content** property on medium and greater breakpoints.", "justifySm": "Changes the **justify-content** property on small and greater breakpoints.", "justifyXl": "Changes the **justify-content** property on extra large and greater breakpoints.", + "justifyXxl": "Changes the **justify-content** property on extra extra large and greater breakpoints.", "noGutters": "Removes the gutter between `v-col`s." } } diff --git a/packages/api-generator/src/locale/en/VSlider.json b/packages/api-generator/src/locale/en/VSlider.json index e9172408d78..8998cbfced9 100644 --- a/packages/api-generator/src/locale/en/VSlider.json +++ b/packages/api-generator/src/locale/en/VSlider.json @@ -2,21 +2,11 @@ "props": { "alwaysDirty": "When used with the **thumb-label** prop will always show the thumb label.", "inverseLabel": "Reverse the label position. Works with **rtl**.", - "max": "Sets the maximum allowed value.", - "min": "Sets the minimum allowed value.", - "step": "If greater than 0, sets step interval for ticks.", - "thumbColor": "Sets the thumb and thumb label color.", - "thumbLabel": "Show thumb label. If `true` it shows label when using slider. If set to `'always'` it always shows label.", - "thumbSize": "Controls the size of the thumb label.", - "ticks": "Show track ticks. If `true` it shows ticks when using slider. If set to `'always'` it always shows ticks.", - "tickLabels": "When provided with Array, will attempt to map the labels to each step in index order.", - "tickSize": "Controls the size of **ticks**", - "trackColor": "Sets the track's color", - "trackFillColor": "Sets the track's fill color", "vertical": "Changes slider direction to vertical." }, "slots": { - "thumbLabel": "Replaces the content inside the thumb label." + "thumb-label": "Slot for the thumb label.", + "tick-label": "Slot for the tick label." }, "events": { "end": "Slider value emitted at the end of slider movement.", diff --git a/packages/api-generator/src/locale/en/VTextField.json b/packages/api-generator/src/locale/en/VTextField.json index c4f90dbbdec..0eff6833e5c 100644 --- a/packages/api-generator/src/locale/en/VTextField.json +++ b/packages/api-generator/src/locale/en/VTextField.json @@ -27,6 +27,10 @@ "click:prepend-inner": "Emitted when prepended inner icon is clicked.", "click:prependInner": "Emitted when prepended inner icon is clicked.", "focus": "Emitted when component is focused.", - "keydown": "Emitted when **any** key is pressed." + "keydown": "Emitted when **any** key is pressed.", + "mousedown:control": "Event that is emitted when using mousedown on the main control area." + }, + "slots": { + "counter": "Slot for the input’s counter text." } } diff --git a/packages/api-generator/src/locale/en/VTextarea.json b/packages/api-generator/src/locale/en/VTextarea.json index 3667970ff3f..42d5c621f08 100644 --- a/packages/api-generator/src/locale/en/VTextarea.json +++ b/packages/api-generator/src/locale/en/VTextarea.json @@ -3,10 +3,17 @@ "autoGrow": "Automatically grow the textarea depending on amount of text.", "counterValue": "Display the input length but do not provide any validation.", "noResize": "Remove resize handle.", + "persistentPlaceholder": "Forces placeholder to always be visible.", + "prefix": "Displays prefix text.", "rowHeight": "Height value for each row. Requires the use of the **auto-grow** prop.", - "rows": "Default row count." + "rows": "Default row count.", + "suffix": "Displays suffix text." }, "events": { - "keydown": "Emitted when **any** key is pressed, textarea must be focused." + "keydown": "Emitted when **any** key is pressed, textarea must be focused.", + "mousedown:control": "Event that is emitted when using mousedown on the main control area." + }, + "slots": { + "counter": "Slot for the input’s counter text." } } diff --git a/packages/api-generator/src/locale/en/virtual.json b/packages/api-generator/src/locale/en/virtual.json index 0350245c807..dc0a34313ec 100644 --- a/packages/api-generator/src/locale/en/virtual.json +++ b/packages/api-generator/src/locale/en/virtual.json @@ -5,4 +5,4 @@ "exposed": { "scrollToIndex": "Scrolls to the item at a given index." } -} \ No newline at end of file +} diff --git a/packages/api-generator/tsconfig.json b/packages/api-generator/tsconfig.json index b40f5e8ac91..2d95541bb5b 100644 --- a/packages/api-generator/tsconfig.json +++ b/packages/api-generator/tsconfig.json @@ -11,6 +11,9 @@ "@/*": [ "../vuetify/src/*" ] - } - } + }, + }, + "include": [ + "./src/locale/**/*.json", + ], } diff --git a/packages/docs/src/components/api/ApiTable.vue b/packages/docs/src/components/api/ApiTable.vue index d885c771245..3febb17fb0d 100644 --- a/packages/docs/src/components/api/ApiTable.vue +++ b/packages/docs/src/components/api/ApiTable.vue @@ -66,6 +66,7 @@ // Utilities import { computed, PropType } from 'vue' + import { camelCase } from 'lodash-es' // Stores import { useAppStore } from '@/store/app' @@ -94,7 +95,7 @@ }) if (!appStore.apiSearch) return items - const query = appStore.apiSearch.toLowerCase() + const query = camelCase(appStore.apiSearch).toLowerCase() return items.filter((item: any) => { return item.name.toLowerCase().includes(query) diff --git a/packages/docs/src/components/app/bar/AuthDialog.vue b/packages/docs/src/components/app/bar/AuthDialog.vue index 20d29c26e95..365bc5f9f03 100644 --- a/packages/docs/src/components/app/bar/AuthDialog.vue +++ b/packages/docs/src/components/app/bar/AuthDialog.vue @@ -1,6 +1,6 @@ diff --git a/packages/docs/src/components/user/badges/UserSponsorBadge.vue b/packages/docs/src/components/user/badges/UserSponsorBadge.vue index 7f1dc26da71..14f29aeefd5 100644 --- a/packages/docs/src/components/user/badges/UserSponsorBadge.vue +++ b/packages/docs/src/components/user/badges/UserSponsorBadge.vue @@ -1,9 +1,17 @@