/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/smartdoc@0.1.1/smartDoc.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
"use strict";exports.build=function(e,t){var o,i,s,n=require("yuidocjs"),a=require("fs"),r=require("path"),l=a.stat,c=r.dirname(a.realpathSync(__filename)),u={default:c+"/theme-smart/",ui:c+"/theme-smart-ui/"};function m(e,t,o){a.existsSync(o)||a.mkdirSync(o),a.readdirSync(t).forEach((function(i){d(e,i,t+"/"+r,o)}))}function d(e,t,o,i){if(e("res/"+t)){var s,n,r=i+"/"+t;l(o,(function(t,i){if(t)throw t;i.isFile()?(s=a.createReadStream(o),n=a.createWriteStream(r),s.pipe(n)):i.isDirectory()&&m(e,o,r)}))}}n.DocBuilder.prototype.populateModules=function(e){var t=this;return e.meta.modules=[],e.meta.allModules=[],n.each(this.data.modules,(function(o){if(!o.external){var i=[];for(var s in o.classes)i.push({name:s});if(e.meta.allModules.push({displayName:o.displayName||o.name,name:t.filterFileName(o.name),description:o.description,classes:i.length?i:null}),!o.is_submodule){var a={displayName:o.displayName||o.name,name:t.filterFileName(o.name),classes:i.length?i:null};o.submodules&&(a.submodules=[],n.each(o.submodules,(function(e,o){var i=t.data.modules[o];i&&a.submodules.push({displayName:o,description:i.description})})),a.submodules.sort(t.nameSort)),e.meta.modules.push(a)}}})),e.meta.modules.sort(this.nameSort),e.meta.allModules.sort(this.nameSort),e},n.DocBuilder.prototype.writeDemo=function(e){var t=this,o=new n.Parallel;n.log("Preparing demo.html","info","builder"),function(e,t){n.prepare([i,i],e.getProjectMeta(),(function(o,i){var s=[],l=[],c=e.options.demo;function u(e){if(t=e,".js"===r.extname(t))l.push(e);else{if(!function(e){return".css"===r.extname(e)}(e))return!1;s.push(e)}var t;return!0}if(c){if(c.link&&c.link.forEach(u),c.paths){var p=e.options.outdir+"assets/res";a.mkdirSync(p),c.paths.forEach((function(e){"/"===e.charAt(e.length-1)?m(u,e,p):d(u,r.basename(e),e,p)}))}!1!==c.autoComplete&&l.length&&a.appendFile(e.options.outdir+"assets/code.html",'<script src="'+l.join('"><\/script><script src="')+'"><\/script>')}i.meta.css=s,i.meta.script=l;var h=new n.DocView(i.meta),f=n.Handlebars.compile(i.layouts.demo);html=f(h),e.files++,t(html,h)}))}(t,o.add((function(e,i){o.html=e,o.view=i,n.Files.writeFile(r.join(t.options.outdir+"assets/","demo.html"),e,o.add((function(){}))),n.Files.writeFile(r.join(t.options.outdir+"assets/","show.html"),e+"<script src='js/show.js'><\/script>",o.add((function(){})))}))),o.done((function(t,i){n.log("Writing demo.html","info","builder"),e(o.html,o.view)}))},s=n.DocBuilder.prototype._parseCode,n.DocBuilder.prototype._parseCode=function(e){return'<div class="stdoc-code">'+s.call(this,e)+"</div>"},n.DocParser.DIGESTERS.demo=function(t,i,s,n){var a,r=s.example,l=s.exampleTitles;r||(r=s.example=[]),l||(l=s.exampleTitles=[]),i&&(a=o.build(i,e,s))&&a.code&&(r.push(a.code),l.push(a.title))},n.DocParser.DIGESTERS.show=function(e,t,o,i){o.show=!0},function(s){var r;if(!s)return void console.log("The Options of smartDoc is not be defined!");i=(e=s=n.mix(s,{paths:["src/"],outdir:"doc/",theme:"default",demoDir:"",demoBuilder:"./demoBuilder.js",codeLoader:"./jasmineLoader.js"})).themedir?e.themedir:e.themedir=u[e.theme]||u.default;e.helpers||(e.helpers=[i+"helpers/helpers.js"]);o=require(e.demoBuilder);try{r=new n.YUIDoc(s).run()}catch(e){return void console.log(e)}s=n.Project.mix(r,s);var l=new n.DocBuilder(s,r),c=Date.now();console.log("Start SmartDoc compile..."),console.log("Scanning: "+s.paths),console.log("Output: "+s.outdir),l.compile((function(){!function(e,t,o){var i=[];n.each(e.modules,(function(e){e.name&&i.push({type:"module",name:e.name})})),n.each(e.classes,(function(e){e.name&&i.push({type:"class",name:e.name})})),e.classitems.forEach((function(e){e.name&&i.push({type:e.itemtype,className:e.class,name:e.name})}));var s={filterItems:i};a.appendFileSync(o.outdir+"assets/js/config.js","window['__docConfig'] = "+JSON.stringify(s))}(l.data,l._meta,s),l.writeDemo((function(){t&&t(),console.log("SmartDoc compile completed in "+(Date.now()-c)/1e3+" seconds")}))}))}(function(){if(e)return e;return require(a.realpathSync(".")+"/docConfig.js")}())};
//# sourceMappingURL=/sm/4f553eee516ff21f0872501bb4244162c10e80e35df28f321d2bfd93023323fe.map