diff --git a/README.md b/README.md new file mode 100644 index 0000000..484578d --- /dev/null +++ b/README.md @@ -0,0 +1,61 @@ +#### 项目简介 + +#### 常用命令 +```shell + +# 运行项目 +npm run dev + +# 仅运行前端 +npm run dev-frontend + +# 仅运行后端 +npm run dev-electron + + +# 预发布模式(环境变量为:prod),请先移动资源 +npm run start + +# 移动前端静态资源 +npm run rd + +# 移动资源,可配置 +npm run move + +# 代码加密 +npm run encrypt + +# 清除加密的代码 +npm run clean + +# 生成logo +npm run icon + +# 打包 (windows版) +npm run build-w (调整为64位) +npm run build-w-32 (32位) +npm run build-w-64 (64位) +npm run build-w-arm64 (arm64) + +# 打包 (windows 免安装版) +# ee > v2.2.1 +npm run build-wz (调整为64位) +npm run build-wz-32 (32位) +npm run build-wz-64 (64位) +npm run build-wz-arm64 (arm64) + +# 打包 (mac版) +npm run build-m +npm run build-m-arm64 (m1芯片架构) + +# 打包 (linux版) +# ee > v2.2.1 +npm run build-l (默认64位 deb包) +npm run build-l-32 (32位 deb包) +npm run build-l-64 (64位 deb包) +npm run build-l-arm64 (64位 deb包 arm64) +npm run build-l-armv7l (64位 deb包 armv7l) +npm run build-lr-64 (64位 rpm包) +npm run build-lp-64 (64位 pacman包) + +``` \ No newline at end of file diff --git a/build/extraResources/chromeExtension/read.txt b/build/extraResources/chromeExtension/read.txt new file mode 100644 index 0000000..57b4b84 --- /dev/null +++ b/build/extraResources/chromeExtension/read.txt @@ -0,0 +1 @@ +chrome应用商店ctx文件,解压后,放置在此目录中,打包时会将资源加入安装包内。 \ No newline at end of file diff --git a/build/extraResources/dll/myDllDemo.dll b/build/extraResources/dll/myDllDemo.dll new file mode 100644 index 0000000..ffd5446 Binary files /dev/null and b/build/extraResources/dll/myDllDemo.dll differ diff --git a/build/extraResources/read.txt b/build/extraResources/read.txt new file mode 100644 index 0000000..e20ade3 --- /dev/null +++ b/build/extraResources/read.txt @@ -0,0 +1 @@ +建议第三方软件放置在此目录中,打包时会将资源加入安装包内。 \ No newline at end of file diff --git a/build/icons/icon.icns b/build/icons/icon.icns new file mode 100644 index 0000000..aa79460 Binary files /dev/null and b/build/icons/icon.icns differ diff --git a/build/icons/icon.ico b/build/icons/icon.ico new file mode 100644 index 0000000..aefab6a Binary files /dev/null and b/build/icons/icon.ico differ diff --git a/build/icons/icon.png b/build/icons/icon.png new file mode 100644 index 0000000..df48e85 Binary files /dev/null and b/build/icons/icon.png differ diff --git a/build/script/installer.nsh b/build/script/installer.nsh new file mode 100644 index 0000000..e69de29 diff --git a/main.js b/main.js new file mode 100644 index 0000000..98527c4 --- /dev/null +++ b/main.js @@ -0,0 +1,2 @@ +const { ElectronEgg } = require('ee-core'); +new ElectronEgg(); \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..204825b --- /dev/null +++ b/package.json @@ -0,0 +1,63 @@ +{ + "name": "ee", + "version": "3.12.0", + "description": "A fast, desktop software development framework", + "main": "main.js", + "scripts": { + "dev": "ee-bin dev", + "dev-frontend": "ee-bin dev --serve=frontend", + "dev-electron": "ee-bin dev --serve=electron", + "build-frontend": "ee-bin build --cmds=frontend && ee-bin move --flag=frontend_dist", + "start": "ee-bin start", + "rd": "ee-bin move --flag=frontend_dist", + "encrypt": "ee-bin encrypt", + "clean": "ee-bin clean", + "icon": "ee-bin icon", + "reload": "nodemon --config ./electron/config/nodemon.json", + "rebuild": "electron-rebuild", + "re-sqlite": "electron-rebuild -f -w better-sqlite3", + "build-w": "electron-builder --config=./electron/config/builder.json -w=nsis --x64", + "build-w-32": "electron-builder --config=./electron/config/builder.json -w=nsis --ia32", + "build-w-64": "electron-builder --config=./electron/config/builder.json -w=nsis --x64", + "build-w-arm64": "electron-builder --config=./electron/config/builder.json -w=nsis --arm64", + "build-we": "electron-builder --config=./electron/config/builder.json -w=portable --x64", + "build-wz": "electron-builder --config=./electron/config/builder.json -w=7z --x64", + "build-wz-32": "electron-builder --config=./electron/config/builder.json -w=7z --ia32", + "build-wz-64": "electron-builder --config=./electron/config/builder.json -w=7z --x64", + "build-wz-arm64": "electron-builder --config=./electron/config/builder.json -w=7z --arm64", + "build-m": "electron-builder --config=./electron/config/builder.json -m", + "build-m-arm64": "electron-builder --config=./electron/config/builder.json -m --arm64", + "build-l": "electron-builder --config=./electron/config/builder.json -l=deb --x64", + "build-l-32": "electron-builder --config=./electron/config/builder.json -l=deb --ia32", + "build-l-64": "electron-builder --config=./electron/config/builder.json -l=deb --x64", + "build-l-arm64": "electron-builder --config=./electron/config/builder.json -l=deb --arm64", + "build-l-armv7l": "electron-builder --config=./electron/config/builder.json -l=deb --armv7l", + "build-lr-64": "electron-builder --config=./electron/config/builder.json -l=rpm --x64", + "build-lp-64": "electron-builder --config=./electron/config/builder.json -l=pacman --x64", + "test": "set DEBUG=* && electron . --env=local" + }, + "repository": "https://github.com/dromara/electron-egg.git", + "keywords": [ + "Electron", + "electron-egg", + "ElectronEgg" + ], + "author": "哆啦好梦, Inc <530353222@qq.com>", + "license": "Apache", + "devDependencies": { + "@electron/rebuild": "^3.2.13", + "debug": "^4.3.3", + "ee-bin": "1.6.0", + "electron": "^21.4.4", + "electron-builder": "^23.6.0", + "eslint": "^5.13.0", + "eslint-plugin-prettier": "^3.0.1", + "nodemon": "^2.0.16" + }, + "dependencies": { + "dayjs": "^1.10.7", + "ee-core": "2.10.0", + "electron-updater": "^5.3.0", + "lodash": "^4.17.21" + } +} \ No newline at end of file diff --git a/public/dist/assets/Index-630507e4.js b/public/dist/assets/Index-630507e4.js new file mode 100644 index 0000000..66195fb --- /dev/null +++ b/public/dist/assets/Index-630507e4.js @@ -0,0 +1 @@ +import{_ as a,o as t,c as s,a as e}from"./index-94991f0a.js";const o={data:()=>({})},c={id:"hero"},n=[e('
A fast, desktop software development framework
',3)];const d=a(o,[["render",function(a,e,o,d,r,p){return t(),s("section",c,n)}],["__scopeId","data-v-505540b8"]]);export{d as default}; diff --git a/public/dist/assets/Index-812274cb.css b/public/dist/assets/Index-812274cb.css new file mode 100644 index 0000000..eee8430 --- /dev/null +++ b/public/dist/assets/Index-812274cb.css @@ -0,0 +1 @@ +section[data-v-505540b8]{padding:42px 32px}#hero[data-v-505540b8]{padding:150px 32px;text-align:center;height:100%}.tagline[data-v-505540b8]{font-size:52px;line-height:1.25;font-weight:700;letter-spacing:-1.5px;max-width:960px;margin:0 auto}html:not(.dark) .accent[data-v-505540b8],.dark .tagline[data-v-505540b8]{background:-webkit-linear-gradient(315deg,#42d392 25%,#647eff);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.description[data-v-505540b8]{max-width:960px;line-height:1.5;color:var(--vt-c-text-2);transition:color .5s;font-size:22px;margin:24px auto 40px}.actions a[data-v-505540b8]{font-size:16px;display:inline-block;background-color:var(--vt-c-bg-mute);padding:8px 18px;font-weight:500;border-radius:8px;transition:background-color .5s,color .5s;text-decoration:none}.actions .setup[data-v-505540b8]{color:var(--vt-c-text-code);background:-webkit-linear-gradient(315deg,#42d392 25%,#647eff)}.actions .setup[data-v-505540b8]:hover{background-color:var(--vt-c-gray-light-4);transition-duration:.2s} diff --git a/public/dist/assets/index-94991f0a.js b/public/dist/assets/index-94991f0a.js new file mode 100644 index 0000000..f1abab4 --- /dev/null +++ b/public/dist/assets/index-94991f0a.js @@ -0,0 +1,7 @@ +function e(e,t){const n=Object.create(null),r=e.split(",");for(let o=0;of?J(e,s,l,!0,!1,p):F(t,r,o,s,l,i,c,a,p)},z=(e,t,r,o,s,l,i,c,a)=>{let u=0;const f=t.length;let p=e.length-1,d=f-1;for(;u<=p&&u<=d;){const n=e[u],o=t[u]=a?Ir(t[u]):Mr(t[u]);if(!Or(n,o))break;y(n,o,r,null,s,l,i,c,a),u++}for(;u<=p&&u<=d;){const n=e[p],o=t[d]=a?Ir(t[d]):Mr(t[d]);if(!Or(n,o))break;y(n,o,r,null,s,l,i,c,a),p--,d--}if(u>p){if(u<=d){const e=d+1,n=eUo(e,s)))?r.push(s):n.push(s));const i=e.matched[l];i&&(t.matched.find((e=>Uo(e,i)))||o.push(i))}return[n,r,o]}(e,t);n=Js(r.reverse(),"beforeRouteLeave",e,t);for(const s of r)s.leaveGuards.forEach((r=>{n.push(Zs(r,e,t))}));const c=b.bind(null,e,t);return n.push(c),I(n).then((()=>{n=[];for(const r of s.list())n.push(Zs(r,e,t));return n.push(c),I(n)})).then((()=>{n=Js(o,"beforeRouteUpdate",e,t);for(const r of o)r.updateGuards.forEach((r=>{n.push(Zs(r,e,t))}));return n.push(c),I(n)})).then((()=>{n=[];for(const r of i)if(r.beforeEnter)if(Ao(r.beforeEnter))for(const o of r.beforeEnter)n.push(Zs(o,e,t));else n.push(Zs(r.beforeEnter,e,t));return n.push(c),I(n)})).then((()=>(e.matched.forEach((e=>e.enterCallbacks={})),n=Js(i,"beforeRouteEnter",e,t),n.push(c),I(n)))).then((()=>{n=[];for(const r of l.list())n.push(Zs(r,e,t));return n.push(c),I(n)})).catch((e=>cs(e,8)?e:Promise.reject(e)))}function x(e,t,n){i.list().forEach((r=>_((()=>r(e,t,n)))))}function E(e,t,n,r,s){const l=m(e,t);if(l)return l;const i=t===rs,a=Ro?history.state:{};n&&(r||i?o.replace(e.fullPath,jo({scroll:i&&a&&a.scroll},s)):o.push(e.fullPath,s)),c.value=e,F(e,t,n,i),j()}let C;function S(){C||(C=o.listen(((e,t,n)=>{if(!M.listening)return;const r=d(e),s=v(r);if(s)return void y(jo(s,{replace:!0}),r).catch($o);a=r;const l=c.value;var i,u;Ro&&(i=Qo(l.fullPath,n.delta),u=Ko(),Yo.set(i,u)),w(r,l).catch((e=>cs(e,12)?e:cs(e,2)?(y(e.to,r).then((e=>{cs(e,20)&&!n.delta&&n.type===Wo.pop&&o.go(-1,!1)})).catch($o),Promise.reject()):(n.delta&&o.go(-n.delta,!1),R(e,r,l)))).then((e=>{(e=e||E(r,l,!1))&&(n.delta&&!cs(e,8)?o.go(-n.delta,!1):n.type===Wo.pop&&cs(e,20)&&o.go(-1,!1)),x(r,l,e)})).catch($o)})))}let O,k=Ys(),P=Ys();function R(e,t,n){j(e);const r=P.list();return r.length?r.forEach((r=>r(e,t,n))):console.error(e),Promise.reject(e)}function j(e){return O||(O=!e,S(),k.list().forEach((([t,n])=>e?n(e):t())),k.reset()),e}function F(t,n,r,o){const{scrollBehavior:s}=e;if(!Ro||!s)return Promise.resolve();const l=!r&&function(e){const t=Yo.get(e);return Yo.delete(e),t}(Qo(t.fullPath,0))||(o||!r)&&history.state&&history.state.scroll||null;return Ft().then((()=>s(t,n,l))).then((e=>e&&Xo(e))).catch((e=>R(e,t,n)))}const $=e=>o.go(e);let A;const T=new Set,M={currentRoute:c,listening:!0,addRoute:function(e,n){let r,o;return ns(e)?(r=t.getRecordMatcher(e),o=n):o=e,t.addRoute(o,r)},removeRoute:function(e){const n=t.getRecordMatcher(e);n&&t.removeRoute(n)},hasRoute:function(e){return!!t.getRecordMatcher(e)},getRoutes:function(){return t.getRoutes().map((e=>e.record))},resolve:d,options:e,push:g,replace:function(e){return g(jo(h(e),{replace:!0}))},go:$,back:()=>$(-1),forward:()=>$(1),beforeEach:s.add,beforeResolve:l.add,afterEach:i.add,onError:P.add,isReady:function(){return O&&c.value!==rs?Promise.resolve():new Promise(((e,t)=>{k.add([e,t])}))},install(e){e.component("RouterLink",tl),e.component("RouterView",sl),e.config.globalProperties.$router=this,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>mt(c)}),Ro&&!A&&c.value===rs&&(A=!0,g(o.location).catch((e=>{})));const t={};for(const r in rs)Object.defineProperty(t,r,{get:()=>c.value[r],enumerable:!0});e.provide(Ks,this),e.provide(Xs,Je(t)),e.provide(Qs,c);const n=e.unmount;T.add(e),e.unmount=function(){T.delete(e),T.size<1&&(a=rs,C&&C(),C=null,c.value=rs,A=!1,O=!1),n()}}};function I(e){return e.reduce(((e,t)=>e.then((()=>_(t)))),Promise.resolve())}return M}({history:((ul=location.host?ul||location.pathname+location.search:"").includes("#")||(ul+="#"),ts(ul)),routes:cl});var ul;const fl=((...e)=>{const t=(Eo||(Eo=fr(xo))).createApp(...e),{mount:n}=t;return t.mount=e=>{const r=function(e){if(g(e)){return document.querySelector(e)}return e}(e);if(!r)return;const o=t._component;m(o)||o.render||o.template||(o.template=r.innerHTML),r.innerHTML="";const s=n(r,!1,r instanceof SVGElement);return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),s},t})(So);fl.config.productionTip=!1;for(const pl in Po)fl.component(pl,Po[pl]);fl.use(al).mount("#app");export{Co as _,Tr as a,Cr as c,_r as o};
diff --git a/public/dist/assets/index-b7b2ffb7.css b/public/dist/assets/index-b7b2ffb7.css
new file mode 100644
index 0000000..515ba0d
--- /dev/null
+++ b/public/dist/assets/index-b7b2ffb7.css
@@ -0,0 +1 @@
+#app{font-family:Avenir,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-align:center;color:#2c3e50;height:100%}
diff --git a/public/dist/index.html b/public/dist/index.html
new file mode 100644
index 0000000..f66fd07
--- /dev/null
+++ b/public/dist/index.html
@@ -0,0 +1,107 @@
+
+
+
+
+
+
+