u2a 1.0.0 → 2.0.0
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/package.json +1 -1
- package/src/commands/create.js +69 -5
package/package.json
CHANGED
package/src/commands/create.js
CHANGED
|
@@ -194,24 +194,75 @@ function generateMainJs(domain, url, iconPath) {
|
|
|
194
194
|
return `
|
|
195
195
|
const { app, BrowserWindow, Menu, shell } = require('electron');
|
|
196
196
|
const path = require('path');
|
|
197
|
+
const fs = require('fs');
|
|
198
|
+
|
|
199
|
+
const APP_DOMAIN = "${domain}";
|
|
200
|
+
const APP_URL = "${url}";
|
|
201
|
+
const APP_ICON_PATH = "${iconPath.replace(/\\/g, '\\\\')}";
|
|
197
202
|
|
|
198
203
|
let mainWindow;
|
|
199
204
|
|
|
205
|
+
function logAppInfo() {
|
|
206
|
+
const packageJsonPath = path.join(__dirname, 'package.json');
|
|
207
|
+
let packageInfo = {};
|
|
208
|
+
|
|
209
|
+
try {
|
|
210
|
+
const packageJsonContent = fs.readFileSync(packageJsonPath, 'utf-8');
|
|
211
|
+
packageInfo = JSON.parse(packageJsonContent);
|
|
212
|
+
} catch (error) {
|
|
213
|
+
console.error('Error reading package.json:', error.message);
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
console.log('\\n--------------------------------');
|
|
217
|
+
console.log(' APPLICATION INFORMATION');
|
|
218
|
+
console.log('--------------------------------');
|
|
219
|
+
console.log(\`Application: \${APP_DOMAIN}\`);
|
|
220
|
+
console.log(\`URL: \${APP_URL}\`);
|
|
221
|
+
console.log(\`Started at: \${new Date().toLocaleString()}\`);
|
|
222
|
+
console.log(\`App directory: \${__dirname}\`);
|
|
223
|
+
console.log(\`Icon path: \${APP_ICON_PATH}\`);
|
|
224
|
+
|
|
225
|
+
console.log('\\n PACKAGE INFO:');
|
|
226
|
+
console.log(\` - Name: \${packageInfo.name || 'N/A'}\`);
|
|
227
|
+
console.log(\` - Version: \${packageInfo.version || 'N/A'}\`);
|
|
228
|
+
console.log(\` - Description: \${packageInfo.description || 'N/A'}\`);
|
|
229
|
+
console.log(\` - Electron version: \${packageInfo.dependencies?.electron || 'N/A'}\`);
|
|
230
|
+
|
|
231
|
+
if (packageInfo.build) {
|
|
232
|
+
console.log('\\n BUILD CONFIG:');
|
|
233
|
+
console.log(\` - App ID: \${packageInfo.build.appId || 'N/A'}\`);
|
|
234
|
+
console.log(\` - Product Name: \${packageInfo.build.productName || 'N/A'}\`);
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
console.log('--------------------------------\\n');
|
|
238
|
+
}
|
|
239
|
+
|
|
200
240
|
function createWindow() {
|
|
201
|
-
|
|
241
|
+
logAppInfo();
|
|
242
|
+
|
|
243
|
+
app.setAppUserModelId(APP_DOMAIN);
|
|
202
244
|
|
|
203
245
|
mainWindow = new BrowserWindow({
|
|
204
246
|
width: 1200,
|
|
205
247
|
height: 800,
|
|
206
|
-
title:
|
|
207
|
-
icon:
|
|
248
|
+
title: APP_DOMAIN,
|
|
249
|
+
icon: APP_ICON_PATH,
|
|
208
250
|
webPreferences: {
|
|
209
251
|
nodeIntegration: false,
|
|
210
252
|
contextIsolation: true
|
|
211
253
|
}
|
|
212
254
|
});
|
|
213
255
|
|
|
214
|
-
mainWindow.loadURL(
|
|
256
|
+
mainWindow.loadURL(APP_URL);
|
|
257
|
+
|
|
258
|
+
mainWindow.webContents.on('context-menu', (e, params) => {
|
|
259
|
+
e.preventDefault();
|
|
260
|
+
mainWindow.webContents.executeJavaScript(\`
|
|
261
|
+
window.addEventListener('contextmenu', (e) => {
|
|
262
|
+
e.stopPropagation();
|
|
263
|
+
}, true);
|
|
264
|
+
\`);
|
|
265
|
+
});
|
|
215
266
|
|
|
216
267
|
mainWindow.webContents.on('new-window', (event, url) => {
|
|
217
268
|
event.preventDefault();
|
|
@@ -243,10 +294,23 @@ app.on('activate', () => {
|
|
|
243
294
|
});
|
|
244
295
|
`;
|
|
245
296
|
}
|
|
297
|
+
|
|
298
|
+
|
|
246
299
|
function generatePackageJson(domain, iconPath) {
|
|
300
|
+
const u2aPackagePath = path.resolve(__dirname, '../../package.json');
|
|
301
|
+
|
|
302
|
+
let u2aVersion = '1.0.0';
|
|
303
|
+
try {
|
|
304
|
+
const u2aPackageContent = fs.readFileSync(u2aPackagePath, 'utf8');
|
|
305
|
+
const u2aPackage = JSON.parse(u2aPackageContent);
|
|
306
|
+
u2aVersion = u2aPackage.version || u2aVersion;
|
|
307
|
+
} catch (error) {
|
|
308
|
+
logger.error('Error while fetching u2a package.json', error)
|
|
309
|
+
}
|
|
310
|
+
|
|
247
311
|
return {
|
|
248
312
|
name: `u2a-${domain}`,
|
|
249
|
-
version:
|
|
313
|
+
version: u2aVersion,
|
|
250
314
|
description: `Web app for ${domain}`,
|
|
251
315
|
main: 'main.js',
|
|
252
316
|
scripts: {
|