feat: support esm imports by PR#2

This commit is contained in:
2022-09-20 15:05:09 +02:00
committed by GitHub
4 changed files with 61 additions and 71 deletions

View File

@@ -6,4 +6,5 @@ Check [Keep a Changelog](http://keepachangelog.com/) for recommendations on how
## [Unreleased]
- Initial release
- Initial release
- Support ESM templates

View File

@@ -2,7 +2,7 @@ Use [sern](https://sern-handler.js.org) as your discord framework please. Thanks
## Usage
you can use `ctxeph`, `ctxopt`, `sernevent` and `serncommand`.
you can use `ctxeph`, `ctxopt`, `sernevent`, `serncommand`, `serneventesm` and `serncommandesm`.
## Release Notes

View File

@@ -1,47 +1,59 @@
{
// Place your snippets for typescript here. Each snippet is defined under a snippet name and has a prefix, body and
// description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the
// same ids are connected.
// Example:
// "Print to console": {
// "prefix": "log",
// "body": [
// "console.log('$1');",
// "$2"
// ],
// "description": "Log output to console"
// }
"sern: Send ephemeral message": {
"scope": "js,ts",
"prefix": "ctxeph",
"body": [
"ctx.reply({content: `$1`, ephemeral: true})",
],
"description": "Send an ephemeral message with some content."
},
"sern: Send message with empty array": {
"scope": "js,ts",
"prefix": "ctxopt",
"body": [
"ctx.reply({$1})",
],
"description": "Send a message with an empty array."
},
"sern: Create a simple event": {
"scope": "js,ts",
"prefix": "sernevent",
"body": [
"const { EventType, eventModule } = require('@sern\/handler');\r\n\r\nexport default eventModule({\r\n type: EventType.${1:Discord},\r\n name : '$2',\r\n execute($3) {\r\n $4\r\n }\r\n })"
],
"description": "Create a simple event in sern."
},
"sern: Create a simple command": {
"scope": "js,ts",
"prefix": "serncommand",
"body": [
"const { commandModule, CommandType } = require('@sern\/handler');\r\n\r\nexport default commandModule({\r\n\ttype: CommandType.$1,\r\n\tplugins: [],\r\n\tdescription: '$2',\r\n\toptions: [],\r\n\texecute: async (ctx, options) => {\r\n\t\t$3\r\n\t},\r\n});"
],
"description": "Create a simple command in sern."
},
}
// Place your snippets for typescript here. Each snippet is defined under a snippet name and has a prefix, body and
// description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the
// same ids are connected.
// Example:
// "Print to console": {
// "prefix": "log",
// "body": [
// "console.log('$1');",
// "$2"
// ],
// "description": "Log output to console"
// }
"sern: Send ephemeral message": {
"scope": "js,ts",
"prefix": "ctxeph",
"body": ["ctx.reply({content: `$1`, ephemeral: true})"],
"description": "Send an ephemeral message with some content."
},
"sern: Send message with empty array": {
"scope": "js,ts",
"prefix": "ctxopt",
"body": ["ctx.reply({$1})"],
"description": "Send a message with an empty array."
},
"sern: Create a simple event": {
"scope": "js,ts",
"prefix": "sernevent",
"body": [
"const { EventType, eventModule } = require('@sern/handler');\r\n\r\nexport default eventModule({\r\n type: EventType.${1:Discord},\r\n name : '$2',\r\n execute($3) {\r\n $4\r\n }\r\n })"
],
"description": "Create a simple event in sern."
},
"sern: Create a simple command": {
"scope": "js,ts",
"prefix": "serncommand",
"body": [
"const { commandModule, CommandType } = require('@sern/handler');\r\n\r\nexport default commandModule({\r\n\ttype: CommandType.$1,\r\n\tplugins: [],\r\n\tdescription: '$2',\r\n\toptions: [],\r\n\texecute: async (ctx, options) => {\r\n\t\t$3\r\n\t},\r\n});"
],
"description": "Create a simple command in sern."
},
"sern: Create a simple ESM event": {
"scope": "js,ts",
"prefix": "serneventesm",
"body": [
"import { EventType, eventModule } from '@sern/handler';\r\n\r\nexport default eventModule({\r\n type: EventType.${1:Discord},\r\n name : '$2',\r\n execute($3) {\r\n $4\r\n }\r\n })"
],
"description": "Create a simple event in sern."
},
"sern: Create a simple ESM command": {
"scope": "js,ts",
"prefix": "serncommandesm",
"body": [
"import { commandModule, CommandType } from '@sern/handler';\r\n\r\nexport default commandModule({\r\n\ttype: CommandType.$1,\r\n\tplugins: [],\r\n\tdescription: '$2',\r\n\toptions: [],\r\n\texecute: async (ctx, options) => {\r\n\t\t$3\r\n\t},\r\n});"
],
"description": "Create a simple command in sern."
}
}

View File

@@ -1,23 +0,0 @@
# Welcome to your VS Code Extension
## What's in the folder
* This folder contains all of the files necessary for your extension.
* `package.json` - this is the manifest file that defines the location of the snippet file and specifies the language of the snippets.
* `snippets/snippets.code-snippets` - the file containing all snippets.
## Get up and running straight away
* Press `F5` to open a new window with your extension loaded.
* Create a new file with a file name suffix matching your language.
* Verify that your snippets are proposed on IntelliSense.
## Make changes
* You can relaunch the extension from the debug toolbar after making changes to the files listed above.
* You can also reload (`Ctrl+R` or `Cmd+R` on Mac) the VS Code window with your extension to load your changes.
## Install your extension
* To start using your extension with Visual Studio Code copy it into the `<user home>/.vscode/extensions` folder and restart Code.
* To share your extension with the world, read on https://code.visualstudio.com/docs about publishing an extension.