aionflare-connect 0.2.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/core.mjs +1 -1
- package/lib/folders.mjs +9 -3
- package/lib/server.mjs +5 -1
- package/package.json +1 -1
package/lib/core.mjs
CHANGED
|
@@ -5,7 +5,7 @@ import { createHash, randomBytes, timingSafeEqual } from 'node:crypto';
|
|
|
5
5
|
import { lstat, mkdir, readdir, readFile, realpath, writeFile } from 'node:fs/promises';
|
|
6
6
|
import { dirname, join, relative, resolve, sep } from 'node:path';
|
|
7
7
|
|
|
8
|
-
export const version = '0.2.
|
|
8
|
+
export const version = '0.2.1';
|
|
9
9
|
// The messages the Workspace and the helper exchange; raised when they change incompatibly.
|
|
10
10
|
export const protocol = 1;
|
|
11
11
|
export const defaultPort = 47613;
|
package/lib/folders.mjs
CHANGED
|
@@ -48,13 +48,19 @@ export async function pickFolder(title) {
|
|
|
48
48
|
'-NoProfile',
|
|
49
49
|
'-STA',
|
|
50
50
|
'-Command',
|
|
51
|
+
// Owner live check (2026-11-07): the window opened behind the browser, unseen. It now has a
|
|
52
|
+
// shown, always-on-top owner (invisible), brought to the front; and no property that only
|
|
53
|
+
// newer .NET has (Windows PowerShell 5.1 runs .NET Framework 4).
|
|
51
54
|
'Add-Type -AssemblyName System.Windows.Forms;' +
|
|
52
55
|
'$d = New-Object System.Windows.Forms.FolderBrowserDialog;' +
|
|
53
56
|
'$d.Description = $env:AIONFLARE_DIALOG_TITLE;' +
|
|
54
|
-
'$d.UseDescriptionForTitle = $true;' +
|
|
55
57
|
'$d.ShowNewFolderButton = $true;' +
|
|
56
|
-
'$top = New-Object System.Windows.Forms.Form
|
|
57
|
-
|
|
58
|
+
'$top = New-Object System.Windows.Forms.Form;' +
|
|
59
|
+
'$top.TopMost = $true; $top.ShowInTaskbar = $false; $top.Opacity = 0;' +
|
|
60
|
+
"$top.StartPosition = 'CenterScreen'; $top.Size = New-Object System.Drawing.Size(1, 1);" +
|
|
61
|
+
'$top.Show(); $top.Activate();' +
|
|
62
|
+
'$r = $d.ShowDialog($top); $top.Close();' +
|
|
63
|
+
"if ($r -eq 'OK') { [Console]::Out.Write($d.SelectedPath) }",
|
|
58
64
|
],
|
|
59
65
|
env,
|
|
60
66
|
);
|
package/lib/server.mjs
CHANGED
|
@@ -234,8 +234,12 @@ export function startServer({ folder: startFolder, port, dev, config, saveConfig
|
|
|
234
234
|
// Owner (2026-11-07): a project's folder, picked in this computer's own folder dialog
|
|
235
235
|
// (an existing one, or a new one named after the project); then the helper works there.
|
|
236
236
|
case 'choose': {
|
|
237
|
+
log('Opening the folder window on this computer (it may be behind the browser)…');
|
|
237
238
|
const picked = await chooseFolder(m.mode === 'create' ? 'create' : 'open', m.name);
|
|
238
|
-
if (!picked)
|
|
239
|
+
if (!picked) {
|
|
240
|
+
log('No folder was chosen.');
|
|
241
|
+
return reply({ cancelled: true });
|
|
242
|
+
}
|
|
239
243
|
config.folders = [...(config.folders ?? []).filter((f) => f !== picked), picked].slice(
|
|
240
244
|
-20,
|
|
241
245
|
);
|