pasika 0.4.0 → 0.4.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.
@@ -1,9 +1,9 @@
1
- import * as eslint from 'eslint';
2
- import { Rule, Linter } from 'eslint';
3
- import * as ESTree from 'estree';
4
1
  import * as _eslint_markdown from '@eslint/markdown';
5
2
  import * as _eslint_css from '@eslint/css';
6
3
  import * as _eslint_json from '@eslint/json';
4
+ import * as eslint from 'eslint';
5
+ import { Rule, Linter } from 'eslint';
6
+ import * as ESTree from 'estree';
7
7
 
8
8
  /**
9
9
  * Local AST node types for the parser-specific shapes ESLint's ESTree types
@@ -188,6 +188,108 @@ declare const pasikaRules: {
188
188
  "zirka-baseline": eslint.Rule.RuleModule;
189
189
  };
190
190
 
191
+ /**
192
+ * One plugin object every preset block references. ESLint only permits a
193
+ * plugin name to be redefined across configs when the value is the same
194
+ * object reference, and several blocks share file scopes (`src/**`, the
195
+ * manifest, `globals.css`), so a per-block plugin object would collide when
196
+ * the blocks merge.
197
+ */
198
+ declare const pasikaPlugin: {
199
+ rules: {
200
+ "vulyk-docs": _eslint_json.JSONRuleDefinition;
201
+ "husky-hook": _eslint_json.JSONRuleDefinition;
202
+ "nextjs-stack": _eslint_json.JSONRuleDefinition;
203
+ "no-vulyk-dependency": _eslint_json.JSONRuleDefinition;
204
+ "exact-version": _eslint_json.JSONRuleDefinition;
205
+ "theme-reset": _eslint_css.CSSRuleDefinition;
206
+ "root-variables": _eslint_css.CSSRuleDefinition;
207
+ "apply-usage": _eslint_css.CSSRuleDefinition;
208
+ "base-layer-pair": _eslint_css.CSSRuleDefinition;
209
+ "stylesheet-ordering": _eslint_css.CSSRuleDefinition;
210
+ "css-variable-naming": _eslint_css.CSSRuleDefinition;
211
+ "custom-utility-apply": _eslint_css.CSSRuleDefinition;
212
+ "surface-utility": _eslint_css.CSSRuleDefinition;
213
+ "theme-variable-namespace": _eslint_css.CSSRuleDefinition;
214
+ "global-css-location": _eslint_css.CSSRuleDefinition;
215
+ "global-stylesheet": _eslint_css.CSSRuleDefinition;
216
+ "doc-kind-suffix": _eslint_markdown.MarkdownRuleDefinition;
217
+ "title-matches-file-name": _eslint_markdown.MarkdownRuleDefinition;
218
+ overview: _eslint_markdown.MarkdownRuleDefinition;
219
+ "guide-step-single-sentence": _eslint_markdown.MarkdownRuleDefinition;
220
+ "guide-step-single-link": _eslint_markdown.MarkdownRuleDefinition;
221
+ "guide-states-no-requirement": _eslint_markdown.MarkdownRuleDefinition;
222
+ "requirement-present": _eslint_markdown.MarkdownRuleDefinition;
223
+ "rule-paired-examples": _eslint_markdown.MarkdownRuleDefinition;
224
+ "example-heading-description": _eslint_markdown.MarkdownRuleDefinition;
225
+ "policy-no-examples": _eslint_markdown.MarkdownRuleDefinition;
226
+ "no-cross-document-link": _eslint_markdown.MarkdownRuleDefinition;
227
+ "reference-no-rfc-vocabulary": _eslint_markdown.MarkdownRuleDefinition;
228
+ "reference-block-headings": _eslint_markdown.MarkdownRuleDefinition;
229
+ "support-document-placement": _eslint_markdown.MarkdownRuleDefinition;
230
+ "no-template-prompt": _eslint_markdown.MarkdownRuleDefinition;
231
+ "guide-folder-entry-point": _eslint_markdown.MarkdownRuleDefinition;
232
+ "rfc-only-in-bullets": _eslint_markdown.MarkdownRuleDefinition;
233
+ "rfc-keyword-in-every-bullet": _eslint_markdown.MarkdownRuleDefinition;
234
+ "policy-subject-headings": _eslint_markdown.MarkdownRuleDefinition;
235
+ "guide-link-anchors": _eslint_markdown.MarkdownRuleDefinition;
236
+ "no-nested-how-to": _eslint_markdown.MarkdownRuleDefinition;
237
+ "glossary-term-linking": _eslint_markdown.MarkdownRuleDefinition;
238
+ "guide-mentions-documents": _eslint_markdown.MarkdownRuleDefinition;
239
+ "component-placement": eslint.Rule.RuleModule;
240
+ "application-structure": eslint.Rule.RuleModule;
241
+ "data-testid-case": eslint.Rule.RuleModule;
242
+ "jsx-hygiene": eslint.Rule.RuleModule;
243
+ "interactive-component": eslint.Rule.RuleModule;
244
+ "ui-state": eslint.Rule.RuleModule;
245
+ "no-mixed-concerns": eslint.Rule.RuleModule;
246
+ "no-arbitrary-tailwind": eslint.Rule.RuleModule;
247
+ "enforce-cn-merge": {
248
+ meta: {
249
+ schema: never[];
250
+ type: "problem";
251
+ docs: {
252
+ description: string;
253
+ };
254
+ };
255
+ create(context: eslint.Rule.RuleContext): {
256
+ JSXAttribute(node: JsxAttributeNode): void;
257
+ };
258
+ };
259
+ "cn-helper": eslint.Rule.RuleModule;
260
+ "enforce-cva-variant-props": eslint.Rule.RuleModule;
261
+ "cva-appearance-props": eslint.Rule.RuleModule;
262
+ "cva-boolean-variants": eslint.Rule.RuleModule;
263
+ "cross-feature-import": eslint.Rule.RuleModule;
264
+ "pure-function-extract": eslint.Rule.RuleModule;
265
+ "hook-complexity": eslint.Rule.RuleModule;
266
+ "locale-dotted-path": eslint.Rule.RuleModule;
267
+ "locales-location": eslint.Rule.RuleModule;
268
+ "hook-extraction": eslint.Rule.RuleModule;
269
+ "component-nesting": eslint.Rule.RuleModule;
270
+ "stay-flat": eslint.Rule.RuleModule;
271
+ "locale-placement": eslint.Rule.RuleModule;
272
+ "sole-state-owner": eslint.Rule.RuleModule;
273
+ "locale-key-shape": eslint.Rule.RuleModule;
274
+ "shared-style-dedup": eslint.Rule.RuleModule;
275
+ "repeated-structure": eslint.Rule.RuleModule;
276
+ "filename-case": eslint.Rule.RuleModule;
277
+ "import-boundaries": eslint.Rule.RuleModule;
278
+ "named-exports": eslint.Rule.RuleModule;
279
+ "support-file-placement": eslint.Rule.RuleModule;
280
+ "support-folder-shape": eslint.Rule.RuleModule;
281
+ "import-through-index": eslint.Rule.RuleModule;
282
+ "util-file-name": eslint.Rule.RuleModule;
283
+ "no-util-barrel": eslint.Rule.RuleModule;
284
+ "enforce-barrel-exports": eslint.Rule.RuleModule;
285
+ "config-extraction": eslint.Rule.RuleModule;
286
+ "value-extraction": eslint.Rule.RuleModule;
287
+ "type-extraction": eslint.Rule.RuleModule;
288
+ "zod-schema-validation": eslint.Rule.RuleModule;
289
+ "source-under-src": eslint.Rule.RuleModule;
290
+ "zirka-baseline": eslint.Rule.RuleModule;
291
+ };
292
+ };
191
293
  /** Every rule id, as they appear in configuration and in lint output. */
192
294
  declare const allPasikaRuleIds: string[];
193
295
  /**
@@ -205,4 +307,4 @@ declare const typescriptApp: Linter.Config[];
205
307
  */
206
308
  declare const nextjsApp: Linter.Config[];
207
309
 
208
- export { allPasikaRuleIds, documentationRules, huskyRules, nextPackageJsonRules, nextjsApp, pasikaRules, repoPackageJsonRules, tailwindRules, typescriptApp, vulykRules };
310
+ export { allPasikaRuleIds, documentationRules, huskyRules, nextPackageJsonRules, nextjsApp, pasikaPlugin, pasikaRules, repoPackageJsonRules, tailwindRules, typescriptApp, vulykRules };
@@ -5155,6 +5155,18 @@ var pasikaRules = {
5155
5155
  ...typescriptAppRules,
5156
5156
  ...nextjsAppRules
5157
5157
  };
5158
+ var pasikaPlugin = {
5159
+ rules: {
5160
+ ...pasikaRules,
5161
+ ...documentationRules,
5162
+ ...tailwindRules,
5163
+ ...repoPackageJsonRules,
5164
+ ...nextPackageJsonRules,
5165
+ ...huskyRules,
5166
+ ...vulykRules
5167
+ }
5168
+ };
5169
+ var jsonLanguagePlugin = { languages: { json: jsonPlugin.languages.json } };
5158
5170
  function ruleIds(rules2) {
5159
5171
  return Object.keys(rules2).map((name) => `pasika/${name}`);
5160
5172
  }
@@ -5179,14 +5191,14 @@ var allPasikaRuleIds = [
5179
5191
  var typescriptAppBlock = {
5180
5192
  files: ["src/**/*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}"],
5181
5193
  plugins: {
5182
- pasika: { rules: typescriptAppRules }
5194
+ pasika: pasikaPlugin
5183
5195
  },
5184
5196
  rules: Object.fromEntries(typescriptAppRuleIds.map((id) => [id, "error"]))
5185
5197
  };
5186
5198
  var nextjsAppBlock = {
5187
5199
  files: ["src/**/*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}"],
5188
5200
  plugins: {
5189
- pasika: { rules: nextjsAppRules }
5201
+ pasika: pasikaPlugin
5190
5202
  },
5191
5203
  rules: Object.fromEntries(nextjsAppRuleIds.map((id) => [id, "error"]))
5192
5204
  };
@@ -5194,7 +5206,7 @@ var tailwindGlobalsBlock = {
5194
5206
  files: ["src/**/globals.css"],
5195
5207
  plugins: {
5196
5208
  css,
5197
- pasika: { rules: tailwindRules }
5209
+ pasika: pasikaPlugin
5198
5210
  },
5199
5211
  language: "css/css",
5200
5212
  languageOptions: { tolerant: true },
@@ -5206,7 +5218,7 @@ var tailwindAnyCssBlock = {
5206
5218
  files: ["src/**/*.css"],
5207
5219
  plugins: {
5208
5220
  css,
5209
- pasika: { rules: tailwindRules }
5221
+ pasika: pasikaPlugin
5210
5222
  },
5211
5223
  language: "css/css",
5212
5224
  languageOptions: { tolerant: true },
@@ -5215,8 +5227,8 @@ var tailwindAnyCssBlock = {
5215
5227
  var repoManifestBlock = {
5216
5228
  files: ["package.json"],
5217
5229
  plugins: {
5218
- json: { languages: { json: jsonPlugin.languages.json } },
5219
- pasika: { rules: { ...repoPackageJsonRules, ...huskyRules, ...vulykRules } }
5230
+ json: jsonLanguagePlugin,
5231
+ pasika: pasikaPlugin
5220
5232
  },
5221
5233
  language: "json/json",
5222
5234
  rules: Object.fromEntries([...repoPackageJsonRuleIds, ...huskyRuleIds, ...vulykRuleIds].map((id) => [id, "error"]))
@@ -5224,15 +5236,15 @@ var repoManifestBlock = {
5224
5236
  var nextManifestBlock = {
5225
5237
  files: ["package.json"],
5226
5238
  plugins: {
5227
- json: { languages: { json: jsonPlugin.languages.json } },
5228
- pasika: { rules: nextPackageJsonRules }
5239
+ json: jsonLanguagePlugin,
5240
+ pasika: pasikaPlugin
5229
5241
  },
5230
5242
  language: "json/json",
5231
5243
  rules: Object.fromEntries(nextPackageJsonRuleIds.map((id) => [id, "error"]))
5232
5244
  };
5233
5245
  var zirkaBlock = {
5234
5246
  files: ["eslint.config.{ts,mts,cts,js,mjs,cjs}"],
5235
- plugins: { pasika: { rules: { "zirka-baseline": zirkaBaselineRule } } },
5247
+ plugins: { pasika: pasikaPlugin },
5236
5248
  rules: { "pasika/zirka-baseline": "error" }
5237
5249
  };
5238
5250
  var docsBlock = {
@@ -5240,7 +5252,7 @@ var docsBlock = {
5240
5252
  ignores: ["**/_*/**"],
5241
5253
  plugins: {
5242
5254
  markdown,
5243
- pasika: { rules: documentationRules }
5255
+ pasika: pasikaPlugin
5244
5256
  },
5245
5257
  language: "markdown/gfm",
5246
5258
  rules: Object.fromEntries(documentationRuleIds.map((id) => [id, "error"]))
@@ -5259,6 +5271,7 @@ export {
5259
5271
  huskyRules,
5260
5272
  nextPackageJsonRules,
5261
5273
  nextjsApp,
5274
+ pasikaPlugin,
5262
5275
  pasikaRules,
5263
5276
  repoPackageJsonRules,
5264
5277
  tailwindRules,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pasika",
3
- "version": "0.4.0",
3
+ "version": "0.4.1",
4
4
  "description": "Reusable agent setup package",
5
5
  "repository": {
6
6
  "type": "git",
@@ -51,7 +51,7 @@
51
51
  "tsup": "8.5.1",
52
52
  "tsx": "4.23.12",
53
53
  "typescript": "6.0.3",
54
- "zirka": "0.0.46",
54
+ "zirka": "0.0.47",
55
55
  "zod": "4.4.3"
56
56
  },
57
57
  "peerDependencies": {