## 1.127.0

This commit is contained in:
2025-12-04 19:41:59 -07:00
parent 34a75fee94
commit b7dcafcef3
5 changed files with 74 additions and 25 deletions

View File

@ -278,3 +278,9 @@ None
- chore: update dependencies and vscode engine version
- file-folder-helper-exe net10.0
## 1.127.0 1764901356737 = 639004981567370000 = 2025-6.Fall = Thu Dec 04 2025 19:22:36 GMT-0700 (Mountain Standard Time)
-----------------------------------------------------------------------------------------------------------
- chart.js support from https://github.com/FlomoN/chartjs-markdown-preview.git

View File

@ -0,0 +1,41 @@
function contentLoaded() {
var chartElements = document.getElementsByClassName("chartjs");
var changes = [];
for (let index = 0; index < chartElements.length; index++) {
var element = chartElements.item(index);
var source = element.textContent;
changes.push({
placeholder: element.parentElement.parentElement,
chart: element,
source
});
}
for (let index = 0; index < changes.length; index++) {
const element = changes[index];
element.placeholder.outerHTML = element.chart.outerHTML;
}
var newchartElements = document.getElementsByClassName("chartjs");
for (let index = 0; index < newchartElements.length; index++) {
var element = newchartElements.item(index);
var source = element.textContent.replace(/(['"])?([a-zA-Z0-9_]+)(['"])?:/g, '"$2": ');
new Chart(element.getContext("2d"), JSON.parse(source.trim()));
}
}
window.addEventListener(
"load",
function () {
contentLoaded();
},
false
);

View File

@ -0,0 +1,3 @@
canvas.chartjs{
margin: 1rem;
}

View File

@ -295,6 +295,14 @@
"title": "Cost of Delay Helper Configuration",
"type": "object"
},
"markdown.markdownItPlugins": true,
"markdown.previewScripts": [
"./node_modules/chart.js/dist/Chart.min.js",
"./media/charts-render.js"
],
"markdown.previewStyles": [
"./media/charts.css"
],
"views": {
"view-command-palette-webview-view-provider-view": [
{
@ -318,6 +326,8 @@
},
"dependencies": {
"@vscode/vsce": "^3.7.0",
"chart.js": "^4.5.1",
"dev": "^0.1.3",
"polka": "^0.5.2"
},
"description": "Cost of Delay Helper",
@ -374,5 +384,5 @@
"watch": "concurrently \"rollup -c -w\" \"webpack --watch --config ./build/node-extension.webpack.config.js\"",
"webpack": "webpack --config ./build/node-extension.webpack.config.js"
},
"version": "1.125.0"
"version": "1.127.0"
}

View File

@ -45,30 +45,6 @@ export async function activate(extensionContext: vscode.ExtensionContext) {
}),
);
function getWebviewView(title: string) {
const column = vscode.window.activeTextEditor
? vscode.window.activeTextEditor.viewColumn
: undefined;
// Otherwise, create a new panel.
const webviewView = vscode.window.createWebviewPanel(
"web-view-panel",
title,
column || vscode.ViewColumn.One,
{
// Enable javascript in the webview
enableScripts: true,
// And restrict the webview to only loading content from our extension's `media` directory.
localResourceRoots: [
vscode.Uri.joinPath(extensionContext.extensionUri, "media"),
vscode.Uri.joinPath(extensionContext.extensionUri, "out/compiled"),
],
}
);
return webviewView;
}
async function replaceResultsWithPositions(
editor: vscode.TextEditor,
positionsAndExpressions: [vscode.Position, string][],
@ -198,6 +174,19 @@ export async function activate(extensionContext: vscode.ExtensionContext) {
];
commands.forEach(command => extensionContext.subscriptions.push(command));
return {
extendMarkdownIt(md: any) {
const highlight = md.options.highlight;
md.options.highlight = (code: any, lang: any) => {
if (lang && lang.match(/\bchart\b/i)) {
return `<canvas class="chartjs">${code.trim()}</canvas>`;
}
return highlight(code, lang);
};
return md;
}
};
}
// This method is called when your extension is deactivated