vuetifyjs / eslint-plugin-vuetify Goto Github PK
View Code? Open in Web Editor NEWAn eslint plugin for Vuetify
License: Other
An eslint plugin for Vuetify
License: Other
(follow-up of #26)
Installing this plugin with "eslint": "^7.22.0"
in my package.json fails with the following output:
> npm install eslint-plugin-vuetify --save-dev
npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR!
npm ERR! Found: [email protected]
npm ERR! node_modules/eslint
npm ERR! peer eslint@">= 4.12.1" from [email protected]
npm ERR! node_modules/babel-eslint
npm ERR! dev babel-eslint@"^10.1.0" from the root project
npm ERR! peer eslint@"^7.12.1" from [email protected]
npm ERR! node_modules/eslint-config-standard
npm ERR! dev eslint-config-standard@"^16.0.2" from the root project
npm ERR! 8 more (eslint-loader, eslint-plugin-es, eslint-plugin-import, ...)
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer eslint@"^5.0.0 || ^6.0.0" from [email protected]
npm ERR! node_modules/eslint-plugin-vuetify/node_modules/eslint-plugin-vue
npm ERR! eslint-plugin-vue@"^6.2.2" from [email protected]
npm ERR! node_modules/eslint-plugin-vuetify
npm ERR! dev eslint-plugin-vuetify@"*" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
npm ERR! See /home/thomas/.npm/eresolve-report.txt for a full report.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/thomas/.npm/_logs/2021-03-15T18_11_31_166Z-debug.log
Which is probably due to this peer dependency (not sure what it is, I'm new to the node world). That peer dependency requires eslint v6
eslint-plugin-vuetify/package.json
Line 26 in 88db899
It only works successfull if I install it with npm install eslint-plugin-vuetify --save-dev --legacy-peer-deps
npm version: 7.5.2
node version: v14.15.4
As per v2.3 release notes can the following be added to no deprecated classes rule.
.display-4 is now .text-h1
.display-3 is now .text-h2
.display-2 is now .text-h3
.display-1 is now .text-h4
.headline is now .text-h5
.title is now .text-h6
.subtitle-1 is now .text-subtitle-1
.subtitle-2 is now .text-subtitle-2
.body-1 is now .text-body-1
.body-2 is now .text-body-2
.caption is now .text-caption
.overline is now .text-overline
When I run a lint, I get the expected errors, but if I open up SFC's in vscode the errors for this eslint plugin do not show up.
Is there something else that needs to be done to get this working in VSCode with Vetur?
Hello,
First of all, thank you for your work.
I'm upgrading a project from Vuetify 1.5 to 2.0 in the context of work. And I just think it would more clear if we can add a section in the readme in which we clarify which version / tag corresponds to Vuetify 2 and which one corresponds to Vuetify 3.
I saw that there's a tag for Vuetify 2. but it takes more lookups and clicks to understand,
Also a direct link to package in the npm website would be a good addition too.
Please tell me what do you guys think ? if you agree I can open a PR for it.
Thank you and have a nice day
Ali
The old dense
prop for v-slider
should automatically be rewritten to density: "compact"
Using the hint prop on v-checkbox
results in a eslint error that states that hint is deprecated, which is not the case: https://vuetifyjs.com/en/api/v-checkbox/#props-hint
Hello,
This plugin doesn't load anymore. I am always getting below error. Is anybody know how to solve this problem ?
Failed to load plugin 'vuetify' declared in '.eslintrc.js': Cannot find module 'eslint-plugin-vuetify';
You can find dev dependencies at below. One more thing setup is working proeperly but I am not sure but after npm install it hasn't worked anymore.
"devDependencies": {
"@nuxtjs/vuetify": "^1.11.3",
"babel-eslint": "^10.1.0",
"css-loader": "^5.1.0",
"eslint": "^7.21.0",
"eslint-config-prettier": "^8.1.0",
"eslint-loader": "^4.0.2",
"eslint-plugin-prettier": "^3.3.1",
"eslint-plugin-vue": "^7.6.0",
"eslint-plugin-vuetify": "^1.0.0-beta.8",
"nodemon": "^1.18.9",
"postcss": "^8.2.6",
"postcss-import": "^13.0.0",
"postcss-loader": "^4.2.0",
"postcss-url": "^10.1.1",
"prettier": "^2.2.1",
"sass": "^1.32.8",
"style-loader": "^0.23.1",
"stylus": "^0.54.5",
"stylus-loader": "^3.0.2"
}
When I try to use the @end
event, I get this message (vuetify 3.4.0, eslint-plugin-vueitfy 2.1.0):
VRangeSlider: @end has been removed vuetify/no-deprecated-events
However, @end
does work and has been ported according to this PR. It is also listed in the documentation. However, I also found this vuetify issue, which remains open for some reason.
This also applies to the @start
event and v-slider componenet.
I'm making this issue to help with measuring interest in adding pug support to the linter plugin... Starting with myself. I would like this feature.
<vrow class>
causes the fixer to error out with
TypeError: Cannot read property 'value' of null
Can we have a no deprecated components rule please in response to v2.3 changing v-content to v-main.
A component with a null class creates an error that is difficult to track down.
You should be able to reproduce with:
<template>
<v-container>
<v-layout class>
<v-flex>Oops</v-flex>
</v-layout>
</v-container>
</template>
Hi @KaelWD, could you release a new version with the latest fixes? I'm still getting an error for the VOtpInput
I updated my template with activator slot, but my browser console is still screaming about [Vuetify] The activator slot must be bound, try '<template v-slot:activator="{ on }"><v-btn v-on="on">'
template:
<v-menu
:close-on-content-click="false"
:rules="[isRequired]"
v-model="menu"
transition="scale-transition"
offset-y
full-width
min-width="562px"
>
<template v-slot:activator="{ on }">
<v-text-field
:value="string"
:rules="[isRequired]"
:label="$t('date')"
readonly
v-on="on"
/>
</template>
<div>
<v-date-picker v-model="date" />
<v-time-picker v-model="time" format="24hr" width="272" />
</div>
</v-menu>
I was hoping the next few beta releases would resolve this, however beta.3 doesn't seem to do it. When I add the plugin to my eslint config, I'm getting a loop of the following error until it fails:
(node:18696) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 VElement listeners added. Use emitter.setMaxListeners() to increase limit
error Command failed with exit code 1.
the eslintrc.js file looks like this:
// https://eslint.org/docs/user-guide/configuring
module.exports = {
root: true,
parserOptions: {
parser: 'babel-eslint'
},
env: {
browser: true,
jquery: true
},
globals: {
google: true
},
extends: [
// https://github.com/vuejs/eslint-plugin-vue#priority-a-essential-error-prevention
// consider switching to `plugin:vue/strongly-recommended` or `plugin:vue/recommended` for stricter rules.
'plugin:vue/recommended',
// https://github.com/standard/standard/blob/master/docs/RULES-en.md
'standard'
],
// required to lint *.vue files
plugins: [
'vue',
'vuetify'
],
// add your custom rules here
rules: {
// vuetify helper
'vuetify/no-deprecated-classes': 'error',
// allow async-await
'generator-star-spacing': 'off',
// allow debugger during development
'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
"indent": 0,
'curly': ['error', 'all'],
// vue settings
'vue/no-v-html': 0,
'vue/require-default-prop': ['error'],
'vue/script-indent':[
"error",
2,
{
"baseIndent": 1,
"switchCase": 1,
}
],
'vue/html-indent':[
"error",
2
],
"vue/singleline-html-element-content-newline": ["error", {
"ignoreWhenNoAttributes": true,
"ignoreWhenEmpty": true
}],
"vue/component-name-in-template-casing": ["error", "kebab-case"],
"vue/html-closing-bracket-newline": ["error", {
"singleline": "never",
"multiline": "always"
}],
"vue/max-attributes-per-line": ["error", {
"singleline": 1,
"multiline": {
"max": 1,
"allowFirstLine": false
}
}],
"vue/attributes-order": ["error", {
"order": [
"DEFINITION",
"LIST_RENDERING",
"CONDITIONALS",
"RENDER_MODIFIERS",
"GLOBAL",
"UNIQUE",
"TWO_WAY_BINDING",
"OTHER_DIRECTIVES",
"OTHER_ATTR",
"EVENTS",
"CONTENT"
]
}],
"vue/no-multi-spaces": ["error", {
"ignoreProperties": false
}],
"vue/order-in-components": ["error", {
"order": [
"el",
"name",
"parent",
"functional",
["delimiters", "comments"],
["components", "directives", "filters"],
"extends",
"mixins",
"inheritAttrs",
"model",
["props", "propsData"],
"data",
"computed",
"watch",
"LIFECYCLE_HOOKS",
"methods",
["template", "render"],
"renderError"
]
}],
"vue/multiline-html-element-content-newline": ["error"],
"vue/html-closing-bracket-spacing": ["error"]
}
}
Are one of the other rules interfering with it?
VListItem throws an error for the ripple
prop for vuetify/no-deprecated-props
. That prop is listed in the docs and does have the intended effect.
When I try to use the new text prop of v-btn
(<v-btn text="Click me!" />
) it gets converted to <v-btn variant="text" />
.
The conversion should only occur for <v-btn text />
or <v-btn :text="true" />
.
Hey, trying to upgrade to Vuetify 2.0.0 and I've installed eslint-plugin-vuetify
via npm. When I add the rules vuetify/no-legacy-grid
, my v-flex/v-layout tags are corrected to use v-col
and v-row
. However, I can't seem to find anything about these two new tags in the docs? Is this a future feature that hasn't yet been implemented in the latest release of Vuetify?
Thanks!
ESLint v8.0.0 is released !
It would be awesome to have official ESLint 8 support.
https://eslint.org/blog/2021/10/eslint-v8.0.0-released
eslint-plugin-vuetify v1.0.0
sample.vue
<template>
<v-text-field v-bind="$attrs" />
</template>
got errror:
[Error - 08:31:36] ESLint stack trace:
[Error - 08:31:36] TypeError: Cannot read property 'rawName' of null
Occurred while linting C:\Vue\Sample.vue:1
at EventEmitter.VAttribute (C:\Vue\node_modules\eslint-plugin-vuetify\lib\rules\no-deprecated-props.js:135:41)
at EventEmitter.emit (events.js:327:22)
at NodeEventGenerator.applySelector (C:\Vue\node_modules\vue-eslint-parser\index.js:3309:26)
at NodeEventGenerator.applySelectors (C:\Vue\node_modules\vue-eslint-parser\index.js:3323:22)
at NodeEventGenerator.enterNode (C:\Vue\node_modules\vue-eslint-parser\index.js:3331:14)
at traverse (C:\Vue\node_modules\vue-eslint-parser\index.js:115:13)
at traverse (C:\Vue\node_modules\vue-eslint-parser\index.js:122:21)
at traverse (C:\Vue\node_modules\vue-eslint-parser\index.js:127:13)
at traverse (C:\Vue\node_modules\vue-eslint-parser\index.js:122:21)
at traverseNodes (C:\Vue\\node_modules\vue-eslint-parser\index.js:133:5)
VProgressLinear throws an error for the absolute
prop for vuetify/no-deprecated-props
. That prop is listed in the docs and does have the intended effect.
Hello,
According to the upgrade guide ticks
has been renamed to show-ticks
and tick-labels
to ticks
(https://vuetifyjs.com/en/getting-started/upgrade-guide/#v-slider-v-range-slider)
Nevertheless when using ticks I think he doesn't understand that we want to use the new prop (which replace tick-labels) but the old one as he always report an error on it
Is there any way to fix it?
Thanks!
.eslintrc.js
module.exports = {
extends: ["plugin:nuxt/recommended", "plugin:vuetify/base"],
};
Template in a .vue file contains:
<v-subheader> </v-subheader>
When running lintfix
("lint:js": "eslint --ext .js,.ts,.vue --ignore-path .gitignore .", "lintfix": "npm run lint:js -- --fix"), it gets replaced by:
<[object Object]> </[object Object]>
VS Code popup:
Used versions:
"eslint-plugin-nuxt": "^4.0.0",
"eslint-plugin-vuetify": "^2.0.0-beta.3",
Old syntax is not flagged.
old
<v-checkbox dense/>
new
<v-checkbox density="compact"/>
npm 7 tries to automatically install peer dependencies, Hence, since upgrade i get the following error:
Could not resolve dependency:
npm ERR! peer eslint@"^6.0.0 | ^7.0.0" from [email protected]
Have no issues with [email protected] installed. Any chance to update it?
In vscode, the online package info fetched by the npm extension is garbled for eslint-plugin-vuetify and is missing the handy link to this repository:
For vuetify this appears properly:
Never published a package so not really sure what's wrong.
Also thanks for releasing beta.6, the warnings after an npm install were annoying. Unfortunately I didn't know about this release until now due to beta.5 being tagged as latest
and beta.6 tagged as beta
for the versions as listed on npmjs.com. This confused the Version Lens extension i'm using in vscode under default settings.
With beta.5 installed and default settings:
It wasn't until I turned on additional functionality in the extension that it then showed me another beta had been released:
Then going back to default settings after beta.6 is installed:
Other inputs have this prop flagged, but v-textarea
does not.
box
-> filled
outline
-> outlined
Hi! Is there any way to convert templates automatically? Or this plugin only informs about problems?
Looks like I can run Eslint fix to convert my lemplates.
vue-cli-service lint --fix
Is it right way?
v-text-fields do not flag an error or a warning on the mask
prop
Ref: https://vuetifyjs.com/en/getting-started/upgrade-guide/#v-text-field
I would like to use VSkeletonLoader
from vuetify/labs
, but the vuetify/no-deprecated-components
rule seems to think that this component is deprecated.
Steps to reproduce
Expected result: Should not complain about border="start"
Actual result: Shows error for border="start"
Any chance of getting a release officially supporting eslint 7 so the noise about peer dependencies is removed please? Not seeing any issues currently using this plugin with eslint 7.
npm WARN [email protected] requires a peer of eslint@^6.0.0 but none is installed. You must install peer dependencies yourself.
Thanks to eslint-plugin-vue-pug, this plugin works for pug templates. I tested eslint configuration:
"extends": [
"plugin:vue/vue3-recommended",
"plugin:vue-pug/vue3-recommended",
"plugin:vuetify/base"
]
so the doc should be updated accordingly
This happened in only 1 of the files in my project, but I'm not really sure what makes that component special. The line it's failing on is basically import MyOtherComponent from @/components/common/MyOtherComponent
. The only Vuetify rule I'm running is the "no-deprecated-classes" rule.
eslint: 4.19.1
eslint-plugin-vue: 4.7.1
eslint-plugin-vuetify: 1.0.0-beta.3
I tried upgrading these versions (and some others), but that didn't seem to help.
ERROR TypeError: Cannot read property 'value' of null
Occurred while linting /Users/keegan/my-vuetify-project/src/components/widgets/MyComponent.vue:80
TypeError: Cannot read property 'value' of null
Occurred while linting /Users/keegan/my-vuetify-project/src/components/widgets/MyComponent.vue:80
at EventEmitter.VAttribute[key.name="class"] (/Users/keegan/my-vuetify-project/node_modules/eslint-plugin-vuetify/lib/rules/no-deprecated-classes.js:112:36)
at EventEmitter.emit (events.js:198:13)
at NodeEventGenerator.applySelector (/Users/keegan/my-vuetify-project/node_modules/vue-eslint-parser/index.js:3128:26)
at NodeEventGenerator.applySelectors (/Users/keegan/my-vuetify-project/node_modules/vue-eslint-parser/index.js:3142:22)
at NodeEventGenerator.enterNode (/Users/keegan/my-vuetify-project/node_modules/vue-eslint-parser/index.js:3150:14)
at traverse (/Users/keegan/my-vuetify-project/node_modules/vue-eslint-parser/index.js:110:13)
at traverse (/Users/keegan/my-vuetify-project/node_modules/vue-eslint-parser/index.js:117:21)
at traverse (/Users/keegan/my-vuetify-project/node_modules/vue-eslint-parser/index.js:122:13)
at traverse (/Users/keegan/my-vuetify-project/node_modules/vue-eslint-parser/index.js:117:21)
at traverse (/Users/keegan/my-vuetify-project/node_modules/vue-eslint-parser/index.js:117:21)
at traverse (/Users/keegan/my-vuetify-project/node_modules/vue-eslint-parser/index.js:117:21)
at traverse (/Users/keegan/my-vuetify-project/node_modules/vue-eslint-parser/index.js:117:21)
at traverse (/Users/keegan/my-vuetify-project/node_modules/vue-eslint-parser/index.js:117:21)
at traverse (/Users/keegan/my-vuetify-project/node_modules/vue-eslint-parser/index.js:117:21)
at traverseNodes (/Users/keegan/my-vuetify-project/node_modules/vue-eslint-parser/index.js:128:5)
at scriptVisitor.Program:exit (/Users/keegan/my-vuetify-project/node_modules/vue-eslint-parser/index.js:3586:25)
error Command failed with exit code 1.
When running npm install eslint-plugin-vuetify --save-dev
I get:
Found: [email protected]
Could not resolve dependency:
npm ERR! peer eslint@"^6.0.0 | ^7.0.0" from [email protected]
This does really make sense, does it? I have 7.19.0 installed which should be fine.
I am using npm 7.5.3.
Any ideas?
"eslint-plugin-vuetify": "^2.0.1"
I've got this error from a v-text-field component, during Vue 3 migration. That component has a flat props.
However, "flat" is still in use for v-text-field.
v-text-field
When it comes to v-text-field component, having flat props would not let eslint-plugin-vuetify show 'flat' has been removed
errors.
Existing usages of v-toolbar-side-icon
are not flagged by the recommended or base ruleset.
Hi guys
I have followed the install guide on a newly created project on Vuetify to. I have many different things but no matter what I do I get the following error:
~/Development/myrepos/newproject/src/main/newfrontend $ npm run lint
ERROR TypeError: Error while loading rule 'vuetify/no-deprecated-classes': context.parserServices.defineTemplateBodyVisitor is not a function
Occurred while linting /Users/and/Development/myrepos/newproject/src/main/newfrontend/.eslintrc.js
TypeError: Error while loading rule 'vuetify/no-deprecated-classes': context.parserServices.defineTemplateBodyVisitor is not a function
Occurred while linting /Users/and/Development/myrepos/newproject/src/main/newfrontend/.eslintrc.js
at Object.create (/Users/and/Development/myrepos/newproject/src/main/newfrontend/node_modules/eslint-plugin-vuetify/lib/rules/no-deprecated-classes.js:52:35)
at createRuleListeners (/Users/and/Development/myrepos/newproject/src/main/newfrontend/node_modules/eslint/lib/linter/linter.js:746:21)
at /Users/and/Development/myrepos/newproject/src/main/newfrontend/node_modules/eslint/lib/linter/linter.js:916:31
at Array.forEach (<anonymous>)
at runRules (/Users/and/Development/myrepos/newproject/src/main/newfrontend/node_modules/eslint/lib/linter/linter.js:861:34)
at Linter._verifyWithoutProcessors (/Users/and/Development/myrepos/newproject/src/main/newfrontend/node_modules/eslint/lib/linter/linter.js:1157:31)
at Linter._verifyWithConfigArray (/Users/and/Development/myrepos/newproject/src/main/newfrontend/node_modules/eslint/lib/linter/linter.js:1255:21)
at Linter.verify (/Users/and/Development/myrepos/newproject/src/main/newfrontend/node_modules/eslint/lib/linter/linter.js:1210:25)
at Linter.verifyAndFix (/Users/and/Development/myrepos/newproject/src/main/newfrontend/node_modules/eslint/lib/linter/linter.js:1400:29)
at verifyText (/Users/and/Development/myrepos/newproject/src/main/newfrontend/node_modules/eslint/lib/cli-engine/cli-engine.js:230:48)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] lint: `vue-cli-service lint`
npm ERR! Exit status 1`
I am using Vuetify version 2.2.11. Here are some other version details from package.json:
"devDependencies": {
"@vue/cli-plugin-babel": "~4.2.0",
"@vue/cli-plugin-eslint": "~4.2.0",
"@vue/cli-service": "~4.2.0",
"babel-eslint": "^10.0.3",
"eslint": "^6.7.2",
"eslint-plugin-vue": "^6.1.2",
"eslint-plugin-vuetify": "^1.0.0-beta.6",
"sass": "^1.19.0",
"sass-loader": "^8.0.0",
"vue-cli-plugin-moment": "~0.1.1",
"vue-cli-plugin-vuetify": "~2.0.5",
"vue-template-compiler": "^2.6.11",
"vuetify-loader": "^1.3.0"
}
Not sure what kind of info to provide, please tell me if I should add anything.
Does anybody have any suggestions on how to fix this?
Thanks!
Kind regards,
Anders
Probably a stupid question. But we use TSlint and only have the tslint.json file. Can we use the eslint-plugin-vuetify settings here somehow?
VBtn throws an error for the text
prop for vuetify/no-deprecated-props
. That prop is listed in the docs and does have the intended effect. The linter will automatically try to change it to variant="text"
, which is correct for v2 to v3, but doesn't support the new v3 version of the prop (and long-term use of the linter).
More: 6cfc2bb3c1bed3c4f9ffef9f523248489c5d5296
<v-snackbar elevation="24"/>
is transformed to <v-snackbar content-class="elevation-24">
<v-snackbar :elevation="24"/>
is transformed to <v-snackbar :content-class="24 && 'elevation-24'">
Both should be transformed to <v-snackbar class="elevation-24">
(class instead of content-class)
And if class
already exists it should be added to class (class="some-class elevation-24"
)
VImg
still supports using max-height
, max-width
& height
props.
height prop is useful along width width
prop when we use image inside prepend slot in VListItem
. Without height prop image gets bigger and aspect ration don't have effect.
Moreover, VSlider
supports with ticks
& show-ticks
according to API and usage: https://next.vuetifyjs.com/en/api/v-slider/
<v-expansion-panels accordion />
should be transformed to <v-expansion-panels variant="accordion" />
The same goes for inset
and popout
I have the latest version installed (2.0.0-beta.4) and I get the following error on my v-data-table
component: 'v-data-table' has been removed eslint(vuetify/no-deprecated-components)
According to the latest Vuetify3 docs it should be supported: https://vuetifyjs.com/en/components/data-tables/basics/
When I use the absolute
prop for v-progress-linear I get an error that it's been removed, but the v3 documentation still lists the absolute
prop. I'm using v2.0.0-beta.2
.
See https://vuetifyjs.com/en/api/v-progress-linear/#props-absolute
VTabsItems
-> VWindow
VTabItem
-> VWindowItem
VTabsSlider
removed - only sliderColor
allowedprimary darken-1
-> primary-darken-1
light
-> theme="light"
dark
-> theme="dark"
bottom
-> position="bottom"
dense
-> density="compact"
**double-check thissrc
-> image
value
-> model-value
tile
-> rounded="0"
value
-> model-value
tile
-> rounded="0"
top
-> location="top"
bottom
-> location="bottom"
left
-> location="left"
right
-> location="right"
single-line
-> lines="one"
tile
-> rounded="0"
background-color
-> bg-color
shift
-> mode="shift"
horizontal
-> mode="horizontal"
value
-> model-value
outlined
-> variant="outlined"
plain
-> variant="plain"
text
-> variant="text"
x-small
-> size="x-small"
small
-> size="small"
large
-> size="large"
x-large
-> size="x-large"
absolute
-> position="absolute"
fixed
-> position="fixed"
depressed
-> elevation="0"
ripple
- needs to be updated to accept an object
img
-> image
x-small
-> size="x-small"
small
-> size="small"
large
-> size="large"
x-large
-> size="x-large"
outlined
-> variant="outline"
active-class
-> selected-class
accordion
-> variant="accordion"
inset
-> variant="inset"
popout
-> variant="popout"
background-color
-> bg-color
filled
-> variant="filled"
outlined
-> variant="outlined"
absolute
-> position="absolute"
fixed
-> position="fixed"
x-small
-> size="x-small"
small
-> size="small"
large
-> size="large"
x-large
-> size="x-large"
dense
-> density="compact"
value
-> model-value
value
-> model-value
active-class
-> selected-class
three-line
-> lines="three"
two-line
-> lines="two"
color
-> bg-color
onIcon
-> trueIcon
offIcon
-> falseIcon
row
-> inline
vertical
-> direction="vertical"
ticks
-> show-ticks
tick-labels
-> ticks
filled
-> variant="filled"
filled
is the new default variantoutlined
-> variant="outlined"
plain
-> variant="plain"
solo
-> variant="contained"
variant="underlined"
-> was the v2 default variantbackgroundColor
-> bgColor
.primary .darken-1
-> .primary-darken-1
.text--primary
-> .text-high-emphasis
.text--secondary
-> .text-medium-emphasis
.text--disabled
-> .text-disabled
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.