plugins.js 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.getDefaultVueLanguagePlugins = void 0;
  4. const file_html_1 = require("./plugins/file-html");
  5. const file_md_1 = require("./plugins/file-md");
  6. const file_vue_1 = require("./plugins/file-vue");
  7. const vue_sfc_customblocks_1 = require("./plugins/vue-sfc-customblocks");
  8. const vue_sfc_scripts_1 = require("./plugins/vue-sfc-scripts");
  9. const vue_sfc_styles_1 = require("./plugins/vue-sfc-styles");
  10. const vue_sfc_template_1 = require("./plugins/vue-sfc-template");
  11. const vue_template_html_1 = require("./plugins/vue-template-html");
  12. const vue_tsx_1 = require("./plugins/vue-tsx");
  13. const CompilerDOM = require("@vue/compiler-dom");
  14. const CompilerVue2 = require("./utils/vue2TemplateCompiler");
  15. function getDefaultVueLanguagePlugins(ts, compilerOptions, vueCompilerOptions, codegenStack) {
  16. const plugins = [
  17. file_md_1.default, // .md for VitePress
  18. file_html_1.default, // .html for PetiteVue
  19. file_vue_1.default, // .vue and others for Vue
  20. vue_template_html_1.default,
  21. vue_sfc_styles_1.default,
  22. vue_sfc_customblocks_1.default,
  23. vue_sfc_scripts_1.default,
  24. vue_sfc_template_1.default,
  25. vue_tsx_1.default,
  26. ...vueCompilerOptions.plugins,
  27. ];
  28. const pluginCtx = {
  29. modules: {
  30. '@vue/compiler-dom': vueCompilerOptions.target < 3
  31. ? {
  32. ...CompilerDOM,
  33. compile: CompilerVue2.compile,
  34. }
  35. : CompilerDOM,
  36. typescript: ts,
  37. },
  38. compilerOptions,
  39. vueCompilerOptions,
  40. codegenStack,
  41. };
  42. const pluginInstances = plugins
  43. .map(plugin => plugin(pluginCtx))
  44. .sort((a, b) => {
  45. const aOrder = a.order ?? 0;
  46. const bOrder = b.order ?? 0;
  47. return aOrder - bOrder;
  48. });
  49. return pluginInstances.filter((plugin) => {
  50. const valid = plugin.version >= 1 && plugin.version < 2;
  51. if (!valid) {
  52. console.warn(`Plugin ${JSON.stringify(plugin.name)} API version incompatible, expected 1.x but got ${JSON.stringify(plugin.version)}`);
  53. }
  54. return valid;
  55. });
  56. }
  57. exports.getDefaultVueLanguagePlugins = getDefaultVueLanguagePlugins;
  58. //# sourceMappingURL=plugins.js.map