@ethang/eslint-config 23.2.1 → 23.3.1

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/README.md CHANGED
@@ -24,9 +24,9 @@
24
24
 
25
25
  # Add Even More!
26
26
 
27
- * 80 rules for **Angular**
27
+ * 79 rules for **Angular**
28
28
  * `import angularConfig from "@ethang/eslint-config/config.angular.js";`
29
- * 46 rules from [@angular-eslint/eslint-plugin](https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/README.md)
29
+ * 45 rules from [@angular-eslint/eslint-plugin](https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/README.md)
30
30
  * 34 rules from [@angular-eslint/eslint-plugin-template](https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin-template/README.md)
31
31
  * 53 rules for **Astro**
32
32
  * `import astroConfig from "@ethang/eslint-config/config.astro.js";`
package/config.angular.js CHANGED
@@ -1,2 +1,2 @@
1
- import{a as e,b as r,c as t}from"./chunk-WK3YS7OG.js";import{defineConfig as a}from"eslint/config";import n from"angular-eslint";import l from"@angular-eslint/eslint-plugin-template";import o from"@angular-eslint/eslint-plugin";var c=a({ignores:["**/*.spec.ts","src/main.server.ts"]},{files:["**/*.ts"],ignores:e,languageOptions:r,processor:n.processInlineTemplates,plugins:{"@angular-eslint":o},rules:{"@angular-eslint/component-class-suffix":"error","@angular-eslint/component-max-inline-declarations":"error","@angular-eslint/component-selector":["error",{prefix:"app",style:"kebab-case",type:"element"}],"@angular-eslint/consistent-component-styles":"error","@angular-eslint/contextual-decorator":"error","@angular-eslint/contextual-lifecycle":"error","@angular-eslint/directive-class-suffix":"error","@angular-eslint/directive-selector":["error",{prefix:"app",style:"camelCase",type:"attribute"}],"@angular-eslint/no-async-lifecycle-method":"error","@angular-eslint/no-attribute-decorator":"error","@angular-eslint/no-conflicting-lifecycle":"error","@angular-eslint/no-developer-preview":"error","@angular-eslint/no-duplicates-in-metadata-arrays":"error","@angular-eslint/no-empty-lifecycle-method":"error","@angular-eslint/no-experimental":"error","@angular-eslint/no-forward-ref":"error","@angular-eslint/no-input-prefix":"error","@angular-eslint/no-input-rename":"error","@angular-eslint/no-inputs-metadata-property":"error","@angular-eslint/no-lifecycle-call":"error","@angular-eslint/no-output-native":"error","@angular-eslint/no-output-on-prefix":"error","@angular-eslint/no-output-rename":"error","@angular-eslint/no-outputs-metadata-property":"error","@angular-eslint/no-pipe-impure":"error","@angular-eslint/no-queries-metadata-property":"error","@angular-eslint/no-uncalled-signals":"error","@angular-eslint/pipe-prefix":"error","@angular-eslint/prefer-host-metadata-property":"error","@angular-eslint/prefer-inject":"error","@angular-eslint/prefer-on-push-component-change-detection":"error","@angular-eslint/prefer-output-emitter-ref":"error","@angular-eslint/prefer-output-readonly":"error","@angular-eslint/prefer-signals":"error","@angular-eslint/prefer-standalone":"error","@angular-eslint/relative-url-prefix":"error","@angular-eslint/require-lifecycle-on-prototype":"error","@angular-eslint/require-localize-metadata":"error","@angular-eslint/runtime-localize":"error","@angular-eslint/sort-keys-in-type-decorator":"error","@angular-eslint/sort-lifecycle-methods":"error","@angular-eslint/use-component-selector":"error","@angular-eslint/use-component-view-encapsulation":"error","@angular-eslint/use-injectable-provided-in":"error","@angular-eslint/use-lifecycle-interface":"error","@angular-eslint/use-pipe-transform-interface":"error"}},{files:["**/*.html"],languageOptions:t,plugins:{"@angular-eslint/template":l},rules:{"@angular-eslint/template/alt-text":"error","@angular-eslint/template/attributes-order":"error","@angular-eslint/template/banana-in-box":"error","@angular-eslint/template/button-has-type":"error","@angular-eslint/template/click-events-have-key-events":"error","@angular-eslint/template/conditional-complexity":"error","@angular-eslint/template/cyclomatic-complexity":"error","@angular-eslint/template/elements-content":"error","@angular-eslint/template/eqeqeq":"error","@angular-eslint/template/i18n":"off","@angular-eslint/template/interactive-supports-focus":"error","@angular-eslint/template/label-has-associated-control":"error","@angular-eslint/template/mouse-events-have-key-events":"error","@angular-eslint/template/no-any":"error","@angular-eslint/template/no-autofocus":"error","@angular-eslint/template/no-call-expression":"off","@angular-eslint/template/no-distracting-elements":"error","@angular-eslint/template/no-duplicate-attributes":"error","@angular-eslint/template/no-empty-control-flow":"error","@angular-eslint/template/no-inline-styles":"error","@angular-eslint/template/no-interpolation-in-attributes":"error","@angular-eslint/template/no-negated-async":"error","@angular-eslint/template/no-nested-tags":"error","@angular-eslint/template/no-positive-tabindex":"error","@angular-eslint/template/prefer-at-else":"error","@angular-eslint/template/prefer-at-empty":"error","@angular-eslint/template/prefer-built-in-pipes":"error","@angular-eslint/template/prefer-contextual-for-variables":"error","@angular-eslint/template/prefer-control-flow":"error","@angular-eslint/template/prefer-ngsrc":"warn","@angular-eslint/template/prefer-self-closing-tags":"error","@angular-eslint/template/prefer-static-string-properties":"error","@angular-eslint/template/prefer-template-literal":"error","@angular-eslint/template/role-has-required-aria":"error","@angular-eslint/template/table-scope":"error","@angular-eslint/template/use-track-by-function":"error","@angular-eslint/template/valid-aria":"error"}});export{c as default};
1
+ import{a as e,b as r,c as t}from"./chunk-WK3YS7OG.js";import{defineConfig as a}from"eslint/config";import n from"angular-eslint";import l from"@angular-eslint/eslint-plugin-template";import o from"@angular-eslint/eslint-plugin";var c=a({ignores:["**/*.spec.ts","src/main.server.ts"]},{files:["**/*.ts"],ignores:e,languageOptions:r,processor:n.processInlineTemplates,plugins:{"@angular-eslint":o},rules:{"@angular-eslint/component-class-suffix":"error","@angular-eslint/component-max-inline-declarations":"error","@angular-eslint/component-selector":["error",{prefix:"app",style:"kebab-case",type:"element"}],"@angular-eslint/consistent-component-styles":"error","@angular-eslint/contextual-decorator":"error","@angular-eslint/contextual-lifecycle":"error","@angular-eslint/directive-class-suffix":"error","@angular-eslint/directive-selector":["error",{prefix:"app",style:"camelCase",type:"attribute"}],"@angular-eslint/no-async-lifecycle-method":"error","@angular-eslint/no-attribute-decorator":"error","@angular-eslint/no-developer-preview":"error","@angular-eslint/no-duplicates-in-metadata-arrays":"error","@angular-eslint/no-empty-lifecycle-method":"error","@angular-eslint/no-experimental":"error","@angular-eslint/no-forward-ref":"error","@angular-eslint/no-input-prefix":"error","@angular-eslint/no-input-rename":"error","@angular-eslint/no-inputs-metadata-property":"error","@angular-eslint/no-lifecycle-call":"error","@angular-eslint/no-output-native":"error","@angular-eslint/no-output-on-prefix":"error","@angular-eslint/no-output-rename":"error","@angular-eslint/no-outputs-metadata-property":"error","@angular-eslint/no-pipe-impure":"error","@angular-eslint/no-queries-metadata-property":"error","@angular-eslint/no-uncalled-signals":"error","@angular-eslint/pipe-prefix":"error","@angular-eslint/prefer-host-metadata-property":"error","@angular-eslint/prefer-inject":"error","@angular-eslint/prefer-on-push-component-change-detection":"error","@angular-eslint/prefer-output-emitter-ref":"error","@angular-eslint/prefer-output-readonly":"error","@angular-eslint/prefer-signals":"error","@angular-eslint/prefer-standalone":"error","@angular-eslint/relative-url-prefix":"error","@angular-eslint/require-lifecycle-on-prototype":"error","@angular-eslint/require-localize-metadata":"error","@angular-eslint/runtime-localize":"error","@angular-eslint/sort-keys-in-type-decorator":"error","@angular-eslint/sort-lifecycle-methods":"error","@angular-eslint/use-component-selector":"error","@angular-eslint/use-component-view-encapsulation":"error","@angular-eslint/use-injectable-provided-in":"error","@angular-eslint/use-lifecycle-interface":"error","@angular-eslint/use-pipe-transform-interface":"error"}},{files:["**/*.html"],languageOptions:t,plugins:{"@angular-eslint/template":l},rules:{"@angular-eslint/template/alt-text":"error","@angular-eslint/template/attributes-order":"error","@angular-eslint/template/banana-in-box":"error","@angular-eslint/template/button-has-type":"error","@angular-eslint/template/click-events-have-key-events":"error","@angular-eslint/template/conditional-complexity":"error","@angular-eslint/template/cyclomatic-complexity":"error","@angular-eslint/template/elements-content":"error","@angular-eslint/template/eqeqeq":"error","@angular-eslint/template/i18n":"off","@angular-eslint/template/interactive-supports-focus":"error","@angular-eslint/template/label-has-associated-control":"error","@angular-eslint/template/mouse-events-have-key-events":"error","@angular-eslint/template/no-any":"error","@angular-eslint/template/no-autofocus":"error","@angular-eslint/template/no-call-expression":"off","@angular-eslint/template/no-distracting-elements":"error","@angular-eslint/template/no-duplicate-attributes":"error","@angular-eslint/template/no-empty-control-flow":"error","@angular-eslint/template/no-inline-styles":"error","@angular-eslint/template/no-interpolation-in-attributes":"error","@angular-eslint/template/no-negated-async":"error","@angular-eslint/template/no-nested-tags":"error","@angular-eslint/template/no-positive-tabindex":"error","@angular-eslint/template/prefer-at-else":"error","@angular-eslint/template/prefer-at-empty":"error","@angular-eslint/template/prefer-built-in-pipes":"error","@angular-eslint/template/prefer-contextual-for-variables":"error","@angular-eslint/template/prefer-control-flow":"error","@angular-eslint/template/prefer-ngsrc":"warn","@angular-eslint/template/prefer-self-closing-tags":"error","@angular-eslint/template/prefer-static-string-properties":"error","@angular-eslint/template/prefer-template-literal":"error","@angular-eslint/template/role-has-required-aria":"error","@angular-eslint/template/table-scope":"error","@angular-eslint/template/use-track-by-function":"error","@angular-eslint/template/valid-aria":"error"}});export{c as default};
2
2
  //# sourceMappingURL=config.angular.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/config.angular.js"],"sourcesContent":["// @ts-nocheck\nimport { angularLanguageOptions } from \"./constants.js\"\nimport { defineConfig } from \"eslint/config\";\nimport { ignores, languageOptions } from \"./constants.js\";\nimport angular from \"angular-eslint\";\nimport angularTemplate from \"@angular-eslint/eslint-plugin-template\";\nimport angularTS from \"@angular-eslint/eslint-plugin\";\n\nexport default defineConfig(\n {\n ignores: [\"**/*.spec.ts\", \"src/main.server.ts\"],\n },{\n files: [\"**/*.ts\"],\nignores,\nlanguageOptions,\nprocessor: angular.processInlineTemplates,\n plugins: {\n \"@angular-eslint\": angularTS,\n },\n rules: {\n \"@angular-eslint/component-class-suffix\":\"error\",\"@angular-eslint/component-max-inline-declarations\":\"error\",\"@angular-eslint/component-selector\":[\"error\",{\"prefix\":\"app\",\"style\":\"kebab-case\",\"type\":\"element\"}],\"@angular-eslint/consistent-component-styles\":\"error\",\"@angular-eslint/contextual-decorator\":\"error\",\"@angular-eslint/contextual-lifecycle\":\"error\",\"@angular-eslint/directive-class-suffix\":\"error\",\"@angular-eslint/directive-selector\":[\"error\",{\"prefix\":\"app\",\"style\":\"camelCase\",\"type\":\"attribute\"}],\"@angular-eslint/no-async-lifecycle-method\":\"error\",\"@angular-eslint/no-attribute-decorator\":\"error\",\"@angular-eslint/no-conflicting-lifecycle\":\"error\",\"@angular-eslint/no-developer-preview\":\"error\",\"@angular-eslint/no-duplicates-in-metadata-arrays\":\"error\",\"@angular-eslint/no-empty-lifecycle-method\":\"error\",\"@angular-eslint/no-experimental\":\"error\",\"@angular-eslint/no-forward-ref\":\"error\",\"@angular-eslint/no-input-prefix\":\"error\",\"@angular-eslint/no-input-rename\":\"error\",\"@angular-eslint/no-inputs-metadata-property\":\"error\",\"@angular-eslint/no-lifecycle-call\":\"error\",\"@angular-eslint/no-output-native\":\"error\",\"@angular-eslint/no-output-on-prefix\":\"error\",\"@angular-eslint/no-output-rename\":\"error\",\"@angular-eslint/no-outputs-metadata-property\":\"error\",\"@angular-eslint/no-pipe-impure\":\"error\",\"@angular-eslint/no-queries-metadata-property\":\"error\",\"@angular-eslint/no-uncalled-signals\":\"error\",\"@angular-eslint/pipe-prefix\":\"error\",\"@angular-eslint/prefer-host-metadata-property\":\"error\",\"@angular-eslint/prefer-inject\":\"error\",\"@angular-eslint/prefer-on-push-component-change-detection\":\"error\",\"@angular-eslint/prefer-output-emitter-ref\":\"error\",\"@angular-eslint/prefer-output-readonly\":\"error\",\"@angular-eslint/prefer-signals\":\"error\",\"@angular-eslint/prefer-standalone\":\"error\",\"@angular-eslint/relative-url-prefix\":\"error\",\"@angular-eslint/require-lifecycle-on-prototype\":\"error\",\"@angular-eslint/require-localize-metadata\":\"error\",\"@angular-eslint/runtime-localize\":\"error\",\"@angular-eslint/sort-keys-in-type-decorator\":\"error\",\"@angular-eslint/sort-lifecycle-methods\":\"error\",\"@angular-eslint/use-component-selector\":\"error\",\"@angular-eslint/use-component-view-encapsulation\":\"error\",\"@angular-eslint/use-injectable-provided-in\":\"error\",\"@angular-eslint/use-lifecycle-interface\":\"error\",\"@angular-eslint/use-pipe-transform-interface\":\"error\"\n },\n \n },\n{\n files: [\"**/*.html\"],\nlanguageOptions: angularLanguageOptions,\n plugins: {\n \"@angular-eslint/template\": angularTemplate,\n },\n rules: {\n \"@angular-eslint/template/alt-text\":\"error\",\"@angular-eslint/template/attributes-order\":\"error\",\"@angular-eslint/template/banana-in-box\":\"error\",\"@angular-eslint/template/button-has-type\":\"error\",\"@angular-eslint/template/click-events-have-key-events\":\"error\",\"@angular-eslint/template/conditional-complexity\":\"error\",\"@angular-eslint/template/cyclomatic-complexity\":\"error\",\"@angular-eslint/template/elements-content\":\"error\",\"@angular-eslint/template/eqeqeq\":\"error\",\"@angular-eslint/template/i18n\":\"off\",\"@angular-eslint/template/interactive-supports-focus\":\"error\",\"@angular-eslint/template/label-has-associated-control\":\"error\",\"@angular-eslint/template/mouse-events-have-key-events\":\"error\",\"@angular-eslint/template/no-any\":\"error\",\"@angular-eslint/template/no-autofocus\":\"error\",\"@angular-eslint/template/no-call-expression\":\"off\",\"@angular-eslint/template/no-distracting-elements\":\"error\",\"@angular-eslint/template/no-duplicate-attributes\":\"error\",\"@angular-eslint/template/no-empty-control-flow\":\"error\",\"@angular-eslint/template/no-inline-styles\":\"error\",\"@angular-eslint/template/no-interpolation-in-attributes\":\"error\",\"@angular-eslint/template/no-negated-async\":\"error\",\"@angular-eslint/template/no-nested-tags\":\"error\",\"@angular-eslint/template/no-positive-tabindex\":\"error\",\"@angular-eslint/template/prefer-at-else\":\"error\",\"@angular-eslint/template/prefer-at-empty\":\"error\",\"@angular-eslint/template/prefer-built-in-pipes\":\"error\",\"@angular-eslint/template/prefer-contextual-for-variables\":\"error\",\"@angular-eslint/template/prefer-control-flow\":\"error\",\"@angular-eslint/template/prefer-ngsrc\":\"warn\",\"@angular-eslint/template/prefer-self-closing-tags\":\"error\",\"@angular-eslint/template/prefer-static-string-properties\":\"error\",\"@angular-eslint/template/prefer-template-literal\":\"error\",\"@angular-eslint/template/role-has-required-aria\":\"error\",\"@angular-eslint/template/table-scope\":\"error\",\"@angular-eslint/template/use-track-by-function\":\"error\",\"@angular-eslint/template/valid-aria\":\"error\"\n },\n \n },\n \n \n );\n"],"mappings":"sDAEA,OAAS,gBAAAA,MAAoB,gBAE7B,OAAOC,MAAa,iBACpB,OAAOC,MAAqB,yCAC5B,OAAOC,MAAe,gCAEtB,IAAOC,EAAQC,EACT,CACA,QAAS,CAAC,eAAgB,oBAAoB,CAChD,EAAE,CACF,MAAO,CAAC,SAAS,EACrB,QAAAC,EACA,gBAAAC,EACA,UAAWN,EAAQ,uBACf,QAAS,CACP,kBAAmBE,CACrB,EACA,MAAO,CACL,yCAAyC,QAAQ,oDAAoD,QAAQ,qCAAqC,CAAC,QAAQ,CAAC,OAAS,MAAM,MAAQ,aAAa,KAAO,SAAS,CAAC,EAAE,8CAA8C,QAAQ,uCAAuC,QAAQ,uCAAuC,QAAQ,yCAAyC,QAAQ,qCAAqC,CAAC,QAAQ,CAAC,OAAS,MAAM,MAAQ,YAAY,KAAO,WAAW,CAAC,EAAE,4CAA4C,QAAQ,yCAAyC,QAAQ,2CAA2C,QAAQ,uCAAuC,QAAQ,mDAAmD,QAAQ,4CAA4C,QAAQ,kCAAkC,QAAQ,iCAAiC,QAAQ,kCAAkC,QAAQ,kCAAkC,QAAQ,8CAA8C,QAAQ,oCAAoC,QAAQ,mCAAmC,QAAQ,sCAAsC,QAAQ,mCAAmC,QAAQ,+CAA+C,QAAQ,iCAAiC,QAAQ,+CAA+C,QAAQ,sCAAsC,QAAQ,8BAA8B,QAAQ,gDAAgD,QAAQ,gCAAgC,QAAQ,4DAA4D,QAAQ,4CAA4C,QAAQ,yCAAyC,QAAQ,iCAAiC,QAAQ,oCAAoC,QAAQ,sCAAsC,QAAQ,iDAAiD,QAAQ,4CAA4C,QAAQ,mCAAmC,QAAQ,8CAA8C,QAAQ,yCAAyC,QAAQ,yCAAyC,QAAQ,mDAAmD,QAAQ,6CAA6C,QAAQ,0CAA0C,QAAQ,+CAA+C,OAC5zE,CAEF,EACF,CACI,MAAO,CAAC,WAAW,EACvB,gBAAiBK,EACb,QAAS,CACP,2BAA4BN,CAC9B,EACA,MAAO,CACL,oCAAoC,QAAQ,4CAA4C,QAAQ,yCAAyC,QAAQ,2CAA2C,QAAQ,wDAAwD,QAAQ,kDAAkD,QAAQ,iDAAiD,QAAQ,4CAA4C,QAAQ,kCAAkC,QAAQ,gCAAgC,MAAM,sDAAsD,QAAQ,wDAAwD,QAAQ,wDAAwD,QAAQ,kCAAkC,QAAQ,wCAAwC,QAAQ,8CAA8C,MAAM,mDAAmD,QAAQ,mDAAmD,QAAQ,iDAAiD,QAAQ,4CAA4C,QAAQ,0DAA0D,QAAQ,4CAA4C,QAAQ,0CAA0C,QAAQ,gDAAgD,QAAQ,0CAA0C,QAAQ,2CAA2C,QAAQ,iDAAiD,QAAQ,2DAA2D,QAAQ,+CAA+C,QAAQ,wCAAwC,OAAO,oDAAoD,QAAQ,2DAA2D,QAAQ,mDAAmD,QAAQ,kDAAkD,QAAQ,uCAAuC,QAAQ,iDAAiD,QAAQ,sCAAsC,OACr9D,CAEF,CAGE","names":["defineConfig","angular","angularTemplate","angularTS","config_angular_default","defineConfig","ignores","languageOptions","angularLanguageOptions"]}
1
+ {"version":3,"sources":["../src/config.angular.js"],"sourcesContent":["// @ts-nocheck\nimport { angularLanguageOptions } from \"./constants.js\"\nimport { defineConfig } from \"eslint/config\";\nimport { ignores, languageOptions } from \"./constants.js\";\nimport angular from \"angular-eslint\";\nimport angularTemplate from \"@angular-eslint/eslint-plugin-template\";\nimport angularTS from \"@angular-eslint/eslint-plugin\";\n\nexport default defineConfig(\n {\n ignores: [\"**/*.spec.ts\", \"src/main.server.ts\"],\n },{\n files: [\"**/*.ts\"],\nignores,\nlanguageOptions,\nprocessor: angular.processInlineTemplates,\n plugins: {\n \"@angular-eslint\": angularTS,\n },\n rules: {\n \"@angular-eslint/component-class-suffix\":\"error\",\"@angular-eslint/component-max-inline-declarations\":\"error\",\"@angular-eslint/component-selector\":[\"error\",{\"prefix\":\"app\",\"style\":\"kebab-case\",\"type\":\"element\"}],\"@angular-eslint/consistent-component-styles\":\"error\",\"@angular-eslint/contextual-decorator\":\"error\",\"@angular-eslint/contextual-lifecycle\":\"error\",\"@angular-eslint/directive-class-suffix\":\"error\",\"@angular-eslint/directive-selector\":[\"error\",{\"prefix\":\"app\",\"style\":\"camelCase\",\"type\":\"attribute\"}],\"@angular-eslint/no-async-lifecycle-method\":\"error\",\"@angular-eslint/no-attribute-decorator\":\"error\",\"@angular-eslint/no-developer-preview\":\"error\",\"@angular-eslint/no-duplicates-in-metadata-arrays\":\"error\",\"@angular-eslint/no-empty-lifecycle-method\":\"error\",\"@angular-eslint/no-experimental\":\"error\",\"@angular-eslint/no-forward-ref\":\"error\",\"@angular-eslint/no-input-prefix\":\"error\",\"@angular-eslint/no-input-rename\":\"error\",\"@angular-eslint/no-inputs-metadata-property\":\"error\",\"@angular-eslint/no-lifecycle-call\":\"error\",\"@angular-eslint/no-output-native\":\"error\",\"@angular-eslint/no-output-on-prefix\":\"error\",\"@angular-eslint/no-output-rename\":\"error\",\"@angular-eslint/no-outputs-metadata-property\":\"error\",\"@angular-eslint/no-pipe-impure\":\"error\",\"@angular-eslint/no-queries-metadata-property\":\"error\",\"@angular-eslint/no-uncalled-signals\":\"error\",\"@angular-eslint/pipe-prefix\":\"error\",\"@angular-eslint/prefer-host-metadata-property\":\"error\",\"@angular-eslint/prefer-inject\":\"error\",\"@angular-eslint/prefer-on-push-component-change-detection\":\"error\",\"@angular-eslint/prefer-output-emitter-ref\":\"error\",\"@angular-eslint/prefer-output-readonly\":\"error\",\"@angular-eslint/prefer-signals\":\"error\",\"@angular-eslint/prefer-standalone\":\"error\",\"@angular-eslint/relative-url-prefix\":\"error\",\"@angular-eslint/require-lifecycle-on-prototype\":\"error\",\"@angular-eslint/require-localize-metadata\":\"error\",\"@angular-eslint/runtime-localize\":\"error\",\"@angular-eslint/sort-keys-in-type-decorator\":\"error\",\"@angular-eslint/sort-lifecycle-methods\":\"error\",\"@angular-eslint/use-component-selector\":\"error\",\"@angular-eslint/use-component-view-encapsulation\":\"error\",\"@angular-eslint/use-injectable-provided-in\":\"error\",\"@angular-eslint/use-lifecycle-interface\":\"error\",\"@angular-eslint/use-pipe-transform-interface\":\"error\"\n },\n \n },\n{\n files: [\"**/*.html\"],\nlanguageOptions: angularLanguageOptions,\n plugins: {\n \"@angular-eslint/template\": angularTemplate,\n },\n rules: {\n \"@angular-eslint/template/alt-text\":\"error\",\"@angular-eslint/template/attributes-order\":\"error\",\"@angular-eslint/template/banana-in-box\":\"error\",\"@angular-eslint/template/button-has-type\":\"error\",\"@angular-eslint/template/click-events-have-key-events\":\"error\",\"@angular-eslint/template/conditional-complexity\":\"error\",\"@angular-eslint/template/cyclomatic-complexity\":\"error\",\"@angular-eslint/template/elements-content\":\"error\",\"@angular-eslint/template/eqeqeq\":\"error\",\"@angular-eslint/template/i18n\":\"off\",\"@angular-eslint/template/interactive-supports-focus\":\"error\",\"@angular-eslint/template/label-has-associated-control\":\"error\",\"@angular-eslint/template/mouse-events-have-key-events\":\"error\",\"@angular-eslint/template/no-any\":\"error\",\"@angular-eslint/template/no-autofocus\":\"error\",\"@angular-eslint/template/no-call-expression\":\"off\",\"@angular-eslint/template/no-distracting-elements\":\"error\",\"@angular-eslint/template/no-duplicate-attributes\":\"error\",\"@angular-eslint/template/no-empty-control-flow\":\"error\",\"@angular-eslint/template/no-inline-styles\":\"error\",\"@angular-eslint/template/no-interpolation-in-attributes\":\"error\",\"@angular-eslint/template/no-negated-async\":\"error\",\"@angular-eslint/template/no-nested-tags\":\"error\",\"@angular-eslint/template/no-positive-tabindex\":\"error\",\"@angular-eslint/template/prefer-at-else\":\"error\",\"@angular-eslint/template/prefer-at-empty\":\"error\",\"@angular-eslint/template/prefer-built-in-pipes\":\"error\",\"@angular-eslint/template/prefer-contextual-for-variables\":\"error\",\"@angular-eslint/template/prefer-control-flow\":\"error\",\"@angular-eslint/template/prefer-ngsrc\":\"warn\",\"@angular-eslint/template/prefer-self-closing-tags\":\"error\",\"@angular-eslint/template/prefer-static-string-properties\":\"error\",\"@angular-eslint/template/prefer-template-literal\":\"error\",\"@angular-eslint/template/role-has-required-aria\":\"error\",\"@angular-eslint/template/table-scope\":\"error\",\"@angular-eslint/template/use-track-by-function\":\"error\",\"@angular-eslint/template/valid-aria\":\"error\"\n },\n \n },\n \n \n );\n"],"mappings":"sDAEA,OAAS,gBAAAA,MAAoB,gBAE7B,OAAOC,MAAa,iBACpB,OAAOC,MAAqB,yCAC5B,OAAOC,MAAe,gCAEtB,IAAOC,EAAQC,EACT,CACA,QAAS,CAAC,eAAgB,oBAAoB,CAChD,EAAE,CACF,MAAO,CAAC,SAAS,EACrB,QAAAC,EACA,gBAAAC,EACA,UAAWN,EAAQ,uBACf,QAAS,CACP,kBAAmBE,CACrB,EACA,MAAO,CACL,yCAAyC,QAAQ,oDAAoD,QAAQ,qCAAqC,CAAC,QAAQ,CAAC,OAAS,MAAM,MAAQ,aAAa,KAAO,SAAS,CAAC,EAAE,8CAA8C,QAAQ,uCAAuC,QAAQ,uCAAuC,QAAQ,yCAAyC,QAAQ,qCAAqC,CAAC,QAAQ,CAAC,OAAS,MAAM,MAAQ,YAAY,KAAO,WAAW,CAAC,EAAE,4CAA4C,QAAQ,yCAAyC,QAAQ,uCAAuC,QAAQ,mDAAmD,QAAQ,4CAA4C,QAAQ,kCAAkC,QAAQ,iCAAiC,QAAQ,kCAAkC,QAAQ,kCAAkC,QAAQ,8CAA8C,QAAQ,oCAAoC,QAAQ,mCAAmC,QAAQ,sCAAsC,QAAQ,mCAAmC,QAAQ,+CAA+C,QAAQ,iCAAiC,QAAQ,+CAA+C,QAAQ,sCAAsC,QAAQ,8BAA8B,QAAQ,gDAAgD,QAAQ,gCAAgC,QAAQ,4DAA4D,QAAQ,4CAA4C,QAAQ,yCAAyC,QAAQ,iCAAiC,QAAQ,oCAAoC,QAAQ,sCAAsC,QAAQ,iDAAiD,QAAQ,4CAA4C,QAAQ,mCAAmC,QAAQ,8CAA8C,QAAQ,yCAAyC,QAAQ,yCAAyC,QAAQ,mDAAmD,QAAQ,6CAA6C,QAAQ,0CAA0C,QAAQ,+CAA+C,OACzwE,CAEF,EACF,CACI,MAAO,CAAC,WAAW,EACvB,gBAAiBK,EACb,QAAS,CACP,2BAA4BN,CAC9B,EACA,MAAO,CACL,oCAAoC,QAAQ,4CAA4C,QAAQ,yCAAyC,QAAQ,2CAA2C,QAAQ,wDAAwD,QAAQ,kDAAkD,QAAQ,iDAAiD,QAAQ,4CAA4C,QAAQ,kCAAkC,QAAQ,gCAAgC,MAAM,sDAAsD,QAAQ,wDAAwD,QAAQ,wDAAwD,QAAQ,kCAAkC,QAAQ,wCAAwC,QAAQ,8CAA8C,MAAM,mDAAmD,QAAQ,mDAAmD,QAAQ,iDAAiD,QAAQ,4CAA4C,QAAQ,0DAA0D,QAAQ,4CAA4C,QAAQ,0CAA0C,QAAQ,gDAAgD,QAAQ,0CAA0C,QAAQ,2CAA2C,QAAQ,iDAAiD,QAAQ,2DAA2D,QAAQ,+CAA+C,QAAQ,wCAAwC,OAAO,oDAAoD,QAAQ,2DAA2D,QAAQ,mDAAmD,QAAQ,kDAAkD,QAAQ,uCAAuC,QAAQ,iDAAiD,QAAQ,sCAAsC,OACr9D,CAEF,CAGE","names":["defineConfig","angular","angularTemplate","angularTS","config_angular_default","defineConfig","ignores","languageOptions","angularLanguageOptions"]}
package/package.json CHANGED
@@ -5,20 +5,20 @@
5
5
  "current node"
6
6
  ],
7
7
  "dependencies": {
8
- "@angular-eslint/eslint-plugin": "^20.6.0",
9
- "@angular-eslint/eslint-plugin-template": "^20.6.0",
10
- "@angular-eslint/template-parser": "^20.6.0",
8
+ "@angular-eslint/eslint-plugin": "^21.0.1",
9
+ "@angular-eslint/eslint-plugin-template": "^21.0.1",
10
+ "@angular-eslint/template-parser": "^21.0.1",
11
11
  "@cspell/eslint-plugin": "^9.3.2",
12
- "@eslint-react/eslint-plugin": "^2.3.5",
12
+ "@eslint-react/eslint-plugin": "^2.3.7",
13
13
  "@eslint/css": "0.14.1",
14
14
  "@eslint/js": "^9.39.1",
15
15
  "@eslint/json": "^0.14.0",
16
16
  "@eslint/markdown": "^7.5.1",
17
17
  "@html-eslint/eslint-plugin": "^0.49.0",
18
18
  "@tanstack/eslint-plugin-query": "^5.91.2",
19
- "@tanstack/eslint-plugin-router": "^1.133.19",
20
- "@typescript-eslint/parser": "^8.47.0",
21
- "angular-eslint": "20.6.0",
19
+ "@tanstack/eslint-plugin-router": "^1.139.0",
20
+ "@typescript-eslint/parser": "^8.48.0",
21
+ "angular-eslint": "21.0.1",
22
22
  "eslint": "^9.39.1",
23
23
  "eslint-config-prettier": "^10.1.8",
24
24
  "eslint-plugin-astro": "^1.5.0",
@@ -34,20 +34,20 @@
34
34
  "eslint-plugin-tailwindcss": "^4.0.0-beta.0",
35
35
  "eslint-plugin-unicorn": "^62.0.0",
36
36
  "prettier": "^3.6.2",
37
- "typescript-eslint": "^8.47.0"
37
+ "typescript-eslint": "^8.48.0"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@ethang/markdown-generator": "^1.1.5",
41
41
  "@ethang/toolbelt": "^4.4.11",
42
42
  "@types/eslint-plugin-jsx-a11y": "^6.10.1",
43
43
  "@types/eslint-plugin-tailwindcss": "^3.17.0",
44
- "@types/lodash": "^4.17.20",
44
+ "@types/lodash": "^4.17.21",
45
45
  "@types/node": "^24.10.1",
46
46
  "browserslist-config-baseline": "^0.5.0",
47
47
  "lodash": "^4.17.21",
48
48
  "tailwindcss": "^4.1.17",
49
49
  "typescript": "^5.9.3",
50
- "zod": "^4.1.12"
50
+ "zod": "^4.1.13"
51
51
  },
52
52
  "engines": {
53
53
  "node": ">=24"
@@ -59,7 +59,7 @@
59
59
  "url": "git+https://github.com/eglove/ethang-monorepo.git#master"
60
60
  },
61
61
  "type": "module",
62
- "version": "23.2.1",
62
+ "version": "23.3.1",
63
63
  "scripts": {
64
64
  "build": "bun build.ts && pnpm lint",
65
65
  "lint": "eslint . --fix --concurrency=auto && prettier src --write"