{"version":3,"sources":["jsdelivr-header.js","/npm/vuepress-plugin-example-block@1.0.20/src/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACLA,MAAM,GAAK,QAAQ,MACb,MAAQ,QAAQ,UAChB,KAAE,KAAI,KAAE,MAAS,QAAQ,mBACzB,SAAW,QAAQ,YACnB,gBAAkB,QAAQ,kBAE1B,mBAAqB,QAAQ,oBAE7B,4BAA8B,QAAQ,iCAGtC,YAAc,gCAEpB,OAAO,QAAU,CAAC,EAAU,CAAC,IACnB,IAEN,IAAK,EAAQ,KAEX,MADA,QAAQ,IAAI,MAAM,KAAK,IAAI,+BAAiC,sBACtD,MACJ,IAAI,0EAKR,MAAM,EAAiB,KAAK,QAAQ,EAAQ,KAAM,EAAQ,KAAO,eAIjE,IAAK,GAAG,WAAW,GAEjB,MADA,QAAQ,IAAI,MAAM,KAAK,IAAI,0BAA0B,KAC/C,MACJ,IAAI,oDAAoD,OAG5D,EAAU,OAAO,OACf,CACE,WAAY,CAAC,EACb,cAAe,EACf,mBAbwB,CAAC,YAczB,iBAAmB,GACjB,KAAK,QAAQ,EAAS,QAAQ,SAAU,OAE5C,GAEF,MAAM,cAAE,EAAa,mBAAE,GAAuB,EAC9C,MAAO,CACL,KAAM,YAEN,iBAAkB,KAAK,QACrB,EAAQ,KACR,mBAGF,cAAe,KACb,4BAA4B,EAAK,EAAO,EAG1C,gBAAkB,IAChB,QAAQ,IAAI,MAAM,KAAK,GAAG,KAAK,UAAU,EAAG,QAE5C,EAAG,IAAI,mBAAmB,EAAS,GAAI,EAezC,UAAW,CAAC,EAAK,EAAU,KAEzB,GAAI,EAAe,CACjB,MAAM,EAAoB,SAAS,MAAM,EAAoB,CAC3D,IAAK,EACL,eAAe,IAEjB,EAAkB,GAAG,UAAU,CAAC,EAAO,KAErC,4BAA4B,EAAK,EAAQ,IAE3C,EAAkB,GAAG,UAAU,CAAC,EAAO,KAErC,4BAA4B,EAAK,EAAQ,IAG3C,EAAS,KAAK,EAChB,GAEH","file":"/npm/vuepress-plugin-example-block@1.0.20/src/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/vuepress-plugin-example-block@1.0.20/src/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","\r\nconst fs = require('fs');\r\nconst chalk = require(\"chalk\");\r\nconst { hash, path } = require(\"@vuepress/utils\");\r\nconst chokidar = require(\"chokidar\");\r\nconst renderDemoBlock = require('./utils/render')\r\n// markdown type重写\r\nconst markDownContainers = require('./utils/markdown')\r\n// 动态加载组件示例组件\r\nconst prepareClientAppEnhanceFile = require(\"./prepareClientAppEnhanceFile\");\r\n\r\n// 插件名\r\nconst PLUGIN_NAME = `vuepress-plugin-example-block`;\r\n\r\nmodule.exports = (options = {}) => {\r\n  return (app) => {\r\n    \r\n    if (!options.path) {\r\n      console.log(chalk.green`[${PLUGIN_NAME}]:找不到组件目录,请设置插件配置` + '({path:__dirname})')\r\n      throw Error(\r\n        `[${PLUGIN_NAME}]:not find componentsDir,please BlockDemo({path:__dirname})`\r\n      );\r\n    }\r\n\r\n    //注册组件路径,默认 ../examples\r\n    const COMPONENTS_DIR = path.resolve(options.path, options.dir || \"../examples\");\r\n    const COMPONENTS_PATTERNS = [\"**/*.vue\"];\r\n\r\n    // 判断组件路径是否存在\r\n    if (!fs.existsSync(COMPONENTS_DIR)) {\r\n      console.log(chalk.green`[${PLUGIN_NAME}]:组件路径不存在 目录${COMPONENTS_DIR}`)\r\n      throw Error(\r\n        `[${PLUGIN_NAME}]:component path does not exist ( dir:${COMPONENTS_DIR} )`\r\n      );\r\n    }\r\n    options = Object.assign(\r\n      {\r\n        components: {},\r\n        componentsDir: COMPONENTS_DIR,\r\n        componentsPatterns: COMPONENTS_PATTERNS,\r\n        getComponentName: (filename) =>\r\n          path.trimExt(filename.replace(/\\/|\\\\/g, \"-\")),\r\n      },\r\n      options\r\n    );\r\n    const { componentsDir, componentsPatterns } = options;\r\n    return {\r\n      name: PLUGIN_NAME,\r\n      // 导入前端配置\r\n      clientConfigFile: path.resolve(\r\n        options.path,\r\n        \".temp/client.js\"\r\n      ),\r\n      // 初始化后被立即调用\r\n      onInitialized: () => {\r\n        prepareClientAppEnhanceFile(app, options)\r\n      },\r\n      // 添加额外的 markdown-it 插件\r\n      extendsMarkdown: (md) => {\r\n        console.log(chalk.green`${JSON.stringify(md.use)}`)\r\n        // console.log('11111111111111md',md)\r\n        md.use(markDownContainers(options, md));\r\n\r\n        // const id = setInterval(() => {\r\n        //   const render = md.render;\r\n        //   if (typeof render.call(md, '') === 'object') {\r\n        //     md.render = (string) => {\r\n        //       console.log('@@@result@@@@@@@@@@@@@@@@',result)\r\n        //       result.dataBlockString = `${script}\\n${style}\\n${result.dataBlockString}`;\r\n        //       return result;\r\n        //     }\r\n        //     clearInterval(id);\r\n        //   }\r\n        // }, 10);\r\n      },\r\n      // 启动开发服务器并开始监听文件修改后被调用\r\n      onWatched: (app, watchers, restart) => {\r\n        // console.log('componentsDir', componentsDir)\r\n        if (componentsDir) {\r\n          const componentsWatcher = chokidar.watch(componentsPatterns, {\r\n            cwd: componentsDir,\r\n            ignoreInitial: true,\r\n          });\r\n          componentsWatcher.on(\"unlink\", (event, path) => {\r\n            // console.log('unlink:')\r\n            prepareClientAppEnhanceFile(app, options);\r\n          });\r\n          componentsWatcher.on(\"change\", (event, path) => {\r\n            // console.log('change:', event, path)\r\n            prepareClientAppEnhanceFile(app, options);\r\n            // restart()\r\n          });\r\n          watchers.push(componentsWatcher);\r\n        }\r\n      }\r\n    };\r\n  }\r\n}\r\n"]}