@studioindia/designx 1.2.0 → 1.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/bin/designx.js +15 -0
- package/package.json +1 -1
- package/server.cjs +18 -9
package/bin/designx.js
CHANGED
|
@@ -144,6 +144,21 @@ setTimeout(() => {
|
|
|
144
144
|
})
|
|
145
145
|
}, 3000) // wait 3 s to not slow perceived startup
|
|
146
146
|
|
|
147
|
+
// Re-check every 30 min so banner appears for long-running sessions
|
|
148
|
+
// (covers the case where a new version is published after app startup)
|
|
149
|
+
setInterval(() => {
|
|
150
|
+
exec('npm view @studioindia/designx version --json 2>/dev/null', { timeout: 10000 }, (err, stdout) => {
|
|
151
|
+
if (err || !stdout) return
|
|
152
|
+
try {
|
|
153
|
+
const latest = JSON.parse(stdout.trim()).replace(/^"|"$/g, '')
|
|
154
|
+
if (latest && latest !== version && isNewer(latest, version)) {
|
|
155
|
+
writeFileSync(UPDATE_FLAG, JSON.stringify({ latest, current: version }), 'utf8')
|
|
156
|
+
console.log(` [designx] Update available: v${version} → v${latest} (Relaunch to update)`)
|
|
157
|
+
}
|
|
158
|
+
} catch { /* malformed response */ }
|
|
159
|
+
})
|
|
160
|
+
}, 30 * 60 * 1000)
|
|
161
|
+
|
|
147
162
|
function isNewer(a, b) {
|
|
148
163
|
const pa = a.split('.').map(Number)
|
|
149
164
|
const pb = b.split('.').map(Number)
|
package/package.json
CHANGED
package/server.cjs
CHANGED
|
@@ -42674,10 +42674,10 @@ var require_buffer_list = __commonJS({
|
|
|
42674
42674
|
}
|
|
42675
42675
|
return (hint === "string" ? String : Number)(input);
|
|
42676
42676
|
}
|
|
42677
|
-
var
|
|
42678
|
-
var Buffer2 =
|
|
42679
|
-
var
|
|
42680
|
-
var inspect =
|
|
42677
|
+
var _require2 = require("buffer");
|
|
42678
|
+
var Buffer2 = _require2.Buffer;
|
|
42679
|
+
var _require22 = require("util");
|
|
42680
|
+
var inspect = _require22.inspect;
|
|
42681
42681
|
var custom = inspect && inspect.custom || "inspect";
|
|
42682
42682
|
function copyBuffer(src, target, offset) {
|
|
42683
42683
|
Buffer2.prototype.copy.call(src, target, offset);
|
|
@@ -43098,8 +43098,8 @@ var require_stream_writable = __commonJS({
|
|
|
43098
43098
|
return Buffer2.isBuffer(obj) || obj instanceof OurUint8Array;
|
|
43099
43099
|
}
|
|
43100
43100
|
var destroyImpl = require_destroy();
|
|
43101
|
-
var
|
|
43102
|
-
var getHighWaterMark =
|
|
43101
|
+
var _require2 = require_state();
|
|
43102
|
+
var getHighWaterMark = _require2.getHighWaterMark;
|
|
43103
43103
|
var _require$codes = require_errors2().codes;
|
|
43104
43104
|
var ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE;
|
|
43105
43105
|
var ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED;
|
|
@@ -44352,8 +44352,8 @@ var require_stream_readable = __commonJS({
|
|
|
44352
44352
|
}
|
|
44353
44353
|
var BufferList = require_buffer_list();
|
|
44354
44354
|
var destroyImpl = require_destroy();
|
|
44355
|
-
var
|
|
44356
|
-
var getHighWaterMark =
|
|
44355
|
+
var _require2 = require_state();
|
|
44356
|
+
var getHighWaterMark = _require2.getHighWaterMark;
|
|
44357
44357
|
var _require$codes = require_errors2().codes;
|
|
44358
44358
|
var ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE;
|
|
44359
44359
|
var ERR_STREAM_PUSH_AFTER_EOF = _require$codes.ERR_STREAM_PUSH_AFTER_EOF;
|
|
@@ -46117,6 +46117,7 @@ var import_node_os = require("node:os");
|
|
|
46117
46117
|
var import_node_crypto = require("node:crypto");
|
|
46118
46118
|
var import_node_url = require("node:url");
|
|
46119
46119
|
var import_node_child_process = require("node:child_process");
|
|
46120
|
+
var import_node_module = require("node:module");
|
|
46120
46121
|
|
|
46121
46122
|
// src/lib/copilot/headers.ts
|
|
46122
46123
|
var import_meta = {};
|
|
@@ -46213,6 +46214,14 @@ var __filename = (() => {
|
|
|
46213
46214
|
return process.argv[1] ?? "";
|
|
46214
46215
|
})();
|
|
46215
46216
|
var __dirname = import_node_path.default.dirname(__filename);
|
|
46217
|
+
var _require = (0, import_node_module.createRequire)(import_meta2.url ?? `file://${__filename}`);
|
|
46218
|
+
var PKG_VERSION = (() => {
|
|
46219
|
+
try {
|
|
46220
|
+
return _require("../package.json").version;
|
|
46221
|
+
} catch {
|
|
46222
|
+
return "unknown";
|
|
46223
|
+
}
|
|
46224
|
+
})();
|
|
46216
46225
|
var app = (0, import_express.default)();
|
|
46217
46226
|
var IS_PROD = process.env.NODE_ENV === "production";
|
|
46218
46227
|
var PORT = parseInt(process.env.PORT ?? "3001", 10);
|
|
@@ -47467,7 +47476,7 @@ function writeJson(filePath, data) {
|
|
|
47467
47476
|
}
|
|
47468
47477
|
app.get("/api/config", (_req, res) => {
|
|
47469
47478
|
res.json({
|
|
47470
|
-
version:
|
|
47479
|
+
version: PKG_VERSION,
|
|
47471
47480
|
port: PORT,
|
|
47472
47481
|
dataDir: DESIGNX_DATA_DIR,
|
|
47473
47482
|
isProd: IS_PROD
|