site
Version:
Site Engine is the world's first all-in-one engine to build a modern web site, game, or blog. No HTML or CSS knowledge required.
1 lines • 10.8 kB
JavaScript
;var e=require("./shared.manifest"),t=c(require("child_process")),n=c(require("fs")),i=c(require("path")),r=c(require("zlib")),a=c(require("rimraf")),u=(c(require("resolve")),c(require("../package.json"))),s=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(require("./shared.static"));function c(e){return e&&e.__esModule?e:{default:e}}var l,o,d,f,m,p,g,y,b,h,x,S,j,v,F=function(e){return null!=e},w=function(e,t,n,i){return e(t)[n](t,...i)};l=require.resolve("futurescript/bin/fus"),o=require.resolve("babel-cli/bin/babel"),d=require.resolve("js-bundler/bin/bundle"),f=require.resolve("terser/bin/uglifyjs"),m=function(e){return(()=>"string"==typeof e?(()=>e.replace(new RegExp("\\\\","g"),"/"))():(()=>e)())()},p=function(e){return(()=>n.default.existsSync(e)?void 0:(()=>n.default.mkdirSync(e))())()},g=function(e,t){return(()=>n.default.writeFileSync(t,n.default.readFileSync(i.default.join(S,e))))()},y=function(e,t){return(()=>n.default.writeFileSync(t,n.default.readFileSync(e)))()},b=function(e,t){return(r=function(a){return u=i.default.join(e,a),s=i.default.join(t,a),p(s),n.default.readdirSync(u).forEach(function(e){return t=i.default.join(u,e),(c=n.default.statSync(t)).isFile()?(()=>(l=i.default.join(s,e),y(t,l)))():(()=>c.isDirectory()?(()=>r(i.default.join(a,e)))():void 0)();var t,c,l});var u,s})(".");var r},h=function(){var e;return e=function(t){return(()=>n.default.readdirSync(t).forEach(function(r){return a=i.default.join(t,r),(u=n.default.statSync(a)).isFile()&&a.includes("-705357537593286848.")?(()=>n.default.unlinkSync(a))():(()=>u.isDirectory()?(()=>e(a))():void 0)();var a,u}))()},(()=>{try{return(()=>(e("public"),a.default.sync("target"),a.default.sync("test-target")))()}catch(e){}})()},x=function(a){return(()=>{try{(()=>(0,e.assert)("site"!==JSON.parse(n.default.readFileSync("package.json",{encoding:"utf8"})).name))()}catch(t){return(()=>(0,e.fail)("You're not under a package root directory, or the package can't be built."))()}})(),u=["debug","debug-with-minify"].indexOf(a)>=0?"debug":(()=>"release"===a?"release":(()=>(0,e.fail)())())(),F(v.beforeBuild)&&(()=>t.default.execSync(v.beforeBuild,{stdio:["pipe",process.stdout,process.stderr]}))(),h(),p("lib"),p("target"),p("test"),p("test-target"),p("log"),s=[],p("public-text"),n.default.readdirSync("public-text").forEach(function(e){return t=i.default.join("public-text",e),n.default.statSync(t).isFile()&&!e.startsWith(".")&&[".markdown",".md",".txt",".xhtml"].indexOf(i.default.extname(e))>=0?(()=>s.push({filename:e,content:n.default.readFileSync(t,{encoding:"utf8"})}))():void 0;var t}),n.default.writeFileSync("target/client.init-705357537593286848.js",'require("site/target/shared.config-type").set("'+u+'");\nrequire("site/target/client.text").set('+JSON.stringify(s)+');\nglobal.callMain_705357537593286848 = function() {\n require("./client.main");\n\n var client = require("site/client").default;\n\n // This must be placed here so that property change in developer\'s code can be sensed.\n if (client.autoCloseStartup) {\n client.closeStartup();\n }\n\n // This must be placed here so that event handler definitions in developer\'s\n // code can be run first.\n client.onLoad.fire();\n};\n'),t.default.execFileSync(process.execPath,["--experimental-modules","--no-warnings",l,"lc","lib","target"],{encoding:"utf8"}),t.default.execFileSync(process.execPath,[o,"--plugins=transform-es2015-modules-commonjs,syntax-dynamic-import","-d","target","target"],{encoding:"utf8"}),t.default.execFileSync(process.execPath,["--experimental-modules","--no-warnings",l,"lc","test","test-target"],{encoding:"utf8"}),t.default.execFileSync(process.execPath,[o,"--plugins=transform-es2015-modules-commonjs,syntax-dynamic-import","-d","test-target","test-target"],{encoding:"utf8"}),c=t.default.execFileSync(process.execPath,[d,"-n","*/server.*","-i","target/client.init-705357537593286848.js"],{encoding:"utf8",maxBuffer:67108864}),p("public"),p("public/.well-known"),"debug"===a?(()=>n.default.writeFileSync("public/bundle-705357537593286848.js",c))():(()=>["debug-with-minify","release"].indexOf(a)>=0?(()=>(m=t.default.execFileSync(process.execPath,[f,"-c","-m","--toplevel"],{encoding:"utf8",input:c}),n.default.writeFileSync("public/bundle-705357537593286848.js",m)))():(()=>(0,e.fail)())())(),n.default.writeFileSync("target/shared.config-type-705357537593286848.json",'"'+u+'"\n'),(g=function(e){return(()=>n.default.readdirSync(e).forEach(function(t){return a=i.default.join(e,t),(u=n.default.statSync(a)).isFile()&&[".css",".htm",".html",".js",".json",".mjs",".svg",".txt",".xhtml",".xml"].indexOf(i.default.extname(a))>=0&&256<=(s=u.size)&&s<16777216&&(()=>n.default.writeFileSync(a+".compressed-705357537593286848.gz",r.default.gzipSync(n.default.readFileSync(a))))(),u.isDirectory()?(()=>g(a))():void 0;var a,u,s}))()})("public"),F(v.afterBuild)?(()=>t.default.execSync(v.afterBuild,{stdio:["pipe",process.stdout,process.stderr]}))():void 0;var u,s,c,m,g},S=i.default.join(i.default.dirname(module.filename),".."),(j=w(e.dotDot_573300145710716007,process.argv,"clone",[])).splice(0,2),v=n.default.existsSync("bin-settings.json")?(()=>w(e.dotDot_573300145710716007,JSON,"clone",[require(m(i.default.resolve("bin-settings")))]))():{},["--inner-version","inner-version"].indexOf(j[0])>=0?(()=>(function(){return(()=>console.log(u.default.version))()})())():(()=>["--help","help"].indexOf(j[0])>=0?(()=>(function(){return(()=>console.log('See "https://zizisoft.com/site" for details.'))()})())():(()=>"bundle"===j[0]?(()=>(function(){return(()=>process.stdout.write(t.default.execFileSync(process.execPath,w(e.dotDot_573300145710716007,[d,w(e.dotDot_573300145710716007,j,"portion",[1])],"flatten",[]),{encoding:"utf8",maxBuffer:67108864})))()})())():(()=>"clean"===j[0]?(()=>(function(){return(()=>h())()})())():(()=>"build"===j[0]?(()=>(function(){return(()=>((0,e.assert)(["debug","debug-with-minify","release"].indexOf(j[1])>=0,'"build" must be followed by "debug", "debug-with-minify" or "release".'),x(j[1])))()})())():(()=>"debug"===j[0]?(()=>(function(){return(()=>(x("debug"),t.default.execSync("node target/server.main",{stdio:["pipe",process.stdout,process.stderr]})))()})())():(()=>"static"===j[0]?(()=>(function(){var r,u,c,l,o,d,f,g;return r=(()=>{try{return(()=>w(e.dotDot_573300145710716007,JSON,"clone",[require(m(i.default.resolve("target/static")))]))()}catch(e){return{publishTo:{type:"git-branch",value:"master"},homePageInfo:{}}}})(),a.default.sync("temp-705357537593286848"),p("temp-705357537593286848"),p("temp-705357537593286848/backup"),b("public","temp-705357537593286848/static"),u=s.generatePage(r.homePageInfo),n.default.writeFileSync("temp-705357537593286848/static/index.xhtml",u),n.default.readdirSync("public-text").forEach(function(t){return r=i.default.join("public-text",t),n.default.statSync(r).isFile()&&!t.startsWith(".")&&[".markdown",".md",".txt",".xhtml"].indexOf(i.default.extname(t))>=0?(()=>(a=i.default.join("temp-705357537593286848/static",i.default.basename(t,i.default.extname(t))),(0,e.assert)(!n.default.existsSync(a)),p(a),n.default.writeFileSync(i.default.join(a,"index.xhtml"),u)))():void 0;var r,a}),n.default.writeFileSync("temp-705357537593286848/static/.gitignore",".*\n!.gitignore\n\n# OS X\n.DS_Store\n\n# Windows\nThumbs.db\nDesktop.ini\n\n# Linux\n*~\n\n# Node\nnode_modules\n\n*.pem\n*.p12\n\n*.compressed-705357537593286848.gz\n\n/temp-705357537593286848\n"),"git-branch"===r.publishTo.type?(()=>(c={encoding:"utf8"},l={encoding:"utf8",stdio:["pipe",process.stdout,process.stderr]},o={encoding:"utf8",stdio:["pipe","ignore","ignore"]},d=function(t){return(()=>((0,e.assert)(-1!==t.search(new RegExp("^[A-Za-z0-9][A-Za-z0-9\\._\\-]*$"))),(0,e.assert)(-1!==t.search(new RegExp("[A-Za-z0-9]$"))),(0,e.assert)(!t.includes("..")),t))()},f=t.default.execFileSync("git",["symbolic-ref","HEAD"],c).trim().match(new RegExp("refs/heads/(.*)"))[1],g=r.publishTo.value,(0,e.assert)(f!==g),d(f),d(g),(0,e.assert)(""===t.default.execFileSync("git",["status","--porcelain"],c),"Some changes to the current branch are not commited."),(()=>{try{return(()=>(n.default.readdirSync(".").forEach(function(e){return(()=>[".git","temp-705357537593286848","node_modules"].indexOf(e)>=0?void 0:(()=>n.default.renameSync(e,i.default.join("temp-705357537593286848/backup",e)))())()}),(()=>{try{(()=>t.default.execFileSync("git",["branch",g],o))()}catch(e){}})(),t.default.execFileSync("git",["checkout",g],l),n.default.readdirSync(".").forEach(function(e){return(()=>[".git","temp-705357537593286848","node_modules"].indexOf(e)>=0?void 0:(()=>a.default.sync(e))())()}),n.default.readdirSync("temp-705357537593286848/static").forEach(function(e){return(()=>n.default.renameSync(i.default.join("temp-705357537593286848/static",e),e))()}),t.default.execFileSync("git",["add","."],l),(()=>{try{(()=>t.default.execFileSync("git",["commit","-m","publish"],l))()}catch(e){return(()=>console.log("Can't create new commit. Maybe because there's no difference."))()}})(),t.default.execFileSync("git",["checkout",f],l),n.default.readdirSync(".").forEach(function(e){return(()=>[".git","temp-705357537593286848","node_modules"].indexOf(e)>=0?void 0:(()=>a.default.sync(e))())()}),n.default.readdirSync("temp-705357537593286848/backup").forEach(function(e){return(()=>n.default.renameSync(i.default.join("temp-705357537593286848/backup",e),e))()}),a.default.sync("temp-705357537593286848")))()}catch(e){return(()=>(console.error("An error occurred."),t.default.execFileSync("git",["checkout","-f",f],l)))()}})()))():(()=>(0,e.fail)())()})())():(()=>"deploy"===j[0]?(()=>(function(){return(()=>((0,e.assert)(F(v.deploy)),t.default.execSync(v.deploy,{stdio:["pipe",process.stdout,process.stderr]})))()})())():(()=>"demo"===j[0]?(()=>(function(){return(()=>"fus"===j[1]?(()=>(p("lib"),p("test"),p("public"),g("demo-fus/package.json","package.json"),g("demo-fus/lib/client.main.fus","lib/client.main.fus"),g("demo-fus/lib/server.main.fus","lib/server.main.fus"),g("demo-fus/lib/shared.main.fus","lib/shared.main.fus"),g("demo-fus/lib/shared.manifest.fus","lib/shared.manifest.fus"),g("demo-fus/public/traditional.html","public/traditional.html"),g("demo-fus/test/main.fus","test/main.fus")))():(()=>"js"===j[1]?(()=>(p("lib"),p("test"),p("public"),g("demo-js/package.json","package.json"),g("demo-js/lib/client.main.js","lib/client.main.js"),g("demo-js/lib/server.main.js","lib/server.main.js"),g("demo-js/lib/shared.main.js","lib/shared.main.js"),g("demo-js/public/traditional.html","public/traditional.html"),g("demo-js/test/main.js","test/main.js")))():void 0)())()})())():(()=>(console.error("Invalid arguments."),process.exit(1)))())())())())())())())())();