@batijs/core 0.0.218 → 0.0.219

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.
Files changed (2) hide show
  1. package/dist/index.js +1 -1
  2. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -769,7 +769,7 @@ in order for it to be formatted.`,cliCategory:"Other"},tabWidth:{type:"int",cate
769
769
  `);return n===-1?0:tKe(r.slice(n+1).match(/^[\t ]*/)[0],e)}var ubn=lbn;function pbn(r){if(typeof r!="string")throw new TypeError("Expected a string");return r.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function fbn(r,e){let n=r.match(new RegExp(`(${pbn(e)})+`,"g"));return n===null?0:n.reduce((s,a)=>Math.max(s,a.length/e.length),0)}var dbn=fbn;function mbn(r,e){let n=oKe(r,e);return n===!1?"":r.charAt(n)}var _bn=mbn;function hbn(r,e,n){for(let s=e;s<n;++s)if(r.charAt(s)===`
770
770
  `)return!0;return!1}var gbn=hbn;function ybn(r,e,n={}){return jM(r,n.backwards?e-1:e,n)!==e}var Tbn=ybn;function vbn(r,e,n){let s=e==='"'?"'":'"',a=bbe(!1,r,/\\(.)|(["'])/gs,(l,p,m)=>p===s?p:m===e?"\\"+m:m||(n&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/.test(p)?p:"\\"+p));return e+a+e}var Ebn=vbn;function bbn(r,e,n){return oKe(r,n(e))}function Sbn(r,e){return arguments.length===2||typeof e=="number"?oKe(r,e):bbn(...arguments)}function xbn(r,e,n){return iKe(r,n(e))}function Cbn(r,e){return arguments.length===2||typeof e=="number"?iKe(r,e):xbn(...arguments)}function Abn(r,e,n){return cKe(r,n(e))}function Pbn(r,e){return arguments.length===2||typeof e=="number"?cKe(r,e):Abn(...arguments)}function UU(r,e=1){return async(...n)=>{let s=n[e]??{},a=s.plugins??[];return n[e]={...s,plugins:Array.isArray(a)?a:Object.values(a)},r(...n)}}var T7t=UU(h7t);async function Dbe(r,e){let{formatted:n}=await T7t(r,{...e,cursorOffset:-1});return n}async function Dbn(r,e){return await Dbe(r,e)===r}var wbn=UU(t7t,0),kbn={parse:UU(HEn),formatAST:UU(XEn),formatDoc:UU(QEn),printToDoc:UU(ZEn),printDocToString:UU(ebn)};function v7t(r,e){let n=e.filepath.endsWith(".ts")||e.filepath.endsWith(".tsx")?{parser:"babel-ts"}:{};return Dbe(r,{...n,plugins:[eJe,XJe,Fze],filepath:e.filepath,vueIndentScriptAndStyle:!0})}var fpr=wx(N7(),1);import ppr from"path";function Tce(r,e){let n=r.replace(/[\\/]+/g,"/"),s=e.replace(/[\\/]+/g,"/"),a=ppr.posix.relative(ppr.dirname(n),s);return a.startsWith("../")?a:"./"+a}function YCe(r){return r.match(/^@batijs\/[^/]+\/(.+)$/)}function $Ce(r,e){let n=YCe(e.source.value),s=pH(r);if(n){let a=Tce(r.filename,n[1]);s?.addImport(a),r.report({node:e,message:"bati/module-imports",*fix(l){yield l.replaceTextRange([e.source.range[0]+1,e.source.range[1]-1],a)}})}else(e.source.value.startsWith("./")||e.source.value.startsWith("../"))&&s?.addImport(e.source.value)}function LUn(){return new fpr.Linter({configType:"flat"})}var Itt=class{flags;imports;filename;constructor(e){this.filename=e,this.flags=new Set,this.imports=new Set}addImport(e){let n=YCe(e);n?this.imports.add(Tce(this.filename,n[1])):this.imports.add(e)}deleteImport(e){let n=YCe(e);n?this.imports.delete(Tce(this.filename,n[1])):this.imports.delete(e)}addFlag(e){this.flags.add(e)}};function pH(r){return r.settings?.extractor}function dpr(r,e,n){let s=LUn(),a=new Itt(n),l=s.verifyAndFix(r,[...e,{settings:{extractor:a}}],{filename:n});if(l.messages.length>0)throw new Error(`[eslint] Error while parsing or fixing file ${n}:
771
771
  ${l.messages.map(p=>`${n}:${p.line}:${p.column} => ${p.message}`).join(`
772
- `)}`);return{code:l.output,context:a}}var JEr=wx(tot(),1),rrs=wx(N7(),1),zEr=wx(UEr(),1);function QH(r,e){let s=new Function(`{ return function(BATI){ return ${r} } };`).call(null).call(null,e.BATI);if(s!=="remove-comments-only"&&typeof s!="boolean")throw new Error("Condition evaluation failed");return s}function qEr(r,e){if(!e.test.range)return null;let n=r.text.slice(e.test.range[0],e.test.range[1]);return n.includes("BATI.has")?n.trim():null}function Gwe(r){return r.value.includes("BATI.has")?r.value.replace(/^# /,"").trim():null}function VEr(r){return r.value.includes(" BATI ")?r.value.replace(/^#/,"").replace(/#$/,"").replace(/\s+BATI\s+/,"").trim().split(","):null}function YEr(r){return[r.body[0].range[0],r.body[r.body.length-1].range[1]]}function $Er(r,e,n){return r.type==="ConditionalExpression"&&"parent"in r&&r.parent&&r.parent.type==="JSXExpressionContainer"&&(e.type==="JSXElement"||n==="null"||n==="undefined")?{range:r.parent.range,body:n==="null"||n==="undefined"?"":n}:{range:r.range,body:n}}function tB(r,e,n,s){let a=qEr(e,n);if(a===null)return;let l=QH(a,s);r.report({node:n,message:"bati/if-statement",*fix(p){if(l)if(n.consequent.type==="BlockStatement"){let m=e.text.slice(...YEr(n.consequent));yield p.replaceTextRange(n.range,m)}else{let m=e.text.slice(...n.consequent.range),h=$Er(n,n.consequent,m);yield p.replaceTextRange(h.range,h.body)}else if(n.alternate)if(n.alternate.type==="BlockStatement"){let m=e.text.slice(...YEr(n.alternate));yield p.replaceTextRange(n.range,m)}else{let m=e.text.slice(...n.alternate.range),h=$Er(n,n.alternate,m);yield p.replaceTextRange(h.range,h.body)}else yield p.remove(n)}})}function WEr(r,e,n){let s=e.getAllComments();if(s.length>0&&s[0].range?.[0]===0){let a=s[0],l=VEr(a);if(l===null||l.length===0)return;let p=pH(r);for(let m of l)switch(m){case"include-if-imported":p?.addFlag(m);break;default:r.report({node:n,message:`Unknown BATI file flag ${m}`,loc:a.loc});return}r.report({node:n,message:"bati/global-comment",*fix(m){yield m.remove(a)}})}}function ZH(r,e,n,s){let a=e.getCommentsBefore(n);if(a.length>0){let l=a[0],p=Gwe(l);if(p===null)return;let m=QH(p,s),h,y;if(!(a.length>1&&m==="remove-comments-only")){let C=["CallExpression","Property"];for(n.type==="Identifier"&&C.includes(n.parent?.type)&&(n=n.parent),h=n.range[0],y=n.range[1];e.text[y]?.match(/\s|,/);)y+=1}r.report({node:n,message:"bati/statement-comments",*fix(C){if(!m||m==="remove-comments-only"){h!==void 0&&y!==void 0&&(yield C.removeRange([h,y]));for(let E of a)yield C.remove(E)}else yield C.remove(l)}})}}function Qot(r){let e={rules:{ts:{meta:{fixable:"code"},create(s){let a=s.sourceCode;return{Program(l){WEr(s,a,l)},ImportDeclaration(l){$Ce(s,l)},":expression"(l){ZH(s,a,l,r)},":statement"(l){ZH(s,a,l,r)},ConditionalExpression(l){tB(s,a,l,r)},IfStatement(l){tB(s,a,l,r)},JSXAttribute(l){ZH(s,a,l,r)}}}}}},n=[{plugins:{batiTs:e},languageOptions:{parser:JEr},rules:{"batiTs/ts":"error"},files:["**/*.ts","**/*.js","**/*.tsx","**/*.jsx"]}];return r.BATI.has("solid")&&n.push({files:["**/*.{ts,tsx}"],...zEr.default,languageOptions:{parser:JEr}}),{plugin:e,config:n}}var aCi=wx(tot(),1),ess=wx(N7(),1),oCi=wx(yDr(),1);function TDr(r,e){let n=e.getTokenBefore("startTag"in r?r.startTag:r,{includeComments:!0,filter:s=>s.type!=="HTMLWhitespace"});return n&&n.type==="HTMLComment"?[...TDr(n,e),n]:[]}function _lt(r){let e={rules:{vue:{meta:{fixable:"code"},create(s){let a=s.sourceCode,l=s.parserServices.getTemplateBodyTokenStore();return s.parserServices.defineTemplateBodyVisitor({ConditionalExpression(p){tB(s,a,p,r)},IfStatement(p){tB(s,a,p,r)},VElement(p){let m=TDr(p,l);if(m.length>0){let h=Gwe(m[0]);if(h===null)return;let y=QH(h,r);s.report({node:p,message:"bati/vue-velement",*fix(v){y?yield v.removeRange([m[0].range[0],m[0].range[1]]):(yield v.remove(p),yield v.removeRange([m[0].range[0],m[m.length-1].range[1]]))}})}}},{ImportDeclaration(p){$Ce(s,p)},":statement"(p){ZH(s,a,p,r)},ConditionalExpression(p){tB(s,a,p,r)},IfStatement(p){tB(s,a,p,r)}})}}}};return{plugin:e,config:[{plugins:{batiVue:e},languageOptions:{parser:oCi,parserOptions:{parser:aCi,sourceType:"module"}},rules:{"batiVue/vue":"error"},files:["**/*.vue"]}]}}var wLr=wx(SLr(),1),kLr=wx(DLr(),1);var z6i=(r,e)=>(n,s)=>{let{parent:a}=n.node??s.sourceCode.getNodeByRangeIndex(s.sourceCode.getIndexFromLoc(n.loc.start));return a?/^Import(|Default|Namespace)Specifier$/.test(a.type)==r&&Object.assign(n,e?.(a,s)):n},sdt={filter:r=>r.value===","},K6i={includeComments:!0},G6i=z6i(!0,(r,e)=>({fix(n){let s=r.parent;if(!s)return null;let a=pH(e);if(s.specifiers.length===1){let l=e.sourceCode.getTokenAfter(s,K6i),p=l?l.loc.start.line-s.loc.start.line:0,m=l?l.range[0]:s.range[1],h=Math.max(0,p-1);return a?.deleteImport(s.source.value),[n.remove(s),n.replaceTextRange([s.range[1],m],`
772
+ `)}`);return{code:l.output,context:a}}var JEr=wx(tot(),1),rrs=wx(N7(),1),zEr=wx(UEr(),1);function QH(r,e){let s=new Function(`{ return function(BATI){ return ${r} } };`).call(null).call(null,e.BATI);if(s!=="remove-comments-only"&&typeof s!="boolean")throw new Error("Condition evaluation failed");return s}function qEr(r,e){if(!e.test.range)return null;let n=r.text.slice(e.test.range[0],e.test.range[1]);return n.includes("BATI.has")?n.trim():null}function Gwe(r){return r.value.includes("BATI.has")?r.value.replace(/^# /,"").trim():null}function VEr(r){return r.value.includes(" BATI ")?r.value.replace(/^#/,"").replace(/#$/,"").replace(/\s+BATI\s+/,"").trim().split(","):null}function YEr(r){return[r.body[0].range[0],r.body[r.body.length-1].range[1]]}function $Er(r,e,n){return r.type==="ConditionalExpression"&&"parent"in r&&r.parent&&r.parent.type==="JSXExpressionContainer"&&(e.type==="JSXElement"||n==="null"||n==="undefined")?{range:r.parent.range,body:n==="null"||n==="undefined"?"":n}:{range:r.range,body:n}}function tB(r,e,n,s){let a=qEr(e,n);if(a===null)return;let l=QH(a,s);r.report({node:n,message:"bati/if-statement",*fix(p){if(l)if(n.consequent.type==="BlockStatement"){let m=e.text.slice(...YEr(n.consequent));yield p.replaceTextRange(n.range,m)}else{let m=e.text.slice(...n.consequent.range),h=$Er(n,n.consequent,m);yield p.replaceTextRange(h.range,h.body)}else if(n.alternate)if(n.alternate.type==="BlockStatement"){let m=e.text.slice(...YEr(n.alternate));yield p.replaceTextRange(n.range,m)}else{let m=e.text.slice(...n.alternate.range),h=$Er(n,n.alternate,m);yield p.replaceTextRange(h.range,h.body)}else yield p.remove(n)}})}function WEr(r,e,n){let s=e.getAllComments();if(s.length>0&&s[0].range?.[0]===0){let a=s[0],l=VEr(a);if(l===null||l.length===0)return;let p=pH(r);for(let m of l)switch(m){case"include-if-imported":p?.addFlag(m);break;default:r.report({node:n,message:`Unknown BATI file flag ${m}`,loc:a.loc});return}r.report({node:n,message:"bati/global-comment",*fix(m){yield m.remove(a)}})}}function ZH(r,e,n,s){let a=e.getCommentsBefore(n);if(a.length>0){let l=a[0];if(l.handled)return;l.handled=!0;let p=Gwe(l);if(p===null)return;let m=QH(p,s),h,y;if(!(a.length>1&&m==="remove-comments-only")){let C=["CallExpression","Property"];for(n.type==="Identifier"&&C.includes(n.parent?.type)&&(n=n.parent),h=n.range[0],y=n.range[1];e.text[y]?.match(/\s|,/)&&(y+=1,e.text[y-1]!==","););}r.report({node:n,message:"bati/statement-comments",*fix(C){if(!m||m==="remove-comments-only"){h!==void 0&&y!==void 0&&(yield C.removeRange([h,y]));for(let E of a)yield C.remove(E)}else yield C.remove(l)}})}}function Qot(r){let e={rules:{ts:{meta:{fixable:"code"},create(s){let a=s.sourceCode;return{Program(l){WEr(s,a,l)},ImportDeclaration(l){$Ce(s,l)},":expression"(l){ZH(s,a,l,r)},":statement"(l){ZH(s,a,l,r)},ConditionalExpression(l){tB(s,a,l,r)},IfStatement(l){tB(s,a,l,r)},JSXAttribute(l){ZH(s,a,l,r)}}}}}},n=[{plugins:{batiTs:e},languageOptions:{parser:JEr},rules:{"batiTs/ts":"error"},files:["**/*.ts","**/*.js","**/*.tsx","**/*.jsx"]}];return r.BATI.has("solid")&&n.push({files:["**/*.{ts,tsx}"],...zEr.default,languageOptions:{parser:JEr}}),{plugin:e,config:n}}var aCi=wx(tot(),1),ess=wx(N7(),1),oCi=wx(yDr(),1);function TDr(r,e){let n=e.getTokenBefore("startTag"in r?r.startTag:r,{includeComments:!0,filter:s=>s.type!=="HTMLWhitespace"});return n&&n.type==="HTMLComment"?[...TDr(n,e),n]:[]}function _lt(r){let e={rules:{vue:{meta:{fixable:"code"},create(s){let a=s.sourceCode,l=s.parserServices.getTemplateBodyTokenStore();return s.parserServices.defineTemplateBodyVisitor({ConditionalExpression(p){tB(s,a,p,r)},IfStatement(p){tB(s,a,p,r)},VElement(p){let m=TDr(p,l);if(m.length>0){let h=Gwe(m[0]);if(h===null)return;let y=QH(h,r);s.report({node:p,message:"bati/vue-velement",*fix(v){y?yield v.removeRange([m[0].range[0],m[0].range[1]]):(yield v.remove(p),yield v.removeRange([m[0].range[0],m[m.length-1].range[1]]))}})}}},{ImportDeclaration(p){$Ce(s,p)},":statement"(p){ZH(s,a,p,r)},ConditionalExpression(p){tB(s,a,p,r)},IfStatement(p){tB(s,a,p,r)}})}}}};return{plugin:e,config:[{plugins:{batiVue:e},languageOptions:{parser:oCi,parserOptions:{parser:aCi,sourceType:"module"}},rules:{"batiVue/vue":"error"},files:["**/*.vue"]}]}}var wLr=wx(SLr(),1),kLr=wx(DLr(),1);var z6i=(r,e)=>(n,s)=>{let{parent:a}=n.node??s.sourceCode.getNodeByRangeIndex(s.sourceCode.getIndexFromLoc(n.loc.start));return a?/^Import(|Default|Namespace)Specifier$/.test(a.type)==r&&Object.assign(n,e?.(a,s)):n},sdt={filter:r=>r.value===","},K6i={includeComments:!0},G6i=z6i(!0,(r,e)=>({fix(n){let s=r.parent;if(!s)return null;let a=pH(e);if(s.specifiers.length===1){let l=e.sourceCode.getTokenAfter(s,K6i),p=l?l.loc.start.line-s.loc.start.line:0,m=l?l.range[0]:s.range[1],h=Math.max(0,p-1);return a?.deleteImport(s.source.value),[n.remove(s),n.replaceTextRange([s.range[1],m],`
773
773
  `.repeat(h))]}if(r!==s.specifiers[s.specifiers.length-1]){let l=e.sourceCode.getTokenAfter(r,sdt),p=e.sourceCode.getTokenBefore(r);return[n.removeRange([p.range[1],r.range[0]]),n.remove(r),n.remove(l)]}if(s.specifiers.filter(l=>l.type==="ImportSpecifier").length===1){let l=e.sourceCode.getTokenBefore(r,sdt),p=e.sourceCode.getTokenAfter(r,{filter:m=>m.value==="}"});return n.removeRange([l.range[0],p.range[1]])}return n.removeRange([e.sourceCode.getTokenBefore(r,sdt).range[0],r.range[1]])}}));function adt(){let r=wLr.default.rules["no-unused-vars"];r.meta.fixable="code";let e={rules:{"unused-imports":kLr.default.filterReports(r,G6i)}};return{plugin:e,config:[{plugins:{"unused-imports":e},rules:{"unused-imports/unused-imports":"error"}}]}}function NLr(r,e,n){return dpr(r,[...Qot(n).config,..._lt(n).config,...adt().config],e)}var ILr=new Function("return this")().Promise,pdt=!1;try{pdt=new Function("return (async function(){}).constructor")()}catch(r){if(!(r instanceof SyntaxError))throw r}function LLr(r,e){return Object.prototype.hasOwnProperty.call(r,e)}function Jue(r,e,n){for(var s in e)LLr(e,s)&&(e[s]!=null&&typeof e[s]=="object"&&(s==="storage"||s==="prefixes")&&!n?r[s]=Jue({},e[s]):r[s]=e[s]);return r}function H6i(r,e,n,s){var a,l;return typeof e.autoTrim=="string"?a=l=e.autoTrim:Array.isArray(e.autoTrim)&&(a=e.autoTrim[1],l=e.autoTrim[0]),(n||n===!1)&&(a=n),(s||s===!1)&&(l=s),a==="slurp"&&l==="slurp"?r.trim():(a==="_"||a==="slurp"?String.prototype.trimLeft?r=r.trimLeft():r=r.replace(/^[\s\uFEFF\xA0]+/,""):(a==="-"||a==="nl")&&(r=r.replace(/^(?:\n|\r|\r\n)/,"")),l==="_"||l==="slurp"?String.prototype.trimRight?r=r.trimRight():r=r.replace(/[\s\uFEFF\xA0]+$/,""):(l==="-"||l==="nl")&&(r=r.replace(/(?:\n|\r|\r\n)$/,"")),r)}function X6i(r){return/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(r)}var XNe=function(){function r(e){this.cache=e}return r.prototype.define=function(e,n){this.cache[e]=n},r.prototype.get=function(e){return this.cache[e]},r.prototype.remove=function(e){delete this.cache[e]},r.prototype.reset=function(){this.cache={}},r.prototype.load=function(e){Jue(this.cache,e,!0)},r}();function Q6i(r,e){Object.setPrototypeOf?Object.setPrototypeOf(r,e):r.__proto__=e}function tv(r){var e=new Error(r);return Q6i(e,tv.prototype),e}tv.prototype=Object.create(Error.prototype,{name:{value:"Squirrelly Error",enumerable:!1}});function DB(r,e,n){var s=e.slice(0,n).split(/\n/),a=s.length,l=s[a-1].length+1;throw r+=" at line "+a+" col "+l+`:
774
774
 
775
775
  `+e.split(/\n/)[a-1]+`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@batijs/core",
3
- "version": "0.0.218",
3
+ "version": "0.0.219",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "types": "./dist/index.d.ts",
@@ -31,7 +31,7 @@
31
31
  "vitest": "^1.6.0",
32
32
  "vue-eslint-parser": "^9.4.3",
33
33
  "which": "^4.0.0",
34
- "@batijs/features": "0.0.218"
34
+ "@batijs/features": "0.0.219"
35
35
  },
36
36
  "exports": {
37
37
  ".": "./dist/index.js",