@moneko/core 3.18.4 → 3.18.5-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,3 @@
1
- /// <reference types="multer" />
2
1
  import { type NextFunction, type Request, type Response } from 'express';
3
2
  export interface RequestFormData extends Request {
4
3
  files: Express.Multer.File[];
@@ -1 +1 @@
1
- "use strict";var e;Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(exports,{custom:function(){return o},default:function(){return u}});const t=require("@babel/core"),r=(e=require("solid-refresh/babel"))&&e.__esModule?e:{default:e};async function n(e){let n=this.async();try{let o=await (0,t.transformAsync)(e,{plugins:[[r.default,{}]]});n(null,o?.code||void 0,o?.map||void 0)}catch(e){n(e)}}function o(e){return n.bind(this,e)}const u=n;
1
+ "use strict";var e;Object.defineProperty(exports,"__esModule",{value:!0}),function(e,n){for(var r in n)Object.defineProperty(e,r,{enumerable:!0,get:n[r]})}(exports,{custom:function(){return u},default:function(){return o}});const n=require("@babel/core"),r=(e=require("solid-refresh/babel"))&&e.__esModule?e:{default:e};async function t(e){let t=this.async(),u=(0,n.transformSync)(e,{plugins:[[r.default,{bundler:"webpack5"}]]});t(null,u?.code||void 0,u?.map||void 0)}function u(e){return t.bind(this,e)}const o=t;
@@ -1 +1 @@
1
- let e;import{CONFIG as s}from"./config.mjs";import o from"./options/modify-vars.mjs";import t from"./options/swcrc.mjs";import r,{CUSTOMCONFIG as n}from"./paths.mjs";import{getLightningCssTargets as a}from"./polyfills/targets.mjs";import{FRAMEWORK as i,isDev as m,isLibrary as l}from"./process-env.mjs";import d from"./rule.mjs";import c from"./utils/has-pkg.mjs";import{node_modules as p,resolveProgram as u,toCamelCase as f}from"./utils/index.mjs";import j from"./utils/svg-to-data-uri.mjs";import{comment as y,getCommentPath as v}from"./vm/docs.mjs";import g from"./vm/generate-doc.mjs";import x from"./options/css-extract.mjs";import{saveFileSync as h}from"@moneko/utils";import _ from"./utils/reactive-object.mjs";import w from"./options/reslove.mjs";import M from"./utils/require.mjs";import{sep as L}from"path";let P={loader:`${r.corePath}/loader/lightningcss.cjs`,options:{sourceMap:!!s.sourceMap,analyzeDependencies:!1,targets:a(),drafts:{nesting:!0,customMedia:!0},errorRecovery:!1,unusedSymbols:[],rem:!!s.rem}},k={loader:w.lessLoader,options:{sourceMap:!!s.sourceMap,lessOptions:{modifyVars:o,javascriptEnabled:!0}}};function O(e){try{let s=M.resolve(e).split(L),o=s.lastIndexOf("node_modules");return -1!==o?s.slice(0,o).join(L):s.join(L)}catch(s){return p(e)}}let $=[...s.cssModules,`@moneko/${i}`,"neko-ui"].map(e=>O(e)).filter(e=>null!==e),I=["components","example","mock","site","src","server"].map(u);function b(e){return[...I,...s.rulesInclude?.[e]?.map(e=>O(e)).filter(e=>null!==e)||[]]}n&&I.push(u(n)),s.overrideResolve&&s.overrideResolve.override&&I.push(s.overrideResolve.override);let R=b("css"),B=b("js"),C=b("media"),D=b("wasm"),S=b("font");w.sassLoader&&(e={loader:w.sassLoader,options:{implementation:await import("sass"),sassOptions:{}}});let z=l&&m&&{test:d.tsdoc,include:s.alias["@pkg"],exclude:[d.node_modules,d.__tests__],enforce:"pre",loader:`${r.corePath}/loader/ts-doc.cjs`,options:{comment:y,generateDoc:g,getCommentPath:v}},J=[{resourceQuery:/raw/i,type:"asset/source"},{resourceQuery:/url/i,type:"asset/resource",generator:{filename:e=>{let s=e.filename;return s&&s.endsWith("wasm?url")?"wasm/[name][ext]":"assets/[name][ext]"}}},{test:d.wasm,type:"webassembly/async",include:D},{test:d.txt,type:"asset/source"},{test:d.ico,type:"asset/inline",include:C},{test:d.svg,type:"asset/inline",generator:{dataUrl:e=>j(e.toString())},include:C},{test:d.image,type:"asset",dependency:{not:["url"]},generator:{filename:"assets/images/[name][ext]"},include:C},{test:d.video,type:"asset",dependency:{not:["url"]},generator:{filename:"assets/video/[name][ext]"},include:C},{test:d.font,type:"asset",dependency:{not:["url"]},generator:{filename:"assets/fonts/[name][ext]"},include:S}],N=s.prefixJsLoader.filter(Boolean)||[];!m&&c("@moneko/css")&&N.unshift(`${r.corePath}/loader/css-in-js-minify.cjs`);let Q=new _({});function q(e){Q.setData(`${e.resourcePath}.d.ts`,e.exports.map(({name:e,value:s})=>`export const ${f(e)}: '${s}';`).join("\n")+"\n")}Q.on("change",(e,s)=>{h(e,s)});export default(o=>{let n={loader:w.swcLoader,options:t(o)},a={loader:w.cssLoader,options:{modules:{auto:e=>{if(e){for(let s=0,o=$.length;s<o;s++)if(e.includes($[s]))return d.css_module.test(e)}return d.node_modules_css_module.test(e)},localIdentName:"[path][name]_[local]",exportLocalsConvention:"dashesOnly",exportOnlyLocals:o,getJSON:s.cssModuleDefinition?q:void 0},importLoaders:2}};return{parser:{javascript:{commonjsMagicComments:!0,dynamicImportMode:"lazy",dynamicImportPrefetch:!1,dynamicImportPreload:!1,importMeta:!0,importMetaContext:!0}},noParse:s.noParse,rules:[!1!==s.htmlPluginOption&&z,{oneOf:[...J,{test:d.js,use:[...N,n],include:B},{test:d.css,use:[x,w.cssLoader,P],include:R},e&&{test:d.scss,use:[x,a,P,e],include:R},{test:d.less,use:[x,a,P,k],include:R},{test:d.markdown,use:[...N,{loader:`${r.corePath}/loader/mdx.cjs`,options:s.mdx}],exclude:[d.node_modules]}].filter(Boolean)},...s.moduleRules].filter(Boolean)}});
1
+ let e;import{CONFIG as s}from"./config.mjs";import o from"./options/modify-vars.mjs";import t from"./options/swcrc.mjs";import r,{CUSTOMCONFIG as n}from"./paths.mjs";import{getLightningCssTargets as a}from"./polyfills/targets.mjs";import{FRAMEWORK as i,isDev as l,isLibrary as m}from"./process-env.mjs";import d from"./rule.mjs";import c from"./utils/has-pkg.mjs";import{node_modules as p,resolveProgram as u,toCamelCase as f}from"./utils/index.mjs";import j from"./utils/svg-to-data-uri.mjs";import{comment as y,getCommentPath as v}from"./vm/docs.mjs";import g from"./vm/generate-doc.mjs";import h from"./options/css-extract.mjs";import{saveFileSync as x}from"@moneko/utils";import _ from"./utils/reactive-object.mjs";import w from"./options/reslove.mjs";import M from"./utils/require.mjs";import{sep as P}from"path";let L={loader:`${r.corePath}/loader/lightningcss.cjs`,options:{sourceMap:!!s.sourceMap,analyzeDependencies:!1,targets:a(),drafts:{nesting:!0,customMedia:!0},errorRecovery:!1,unusedSymbols:[],rem:!!s.rem}},$={loader:w.lessLoader,options:{sourceMap:!!s.sourceMap,lessOptions:{modifyVars:o,javascriptEnabled:!0}}};function k(e){try{let s=M.resolve(e).split(P),o=s.lastIndexOf("node_modules");return -1!==o?s.slice(0,o).join(P):s.join(P)}catch(s){return p(e)}}let O=[...s.cssModules,`@moneko/${i}`,"neko-ui"].map(e=>k(e)).filter(e=>null!==e),I=["components","example","mock","site","src","server"].map(u);function b(e){return[...I,...s.rulesInclude?.[e]?.map(e=>k(e)).filter(e=>null!==e)||[]]}n&&I.push(u(n)),s.overrideResolve&&s.overrideResolve.override&&I.push(s.overrideResolve.override);let R=b("css"),B=b("js"),C=b("media"),D=b("wasm"),S=b("font");w.sassLoader&&(e={loader:w.sassLoader,options:{implementation:await import("sass"),sassOptions:{}}});let z=m&&l&&{test:d.tsdoc,include:s.alias["@pkg"],exclude:[d.node_modules,d.__tests__],enforce:"pre",loader:`${r.corePath}/loader/ts-doc.cjs`,options:{comment:y,generateDoc:g,getCommentPath:v}},J=[{resourceQuery:/raw/i,type:"asset/source"},{resourceQuery:/url/i,type:"asset/resource",generator:{filename:e=>{let s=e.filename;return s&&s.endsWith("wasm?url")?"wasm/[name][ext]":"assets/[name][ext]"}}},{test:d.wasm,type:"webassembly/async",include:D},{test:d.txt,type:"asset/source"},{test:d.ico,type:"asset/inline",include:C},{test:d.svg,type:"asset/inline",generator:{dataUrl:e=>j(e.toString())},include:C},{test:d.image,type:"asset",dependency:{not:["url"]},generator:{filename:"assets/images/[name][ext]"},include:C},{test:d.video,type:"asset",dependency:{not:["url"]},generator:{filename:"assets/video/[name][ext]"},include:C},{test:d.font,type:"asset",dependency:{not:["url"]},generator:{filename:"assets/fonts/[name][ext]"},include:S}],N=s.prefixJsLoader.filter(Boolean)||[];l&&c("solid-refresh")&&"solid"===i&&N.unshift(`${r.corePath}/loader/solid-refresh.cjs`),!l&&c("@moneko/css")&&N.unshift(`${r.corePath}/loader/css-in-js-minify.cjs`);let Q=new _({});function q(e){Q.setData(`${e.resourcePath}.d.ts`,e.exports.map(({name:e,value:s})=>`export const ${f(e)}: '${s}';`).join("\n")+"\n")}Q.on("change",(e,s)=>{x(e,s)});export default(o=>{let n={loader:w.swcLoader,options:t(o)},a={loader:w.cssLoader,options:{modules:{auto:e=>{if(e){for(let s=0,o=O.length;s<o;s++)if(e.includes(O[s]))return d.css_module.test(e)}return d.node_modules_css_module.test(e)},localIdentName:"[path][name]_[local]",exportLocalsConvention:"dashesOnly",exportOnlyLocals:o,getJSON:s.cssModuleDefinition?q:void 0},importLoaders:2}};return{parser:{javascript:{commonjsMagicComments:!0,dynamicImportMode:"lazy",dynamicImportPrefetch:!1,dynamicImportPreload:!1,importMeta:!0,importMetaContext:!0}},noParse:s.noParse,rules:[!1!==s.htmlPluginOption&&z,{oneOf:[...J,{test:d.js,use:[...N,n],include:B},{test:d.css,use:[h,w.cssLoader,L],include:R},e&&{test:d.scss,use:[h,a,L,e],include:R},{test:d.less,use:[h,a,L,$],include:R},{test:d.markdown,use:[...N,{loader:`${r.corePath}/loader/mdx.cjs`,options:s.mdx}],exclude:[d.node_modules]}].filter(Boolean)},...s.moduleRules].filter(Boolean)}});
@@ -15,10 +15,10 @@ export declare const minify: MinifyObject;
15
15
  export declare const getMinifyOption: (type?: MinifierType, options?: SwcMinifyOptions | TerserMinifyOptions) => ({
16
16
  minify: typeof TerserPlugin.terserMinify;
17
17
  terserOptions: TerserMinifyOptions;
18
- extractComments?: boolean | undefined;
18
+ extractComments?: boolean;
19
19
  } | {
20
20
  minify: typeof TerserPlugin.swcMinify;
21
- terserOptions?: SwcMinifyOptions | undefined;
21
+ terserOptions?: SwcMinifyOptions;
22
22
  }) & {
23
23
  terserOptions: any;
24
24
  };
@@ -1,3 +1,3 @@
1
- import webpack from 'webpack';
2
- declare const plugins: webpack.WebpackPluginInstance[];
1
+ import { type WebpackPluginInstance } from 'webpack';
2
+ declare const plugins: WebpackPluginInstance[];
3
3
  export default plugins;
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import EventEmitter from 'events';
3
2
  declare class ReactiveObject<T extends object = Record<string, string | undefined>> extends EventEmitter {
4
3
  readonly data: T;
@@ -1,3 +1,2 @@
1
- /// <reference types="node" />
2
1
  declare const require: NodeRequire;
3
2
  export default require;
@@ -1 +1 @@
1
- import{dirname as e}from"path";import t from"typescript";import{CONFIG as n}from"../config.mjs";import l from"../options/md-to-html.mjs";let{ScriptKind:r,ScriptTarget:o,SyntaxKind:i,createSourceFile:a,forEachChild:c,getLeadingCommentRanges:s,isInterfaceDeclaration:u,isQuestionToken:f,isPropertySignature:m,isFunctionTypeNode:p,isUnionTypeNode:g,isMethodSignature:$}=t,d={};function h(e){let t=s(e.getSourceFile().text,e.pos);if(t){let n=e.getSourceFile().text.slice(t[0].pos,t[0].end).match(/\/\*\*([\s\S]*?)\*\//);if(n)return n[1].replaceAll(/^\s*\* ?/gm,"").replace(/\s+$/,"").trim()}}function b(e){if(!e)return;let t=e.match(/@since\s+([^\n]+)/);return t?t[1].trim():void 0}function y(e){if(!e)return;let t=e.match(/@author (\w+)\s*(?:<([^>]+)>)?/);if(t&&t.length>0){let e=t[1].trim(),n=t[2]?.trim(),l=/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/.test(n);return n?l&&(n=`mailto:${n}`):n=`https://github.com/${e}`,`[![${e}-alt](https://avatars.githubusercontent.com/${e}?s=64)${e}](${n})`}}function x(e){if(!e)return;let t=e.match(/@ignore\s+([^\n]+)/);return t?t[1].trim():void 0}let A=/(?<!['"])(unknown|any|void|bigint|object|undefined|null|boolean|number|string|symbol)(?!['"])/g;function j(e,t){if(!e)return;let l=e.replaceAll(/\b([A-Z][a-zA-Z0-9]*)\b/g,e=>{if(d[e]){let l=`/${[n.basename,d[e]].join("/").split("/").filter(Boolean).join("/")}`;return t?`[\\color{#009688}{${e}}](${l})`:`[${e}](${l})`}return t?`\\color{#009688}{${e}}`:e});return t&&(l=l.replaceAll(A,e=>`\\color{#009688}{${e}}`)),l}function k(e){if(e)return(function(e){let t;if(!e)return;let n=[];for(;t=/\\color{([^|}]*)\|?([^|}]*)\|?([^|}]*)\|?([^}]*)}{([^}]*)}/g.exec(e);)n.push(t[0]);return e.replaceAll(/[{}[\]()=>]|keyof|typeof|true|false/g,e=>n.some(t=>t.includes(e))?e:`\\color{#569cd6}{${e}}`)})(e)?.replaceAll(/^\s*\|\s*|\s*\|\s*$/gm,"").replaceAll(/\n/g,"<br/>").replaceAll(/\*/g,"\\*").replaceAll(/\|/g,"\\|").replaceAll(/(['"])((?:(?!\1).)*)\1/g,"\\color{#ce9178}{$1$2$1}")}function v(e){if(e)return e.replaceAll(/@example\s*([\s\S]*?)(?=@[a-zA-Z]|\n*$)/g,"").replaceAll(/^@[a-z].+/gm,"").replaceAll(/(\n\s+)+/g,"<br />").replaceAll(/\n/g,"<br />").replaceAll(/(<br \/>)$/g,"")}export default function S(s,A){let S=a(A,s,o.Latest,!0,r.TS),w="";return c(S,l=>{u(l)?w+=function(l){let r=l.name.text;Object.assign(d,{[l.name.text]:e(l.getSourceFile().fileName).replace(n.alias["@pkg"],"")});let o=h(l),a=b(o),c=v(o),s=x(o)?.split("|")||[],u=s.includes("comment"),A=s.includes("initial"),S=s.includes("optional"),w=s.includes("version"),T=s.includes("author"),B=c?`\\color{|4||0.45}{${r}}`:r,z=(function(e){let n=[];if(e.heritageClauses){for(let l of e.heritageClauses)if(l.token===t.SyntaxKind.ExtendsKeyword)for(let e of l.types)n.push(e.getText())}return n})(l)?.map(e=>`<n-tag color="#4c81db" css=".tag{gap:0px;}">${j(k(e))}</n-tag>`),F=[c,B,a&&`\\color{#52c11b|1||0.9}{${a}}`,z.length>0&&`<sub>\`extends\`</sub> ${z.join(" ")}`].filter(Boolean).join(" "),N=`## ${F}`,Z=l.members.filter(e=>m(e)&&e.type?.kind!==i.NeverKeyword||$(e)),K=[];if(Z.length>0){for(let e=0,t=Z.length;e<t;e++){let t=Z[e],n=j(k($(t)?`(${t.parameters.map(e=>`${e.name.getText()}: ${e.type?.getText()||"any"}`).join(", ")}): ${t.type?.getText()||"any"}`:t.type?.getText()||"any"),!0),l=h(t),r=k(t.name.getText());!r||r.startsWith("\\color")||($(t)||function(e){if(e.type){if(!g(e.type))return p(e.type);for(let t of e.type.types)if(p(t))return!0}return!1}(t)||n?.includes("=>")?r=`\\color{#f9a913}{${r}}`:/^["'](.+)["']$/.test(r)||(r=`\\color{#4c81db}{${r}}`));let i=t.questionToken&&f(t.questionToken);K.push([r,!S&&`\\color{${i?"#f9a913":"#52c11b"}\\|\\|\\|0.9}{${i?"✘":"✔"}}`,!u&&k(v(l)),n,!A&&k(function(e){if(!e)return;let t=e.match(/@default\s+([^\n]+)/);return t?t[1].trim():void 0}(l)),!w&&k(b(l)),!T&&(y(l)||y(o)),function(e){if(!e)return;let t=e.match(/@example\s*([\s\S]*?)(?=@[a-zA-Z]|\n*$)/);return t?t[1].trim():void 0}(l)])}let e=!1,t=!1,n=!1,l=!1;for(let r=0,o=K.length;r<o;r++){let o=K[r];!u&&o[2]&&(l=!0),!A&&o[4]&&(n=!0),!w&&o[5]&&(t=!0),!T&&o[6]&&(e=!0)}N+="\n";let r=["属性",!S&&"必要",l&&"说明","类型",n&&"默认值",t&&"版本",e&&"作者"].filter(Boolean).join("|");N+=`|${r}|`;let i=[":-",!S&&":-",l&&":-",":-",n&&":-",t&&":-",e&&":-"].filter(Boolean);N+="\n";let a=i.join("|");N+=`|${a}|`;for(let r=0,o=K.length;r<o;r++){let o=K[r];N+="\n";let i=[(o[7]?`<n-popover onload="console.log(this)" arrow="true" trigger="click" content=${JSON.stringify(`<n-md css=.n-md-body{margin-bottom:0;padding:0.5rem;background-color:transparent;backdrop-filter:none;box-shadow:none;}>${o[7]}</n-md>`)}><n-button size="small" type="primary" circle="true" style="margin-right:8px;">?</n-button></n-popover>`:"")+(o[0]||"-"),!S&&(o[1]||"-"),l&&(o[2]||"-"),o[3]||"-",n&&(o[4]||"-"),t&&(o[5]||"-"),e&&(o[6]||"-")].filter(Boolean).join("|");N+=`|${i}|`}N+="\n"}return N+"\n"}(l):t.isEnumDeclaration(l)&&(w+=function(l){let r=l.name.text,o=h(l),i=v(o),a=b(o);Object.assign(d,{[l.name.text]:e(l.getSourceFile().fileName).replace(n.alias["@pkg"],"")});let c=i?`\\color{|4||0.45}{${r}}`:r,s=[i,c,a&&`\\color{#52c11b|1||0.9}{${a}}`].filter(Boolean).join(" "),u=x(o)?.split("|")||[],f=u.includes("comment"),m=u.includes("version"),p=u.includes("author"),g=`## ${s}`;if(l.members.length>0){let e=[];for(let n=0,r=l.members.length;n<r;n++){let r=l.members[n],i=k(r.name.getText()),a=h(r),c=k(function(e){let n=e.initializer;if(n&&t.isStringLiteral(n))return` '${n.text}'`}(r)),s=k(b(a)),u=k(v(a));!i||i.startsWith("\\color")||/^["'](.+)["']$/.test(i)||(i=`\\color{#4c81db}{${i}}`),e.push([i,!f&&u,c,!m&&s,!p&&(y(a)||y(o))])}let n=!1,r=!1,i=!1;for(let t=0,l=e.length;t<l;t++){let l=e[t];!f&&l[1]&&(i=!0),!m&&l[3]&&(r=!0),!p&&l[4]&&(n=!0)}g+="\n";let a=["属性",i&&"说明","值",r&&"版本",n&&"作者"].filter(Boolean).join("|");g+=`|${a}|`;let c=[":-",i&&":-",":-",r&&":-",n&&":-"].filter(Boolean);g+="\n";let s=c.join("|");g+=`|${s}|`;for(let t=0,l=e.length;t<l;t++){let l=e[t];g+="\n";let o=[l[0]||"-",i&&(l[1]||"-"),l[2]||"-",r&&(l[3]||"-"),n&&(l[4]||"-")].filter(Boolean).join("|");g+=`|${o}|`}}return g+"\n\n"}(l))}),l(w)}
1
+ import{dirname as e}from"path";import t from"typescript";import{CONFIG as n}from"../config.mjs";import l from"../options/md-to-html.mjs";let{ScriptKind:r,ScriptTarget:o,SyntaxKind:i,createSourceFile:a,forEachChild:c,getLeadingCommentRanges:s,isInterfaceDeclaration:u,isQuestionToken:f,isPropertySignature:m,isFunctionTypeNode:p,isUnionTypeNode:g,isMethodSignature:$}=t,d={};function b(e){let t=s(e.getSourceFile().text,e.pos);if(t){let n=e.getSourceFile().text.slice(t[0].pos,t[0].end).match(/\/\*\*([\s\S]*?)\*\//);if(n)return n[1].replaceAll(/^\s*\* ?/gm,"").replace(/\s+$/,"").trim()}}function h(e){if(!e)return;let t=e.match(/@since\s+([^\n]+)/);return t?t[1].trim():void 0}function y(e){if(!e)return;let t=e.match(/@author (\w+)\s*(?:<([^>]+)>)?/);if(t&&t.length>0){let e=t[1].trim(),n=t[2]?.trim(),l=/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/.test(n);return n?l&&(n=`mailto:${n}`):n=`https://github.com/${e}`,`[![${e}-alt](https://avatars.githubusercontent.com/${e}?s=64)${e}](${n})`}}function x(e){if(!e)return;let t=e.match(/@ignore\s+([^\n]+)/);return t?t[1].trim():void 0}let A=/(?<!['"])(unknown|any|void|bigint|object|undefined|null|boolean|number|string|symbol)(?!['"])/g;function j(e,t){if(!e)return;let l=e.replaceAll(/\b([A-Z][a-zA-Z0-9]*)\b/g,e=>{if(d[e]){let l=`/${[n.basename,d[e]].join("/").split("/").filter(Boolean).join("/")}`;return t?`[\\color{#009688}{${e}}](${l})`:`[${e}](${l})`}return t?`\\color{#009688}{${e}}`:e});return t&&(l=l.replaceAll(A,e=>`\\color{#009688}{${e}}`)),l}function k(e){if(e)return(function(e){let t;if(!e)return;let n=[];for(;t=/\\color{([^|}]*)\|?([^|}]*)\|?([^|}]*)\|?([^}]*)}{([^}]*)}/g.exec(e);)n.push(t[0]);return e.replaceAll(/[{}[\]()=>]|keyof|typeof|true|false/g,e=>n.some(t=>t.includes(e))?e:`\\color{#569cd6}{${e}}`)})(e)?.replaceAll(/^\s*\|\s*|\s*\|\s*$/gm,"").replaceAll(/\n/g,"<br/>").replaceAll(/\*/g,"\\*").replaceAll(/\|/g,"\\|").replaceAll(/(['"])((?:(?!\1).)*)\1/g,"\\color{#ce9178}{$1$2$1}")}function v(e){if(e)return e.replaceAll(/@example\s*([\s\S]*?)(?=@[a-zA-Z]|\n*$)/g,"").replaceAll(/^@[a-z].+/gm,"").replaceAll(/(\n\s+)+/g,"<br />").replaceAll(/\n/g,"<br />").replaceAll(/(<br \/>)$/g,"")}export default function S(s,A){let S=a(A,s,o.Latest,!0,r.TS),w="";return c(S,l=>{u(l)?w+=function(l){let r=l.name.text;Object.assign(d,{[l.name.text]:e(l.getSourceFile().fileName).replace(n.alias["@pkg"],"")});let o=b(l),a=h(o),c=v(o),s=x(o)?.split("|")||[],u=s.includes("comment"),A=s.includes("initial"),S=s.includes("optional"),w=s.includes("version"),T=s.includes("author"),B=c?`\\color{|4||0.45}{${r}}`:r,z=(function(e){let n=[];if(e.heritageClauses){for(let l of e.heritageClauses)if(l.token===t.SyntaxKind.ExtendsKeyword)for(let e of l.types)n.push(e.getText())}return n})(l)?.map(e=>`<n-tag color="#4c81db" css=".tag{gap:0px;}">${j(k(e))}</n-tag>`),F=[c,B,a&&`\\color{#52c11b|1||0.9}{${a}}`,z.length>0&&`<sub>\`extends\`</sub> ${z.join(" ")}`].filter(Boolean).join(" "),N=`## ${F}`,Z=l.members.filter(e=>m(e)&&e.type?.kind!==i.NeverKeyword||$(e)),K=[];if(Z.length>0){for(let e=0,t=Z.length;e<t;e++){let t=Z[e],n=j(k($(t)?`(${t.parameters.map(e=>`${e.name.getText()}: ${e.type?.getText()||"any"}`).join(", ")}): ${t.type?.getText()||"any"}`:t.type?.getText()||"any"),!0),l=b(t),r=k(t.name.getText());!r||r.startsWith("\\color")||($(t)||function(e){if(e.type){if(!g(e.type))return p(e.type);for(let t of e.type.types)if(p(t))return!0}return!1}(t)||n?.includes("=>")?r=`\\color{#f9a913}{${r}}`:/^["'](.+)["']$/.test(r)||(r=`\\color{#4c81db}{${r}}`));let i=t.questionToken&&f(t.questionToken);K.push([r,!S&&`\\color{${i?"#f9a913":"#52c11b"}\\|\\|\\|0.9}{${i?"✘":"✔"}}`,!u&&k(v(l)),n,!A&&k(function(e){if(!e)return;let t=e.match(/@default\s+([^\n]+)/);return t?t[1].trim():void 0}(l)),!w&&k(h(l)),!T&&(y(l)||y(o)),function(e){if(!e)return;let t=e.match(/@example\s*([\s\S]*?)(?=@[a-zA-Z]|\n*$)/);return t?t[1].trim():void 0}(l)])}let e=!1,t=!1,n=!1,l=!1;for(let r=0,o=K.length;r<o;r++){let o=K[r];!u&&o[2]&&(l=!0),!A&&o[4]&&(n=!0),!w&&o[5]&&(t=!0),!T&&o[6]&&(e=!0)}N+="\n";let r=["属性",!S&&"必要",l&&"说明","类型",n&&"默认值",t&&"版本",e&&"作者"].filter(Boolean).join("|");N+=`|${r}|`;let i=[":-",!S&&":-",l&&":-",":-",n&&":-",t&&":-",e&&":-"].filter(Boolean);N+="\n";let a=i.join("|");N+=`|${a}|`;for(let r=0,o=K.length;r<o;r++){let o=K[r];N+="\n";let i=[(o[7]?`<n-popover arrow="true" trigger="click" content=${JSON.stringify(`<n-md css=.n-md-body{margin-bottom:0;padding:0.5rem;background-color:transparent;backdrop-filter:none;box-shadow:none;}>${o[7]}</n-md>`)}><n-button size="small" type="primary" circle="true" style="margin-right:8px;">?</n-button></n-popover>`:"")+(o[0]||"-"),!S&&(o[1]||"-"),l&&(o[2]||"-"),o[3]||"-",n&&(o[4]||"-"),t&&(o[5]||"-"),e&&(o[6]||"-")].filter(Boolean).join("|");N+=`|${i}|`}N+="\n"}return N+"\n"}(l):t.isEnumDeclaration(l)&&(w+=function(l){let r=l.name.text,o=b(l),i=v(o),a=h(o);Object.assign(d,{[l.name.text]:e(l.getSourceFile().fileName).replace(n.alias["@pkg"],"")});let c=i?`\\color{|4||0.45}{${r}}`:r,s=[i,c,a&&`\\color{#52c11b|1||0.9}{${a}}`].filter(Boolean).join(" "),u=x(o)?.split("|")||[],f=u.includes("comment"),m=u.includes("version"),p=u.includes("author"),g=`## ${s}`;if(l.members.length>0){let e=[];for(let n=0,r=l.members.length;n<r;n++){let r=l.members[n],i=k(r.name.getText()),a=b(r),c=k(function(e){let n=e.initializer;if(n&&t.isStringLiteral(n))return` '${n.text}'`}(r)),s=k(h(a)),u=k(v(a));!i||i.startsWith("\\color")||/^["'](.+)["']$/.test(i)||(i=`\\color{#4c81db}{${i}}`),e.push([i,!f&&u,c,!m&&s,!p&&(y(a)||y(o))])}let n=!1,r=!1,i=!1;for(let t=0,l=e.length;t<l;t++){let l=e[t];!f&&l[1]&&(i=!0),!m&&l[3]&&(r=!0),!p&&l[4]&&(n=!0)}g+="\n";let a=["属性",i&&"说明","值",r&&"版本",n&&"作者"].filter(Boolean).join("|");g+=`|${a}|`;let c=[":-",i&&":-",":-",r&&":-",n&&":-"].filter(Boolean);g+="\n";let s=c.join("|");g+=`|${s}|`;for(let t=0,l=e.length;t<l;t++){let l=e[t];g+="\n";let o=[l[0]||"-",i&&(l[1]||"-"),l[2]||"-",r&&(l[3]||"-"),n&&(l[4]||"-")].filter(Boolean).join("|");g+=`|${o}|`}}return g+"\n\n"}(l))}),l(w)}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moneko/core",
3
- "version": "3.18.4",
3
+ "version": "3.18.5-beta.0",
4
4
  "description": "core",
5
5
  "main": "lib/index.mjs",
6
6
  "type": "module",
@@ -15,7 +15,7 @@
15
15
  "@moneko/mdx": "0.1.39",
16
16
  "@moneko/transform-imports": "0.6.0",
17
17
  "@moneko/utils": "0.1.5",
18
- "@swc/core": "1.6.1",
18
+ "@swc/core": "1.6.5",
19
19
  "@typescript/vfs": "1.5.3",
20
20
  "browserslist": "4.23.1",
21
21
  "chalk": "5.3.0",
@@ -37,8 +37,8 @@
37
37
  "style-loader": "4.0.0",
38
38
  "swc-loader": "0.2.6",
39
39
  "terser-webpack-plugin": "5.3.10",
40
- "typescript": "5.4.5",
41
- "webpack": "5.92.0",
40
+ "typescript": "5.5.2",
41
+ "webpack": "5.92.1",
42
42
  "webpack-bundle-analyzer": "4.10.2",
43
43
  "webpack-dev-middleware": "7.2.1",
44
44
  "webpack-hot-middleware": "2.26.1",
@@ -48,7 +48,7 @@
48
48
  },
49
49
  "devDependencies": {
50
50
  "@moneko/css": "1.1.5",
51
- "@swc/cli": "0.3.12",
51
+ "@swc/cli": "0.3.14",
52
52
  "@types/babel__core": "7.20.5",
53
53
  "@types/express": "4.17.21",
54
54
  "@types/multer": "1.4.11",