@ngcompass/ast 0.1.1-beta

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.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 ngcompass
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/dist/index.cjs ADDED
@@ -0,0 +1,2 @@
1
+ 'use strict';var oxcParser=require('oxc-parser'),angularHtmlParser=require('angular-html-parser'),lightningcss=require('lightningcss');var k=(e,t)=>{let r=e.decorators;if(!r)return false;for(let n=0;n<r.length;n++){let o=r[n];if(C(o)===t)return true}return false},C=e=>{let t=e.expression;if(t&&t.type==="CallExpression"){let r=t.callee;if(r.type==="Identifier")return r.name;if(r.type==="MemberExpression"||r.type==="StaticMemberExpression"){let n=r.property;if(n.type==="Identifier")return n.name}}},L=e=>{let t=e.expression;if(!t||t.type!=="CallExpression")return;let r=t.arguments;if(!r||r.length===0)return;let n=r[0];return n.type==="ObjectExpression"?n:void 0},he=(e,t)=>{let r=e.properties;if(!r)return false;for(let n=0;n<r.length;n++){let o=r[n];if(o&&o.type!=="SpreadElement"&&M(o.key)===t)return true}return false},i=(e,t)=>{let r=e.properties;if(r)for(let n=0;n<r.length;n++){let o=r[n];if(o&&o.type!=="SpreadElement"&&M(o.key)===t)return o.value}},M=e=>{if(e){if(e.type==="Identifier")return e.name;if(e.type==="StringLiteral"||e.type==="Literal")return typeof e.value=="string"?e.value:void 0}},A=(e,t,r)=>{if(!e||e.type!=="MemberExpression"&&e.type!=="StaticMemberExpression")return false;let n=e.property;if(!n||n.type!=="Identifier"||n.name!==r)return false;let o=e.object;return !!o&&(o.type==="Identifier"&&o.name===t||(o.type==="MemberExpression"||o.type==="StaticMemberExpression")&&o.property.type==="Identifier"&&o.property.name===t)},c=e=>{if(e&&(e.type==="StringLiteral"||e.type==="Literal")){let t=e.value;return typeof t=="string"?t:void 0}},P=e=>{if(e&&(e.type==="BooleanLiteral"||e.type==="Literal")){let t=e.value;return typeof t=="boolean"?t:void 0}},Se=e=>{if(!e||e.type!=="CallExpression")return false;let t=e.callee;return t.type==="Identifier"&&t.name==="input"||(t.type==="MemberExpression"||t.type==="StaticMemberExpression")&&t.object.type==="Identifier"&&t.object.name==="input"&&t.property.type==="Identifier"&&t.property.name==="required"},ve=e=>{let t=e.callee,r=e.arguments;if(r&&r.length!==0)return t.type==="MemberExpression"||t.type==="StaticMemberExpression"?B(r):w(r)},B=e=>{let t=e[0];if(t&&t.type==="ObjectExpression")return c(i(t,"alias"))},w=e=>{if(e.length===1){let t=e[0];if(t.type==="StringLiteral"||t.type==="Literal")return c(t)}if(e.length>=2){let t=e[1];if(t&&t.type==="ObjectExpression")return c(i(t,"alias"))}};exports.ChangeDetectionStrategy=void 0;var d={kind:"non-literal"},l={kind:"missing"},u=e=>({kind:"literal",value:e});exports.ChangeDetectionStrategy=((exports.ChangeDetectionStrategy={})[exports.ChangeDetectionStrategy.Default=0]="Default",exports.ChangeDetectionStrategy[exports.ChangeDetectionStrategy.OnPush=1]="OnPush",exports.ChangeDetectionStrategy);var D=new WeakMap,S={hits:0,misses:0},z=()=>({hits:S.hits,misses:S.misses}),R=()=>{S.hits=0,S.misses=0;},v=e=>{let t=D.get(e);if(t!==void 0)return S.hits++,t;S.misses++;let r=W(e);if(!r)return D.set(e,null),null;let n=H(e.decorators,r);if(!n)return D.set(e,null),null;let o=_(e,n,r);return D.set(e,o),o},W=e=>k(e,"Component")?"Component":k(e,"Directive")?"Directive":void 0,H=(e,t)=>{for(let r=0;r<e.length;r++)if(C(e[r])===t)return e[r]},_=(e,t,r)=>{let n=r==="Component",o=L(t);return {className:e.id?.name,selector:o?V(o):l,changeDetection:n&&o?q(o):l,standalone:o?F(o):l,templateUrl:n&&o?G(o):l,template:n&&o?K(o):l,hostDirectives:o?Y(o):l,decoratorStart:t.start??t.span?.start??0,type:r}},V=e=>{let t=i(e,"selector");if(!t)return l;let r=c(t);return r!==void 0?u(r):d},q=e=>{let t=i(e,"changeDetection");if(!t)return l;if(t.type==="Identifier"){let r=t.name;return r==="OnPush"?u(1):r==="Default"?u(0):d}return A(t,"ChangeDetectionStrategy","OnPush")?u(1):A(t,"ChangeDetectionStrategy","Default")?u(0):d},F=e=>{let t=i(e,"standalone");if(!t)return l;let r=P(t);return r!==void 0?u(r):d},G=e=>{let t=i(e,"templateUrl");if(!t)return l;let r=c(t);return r!==void 0?u(r):d},K=e=>{let t=i(e,"template");if(!t)return l;let r=c(t);return r!==void 0?u(r):d},Y=e=>{let t=i(e,"hostDirectives");if(!t)return l;if(t.type!=="ArrayExpression")return d;let r=t.elements,n=[];for(let o=0;o<r.length;o++){let a=r[o];if(!a)continue;let s=$(a);s&&n.push(s);}return u(n)},$=e=>{if(e.type==="Identifier")return {directive:e.name,inputs:[],outputs:[]};if(e.type==="ObjectExpression"){let t=i(e,"directive");return {directive:t?.type==="Identifier"?t.name:void 0,inputs:j(i(e,"inputs")),outputs:j(i(e,"outputs"))}}return null},j=e=>{if(!e||e.type!=="ArrayExpression")return [];let t=e.elements,r=[];for(let n=0;n<t.length;n++){let o=t[n];if(!o)continue;let a=c(o);a&&r.push(J(a));}return r},J=e=>{if(e.includes(":")){let[t,r]=e.split(":").map(n=>n.trim());return {internal:t,external:r}}return {internal:e,external:e}},Q=e=>v(e)!==null,X=e=>{let t=v(e);if(!t)return false;let r=t.changeDetection;return r.kind==="literal"&&r.value===1},Z=e=>{let t=v(e);if(!t)return false;let r=t.standalone;return r.kind==="literal"&&r.value===true};var te=e=>{let t=[],r=[],n=[],o=a=>{if(a){if(a.children)for(let s of a.children)o(s);re(a,r,t),ne(a,t),oe(a,n,t);}};for(let a of e.rootNodes)o(a);return {expressions:t,attributes:r,blocks:n}},re=(e,t,r)=>{if(e.attrs)for(let n of e.attrs){let o=n.name,a=n.value,s=n.valueSpan?.start?.offset??0;t.push({name:o,value:a,sourceSpan:{start:n.sourceSpan?.start?.offset??0,end:n.sourceSpan?.end?.offset??0}}),a&&le(o)&&x(a,s,r);}},ne=(e,t)=>{(e.kind==="text"||e.type==="text"||e.constructor?.name==="Text")&&e.value&&(e.tokens?ae(e,t):se(e,t));},oe=(e,t,r)=>{if(e.kind!=="block"&&e.constructor?.name!=="Block")return;let n=e.name??"",o=e.parameters??[];for(let a of(t.push({name:n,parameters:o.map(s=>({expression:s.expression??"",sourceSpan:{start:s.sourceSpan?.start?.offset??0,end:s.sourceSpan?.end?.offset??0}})),sourceSpan:{start:e.sourceSpan?.start?.offset??0,end:e.sourceSpan?.end?.offset??0}}),o)){if(!a.expression)continue;let s=a.sourceSpan?.start?.offset??0;n==="for"?ie(a.expression,s,r):x(a.expression,s,r);}},ae=(e,t)=>{if(e.tokens)for(let r of e.tokens)r.type===8&&r.parts?.length===3&&x(r.parts[1],r.sourceSpan.start.offset+r.parts[0].length,t);},se=(e,t)=>{let r=e.value??"",n=e.sourceSpan?.start?.offset??0,o=0,a=r.indexOf("{{",o);for(;a!==-1;){let s=r.indexOf("}}",a+2);if(s===-1)break;x(r.substring(a+2,s),n+a+2,t),o=s+2,a=r.indexOf("{{",o);}},ie=(e,t,r)=>{e.includes(" track ")?x(e.split(" track ")[1],t+e.indexOf(" track ")+7,r):e.startsWith("track ")&&x(e.substring(6),t+6,r),e.includes(" of ")&&x(e.split(" of ")[1].split(";")[0],t+e.indexOf(" of ")+4,r);},le=e=>e.startsWith("*")||e.startsWith("[")&&e.endsWith("]")||e.startsWith("bind-"),x=(e,t,r)=>{if(e.trim())try{let n=oxcParser.parseSync("template.ts",`(${e})`,{sourceType:"module",lang:"ts"});if(n.program.body.length===0)return;let o=n.program.body[0];if(o.type!=="ExpressionStatement"||!o.expression)return;let a=o.expression;a.type==="ParenthesizedExpression"&&a.expression&&(a=a.expression),r.push({expression:a,sourceSpan:{start:t,end:t+e.length}});}catch{}};var Me=e=>{let t=v(e);return t?{node:e,metadata:t}:null},pe=new Set(["Component","Directive","Pipe","Injectable","NgModule"]),Pe=e=>{let t=e.decorators;if(!t)return null;for(let r=0;r<t.length;r++){let n=C(t[r]);if(n&&pe.has(n))return {node:e,decoratorName:n,className:e.id?.name,decoratorStart:t[r].start??t[r].span?.start??0}}return null},je=e=>{let t=e.decorators;return t&&t.length!==0?{node:e,decorators:t}:null},Ue=e=>e,Te=e=>e;var ze=(e,t)=>{let r=fe(t,e);return {program:r.program,errors:r.errors}},fe=(e,t)=>oxcParser.parseSync(e,t,{sourceType:"module",lang:"tsx"});var He=(e,t=0)=>{let r=me(e);return {rootNodes:r.rootNodes,errors:r.errors,templateStartOffset:t}},me=e=>angularHtmlParser.parse(e,{tokenizeAngularBlocks:true});var qe=(e,t)=>{try{return {ok:!0,...de(e,t)}}catch(r){return {ok:false,error:r}}},de=(e,t)=>{let r=lightningcss.transform({filename:t,code:Buffer.from(e),minify:false,sourceMap:false});return {code:r.code,map:r.map}};var xe=new Set(["parent","span","loc","range","start","end","type"]);function U(e){return typeof e=="object"&&e!==null&&typeof e.type=="string"}function I(e,t){if(!e)return;let r=[e];for(;r.length>0;){let n=r.pop();if(!n||t(n)===false)continue;let o=[];for(let a in n){if(xe.has(a))continue;let s=n[a];if(s&&typeof s=="object")if(Array.isArray(s))for(let f=0;f<s.length;f++){let g=s[f];U(g)&&o.push(g);}else U(s)&&o.push(s);}for(let a=o.length-1;a>=0;a--)r.push(o[a]);}}function Ye(e){let t={content:"",startOffset:0};return I(e,r=>{if(t.content)return false;if(r.type==="ClassDeclaration"&&Array.isArray(r.decorators)){let n=(function(o){let a=o.decorators;if(!a)return null;for(let s of a){let f=s?.expression;if(!f||f.type!=="CallExpression")continue;let g=f.callee;if(!g||g.type!=="Identifier"||g.name!=="Component")continue;let T=f.arguments,O=T?.[0];if(!O||O.type!=="ObjectExpression")continue;let N=(function(p,m){if(!Array.isArray(p))return null;for(let h of p){let b=h?.key,E=h?.value;if(b&&E&&(b.name??b.value)===m)return E}return null})(O.properties,"template");if(N)return (function(p){if(!p)return {content:"",startOffset:0};if(p.type==="StringLiteral"||p.type==="Literal"){let m=p.span,h=p.start??m?.start??0;return {content:p.value??"",startOffset:h+1}}if(p.type==="TemplateLiteral"){let m=p.quasis??[],h=m.map(E=>E.value?.raw??"").join(""),b=m[0]?.span;return {content:h,startOffset:(m[0]?.start??b?.start??0)+1}}return {content:"",startOffset:0}})(N)}return null})(r);if(n)return t=n,false}}),t}exports.analyzeComponent=v;exports.analyzeTemplate=te;exports.extractTemplateFromProgram=Ye;exports.getComponentCacheStats=z;exports.getDecoratorNameUnsafe=C;exports.getDecoratorObjectArgUnsafe=L;exports.getInputSignalAliasUnsafe=ve;exports.getKeyNameUnsafe=M;exports.getLiteralBooleanValueUnsafe=P;exports.getLiteralStringValueUnsafe=c;exports.getObjectPropertyUnsafe=i;exports.hasDecorator=k;exports.hasObjectProperty=he;exports.isComponent=Q;exports.isInputSignal=Se;exports.isStandalone=Z;exports.matchesMemberExpression=A;exports.parseCss=qe;exports.parseHtml=He;exports.parseTs=ze;exports.resetComponentCacheStats=R;exports.toAngularClassStream=Me;exports.toAnyAngularClassStream=Pe;exports.toCallExpressionStream=Ue;exports.toDecoratedPropertyStream=je;exports.toNewExpressionStream=Te;exports.usesOnPush=X;exports.walkProgram=I;//# sourceMappingURL=index.cjs.map
2
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/ast/matchers.ts","../src/analyzers/component-analyzer.ts","../src/analyzers/template-analyzer.ts","../src/node-streams.ts","../src/parsers/ts.ts","../src/parsers/html.ts","../src/parsers/css.ts","../src/visitor.ts","../src/parsers/template-extractor.ts"],"names":["hasDecorator","classNode","decoratorName","decorators","i","length","decorator","getDecoratorNameUnsafe","expr","expression","type","callee","name","prop","property","getDecoratorObjectArgUnsafe","args","arguments","first","undefined","hasObjectProperty","objectExpr","keyName","properties","getKeyNameUnsafe","key","getObjectPropertyUnsafe","value","matchesMemberExpression","objectName","propertyName","obj","object","getLiteralStringValueUnsafe","node","getLiteralBooleanValueUnsafe","isInputSignal","getInputSignalAliasUnsafe","callExpr","getRequiredInputAlias","getOptionalInputAlias","second","ChangeDetectionStrategy","NON_LITERAL","kind","MISSING","literal","componentCache","WeakMap","cacheStats","hits","misses","getComponentCacheStats","resetComponentCacheStats","analyzeComponent","cached","get","resolveAngularDecoratorName","set","findDecoratorByName","metadata","buildComponentMetadata","isComp","metadataObject","className","id","selector","extractSelector","changeDetection","extractChangeDetection","standalone","extractStandalone","templateUrl","extractTemplateUrl","template","extractTemplate","hostDirectives","extractHostDirectives","decoratorStart","start","span","elements","results","el","parsed","parseHostDirectiveElement","push","directive","inputs","outputs","dirNode","extractRenames","renames","parseRenameString","includes","internal","external","split","map","s","trim","isComponent","usesOnPush","component","cd","isStandalone","analyzeTemplate","htmlResult","expressions","attributes","blocks","visit","children","child","visitAttributes","visitTextNode","visitBlock","rootNode","rootNodes","attrs","attr","attrOffset","valueSpan","offset","sourceSpan","end","isBindingAttribute","parseAndAdd","tokens","extractInterpolationsFromTokens","extractInterpolationsManually","blockName","parameters","param","p","extractForBlockExpressions","token","parts","textValue","nodeStart","lastIndex","indexOf","substring","startsWith","endsWith","code","outcomes","ret","parseSync","sourceType","lang","program","body","stmt","toAngularClassStream","ANY_ANGULAR_DECORATORS","Set","toAnyAngularClassStream","has","toDecoratedPropertyStream","propertyNode","toCallExpressionStream","toNewExpressionStream","parseTs","content","filePath","result","runOxcParse","errors","parseHtml","templateStartOffset","runAngularHtmlParse","parse","tokenizeAngularBlocks","parseCss","ok","runLightningCssTransform","error","transform","filename","Buffer","from","minify","sourceMap","NON_CHILD_KEYS","isTraversableNode","walkProgram","root","visitor","stack","pop","val","Array","isArray","extractTemplateFromProgram","startOffset","rawNode","extracted","call","objectArg","templateValue","quasis","q","raw","join","firstSpan"],"mappings":"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","file":"index.cjs","sourcesContent":["export const hasDecorator = (e, t)=>{\n let r = e.decorators;\n if (!r) return !1;\n for(let e = 0; e < r.length; e++){\n let n = r[e];\n if (getDecoratorNameUnsafe(n) === t) return !0;\n }\n return !1;\n};\nexport const getDecoratorNameUnsafe = (e)=>{\n let t = e.expression;\n if (t && 'CallExpression' === t.type) {\n let e = t.callee;\n if ('Identifier' === e.type) return e.name;\n if ('MemberExpression' === e.type || 'StaticMemberExpression' === e.type) {\n let t = e.property;\n if ('Identifier' === t.type) return t.name;\n }\n }\n};\nexport const getDecoratorObjectArgUnsafe = (e)=>{\n let t = e.expression;\n if (!t || 'CallExpression' !== t.type) return;\n let r = t.arguments;\n if (!r || 0 === r.length) return;\n let n = r[0];\n return 'ObjectExpression' === n.type ? n : void 0;\n};\nexport const hasObjectProperty = (e, t)=>{\n let r = e.properties;\n if (!r) return !1;\n for(let e = 0; e < r.length; e++){\n let n = r[e];\n if (n && 'SpreadElement' !== n.type && getKeyNameUnsafe(n.key) === t) return !0;\n }\n return !1;\n};\nexport const getObjectPropertyUnsafe = (e, t)=>{\n let r = e.properties;\n if (r) for(let e = 0; e < r.length; e++){\n let n = r[e];\n if (n && 'SpreadElement' !== n.type && getKeyNameUnsafe(n.key) === t) return n.value;\n }\n};\nexport const getKeyNameUnsafe = (e)=>{\n if (e) {\n if ('Identifier' === e.type) return e.name;\n if ('StringLiteral' === e.type || 'Literal' === e.type) return 'string' == typeof e.value ? e.value : void 0;\n }\n};\nexport const matchesMemberExpression = (e, t, r)=>{\n if (!e || 'MemberExpression' !== e.type && 'StaticMemberExpression' !== e.type) return !1;\n let n = e.property;\n if (!n || 'Identifier' !== n.type || n.name !== r) return !1;\n let i = e.object;\n return !!i && ('Identifier' === i.type && i.name === t || ('MemberExpression' === i.type || 'StaticMemberExpression' === i.type) && 'Identifier' === i.property.type && i.property.name === t);\n};\nexport const getLiteralStringValueUnsafe = (e)=>{\n if (e && ('StringLiteral' === e.type || 'Literal' === e.type)) {\n let t = e.value;\n return 'string' == typeof t ? t : void 0;\n }\n};\nexport const getLiteralBooleanValueUnsafe = (e)=>{\n if (e && ('BooleanLiteral' === e.type || 'Literal' === e.type)) {\n let t = e.value;\n return 'boolean' == typeof t ? t : void 0;\n }\n};\nexport const isInputSignal = (e)=>{\n if (!e || 'CallExpression' !== e.type) return !1;\n let t = e.callee;\n return 'Identifier' === t.type && 'input' === t.name || ('MemberExpression' === t.type || 'StaticMemberExpression' === t.type) && 'Identifier' === t.object.type && 'input' === t.object.name && 'Identifier' === t.property.type && 'required' === t.property.name;\n};\nexport const getInputSignalAliasUnsafe = (e)=>{\n let t = e.callee, r = e.arguments;\n if (r && 0 !== r.length) return 'MemberExpression' === t.type || 'StaticMemberExpression' === t.type ? getRequiredInputAlias(r) : getOptionalInputAlias(r);\n};\nlet getRequiredInputAlias = (e)=>{\n let t = e[0];\n if (t && 'ObjectExpression' === t.type) return getLiteralStringValueUnsafe(getObjectPropertyUnsafe(t, 'alias'));\n}, getOptionalInputAlias = (e)=>{\n if (1 === e.length) {\n let t = e[0];\n if ('StringLiteral' === t.type || 'Literal' === t.type) return getLiteralStringValueUnsafe(t);\n }\n if (e.length >= 2) {\n let t = e[1];\n if (t && 'ObjectExpression' === t.type) return getLiteralStringValueUnsafe(getObjectPropertyUnsafe(t, 'alias'));\n }\n};\n","var ChangeDetectionStrategy;\nimport { hasDecorator as e, getDecoratorNameUnsafe as t, getDecoratorObjectArgUnsafe as n, getObjectPropertyUnsafe as r, matchesMemberExpression as a, getLiteralStringValueUnsafe as l, getLiteralBooleanValueUnsafe as i } from '../ast/matchers.js';\nlet NON_LITERAL = {\n kind: 'non-literal'\n}, MISSING = {\n kind: 'missing'\n}, literal = (e)=>({\n kind: 'literal',\n value: e\n });\nexport var ChangeDetectionStrategy = ((ChangeDetectionStrategy = {})[ChangeDetectionStrategy.Default = 0] = \"Default\", ChangeDetectionStrategy[ChangeDetectionStrategy.OnPush = 1] = \"OnPush\", ChangeDetectionStrategy);\nlet componentCache = new WeakMap(), cacheStats = {\n hits: 0,\n misses: 0\n};\nexport const getComponentCacheStats = ()=>({\n hits: cacheStats.hits,\n misses: cacheStats.misses\n });\nexport const resetComponentCacheStats = ()=>{\n cacheStats.hits = 0, cacheStats.misses = 0;\n};\nexport const analyzeComponent = (e)=>{\n let t = componentCache.get(e);\n if (void 0 !== t) return cacheStats.hits++, t;\n cacheStats.misses++;\n let n = resolveAngularDecoratorName(e);\n if (!n) return componentCache.set(e, null), null;\n let r = findDecoratorByName(e.decorators, n);\n if (!r) return componentCache.set(e, null), null;\n let a = buildComponentMetadata(e, r, n);\n return componentCache.set(e, a), a;\n};\nlet resolveAngularDecoratorName = (t)=>e(t, 'Component') ? 'Component' : e(t, 'Directive') ? 'Directive' : void 0, findDecoratorByName = (e, n)=>{\n for(let r = 0; r < e.length; r++)if (t(e[r]) === n) return e[r];\n}, buildComponentMetadata = (e, t, r)=>{\n let a = 'Component' === r, l = n(t);\n return {\n className: e.id?.name,\n selector: l ? extractSelector(l) : MISSING,\n changeDetection: a && l ? extractChangeDetection(l) : MISSING,\n standalone: l ? extractStandalone(l) : MISSING,\n templateUrl: a && l ? extractTemplateUrl(l) : MISSING,\n template: a && l ? extractTemplate(l) : MISSING,\n hostDirectives: l ? extractHostDirectives(l) : MISSING,\n decoratorStart: t.start ?? t.span?.start ?? 0,\n type: r\n };\n}, extractSelector = (e)=>{\n let t = r(e, 'selector');\n if (!t) return MISSING;\n let n = l(t);\n return void 0 !== n ? literal(n) : NON_LITERAL;\n}, extractChangeDetection = (e)=>{\n let t = r(e, 'changeDetection');\n if (!t) return MISSING;\n if ('Identifier' === t.type) {\n let e = t.name;\n return 'OnPush' === e ? literal(1) : 'Default' === e ? literal(0) : NON_LITERAL;\n }\n return a(t, 'ChangeDetectionStrategy', 'OnPush') ? literal(1) : a(t, 'ChangeDetectionStrategy', 'Default') ? literal(0) : NON_LITERAL;\n}, extractStandalone = (e)=>{\n let t = r(e, 'standalone');\n if (!t) return MISSING;\n let n = i(t);\n return void 0 !== n ? literal(n) : NON_LITERAL;\n}, extractTemplateUrl = (e)=>{\n let t = r(e, 'templateUrl');\n if (!t) return MISSING;\n let n = l(t);\n return void 0 !== n ? literal(n) : NON_LITERAL;\n}, extractTemplate = (e)=>{\n let t = r(e, 'template');\n if (!t) return MISSING;\n let n = l(t);\n return void 0 !== n ? literal(n) : NON_LITERAL;\n}, extractHostDirectives = (e)=>{\n let t = r(e, 'hostDirectives');\n if (!t) return MISSING;\n if ('ArrayExpression' !== t.type) return NON_LITERAL;\n let n = t.elements, a = [];\n for(let e = 0; e < n.length; e++){\n let t = n[e];\n if (!t) continue;\n let r = parseHostDirectiveElement(t);\n r && a.push(r);\n }\n return literal(a);\n}, parseHostDirectiveElement = (e)=>{\n if ('Identifier' === e.type) return {\n directive: e.name,\n inputs: [],\n outputs: []\n };\n if ('ObjectExpression' === e.type) {\n let t = r(e, 'directive');\n return {\n directive: t?.type === 'Identifier' ? t.name : void 0,\n inputs: extractRenames(r(e, 'inputs')),\n outputs: extractRenames(r(e, 'outputs'))\n };\n }\n return null;\n}, extractRenames = (e)=>{\n if (!e || 'ArrayExpression' !== e.type) return [];\n let t = e.elements, n = [];\n for(let e = 0; e < t.length; e++){\n let r = t[e];\n if (!r) continue;\n let a = l(r);\n a && n.push(parseRenameString(a));\n }\n return n;\n}, parseRenameString = (e)=>{\n if (e.includes(':')) {\n let [t, n] = e.split(':').map((e)=>e.trim());\n return {\n internal: t,\n external: n\n };\n }\n return {\n internal: e,\n external: e\n };\n};\nexport const isComponent = (e)=>null !== analyzeComponent(e);\nexport const usesOnPush = (e)=>{\n let t = analyzeComponent(e);\n if (!t) return !1;\n let n = t.changeDetection;\n return 'literal' === n.kind && 1 === n.value;\n};\nexport const isStandalone = (e)=>{\n let t = analyzeComponent(e);\n if (!t) return !1;\n let n = t.standalone;\n return 'literal' === n.kind && !0 === n.value;\n};\n","import { parseSync as t } from 'oxc-parser';\nexport const analyzeTemplate = (t)=>{\n let e = [], s = [], r = [], n = (t)=>{\n if (t) {\n if (t.children) for (let e of t.children)n(e);\n visitAttributes(t, s, e), visitTextNode(t, e), visitBlock(t, r, e);\n }\n };\n for (let e of t.rootNodes)n(e);\n return {\n expressions: e,\n attributes: s,\n blocks: r\n };\n};\nlet visitAttributes = (t, e, s)=>{\n if (t.attrs) for (let r of t.attrs){\n let t = r.name, n = r.value, o = r.valueSpan?.start?.offset ?? 0;\n e.push({\n name: t,\n value: n,\n sourceSpan: {\n start: r.sourceSpan?.start?.offset ?? 0,\n end: r.sourceSpan?.end?.offset ?? 0\n }\n }), n && isBindingAttribute(t) && parseAndAdd(n, o, s);\n }\n}, visitTextNode = (t, e)=>{\n ('text' === t.kind || 'text' === t.type || t.constructor?.name === 'Text') && t.value && (t.tokens ? extractInterpolationsFromTokens(t, e) : extractInterpolationsManually(t, e));\n}, visitBlock = (t, e, s)=>{\n if ('block' !== t.kind && t.constructor?.name !== 'Block') return;\n let r = t.name ?? '', n = t.parameters ?? [];\n for (let o of (e.push({\n name: r,\n parameters: n.map((t)=>({\n expression: t.expression ?? '',\n sourceSpan: {\n start: t.sourceSpan?.start?.offset ?? 0,\n end: t.sourceSpan?.end?.offset ?? 0\n }\n })),\n sourceSpan: {\n start: t.sourceSpan?.start?.offset ?? 0,\n end: t.sourceSpan?.end?.offset ?? 0\n }\n }), n)){\n if (!o.expression) continue;\n let t = o.sourceSpan?.start?.offset ?? 0;\n 'for' === r ? extractForBlockExpressions(o.expression, t, s) : parseAndAdd(o.expression, t, s);\n }\n}, extractInterpolationsFromTokens = (t, e)=>{\n if (t.tokens) for (let s of t.tokens)8 === s.type && s.parts?.length === 3 && parseAndAdd(s.parts[1], s.sourceSpan.start.offset + s.parts[0].length, e);\n}, extractInterpolationsManually = (t, e)=>{\n let s = t.value ?? '', r = t.sourceSpan?.start?.offset ?? 0, n = 0, o = s.indexOf('{{', n);\n for(; -1 !== o;){\n let t = s.indexOf('}}', o + 2);\n if (-1 === t) break;\n parseAndAdd(s.substring(o + 2, t), r + o + 2, e), n = t + 2, o = s.indexOf('{{', n);\n }\n}, extractForBlockExpressions = (t, e, s)=>{\n t.includes(' track ') ? parseAndAdd(t.split(' track ')[1], e + t.indexOf(' track ') + 7, s) : t.startsWith('track ') && parseAndAdd(t.substring(6), e + 6, s), t.includes(' of ') && parseAndAdd(t.split(' of ')[1].split(';')[0], e + t.indexOf(' of ') + 4, s);\n}, isBindingAttribute = (t)=>t.startsWith('*') || t.startsWith('[') && t.endsWith(']') || t.startsWith('bind-'), parseAndAdd = (e, s, r)=>{\n if (e.trim()) try {\n let n = t('template.ts', `(${e})`, {\n sourceType: 'module',\n lang: 'ts'\n });\n if (0 === n.program.body.length) return;\n let o = n.program.body[0];\n if ('ExpressionStatement' !== o.type || !o.expression) return;\n let a = o.expression;\n 'ParenthesizedExpression' === a.type && a.expression && (a = a.expression), r.push({\n expression: a,\n sourceSpan: {\n start: s,\n end: s + e.length\n }\n });\n } catch {}\n};\n","import { analyzeComponent as t } from './analyzers/component-analyzer.js';\nimport { getDecoratorNameUnsafe as e } from './ast/matchers.js';\nexport const toAngularClassStream = (e)=>{\n let r = t(e);\n return r ? {\n node: e,\n metadata: r\n } : null;\n};\nlet ANY_ANGULAR_DECORATORS = new Set([\n 'Component',\n 'Directive',\n 'Pipe',\n 'Injectable',\n 'NgModule'\n]);\nexport const toAnyAngularClassStream = (t)=>{\n let r = t.decorators;\n if (!r) return null;\n for(let o = 0; o < r.length; o++){\n let n = e(r[o]);\n if (n && ANY_ANGULAR_DECORATORS.has(n)) return {\n node: t,\n decoratorName: n,\n className: t.id?.name,\n decoratorStart: r[o].start ?? r[o].span?.start ?? 0\n };\n }\n return null;\n};\nexport const toDecoratedPropertyStream = (t)=>{\n let e = t.decorators;\n return e && 0 !== e.length ? {\n node: t,\n decorators: e\n } : null;\n};\nexport const toCallExpressionStream = (t)=>t;\nexport const toNewExpressionStream = (t)=>t;\n","import { parseSync as r } from \"oxc-parser\";\nexport const parseTs = (r, e)=>{\n let o = runOxcParse(e, r);\n return {\n program: o.program,\n errors: o.errors\n };\n};\nlet runOxcParse = (e, o)=>r(e, o, {\n sourceType: \"module\",\n lang: \"tsx\"\n });\n","import { parse as r } from \"angular-html-parser\";\nexport const parseHtml = (r, e = 0)=>{\n let o = runAngularHtmlParse(r);\n return {\n rootNodes: o.rootNodes,\n errors: o.errors,\n templateStartOffset: e\n };\n};\nlet runAngularHtmlParse = (e)=>r(e, {\n tokenizeAngularBlocks: !0\n });\n","import { transform as r } from \"lightningcss\";\nexport const parseCss = (r, e)=>{\n try {\n let n = runLightningCssTransform(r, e);\n return {\n ok: !0,\n ...n\n };\n } catch (r) {\n return {\n ok: !1,\n error: r\n };\n }\n};\nlet runLightningCssTransform = (e, n)=>{\n let o = r({\n filename: n,\n code: Buffer.from(e),\n minify: !1,\n sourceMap: !1\n });\n return {\n code: o.code,\n map: o.map\n };\n};\n","let NON_CHILD_KEYS = new Set([\n 'parent',\n 'span',\n 'loc',\n 'range',\n 'start',\n 'end',\n 'type'\n]);\nfunction isTraversableNode(e) {\n return 'object' == typeof e && null !== e && 'string' == typeof e.type;\n}\nexport function walkProgram(e, t) {\n if (!e) return;\n let r = [\n e\n ];\n for(; r.length > 0;){\n let e = r.pop();\n if (!e || !1 === t(e)) continue;\n let n = [];\n for(let t in e){\n if (NON_CHILD_KEYS.has(t)) continue;\n let r = e[t];\n if (r && 'object' == typeof r) if (Array.isArray(r)) for(let e = 0; e < r.length; e++){\n let t = r[e];\n isTraversableNode(t) && n.push(t);\n }\n else isTraversableNode(r) && n.push(r);\n }\n for(let e = n.length - 1; e >= 0; e--)r.push(n[e]);\n }\n}\n","import { walkProgram as t } from '../visitor.js';\nexport function extractTemplateFromProgram(e) {\n let r = {\n content: '',\n startOffset: 0\n };\n return t(e, (t)=>{\n if (r.content) return !1;\n if ('ClassDeclaration' === t.type && Array.isArray(t.decorators)) {\n let e = function(t) {\n let e = t.decorators;\n if (!e) return null;\n for (let t of e){\n let e = t?.expression;\n if (!e || 'CallExpression' !== e.type) continue;\n let r = e.callee;\n if (!r || 'Identifier' !== r.type || 'Component' !== r.name) continue;\n let n = e.arguments, a = n?.[0];\n if (!a || 'ObjectExpression' !== a.type) continue;\n let i = function(t, e) {\n if (!Array.isArray(t)) return null;\n for (let r of t){\n let t = r?.key, n = r?.value;\n if (t && n && (t.name ?? t.value) === e) return n;\n }\n return null;\n }(a.properties, 'template');\n if (i) return function(t) {\n if (!t) return {\n content: '',\n startOffset: 0\n };\n if ('StringLiteral' === t.type || 'Literal' === t.type) {\n let e = t.span, r = t.start ?? e?.start ?? 0;\n return {\n content: t.value ?? '',\n startOffset: r + 1\n };\n }\n if ('TemplateLiteral' === t.type) {\n let e = t.quasis ?? [], r = e.map((t)=>{\n let e = t.value;\n return e?.raw ?? '';\n }).join(''), n = e[0]?.span;\n return {\n content: r,\n startOffset: (e[0]?.start ?? n?.start ?? 0) + 1\n };\n }\n return {\n content: '',\n startOffset: 0\n };\n }(i);\n }\n return null;\n }(t);\n if (e) return r = e, !1;\n }\n }), r;\n}\n"]}