diff --git a/CHANGELOG.md b/CHANGELOG.md
deleted file mode 100644
index c85eab1..0000000
--- a/CHANGELOG.md
+++ /dev/null
@@ -1,26 +0,0 @@
-# CHANGELOG
-## v0.1.2:
-- Added local hosting for html files
-- Created standalone version
-
-## v0.1.3
-- Updated Applovin Demo Upload
-- Changed file selection workflow
-- Added "Regenerate QRs" if in case they don't render
-- Added "Save QR" and "Save All QRs"
-
-## v0.1.5
-- Better file selection for PLEC Uoload
-- Multi file selection
-- Auto detects iteration name (it tries its best)
-
-Standalone .exe
-- Move temp files into user temp folder
-
-## v0.1.6
-- Simplify UI
-- Added beta tools (needs further testing)
- - Playworks Converter
- - Upload UnityAds HTML from Playworks to add injections for the other networks
- - MRAID Checker
- - Based on Official MRAID Document, scans the HTML files if they adhere to the documentation requirements and best practices
\ No newline at end of file
diff --git a/README.md b/README.md
index 6794af3..59c1382 100644
--- a/README.md
+++ b/README.md
@@ -2,29 +2,63 @@
Bundled VS Code extension and standalone tools for playable ad workflows.
-# CHANGELOG
-## v0.1.2:
-- Added local hosting for html files
-- Created standalone version
+# Changelog
-## v0.1.3
-- Updated Applovin Demo Upload
-- Changed file selection workflow
-- Added "Regenerate QRs" if in case they don't render
-- Added "Save QR" and "Save All QRs"
+**v0.1.2**
+```
+Added
+ - Added local hosting for HTML files.
+ - Added the standalone app.
+```
-## v0.1.5
-- Better file selection for PLEC Uoload
-- Multi file selection
-- Auto detects iteration name (it tries its best)
+**v0.1.3**
+```
+Added
+ - Added QR regeneration for AppLovin previews that fail to render.
+ - Added Save QR and Save All QRs actions.
-Standalone .exe
-- Move temp files into user temp folder
+Changed
+ - Updated AppLovin Demo Upload.
+ - Improved the file selection workflow.
+```
-## v0.1.6
-- Simplify UI
-- Added beta tools (needs further testing)
- - Playworks Converter
- - Upload UnityAds HTML from Playworks to add injections for the other networks
- - MRAID Checker
- - Based on Official MRAID Document, scans the HTML files if they adhere to the documentation requirements and best practices
+**v0.1.5**
+```
+Added
+ - Added multi-file selection for PLEC Upload.
+ - Added automatic iteration name detection.
+
+Changed
+ - Improved PLEC Upload file selection.
+ - Moved standalone temporary files into the user temp folder.
+```
+
+**v0.1.6**
+```
+Added
+ - Added beta tools for further testing:
+ - Playworks Converter for converting Playworks UnityAds HTML into other network variants.
+ - MRAID Checker for scanning HTML files against MRAID requirements and best practices.
+
+Changed
+ - Simplified the UI.
+```
+
+**v0.1.7**
+```
+Added
+ - Added standalone drag-and-drop file/folder selection for HTML inputs across supported tools.
+ - Added status throbber/progress updates for batch scans, uploads, sharing, and conversions.
+ - Added streamed standalone progress updates so long-running actions update the status bar before completion.
+
+Changed
+ - MRAID Checker is no longer marked as beta in extension or standalone.
+ - Playworks Converter source selection now matches the other file-selection UIs more closely.
+ - Playworks Converter default output folder now resolves to the input file location's Output folder.
+ - Progress text now follows the format: [throbber] Verb count file.
+
+Fixed
+ - Fixed standalone drag-and-drop handling for multiple files and multiple folders.
+ - Fixed cleanup behavior for temporary dropped files when clearing or removing rows.
+ - Fixed standalone PLEC Upload Open button using an incorrect/mangled URL by switching to the Windows URL protocol handler.
+```
diff --git a/build.ps1 b/build.ps1
index 47594ce..cffe97d 100644
--- a/build.ps1
+++ b/build.ps1
@@ -114,6 +114,7 @@ if ($Standalone) {
$exeOut = Join-Path $distDir $exeName
go build -ldflags="-s -w -H windowsgui -X main.AppVersion=$version" -trimpath -o $exeOut .
if ($LASTEXITCODE -ne 0) { Write-Error "go build failed"; exit 1 }
+ Copy-Item -Path (Join-Path $repoRoot "README.md") -Destination (Join-Path $distDir "README.md") -Force
$summary += [pscustomobject]@{
Artifact = $exeName
diff --git a/dist/README.md b/dist/README.md
new file mode 100644
index 0000000..59c1382
--- /dev/null
+++ b/dist/README.md
@@ -0,0 +1,64 @@
+# HPL Toolbox
+
+Bundled VS Code extension and standalone tools for playable ad workflows.
+
+# Changelog
+
+**v0.1.2**
+```
+Added
+ - Added local hosting for HTML files.
+ - Added the standalone app.
+```
+
+**v0.1.3**
+```
+Added
+ - Added QR regeneration for AppLovin previews that fail to render.
+ - Added Save QR and Save All QRs actions.
+
+Changed
+ - Updated AppLovin Demo Upload.
+ - Improved the file selection workflow.
+```
+
+**v0.1.5**
+```
+Added
+ - Added multi-file selection for PLEC Upload.
+ - Added automatic iteration name detection.
+
+Changed
+ - Improved PLEC Upload file selection.
+ - Moved standalone temporary files into the user temp folder.
+```
+
+**v0.1.6**
+```
+Added
+ - Added beta tools for further testing:
+ - Playworks Converter for converting Playworks UnityAds HTML into other network variants.
+ - MRAID Checker for scanning HTML files against MRAID requirements and best practices.
+
+Changed
+ - Simplified the UI.
+```
+
+**v0.1.7**
+```
+Added
+ - Added standalone drag-and-drop file/folder selection for HTML inputs across supported tools.
+ - Added status throbber/progress updates for batch scans, uploads, sharing, and conversions.
+ - Added streamed standalone progress updates so long-running actions update the status bar before completion.
+
+Changed
+ - MRAID Checker is no longer marked as beta in extension or standalone.
+ - Playworks Converter source selection now matches the other file-selection UIs more closely.
+ - Playworks Converter default output folder now resolves to the input file location's Output folder.
+ - Progress text now follows the format: [throbber] Verb count file.
+
+Fixed
+ - Fixed standalone drag-and-drop handling for multiple files and multiple folders.
+ - Fixed cleanup behavior for temporary dropped files when clearing or removing rows.
+ - Fixed standalone PLEC Upload Open button using an incorrect/mangled URL by switching to the Windows URL protocol handler.
+```
diff --git a/dist/hpl-toolbox-0.1.7.exe b/dist/hpl-toolbox-0.1.7.exe
index e504fe1..7268b18 100644
Binary files a/dist/hpl-toolbox-0.1.7.exe and b/dist/hpl-toolbox-0.1.7.exe differ
diff --git a/dist/hpl-toolbox-0.1.7.vsix b/dist/hpl-toolbox-0.1.7.vsix
index 1c180ef..d6a6cfa 100644
Binary files a/dist/hpl-toolbox-0.1.7.vsix and b/dist/hpl-toolbox-0.1.7.vsix differ
diff --git a/package.json b/package.json
index 8e867ff..51498f2 100644
--- a/package.json
+++ b/package.json
@@ -123,8 +123,7 @@
]
},
"scripts": {
- "sync-readme": "node scripts/sync-readme.js",
- "compile": "npm run sync-readme && tsc -p ./",
+ "compile": "tsc -p ./",
"watch": "tsc -watch -p ./",
"vscode:prepublish": "npm run compile"
},
@@ -134,4 +133,4 @@
"playwright": "^1.60.0",
"typescript": "^5.4.0"
}
-}
\ No newline at end of file
+}
diff --git a/scripts/sync-readme.js b/scripts/sync-readme.js
deleted file mode 100644
index 57462bd..0000000
--- a/scripts/sync-readme.js
+++ /dev/null
@@ -1,20 +0,0 @@
-const fs = require('fs');
-const path = require('path');
-
-const root = path.resolve(__dirname, '..');
-const changelogPath = path.join(root, 'CHANGELOG.md');
-const readmePath = path.join(root, 'README.md');
-
-let changelog = '# CHANGELOG\n\nNo changelog entries yet.';
-if (fs.existsSync(changelogPath)) {
- changelog = fs.readFileSync(changelogPath, 'utf8').trim();
-}
-
-const readme = `# HPL Toolbox
-
-Bundled VS Code extension and standalone tools for playable ad workflows.
-
-${changelog}
-`;
-
-fs.writeFileSync(readmePath, readme.replace(/\r?\n/g, '\n'), 'utf8');
diff --git a/src/changelogView.ts b/src/changelogView.ts
index ea76109..4d461f0 100644
--- a/src/changelogView.ts
+++ b/src/changelogView.ts
@@ -9,10 +9,10 @@ export function openChangelog(context: vscode.ExtensionContext) {
vscode.ViewColumn.One,
{ enableScripts: false }
);
- const changelogPath = path.join(context.extensionPath, 'CHANGELOG.md');
- let markdown = '# Changelog\n\nCHANGELOG.md was not found.';
+ const readmePath = path.join(context.extensionPath, 'README.md');
+ let markdown = '# Changelog\n\nREADME.md was not found.';
try {
- markdown = fs.readFileSync(changelogPath, 'utf8');
+ markdown = fs.readFileSync(readmePath, 'utf8');
} catch {
// Keep the fallback text readable in packaged or development installs.
}
diff --git a/standalone/changelog.go b/standalone/changelog.go
index 9c55fdd..02ded0a 100644
--- a/standalone/changelog.go
+++ b/standalone/changelog.go
@@ -13,7 +13,7 @@ func ChangelogPage(w http.ResponseWriter, r *http.Request) {
body := `