From 99ebbb09cff14c685c7d66da1e1ebfe15f47b9a8 Mon Sep 17 00:00:00 2001 From: Sergej Samsonenko Date: Mon, 21 Aug 2023 19:28:43 +0200 Subject: [PATCH 1/7] fix: barebones snippet code --- packages/minze-vscode/snippets/javascript.json | 6 +++--- packages/minze-vscode/snippets/typescript.json | 7 ++++--- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/minze-vscode/snippets/javascript.json b/packages/minze-vscode/snippets/javascript.json index 30c68921..8fe5e492 100644 --- a/packages/minze-vscode/snippets/javascript.json +++ b/packages/minze-vscode/snippets/javascript.json @@ -1,10 +1,10 @@ { - "minze:empty": { + "minze:el": { "isFileTemplate": true, - "prefix": "minze:empty", + "prefix": "minze:el", "body": [ "import { MinzeElement } from 'minze'", - "\nexport class ${TM_FILENAME_BASE/(.*)/${1:/pascalcase}/} extends MinzeElement {", + "\nexport class ${TM_FILENAME_BASE/(.*)/${1:/pascalcase}/}Element extends MinzeElement {", "\t$0", "}" ], diff --git a/packages/minze-vscode/snippets/typescript.json b/packages/minze-vscode/snippets/typescript.json index c7f959b0..aa202fe2 100644 --- a/packages/minze-vscode/snippets/typescript.json +++ b/packages/minze-vscode/snippets/typescript.json @@ -1,11 +1,12 @@ { - "minze:empty": { + "minze:el": { "isFileTemplate": true, - "prefix": "minze:empty", + "prefix": "minze:el", "body": [ "import type { Reactive, Attrs, Watch, EventListeners } from 'minze'", "import { MinzeElement } from 'minze'", - "\nexport class ${TM_FILENAME_BASE/(.*)/${1:/pascalcase}/} extends MinzeElement {", + "\nexport interface ${TM_FILENAME_BASE/(.*)/${1:/pascalcase}/}Element {}", + "\nexport class ${TM_FILENAME_BASE/(.*)/${1:/pascalcase}/}Element extends MinzeElement {", "\t$0", "}" ], From 490f3fefd9bc2f60840370250fb7575c9e9c98cc Mon Sep 17 00:00:00 2001 From: Sergej Samsonenko Date: Mon, 21 Aug 2023 20:05:22 +0200 Subject: [PATCH 2/7] docs: update code example --- docs/guide/components/methods.md | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/docs/guide/components/methods.md b/docs/guide/components/methods.md index cea4d825..1e9ee166 100644 --- a/docs/guide/components/methods.md +++ b/docs/guide/components/methods.md @@ -10,12 +10,17 @@ Certain keywords are reserved for special functionality and shouldn't be overwri import { MinzeElement } from 'minze' class MyElement extends MinzeElement { - myMethod() { + firstMethod() { console.log('Hello Minze!') } - onReady() { - this.myMethod() // 'Hello Minze!' + secondMethod = () => { + console.log('Hello Minze again!') + } + + onReady = () => { + this.firstMethod() // 'Hello Minze!' + this.secondMethod() // 'Hello Minze again!' } } From 49c2a15dcd1fd3358bc6cfb1aa0f1d98451346aa Mon Sep 17 00:00:00 2001 From: Sergej Samsonenko Date: Mon, 21 Aug 2023 20:05:38 +0200 Subject: [PATCH 3/7] chore: update comment --- packages/minze/src/lib/minze-element.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/minze/src/lib/minze-element.ts b/packages/minze/src/lib/minze-element.ts index 0323110b..d7e31fb7 100644 --- a/packages/minze/src/lib/minze-element.ts +++ b/packages/minze/src/lib/minze-element.ts @@ -91,7 +91,7 @@ export class MinzeElement extends HTMLElement { * @example * ``` * class MyElement extends MinzeElement { - * onStart() { + * onStart = () => { * console.log(this.dashName) // my-element * } * } @@ -107,7 +107,7 @@ export class MinzeElement extends HTMLElement { * @example * ``` * class MyElement extends MinzeElement { - * onStart() { + * onStart = () => { * console.log(this.name) // MyElement * } * } From 66c5873856fe5086322472d9d129ade2afd0d918 Mon Sep 17 00:00:00 2001 From: Sergej Samsonenko Date: Mon, 21 Aug 2023 20:06:29 +0200 Subject: [PATCH 4/7] feat: improve snippet triggering --- .../snippets/common.code-snippets | 77 ++----------------- 1 file changed, 7 insertions(+), 70 deletions(-) diff --git a/packages/minze-vscode/snippets/common.code-snippets b/packages/minze-vscode/snippets/common.code-snippets index c16005dc..babf294f 100644 --- a/packages/minze-vscode/snippets/common.code-snippets +++ b/packages/minze-vscode/snippets/common.code-snippets @@ -1,7 +1,7 @@ { "static observedAttributes": { "scope": "javascript,typescript", - "prefix": ["observedAttributes", "static observedAttributes"], + "prefix": "observedAttributes", "body": ["static observedAttributes = ['${1:name}'$2]"], "description": "observed attributes" }, @@ -22,104 +22,41 @@ "select": { "scope": "javascript,typescript", - "prefix": ["select", "this.select"], + "prefix": "select", "body": ["this.select('$1')"], "description": "select method" }, "selectAll": { "scope": "javascript,typescript", - "prefix": ["selectAll", "this.selectAll"], + "prefix": "selectAll", "body": ["this.selectAll('$1')"], "description": "selectAll method" }, "slotted": { "scope": "javascript,typescript", - "prefix": ["slotted", "this.slotted"], + "prefix": "slotted", "body": ["this.slotted('$1')"], "description": "slotted method" }, "dispatch": { "scope": "javascript,typescript", - "prefix": ["dispatch", "this.dispatch"], + "prefix": "dispatch", "body": ["this.dispatch('${1:event}', ${2:'detail'})"], "description": "dispatch method" }, "hook": { "scope": "javascript,typescript", - "prefix": "hook", + "prefix": ["hook", "on", "before", "after"], "body": [ - "${1|afterAttributeChange,afterRender,beforeAttributeChange,beforeRender,onDestory,onMove,onReactive,onReady,onStart|} = () => {$2}" + "${1|onStart,onReactive,onReady,onDestory,onMove,beforeRender,afterRender,beforeAttributeChange,afterAttributeChange|}() {$2}" ], "description": "all available hooks" }, - "onStart": { - "scope": "javascript,typescript", - "prefix": "onStart", - "body": ["onStart = () => {$1}"], - "description": "onStart hook" - }, - - "onReactive": { - "scope": "javascript,typescript", - "prefix": "onReactive", - "body": ["onReactive = () => {$1}"], - "description": "onReactive hook" - }, - - "onReady": { - "scope": "javascript,typescript", - "prefix": "onReady", - "body": ["onReady = () => {$1}"], - "description": "onReady hook" - }, - - "onDestory": { - "scope": "javascript,typescript", - "prefix": "onDestory", - "body": ["onDestory = () => {$1}"], - "description": "onDestory hook" - }, - - "onMove": { - "scope": "javascript,typescript", - "prefix": "onMove", - "body": ["onMove = () => {$1}"], - "description": "onMove hook" - }, - - "beforeRender": { - "scope": "javascript,typescript", - "prefix": "beforeRender", - "body": ["beforeRender = () => {$1}"], - "description": "beforeRender hook" - }, - - "afterRender": { - "scope": "javascript,typescript", - "prefix": "afterRender", - "body": ["afterRender = () => {$1}"], - "description": "afterRender hook" - }, - - "beforeAttributeChange": { - "scope": "javascript,typescript", - "prefix": "beforeAttributeChange", - "body": ["beforeAttributeChange = (${1:name, oldValue, newValue}) => {$2}"], - "description": "beforeAttributeChange hook" - }, - - "afterAttributeChange": { - "scope": "javascript,typescript", - "prefix": "afterAttributeChange", - "body": ["afterAttributeChange = (${1:name, oldValue, newValue}) => {$2}"], - "description": "afterAttributeChange hook" - }, - "debug": { "scope": "javascript,typescript", "prefix": "debug", From 83e0a32e673b8829850fdf1d2b30ac69134f6b71 Mon Sep 17 00:00:00 2001 From: Sergej Samsonenko Date: Mon, 21 Aug 2023 20:15:56 +0200 Subject: [PATCH 5/7] chore: update text --- docs/guide/advanced/syntax-highlighting.md | 2 +- packages/minze-vscode/README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/guide/advanced/syntax-highlighting.md b/docs/guide/advanced/syntax-highlighting.md index 4f701a9b..2ebcf609 100644 --- a/docs/guide/advanced/syntax-highlighting.md +++ b/docs/guide/advanced/syntax-highlighting.md @@ -6,7 +6,7 @@ Once your HTML and CSS templates grow in size you might want to add some syntax ### [Minze VS Code Extension](https://marketplace.visualstudio.com/items?itemName=n6ai.minze-vscode) -Minze VS Code extension adds auto-highlighting to class methods defined as arrow functions starting with `html` and `css` keyword. Additionally you can manually prefix any template literals with `/*html*/` to highlight HTML code inside them, or `/*css*/` to highlight CSS code. +The Minze VS Code extension comes bundled with snippets for auto-completion. It also adds auto-highlighting to class methods defined as arrow functions starting with `html` and `css` keyword. Additionally you can manually prefix any template literals with `/*html*/` to highlight HTML code inside them, or `/*css*/` to highlight CSS code. ```js import { MinzeElement } from Minze diff --git a/packages/minze-vscode/README.md b/packages/minze-vscode/README.md index 23ed2c02..f3430d48 100644 --- a/packages/minze-vscode/README.md +++ b/packages/minze-vscode/README.md @@ -11,7 +11,7 @@ Language support for Minze. ### Syntax Highlighting -Minze VS Code extension adds auto-highlighting to class methods defined as arrow functions starting with `html` and `css` keyword. Additionally you can manually prefix any template literals with `/*html*/` to highlight HTML code inside them, or `/*css*/` to highlight CSS code. +The Minze VS Code extension comes bundled with snippets for auto-completion. It also adds auto-highlighting to class methods defined as arrow functions starting with `html` and `css` keyword. Additionally you can manually prefix any template literals with `/*html*/` to highlight HTML code inside them, or `/*css*/` to highlight CSS code. **Example** From 5d1f2c6374e87cba21d1e3aadd7132bd19d89d37 Mon Sep 17 00:00:00 2001 From: "N6 AI [Bot]" <119013176+n6aibot@users.noreply.github.com> Date: Mon, 21 Aug 2023 20:16:42 +0200 Subject: [PATCH 6/7] chore(main): release minze-vscode 0.4.0 (#241) --- .release-please-manifest.json | 2 +- packages/minze-vscode/CHANGELOG.md | 13 +++++++++++++ packages/minze-vscode/package.json | 2 +- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 8337574a..0ee70b8d 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,6 +1,6 @@ { "packages/create-minze": "2.1.1", "packages/minze": "1.9.1", - "packages/minze-vscode": "0.3.1", + "packages/minze-vscode": "0.4.0", "packages/vite-plugin-minze": "1.1.5" } diff --git a/packages/minze-vscode/CHANGELOG.md b/packages/minze-vscode/CHANGELOG.md index d2191efd..ac3620c9 100644 --- a/packages/minze-vscode/CHANGELOG.md +++ b/packages/minze-vscode/CHANGELOG.md @@ -1,5 +1,18 @@ # Changelog +## [0.4.0](https://github.com/n6ai/minze/compare/minze-vscode-v0.3.1...minze-vscode-v0.4.0) (2023-08-21) + + +### Features + +* add code-snippets ([d898f5f](https://github.com/n6ai/minze/commit/d898f5f39520fe3e6361840d6ca9376020697f0e)) +* improve snippet triggering ([66c5873](https://github.com/n6ai/minze/commit/66c5873856fe5086322472d9d129ade2afd0d918)) + + +### Bug Fixes + +* barebones snippet code ([99ebbb0](https://github.com/n6ai/minze/commit/99ebbb09cff14c685c7d66da1e1ebfe15f47b9a8)) + ## [0.3.1](https://github.com/n6ai/minze/compare/minze-vscode-v0.3.0...minze-vscode-v0.3.1) (2023-08-17) diff --git a/packages/minze-vscode/package.json b/packages/minze-vscode/package.json index d28d8331..3c1c22d0 100644 --- a/packages/minze-vscode/package.json +++ b/packages/minze-vscode/package.json @@ -1,7 +1,7 @@ { "name": "minze-vscode", "displayName": "Minze", - "version": "0.3.1", + "version": "0.4.0", "license": "MIT", "publisher": "n6ai", "author": "Sergej Samsonenko", From b34fed7361abf6ca4083ea1dc329d2cb9e933da0 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 21 Aug 2023 18:17:46 +0000 Subject: [PATCH 7/7] chore(deps): lock file bump --- package-lock.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package-lock.json b/package-lock.json index 85410693..34d19fb9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10630,7 +10630,7 @@ } }, "packages/minze-vscode": { - "version": "0.3.1", + "version": "0.4.0", "license": "MIT", "devDependencies": { "@vscode/vsce": "^2.20.1"