Skip to content

Commit

Permalink
perf: update imports
Browse files Browse the repository at this point in the history
  • Loading branch information
oeyoews committed Oct 27, 2024
1 parent 49efc52 commit 5d7c149
Show file tree
Hide file tree
Showing 15 changed files with 49 additions and 68 deletions.
1 change: 1 addition & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
{
"locale": "zh-CN",
"emeraldwalk.runonsave": {
"commands": [
{
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
* publish: https://vscode.github.net.cn/api/working-with-extensions/publishing-extension
* https://code.visualstudio.com/api/extension-guides/webview
* icon: https://code.visualstudio.com/api/references/icons-in-labels
* l10n: https://code.visualstudio.com/api/references/vscode-api#l10n
* l10n: https://code.visualstudio.com/api/references/vscode-api#l10n and https://github.com/microsoft/vscode-extension-samples/tree/main/l10n-sample and https://github.com/microsoft/vscode-l10n/issues/150
-->

## prerequisites
Expand Down
4 changes: 0 additions & 4 deletions l10n/bundle.l10n.json

This file was deleted.

File renamed without changes.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"publisher": "oeyoews",
"name": "usewiki2",
"displayName": "usewiki2",
"version": "2.6.2",
"version": "2.6.3",
"private": true,
"packageManager": "[email protected]",
"description": "",
Expand Down
4 changes: 2 additions & 2 deletions src/commands/openSettings.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import * as vscode from 'vscode';
import { commands } from 'vscode';

export async function cli() {
const searchQuery = '@ext:oeyoews.usewiki2';
vscode.commands.executeCommand('workbench.action.openSettings', searchQuery);
commands.executeCommand('workbench.action.openSettings', searchQuery);
}

export const name = 'usewiki2.opensettings';
4 changes: 2 additions & 2 deletions src/commands/openWikiCmd.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import * as vscode from 'vscode';
import { env, Uri } from 'vscode';
import { getIp, getPort, enableHttps } from '../config';

export function cli() {
const protocal = enableHttps() ? 'https' : 'http';
const url = `${protocal}://${getIp()}:${getPort()}`;

vscode.env.openExternal(vscode.Uri.parse(url));
env.openExternal(Uri.parse(url));
}

export const name = 'usewiki2.openwiki';
22 changes: 0 additions & 22 deletions src/commands/usewikiCmd.ts

This file was deleted.

4 changes: 2 additions & 2 deletions src/commands/wikiInfo.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import * as vscode from 'vscode';
import { window } from 'vscode';
import fetchData from '../featchData';

export async function cli() {
const data = await fetchData();
// 居中弹窗显示详情
vscode.window
window
.showInformationMessage(
`TiddlyWiki5: ${data.tiddlywiki_version}(${data.username})`
)
Expand Down
4 changes: 2 additions & 2 deletions src/config.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import * as vscode from 'vscode';
import { workspace } from 'vscode';

export const config = () => vscode.workspace.getConfiguration('usewiki2');
export const config = () => workspace.getConfiguration('usewiki2');
// export const placeholder = () => config().get('placeholder', '');
export const enableSendSound = () => config().get('enableSendSound', false);

Expand Down
12 changes: 5 additions & 7 deletions src/featchData.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import * as vscode from 'vscode';
import { window, commands } from 'vscode';
import { enableHttps, config, getIp, getPort } from './config';
import { notify } from './notify';

Expand All @@ -23,26 +23,24 @@ export default async function fetchData(): Promise<ITiddlyWikiStatus> {
throw new Error('TiddlyWiki not connected');
}
} catch (error) {
vscode.window
window
.showErrorMessage((error as Error).message, '配置端口')
.then(async (choice) => {
if (choice === '配置端口') {
const port = await vscode.window.showInputBox({
const port = await window.showInputBox({
prompt: '输入端口',
value: getPort().toString(),
});
if (port) {
config().update('port', Number(port), true);
vscode.window
window
.showInformationMessage(
'配置已更新,需要重启插件以应用更改。',
'重启插件'
)
.then((choice) => {
if (choice === '重启插件') {
vscode.commands.executeCommand(
'workbench.action.reloadWindow'
);
commands.executeCommand('workbench.action.reloadWindow');
}
});
}
Expand Down
2 changes: 1 addition & 1 deletion src/generated/meta.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
// Meta info
export const publisher = "oeyoews"
export const name = "usewiki2"
export const version = "2.6.2"
export const version = "2.6.3"
export const displayName = "usewiki2"
export const description = undefined
export const extensionId = `${publisher}.${name}`
Expand Down
9 changes: 4 additions & 5 deletions src/index.ts
Original file line number Diff line number Diff line change
@@ -1,25 +1,24 @@
import * as vscode from 'vscode';
import { l10n } from 'vscode';
import { usewikiViewProvider } from './webviews';

import * as openWiki from './commands/openWikiCmd';
import * as wikiInfo from './commands/wikiInfo';
import * as opensetting from './commands/openSettings';
import { type ExtensionContext, window, commands } from 'vscode';

// import * as usewikiCmd from './commands/usewikiCmd';
// import * as refreshWiki from './commands/refreshWiki';

export async function activate(context: vscode.ExtensionContext) {
export async function activate(context: ExtensionContext) {
const provider = new usewikiViewProvider(context);
context.subscriptions.push(
vscode.window.registerWebviewViewProvider('usewiki2', provider)
window.registerWebviewViewProvider('usewiki2', provider)
);

const cmds = [opensetting, wikiInfo, openWiki];

// 注册命令
cmds.forEach((cmd: { name: string; cli: any }) => {
const disposable = vscode.commands.registerCommand(cmd.name, cmd.cli);
const disposable = commands.registerCommand(cmd.name, cmd.cli);
context.subscriptions.push(disposable);
});
}
36 changes: 23 additions & 13 deletions src/webviews/index.ts
Original file line number Diff line number Diff line change
@@ -1,21 +1,31 @@
import * as vscode from 'vscode';
import sendTiddler from '../sendTiddler';
import * as openWikiCmd from '../commands/openWikiCmd';
import { WebviewMessenger } from '../utils/extensionMessenger';
import { enableSendSound, getLang } from '../config';
import { showLanguagePicker } from './showLangPicker';
import {
Uri,
workspace,
env,
type Webview,
type WebviewView,
type WebviewViewResolveContext,
type CancellationToken,
type ExtensionContext,
type WebviewViewProvider,
} from 'vscode';

export class usewikiViewProvider implements vscode.WebviewViewProvider {
private _view?: vscode.WebviewView;
export class usewikiViewProvider implements WebviewViewProvider {
private _view?: WebviewView;
constructor(
private context: vscode.ExtensionContext,
private context: ExtensionContext,
private _extensionUri = context.extensionUri
) {}

async resolveWebviewView(
webviewView: vscode.WebviewView,
context: vscode.WebviewViewResolveContext,
_token: vscode.CancellationToken
webviewView: WebviewView,
context: WebviewViewResolveContext,
_token: CancellationToken
) {
this._view = webviewView;

Expand All @@ -26,7 +36,7 @@ export class usewikiViewProvider implements vscode.WebviewViewProvider {

webviewView.webview.html = this.getWebviewContent(webviewView.webview);

vscode.workspace.onDidChangeConfiguration((e) => {
workspace.onDidChangeConfiguration((e) => {
if (e.affectsConfiguration('usewiki2.lang')) {
messenger.send('changeLanguage', { text: getLang() });
// 全局刷新, 但是需要webview 主动检查语言配置
Expand All @@ -42,7 +52,7 @@ export class usewikiViewProvider implements vscode.WebviewViewProvider {
});

messenger.on('openLink', (data) => {
vscode.env.openExternal(vscode.Uri.parse(data.link));
env.openExternal(Uri.parse(data.link));
});

messenger.on('openWiki', () => {
Expand All @@ -57,15 +67,15 @@ export class usewikiViewProvider implements vscode.WebviewViewProvider {
});
});
}
private getWebviewContent(webview: vscode.Webview) {
private getWebviewContent(webview: Webview) {
const scriptUri = webview.asWebviewUri(
vscode.Uri.joinPath(this._extensionUri, 'react-dist', 'main.js')
Uri.joinPath(this._extensionUri, 'react-dist', 'main.js')
);
const styleResetUri = webview.asWebviewUri(
vscode.Uri.joinPath(this._extensionUri, 'res', 'reset.css')
Uri.joinPath(this._extensionUri, 'res', 'reset.css')
);
const styleAppUri = webview.asWebviewUri(
vscode.Uri.joinPath(this._extensionUri, 'react-dist', 'main.css')
Uri.joinPath(this._extensionUri, 'react-dist', 'main.css')
);
// const { tiddlywiki_version, username } = this._twdata;
const nonce = getNonce();
Expand Down
11 changes: 5 additions & 6 deletions src/webviews/showLangPicker.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
import * as vscode from 'vscode';
import { config, getLang } from '../config';
import { l10n, window, type QuickPickItem } from 'vscode';

import { WebviewMessenger } from '../utils/extensionMessenger';

export async function showLanguagePicker(messenger: WebviewMessenger) {
const langOptions: vscode.QuickPickItem[] = [
const langOptions: QuickPickItem[] = [
{ label: 'English', description: 'en' },
{ label: '中文', description: 'zhCN' },
];
const t = vscode.l10n.t;

// 存储原始语言设置,用于恢复
const originalLanguage = getLang(); // 自定义函数,假设获取当前语言
Expand All @@ -17,11 +16,11 @@ export async function showLanguagePicker(messenger: WebviewMessenger) {
);

// 创建自定义 QuickPick
const quickPick = vscode.window.createQuickPick();
const quickPick = window.createQuickPick();
quickPick.items = langOptions;
quickPick.title = 'Setup Language';
// quickPick.title = 'Setup Language';
quickPick.title = l10n.t('setup_language');
quickPick.placeholder = 'Select Language';
// quickPick.title = t('setup_language');
// quickPick.placeholder = t('select_language');
quickPick.activeItems = [langOptions[activeItemIndex]];

Expand Down

0 comments on commit 5d7c149

Please sign in to comment.