sforkowany z mirror/soapbox
59 wiersze
1.9 KiB
Plaintext
59 wiersze
1.9 KiB
Plaintext
{
|
|
// Place your Soapbox workspace snippets here. Each snippet is defined under a snippet name and has a scope, prefix, body and
|
|
// description. Add comma separated ids of the languages where the snippet is applicable in the scope field. If scope
|
|
// is left empty or omitted, the snippet gets applied to all languages. 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": {
|
|
// "scope": "javascript,typescript",
|
|
// "prefix": "log",
|
|
// "body": [
|
|
// "console.log('$1');",
|
|
// "$2"
|
|
// ],
|
|
// "description": "Log output to console"
|
|
// }
|
|
"React component": {
|
|
"scope": "typescriptreact",
|
|
"prefix": ["component", "react component"],
|
|
"body": [
|
|
"import React from 'react';",
|
|
"",
|
|
"interface I${1:Component} {",
|
|
"}",
|
|
"",
|
|
"/** ${1:Component} component. */",
|
|
"const ${1:Component}: React.FC<I${1:Component}> = () => {",
|
|
" return (",
|
|
" <></>",
|
|
" );",
|
|
"};",
|
|
"",
|
|
"export default ${1:Component};"
|
|
],
|
|
"description": "React component"
|
|
},
|
|
"React component test": {
|
|
"scope": "typescriptreact",
|
|
"prefix": ["test", "component test", "react component test"],
|
|
"body": [
|
|
"import React from 'react';",
|
|
"",
|
|
"import { render, screen } from 'soapbox/jest/test-helpers';",
|
|
"",
|
|
"import ${1:Component} from '${2:..}';",
|
|
"",
|
|
"describe('<${1:Component} />', () => {",
|
|
" it('renders', () => {",
|
|
" render(<${1:Component} />);",
|
|
"",
|
|
" expect(screen.getByTestId('${3:test}')).toBeInTheDocument();",
|
|
" });",
|
|
"});"
|
|
],
|
|
"description": "React component test"
|
|
}
|
|
}
|