@moneko/core 3.27.0-beta.1 → 3.27.1-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 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return o}});const e=require("@babel/core"),t=c(require("@moneko/css/babel")),r=c(require("../commom/log.mjs"));function c(e){return e&&e.__esModule?e:{default:e}}async function o(c){let o=this.async();this.cacheable&&this.cacheable();try{let r=await (0,e.transformAsync)(c,{plugins:[[t.default,{}]],sourceMaps:!!this.sourceMap});o(null,r?.code||void 0,r?.map||void 0)}catch(e){o(e),(0,r.default)(e)}}
1
+ "use strict";var e;Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return l}});const i=require("@swc/core"),t=require("stylis"),a=(e=require("../commom/log.mjs"))&&e.__esModule?e:{default:e};async function l(e){let l=this.async(),{moduleName:r="@moneko/css",allowFuncs:s=["css","injectGlobal"]}=this.getOptions()||{};this.cacheable&&this.cacheable();try{let a=!1,o=await (0,i.parse)(e,{syntax:"ecmascript"}),c=[];if(o.body.forEach(e=>{"ImportDeclaration"===e.type&&e.source.value===r&&e.specifiers.forEach(e=>{"ImportSpecifier"===e.type&&(e.imported&&s.includes(e.imported.value)?c.push(e.local.value):s.includes(e.local.value)&&c.push(e.local.value))}),"ExpressionStatement"===e.type&&"TaggedTemplateExpression"===e.expression.type&&c.includes(e.expression.tag?.value)&&(e.expression.template.quasis.forEach(e=>{let i=(0,t.serialize)((0,t.compile)(e.raw),(0,t.middleware)([t.stringify]));e.raw=i,e.cooked=i}),a=!0),"VariableDeclaration"===e.type&&e.declarations.forEach(e=>{"VariableDeclarator"===e.type&&("Identifier"===e.id.type&&e.init?.type==="Identifier"&&c.includes(e.init.value)&&c.push(e.id.value),e.init?.type==="TaggedTemplateExpression"&&c.includes(e.init.tag?.value)&&(e.init.template.quasis.forEach(e=>{let i=(0,t.serialize)((0,t.compile)(e.raw),(0,t.middleware)([t.stringify]));e.raw=i,e.cooked=i}),a=!0))})}),a){let e=await (0,i.print)(o);l(null,e?.code||void 0,e?.map||void 0)}else l(null,e,void 0)}catch(e){l(e),(0,a.default)(e)}}
@@ -1,8 +1,13 @@
1
- import { transformAsync } from '@babel/core';
2
- import BabelPluginMonekoCss from '@moneko/css/babel';
1
+ import { parse, print } from '@swc/core';
2
+ import { compile, middleware, serialize, stringify } from 'stylis';
3
3
  import type { LoaderContext } from 'webpack';
4
4
  import log from '../commom/log.mjs';
5
+ interface IExpression {
6
+ value: string;
7
+ }
5
8
  export interface CssInJsMinifyOption {
6
9
  sourceMap?: boolean;
10
+ moduleName?: string;
11
+ allowFuncs?: string[];
7
12
  }
8
13
  export default async function cssInJsMinifyLoader(this: LoaderContext<CssInJsMinifyOption>, sourceCode: string);
@@ -1,7 +1,6 @@
1
1
  import { join, sep } from 'node:path';
2
2
  import { saveFileSync } from '@moneko/utils';
3
3
  import type { ModuleOptions, PathData, RuleSetRule } from 'webpack';
4
- import hasPkg from './commom/has-pkg.mjs';
5
4
  import paths, { CUSTOMCONFIG } from './commom/paths.mjs';
6
5
  import ReactiveObject from './commom/reactive-object.mjs';
7
6
  import require from './commom/require.mjs';
@@ -1,2 +1,2 @@
1
- let e;import{join as o,sep as s}from"node:path";import{saveFileSync as t}from"@moneko/utils";import r from"./commom/has-pkg.mjs";import a,{CUSTOMCONFIG as m}from"./commom/paths.mjs";import n from"./commom/reactive-object.mjs";import i from"./commom/require.mjs";import l from"./commom/rule.mjs";import c from"./options/css-extract.mjs";import d from"./options/modify-vars.mjs";import p from"./options/reslove.mjs";import u from"./options/swcrc.mjs";import{getLightningCssTargets as f}from"./polyfills/targets.mjs";import{node_modules as j,resolveProgram as h,toCamelCase as v}from"./utils/index.mjs";import g from"./utils/svg-to-data-uri.mjs";import{comment as y,getCommentPath as x}from"./vm/docs.mjs";import w from"./vm/generate-doc.mjs";import{CONFIG as L}from"./config.mjs";import{FRAMEWORK as P,isDev as M,isLibrary as _}from"./process-env.mjs";let k={loader:o(a.corePath,"/loader/lightning-css/loader.cjs"),options:{sourceMap:!!L.sourceMap,targets:f(),rem:!!L.rem,esModule:!0,modules:{auto(e){if(e){if(e.endsWith(".css")&&!e.endsWith("module.css"))return!1;for(let o=0,s=b.length;o<s;o++)if(e.includes(b[o]))return l.css_module.test(e)}return l.node_modules_css_module.test(e)},localIdentName:"[name][hash]_[local]",namedExport:!0,exportLocalsConvention:"dashesOnly",exportOnlyLocals:!1,getJSON:L.cssModuleDefinition?function(e){U.setData(`${e.resourcePath}.d.ts`,`${e.exports.map(({name:e,value:o})=>`export const ${v(e)}: '${o}';`).join("\n")}
2
- `)}:void 0},importLoaders:2}},C={loader:p.lessLoader,options:{sourceMap:!!L.sourceMap,lessOptions:{modifyVars:d,javascriptEnabled:!0}}},O=new Map;function I(e){if(O.has(e))return O.get(e);try{let o;let t=i.resolve(e).split(s),r=t.lastIndexOf("node_modules");return o=-1!==r?t.slice(0,r).join(s):t.join(s),O.set(e,o),o}catch{let o=j(e);return O.set(e,o),o}}let b=[...L.cssModules,`@moneko/${P}`,"neko-ui"].map(I),W=["components","example","mock","site","src","server"].map(h);function $(e){return new Promise(o=>{o([...W,...L.rulesInclude?.[e]?.map(I)||[]])})}m&&W.push(h(m)),L.overrideResolve&&L.overrideResolve.override&&W.push(L.overrideResolve.override);let R=await Promise.all([$("css"),$("js"),$("media"),$("wasm"),$("font")]),B=R[0],S=R[1],z=R[2],D=R[3],E=R[4];p.sassLoader&&(e={loader:p.sassLoader,options:{implementation:await import("sass"),sassOptions:{}}});let J=_&&M&&{test:l.tsdoc,include:L.alias["@pkg"],exclude:[/node_modules\/(?!(@app|@moneko)).+/,l.__tests__],enforce:"pre",loader:o(a.corePath,"/loader/ts-doc.cjs"),options:{comment:y,generateDoc:w,getCommentPath:x}},N=[{resourceQuery:/raw/i,type:"asset/source"},{resourceQuery:/url/i,type:"asset/resource",generator:{filename(e){let o=e.filename;return o&&o.toLocaleLowerCase().endsWith("wasm?url")?"wasm/[name][ext]":"assets/[name][ext]"}}},{test:l.wasm,type:"webassembly/async",include:D},{test:l.txt,type:"asset/source"},{test:l.image,type:"asset",dependency:{not:["url"]},parser:{dataUrlCondition:{maxSize:4096}},generator:{filename:e=>e.filename?.toLocaleLowerCase().endsWith(".svg")?"assets/svg/[name][ext]":"assets/images/[name][ext]",dataUrl:(e,o)=>o.filename.toLocaleLowerCase().endsWith(".svg")?g(e.toString()):e},include:z},{test:l.video,type:"asset",dependency:{not:["url"]},generator:{filename:"assets/video/[name][ext]"},include:z},{test:l.font,type:"asset",dependency:{not:["url"]},generator:{filename:"assets/fonts/[name][ext]"},include:E}],Q=L.prefixJsLoader.filter(Boolean)||[];switch(P){case"react":L.reactCompiler&&Q.unshift({loader:o(a.corePath,"/loader/react-compiler.cjs"),options:L.reactCompiler});break;case"solid":L.refresh=!1}!M&&r("@moneko/css")&&Q.unshift(o(a.corePath,"/loader/css-in-js-minify.cjs"));let U=new n({});U.on("change",(e,o)=>{t(e,o)});export default(s=>{let t={loader:p.swcLoader,options:u(s)};return{parser:{javascript:{commonjsMagicComments:!0,dynamicImportMode:"lazy",dynamicImportPrefetch:!1,dynamicImportPreload:!1,importMeta:!0,importMetaContext:!0}},noParse:L.noParse,rules:[!1!==L.htmlPluginOption&&J,{oneOf:[...N,{test:l.js,use:[...Q,t],include:S},{test:l.css,use:[c,k],include:B},e&&{test:l.scss,use:[c,k,e],include:B},{test:l.less,use:[c,k,C],include:B},{test:l.markdown,use:[...Q,{loader:o(a.corePath,"/loader/mdx.cjs"),options:L.mdx}],exclude:[/node_modules\/(?!(@app|@moneko)).+/]}].filter(Boolean)},...L.moduleRules].filter(Boolean)}});
1
+ let e;import{join as o,sep as s}from"node:path";import{saveFileSync as t}from"@moneko/utils";import r,{CUSTOMCONFIG as a}from"./commom/paths.mjs";import n from"./commom/reactive-object.mjs";import m from"./commom/require.mjs";import i from"./commom/rule.mjs";import l from"./options/css-extract.mjs";import c from"./options/modify-vars.mjs";import d from"./options/reslove.mjs";import p from"./options/swcrc.mjs";import{getLightningCssTargets as u}from"./polyfills/targets.mjs";import{node_modules as f,resolveProgram as j,toCamelCase as h}from"./utils/index.mjs";import v from"./utils/svg-to-data-uri.mjs";import{comment as y,getCommentPath as g}from"./vm/docs.mjs";import x from"./vm/generate-doc.mjs";import{CONFIG as w}from"./config.mjs";import{FRAMEWORK as L,isDev as P,isLibrary as M}from"./process-env.mjs";let _={loader:o(r.corePath,"/loader/lightning-css/loader.cjs"),options:{sourceMap:!!w.sourceMap,targets:u(),rem:!!w.rem,esModule:!0,modules:{auto(e){if(e){if(e.endsWith(".css")&&!e.endsWith("module.css"))return!1;for(let o=0,s=I.length;o<s;o++)if(e.includes(I[o]))return i.css_module.test(e)}return i.node_modules_css_module.test(e)},localIdentName:"[name][hash]_[local]",namedExport:!0,exportLocalsConvention:"dashesOnly",exportOnlyLocals:!1,getJSON:w.cssModuleDefinition?function(e){Q.setData(`${e.resourcePath}.d.ts`,`${e.exports.map(({name:e,value:o})=>`export const ${h(e)}: '${o}';`).join("\n")}
2
+ `)}:void 0},importLoaders:2}},k={loader:d.lessLoader,options:{sourceMap:!!w.sourceMap,lessOptions:{modifyVars:c,javascriptEnabled:!0}}},C=new Map;function O(e){if(C.has(e))return C.get(e);try{let o;let t=m.resolve(e).split(s),r=t.lastIndexOf("node_modules");return o=-1!==r?t.slice(0,r).join(s):t.join(s),C.set(e,o),o}catch{let o=f(e);return C.set(e,o),o}}let I=[...w.cssModules,`@moneko/${L}`,"neko-ui"].map(O),b=["components","example","mock","site","src","server"].map(j);function W(e){return new Promise(o=>{o([...b,...w.rulesInclude?.[e]?.map(O)||[]])})}a&&b.push(j(a)),w.overrideResolve&&w.overrideResolve.override&&b.push(w.overrideResolve.override);let $=await Promise.all([W("css"),W("js"),W("media"),W("wasm"),W("font")]),R=$[0],B=$[1],S=$[2],z=$[3],D=$[4];d.sassLoader&&(e={loader:d.sassLoader,options:{implementation:await import("sass"),sassOptions:{}}});let E=M&&P&&{test:i.tsdoc,include:w.alias["@pkg"],exclude:[/node_modules\/(?!(@app|@moneko)).+/,i.__tests__],enforce:"pre",loader:o(r.corePath,"/loader/ts-doc.cjs"),options:{comment:y,generateDoc:x,getCommentPath:g}},J=[{resourceQuery:/raw/i,type:"asset/source"},{resourceQuery:/url/i,type:"asset/resource",generator:{filename(e){let o=e.filename;return o&&o.toLocaleLowerCase().endsWith("wasm?url")?"wasm/[name][ext]":"assets/[name][ext]"}}},{test:i.wasm,type:"webassembly/async",include:z},{test:i.txt,type:"asset/source"},{test:i.image,type:"asset",dependency:{not:["url"]},parser:{dataUrlCondition:{maxSize:4096}},generator:{filename:e=>e.filename?.toLocaleLowerCase().endsWith(".svg")?"assets/svg/[name][ext]":"assets/images/[name][ext]",dataUrl:(e,o)=>o.filename.toLocaleLowerCase().endsWith(".svg")?v(e.toString()):e},include:S},{test:i.video,type:"asset",dependency:{not:["url"]},generator:{filename:"assets/video/[name][ext]"},include:S},{test:i.font,type:"asset",dependency:{not:["url"]},generator:{filename:"assets/fonts/[name][ext]"},include:D}],N=w.prefixJsLoader.filter(Boolean)||[];switch(L){case"react":w.reactCompiler&&N.unshift({loader:o(r.corePath,"/loader/react-compiler.cjs"),options:w.reactCompiler});break;case"solid":w.refresh=!1}P||N.unshift(o(r.corePath,"/loader/css-in-js-minify.cjs"));let Q=new n({});Q.on("change",(e,o)=>{t(e,o)});export default(s=>{let t={loader:d.swcLoader,options:p(s)};return{parser:{javascript:{commonjsMagicComments:!0,dynamicImportMode:"lazy",dynamicImportPrefetch:!1,dynamicImportPreload:!1,importMeta:!0,importMetaContext:!0}},noParse:w.noParse,rules:[!1!==w.htmlPluginOption&&E,{oneOf:[...J,{test:i.js,use:[...N,t],include:B},{test:i.css,use:[l,_],include:R},e&&{test:i.scss,use:[l,_,e],include:R},{test:i.less,use:[l,_,k],include:R},{test:i.markdown,use:[...N,{loader:o(r.corePath,"/loader/mdx.cjs"),options:w.mdx}],exclude:[/node_modules\/(?!(@app|@moneko)).+/]}].filter(Boolean)},...w.moduleRules].filter(Boolean)}});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moneko/core",
3
- "version": "3.27.0-beta.1",
3
+ "version": "3.27.1-beta.0",
4
4
  "description": "core",
5
5
  "main": "lib/index.mjs",
6
6
  "type": "module",
@@ -15,7 +15,6 @@
15
15
  "author": "moneko",
16
16
  "license": "MIT",
17
17
  "dependencies": {
18
- "@babel/core": "7.26.0",
19
18
  "@fastify/compress": "7.0.3",
20
19
  "@fastify/http-proxy": "9.5.0",
21
20
  "@fastify/middie": "8.3.3",
@@ -25,7 +24,7 @@
25
24
  "@moneko/utils": "0.1.22",
26
25
  "@swc/core": "1.6.13",
27
26
  "browserslist": "4.24.3",
28
- "chokidar": "4.0.2",
27
+ "chokidar": "4.0.3",
29
28
  "core-js": "3.39.0",
30
29
  "core-js-compat": "3.39.0",
31
30
  "fastify": "4.29.0",
@@ -35,6 +34,7 @@
35
34
  "marked-completed": "1.2.14",
36
35
  "mini-css-extract-plugin": "2.9.2",
37
36
  "style-loader": "4.0.0",
37
+ "stylis": "4.3.4",
38
38
  "swc-loader": "0.2.6",
39
39
  "typescript": "5.5.4",
40
40
  "webpack": "5.97.1",
@@ -46,9 +46,10 @@
46
46
  "devDependencies": {
47
47
  "@moneko/css": "1.1.5",
48
48
  "@types/babel__core": "7.20.5",
49
+ "@types/stylis": "4.2.7",
49
50
  "@types/webpack-bundle-analyzer": "4.7.0",
50
51
  "@types/webpack-hot-middleware": "2.25.9",
51
- "eslint-config-neko": "3.0.2",
52
+ "eslint-config-neko": "3.0.3",
52
53
  "sass": "1.83.0",
53
54
  "sass-loader": "16.0.4",
54
55
  "solid-refresh": "0.7.5",