{"_id":"swgg","_rev":"38-1a92440e83bb4f82e8e7f8d969fc59d9","name":"swgg","dist-tags":{"latest":"2019.9.14"},"versions":{"2016.11.1":{"package.json":true,"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["api","admin","admin-ui","browser","cms","crud","db","light","lightweight","lite","mongo","mongodb","nedb","standalone","swagger","swagger-ui","web"],"license":"MIT","main":"lib.swgg","name":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"./lib.utility2.sh shRun shReadmeBuild","start":"export PORT=${PORT:-8080} && export npm_config_mode_auto_restart=1 && ./lib.utility2.sh shRun shIstanbulCover test.js","test":"export PORT=$(./lib.utility2.sh shServerPortRandom) && ./lib.utility2.sh test test.js"},"version":"2016.11.1","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2016.11.1","_shasum":"a148fdcbb525af39c7b7b9287ecfa667c668ac43","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"a148fdcbb525af39c7b7b9287ecfa667c668ac43","tarball":"https://registry.npmjs.org/swgg/-/swgg-2016.11.1.tgz","integrity":"sha512-S1RmzT+hUN4Xaizh38HvNxnVmtIYXbWjrpNU29OL8HSFammlx0bdMM7OP+UrnitNvExSWYDs+sMshyoBbyFNcQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB10laTo9zyFDJPrQdaIZpCSsYP5MaKRJ8djIuhF/1VnAiEAx8bDqegQKCT6BNJTX+4BKXt/Nx78X+/t//jvC916jIY="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/swgg-2016.11.1.tgz_1480499193152_0.772432810626924"},"directories":{}},"2016.12.1":{"package.json":true,"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["api","admin","admin-ui","browser","cms","crud","db","light","lightweight","lite","mongo","mongodb","nedb","standalone","swagger","swagger-ui","swgg","web"],"license":"MIT","main":"lib.swgg","name":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"./lib.utility2.sh shRun shReadmeBuild","start":"export PORT=${PORT:-8080} && export npm_config_mode_auto_restart=1 && ./lib.utility2.sh shRun shIstanbulCover test.js","test":"export PORT=$(./lib.utility2.sh shServerPortRandom) && ./lib.utility2.sh test test.js"},"version":"2016.12.1","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2016.12.1","_shasum":"bc7548d56a03f18f8add41d065622cc40e077f2c","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"bc7548d56a03f18f8add41d065622cc40e077f2c","tarball":"https://registry.npmjs.org/swgg/-/swgg-2016.12.1.tgz","integrity":"sha512-BoPM17eAI156JVSrua6ewHzJygT5FP65D7D/qqTwnrJzoMxuiDC0j2W9FX9/vA1gfva9y6CeDrIJzaHaYBr6CA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCKCKM4s+4ySB1/B+AZk0qiIkaeLJnGb6zf6Kx26bIImAIhAJ+aID+myut++zlzQlIvqFqblh8mk2tlx/sRak7IR4Ce"}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/swgg-2016.12.1.tgz_1481429171416_0.5250604241155088"},"directories":{}},"2016.12.25":{"package.json":true,"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["api","admin","admin-ui","browser","cms","crud","db","light","lightweight","lite","mongo","mongodb","nedb","standalone","swagger","swagger-ui","swgg","web"],"license":"MIT","main":"lib.swgg","name":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"./lib.utility2.sh shRun shReadmeBuild","heroku-postbuild":"./lib.utility2.sh shRun shDeployHeroku","start":"export PORT=${PORT:-8080} && export npm_config_mode_auto_restart=1 && ./lib.utility2.sh shRun shIstanbulCover test.js","test":"export PORT=$(./lib.utility2.sh shServerPortRandom) && ./lib.utility2.sh test test.js"},"version":"2016.12.25","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2016.12.25","_shasum":"4bdf5fe7d3352131b21785e795ca53a4125e9258","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"4bdf5fe7d3352131b21785e795ca53a4125e9258","tarball":"https://registry.npmjs.org/swgg/-/swgg-2016.12.25.tgz","integrity":"sha512-2zjz6DHy9lH5AB5iBtUa7fzg2wiDT2jTCycYT178VYeaF9fGTQ4bu4MWA6VrF0fy2+OTK1O9JQWG8e02vZhh+w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB9kFYgCVu+j0pv4jS9qMMRQsPPHrLqxMZV4PnuCUBHDAiEAkndzgbUpLeb4o/BamWtagwsivXiYJmDTx+i3G82CHYA="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/swgg-2016.12.25.tgz_1482726101202_0.8224310225341469"},"directories":{}},"2016.12.30":{"package.json":true,"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["admin","admin-ui","api","cms","crud","dashboard","light","lightweight","lite","login","oai","oauth","open-api","open-id","openapi","openid","standalone","swagger","swagger-ui","swgg"],"license":"MIT","main":"lib.swgg","name":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"./lib.utility2.sh shRun shReadmeBuild","heroku-postbuild":"./lib.utility2.sh shRun shDeployHeroku","start":"export PORT=${PORT:-8080} && export npm_config_mode_auto_restart=1 && ./lib.utility2.sh shRun shIstanbulCover test.js","test":"export PORT=$(./lib.utility2.sh shServerPortRandom) && ./lib.utility2.sh test test.js"},"version":"2016.12.30","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2016.12.30","_shasum":"355e479cadbe014a3c8f3f6a3b362bbb2008d555","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"355e479cadbe014a3c8f3f6a3b362bbb2008d555","tarball":"https://registry.npmjs.org/swgg/-/swgg-2016.12.30.tgz","integrity":"sha512-/AxK6+gZuiDtjMpyg4My/ZzV8W5dEo1Wim5l4QnfotpmG/i0iPcsK+i59W12kMxGk1a7DrFFU/BMwmPdx4aqtQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDrAR4AN6Qd52OlW208igShcNOiKIWn2rKMi/9FkSMFxgIgPT6a4R/b50WIMjG25hpnQyvp35YAeQ0Hf2JXuoENqRM="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/swgg-2016.12.30.tgz_1483185460323_0.09371216222643852"},"directories":{}},"2017.1.12":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["admin","admin-ui","api","cms","crud","dashboard","light","lightweight","lite","login","oai","oauth","open-api","open-id","openapi","openid","standalone","swagger","swagger-ui","swgg"],"license":"MIT","main":"lib.swgg","name":"swgg","nameAlias":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"./lib.utility2.sh shRun shReadmeBuild","heroku-postbuild":"./lib.utility2.sh shRun shDeployHeroku","postinstall":"if [ -f lib.swgg.npm-scripts.sh ]; then ./lib.swgg.npm-scripts.sh postinstall; fi","start":"export PORT=${PORT:-8080} && export npm_config_mode_auto_restart=1 && ./lib.utility2.sh shRun shIstanbulCover test.js","test":"export PORT=$(./lib.utility2.sh shServerPortRandom) && ./lib.utility2.sh test test.js"},"version":"2017.1.12","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.1.12","_shasum":"dcda6180f9ec602ab79919a680beb4b75aa7293a","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"dcda6180f9ec602ab79919a680beb4b75aa7293a","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.1.12.tgz","integrity":"sha512-AviRi+YrnhLI8/NZkM9Z/VHX/OT3rRlPUOPBmqRuALJJikWO94LuXB2v3o+yLQhfYbrre7dlyN+kchYBtDFGrw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDLWTvJEO0ZGYQMvm40BO0EuA2iL4lnibvbIccD7d1hAgIhANbyqpnw7l8m1FWDmrg+qRamhNOFtLrbf2LCCP+ghJAy"}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/swgg-2017.1.12.tgz_1484196157574_0.8411213106010109"},"directories":{}},"2017.2.6":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["admin","admin-ui","api","cms","crud","dashboard","light","lightweight","lite","login","oai","oauth","open-api","open-id","openapi","openid","standalone","swagger","swagger-ui","swgg"],"license":"MIT","main":"lib.swgg","name":"swgg","nameAlias":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shRun shReadmeBuild","heroku-postbuild":"npm install 'kaizhu256/node-utility2#alpha' && utility2 shRun shDeployHeroku","postinstall":"if [ -f lib.swgg.npm-scripts.sh ]; then ./lib.swgg.npm-scripts.sh postinstall; fi","publish-alias":"for ALIAS in swagger-lite; do shNpmPublish swgg $ALIAS; done","start":"export PORT=${PORT:-8080} && export npm_config_mode_auto_restart=1 && utility2 shRun shIstanbulCover test.js","test":"export PORT=$(utility2 shServerPortRandom) && utility2 test test.js"},"version":"2017.2.6","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.2.6","_shasum":"5d77ea60cec9365b5e64707c04f5e6d199b631e8","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.4","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"5d77ea60cec9365b5e64707c04f5e6d199b631e8","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.2.6.tgz","integrity":"sha512-xqgPVlfdLljgM2hSMMS9PHcFMGmkcV561cBATV7OvCD9HBBdJVpcl1ATesvk5qsqFaKKZRX9aRhElwIV6FSfaQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCcSq9cVXk/hL2NhKHzfb+dPgG4KKIgc4kfSFINypof/wIhAImzHLEihX5mzFBvOFWr40QpNmilHy4yuKctMu3YCeYh"}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/swgg-2017.2.6.tgz_1486387344802_0.0800953065045178"},"directories":{}},"2017.2.17":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["admin","admin-ui","api","cms","crud","dashboard","light","lightweight","lite","login","oai","oauth","open-api","open-id","openapi","openid","standalone","swagger","swagger-ui","swgg"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAlias":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shRun shReadmeBuild","heroku-postbuild":"npm install 'kaizhu256/node-utility2#alpha' && utility2 shRun shDeployHeroku","postinstall":"if [ -f lib.swgg.npm-scripts.sh ]; then ./lib.swgg.npm-scripts.sh postinstall; fi","publish-alias":"for ALIAS in swagger-lite; do shNpmPublish swgg $ALIAS; done","start":"export PORT=${PORT:-8080} && export npm_config_mode_auto_restart=1 && utility2 shRun shIstanbulCover test.js","test":"export PORT=$(utility2 shServerPortRandom) && utility2 test test.js"},"version":"2017.2.17","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.2.17","_shasum":"16242dfaa4a40e04d45f23efef2cf6227329a10d","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.4","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"16242dfaa4a40e04d45f23efef2cf6227329a10d","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.2.17.tgz","integrity":"sha512-nv6WWqiON7U6zEOpTfJR3ROVwT7zjH3ElVbCBNscr7cLE3EoIF5Tpr7AwvuE5r8Wt4uyYohvjBCn6KUdlOudMg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD/3mut7LTKONUZdlGLyAXE9DqQTxt2mVw+de9NfFIr4wIhAJ4vK4O/QUZJ2MMCK81VtewK+VDn2VDm367y5Sr2vEpO"}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/swgg-2017.2.17.tgz_1487434564586_0.1741007580421865"},"directories":{}},"2017.2.20":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["admin","admin-ui","api","cms","crud","dashboard","light","lightweight","lite","login","oai","oauth","open-api","open-id","openapi","openid","standalone","swagger","swagger-ui","swgg"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAlias":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shRun shReadmeBuild","env":"env","heroku-postbuild":"npm install 'kaizhu256/node-utility2#alpha' && utility2 shRun shDeployHeroku","postinstall":"if [ -f lib.swgg.npm-scripts.sh ]; then ./lib.swgg.npm-scripts.sh postinstall; fi","publish-alias":"VERSION=$(npm info $npm_package_name version); for ALIAS in oai-client oai-server swagger-client-lite swagger-lite swagger-server-lite; do utility2 shRun shNpmPublish $ALIAS $VERSION; utility2 shRun shNpmTestPublished $ALIAS || exit $?; done","start":"export PORT=${PORT:-8080} && export npm_config_mode_auto_restart=1 && utility2 shRun shIstanbulCover test.js","test":"export PORT=$(utility2 shServerPortRandom) && utility2 test test.js"},"version":"2017.2.20","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.2.20","_shasum":"937ec86c181df6df831d0f2695a68a2522479c09","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.4","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"937ec86c181df6df831d0f2695a68a2522479c09","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.2.20.tgz","integrity":"sha512-t7YeSO2MMZ8VyFF7Yn4B/BlqVjCJDw5UhcxSjalv+sF3BtmOedUrVloxrUxGajZ8oRZ4VVz6wPBOdBxd3uPh0w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCHIbmXxY2AqIeeeTAbUB9pVK3HWXAjkItS4x8UnnMjrAIhAOJe+OY3v1b+rPXfUVZPSW5SzPBS1fCPvCKsl0rzO1o4"}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/swgg-2017.2.20.tgz_1487616626422_0.4818331759888679"},"directories":{}},"2017.3.29":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["admin","admin-ui","api","cms","crud","dashboard","login","oai","oauth","open-api","open-id","openapi","openid","swagger","swagger-ui","swgg"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAlias":"swgg","nameAliasDeprecate":"oai-client oai-server swagger-client-lite swagger-server-lite","nameAliasPublish":"swagger-lite","nameOriginal":"swgg","os":["darwin","linux"],"readmeParse":"1","repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm install 'kaizhu256/node-utility2#alpha' && utility2 shDeployHeroku","postinstall":"if [ -f npm_scripts.sh ]; then ./npm_scripts.sh postinstall; fi","start":"export PORT=${PORT:-8080} && utility2 start test.js","test":"export PORT=$(utility2 shServerPortRandom) && utility2 test test.js"},"version":"2017.3.29","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.3.29","_shasum":"3526b3e14ae17c7749e354979ba997c8fe3e91fd","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.1","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"3526b3e14ae17c7749e354979ba997c8fe3e91fd","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.3.29.tgz","integrity":"sha512-h0hQHwkKqP6YSXclfLY6Bi6xgrg2BYtRMBG1Z83sROFLTivIa944/zZ4oPn+1Y4SBkTL8RujWrjLkRHtBJ3Zmg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCFHGTvLaUNJ4nFmCjY0ao3B9a/hn/fwfJy+0YRI4Z5BAIhALMYt9kDABcyC6z7aT5RiZfqjXfOeCCt2flEERHEc7nO"}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/swgg-2017.3.29.tgz_1490880262636_0.4881547999102622"},"directories":{}},"2017.5.1":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["admin","admin-ui","api","cms","crud","dashboard","login","oai","oauth","open-api","open-id","openapi","openid","swagger","swagger-ui","swgg"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAlias":"swgg","nameAliasDeprecate":"oai-client oai-server swagger-client-lite swagger-server-lite","nameAliasPublish":"swagger-lite","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"(set -e; npm install \"kaizhu256/node-utility2#alpha\"; utility2 shDeployHeroku)","postinstall":"if [ -f npm_scripts.sh ]; then ./npm_scripts.sh postinstall; fi","start":"(set -e; export PORT=${PORT:-8080}; utility2 start test.js)","test":"(set -e; export PORT=$(utility2 shServerPortRandom); utility2 test test.js)"},"version":"2017.5.1","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.5.1","_shasum":"c2efe515a27aa8fa48c4454ece7ac955118561be","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.2","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"c2efe515a27aa8fa48c4454ece7ac955118561be","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.5.1.tgz","integrity":"sha512-lxastusxslFJANHVuD5MGyhaROhCZZQdE/XSM65MRGAaMPMqAiJl0oeLF8o8LutyVcyRSbCl5oMFLPD0yiokfg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAIytThKdv76wtjjEg2sOVJgtA0PLBQvwwxRI44dExQyAiEAou7LEzlPWKZPNPSnDDlg87wSf54Gn/9vB01yP22Hvdo="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/swgg-2017.5.1.tgz_1493703176924_0.14900429965928197"},"directories":{}},"2017.5.20":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["api","oai","open-api","openapi","swagger","swagger-ui","swgg"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAlias":"swgg","nameAliasPublish":"swagger-lite","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"(set -e; npm install \"kaizhu256/node-utility2#alpha\"; utility2 shDeployHeroku)","postinstall":"if [ -f npm_scripts.sh ]; then ./npm_scripts.sh postinstall; fi","start":"(set -e; export PORT=${PORT:-8080}; utility2 start test.js)","test":"(set -e; export PORT=$(utility2 shServerPortRandom); utility2 test test.js)"},"version":"2017.5.20","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.5.20","_shasum":"d7694700d0b83ca51f048ac74ac8dba8efb14a30","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.3","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"d7694700d0b83ca51f048ac74ac8dba8efb14a30","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.5.20.tgz","integrity":"sha512-SHipINbIWZDHrRvuEPK2a9JDE4SmFeB7cFcptfkr+0L01sJ6lI6z+TxQswgQ0AqSy4Xrxd9xHAjx7KnaVaQ1uQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICN7c303k8sqKyb6fO5IXXTBbmub0FmhtOyRq7Nlo09pAiB2B6Ke0OA648YaprYQuqjWDGDkYzgSs+s7Ia8HoMQZ6Q=="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg-2017.5.20.tgz_1495443628610_0.6185262235812843"},"directories":{}},"2017.7.1":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["api","oai","open-api","openapi","swagger","swagger-ui","swgg"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAlias":"swgg","nameAliasPublish":"swagger-lite","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"(set -e; npm install \"kaizhu256/node-utility2#alpha\"; utility2 shDeployHeroku)","postinstall":"if [ -f npm_scripts.sh ]; then ./npm_scripts.sh postinstall; fi","start":"(set -e; export PORT=${PORT:-8080}; utility2 start test.js)","test":"(set -e; export PORT=$(utility2 shServerPortRandom); utility2 test test.js)"},"version":"2017.7.1","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.7.1","_shasum":"04431efb12214aed2562bc28db07d01289c37921","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.1","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"04431efb12214aed2562bc28db07d01289c37921","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.7.1.tgz","integrity":"sha512-fXbyhh7i5adgzRn3ieacfoz/8PSt/ffiIOKKAgJukBWJ4TbpQwfEo2JCmWnf6Rah2c9szpJ/j6YoAyBR9kKM9w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDhjP8PbsjyReuEWnxJWjfKnFVXW3sq7mlaj63cjtn5eAIgDNqHQZkE0vhfxan52YPYHBbGS7YLQHuNsnqeOYIFoIM="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg-2017.7.1.tgz_1500147271712_0.9587057833559811"},"directories":{}},"2017.7.24":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["api","oai","open-api","openapi","swagger","swagger-ui"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAlias":"swgg","nameAliasPublish":"swagger-lite","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm uninstall utility2 2>/dev/null; npm install kaizhu256/node-utility2#alpha && utility2 shDeployHeroku","postinstall":"if [ -f npm_scripts.sh ]; then ./npm_scripts.sh postinstall; fi","start":"(set -e; export PORT=${PORT:-8080}; utility2 start test.js)","test":"(set -e; export PORT=$(utility2 shServerPortRandom); utility2 test test.js)"},"version":"2017.7.24","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.7.24","_shasum":"8b6f4700b00ee8da02e2b3c2d121a0d4737532ad","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.1","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"8b6f4700b00ee8da02e2b3c2d121a0d4737532ad","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.7.24.tgz","integrity":"sha512-KoIVfUUG/L1Cvv+zOQ7oPEliW5aRynOphgM8vjlgaPh2Mr283A/JOr6VrfMCT/zCIo5kIhk1nw/phMZFkHQWsA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA5x/L57qDynkQwRsZzP9sFndEFabuhxAuCKOvSk+ha8AiBIwHeZ2XE5CyJ8s/EuyYYXwkKdc3d6a/RCgqGSWXkb+A=="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg-2017.7.24.tgz_1501026465540_0.8116638944484293"},"directories":{}},"2017.10.5":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["oai","open-api","swagger-ui"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"swagger-lite","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm uninstall utility2 2>/dev/null; npm install kaizhu256/node-utility2#alpha && utility2 shDeployHeroku","postinstall":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh postinstall","start":"PORT=${PORT:-8080} utility2 start test.js","test":"PORT=$(utility2 shServerPortRandom) utility2 test test.js"},"version":"2017.10.5","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.10.5","_shasum":"c46fd786f8c05e8d68a8af1401158498fb262a08","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.4","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"c46fd786f8c05e8d68a8af1401158498fb262a08","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.10.5.tgz","integrity":"sha512-6iKVEhmfcCOZIn99xMg7PUawCSQU5LuTQggECxYW+3HtrSE4ajCB4twbyKaInQE70onB4rq5yPLokJOe7oecNA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICap2I+jsijGx/0xd1fLrDqL4tKTSDkrVzdEsx26NOlIAiArLWVyO46tuK71OHzfwgkXh0taghu/KLurn/n80pNcmQ=="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg-2017.10.5.tgz_1507291812295_0.6170429484918714"},"directories":{}},"2017.10.11":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["oai","open-api","swagger-ui"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"swagger-lite","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm uninstall utility2 2>/dev/null; npm install kaizhu256/node-utility2#alpha && utility2 shDeployHeroku","postinstall":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh postinstall","start":"PORT=${PORT:-8080} utility2 start test.js","test":"PORT=$(utility2 shServerPortRandom) utility2 test test.js"},"version":"2017.10.11","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.10.11","_shasum":"193f6d86ee3f1889473c8c866575eca524c4135c","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.4","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"193f6d86ee3f1889473c8c866575eca524c4135c","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.10.11.tgz","integrity":"sha512-pBsHpLjepn9ybqbtnET7QU2OnRlnFGJxL/Iqct9a+MX2UBAROC8oA8sGO4VfsLMppiq7dSjr18K7pybZ8XWU9g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDkvUEDJa2BxwwrY1lN7QcURh8JInf6ZD2/pviM6ftOoAIgDV7udX+ZtK9ynQqZlZ2/FR9qJKLySkt6IdFgL8TY8ss="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg-2017.10.11.tgz_1507852258647_0.8444485545624048"},"directories":{}},"2017.10.17":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["oai","open-api","swagger-ui"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"swagger-lite","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm uninstall utility2 2>/dev/null; npm install kaizhu256/node-utility2#alpha && utility2 shDeployHeroku","postinstall":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh postinstall","start":"PORT=${PORT:-8080} utility2 start test.js","test":"PORT=$(utility2 shServerPortRandom) utility2 test test.js"},"version":"2017.10.17","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.10.17","_shasum":"b3220aaba0a5f5f28e31b509f670101e7ed591a5","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.4","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"b3220aaba0a5f5f28e31b509f670101e7ed591a5","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.10.17.tgz","integrity":"sha512-9fS0vKFHZEfBtkC+IJIJr0BgADfVPWJMjWpwmfu2KNGXR6ZqRCzCKIUXGsUyAuhSaffL7l6jV4pi9XcFJZEkaA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCbSZO1eN2YV2TzUOec+nHFjQUqn3msL+eUoHMl4l7iMgIhAMu8CYtt6y1GOW20DwKM7wMa/bUUH+ypmzGwrr+fbOu6"}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg-2017.10.17.tgz_1508347320032_0.9341696554329246"},"directories":{}},"2017.10.24":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["oai","open-api","swagger-ui"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"swagger-lite","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm uninstall utility2 2>/dev/null; npm install kaizhu256/node-utility2#alpha && utility2 shDeployHeroku","postinstall":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh postinstall","start":"PORT=${PORT:-8080} utility2 start test.js","test":"PORT=$(utility2 shServerPortRandom) utility2 test test.js"},"version":"2017.10.24","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.10.24","_shasum":"2051f70618db8c6197ee9b76b829e803388fb074","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.4","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"2051f70618db8c6197ee9b76b829e803388fb074","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.10.24.tgz","integrity":"sha512-VbdkyWdrIPNvAG7F56SLH9oZtNWEpTX8bmOzZBqxAQf3Shqr0nET8M1ANZmqsgdv3Rnsv+WSFUgpRLMd//msZw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDh3DVvFdYvAcrQJCr0SQ7e+UIMt/keGIrPEXvyA0LdcQIgbtv+wgBMfXGFZwOzXFon7q9V9yVbtBHs7IaZvATkhaE="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg-2017.10.24.tgz_1508866211546_0.05255776597186923"},"directories":{}},"2017.10.28":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend)","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["oai","open-api","swagger-ui"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm uninstall utility2 2>/dev/null; npm install kaizhu256/node-utility2#alpha && utility2 shDeployHeroku","postinstall":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh postinstall","start":"PORT=${PORT:-8080} utility2 start test.js","test":"PORT=$(utility2 shServerPortRandom) utility2 test test.js"},"version":"2017.10.28","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.10.28","_shasum":"f9cea409d7d26cf042e523ae8470eaae6575e9d5","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.5","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"f9cea409d7d26cf042e523ae8470eaae6575e9d5","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.10.28.tgz","integrity":"sha512-/PrfTPDWyZy8Gubd2s5jMmM0Zxjn15E/JM3+fXYI6npUKHrbIwjO4XdIX2HlRTjjdBRcRF5HysfHQtHHuSohNA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHhwGzCb5necCYWYQHOLnxpZaD3IafAH3ljK032SPQxaAiBEFwF4GENAgaz2wLxE/8zyED7eLVnECILy2TyC+CN5GQ=="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg-2017.10.28.tgz_1509221590921_0.8893344101961702"},"directories":{}},"2017.11.7":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["oai","openapi","swagger-client","swagger-ui"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm uninstall utility2 2>/dev/null; npm install kaizhu256/node-utility2#alpha && utility2 shDeployHeroku","postinstall":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh postinstall","start":"PORT=${PORT:-8080} utility2 start test.js","test":"PORT=$(utility2 shServerPortRandom) utility2 test test.js"},"version":"2017.11.7","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.11.7","_shasum":"446add7de8ff116bc111296b9916fa92c75f935f","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.12.0","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"446add7de8ff116bc111296b9916fa92c75f935f","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.11.7.tgz","integrity":"sha512-KXy9oAvmV63dtT8LoX2SQP35OOlhVcJTRB+01NZ7o+LwOitzvLbqI/TQhGTHp6Iq8v6e95/18SGnblNf7+hVMQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCaqNGa7kP+hgNwrFN/n5689feHjnmw32Wljn0U9qJ/JwIhANNeFIlZZoKY/9X7ceYbXhhIN9XlwNB3rhBvPImcFwOx"}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg-2017.11.7.tgz_1510080016015_0.4927610410377383"},"directories":{}},"2017.11.15":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["openapi","swagger-client","swagger-server"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm uninstall utility2 2>/dev/null; npm install kaizhu256/node-utility2#alpha && utility2 shDeployHeroku","postinstall":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh postinstall","start":"PORT=${PORT:-8080} utility2 start test.js","test":"PORT=$(utility2 shServerPortRandom) utility2 test test.js"},"version":"2017.11.15","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.11.15","_shasum":"b6dff758891bcb42ecc32086f37fa76e8b8547d8","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.12.0","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"b6dff758891bcb42ecc32086f37fa76e8b8547d8","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.11.15.tgz","integrity":"sha512-Lca3Q5EUMZUL2yAlXVpetAIxs1xHuvqQwgTL6D/3r98N5TX/YO22FrtkvT23neoFaczcYMG7V6zGO7ntJUg50A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBIBp2Aq4OMoQYhIEx9HDIIYHMhbSonhllf+/wpoJfmrAiBycstRUjcRQItU8ghjnx6mnH55wOjUz7SL0TrKqDs9mg=="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg-2017.11.15.tgz_1510839966566_0.2164584156125784"},"directories":{}},"2017.11.20":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"homepage":"https://github.com/kaizhu256/node-swgg","keywords":["openapi","swagger-client","swagger-server"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm uninstall utility2 2>/dev/null; npm install kaizhu256/node-utility2#alpha && utility2 shDeployHeroku","postinstall":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh postinstall","start":"PORT=${PORT:-8080} utility2 start test.js","test":"PORT=$(utility2 shServerPortRandom) utility2 test test.js"},"version":"2017.11.20","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2017.11.20","_shasum":"b7128d25e659e902bb09632657b58a96dcdbb178","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.12.0","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"b7128d25e659e902bb09632657b58a96dcdbb178","tarball":"https://registry.npmjs.org/swgg/-/swgg-2017.11.20.tgz","integrity":"sha512-L5kzVrPz60ElN1eHuePtQhlhwe81d0fAopPMw8UD+M6e8BX2pbPEZBTcxVH+ZiMWdU5sZICiacjW+Bq1O/jM2w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEkshR0VTwbs4ZGlQig19wjK2M4px553mmf7T1u2RAXlAiEAhrNe8nDqBXsOgGdfpaFEkXoozj/wX6Iahooc7RddL4k="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg-2017.11.20.tgz_1511240708143_0.4437867598608136"},"directories":{}},"2018.1.12":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"githubRepoAlias":"swgg-io/node-swgg","homepage":"https://github.com/kaizhu256/node-swgg","keywords":["openapi","swagger-client","swagger-server"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm uninstall utility2 2>/dev/null; npm install kaizhu256/node-utility2#alpha && utility2 shDeployHeroku","postinstall":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh postinstall","start":"PORT=${PORT:-8080} utility2 start test.js","test":"PORT=$(utility2 shServerPortRandom) utility2 test test.js"},"version":"2018.1.12","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2018.1.12","_shasum":"b03b16ab8cf6b230b3d9e949230cec0cceca0fb0","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.12.3","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"b03b16ab8cf6b230b3d9e949230cec0cceca0fb0","tarball":"https://registry.npmjs.org/swgg/-/swgg-2018.1.12.tgz","integrity":"sha512-tu8mv22KdydIQ/jfrdaWJpA0oX4JwF2HVckdknOktcWcY+R891rQHiaxU4kzUzi/CWvSevhzSHQKAWJLS46mLw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD33pGQZWwk56dT1qenLlINjkHXyIwpECnnSBA99PZqpQIgUudHDBxDYsqiJKNITiV7eR+q766+qhtb7XLmPqTNQ38="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg-2018.1.12.tgz_1515846428184_0.8876969739794731"},"directories":{}},"2018.2.1":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"githubRepoAlias":"swgg-io/node-swgg","homepage":"https://github.com/kaizhu256/node-swgg","keywords":["openapi","swagger-client","swagger-server"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"apidocRawCreate":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh shNpmScriptApidocRawCreate","apidocRawFetch":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh shNpmScriptApidocRawFetch","build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm uninstall utility2 2>/dev/null; npm install kaizhu256/node-utility2#alpha && utility2 shDeployHeroku","nameAliasPublish":"","postinstall":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh shNpmScriptPostinstall","start":"PORT=${PORT:-8080} utility2 start test.js","test":"PORT=$(utility2 shServerPortRandom) utility2 test test.js"},"version":"2018.2.1","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2018.2.1","_shasum":"0e84aa341271a9417bad720bb43987c8be54dbac","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.12.3","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"0e84aa341271a9417bad720bb43987c8be54dbac","tarball":"https://registry.npmjs.org/swgg/-/swgg-2018.2.1.tgz","integrity":"sha512-FefJ0SYDn7c1fhC7D4XaA+r1AftDYH8cgmP92cWElggY+jHXXuaEl019xxQbd8pgSparS9lfCdzqys+akkzWvQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCLfPHFufUNYVrpkSpkFIUvrJHUrSOmJD5K3XvU+Z1BOwIhAOmaH8PVzcPSnQ5dzn4YQda9Nu7J2fxnv0MoS3xkgzX6"}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg-2018.2.1.tgz_1517552713799_0.43049140204675496"},"directories":{}},"2018.2.24":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"githubRepoAlias":"swgg-io/node-swgg","homepage":"https://github.com/kaizhu256/node-swgg","keywords":["openapi","swagger-client","swagger-server"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"apidocRawCreate":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh shNpmScriptApidocRawCreate","apidocRawFetch":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh shNpmScriptApidocRawFetch","build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm uninstall utility2 2>/dev/null; npm install kaizhu256/node-utility2#alpha && utility2 shDeployHeroku","nameAliasPublish":"","postinstall":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh shNpmScriptPostinstall","start":"PORT=${PORT:-8080} utility2 start test.js","test":"PORT=$(utility2 shServerPortRandom) utility2 test test.js"},"version":"2018.2.24","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2018.2.24","_shasum":"39e44c2d83c8d8bb3c0c01a09448c8c868a8be6d","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.13.0","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"39e44c2d83c8d8bb3c0c01a09448c8c868a8be6d","tarball":"https://registry.npmjs.org/swgg/-/swgg-2018.2.24.tgz","fileCount":7,"unpackedSize":1861574,"integrity":"sha512-wD7eJjvb047wtwbM0xhWhCUnwe1EIJNSjyR/Q5sPz5j2sJs18RdefApv+FjF6BoLGJQp27NPV8QCQA7YVsqtIw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDiPuaK6Gy9SUZhCw4ijEZm+KadT98q1D/UrZALiqKT7AiBQFc8Kod2wmqaRWel6uP0XlTgs5qLj2nKtjIUV3FaEJw=="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg_2018.2.24_1519560200377_0.4404814354393711"},"_hasShrinkwrap":false},"2018.3.25":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"githubRepoAlias":"swgg-io/node-swgg","homepage":"https://github.com/kaizhu256/node-swgg","keywords":["openapi","swagger-client","swagger-server"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"apidocRawCreate":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh shNpmScriptApidocRawCreate","apidocRawFetch":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh shNpmScriptApidocRawFetch","build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm uninstall utility2 2>/dev/null; npm install kaizhu256/node-utility2#alpha && utility2 shDeployHeroku","postinstall":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh shNpmScriptPostinstall","start":"PORT=${PORT:-8080} utility2 start test.js","test":"PORT=$(utility2 shServerPortRandom) utility2 test test.js"},"version":"2018.3.25","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2018.3.25","_shasum":"20de1d8d7d7dfc642d969d135977237832bc8fd4","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.13.1","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"shasum":"20de1d8d7d7dfc642d969d135977237832bc8fd4","tarball":"https://registry.npmjs.org/swgg/-/swgg-2018.3.25.tgz","fileCount":7,"unpackedSize":1991318,"integrity":"sha512-IIynMI4GpdQcOSXg/j/AVsDjxbskXtVIBg60pi2rrrBGJMOZdyHPacvArZjLmq7H6qj0q7qfYmYtGw6Z7PZGdw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBTDN17PMM+RCp+nxenmcTABmpJj8iqh1uNb4rhzyiipAiBWSP9FEa/C/maL+jeGWb5whJVvCUejdwXqZconJzU7fw=="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg_2018.3.25_1522078959755_0.31217270439949263"},"_hasShrinkwrap":false},"2018.4.21":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"githubRepoAlias":"swgg-io/node-swgg","homepage":"https://github.com/kaizhu256/node-swgg","keywords":["openapi","swagger-client","swagger-server"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"apidocRawCreate":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh shNpmScriptApidocRawCreate","apidocRawFetch":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh shNpmScriptApidocRawFetch","build-ci":"utility2 shReadmeTest build_ci.sh","env":"env","heroku-postbuild":"npm install kaizhu256/node-utility2#alpha --prefix . && utility2 shDeployHeroku","postinstall":"[ ! -f npm_scripts.sh ] || ./npm_scripts.sh shNpmScriptPostinstall","start":"PORT=${PORT:-8080} utility2 start test.js","test":"PORT=$(utility2 shServerPortRandom) utility2 test test.js"},"version":"2018.4.21","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2018.4.21","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"integrity":"sha512-8HuJFe6zwYPNmNA6AIYvzlfxMnN7HP14G0UlC1CyyTO038JHTJRvrTPwTLfLpcNJhz5+mZzda/tTkVB0fd/Myg==","shasum":"d7b576573ded21b489fbf1a96cecc1c0739f1545","tarball":"https://registry.npmjs.org/swgg/-/swgg-2018.4.21.tgz","fileCount":7,"unpackedSize":2060759,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa25EBCRA9TVsSAnZWagAA1W8P/RX0keCPJH0L/ERi0jbS\nwleA7T7EAxgGA9TPdpjmVQKbBY9eRHmwZSs0USZYg+yjklumhYLJWVOQ/xDK\nZfpCFvAP1QrKaYn3Sq13cZn8phJW4d9Wwje7mbIIVO38az23w24P7WjlQKjF\nODJoipu6hLfMBmFR0cVFxBLDmve+s3Jjf+z3Y7rXRTvDCRBR2Ox34kC1x9TI\n+zCTKhpX6ivjZFb+vnXIemBoXIjePvkX9ZhkXxsgUSfj+DvPKu38E7zoNItD\nHoYbAc+qgreHPmx6nMmrHARUFWK3Q+U8JGFM0+SDHi3Rw99fBPQKwU0TxMRG\nqbDBHE2b2c0nA1aZFNgtJrRx6hGN/3pRLUdg5lFW3oySomGwzQJ1bgj5QX4y\n8UjDuhfDGLAPESooJCqi2UtQotegMUMIpEpHzZqwEvV2TfWcNn7dfM+xRETy\nBu2Oecp263/RqfJvQFiIX45SOTInCQ9rxmbzR/32rc9ccTvhHwybjM+thP+N\nzEAKNX0Lw6q7q91nuoR5ftDFYWCHH8k4Jz1ikUS4NuW5ssV9LTcTxeU6DIJc\n3hwhUgDqOiK7yDCq62NV3u9ahQEOhWNsLQD9ycC4NHp6rTkNEkRcnYCPhx9F\neBywbv5hwR2DydWee/5Ixh1Jb9gHiLPTS6glmesP46FQWLwky4kvfE7riMAt\nDgLM\r\n=Nfqu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFSuwGFAQ+uZ5iSQbUEk7XzpcTgBpm7Mnw2LqvqtcN98AiEAgH5NaJda6SIhpYQ7/19kE0lLz4ol8qTgF1zwDSs4LEg="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg_2018.4.21_1524338943557_0.1667055816416485"},"_hasShrinkwrap":false},"2018.6.16":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"githubRepoAlias":"swgg-io/node-swgg","homepage":"https://github.com/kaizhu256/node-swgg","keywords":["openapi","swagger-client","swagger-server"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"./npm_scripts.sh","eval":"./npm_scripts.sh","heroku-postbuild":"./npm_scripts.sh","postinstall":"./npm_scripts.sh","start":"./npm_scripts.sh","test":"./npm_scripts.sh","utility2":"./npm_scripts.sh"},"version":"2018.6.16","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2018.6.16","_npmVersion":"6.1.0","_nodeVersion":"10.4.1","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"integrity":"sha512-b4VFhWoOFUQbbaL6XXDmWY/oLDQPKJMzKn5A32EbWjrfsYdOz//2xTXfVbZF7wvNa8viBVKMDf4/Cz8HLv3uaw==","shasum":"80ae79faf5b43cde7187e55b6b8673759d16fc0e","tarball":"https://registry.npmjs.org/swgg/-/swgg-2018.6.16.tgz","fileCount":8,"unpackedSize":2205432,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbKW37CRA9TVsSAnZWagAAoEIP/Ro12iGezP//M4doluj7\nX7lkE00q9a7Bew7z4OHjOxTfynTQVwfDvCA23uOB3PFAG0zEGvrGbbEfBwS2\nDzXuMmz4K38APGjaek7uLZQ6t/WqqxemDmWklYy3C/eOFvSM0HcIboEOMAwO\nY87GCW3/JX3ZTv/LFN9rZ64nrDPj/e1sxejGrSCpuD9XwdQZJ022HwhURs8N\ncnKP1ay3bfrG9tIetjbEMKgxoRqR8FIm154s+vq48k4EXxtEF63BQx19dsiN\nZMiIdCl2975lKnCbGLjZafSRZ2X/TW2mLTR+HIkTquPktMURlHi9MsUHivxX\nSNCF6ya/pEzV3cExLXUQ9SoPXXuTotXm4hXqN/ZDNsebY/0oelzPQzeFYuxv\n856AFGb2zHx/lOSMxqEBvcgXFfhZj9l6vqQLafDJ3Sewn1YNSUcdprl/Q4Za\neEIPN0tiwzBfG8rAeCtsTFxV5fnyafWvahgPc4pC2ZvQE3uCRoQDc6AP5Gpw\neAWvNkIglLthUr4qHuRgR+A8h7BJF9GRUPGR4+SL3PnrthdRiUGiqkMn1plk\nJJau4fK/fPxa2NPibt8/GxFuyfuxcO5EyOLe1beWjrAJNjZxLI7g3v6TSqr5\nvgCWBJP6cD5BFA0N9okIgzeU+hf7ivcSUZVAXv8CbqXFSW6UETD90S0YqiF1\nR3T2\r\n=SZYj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFoBNsRkVpaTM25K22a9wa7Cy6WvhcrCyxQExCuDhe5vAiEA/Lm+jr22KI85duycvxeippblxiglWLfiqa0I72AYTQM="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg_2018.6.16_1529441785639_0.3999718632271674"},"_hasShrinkwrap":false},"2018.8.17":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"githubRepoAlias":"swgg-io/node-swgg","homepage":"https://github.com/kaizhu256/node-swgg","keywords":["openapi","swagger-client","swagger-server"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"./npm_scripts.sh","env":"env","eval":"./npm_scripts.sh","heroku-postbuild":"./npm_scripts.sh","postinstall":"./npm_scripts.sh","start":"./npm_scripts.sh","test":"./npm_scripts.sh","utility2":"./npm_scripts.sh"},"version":"2018.8.17","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2018.8.17","_npmVersion":"6.2.0","_nodeVersion":"10.9.0","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"integrity":"sha512-kqOgZCc1sQdEO3k7OQUZIJ12qL0xHVGlMGWEzktHyMpl00dXzjbdrd75eNwhO97/FMF2cLO6xDD12lgOB4HSiw==","shasum":"4168288996555bd127d1d4f77829cc6892c01c58","tarball":"https://registry.npmjs.org/swgg/-/swgg-2018.8.17.tgz","fileCount":8,"unpackedSize":2245998,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdnUsCRA9TVsSAnZWagAAiusQAJZNLeTIFdSWwMVfXPkx\n3r/jILItS9vxQKegzrprFGgZYnumJNmQRfqE4SEDp6TcvzGjc464sLRK8Bmm\n1ISs+/X+a8j1wjpK+j2/pwQwRcSPvgCVYuuXxZmb3WPLQY0LMYmRQGdNAyYS\nRVgkfr+B+lZ2Os5Wj2Lru99b4Ttcq2glEzo9Vqfe2rrXnNBRGMBovl34pw3m\nkz5yZOrczStncTbwz6hq10lpi/p7ym5gDOyUEjzM25cv9MAyz/Pcdr+KbveP\n6rUMEJ3AR3nA+yhs3oZNNHKe3IBx0wvA74b3t11eyiMt8JPHHkgC/nU3n2KF\nRxCLJHCZGdRjCeKboxSnIUVDvYIO4+1V0L7FrNh9XMm5OtkLzCwfiGH9yBae\nIOSqO8GVuX7fToEZBoR6NEJ7hR1VRnJxmxUhNduPI9cDzUp7Hn6GbG7Dda2T\n3h53PevP2wmzONgcMQT7dfPYWcO84nGomfgTyqWvuq77oqMlB5WwkcioZiUU\n5r+VNlNuW+b+i8XavgzgCVD8DzU0EHluHEaRAK8kwFmHF9zctF4FnrMtd5j4\n9Dbli+LmMizzXKoXzcXcdkr9z5e471JOQSmnozi1OseUfPfXktC5crJFTcbQ\ncbtwATHfUM2e1PS+2SJdOVWBElzvY1qt9W71TpGRW1oe5hKHD1tVAM0DkvXJ\nmF6a\r\n=nvi5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE5tjQdiPUZ2A09PVn5SyPHKclb1+RtelvM5juGihBhIAiEA9cJdRb72oHi0fwwqWdYfVk9mA3qwg1iBDQ+6pzMYXMU="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg_2018.8.17_1534489899937_0.8288676510778663"},"_hasShrinkwrap":false},"2018.9.8":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=4.0"},"githubRepoAlias":"swgg-io/node-swgg","homepage":"https://github.com/kaizhu256/node-swgg","keywords":["openapi","swagger-client","swagger-server"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"./npm_scripts.sh","env":"env","eval":"./npm_scripts.sh","heroku-postbuild":"./npm_scripts.sh","postinstall":"./npm_scripts.sh","start":"./npm_scripts.sh","test":"./npm_scripts.sh","utility2":"./npm_scripts.sh"},"version":"2018.9.8","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2018.9.8","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"integrity":"sha512-DSkrYDYkzqwOHAZs8LlIhlhfcgm7D+p3S4os/k8rdsBfknaYUXIIU6x6IbQzekU1rUeiBHuyHTiyeHZgRTJgNw==","shasum":"4f60b932633503172d89e4b4c524820cfe977c88","tarball":"https://registry.npmjs.org/swgg/-/swgg-2018.9.8.tgz","fileCount":8,"unpackedSize":2252514,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbk92bCRA9TVsSAnZWagAAphgP/1eeSPnJQXJGBLACCC/p\n1mz47GbsOUH7ineE5rqa2p9FFE3SHisb6KddqHbDGubsWkrpCyer30rGQmxW\nrGPyFD5AVgbGogi2QQizbGS6JbueZPiJdBiZ2qxy1eb2jOldMjb6FAhsswFQ\nhB/gVSUVFTuyouzmXGXletw4Sd6U0WoX22G0pHrrb7TUnovSCYeH5NwQ4pye\nwpE4p2EMECCIumjB+c2NfIh/Pbs9f4emZhzcfgId2TYcWbtEGovgQO1ZeOeG\nIUu1xUJN7hG6WNaSDnmxyLu+3+8G+MGU860p8eug+p1sh2h7OIGOIs6SU9m/\n4g0ONMl4FZLf4ZJNTLMwV8z3ICax3YgKVV/fdDT7DYqfo3HD+zopG2cuJz++\nn9TyVRjCRWMVc6I+PoybZBgUnTVMzFfbUyDa0SVGlPryF9x4ARrdw7fh7AbI\n674sEeQx4I/wGAgW+j+GB8DlCOjjWJhD68vYVYRgeiRj1zPHfbMZ5nOj0V+I\njmSznCBenN8RN4YliDQrPBgHzoSbsQXGN2rPu+sUr4bMr5EF2VmSWMyfZVkH\n0t0tXXvsftwAb//ztjjcFW4+KHcU1CUQaUSDebkqoDHn2q/ghkEAeF3K667E\nTVMK5PNXQvcByCNSRjYvGmEV9Ycgiwas2PoLnW2QjoymHE/gu1zmI57kaR97\ncSLv\r\n=F87c\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDvRqfJthlPhYVNKRalk539U5+c1Zi2gWiNtCtjak7AKwIhAP/6ofKVY/g+gzjNZ/UrrBsK1pRYoCGQ1jh4QrUjmDMz"}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg_2018.9.8_1536417178386_0.9982273874297198"},"_hasShrinkwrap":false},"2018.11.14":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=8.0"},"githubRepoAlias":"swgg-io/node-swgg","homepage":"https://github.com/kaizhu256/node-swgg","keywords":["openapi","swagger-client","swagger-server"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"./npm_scripts.sh","env":"env","eval":"./npm_scripts.sh","heroku-postbuild":"./npm_scripts.sh","postinstall":"./npm_scripts.sh","start":"./npm_scripts.sh","test":"./npm_scripts.sh","utility2":"./npm_scripts.sh"},"version":"2018.11.14","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2018.11.14","_npmVersion":"6.4.1","_nodeVersion":"11.1.0","_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"dist":{"integrity":"sha512-h3OYNyi0YiWypKOPksl/Ir0IQIuPdmhUZyUHUWgNjeW+w6eACrk5deK0ixZ3/k6cNpYr7X0e5Ng0o6kzBm3lRg==","shasum":"a8079683bc2bf34a40ca04b528ba6926f835487d","tarball":"https://registry.npmjs.org/swgg/-/swgg-2018.11.14.tgz","fileCount":8,"unpackedSize":2070099,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb7FS+CRA9TVsSAnZWagAAHdAP/3rRwTh/1P2WAVsk+p8R\nBvu6GH2/bG34BclNdBRfwHYnI4VU5R8z6fzJULEYO5MqKF6P5CXGMmMHflHH\nw0kTJ3uNpV+J6Oa8nCPe6uYTIahzZ/ORyCbNuPXQeUsIPDBG82S5yYp5dME3\n+qPEP/l98AfRvAjdb9krsle7G15T+2Q0D9iG1uYDqvp/4vhkS25bDQ8HkBNW\nJ02rMP2qavuECXiLzwmaROXQj84+RAhTBiPqTnbwLWls7rbYMPhvU6Tuq6Fn\nmIH5OhI/y0w5zJ48OosBSyfCeSW6hgE1vMHJHwnz33N/qL/CE0KI8bUHYPIx\nycdBwRQVXBY+saOIsnETCnDuBQrmIXHZOcla4NAZ/XCOCizD3fIAF9eyITHX\nHXiL8BQ+ApdStIeA9YWnFNboL9NdEUDrOWqY7i23k5+JsvjgS6IH5ESoWuHw\nsSg3wD9T2VGbxtdZZ0tih3p8F9QywRMjYu5yuqcNVdtKDiLWrCFUhYqbDZ8s\n7XkLZT11Bu3tV/TJu8oERSSDAc6wfAIYepvt1sq90ETjSrACKYDIy2xNqAMF\nQUtduItxJS8+WD6RF3+Ls+VjnTF8+6oqdBLanj3UBe+aQvuX9z5xVtqXD0IQ\nktJhUWcouBy6Hb/Gq2gugKgaJcm/ooTiEE6JjTRdyxrFRyUPkarTkENPP9NN\nUHfn\r\n=LT4S\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHAYK6ReiMqgIG7XSoBFRbuKtbZ5kVkIQiIFifQBN3+oAiBl/uYC2iujHWr705Azwvs7I57ADllQSvz7vPyGMBFzww=="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg_2018.11.14_1542214845471_0.17605014120420392"},"_hasShrinkwrap":false},"2019.2.20":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","devDependencies":{"electron-lite":"github:kaizhu256/node-electron-lite#alpha","utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=10.0"},"githubRepoAlias":"swgg-io/node-swgg","homepage":"https://github.com/kaizhu256/node-swgg","keywords":["openapi","swagger-client","swagger-server"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"./npm_scripts.sh","env":"env","eval":"./npm_scripts.sh","heroku-postbuild":"./npm_scripts.sh","postinstall":"./npm_scripts.sh","start":"./npm_scripts.sh","test":"./npm_scripts.sh","utility2":"./npm_scripts.sh"},"version":"2019.2.20","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2019.2.20","_nodeVersion":"11.10.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-VNGSMYJCUhax3VGqu6e0Cx6Ncgw0infhDr/1+bX6y/UpDzM3G43aQmeoXBJaHvVHBT0iuEHuAHc52dSs1rAkMQ==","shasum":"fab6b7703f0eea6a157062df251c4853fdbf6db8","tarball":"https://registry.npmjs.org/swgg/-/swgg-2019.2.20.tgz","fileCount":8,"unpackedSize":2114615,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcbQ3vCRA9TVsSAnZWagAARhMP/2Wr1hEZqE2aB8GICsqu\nPfdPzHEptm4GJlnQtRblPhKq7IJlOHzvnqfWwUW35IBy4HN2OoSuWrUvQ6GP\nLpB3M7jCM327mrcxX1Tdp5ekUoTLcPVbHRoPGuTTrOFFacXYDmZ/B/ufNJOX\n5X/wQgdB7VN9uByAE4aY59Fq9kz9/WM/FgCyEwyn8PA0VtcZnPmca/yTvpwn\n1GnEviAwDiQZ45IVEMM30ndxKYEKl8cjpuwMIE6Rmyzzv1G6o/5HY3fwg4fo\nDXc7OzCEYf78OVbSPKnyjH6El5IHKkiKgYZ4UKQiubcTLz3kTLnTsbNft1VO\npiGqq90j/a+nVBSiZEkEKgsDK3VEXJggjZmUefa1T7sp2/0gbz7mtz6uXI3Q\nptmb3OkBj4V4VoHo5mz2tbokCdHLPzpE7Hpz+6h1M/7hUZndU87NeetGtqCy\n4EN3ojec6vXhtfsnYInaZsBD6Fy0OzcXnFo+K3mVnkFanBj+F8LC5dJfxCEU\nxj5VYG4o++LthcS28naRkXu5PdzxFdVo2XB+Y7jY2P9QQ3tlIO6nHvQv3LYb\nlIk1iDiB/1JShEEdo0IF62V7UisezGW1lMPgs5X+DMyj7SIe9I61NCixP7yk\nMQN/VogUbcaraxpuahzQOco3H8V1K041e/mIma+LNeYi5GUh7wFTAlUaHcpP\nkLce\r\n=mp40\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDsp/kUyrgaV0esWVkO2hALEwAF0TtCqxRQvmXZTwTyhgIgIpnECVJYwr5aBnnlO7RWnO1PyRX+QEz1/XyjAuKrGiI="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg_2019.2.20_1550650862307_0.801898213051234"},"_hasShrinkwrap":false},"2019.9.14":{"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","devDependencies":{"utility2":"github:kaizhu256/node-utility2#alpha"},"engines":{"node":">=10.0"},"githubRepoAlias":"swgg-io/node-swgg","homepage":"https://github.com/kaizhu256/node-swgg","keywords":["openapi","swagger-client","swagger-server"],"license":"MIT","main":"lib.swgg.js","name":"swgg","nameAliasPublish":"petstore swagger-lite swaggerdoc","nameLib":"swgg","nameOriginal":"swgg","os":["darwin","linux"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"scripts":{"build-ci":"./npm_scripts.sh","env":"env","eval":"./npm_scripts.sh","heroku-postbuild":"./npm_scripts.sh","postinstall":"./npm_scripts.sh","start":"./npm_scripts.sh","test":"./npm_scripts.sh","utility2":"./npm_scripts.sh"},"version":"2019.9.14","bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"_id":"swgg@2019.9.14","_nodeVersion":"12.10.0","_npmVersion":"6.10.3","dist":{"integrity":"sha512-ouZqkQi7TWcSGAcNeg9pQftVS9Nj5ZZyh5qHvGXvfmQHeNBmvfOOBTa34nSHkJ9ep5pR87j+RiBxvVQc53R2ow==","shasum":"eacd3e771a4d3afa139107485fd6f80100a30292","tarball":"https://registry.npmjs.org/swgg/-/swgg-2019.9.14.tgz","fileCount":8,"unpackedSize":3020161,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdfrc3CRA9TVsSAnZWagAATksP/RssYToPu16krRoZ5xux\nljpQPpOvDjWkHS9s1jHkiZOkfGw3NvNbuwmrjzlnGVBrxzAq8WcfUFuPvZrQ\nmzzTdD8Nv+KZji76zIAN++D/ZMZusTb34N7Ov2IVUqCVlX0xTHho9LXqHKi0\nJi4vwJQUE2y0CPU98cT2wXKEksEAtg3tRL/N5jYZVh2Jj3m+EmyWy0jqo6za\n6cirZ6mCbVfSQeB/QRdo+o0wwmmDQ9skDZuSDeCrM4+Fu6+KkkpyXj5Wp6ZT\n3mhepBZCVsVutiBSxCg4tYDcT8w9ikC1rDo6piKVVVdTEBh4H648UTkGK4Sj\nGIIHoEtQTv9b2cPYZ8u7tC90VAf7vphiUj4izZ7txhoeUr3um1C24bYT7nL4\nAVbAvVCSnTVUy7iR78T8DIw58m2JPZcDKbjjqoVqoQS0ZTKdYh8O14/VNNU9\nbb3abqXCpKyhc2sEIBmULFmPsU3NXSxicgw/5cXr8DAmE9E76n5sfpcur8vL\nnQNrIG3qs3LQK2b3gJJqGW7K9gaXydgDH2aI44PGNE1PtKXwSxnOzyK+73P+\nWPrxApiqOSg74A22TBL4pa4U/anXhMK4A70SVLzhdAsIdzCQ+tkIXD1004jK\nIFUGugCi3bFns5/DWj2Cgj/XcS0bhnRC4XIZNyNjtXiP8VPLanhBs28NE57E\ndQMs\r\n=iMk8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEwSytYOMnO0XzeF31+Jch6S/UWaYrrVurx8nWoGdDPqAiAecthYYEVb+w78febBM22LkTMpOOeYAEufRxKmewEAww=="}]},"maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"_npmUser":{"name":"kaizhu","email":"kaizhu256@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/swgg_2019.9.14_1568585526396_0.9252094923534648"},"_hasShrinkwrap":false}},"readme":"# swgg\nthis zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo\n\n# live web demo\n- [https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/app](https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/app)\n\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.deployGithub.browser.%252Fnode-swgg%252Fbuild%252Fapp.png)](https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/app)\n\n\n\n[![travis-ci.org build-status](https://api.travis-ci.org/kaizhu256/node-swgg.svg)](https://travis-ci.org/kaizhu256/node-swgg) [![coverage](https://kaizhu256.github.io/node-swgg/build/coverage.badge.svg)](https://kaizhu256.github.io/node-swgg/build/coverage.html/index.html)\n\n[![NPM](https://nodei.co/npm/swgg.png?downloads=true)](https://www.npmjs.com/package/swgg)\n\n[![build commit status](https://kaizhu256.github.io/node-swgg/build/build.badge.svg)](https://travis-ci.org/kaizhu256/node-swgg)\n\n| git-branch : | [master](https://github.com/kaizhu256/node-swgg/tree/master) | [beta](https://github.com/kaizhu256/node-swgg/tree/beta) | [alpha](https://github.com/kaizhu256/node-swgg/tree/alpha)|\n|--:|:--|:--|:--|\n| test-server-github : | [![github.com test-server](https://kaizhu256.github.io/node-swgg/GitHub-Mark-32px.png)](https://kaizhu256.github.io/node-swgg/build..master..travis-ci.org/app) | [![github.com test-server](https://kaizhu256.github.io/node-swgg/GitHub-Mark-32px.png)](https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/app) | [![github.com test-server](https://kaizhu256.github.io/node-swgg/GitHub-Mark-32px.png)](https://kaizhu256.github.io/node-swgg/build..alpha..travis-ci.org/app)|\n| test-server-heroku : | [![heroku.com test-server](https://kaizhu256.github.io/node-swgg/heroku-logo.75x25.png)](https://h1-swgg-master.herokuapp.com) | [![heroku.com test-server](https://kaizhu256.github.io/node-swgg/heroku-logo.75x25.png)](https://h1-swgg-beta.herokuapp.com) | [![heroku.com test-server](https://kaizhu256.github.io/node-swgg/heroku-logo.75x25.png)](https://h1-swgg-alpha.herokuapp.com)|\n| test-report : | [![test-report](https://kaizhu256.github.io/node-swgg/build..master..travis-ci.org/test-report.badge.svg)](https://kaizhu256.github.io/node-swgg/build..master..travis-ci.org/test-report.html) | [![test-report](https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/test-report.badge.svg)](https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/test-report.html) | [![test-report](https://kaizhu256.github.io/node-swgg/build..alpha..travis-ci.org/test-report.badge.svg)](https://kaizhu256.github.io/node-swgg/build..alpha..travis-ci.org/test-report.html)|\n| coverage : | [![coverage](https://kaizhu256.github.io/node-swgg/build..master..travis-ci.org/coverage.badge.svg)](https://kaizhu256.github.io/node-swgg/build..master..travis-ci.org/coverage.html/index.html) | [![coverage](https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/coverage.badge.svg)](https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/coverage.html/index.html) | [![coverage](https://kaizhu256.github.io/node-swgg/build..alpha..travis-ci.org/coverage.badge.svg)](https://kaizhu256.github.io/node-swgg/build..alpha..travis-ci.org/coverage.html/index.html)|\n| build-artifacts : | [![build-artifacts](https://kaizhu256.github.io/node-swgg/glyphicons_144_folder_open.png)](https://github.com/kaizhu256/node-swgg/tree/gh-pages/build..master..travis-ci.org) | [![build-artifacts](https://kaizhu256.github.io/node-swgg/glyphicons_144_folder_open.png)](https://github.com/kaizhu256/node-swgg/tree/gh-pages/build..beta..travis-ci.org) | [![build-artifacts](https://kaizhu256.github.io/node-swgg/glyphicons_144_folder_open.png)](https://github.com/kaizhu256/node-swgg/tree/gh-pages/build..alpha..travis-ci.org)|\n\n[![npmPackageListing](https://kaizhu256.github.io/node-swgg/build/screenshot.npmPackageListing.svg)](https://github.com/kaizhu256/node-swgg)\n\n![npmPackageDependencyTree](https://kaizhu256.github.io/node-swgg/build/screenshot.npmPackageDependencyTree.svg)\n\n\n\n# table of contents\n1. [cdn download](#cdn-download)\n1. [documentation](#documentation)\n1. [quickstart standalone app](#quickstart-standalone-app)\n1. [quickstart example.js](#quickstart-examplejs)\n1. [extra screenshots](#extra-screenshots)\n1. [package.json](#packagejson)\n1. [changelog of last 50 commits](#changelog-of-last-50-commits)\n1. [internal build script](#internal-build-script)\n1. [misc](#misc)\n\n\n\n# cdn download\n- [https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/app/assets.swgg.html](https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/app/assets.swgg.html)\n- [https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/app/assets.swgg.swagger.json](https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/app/assets.swgg.swagger.json)\n- [https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/app/assets.utility2.rollup.js](https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/app/assets.utility2.rollup.js)\n\n\n\n# documentation\n#### api doc\n- [https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/apidoc.html](https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/apidoc.html)\n\n[![apidoc](https://kaizhu256.github.io/node-swgg/build/screenshot.buildCi.browser.%252Ftmp%252Fbuild%252Fapidoc.html.png)](https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/apidoc.html)\n\n#### cli help\n![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.npmPackageCliHelp.svg)\n\n#### todo\n- add input-type=date and input-type=time\n- update function swaggerJsonFromAjax to inline definitions\n- add swagger.json editor\n- allow parsing of default path-argument, e.g. /aa/{bb=1}/{cc=2}\n- add hmacSha256 support for wechat-pay\n- add property parameters.x-swgg-persist to persist to localStorage\n- revamp datatable with card-expansion ui\n- add authorization-header hook\n- add middlewareAcl\n- add api userPasswordChange\n- add cached version crudGetManyByQueryCached\n- none\n\n#### changelog 2019.9.14\n- npm publish 2019.9.14\n- add replace-string-operation to function templateRender\n- merge polyfills into assets.example.begin.js\n- create function eventEmitterCreate\n- merge class _http.IncomingMessage, _http.ServerResponse into function _http.request\n- jslint - remove unexpected_a hacks\n- jslint - migrate from let-declaration to var-declaration\n- inline lib.puppeteer.js into assets.app.js\n- remove electron dependency\n- revamp function local.ajaxProgressUpdate with window.domElementAjaxProgress1\n- jslint - remove ternary-operator/newline comment preceding bra\n- jslint - remove allow-method-chain-newline hack\n- jslint - upgrade to jslint edition 2019.8.3\n- rename coverage-hack to hack-istanbul, gotoNext to gotoNext, gotoState to gotoState, jslint-hack to hack-jslint\n- istanbul - switch parser from esprima to acorn v6.3.0\n- none\n\n#### this package requires\n- darwin or linux os\n\n#### this swagger-implementation is compliant with json-schema-validation (draft-04)\n- [https://json-schema.org/draft-04/json-schema-validation.html](https://json-schema.org/draft-04/json-schema-validation.html)\n\n#### this swagger-implementation is compliant with OpenAPI Specification (2.0)\n- [https://github.com/OAI/OpenAPI-Specification/blob/3.0.0/versions/2.0.md](https://github.com/OAI/OpenAPI-Specification/blob/3.0.0/versions/2.0.md)\n\n\n\n# quickstart standalone app\n#### to run this example, follow instruction in script below\n- [assets.app.js](https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/app/assets.app.js)\n```shell\n# example.sh\n\n# this shell script will download and run a web-demo of swgg as a standalone app\n\n# 1. download standalone app\ncurl -O https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/app/assets.app.js\n# 2. run standalone app\nPORT=8081 node ./assets.app.js\n# 3. open a browser to http://127.0.0.1:8081 and play with web-demo\n# 4. edit file assets.app.js to suit your needs\n```\n\n#### output from browser\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.testExampleSh.browser.%252F.png)](https://kaizhu256.github.io/node-swgg/build/app/assets.example.html)\n\n#### output from shell\n![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.testExampleSh.svg)\n\n\n\n# quickstart example.js\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.testExampleJs.browser.%252F.png)](https://kaizhu256.github.io/node-swgg/build/app/assets.example.html)\n\n#### to run this example, follow instruction in script below\n- [example.js](https://kaizhu256.github.io/node-swgg/build..beta..travis-ci.org/example.js)\n```javascript\n/*\nexample.js\n\nthis script will run a web-demo of swgg\n\ninstruction\n    1. save this script as example.js\n    2. run shell-command:\n        $ npm install swgg && \\\n            PORT=8081 node example.js\n    3. open a browser to http://127.0.0.1:8081 and play with web-demo\n    4. edit this script to suit your needs\n*/\n\n\n\n/* istanbul instrument in package swgg */\n/* istanbul ignore next */\n/* jslint utility2:true */\n(function (globalThis) {\n    \"use strict\";\n    let ArrayPrototypeFlat;\n    let TextXxcoder;\n    let consoleError;\n    let local;\n    // init globalThis\n    globalThis.globalThis = globalThis.globalThis || globalThis;\n    // init debug_inline\n    if (!globalThis[\"debug\\u0049nline\"]) {\n        consoleError = console.error;\n        globalThis[\"debug\\u0049nline\"] = function (...argList) {\n        /*\n         * this function will both print <argList> to stderr\n         * and return <argList>[0]\n         */\n            // debug argList\n            globalThis[\"debug\\u0049nlineArgList\"] = argList;\n            consoleError(\"\\n\\ndebug\\u0049nline\");\n            consoleError.apply(console, argList);\n            consoleError(\"\\n\");\n            // return arg0 for inspection\n            return argList[0];\n        };\n    }\n    // polyfill\n    ArrayPrototypeFlat = function (depth) {\n    /*\n     * this function will polyfill Array.prototype.flat\n     * https://github.com/jonathantneal/array-flat-polyfill\n     */\n        depth = (\n            globalThis.isNaN(depth)\n            ? 1\n            : Number(depth)\n        );\n        if (!depth) {\n            return Array.prototype.slice.call(this);\n        }\n        return Array.prototype.reduce.call(this, function (acc, cur) {\n            if (Array.isArray(cur)) {\n                // recurse\n                acc.push.apply(acc, ArrayPrototypeFlat.call(cur, depth - 1));\n            } else {\n                acc.push(cur);\n            }\n            return acc;\n        }, []);\n    };\n    Array.prototype.flat = Array.prototype.flat || ArrayPrototypeFlat;\n    Array.prototype.flatMap = Array.prototype.flatMap || function flatMap(\n        ...argList\n    ) {\n    /*\n     * this function will polyfill Array.prototype.flatMap\n     * https://github.com/jonathantneal/array-flat-polyfill\n     */\n        return this.map(...argList).flat();\n    };\n    (function () {\n        try {\n            globalThis.TextDecoder = (\n                globalThis.TextDecoder || require(\"util\").TextDecoder\n            );\n            globalThis.TextEncoder = (\n                globalThis.TextEncoder || require(\"util\").TextEncoder\n            );\n        } catch (ignore) {}\n    }());\n    TextXxcoder = function () {\n    /*\n     * this function will polyfill TextDecoder/TextEncoder\n     * https://gist.github.com/Yaffle/5458286\n     */\n        return;\n    };\n    TextXxcoder.prototype.decode = function (octets) {\n    /*\n     * this function will polyfill TextDecoder.prototype.decode\n     * https://gist.github.com/Yaffle/5458286\n     */\n        let bytesNeeded;\n        let codePoint;\n        let ii;\n        let kk;\n        let octet;\n        let string;\n        string = \"\";\n        ii = 0;\n        while (ii < octets.length) {\n            octet = octets[ii];\n            bytesNeeded = 0;\n            codePoint = 0;\n            if (octet <= 0x7F) {\n                bytesNeeded = 0;\n                codePoint = octet & 0xFF;\n            } else if (octet <= 0xDF) {\n                bytesNeeded = 1;\n                codePoint = octet & 0x1F;\n            } else if (octet <= 0xEF) {\n                bytesNeeded = 2;\n                codePoint = octet & 0x0F;\n            } else if (octet <= 0xF4) {\n                bytesNeeded = 3;\n                codePoint = octet & 0x07;\n            }\n            if (octets.length - ii - bytesNeeded > 0) {\n                kk = 0;\n                while (kk < bytesNeeded) {\n                    octet = octets[ii + kk + 1];\n                    codePoint = (codePoint << 6) | (octet & 0x3F);\n                    kk += 1;\n                }\n            } else {\n                codePoint = 0xFFFD;\n                bytesNeeded = octets.length - ii;\n            }\n            string += String.fromCodePoint(codePoint);\n            ii += bytesNeeded + 1;\n        }\n        return string;\n    };\n    TextXxcoder.prototype.encode = function (string) {\n    /*\n     * this function will polyfill TextEncoder.prototype.encode\n     * https://gist.github.com/Yaffle/5458286\n     */\n        let bits;\n        let cc;\n        let codePoint;\n        let ii;\n        let length;\n        let octets;\n        octets = [];\n        length = string.length;\n        ii = 0;\n        while (ii < length) {\n            codePoint = string.codePointAt(ii);\n            cc = 0;\n            bits = 0;\n            if (codePoint <= 0x0000007F) {\n                cc = 0;\n                bits = 0x00;\n            } else if (codePoint <= 0x000007FF) {\n                cc = 6;\n                bits = 0xC0;\n            } else if (codePoint <= 0x0000FFFF) {\n                cc = 12;\n                bits = 0xE0;\n            } else if (codePoint <= 0x001FFFFF) {\n                cc = 18;\n                bits = 0xF0;\n            }\n            octets.push(bits | (codePoint >> cc));\n            cc -= 6;\n            while (cc >= 0) {\n                octets.push(0x80 | ((codePoint >> cc) & 0x3F));\n                cc -= 6;\n            }\n            ii += (\n                codePoint >= 0x10000\n                ? 2\n                : 1\n            );\n        }\n        return octets;\n    };\n    globalThis.TextDecoder = globalThis.TextDecoder || TextXxcoder;\n    globalThis.TextEncoder = globalThis.TextEncoder || TextXxcoder;\n    // init local\n    local = {};\n    local.local = local;\n    globalThis.globalLocal = local;\n    // init isBrowser\n    local.isBrowser = (\n        typeof globalThis.XMLHttpRequest === \"function\"\n        && globalThis.navigator\n        && typeof globalThis.navigator.userAgent === \"string\"\n    );\n    // init function\n    local.assertOrThrow = function (passed, message) {\n    /*\n     * this function will throw err.<message> if <passed> is falsy\n     */\n        let err;\n        if (passed) {\n            return;\n        }\n        err = (\n            (\n                message\n                && typeof message.message === \"string\"\n                && typeof message.stack === \"string\"\n            )\n            // if message is errObj, then leave as is\n            ? message\n            : new Error(\n                typeof message === \"string\"\n                // if message is a string, then leave as is\n                ? message\n                // else JSON.stringify message\n                : JSON.stringify(message, null, 4)\n            )\n        );\n        throw err;\n    };\n    local.fsRmrfSync = function (dir) {\n    /*\n     * this function will sync \"rm -rf\" <dir>\n     */\n        let child_process;\n        try {\n            child_process = require(\"child_process\");\n        } catch (ignore) {\n            return;\n        }\n        child_process.spawnSync(\"rm\", [\n            \"-rf\", dir\n        ], {\n            stdio: [\n                \"ignore\", 1, 2\n            ]\n        });\n    };\n    local.fsWriteFileWithMkdirpSync = function (file, data) {\n    /*\n     * this function will sync write <data> to <file> with \"mkdir -p\"\n     */\n        let fs;\n        try {\n            fs = require(\"fs\");\n        } catch (ignore) {\n            return;\n        }\n        // try to write file\n        try {\n            fs.writeFileSync(file, data);\n        } catch (ignore) {\n            // mkdir -p\n            require(\"child_process\").spawnSync(\n                \"mkdir\",\n                [\n                    \"-p\", require(\"path\").dirname(file)\n                ],\n                {\n                    stdio: [\n                        \"ignore\", 1, 2\n                    ]\n                }\n            );\n            // rewrite file\n            fs.writeFileSync(file, data);\n        }\n    };\n    local.functionOrNop = function (fnc) {\n    /*\n     * this function will if <fnc> exists,\n     * return <fnc>,\n     * else return <nop>\n     */\n        return fnc || local.nop;\n    };\n    local.nop = function () {\n    /*\n     * this function will do nothing\n     */\n        return;\n    };\n    local.objectAssignDefault = function (target, source) {\n    /*\n     * this function will if items from <target> are\n     * null, undefined, or empty-string,\n     * then overwrite them with items from <source>\n     */\n        target = target || {};\n        Object.keys(source || {}).forEach(function (key) {\n            if (\n                target[key] === null\n                || target[key] === undefined\n                || target[key] === \"\"\n            ) {\n                target[key] = target[key] || source[key];\n            }\n        });\n        return target;\n    };\n    local.value = function (val) {\n    /*\n     * this function will return <val>\n     */\n        return val;\n    };\n    local.valueOrEmptyList = function (val) {\n    /*\n     * this function will return <val> or []\n     */\n        return val || [];\n    };\n    local.valueOrEmptyObject = function (val) {\n    /*\n     * this function will return <val> or {}\n     */\n        return val || {};\n    };\n    local.valueOrEmptyString = function (val) {\n    /*\n     * this function will return <val> or \"\"\n     */\n        return val || \"\";\n    };\n    // require builtin\n    if (!local.isBrowser) {\n        local.assert = require(\"assert\");\n        local.buffer = require(\"buffer\");\n        local.child_process = require(\"child_process\");\n        local.cluster = require(\"cluster\");\n        local.crypto = require(\"crypto\");\n        local.dgram = require(\"dgram\");\n        local.dns = require(\"dns\");\n        local.domain = require(\"domain\");\n        local.events = require(\"events\");\n        local.fs = require(\"fs\");\n        local.http = require(\"http\");\n        local.https = require(\"https\");\n        local.net = require(\"net\");\n        local.os = require(\"os\");\n        local.path = require(\"path\");\n        local.querystring = require(\"querystring\");\n        local.readline = require(\"readline\");\n        local.repl = require(\"repl\");\n        local.stream = require(\"stream\");\n        local.string_decoder = require(\"string_decoder\");\n        local.timers = require(\"timers\");\n        local.tls = require(\"tls\");\n        local.tty = require(\"tty\");\n        local.url = require(\"url\");\n        local.util = require(\"util\");\n        local.vm = require(\"vm\");\n        local.zlib = require(\"zlib\");\n    }\n}((typeof globalThis === \"object\" && globalThis) || (function () {\n    return Function(\"return this\")(); // jslint ignore:line\n}())));\n\n\n\n(function (local) {\n\"use strict\";\n\n\n\n// run shared js-env code - init-before\n(function () {\n// init local\nlocal = (\n    globalThis.utility2_rollup\n    || globalThis.utility2_swgg\n    || require(\"swgg\")\n);\n// init exports\nglobalThis.local = local;\n// init assets\nlocal.assetsDict[\"/assets.swgg.swagger.json\"] = (\n    local.assetsDict[\"/assets.swgg.swagger.petstore.json\"]\n);\n// load db\nlocal.db.dbLoad(function () {\n    console.error(\"db loaded from \" + local.storageDir);\n});\n}());\n\n\n\n// run shared js-env code - function\n(function () {\nlocal.middlewareCrudCustom = function (req, response, nextMiddleware) {\n/*\n * this function will run the middleware to run custom-crud-operations\n */\n    let crud;\n    let opt;\n    let result;\n    opt = {};\n    local.gotoNext(opt, function (err, data) {\n        switch (opt.gotoState) {\n        case 1:\n            crud = req.swgg.crud;\n            switch (crud.crudType[0]) {\n            // hack-istanbul - test err handling-behavior\n            case \"crudErrorPre\":\n                opt.gotoNext(local.errDefault);\n                return;\n            case \"getInventory\":\n                crud.dbTable.crudGetManyByQuery({\n                    query: {},\n                    projection: [\n                        \"status\"\n                    ]\n                }, opt.gotoNext);\n                break;\n            default:\n                opt.gotoState = Infinity;\n                opt.gotoNext();\n            }\n            break;\n        case 2:\n            switch (crud.crudType[0]) {\n            case \"getInventory\":\n                result = {};\n                data.forEach(function (element) {\n                    result[element.status] = result[element.status] || 0;\n                    result[element.status] += 1;\n                });\n                opt.gotoNext(null, result);\n                break;\n            }\n            break;\n        case 3:\n            local.swgg.serverRespondJsonapi(req, response, err, data);\n            break;\n        default:\n            nextMiddleware(err, data);\n        }\n    });\n    opt.gotoState = 0;\n    opt.gotoNext();\n};\n\nlocal.middlewareInitCustom = function (req, response, nextMiddleware) {\n/*\n * this function will run the middleware to custom-init <req> and <res>\n */\n    // enable cors\n    // https://en.wikipedia.org/wiki/Cross-origin_resource_sharing\n    response.setHeader(\n        \"Access-Control-Allow-Methods\",\n        \"DELETE,GET,HEAD,OPTIONS,PATCH,POST,PUT\"\n    );\n    response.setHeader(\"Access-Control-Allow-Origin\", \"*\");\n    // init content-type\n    response.setHeader(\"Content-Type\", \"application/json; charset=UTF-8\");\n    // ignore .map files\n    if (req.urlParsed.pathname.slice(-4) === \".map\") {\n        local.serverRespondDefault(req, response, 404);\n        return;\n    }\n    nextMiddleware();\n};\n}());\n\n\n\n// run shared js-env code - init-after\n(function () {\n// init assets\n/* jslint ignore:start */\nlocal.assetsDict['/assets.index.template.html'] = local.assetsDict['/assets.swgg.html']\n    .replace((/\\n<\\/script>\\n/), '\\\n\\n\\\n</script>\\n\\\n<h1>\\n\\\n<!-- utility2-comment\\n\\\n<a\\n\\\n    {{#if env.npm_package_homepage}}\\n\\\n    href=\"{{env.npm_package_homepage}}\"\\n\\\n    {{/if env.npm_package_homepage}}\\n\\\n    target=\"_blank\"\\n\\\n>\\n\\\nutility2-comment -->\\n\\\n    {{env.npm_package_name}} ({{env.npm_package_version}})\\n\\\n<!-- utility2-comment\\n\\\n</a>\\n\\\nutility2-comment -->\\n\\\n</h1>\\n\\\n<h3>{{env.npm_package_description}}</h3>\\n\\\n<!-- utility2-comment\\n\\\n<a class=\"button\" download href=\"assets.app.js\">download standalone app</a><br>\\n\\\n<button class=\"button\" data-onevent=\"testRunBrowser\" id=\"buttonTestRun1\">run internal test</button><br>\\n\\\n<div class=\"uiAnimateSlide\" id=\"htmlTestReport1\" style=\"border-bottom: 0; border-top: 0; margin-bottom: 0; margin-top: 0; max-height: 0; padding-bottom: 0; padding-top: 0;\"></div>\\n\\\nutility2-comment -->\\n\\\n\\n\\\n\\n\\\n\\n\\\n<!-- custom-html-start -->\\n\\\n<button class=\"button\" data-onevent=\"onEventDomDb\" data-onevent-db=\"dbReset\">reset database</button><br>\\n\\\n<button class=\"button\" data-onevent=\"onEventDomDb\" data-onevent-db=\"dbExport\">export database -&gt; file</button><br>\\n\\\n<button class=\"button\" data-onevent=\"onEventDomDb\" data-onevent-db=\"dbImport\">import database &lt;- file</button><br>\\n\\\n</button><br>\\n\\\n<input class=\"onchange zeroPixel\" type=\"file\" id=\"dbImportInput1\">\\n\\\n')\n            .replace('assets.swgg.swagger.json', 'assets.swgg.swagger.server.json')\n            .replace((/\\n<script src=[\\S\\s]*\\n<\\/html>\\n/), '\\\n\\n\\\n<!-- custom-html-end -->\\n\\\n\\n\\\n\\n\\\n\\n\\\n<!-- utility2-comment\\n\\\n{{#if isRollup}}\\n\\\n<script src=\"assets.app.js\"></script>\\n\\\n{{#unless isRollup}}\\n\\\n<script src=\"assets.utility2.rollup.js\"></script>\\n\\\n<script>window.utility2_onReadyBefore.counter += 1;</script>\\n\\\n<script src=\"jsonp.utility2.stateInit?callback=window.utility2.stateInit\"></script>\\n\\\nutility2-comment -->\\n\\\n<script src=\"assets.swgg.js\"></script>\\n\\\n<script src=\"assets.example.js\"></script>\\n\\\n<script src=\"assets.test.js\"></script>\\n\\\n<script>window.utility2_onReadyBefore();</script>\\n\\\n<!-- utility2-comment\\n\\\n{{/if isRollup}}\\n\\\nutility2-comment -->\\n\\\n<script>\\n\\\n/* jslint utility2:true */\\n\\\n(function () {\\n\\\n\"use strict\";\\n\\\nlet htmlTestReport1;\\n\\\nlet local;\\n\\\nhtmlTestReport1 = document.querySelector(\"#htmlTestReport1\");\\n\\\nlocal = window.utility2;\\n\\\nif (!(htmlTestReport1 && local)) {\\n\\\n    return;\\n\\\n}\\n\\\nlocal.on(\"utility2.testRunProgressUpdate\", function (testReport) {\\n\\\n    htmlTestReport1.innerHTML = local.testReportMerge(testReport, {});\\n\\\n});\\n\\\nlocal.on(\"utility2.testRunStart\", function (testReport) {\\n\\\n    local.uiAnimateSlideDown(htmlTestReport1);\\n\\\n    htmlTestReport1.innerHTML = local.testReportMerge(testReport, {});\\n\\\n});\\n\\\n}());\\n\\\n</script>\\n\\\n</body>\\n\\\n</html>\\n\\\n');\n/* jslint ignore:end */\n\n\n\n// init middleware\nlocal.middlewareList = [\n    local.middlewareInit,\n    local.middlewareForwardProxy,\n    local.middlewareAssetsCached,\n    local.swgg.middlewareRouter,\n    local.swgg.middlewareUserLogin,\n    local.middlewareInitCustom,\n    local.middlewareJsonpStateInit,\n    local.middlewareBodyRead,\n    local.swgg.middlewareBodyParse,\n    local.swgg.middlewareValidate,\n    local.middlewareCrudCustom,\n    local.swgg.middlewareCrudBuiltin,\n    local.swgg.middlewareCrudEnd\n];\nlocal.utility2.middlewareList = local.middlewareList;\n// run test-server\nlocal.testRunServer(local);\n/* validateLineSortedReset */\n// init petstore-api - frontend\nlocal.tmp = JSON.parse(local.assetsDict[\"/assets.swgg.swagger.petstore.json\"]);\ndelete local.tmp.basePath;\ndelete local.tmp.host;\ndelete local.tmp.schemes;\nlocal.swgg.apiUpdate(local.tmp);\n// init petstore-api - backend\nlocal.swgg.apiUpdate({\n    definitions: {\n        File: {\n            allOf: [\n                {\n                    $ref: \"#/definitions/BuiltinFile\"\n                }\n            ]\n        },\n        Pet: {\n            properties: {\n                _id: {\n                    readOnly: true,\n                    type: \"string\"\n                },\n                _timeCreated: {\n                    format: \"date-time\",\n                    readOnly: true,\n                    type: \"string\"\n                },\n                _timeUpdated: {\n                    format: \"date-time\",\n                    readOnly: true,\n                    type: \"string\"\n                },\n                id: {\n                    default: 1,\n                    minimum: 1\n                }\n            }\n        },\n        Order: {\n            properties: {\n                _id: {\n                    readOnly: true,\n                    type: \"string\"\n                },\n                _timeCreated: {\n                    format: \"date-time\",\n                    readOnly: true,\n                    type: \"string\"\n                },\n                _timeUpdated: {\n                    format: \"date-time\",\n                    readOnly: true,\n                    type: \"string\"\n                },\n                id: {\n                    default: 1,\n                    minimum: 1\n                }\n            }\n        },\n        User: {\n            allOf: [\n                {\n                    $ref: \"#/definitions/BuiltinUser\"\n                }\n            ],\n            properties: {\n                _id: {\n                    readOnly: true,\n                    type: \"string\"\n                },\n                _timeCreated: {\n                    format: \"date-time\",\n                    readOnly: true,\n                    type: \"string\"\n                },\n                _timeUpdated: {\n                    format: \"date-time\",\n                    readOnly: true,\n                    type: \"string\"\n                },\n                email: {\n                    default: \"a@a.com\",\n                    format: \"email\"\n                },\n                id: {\n                    default: 1,\n                    minimum: 1\n                }\n            }\n        }\n    },\n    tags: [\n        {\n            description: \"builtin-file model\",\n            name: \"file\"\n        }\n    ],\n    \"x-swgg-apiDict\": {\n        \"operationId.file.crudCountManyByQuery\": {\n            _schemaName: \"File\"\n        },\n        \"operationId.file.crudSetOneById.id.id\": {\n            _schemaName: \"File\"\n        },\n        \"operationId.file.crudGetManyByQuery\": {\n            _schemaName: \"File\"\n        },\n        \"operationId.file.crudRemoveOneById.id.id\": {\n            _schemaName: \"File\"\n        },\n        \"operationId.file.crudUpdateOneById.id.id\": {\n            _schemaName: \"File\"\n        },\n        \"operationId.file.fileGetOneById.id.id\": {\n            _schemaName: \"File\"\n        },\n        \"operationId.file.fileUploadManyByForm.1\": {\n            _schemaName: \"File\"\n        },\n        \"operationId.addPet\": {\n            _crudType: [\n                \"crudSetOneById\", \"petId\", \"id\"\n            ],\n            _schemaName: \"Pet\"\n        },\n        \"operationId.pet.crudGetManyByQuery\": {\n            _schemaName: \"Pet\"\n        },\n        \"operationId.deletePet\": {\n            _crudType: [\n                \"crudRemoveOneById\", \"petId\", \"id\"\n            ],\n            _schemaName: \"Pet\"\n        },\n        \"operationId.findPetsByStatus\": {\n            _crudType: [\n                \"crudGetManyByQuery\"\n            ],\n            _queryWhere: \"{\\\"status\\\":{\\\"$in\\\":{{status jsonStringify}}}}\",\n            _schemaName: \"Pet\"\n        },\n        \"operationId.findPetsByTags\": {\n            _crudType: [\n                \"crudGetManyByQuery\"\n            ],\n            _queryWhere: \"{\\\"tags.name\\\":{\\\"$in\\\":{{tags jsonStringify}}}}\",\n            _schemaName: \"Pet\"\n        },\n        \"operationId.getPetById\": {\n            _crudType: [\n                \"crudGetOneById\", \"petId\", \"id\"\n            ],\n            _schemaName: \"Pet\"\n        },\n        \"operationId.updatePet\": {\n            _crudType: [\n                \"crudUpdateOneById\", \"petId\", \"id\"\n            ],\n            _schemaName: \"Pet\"\n        },\n        \"operationId.updatePetWithForm\": {\n            _crudType: [\n                \"crudUpdateOneById\", \"petId\", \"id\"\n            ],\n            _schemaName: \"Pet\"\n        },\n        \"operationId.uploadFile\": {\n            _crudType: [\n                \"fileUploadManyByForm\"\n            ],\n            _schemaName: \"User\"\n        },\n        \"operationId.store.crudGetManyByQuery\": {\n            _schemaName: \"Order\"\n        },\n        \"operationId.store.crudUpdateOneById.id.id\": {\n            _schemaName: \"Order\"\n        },\n        \"operationId.deleteOrder\": {\n            _crudType: [\n                \"crudRemoveOneById\", \"orderId\", \"id\"\n            ],\n            _schemaName: \"Order\"\n        },\n        \"operationId.getInventory\": {\n            _schemaName: \"Order\"\n        },\n        \"operationId.getOrderById\": {\n            _crudType: [\n                \"crudGetOneById\", \"orderId\", \"id\"\n            ],\n            _schemaName: \"Order\"\n        },\n        \"operationId.placeOrder\": {\n            _crudType: [\n                \"crudSetOneById\", \"orderId\", \"id\"\n            ],\n            _schemaName: \"Order\"\n        },\n        \"operationId.createUser\": {\n            _crudType: [\n                \"crudSetOneById\", \"username\", \"username\"\n            ],\n            _schemaName: \"User\"\n        },\n        \"operationId.createUsersWithArrayInput\": {\n            _crudType: [\n                \"crudSetManyById\"\n            ],\n            _schemaName: \"User\"\n        },\n        \"operationId.createUsersWithListInput\": {\n            _crudType: [\n                \"crudSetManyById\"\n            ],\n            _schemaName: \"User\"\n        },\n        \"operationId.user.crudCountManyByQuery\": {\n            _schemaName: \"User\"\n        },\n        \"operationId.user.crudSetOneById.username.username\": {\n            _schemaName: \"User\"\n        },\n        \"operationId.user.crudRemoveOneById.username.username\": {\n            _schemaName: \"User\"\n        },\n        \"operationId.user.crudGetManyByQuery\": {\n            _schemaName: \"User\"\n        },\n        \"operationId.user.crudUpdateOneById.username.username\": {\n            _schemaName: \"User\"\n        },\n        \"operationId.deleteUser\": {\n            _crudType: [\n                \"crudRemoveOneById\", \"username\", \"username\"\n            ],\n            _schemaName: \"User\"\n        },\n        \"operationId.getUserByName\": {\n            _crudType: [\n                \"crudGetOneById\", \"username\", \"username\"\n            ],\n            _schemaName: \"User\"\n        },\n        \"operationId.loginUser\": {\n            _crudType: [\n                \"userLoginByPassword\"\n            ],\n            _schemaName: \"User\"\n        },\n        \"operationId.logoutUser\": {\n            _crudType: [\n                \"userLogout\"\n            ],\n            _schemaName: \"User\"\n        },\n        \"operationId.updateUser\": {\n            _crudType: [\n                \"crudUpdateOneById\", \"username\", \"username\"\n            ],\n            _schemaName: \"User\"\n        },\n        \"operationId.user.userLoginByPassword\": {\n            _schemaName: \"User\"\n        },\n        \"operationId.user.userLogout\": {\n            _schemaName: \"User\"\n        }\n    }\n});\n/* validateLineSortedReset */\n// init db\nglobalThis.utility2_dbSeedList = [{\n    dbRowList: [\n        {\n            id: \"testCase_swaggerUiLogoSmall\",\n            fileBlob: local.swgg.templateSwaggerUiLogoSmallBase64,\n            fileContentType: \"image/png\",\n            fileDescription: \"swagger-ui logo\",\n            fileFilename: \"swaggerUiLogoSmall.png\"\n        }\n    ],\n    idIndexCreateList: [\n        {\n            name: \"id\"\n        }\n    ],\n    name: \"File\"\n}, {\n    dbRowList: local.swgg.dbRowListRandomCreate({\n        dbRowList: [\n            {\n                id: 0,\n                name: \"birdie\",\n                photoUrls: [],\n                status: \"available\",\n                tags: [\n                    {\n                        name: \"bird\"\n                    }\n                ]\n            }, {\n                id: 1,\n                name: \"doggie\",\n                status: \"pending\",\n                photoUrls: [],\n                tags: [\n                    {\n                        name: \"dog\"\n                    }\n                ]\n            }, {\n                id: 2,\n                name: \"fishie\",\n                photoUrls: [],\n                status: \"sold\",\n                tags: [\n                    {\n                        name: \"fish\"\n                    }\n                ]\n            }\n        ],\n        // init 100 extra random pets\n        length: 100,\n        override: function (opt) {\n            return {\n                id: opt.ii + 100,\n                name: local.listGetElementRandom([\n                    \"birdie\", \"doggie\", \"fishie\"\n                ]) + \"-\" + (opt.ii + 100),\n                tags: [\n                    {\n                        name: local.listGetElementRandom([\n                            \"female\", \"male\"\n                        ])\n                    }\n                ]\n            };\n        },\n        schema: local.swgg.swaggerJson.definitions.Pet\n    }),\n    idIndexCreateList: [\n        {\n            isInteger: true,\n            name: \"id\"\n        }\n    ],\n    name: \"Pet\"\n}, {\n    dbRowList: local.swgg.dbRowListRandomCreate({\n        dbRowList: [\n            {\n                id: 0,\n                petId: 0,\n                status: \"available\"\n            }, {\n                id: 1,\n                petId: 1,\n                status: \"pending\"\n            }, {\n                id: 2,\n                petId: 2,\n                status: \"sold\"\n            }\n        ],\n        // init 100 extra random orders\n        length: 100,\n        override: function (opt) {\n            return {\n                id: opt.ii + 100,\n                petId: opt.ii + 100\n            };\n        },\n        schema: local.swgg.swaggerJson.definitions.Order\n    }),\n    idIndexCreateList: [\n        {\n            isInteger: true,\n            name: \"id\"\n        }\n    ],\n    name: \"Order\"\n}, {\n    dbRowList: local.swgg.dbRowListRandomCreate({\n        dbRowList: [\n            {\n                email: \"admin@admin.com\",\n                firstName: \"admin\",\n                id: 0,\n                lastName: \"\",\n                password: local.sjclHashScryptCreate(\"secret\"),\n                phone: \"1234-5678\",\n                username: \"admin\"\n            }, {\n                email: \"jane@doe.com\",\n                firstName: \"jane\",\n                id: 1,\n                lastName: \"doe\",\n                password: local.sjclHashScryptCreate(\"secret\"),\n                phone: \"1234-5678\",\n                username: \"jane.doe\"\n            }, {\n                email: \"john@doe.com\",\n                firstName: \"john\",\n                id: 2,\n                lastName: \"doe\",\n                password: local.sjclHashScryptCreate(\"secret\"),\n                phone: \"1234-5678\",\n                username: \"john.doe\"\n            }\n        ],\n        // init 100 extra random users\n        length: 100,\n        override: function (opt) {\n            return {\n                firstName: local.listGetElementRandom([\n                    \"alice\", \"bob\", \"jane\", \"john\"\n                ]) + \"-\" + (opt.ii + 100),\n                id: opt.ii + 100,\n                lastName: local.listGetElementRandom([\n                    \"doe\", \"smith\"\n                ]) + \"-\" + (opt.ii + 100),\n                password: local.sjclHashScryptCreate(\"secret\"),\n                tags: [\n                    {\n                        name: local.listGetElementRandom([\n                            \"female\", \"male\"\n                        ])\n                    }, {\n                        name: Math.random().toString(36).slice(2)\n                    }\n                ]\n            };\n        },\n        schema: local.swgg.swaggerJson.definitions.User\n    }),\n    idIndexCreateList: [\n        {\n            name: \"email\"\n        }, {\n            name: \"id\",\n            isInteger: true\n        }, {\n            name: \"username\"\n        }\n    ],\n    name: \"User\"\n}];\n// seed db\nlocal.db.dbSeed(globalThis.utility2_dbSeedList, local.onErrorThrow);\n// init serverLocal\nlocal.utility2.serverLocalUrlTest = function (url) {\n    url = local.urlParse(url).pathname;\n    return (\n        local.isBrowser\n        && !local.env.npm_config_mode_backend\n        && (\n            /^\\/test\\.|\\/api\\/v0\\//\n        ).test(url)\n    );\n};\n}());\n\n\n\n/* istanbul ignore next */\n// run browser js-env code - init-test\n(function () {\nif (!local.isBrowser) {\n    return;\n}\n// log stderr and stdout to #outputStdout1\n[\"error\", \"log\"].forEach(function (key) {\n    let elem;\n    let fnc;\n    elem = document.querySelector(\n        \"#outputStdout1\"\n    );\n    if (!elem) {\n        return;\n    }\n    fnc = console[key];\n    console[key] = function (...argList) {\n        fnc.apply(console, argList);\n        // append text to #outputStdout1\n        elem.textContent += argList.map(function (arg) {\n            return (\n                typeof arg === \"string\"\n                ? arg\n                : JSON.stringify(arg, null, 4)\n            );\n        }).join(\" \").replace((\n            /\\u001b\\[\\d*m/g\n        ), \"\") + \"\\n\";\n        // scroll textarea to bottom\n        elem.scrollTop = elem.scrollHeight;\n    };\n});\nlocal.objectAssignDefault(local, globalThis.domOnEventDelegateDict);\nglobalThis.domOnEventDelegateDict = local;\nlocal.onEventDomDb = local.db && local.db.onEventDomDb;\nlocal.testRunBrowser = function (evt) {\n/*\n * this function will run browser-tests\n */\n    switch (\n        !evt.ctrlKey\n        && !evt.metaKey\n        && (\n            evt.modeInit\n            || (evt.type + \".\" + (evt.target && evt.target.id))\n        )\n    ) {\n    // custom-case\n    case true:\n        // init ui\n        globalThis.utility2_onReadyBefore.counter += 1;\n        local.swgg.uiEventListenerDict.onEventUiReload(\n            null,\n            globalThis.utility2_onReadyBefore\n        );\n        return;\n    // run browser-tests\n    default:\n        if (\n            (evt.target && evt.target.id) !== \"buttonTestRun1\"\n            && !(evt.modeInit && (\n                /\\bmodeTest=1\\b/\n            ).test(location.search))\n        ) {\n            return;\n        }\n        // show browser-tests\n        if (document.querySelector(\n            \"#htmlTestReport1\"\n        ).style.maxHeight === \"0px\") {\n            globalThis.domOnEventDelegateDict.domOnEventResetOutput();\n            local.uiAnimateSlideDown(document.querySelector(\n                \"#htmlTestReport1\"\n            ));\n            document.querySelector(\n                \"#buttonTestRun1\"\n            ).textContent = \"hide internal test\";\n            local.modeTest = 1;\n            local.testRunDefault(local);\n            return;\n        }\n        // hide browser-tests\n        local.uiAnimateSlideUp(document.querySelector(\n            \"#htmlTestReport1\"\n        ));\n        document.querySelector(\n            \"#buttonTestRun1\"\n        ).textContent = \"run internal test\";\n    }\n};\n\nlocal.testRunBrowser({\n    modeInit: true\n});\n}());\n\n\n\n/* istanbul ignore next */\n// run node js-env code - init-test\n(function () {\nif (local.isBrowser) {\n    return;\n}\n// init exports\nmodule.exports = local;\n/* validateLineSortedReset */\n// init assets\nlocal.assetsDict = local.assetsDict || {};\n[\n    \"assets.index.template.html\",\n    \"assets.swgg.swagger.json\",\n    \"assets.swgg.swagger.server.json\"\n].forEach(function (file) {\n    file = \"/\" + file;\n    local.assetsDict[file] = local.assetsDict[file] || \"\";\n    if (local.fs.existsSync(local.__dirname + file)) {\n        local.assetsDict[file] = local.fs.readFileSync(\n            local.__dirname + file,\n            \"utf8\"\n        );\n    }\n});\n/* validateLineSortedReset */\n/* jslint ignore:start */\nlocal.assetsDict[\"/assets.swgg.js\"] =\n    local.assetsDict[\"/assets.swgg.js\"] ||\n    local.fs.readFileSync(local.__dirname + \"/lib.swgg.js\", \"utf8\"\n).replace((/^#!\\//), \"// \");\n/* jslint ignore:end */\n/* validateLineSortedReset */\nlocal.assetsDict[\"/\"] = local.assetsDict[\n    \"/assets.index.template.html\"\n].replace((\n    /\\{\\{env\\.(\\w+?)\\}\\}/g\n), function (match0, match1) {\n    switch (match1) {\n    case \"npm_package_description\":\n        return \"the greatest app in the world!\";\n    case \"npm_package_name\":\n        return \"swgg\";\n    case \"npm_package_nameLib\":\n        return \"swgg\";\n    case \"npm_package_version\":\n        return \"0.0.1\";\n    default:\n        return match0;\n    }\n});\nlocal.assetsDict[\"/assets.example.html\"] = local.assetsDict[\"/\"];\nlocal.assetsDict[\"/index.html\"] = local.assetsDict[\"/\"];\n// init cli\nif (module !== require.main || globalThis.utility2_rollup) {\n    return;\n}\n/* validateLineSortedReset */\nlocal.assetsDict[\"/assets.example.js\"] = (\n    local.assetsDict[\"/assets.example.js\"]\n    || local.fs.readFileSync(__filename, \"utf8\")\n);\nlocal.assetsDict[\"/favicon.ico\"] = local.assetsDict[\"/favicon.ico\"] || \"\";\n// if $npm_config_timeout_exit exists,\n// then exit this process after $npm_config_timeout_exit ms\nif (Number(process.env.npm_config_timeout_exit)) {\n    setTimeout(process.exit, Number(process.env.npm_config_timeout_exit));\n}\n// start server\nif (globalThis.utility2_serverHttp1) {\n    return;\n}\nprocess.env.PORT = process.env.PORT || \"8081\";\nconsole.error(\"http-server listening on port \" + process.env.PORT);\nlocal.http.createServer(function (req, res) {\n    req.urlParsed = local.url.parse(req.url);\n    if (local.assetsDict[req.urlParsed.pathname] !== undefined) {\n        res.end(local.assetsDict[req.urlParsed.pathname]);\n        return;\n    }\n    res.statusCode = 404;\n    res.end();\n}).listen(process.env.PORT);\n}());\n}());\n```\n\n#### output from browser\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.testExampleJs.browser.%252F.png)](https://kaizhu256.github.io/node-swgg/build/app/assets.example.html)\n\n#### output from shell\n![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.testExampleJs.svg)\n\n\n\n# extra screenshots\n1. [https://kaizhu256.github.io/node-swgg/build/screenshot.buildCi.browser.%252Ftmp%252Fbuild%252Fapidoc.html.png](https://kaizhu256.github.io/node-swgg/build/screenshot.buildCi.browser.%252Ftmp%252Fbuild%252Fapidoc.html.png)\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.buildCi.browser.%252Ftmp%252Fbuild%252Fapidoc.html.png)](https://kaizhu256.github.io/node-swgg/build/screenshot.buildCi.browser.%252Ftmp%252Fbuild%252Fapidoc.html.png)\n\n1. [https://kaizhu256.github.io/node-swgg/build/screenshot.buildCi.browser.%252Ftmp%252Fbuild%252Fcoverage.lib.html.png](https://kaizhu256.github.io/node-swgg/build/screenshot.buildCi.browser.%252Ftmp%252Fbuild%252Fcoverage.lib.html.png)\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.buildCi.browser.%252Ftmp%252Fbuild%252Fcoverage.lib.html.png)](https://kaizhu256.github.io/node-swgg/build/screenshot.buildCi.browser.%252Ftmp%252Fbuild%252Fcoverage.lib.html.png)\n\n1. [https://kaizhu256.github.io/node-swgg/build/screenshot.buildCi.browser.%252Ftmp%252Fbuild%252Ftest-report.html.png](https://kaizhu256.github.io/node-swgg/build/screenshot.buildCi.browser.%252Ftmp%252Fbuild%252Ftest-report.html.png)\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.buildCi.browser.%252Ftmp%252Fbuild%252Ftest-report.html.png)](https://kaizhu256.github.io/node-swgg/build/screenshot.buildCi.browser.%252Ftmp%252Fbuild%252Ftest-report.html.png)\n\n1. [https://kaizhu256.github.io/node-swgg/build/screenshot.deployGithub.browser.%252Fnode-swgg%252Fbuild%252Fapp%252Fassets.swgg.html.png](https://kaizhu256.github.io/node-swgg/build/screenshot.deployGithub.browser.%252Fnode-swgg%252Fbuild%252Fapp%252Fassets.swgg.html.png)\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.deployGithub.browser.%252Fnode-swgg%252Fbuild%252Fapp%252Fassets.swgg.html.png)](https://kaizhu256.github.io/node-swgg/build/screenshot.deployGithub.browser.%252Fnode-swgg%252Fbuild%252Fapp%252Fassets.swgg.html.png)\n\n1. [https://kaizhu256.github.io/node-swgg/build/screenshot.deployGithub.browser.%252Fnode-swgg%252Fbuild%252Fapp.png](https://kaizhu256.github.io/node-swgg/build/screenshot.deployGithub.browser.%252Fnode-swgg%252Fbuild%252Fapp.png)\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.deployGithub.browser.%252Fnode-swgg%252Fbuild%252Fapp.png)](https://kaizhu256.github.io/node-swgg/build/screenshot.deployGithub.browser.%252Fnode-swgg%252Fbuild%252Fapp.png)\n\n1. [https://kaizhu256.github.io/node-swgg/build/screenshot.deployGithubTest.browser.%252Fnode-swgg%252Fbuild%252Fapp.png](https://kaizhu256.github.io/node-swgg/build/screenshot.deployGithubTest.browser.%252Fnode-swgg%252Fbuild%252Fapp.png)\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.deployGithubTest.browser.%252Fnode-swgg%252Fbuild%252Fapp.png)](https://kaizhu256.github.io/node-swgg/build/screenshot.deployGithubTest.browser.%252Fnode-swgg%252Fbuild%252Fapp.png)\n\n1. [https://kaizhu256.github.io/node-swgg/build/screenshot.deployHeroku.browser.%252Fassets.swgg.html.png](https://kaizhu256.github.io/node-swgg/build/screenshot.deployHeroku.browser.%252Fassets.swgg.html.png)\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.deployHeroku.browser.%252Fassets.swgg.html.png)](https://kaizhu256.github.io/node-swgg/build/screenshot.deployHeroku.browser.%252Fassets.swgg.html.png)\n\n1. [https://kaizhu256.github.io/node-swgg/build/screenshot.deployHeroku.browser.%252F.png](https://kaizhu256.github.io/node-swgg/build/screenshot.deployHeroku.browser.%252F.png)\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.deployHeroku.browser.%252F.png)](https://kaizhu256.github.io/node-swgg/build/screenshot.deployHeroku.browser.%252F.png)\n\n1. [https://kaizhu256.github.io/node-swgg/build/screenshot.deployHerokuTest.browser.%252F.png](https://kaizhu256.github.io/node-swgg/build/screenshot.deployHerokuTest.browser.%252F.png)\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.deployHerokuTest.browser.%252F.png)](https://kaizhu256.github.io/node-swgg/build/screenshot.deployHerokuTest.browser.%252F.png)\n\n1. [https://kaizhu256.github.io/node-swgg/build/screenshot.npmTest.browser.%252F.png](https://kaizhu256.github.io/node-swgg/build/screenshot.npmTest.browser.%252F.png)\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.npmTest.browser.%252F.png)](https://kaizhu256.github.io/node-swgg/build/screenshot.npmTest.browser.%252F.png)\n\n1. [https://kaizhu256.github.io/node-swgg/build/screenshot.testExampleJs.browser.%252F.png](https://kaizhu256.github.io/node-swgg/build/screenshot.testExampleJs.browser.%252F.png)\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.testExampleJs.browser.%252F.png)](https://kaizhu256.github.io/node-swgg/build/screenshot.testExampleJs.browser.%252F.png)\n\n1. [https://kaizhu256.github.io/node-swgg/build/screenshot.testExampleSh.browser.%252F.png](https://kaizhu256.github.io/node-swgg/build/screenshot.testExampleSh.browser.%252F.png)\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.testExampleSh.browser.%252F.png)](https://kaizhu256.github.io/node-swgg/build/screenshot.testExampleSh.browser.%252F.png)\n\n\n\n# package.json\n```json\n{\n    \"author\": \"kai zhu <kaizhu256@gmail.com>\",\n    \"description\": \"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo\",\n    \"devDependencies\": {\n        \"utility2\": \"kaizhu256/node-utility2#alpha\"\n    },\n    \"engines\": {\n        \"node\": \">=10.0\"\n    },\n    \"githubRepoAlias\": \"swgg-io/node-swgg\",\n    \"homepage\": \"https://github.com/kaizhu256/node-swgg\",\n    \"keywords\": [\n        \"openapi\",\n        \"swagger-client\",\n        \"swagger-server\"\n    ],\n    \"license\": \"MIT\",\n    \"main\": \"lib.swgg.js\",\n    \"name\": \"swgg\",\n    \"nameAliasPublish\": \"petstore swagger-lite swaggerdoc\",\n    \"nameLib\": \"swgg\",\n    \"nameOriginal\": \"swgg\",\n    \"os\": [\n        \"darwin\",\n        \"linux\"\n    ],\n    \"repository\": {\n        \"type\": \"git\",\n        \"url\": \"https://github.com/kaizhu256/node-swgg.git\"\n    },\n    \"scripts\": {\n        \"build-ci\": \"./npm_scripts.sh\",\n        \"env\": \"env\",\n        \"eval\": \"./npm_scripts.sh\",\n        \"heroku-postbuild\": \"./npm_scripts.sh\",\n        \"postinstall\": \"./npm_scripts.sh\",\n        \"start\": \"./npm_scripts.sh\",\n        \"test\": \"./npm_scripts.sh\",\n        \"utility2\": \"./npm_scripts.sh\"\n    },\n    \"version\": \"2019.9.14\"\n}\n```\n\n\n\n# changelog of last 50 commits\n[![screenshot](https://kaizhu256.github.io/node-swgg/build/screenshot.gitLog.svg)](https://github.com/kaizhu256/node-swgg/commits)\n\n\n\n# internal build script\n- build_ci.sh\n```shell\n# build_ci.sh\n\n# this shell script will run the build for this package\n\nshBuildCiAfter () {(set -e\n    # shDeployCustom\n    shDeployGithub\n    shDeployHeroku\n    shReadmeTest example.sh\n)}\n\nshBuildCiBefore () {(set -e\n    shNpmTestPublished\n    shReadmeTest example.js\n)}\n\n# run shBuildCi\neval \"$(utility2 source)\"\nshBuildCi\n```\n\n\n\n# misc\n- this package was created with [utility2](https://github.com/kaizhu256/node-utility2)\n","maintainers":[{"name":"kaizhu","email":"kaizhu256@gmail.com"}],"time":{"modified":"2022-06-27T02:55:59.262Z","created":"2016-06-12T10:21:45.836Z","0.0.1":"2016-06-12T10:21:45.836Z","2016.11.1":"2016-11-30T09:46:35.312Z","2016.12.1":"2016-12-11T04:06:13.738Z","2016.12.25":"2016-12-26T04:21:41.440Z","2016.12.30":"2016-12-31T11:57:42.506Z","2017.1.12":"2017-01-12T04:42:37.806Z","2017.2.6":"2017-02-06T13:22:27.157Z","2017.2.17":"2017-02-18T16:16:06.861Z","2017.2.20":"2017-02-20T18:50:28.789Z","2017.3.29":"2017-03-30T13:24:25.071Z","2017.5.1":"2017-05-02T05:33:00.360Z","2017.5.20":"2017-05-22T09:00:30.326Z","2017.7.1":"2017-07-15T19:34:33.354Z","2017.7.24":"2017-07-25T23:47:47.268Z","2017.10.5":"2017-10-06T12:10:14.110Z","2017.10.11":"2017-10-12T23:51:00.154Z","2017.10.17":"2017-10-18T17:22:01.867Z","2017.10.24":"2017-10-24T17:30:13.055Z","2017.10.28":"2017-10-28T20:13:12.552Z","2017.11.7":"2017-11-07T18:40:17.862Z","2017.11.15":"2017-11-16T13:46:07.968Z","2017.11.20":"2017-11-21T05:05:09.828Z","2018.1.12":"2018-01-13T12:27:08.399Z","2018.2.1":"2018-02-02T06:25:15.419Z","2018.2.24":"2018-02-25T12:03:20.488Z","2018.3.25":"2018-03-26T15:42:39.892Z","2018.4.21":"2018-04-21T19:29:03.989Z","2018.6.16":"2018-06-19T20:56:25.760Z","2018.8.17":"2018-08-17T07:11:40.097Z","2018.9.8":"2018-09-08T14:32:58.617Z","2018.11.14":"2018-11-14T17:00:45.639Z","2019.2.20":"2019-02-20T08:21:02.575Z","2019.9.14":"2019-09-15T22:12:06.544Z"},"readmeFilename":"README.md","description":"this zero-dependency package will run a virtual swagger-ui server with persistent-storage in the browser, that your webapp can use (in-place of a real backend), with a working web-demo","homepage":"https://github.com/kaizhu256/node-swgg","keywords":["openapi","swagger-client","swagger-server"],"repository":{"type":"git","url":"git+https://github.com/kaizhu256/node-swgg.git"},"author":{"name":"kai zhu","email":"kaizhu256@gmail.com"},"bugs":{"url":"https://github.com/kaizhu256/node-swgg/issues"},"license":"MIT","users":{"kaizhu":true}}