@37chengshan/ompweb 4.0.4 → 4.0.5
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/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +9 -9
- package/.next/build-manifest.json +3 -3
- package/.next/react-loadable-manifest.json +1 -1
- package/.next/required-server-files.js +2 -2
- package/.next/required-server-files.json +2 -2
- package/.next/routes-manifest.json +24 -2
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +1 -1
- package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/api/app-update/route.js +1 -1
- package/.next/server/app/api/files/[...path]/route.js +1 -1
- package/.next/server/app/api/git/diff/route.js +1 -1
- package/.next/server/app/api/git/status/route.js +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +1 -1
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/index.segments/_full.segment.rsc +1 -1
- package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/login.html +1 -1
- package/.next/server/app/login.rsc +1 -1
- package/.next/server/app/login.segments/_full.segment.rsc +1 -1
- package/.next/server/app/login.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
- package/.next/server/app-paths-manifest.json +9 -9
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/next-font-manifest.js +1 -1
- package/.next/server/next-font-manifest.json +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-path-routes-manifest.json +9 -9
- package/.next/standalone/.next/build-manifest.json +3 -3
- package/.next/standalone/.next/react-loadable-manifest.json +1 -1
- package/.next/standalone/.next/required-server-files.json +2 -2
- package/.next/standalone/.next/routes-manifest.json +24 -2
- package/.next/standalone/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/.next/server/app/_not-found.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/api/app-update/route.js +1 -1
- package/.next/standalone/.next/server/app/api/files/[...path]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/git/diff/route.js +1 -1
- package/.next/standalone/.next/server/app/api/git/status/route.js +1 -1
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.html +1 -1
- package/.next/standalone/.next/server/app/login.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app-paths-manifest.json +9 -9
- package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
- package/.next/standalone/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/standalone/.next/server/next-font-manifest.js +1 -1
- package/.next/standalone/.next/server/next-font-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/404.html +1 -1
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/package.json +22 -4
- package/.next/standalone/server.js +1 -1
- package/.next/static/chunks/{1147.a11b66ffeb201d02.js → 1147.cb989e1cb0ba5ad6.js} +1 -1
- package/.next/static/chunks/{webpack-9691f4590ba70cb8.js → webpack-b10306427dc17cac.js} +1 -1
- package/desktop/main.js +17 -0
- package/next.config.ts +40 -23
- package/package.json +22 -4
- /package/.next/static/{r2kW0snAtbTZ8muUOUByQ → db1mVu1uee4ag1NduRcLL}/_buildManifest.js +0 -0
- /package/.next/static/{r2kW0snAtbTZ8muUOUByQ → db1mVu1uee4ag1NduRcLL}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{"use strict";var e,t,a,r,
|
|
1
|
+
(()=>{"use strict";var e,t,a,c,r,d,f,o,n,b={},i={};function l(e){var t=i[e];if(void 0!==t)return t.exports;var a=i[e]={exports:{}},c=!0;try{b[e].call(a.exports,a,a.exports,l),c=!1}finally{c&&delete i[e]}return a.exports}l.m=b,e=[],l.O=(t,a,c,r)=>{if(a){r=r||0;for(var d=e.length;d>0&&e[d-1][2]>r;d--)e[d]=e[d-1];e[d]=[a,c,r];return}for(var f=1/0,d=0;d<e.length;d++){for(var[a,c,r]=e[d],o=!0,n=0;n<a.length;n++)(!1&r||f>=r)&&Object.keys(l.O).every(e=>l.O[e](a[n]))?a.splice(n--,1):(o=!1,r<f&&(f=r));if(o){e.splice(d--,1);var b=c();void 0!==b&&(t=b)}}return t},l.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return l.d(t,{a:t}),t},a=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,l.t=function(e,c){if(1&c&&(e=this(e)),8&c||"object"==typeof e&&e&&(4&c&&e.__esModule||16&c&&"function"==typeof e.then))return e;var r=Object.create(null);l.r(r);var d={};t=t||[null,a({}),a([]),a(a)];for(var f=2&c&&e;"object"==typeof f&&!~t.indexOf(f);f=a(f))Object.getOwnPropertyNames(f).forEach(t=>d[t]=()=>e[t]);return d.default=()=>e,l.d(r,d),r},l.d=(e,t)=>{for(var a in t)l.o(t,a)&&!l.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},l.f={},l.e=e=>Promise.all(Object.keys(l.f).reduce((t,a)=>(l.f[a](e,t),t),[])),l.u=e=>2584===e?"static/chunks/2584-d4cd2d8de76d5e35.js":"static/chunks/"+(({988:"993e5495",1048:"db9d41be",3888:"e868780c",7330:"d3ac728e",8133:"1ba63609",8747:"90542734",8924:"da12927c",9425:"bf2ff291"})[e]||e)+"."+({103:"23142a67b02246a8",268:"ec500965c1761e26",370:"8e8f3cf8eb0e29dd",394:"475e54c848486e3a",398:"ffa02af9062a3950",484:"c74eeb0fca9a9ddf",852:"60444b32fcbeb00c",869:"7152372b662e31af",918:"6a9bbe564e4a2d0f",934:"9006461bd0548660",973:"9efc01efd9d768a5",988:"598a97aa1337298f",1032:"d9a9179233599785",1048:"27ee8fcc7bf00d70",1063:"775c442bdbeef08b",1133:"0f37525b2b215f36",1147:"cb989e1cb0ba5ad6",1327:"09252bb80616cc3a",1708:"c3a1896e4cc9f8d9",1781:"9072b4c9586df549",2081:"47b6e9391094055f",2181:"ba21239d3ac39f81",2201:"08d1cac24fc438ee",2258:"4defa30121ef44a5",2325:"23caf22075e51aa5",2356:"523277bb8c6bf72a",2414:"8b3662a85cd1b14e",2418:"b5d9e177e10a686e",2480:"cf27ca02e5b19761",2539:"c5a4f2fd8e421c70",2619:"9431a3f48da8eef4",2695:"b732ef1965253b3f",2703:"495a65ed14b2f094",2821:"934bcf60fbdc28c6",3251:"408c817adb161919",3308:"8e27b5c43a478f0d",3336:"a76f9485fe7cb762",3596:"9fdb605d40673ac8",3606:"ddd8065b4a3108bd",3716:"72bf4c9d7325debd",3888:"0440c4cbaec74878",3995:"eca0f5bef1fc3ae5",4004:"74b9bcf5478b1663",4202:"8440832386f023c7",4238:"6f102dcbcf2ae339",4405:"7a19458960a1058e",4424:"fd0c93a807a333e1",4559:"2e7ed39ea2757280",4854:"b64a1daa15899219",4866:"d1060b4faf2ae1e2",4970:"8a63b4953b0e4946",5020:"9ac8d0dc8390bb6e",5137:"f163e94c74a94d01",5165:"2681017cd0bd291f",5242:"7b643c6b3394cac1",5361:"afc00ab2626bacbf",5521:"cfdf2cfc6db31407",5526:"ff46471041fdcb79",5658:"aab0a7c617597ba5",5681:"dd0e66b0de16e54b",6121:"eb9023b1cbc78ee2",6161:"4836cd7d031026bf",6195:"8710aa41b2319dff",6202:"f4317cf0a48876f9",6294:"24f510c0c3e3714c",6654:"41440ef667144967",6794:"57bf1aff78682f3a",7256:"e07cf52d87d40252",7268:"2f59c671f26160f3",7330:"7964f816a1ca64e5",7331:"2add3c4e125a2dba",7543:"89f7b805ed0f2901",8114:"8a8fdee4c3b7fd4b",8133:"b2ae90f43319a29e",8200:"a36b9f8c983c6b9e",8747:"ae439f2382f58c51",8863:"fa0320ea586efb3b",8885:"d9308c756376780b",8901:"e117d206a917bda0",8924:"476aa688a637649c",9365:"a3e0e5ac101ccd02",9425:"244c8a7c1c14966a",9522:"c7c6e9c330f9ba6b",9614:"3221013d7f0af27f",9698:"4d09a99b9d99f3e5",9705:"40a82b97f214e28b",9754:"d67dec946fc871d4",9764:"2669775c6e107a01",9793:"4567af813117ad25",9974:"9a0f79beca65e8c4",9981:"678c7bcc42f24571"})[e]+".js",l.miniCssF=e=>"static/css/2f46e0db0d4a3aed.css",l.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),l.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),c={},l.l=(e,t,a,r)=>{if(c[e])return void c[e].push(t);if(void 0!==a)for(var d,f,o=document.getElementsByTagName("script"),n=0;n<o.length;n++){var b=o[n];if(b.getAttribute("src")==e||b.getAttribute("data-webpack")=="_N_E:"+a){d=b;break}}d||(f=!0,(d=document.createElement("script")).charset="utf-8",d.timeout=120,l.nc&&d.setAttribute("nonce",l.nc),d.setAttribute("data-webpack","_N_E:"+a),d.src=l.tu(e)),c[e]=[t];var i=(t,a)=>{d.onerror=d.onload=null,clearTimeout(s);var r=c[e];if(delete c[e],d.parentNode&&d.parentNode.removeChild(d),r&&r.forEach(e=>e(a)),t)return t(a)},s=setTimeout(i.bind(null,void 0,{type:"timeout",target:d}),12e4);d.onerror=i.bind(null,d.onerror),d.onload=i.bind(null,d.onload),f&&document.head.appendChild(d)},l.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.tt=()=>(void 0===r&&(r={createScriptURL:e=>e},"u">typeof trustedTypes&&trustedTypes.createPolicy&&(r=trustedTypes.createPolicy("nextjs#bundler",r))),r),l.tu=e=>l.tt().createScriptURL(e),l.p="/_next/",d={8068:0},l.f.miniCss=(e,t)=>{if(d[e])t.push(d[e]);else 0!==d[e]&&({5846:1})[e]&&t.push(d[e]=new Promise((t,a)=>{var c=l.miniCssF(e),r=l.p+c;if(((e,t)=>{for(var a=document.getElementsByTagName("link"),c=0;c<a.length;c++){var r=a[c],d=r.getAttribute("data-href")||r.getAttribute("href");if("stylesheet"===r.rel&&(d===e||d===t))return r}for(var f=document.getElementsByTagName("style"),c=0;c<f.length;c++){var r=f[c],d=r.getAttribute("data-href");if(d===e||d===t)return r}})(c,r))return t();((e,t,a,c)=>{var r=document.createElement("link");r.rel="stylesheet",r.type="text/css",r.onerror=r.onload=d=>{if(r.onerror=r.onload=null,"load"===d.type)a();else{var f=d&&("load"===d.type?"missing":d.type),o=d&&d.target&&d.target.href||t,n=Error("Loading CSS chunk "+e+" failed.\n("+o+")");n.code="CSS_CHUNK_LOAD_FAILED",n.type=f,n.request=o,r.parentNode.removeChild(r),c(n)}},r.href=t;if("function"==typeof _N_E_STYLE_LOAD){var d=r.href,f=r.onload,o=r.onerror;_N_E_STYLE_LOAD(0===d.indexOf(window.location.origin)?new URL(d).pathname:d).then(function(){f&&f.call(r,{type:"load"})},function(){o&&o.call(r,{})})}else document.head.appendChild(r)})(e,r,t,a)}).then(()=>{d[e]=0},t=>{throw delete d[e],t}))},f={8068:0,2859:0,2160:0,9894:0},l.f.j=(e,t)=>{var a=l.o(f,e)?f[e]:void 0;if(0!==a)if(a)t.push(a[2]);else if(/^(2160|2859|5846|8068|9894)$/.test(e))f[e]=0;else{var c=new Promise((t,c)=>a=f[e]=[t,c]);t.push(a[2]=c);var r=l.p+l.u(e),d=Error();l.l(r,t=>{if(l.o(f,e)&&(0!==(a=f[e])&&(f[e]=void 0),a)){var c=t&&("load"===t.type?"missing":t.type),r=t&&t.target&&t.target.src;d.message="Loading chunk "+e+" failed.\n("+c+": "+r+")",d.name="ChunkLoadError",d.type=c,d.request=r,a[1](d)}},"chunk-"+e,e)}},l.O.j=e=>0===f[e],o=(e,t)=>{var a,c,[r,d,o]=t,n=0;if(r.some(e=>0!==f[e])){for(a in d)l.o(d,a)&&(l.m[a]=d[a]);if(o)var b=o(l)}for(e&&e(t);n<r.length;n++)c=r[n],l.o(f,c)&&f[c]&&f[c][0](),f[c]=0;return l.O(b)},(n=self.webpackChunk_N_E=self.webpackChunk_N_E||[]).forEach(o.bind(null,0)),n.push=o.bind(null,n.push.bind(n)),l.nc=void 0})();
|
package/desktop/main.js
CHANGED
|
@@ -194,8 +194,25 @@ function createWindow() {
|
|
|
194
194
|
});
|
|
195
195
|
mainWindow.webContents.on("console-message", (_e, _lvl, message) => appLog("window console: " + String(message).slice(0, 200)));
|
|
196
196
|
mainWindow.webContents.on("did-finish-load", () => appLog("window loaded: " + mainWindow.webContents.getURL()));
|
|
197
|
+
// Cold-start race: the splash page navigates to APP_URL on its own timer,
|
|
198
|
+
// but on slow machines (first run, Windows Defender scanning the freshly
|
|
199
|
+
// installed standalone) the server may not be listening yet — the app then
|
|
200
|
+
// sits on a blank page until a manual refresh. Retry the navigation a few
|
|
201
|
+
// times until the server answers.
|
|
202
|
+
let splashReloads = 0;
|
|
203
|
+
mainWindow.webContents.on("did-fail-load", (_event, code, desc, url) => {
|
|
204
|
+
appLog(`did-fail-load ${code} ${desc} ${url}`);
|
|
205
|
+
if (!url.startsWith(APP_URL)) return;
|
|
206
|
+
if (splashReloads >= 8) return;
|
|
207
|
+
splashReloads += 1;
|
|
208
|
+
setTimeout(() => {
|
|
209
|
+
if (!mainWindow || mainWindow.isDestroyed()) return;
|
|
210
|
+
if (!quitting) mainWindow.loadURL(APP_URL);
|
|
211
|
+
}, 1200);
|
|
212
|
+
});
|
|
197
213
|
mainWindow.on("closed", () => {
|
|
198
214
|
mainWindow = null;
|
|
215
|
+
splashReloads = 0;
|
|
199
216
|
});
|
|
200
217
|
}
|
|
201
218
|
|
package/next.config.ts
CHANGED
|
@@ -75,34 +75,51 @@ const nextConfig = (phase: string): NextConfig => {
|
|
|
75
75
|
{ key: "Permissions-Policy", value: "camera=(), microphone=(), geolocation=()" },
|
|
76
76
|
{ key: "Content-Security-Policy", value: "default-src 'self'; base-uri 'self'; form-action 'self'; frame-ancestors 'none'; object-src 'none'; img-src 'self' data: blob: https:; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; connect-src 'self' ws: wss:; font-src 'self' data:" },
|
|
77
77
|
];
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
{ key: "Cache-Control", value: "public, max-age=31536000, immutable" },
|
|
91
|
-
],
|
|
92
|
-
},
|
|
93
|
-
{
|
|
94
|
-
source: "/",
|
|
95
|
-
headers: [
|
|
96
|
-
{ key: "Cache-Control", value: "private, no-cache, max-age=0, must-revalidate" },
|
|
97
|
-
],
|
|
98
|
-
},
|
|
78
|
+
// /api/files streams workspace files whose document policy depends on the
|
|
79
|
+
// content type (strict CSP for SVG, the DOCX preview policy, none for
|
|
80
|
+
// media the browser renders natively). Config-level headers overwrite
|
|
81
|
+
// same-key headers set by route handlers, so the global CSP must not
|
|
82
|
+
// match these paths — it would both reopen script execution for SVG
|
|
83
|
+
// documents and block the same-origin <iframe> previews (DOCX/PDF) with
|
|
84
|
+
// frame-ancestors 'none'. The handler-agnostic protections stay here.
|
|
85
|
+
const fileResponseHeaders = [
|
|
86
|
+
{ key: "X-Content-Type-Options", value: "nosniff" },
|
|
87
|
+
{ key: "X-Frame-Options", value: "SAMEORIGIN" },
|
|
88
|
+
{ key: "Referrer-Policy", value: "no-referrer" },
|
|
89
|
+
{ key: "Permissions-Policy", value: "camera=(), microphone=(), geolocation=()" },
|
|
99
90
|
];
|
|
91
|
+
const globalRule = {
|
|
92
|
+
// Everything except /api/files (negative lookahead, same pattern style
|
|
93
|
+
// as the proxy matcher).
|
|
94
|
+
source: "/((?!api/files/).*)",
|
|
95
|
+
headers: securityHeaders,
|
|
96
|
+
};
|
|
97
|
+
const fileRule = {
|
|
98
|
+
source: "/api/files/:path*",
|
|
99
|
+
headers: fileResponseHeaders,
|
|
100
|
+
};
|
|
101
|
+
const rootNoCacheRule = {
|
|
102
|
+
source: "/",
|
|
103
|
+
headers: [
|
|
104
|
+
{ key: "Cache-Control", value: "private, no-cache, max-age=0, must-revalidate" },
|
|
105
|
+
],
|
|
106
|
+
};
|
|
107
|
+
const staticImmutableRule = {
|
|
108
|
+
// Hashed build output never changes, so browsers/proxies may cache it
|
|
109
|
+
// immutably for a year and skip revalidation entirely.
|
|
110
|
+
// NOTE: scoped to /_next/static/ only — broader /_next/ patterns would
|
|
111
|
+
// shadow the HMR WebSocket in development.
|
|
112
|
+
source: "/_next/static/:path*",
|
|
113
|
+
headers: [
|
|
114
|
+
{ key: "Cache-Control", value: "public, max-age=31536000, immutable" },
|
|
115
|
+
],
|
|
116
|
+
};
|
|
100
117
|
|
|
101
118
|
// Dev chunks have stable URLs whose content changes in place; caching
|
|
102
119
|
// them immutably would serve stale module factories after a restart.
|
|
103
|
-
if (isDev) return [
|
|
120
|
+
if (isDev) return [globalRule, fileRule, rootNoCacheRule];
|
|
104
121
|
|
|
105
|
-
return
|
|
122
|
+
return [globalRule, fileRule, staticImmutableRule, rootNoCacheRule];
|
|
106
123
|
},
|
|
107
124
|
env: {
|
|
108
125
|
NEXT_PUBLIC_APP_VERSION: version,
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@37chengshan/ompweb",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.5",
|
|
4
4
|
"description": "Web UI for the oh-my-pi (omp) coding agent",
|
|
5
5
|
"homepage": "https://github.com/kahme247/ompweb#readme",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
|
-
"url": "git+https://github.com/
|
|
8
|
+
"url": "git+https://github.com/37chengshan/ompweb.git"
|
|
9
9
|
},
|
|
10
10
|
"bugs": {
|
|
11
11
|
"url": "https://github.com/kahme247/ompweb/issues"
|
|
@@ -115,6 +115,15 @@
|
|
|
115
115
|
],
|
|
116
116
|
"icon": "public/icon.png"
|
|
117
117
|
},
|
|
118
|
+
"nsis": {
|
|
119
|
+
"oneClick": false,
|
|
120
|
+
"allowToChangeInstallationDirectory": true,
|
|
121
|
+
"perMachine": false,
|
|
122
|
+
"createDesktopShortcut": true,
|
|
123
|
+
"createStartMenuShortcut": true,
|
|
124
|
+
"shortcutName": "OmpWeb",
|
|
125
|
+
"artifactName": "OmpWeb-Setup-${version}.${ext}"
|
|
126
|
+
},
|
|
118
127
|
"linux": {
|
|
119
128
|
"target": [
|
|
120
129
|
"AppImage"
|
|
@@ -147,6 +156,15 @@
|
|
|
147
156
|
"from": "templates/desktop/splash.mp4",
|
|
148
157
|
"to": "splash.mp4"
|
|
149
158
|
}
|
|
159
|
+
],
|
|
160
|
+
"publish": [
|
|
161
|
+
{
|
|
162
|
+
"provider": "github",
|
|
163
|
+
"owner": "37chengshan",
|
|
164
|
+
"repo": "ompweb",
|
|
165
|
+
"releaseType": "release"
|
|
166
|
+
}
|
|
150
167
|
]
|
|
151
|
-
}
|
|
152
|
-
|
|
168
|
+
},
|
|
169
|
+
"author": "37chengshan"
|
|
170
|
+
}
|
|
File without changes
|
|
File without changes
|