style(lit): improve declare state example

This commit is contained in:
Mathieu Schimmerling
2022-05-14 09:02:01 +00:00
parent ce17e543fd
commit c4596d2d8b
5 changed files with 50 additions and 82 deletions

View File

@@ -1,3 +1,3 @@
{
"plugins": [["@babel/plugin-proposal-decorators", {"decoratorsBeforeExport": false}]]
"plugins": [["@babel/plugin-proposal-decorators", {"decoratorsBeforeExport": true}]]
}

View File

@@ -1,2 +1,2 @@
tasks:
- init: pnpm install
- init: pnpm install --frozen-lockfile

View File

@@ -1,13 +1,11 @@
import { LitElement, html } from 'lit';
import { customElement } from 'lit/decorators.js';
@customElement('name')
export class Name extends LitElement {
constructor() {
super();
this.name = 'John';
}
name = 'John';
render() {
return html`<h1>Hello ${this.name}!</h1>`;
}
}
customElements.define('name', Name);

119
pnpm-lock.yaml generated
View File

@@ -1,4 +1,4 @@
lockfileVersion: 5.4
lockfileVersion: 5.3
specifiers:
'@angular-eslint/eslint-plugin': ^13.2.1
@@ -50,19 +50,19 @@ dependencies:
alpinejs: 3.10.2
devDependencies:
'@angular-eslint/eslint-plugin': 13.2.1_hcfsmds2fshutdssjqluwm76uu
'@angular-eslint/eslint-plugin-template': 13.2.1_hcfsmds2fshutdssjqluwm76uu
'@angular-eslint/template-parser': 13.2.1_hcfsmds2fshutdssjqluwm76uu
'@angular-eslint/eslint-plugin': 13.2.1_eslint@8.15.0+typescript@4.6.4
'@angular-eslint/eslint-plugin-template': 13.2.1_eslint@8.15.0+typescript@4.6.4
'@angular-eslint/template-parser': 13.2.1_eslint@8.15.0+typescript@4.6.4
'@angular/core': 13.3.7
'@angular/router': 13.3.7_@angular+core@13.3.7
'@astrojs/svelte': 0.1.2_dah5vqhhmoyflbo2ctdibblloi
'@astrojs/svelte': 0.1.2_180fdac0e763b05585da14c680856b72
'@astrojs/tailwind': 0.1.2
'@babel/eslint-parser': 7.17.0_eslint@8.15.0
'@babel/plugin-proposal-decorators': 7.17.9
'@tailwindcss/typography': 0.5.2_tailwindcss@3.0.24
'@types/mdast': 3.0.10
'@typescript-eslint/eslint-plugin': 5.23.0_c63nfttrfhylg3zmgcxfslaw44
'@typescript-eslint/parser': 5.23.0_hcfsmds2fshutdssjqluwm76uu
'@typescript-eslint/eslint-plugin': 5.23.0_17b6d2ce7129f0b36f2c30ae592c16e7
'@typescript-eslint/parser': 5.23.0_eslint@8.15.0+typescript@4.6.4
astro: 1.0.0-beta.27
autoprefixer: 10.4.7_postcss@8.4.13
codesandbox: 2.2.3
@@ -70,10 +70,10 @@ devDependencies:
eslint-config-prettier: 8.5.0_eslint@8.15.0
eslint-plugin-ember: 10.6.1_eslint@8.15.0
eslint-plugin-lit: 1.6.1_eslint@8.15.0
eslint-plugin-prettier: 4.0.0_iqftbjqlxzn3ny5nablrkczhqi
eslint-plugin-prettier: 4.0.0_440b30a60bbe5bb6e3ad0057150b2782
eslint-plugin-react: 7.29.4_eslint@8.15.0
eslint-plugin-solid: 0.4.7_hcfsmds2fshutdssjqluwm76uu
eslint-plugin-svelte3: 3.4.1_usjo443ynfgvutifl4ot2fkxzy
eslint-plugin-solid: 0.4.7_eslint@8.15.0+typescript@4.6.4
eslint-plugin-svelte3: 3.4.1_eslint@8.15.0+svelte@3.48.0
eslint-plugin-vue: 8.7.1_eslint@8.15.0
esm: 3.2.25
husky: 7.0.4
@@ -83,7 +83,7 @@ devDependencies:
pkg-dir: 6.0.1
postcss: 8.4.13
prettier: 2.6.2
prettier-plugin-svelte: 2.7.0_kkjbqzpydplecjtkxrgomroeru
prettier-plugin-svelte: 2.7.0_prettier@2.6.2+svelte@3.48.0
prop-types: 15.8.1
react: 17.0.2
remark: 14.0.2
@@ -108,14 +108,14 @@ packages:
resolution: {integrity: sha512-v/O9s6yvg7MJTQ9iNdXpZJOAjunY4ATk/dE3+xTsLwWTZXTXLXZE1FtKD/reijoItZtGiLUJ+F1pK5nwq/iI6w==}
dev: true
/@angular-eslint/eslint-plugin-template/13.2.1_hcfsmds2fshutdssjqluwm76uu:
/@angular-eslint/eslint-plugin-template/13.2.1_eslint@8.15.0+typescript@4.6.4:
resolution: {integrity: sha512-fA11IGfnWzJePFVS04JKigQY33/Twp5Gv3sj6o8NLRi25NbZDFMc6YjRv8FuKfJ0DXrZh0nLgP2L/01qnXDgZQ==}
peerDependencies:
eslint: ^7.0.0 || ^8.0.0
typescript: '*'
dependencies:
'@angular-eslint/bundled-angular-compiler': 13.2.1
'@typescript-eslint/experimental-utils': 5.17.0_hcfsmds2fshutdssjqluwm76uu
'@typescript-eslint/experimental-utils': 5.17.0_eslint@8.15.0+typescript@4.6.4
aria-query: 4.2.2
axobject-query: 2.2.0
eslint: 8.15.0
@@ -124,21 +124,21 @@ packages:
- supports-color
dev: true
/@angular-eslint/eslint-plugin/13.2.1_hcfsmds2fshutdssjqluwm76uu:
/@angular-eslint/eslint-plugin/13.2.1_eslint@8.15.0+typescript@4.6.4:
resolution: {integrity: sha512-hlHzbe7MIBbZ4IUKvJh5pjN5nKw0YZBwPyIB1+IBOJAdjWuS274uUGTZxKeyJiyJi0FOUu5+Z6vbM9ZJ2uzjcw==}
peerDependencies:
eslint: ^7.0.0 || ^8.0.0
typescript: '*'
dependencies:
'@angular-eslint/utils': 13.2.1_hcfsmds2fshutdssjqluwm76uu
'@typescript-eslint/experimental-utils': 5.17.0_hcfsmds2fshutdssjqluwm76uu
'@angular-eslint/utils': 13.2.1_eslint@8.15.0+typescript@4.6.4
'@typescript-eslint/experimental-utils': 5.17.0_eslint@8.15.0+typescript@4.6.4
eslint: 8.15.0
typescript: 4.6.4
transitivePeerDependencies:
- supports-color
dev: true
/@angular-eslint/template-parser/13.2.1_hcfsmds2fshutdssjqluwm76uu:
/@angular-eslint/template-parser/13.2.1_eslint@8.15.0+typescript@4.6.4:
resolution: {integrity: sha512-aSZjKYTUXjJ3sehm90CfZey/ed333IxP0TpnaG7Lue9rSEa3BkKOv8Kffy+EhDkpdTpjdwdmGfopxxsbm9sPHw==}
peerDependencies:
eslint: ^7.0.0 || ^8.0.0
@@ -150,14 +150,14 @@ packages:
typescript: 4.6.4
dev: true
/@angular-eslint/utils/13.2.1_hcfsmds2fshutdssjqluwm76uu:
/@angular-eslint/utils/13.2.1_eslint@8.15.0+typescript@4.6.4:
resolution: {integrity: sha512-TCw56jQDPe/FDg3IC0QTQVn4mv5Pzb8K4YpO2hiBdU4XwmOTGWjbwZO++Wr1Gekw1OJYVWSIwNfz2MrGIDsu7A==}
peerDependencies:
eslint: ^7.0.0 || ^8.0.0
typescript: '*'
dependencies:
'@angular-eslint/bundled-angular-compiler': 13.2.1
'@typescript-eslint/experimental-utils': 5.17.0_hcfsmds2fshutdssjqluwm76uu
'@typescript-eslint/experimental-utils': 5.17.0_eslint@8.15.0+typescript@4.6.4
eslint: 8.15.0
typescript: 4.6.4
transitivePeerDependencies:
@@ -246,12 +246,12 @@ packages:
resolution: {integrity: sha512-rgi3g078uAxdb8jg1A5U8sNWMUQq7UXwHT7qmPiGOeB+h5p+tzUFy/Awq2suv99Tq8efpn3HrAGTuDvxyvbwfg==}
dependencies:
svelte: 3.48.0
svelte2tsx: 0.5.9_wwvk7nlptlrqo2czohjtk6eiqm
svelte2tsx: 0.5.9_svelte@3.48.0+typescript@4.6.4
transitivePeerDependencies:
- typescript
dev: true
/@astrojs/svelte/0.1.2_dah5vqhhmoyflbo2ctdibblloi:
/@astrojs/svelte/0.1.2_180fdac0e763b05585da14c680856b72:
resolution: {integrity: sha512-5e3ITa4RrwlFODcNfWSDiUTRmMH2Rq9Kt9x9+G9+pUdSYssvKK3DGl+8p3X/3Q7wWXtHHe/JeteNtZ46b+E/qA==}
engines: {node: ^14.15.0 || >=16.0.0}
peerDependencies:
@@ -260,7 +260,7 @@ packages:
'@sveltejs/vite-plugin-svelte': 1.0.0-next.44_svelte@3.48.0+vite@2.9.9
postcss-load-config: 3.1.4_postcss@8.4.13
svelte: 3.48.0
svelte-preprocess: 4.10.6_j5vltbetf5b3hvn3gkit4y4tee
svelte-preprocess: 4.10.6_4f6ab984932f43b3d5bb32913e639321
transitivePeerDependencies:
- '@babel/core'
- coffeescript
@@ -876,7 +876,7 @@ packages:
resolution: {integrity: sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==}
dev: true
/@typescript-eslint/eslint-plugin/5.23.0_c63nfttrfhylg3zmgcxfslaw44:
/@typescript-eslint/eslint-plugin/5.23.0_17b6d2ce7129f0b36f2c30ae592c16e7:
resolution: {integrity: sha512-hEcSmG4XodSLiAp1uxv/OQSGsDY6QN3TcRU32gANp+19wGE1QQZLRS8/GV58VRUoXhnkuJ3ZxNQ3T6Z6zM59DA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
@@ -887,10 +887,10 @@ packages:
typescript:
optional: true
dependencies:
'@typescript-eslint/parser': 5.23.0_hcfsmds2fshutdssjqluwm76uu
'@typescript-eslint/parser': 5.23.0_eslint@8.15.0+typescript@4.6.4
'@typescript-eslint/scope-manager': 5.23.0
'@typescript-eslint/type-utils': 5.23.0_hcfsmds2fshutdssjqluwm76uu
'@typescript-eslint/utils': 5.23.0_hcfsmds2fshutdssjqluwm76uu
'@typescript-eslint/type-utils': 5.23.0_eslint@8.15.0+typescript@4.6.4
'@typescript-eslint/utils': 5.23.0_eslint@8.15.0+typescript@4.6.4
debug: 4.3.4
eslint: 8.15.0
functional-red-black-tree: 1.0.1
@@ -903,20 +903,20 @@ packages:
- supports-color
dev: true
/@typescript-eslint/experimental-utils/5.17.0_hcfsmds2fshutdssjqluwm76uu:
/@typescript-eslint/experimental-utils/5.17.0_eslint@8.15.0+typescript@4.6.4:
resolution: {integrity: sha512-U4sM5z0/ymSYqQT6I7lz8l0ZZ9zrya5VIwrwAP5WOJVabVtVsIpTMxPQe+D3qLyePT+VlETUTO2nA1+PufPx9Q==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
dependencies:
'@typescript-eslint/utils': 5.17.0_hcfsmds2fshutdssjqluwm76uu
'@typescript-eslint/utils': 5.17.0_eslint@8.15.0+typescript@4.6.4
eslint: 8.15.0
transitivePeerDependencies:
- supports-color
- typescript
dev: true
/@typescript-eslint/parser/5.23.0_hcfsmds2fshutdssjqluwm76uu:
/@typescript-eslint/parser/5.23.0_eslint@8.15.0+typescript@4.6.4:
resolution: {integrity: sha512-V06cYUkqcGqpFjb8ttVgzNF53tgbB/KoQT/iB++DOIExKmzI9vBJKjZKt/6FuV9c+zrDsvJKbJ2DOCYwX91cbw==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
@@ -952,7 +952,7 @@ packages:
'@typescript-eslint/visitor-keys': 5.23.0
dev: true
/@typescript-eslint/type-utils/5.23.0_hcfsmds2fshutdssjqluwm76uu:
/@typescript-eslint/type-utils/5.23.0_eslint@8.15.0+typescript@4.6.4:
resolution: {integrity: sha512-iuI05JsJl/SUnOTXA9f4oI+/4qS/Zcgk+s2ir+lRmXI+80D8GaGwoUqs4p+X+4AxDolPpEpVUdlEH4ADxFy4gw==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
@@ -962,7 +962,7 @@ packages:
typescript:
optional: true
dependencies:
'@typescript-eslint/utils': 5.23.0_hcfsmds2fshutdssjqluwm76uu
'@typescript-eslint/utils': 5.23.0_eslint@8.15.0+typescript@4.6.4
debug: 4.3.4
eslint: 8.15.0
tsutils: 3.21.0_typescript@4.6.4
@@ -1023,7 +1023,7 @@ packages:
- supports-color
dev: true
/@typescript-eslint/utils/5.17.0_hcfsmds2fshutdssjqluwm76uu:
/@typescript-eslint/utils/5.17.0_eslint@8.15.0+typescript@4.6.4:
resolution: {integrity: sha512-DVvndq1QoxQH+hFv+MUQHrrWZ7gQ5KcJzyjhzcqB1Y2Xes1UQQkTRPUfRpqhS8mhTWsSb2+iyvDW1Lef5DD7vA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
@@ -1041,7 +1041,7 @@ packages:
- typescript
dev: true
/@typescript-eslint/utils/5.23.0_hcfsmds2fshutdssjqluwm76uu:
/@typescript-eslint/utils/5.23.0_eslint@8.15.0+typescript@4.6.4:
resolution: {integrity: sha512-dbgaKN21drqpkbbedGMNPCtRPZo1IOUr5EI9Jrrh99r5UW5Q0dz46RKXeSBoPV+56R6dFKpbrdhgUNSJsDDRZA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
@@ -1411,8 +1411,6 @@ packages:
dependencies:
follow-redirects: 1.5.10
is-buffer: 2.0.5
transitivePeerDependencies:
- supports-color
dev: true
/axobject-query/2.2.0:
@@ -1562,7 +1560,7 @@ packages:
mississippi: 2.0.0
mkdirp: 0.5.6
move-concurrently: 1.0.1
promise-inflight: 1.0.1_bluebird@3.7.2
promise-inflight: 1.0.1
rimraf: 2.7.1
ssri: 5.3.0
unique-filename: 1.1.1
@@ -1580,7 +1578,7 @@ packages:
mississippi: 1.3.1
mkdirp: 0.5.6
move-concurrently: 1.0.1
promise-inflight: 1.0.1_bluebird@3.7.2
promise-inflight: 1.0.1
rimraf: 2.7.1
ssri: 4.1.6
unique-filename: 1.1.1
@@ -1809,8 +1807,6 @@ packages:
pacote: 2.7.38
shortid: 2.2.16
update-notifier: 2.5.0
transitivePeerDependencies:
- supports-color
dev: true
/color-convert/1.9.3:
@@ -1976,22 +1972,12 @@ packages:
/debug/3.1.0:
resolution: {integrity: sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==}
peerDependencies:
supports-color: '*'
peerDependenciesMeta:
supports-color:
optional: true
dependencies:
ms: 2.0.0
dev: true
/debug/3.2.7:
resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==}
peerDependencies:
supports-color: '*'
peerDependenciesMeta:
supports-color:
optional: true
dependencies:
ms: 2.1.3
dev: true
@@ -2577,7 +2563,7 @@ packages:
requireindex: 1.2.0
dev: true
/eslint-plugin-prettier/4.0.0_iqftbjqlxzn3ny5nablrkczhqi:
/eslint-plugin-prettier/4.0.0_440b30a60bbe5bb6e3ad0057150b2782:
resolution: {integrity: sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ==}
engines: {node: '>=6.0.0'}
peerDependencies:
@@ -2617,13 +2603,13 @@ packages:
string.prototype.matchall: 4.0.7
dev: true
/eslint-plugin-solid/0.4.7_hcfsmds2fshutdssjqluwm76uu:
/eslint-plugin-solid/0.4.7_eslint@8.15.0+typescript@4.6.4:
resolution: {integrity: sha512-oWjW1YhhcGF6guWzdC44m/350A3l/5wgg9Gry+aWjeWpCeD2PMQT9jnjV3Sdibprjjvqe8w9db/H+oqpm3JHmg==}
engines: {node: '>=12.0.0'}
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
dependencies:
'@typescript-eslint/utils': 5.23.0_hcfsmds2fshutdssjqluwm76uu
'@typescript-eslint/utils': 5.23.0_eslint@8.15.0+typescript@4.6.4
eslint: 8.15.0
is-html: 2.0.0
jsx-ast-utils: 3.3.0
@@ -2635,7 +2621,7 @@ packages:
- typescript
dev: true
/eslint-plugin-svelte3/3.4.1_usjo443ynfgvutifl4ot2fkxzy:
/eslint-plugin-svelte3/3.4.1_eslint@8.15.0+svelte@3.48.0:
resolution: {integrity: sha512-7p59WG8qV8L6wLdl4d/c3mdjkgVglQCdv5XOTk/iNPBKXuuV+Q0eFP5Wa6iJd/G2M1qR3BkLPEzaANOqKAZczw==}
engines: {node: '>=10'}
peerDependencies:
@@ -3030,8 +3016,6 @@ packages:
engines: {node: '>=4.0'}
dependencies:
debug: 3.1.0
transitivePeerDependencies:
- supports-color
dev: true
/foreach/2.0.6:
@@ -3479,8 +3463,6 @@ packages:
dependencies:
agent-base: 4.3.0
debug: 3.1.0
transitivePeerDependencies:
- supports-color
dev: true
/https-proxy-agent/2.2.4:
@@ -3489,8 +3471,6 @@ packages:
dependencies:
agent-base: 4.3.0
debug: 3.2.7
transitivePeerDependencies:
- supports-color
dev: true
/human-signals/2.1.0:
@@ -4244,8 +4224,6 @@ packages:
promise-retry: 1.1.1
socks-proxy-agent: 3.0.1
ssri: 5.3.0
transitivePeerDependencies:
- supports-color
dev: true
/markdown-table/3.0.2:
@@ -5200,7 +5178,7 @@ packages:
npm-package-arg: 5.1.2
npm-pick-manifest: 1.0.4
osenv: 0.1.5
promise-inflight: 1.0.1_bluebird@3.7.2
promise-inflight: 1.0.1
promise-retry: 1.1.1
protoduck: 4.0.0
safe-buffer: 5.2.1
@@ -5210,8 +5188,6 @@ packages:
tar-stream: 1.6.2
unique-filename: 1.1.1
which: 1.3.1
transitivePeerDependencies:
- supports-color
dev: true
/parallel-transform/1.2.0:
@@ -5464,7 +5440,7 @@ packages:
fast-diff: 1.2.0
dev: true
/prettier-plugin-svelte/2.7.0_kkjbqzpydplecjtkxrgomroeru:
/prettier-plugin-svelte/2.7.0_prettier@2.6.2+svelte@3.48.0:
resolution: {integrity: sha512-fQhhZICprZot2IqEyoiUYLTRdumULGRvw0o4dzl5jt0jfzVWdGqeYW27QTWAeXhoupEZJULmNoH3ueJwUWFLIA==}
peerDependencies:
prettier: ^1.16.4 || ^2.0.0
@@ -5489,15 +5465,8 @@ packages:
resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
dev: true
/promise-inflight/1.0.1_bluebird@3.7.2:
/promise-inflight/1.0.1:
resolution: {integrity: sha1-mEcocL8igTL8vdhoEputEsPAKeM=}
peerDependencies:
bluebird: '*'
peerDependenciesMeta:
bluebird:
optional: true
dependencies:
bluebird: 3.7.2
dev: true
/promise-retry/1.1.1:
@@ -6403,7 +6372,7 @@ packages:
svelte: 3.48.0
dev: true
/svelte-preprocess/4.10.6_j5vltbetf5b3hvn3gkit4y4tee:
/svelte-preprocess/4.10.6_4f6ab984932f43b3d5bb32913e639321:
resolution: {integrity: sha512-I2SV1w/AveMvgIQlUF/ZOO3PYVnhxfcpNyGt8pxpUVhPfyfL/CZBkkw/KPfuFix5FJ9TnnNYMhACK3DtSaYVVQ==}
engines: {node: '>= 9.11.2'}
requiresBuild: true
@@ -6461,7 +6430,7 @@ packages:
engines: {node: '>= 8'}
dev: true
/svelte2tsx/0.5.9_wwvk7nlptlrqo2czohjtk6eiqm:
/svelte2tsx/0.5.9_svelte@3.48.0+typescript@4.6.4:
resolution: {integrity: sha512-xTDASjlh+rKo4QRhTRYSH87sS7fRoyX67xhGIMPKa3FYqftRHRmMes6nVgEskiuhBovslNHYYpMMg5YM5n/STg==}
peerDependencies:
svelte: ^3.24

View File

@@ -132,6 +132,7 @@ export default [
eslint: {
files: ['**/lit/**'],
plugins: ['lit'],
parser: '@babel/eslint-parser',
extends: ['plugin:lit/recommended'],
},
playgroundURL: 'https://lit.dev/playground',