From c206817431ff18fe61e3d488bb36996c989e628b Mon Sep 17 00:00:00 2001 From: Elio Struyf Date: Mon, 27 Sep 2021 09:23:09 +0200 Subject: [PATCH 01/46] #117 - Added single line support --- assets/media/styles.css | 1 + package.json | 4 +++ src/extension.ts | 6 ++++ src/models/PanelSettings.ts | 1 + .../components/Fields/TextField.tsx | 32 ++++++++++++++----- src/panelWebView/components/Metadata.tsx | 1 + 6 files changed, 37 insertions(+), 8 deletions(-) diff --git a/assets/media/styles.css b/assets/media/styles.css index 38ee991b..9a049c43 100644 --- a/assets/media/styles.css +++ b/assets/media/styles.css @@ -437,6 +437,7 @@ input:checked + .field__toggle__slider:before { margin-right: .5rem; } +.metadata_field__input, .metadata_field__input:focus, .metadata_field__textarea, .metadata_field__textarea:focus { outline: none; } diff --git a/package.json b/package.json index 3a1b2a92..42797f1a 100644 --- a/package.json +++ b/package.json @@ -270,6 +270,10 @@ "items": { "type": "string" } + }, + "single": { + "type": "string", + "description": "Is a single line field" } }, "additionalProperties": false, diff --git a/src/extension.ts b/src/extension.ts index a5bde400..2cd6af9b 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -167,6 +167,12 @@ export async function activate(context: vscode.ExtensionContext) { // Inserting an image in Markdown subscriptions.push(vscode.commands.registerCommand(COMMAND_NAME.insertImage, Article.insertImage)); + vscode.workspace.onDidRenameFiles(async (e) => { + if (e.files.length > 0) { + console.log('Renamed files: ', e.files); + } + }); + // Subscribe all commands subscriptions.push( insertTags, diff --git a/src/models/PanelSettings.ts b/src/models/PanelSettings.ts index 51043dfb..e4471b1e 100644 --- a/src/models/PanelSettings.ts +++ b/src/models/PanelSettings.ts @@ -28,6 +28,7 @@ export interface Field { name: string; type: "string" | "number" | "datetime" | "boolean" | "image" | "choice" | "tags" | "categories"; choices?: string[]; + single?: boolean; } export interface DateInfo { diff --git a/src/panelWebView/components/Fields/TextField.tsx b/src/panelWebView/components/Fields/TextField.tsx index 5a1ea116..3e4f36d3 100644 --- a/src/panelWebView/components/Fields/TextField.tsx +++ b/src/panelWebView/components/Fields/TextField.tsx @@ -5,12 +5,13 @@ import { VsLabel } from '../VscodeComponents'; export interface ITextFieldProps { label: string; value: string | null; + singleLine: boolean | undefined; limit: number | undefined; rows?: number; onChange: (txtValue: string) => void; } -export const TextField: React.FunctionComponent = ({limit, label, value, rows, onChange}: React.PropsWithChildren) => { +export const TextField: React.FunctionComponent = ({singleLine, limit, label, value, rows, onChange}: React.PropsWithChildren) => { const [ text, setText ] = React.useState(value); const onTextChange = (txtValue: string) => { @@ -37,13 +38,28 @@ export const TextField: React.FunctionComponent = ({limit, labe -