@diia-inhouse/oxc-config 3.2.0 → 4.0.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.
@@ -17,7 +17,7 @@ declare const _default: {
17
17
  elementNamePattern: string[];
18
18
  }[];
19
19
  };
20
- sortPackageJson: false;
20
+ sortPackageJson: true;
21
21
  ignorePatterns: string[];
22
22
  };
23
23
  export default _default;
@@ -86,6 +86,6 @@ export default defineConfig({
86
86
  },
87
87
  ],
88
88
  },
89
- sortPackageJson: false,
89
+ sortPackageJson: true,
90
90
  ignorePatterns: ['dist', 'node_modules', 'src/generated', 'coverage'],
91
91
  });
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../oxlint/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAsC,MAAM,QAAQ,CAAA;AAE9E,KAAK,MAAM,GAAG,YAAY,GAAG;IAAE,cAAc,EAAE,MAAM,EAAE,CAAA;CAAE,CAAA;AA2dzD,eAAO,MAAM,IAAI,EAAE,MAAiD,CAAA;AAEpE,eAAO,MAAM,UAAU,EAAE,MAKb,CAAA;AAIZ;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,YAAY,GAAI,QAAQ,YAAY,KAAG,YAOnD,CAAA"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../oxlint/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAsC,MAAM,QAAQ,CAAA;AAE9E,KAAK,MAAM,GAAG,YAAY,GAAG;IAAE,cAAc,EAAE,MAAM,EAAE,CAAA;CAAE,CAAA;AAmjBzD,eAAO,MAAM,IAAI,EAAE,MAAuC,CAAA;AAE1D,eAAO,MAAM,UAAU,EAAE,MAKvB,CAAA;AAIF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,YAAY,GAAI,QAAQ,YAAY,KAAG,YAOnD,CAAA"}
@@ -189,6 +189,22 @@ const baseConfig = {
189
189
  '@diia-inhouse/logger-err-field': 'error',
190
190
  '@diia-inhouse/package/no-service-in-package-name': 'error',
191
191
  '@diia-inhouse/package/pinned-dependencies': 'error',
192
+ '@diia-inhouse/package/unique-dependencies': 'error',
193
+ '@diia-inhouse/package/no-dev-tooling-in-dependencies': 'error',
194
+ '@diia-inhouse/package/private-package': 'error',
195
+ '@diia-inhouse/package/no-publish-fields': 'error',
196
+ '@diia-inhouse/package/no-empty-fields': 'error',
197
+ '@diia-inhouse/package/engines-node': 'error',
198
+ '@diia-inhouse/package/author': 'error',
199
+ '@diia-inhouse/package/description': 'error',
200
+ '@diia-inhouse/package/no-legacy-tooling': 'error',
201
+ '@diia-inhouse/package/no-legacy-config-fields': 'error',
202
+ '@diia-inhouse/package/no-legacy-scripts': 'error',
203
+ '@diia-inhouse/package/dev-script': 'error',
204
+ '@diia-inhouse/package/shared-configs': 'error',
205
+ '@diia-inhouse/package/stale-overrides': 'warn',
206
+ '@diia-inhouse/package/peers-installed-locally': 'error',
207
+ '@diia-inhouse/package/exports-package-json': 'error',
192
208
  '@diia-inhouse/locale/no-hardcoded-cyrillic': 'error',
193
209
  '@diia-inhouse/code/no-promise-settimeout': 'error',
194
210
  '@diia-inhouse/code/no-inline-object-return-type': 'error',
@@ -251,200 +267,272 @@ const boundariesExtension = {
251
267
  jsPlugins: [{ name: 'boundaries', specifier: resolve('@boundaries/eslint-plugin') }],
252
268
  settings: {
253
269
  'import/resolver': { oxc: {} },
254
- 'boundaries/elements': [
255
- { type: 'actionsTypes', pattern: 'src/actions/**/*.types.ts', mode: 'file', capture: ['version', 'actionName'] },
256
- { type: 'actions', pattern: 'src/actions/**/*.ts', mode: 'file', capture: ['version', 'actionName'] },
257
- { type: 'viewsTypes', pattern: 'src/views/*types.ts', mode: 'file' },
258
- { type: 'views', pattern: 'src/views/**' },
259
- { type: 'schemas', pattern: 'src/**/*.schema.ts', mode: 'file' },
260
- { type: 'providersTypes', pattern: 'src/providers/**/*types.ts', mode: 'file', capture: ['providerName'] },
261
- { type: 'providers', pattern: 'src/providers/**', capture: ['providerName'] },
262
- { type: 'repositories', pattern: 'src/repositories/**' },
263
- { type: 'modelsTypes', pattern: 'src/models/*.types.ts', mode: 'file', capture: ['modelName'] },
264
- { type: 'models', pattern: 'src/models/*.ts', mode: 'file', capture: ['modelName'] },
265
- { type: 'servicesTypes', pattern: 'src/services/**/*types.ts', mode: 'file' },
266
- { type: 'services', pattern: 'src/services/**' },
267
- { type: 'configsTypes', pattern: 'src/configs/*types.ts', mode: 'file' },
268
- { type: 'configs', pattern: 'src/configs/**' },
269
- { type: 'localesPdf', pattern: 'src/locales/*/pdf/**' },
270
- { type: 'locales', pattern: 'src/locales/**' },
271
- { type: 'eventListenersTypes', pattern: 'src/eventListeners/*.types.ts', mode: 'file', capture: ['eventName'] },
272
- { type: 'eventListeners', pattern: 'src/eventListeners/*.ts', mode: 'file', capture: ['eventName'] },
273
- { type: 'externalEventListenersTypes', pattern: 'src/externalEventListeners/*.types.ts', mode: 'file', capture: ['eventName'] },
274
- { type: 'externalEventListeners', pattern: 'src/externalEventListeners/*.ts', mode: 'file', capture: ['eventName'] },
275
- { type: 'workerWorkflowsTypes', pattern: 'src/worker/workflows/**/*.types.ts', mode: 'file' },
276
- { type: 'workerWorkflows', pattern: 'src/worker/workflows/**' },
277
- { type: 'workerActivities', pattern: 'src/worker/activities/**' },
278
- { type: 'workerSchedules', pattern: 'src/worker/schedules/**' },
279
- { type: 'worker', pattern: 'src/worker/**' },
280
- { type: 'depsTypes', pattern: 'src/deps/*types.ts', mode: 'file' },
281
- { type: 'deps', pattern: 'src/deps/**', mode: 'file' },
282
- { type: 'srcRoot', pattern: 'src/*', mode: 'file' },
283
- { type: 'tests', pattern: 'tests/**' },
284
- { type: 'migrations', pattern: 'migrations/**' },
285
- { type: 'configFiles', pattern: '*.{json,md,mjs,mts,ts}', mode: 'full' },
286
- { type: 'generated', pattern: 'src/generated/**' },
270
+ 'boundaries/files-single-match': true,
271
+ 'boundaries/files': [
272
+ { pattern: 'src/actions/**/*.types.ts', category: 'actionsTypes', capture: ['version', 'actionName'] },
273
+ { pattern: 'src/actions/**/*.ts', category: 'actions', capture: ['version', 'actionName'] },
274
+ { pattern: 'src/views/*types.ts', category: 'viewsTypes' },
275
+ { pattern: 'src/views/**', category: 'views' },
276
+ { pattern: 'src/**/*.schema.ts', category: 'schemas' },
277
+ { pattern: 'src/providers/**/*types.ts', category: 'providersTypes', capture: ['providerName'] },
278
+ { pattern: 'src/providers/**/*', category: 'providers', capture: ['providerName'] },
279
+ { pattern: 'src/repositories/**', category: 'repositories' },
280
+ { pattern: 'src/models/*.types.ts', category: 'modelsTypes', capture: ['modelName'] },
281
+ { pattern: 'src/models/*.ts', category: 'models', capture: ['modelName'] },
282
+ { pattern: 'src/services/**/*types.ts', category: 'servicesTypes' },
283
+ { pattern: 'src/services/**', category: 'services' },
284
+ { pattern: 'src/configs/*types.ts', category: 'configsTypes' },
285
+ { pattern: 'src/configs/**', category: 'configs' },
286
+ { pattern: 'src/locales/*/pdf/**', category: 'localesPdf', capture: ['locale'] },
287
+ { pattern: 'src/locales/**', category: 'locales' },
288
+ { pattern: 'src/eventListeners/*.types.ts', category: 'eventListenersTypes', capture: ['eventName'] },
289
+ { pattern: 'src/eventListeners/*.ts', category: 'eventListeners', capture: ['eventName'] },
290
+ { pattern: 'src/externalEventListeners/*.types.ts', category: 'externalEventListenersTypes', capture: ['eventName'] },
291
+ { pattern: 'src/externalEventListeners/*.ts', category: 'externalEventListeners', capture: ['eventName'] },
292
+ { pattern: 'src/worker/workflows/**/*.types.ts', category: 'workerWorkflowsTypes' },
293
+ { pattern: 'src/worker/workflows/**', category: 'workerWorkflows' },
294
+ { pattern: 'src/worker/activities/**', category: 'workerActivities' },
295
+ { pattern: 'src/worker/schedules/**', category: 'workerSchedules' },
296
+ { pattern: 'src/worker/**', category: 'worker' },
297
+ { pattern: 'src/deps/*types.ts', category: 'depsTypes' },
298
+ { pattern: 'src/deps/**', category: 'deps' },
299
+ { pattern: 'src/*', category: 'srcRoot' },
300
+ { pattern: 'tests/**', category: 'tests' },
301
+ { pattern: 'migrations/**', category: 'migrations' },
302
+ { pattern: '*.{json,md,mjs,mts,ts}', category: 'configFiles' },
303
+ { pattern: 'src/generated/**', category: 'generated' },
287
304
  ],
288
305
  },
289
306
  rules: {
290
- 'boundaries/no-unknown': 'error',
307
+ 'boundaries/no-unknown-dependencies': 'error',
291
308
  'boundaries/no-unknown-files': 'error',
292
- 'boundaries/entry-point': 'error',
293
309
  'boundaries/dependencies': [
294
310
  'error',
295
311
  {
296
312
  default: 'disallow',
297
- rules: [
313
+ policies: [
298
314
  {
299
- from: { type: 'actions' },
315
+ from: { file: { categories: 'actions' } },
300
316
  allow: {
301
317
  to: [
302
- { type: 'services' },
303
- { type: 'servicesTypes' },
304
- { type: 'views' },
305
- { type: 'generated' },
306
- { type: 'schemas' },
307
- { type: 'modelsTypes' },
308
- { type: 'actionsTypes', captured: { actionName: '{{ from.captured.actionName }}' } },
318
+ { file: { categories: 'services' } },
319
+ { file: { categories: 'servicesTypes' } },
320
+ { file: { categories: 'views' } },
321
+ { file: { categories: 'generated' } },
322
+ { file: { categories: 'schemas' } },
323
+ { file: { categories: 'modelsTypes' } },
324
+ { file: { categories: 'actionsTypes', captured: { actionName: '{{ from.file.captured.actionName }}' } } },
309
325
  ],
310
326
  },
311
327
  },
312
- { from: { type: 'actionsTypes' }, allow: { to: [{ type: 'generated' }] } },
328
+ { from: { file: { categories: 'actionsTypes' } }, allow: { to: [{ file: { categories: 'generated' } }] } },
313
329
  {
314
- from: { type: 'services' },
330
+ from: { file: { categories: 'services' } },
315
331
  allow: {
316
332
  to: [
317
- { type: 'services' },
318
- { type: 'servicesTypes' },
319
- { type: 'providers' },
320
- { type: 'providersTypes' },
321
- { type: 'repositories' },
322
- { type: 'modelsTypes' },
323
- { type: 'configsTypes' },
324
- { type: 'workerWorkflows' },
325
- { type: 'workerWorkflowsTypes' },
333
+ { file: { categories: 'services' } },
334
+ { file: { categories: 'servicesTypes' } },
335
+ { file: { categories: 'providers' } },
336
+ { file: { categories: 'providersTypes' } },
337
+ { file: { categories: 'repositories' } },
338
+ { file: { categories: 'modelsTypes' } },
339
+ { file: { categories: 'configsTypes' } },
340
+ { file: { categories: 'workerWorkflows' } },
341
+ { file: { categories: 'workerWorkflowsTypes' } },
326
342
  ],
327
343
  },
328
344
  },
329
345
  {
330
- from: { type: 'providers' },
346
+ from: { file: { categories: 'providers' } },
331
347
  allow: {
332
348
  to: [
333
- { type: 'configsTypes' },
334
- { type: 'schemas' },
335
- { type: 'providersTypes', captured: { providerName: '{{ from.captured.providerName }}' } },
349
+ { file: { categories: 'providers' } },
350
+ { file: { categories: 'configsTypes' } },
351
+ { file: { categories: 'schemas' } },
352
+ {
353
+ file: {
354
+ categories: 'providersTypes',
355
+ captured: { providerName: '{{ from.file.captured.providerName }}' },
356
+ },
357
+ },
336
358
  ],
337
359
  },
338
360
  },
339
- { from: { type: 'providersTypes' }, allow: { to: [{ type: 'modelsTypes' }] } },
340
- { from: { type: 'schemas' }, allow: [] },
361
+ { from: { file: { categories: 'providersTypes' } }, allow: { to: [{ file: { categories: 'modelsTypes' } }] } },
362
+ { from: { file: { categories: 'schemas' } }, allow: [] },
341
363
  {
342
- from: { type: 'views' },
343
- allow: { to: [{ type: 'viewsTypes' }, { type: 'servicesTypes' }, { type: 'modelsTypes' }, { type: 'generated' }] },
364
+ from: { file: { categories: 'views' } },
365
+ allow: {
366
+ to: [
367
+ { file: { categories: 'views' } },
368
+ { file: { categories: 'viewsTypes' } },
369
+ { file: { categories: 'servicesTypes' } },
370
+ { file: { categories: 'modelsTypes' } },
371
+ { file: { categories: 'generated' } },
372
+ ],
373
+ },
374
+ },
375
+ { from: { file: { categories: 'viewsTypes' } }, allow: { to: [{ file: { categories: 'locales' } }] } },
376
+ {
377
+ from: { file: { categories: 'repositories' } },
378
+ allow: {
379
+ to: [
380
+ { file: { categories: 'repositories' } },
381
+ { file: { categories: 'models' } },
382
+ { file: { categories: 'configsTypes' } },
383
+ { file: { categories: 'modelsTypes' } },
384
+ ],
385
+ },
344
386
  },
345
- { from: { type: 'viewsTypes' }, allow: { to: [{ type: 'locales' }] } },
346
387
  {
347
- from: { type: 'repositories' },
348
- allow: { to: [{ type: 'models' }, { type: 'configsTypes' }, { type: 'modelsTypes' }] },
388
+ from: { file: { categories: 'models' } },
389
+ allow: {
390
+ to: [{ file: { categories: 'modelsTypes', captured: { modelName: '{{ from.file.captured.modelName }}' } } }],
391
+ },
349
392
  },
393
+ { from: { file: { categories: 'tests' } }, allow: { to: [{ file: { categories: '*' } }] } },
350
394
  {
351
- from: { type: 'models' },
352
- allow: { to: [{ type: 'modelsTypes', captured: { modelName: '{{ from.captured.modelName }}' } }] },
395
+ from: { file: { categories: 'servicesTypes' } },
396
+ allow: {
397
+ to: [
398
+ { file: { categories: 'servicesTypes' } },
399
+ { file: { categories: 'modelsTypes' } },
400
+ { file: { categories: 'localesPdf' } },
401
+ ],
402
+ },
353
403
  },
354
- { from: { type: 'tests' }, allow: { to: [{ type: '*' }] } },
355
404
  {
356
- from: { type: 'servicesTypes' },
357
- allow: { to: [{ type: 'servicesTypes' }, { type: 'modelsTypes' }, { type: 'localesPdf' }] },
405
+ from: { file: { categories: 'srcRoot' } },
406
+ allow: {
407
+ to: [
408
+ { file: { categories: 'srcRoot' } },
409
+ { file: { categories: 'depsTypes' } },
410
+ { file: { categories: 'configsTypes' } },
411
+ { file: { categories: 'deps' } },
412
+ { file: { categories: 'configs' } },
413
+ { file: { categories: 'worker' } },
414
+ { file: { categories: 'workerActivities' } },
415
+ { file: { categories: 'workerWorkflows' } },
416
+ ],
417
+ },
358
418
  },
359
419
  {
360
- from: { type: 'srcRoot' },
420
+ from: { file: { categories: 'deps' } },
361
421
  allow: {
362
422
  to: [
363
- { type: 'srcRoot' },
364
- { type: 'depsTypes' },
365
- { type: 'configsTypes' },
366
- { type: 'deps' },
367
- { type: 'configs' },
368
- { type: 'worker' },
369
- { type: 'workerActivities' },
370
- { type: 'workerWorkflows' },
423
+ { file: { categories: 'deps' } },
424
+ { file: { categories: 'depsTypes' } },
425
+ { file: { categories: 'configsTypes' } },
426
+ { file: { categories: 'models' } },
427
+ { file: { categories: 'viewsTypes' } },
428
+ { file: { categories: 'providers' } },
429
+ { file: { categories: 'services' } },
371
430
  ],
372
431
  },
373
432
  },
374
433
  {
375
- from: { type: 'deps' },
434
+ from: { file: { categories: 'depsTypes' } },
376
435
  allow: {
377
436
  to: [
378
- { type: 'depsTypes' },
379
- { type: 'configsTypes' },
380
- { type: 'models' },
381
- { type: 'viewsTypes' },
382
- { type: 'providers' },
383
- { type: 'services' },
437
+ { file: { categories: 'configsTypes' } },
438
+ { file: { categories: 'viewsTypes' } },
439
+ { file: { categories: 'providers' } },
384
440
  ],
385
441
  },
386
442
  },
387
443
  {
388
- from: { type: 'depsTypes' },
389
- allow: { to: [{ type: 'configsTypes' }, { type: 'viewsTypes' }, { type: 'providers' }] },
444
+ from: { file: { categories: 'configs' } },
445
+ allow: { to: [{ file: { categories: 'configs' } }, { file: { categories: 'configsTypes' } }] },
446
+ },
447
+ { from: { file: { categories: 'configsTypes' } }, allow: { to: [{ file: { categories: 'configs' } }] } },
448
+ { from: { file: { categories: 'locales' } }, allow: { to: [{ file: { categories: 'locales' } }] } },
449
+ {
450
+ from: { file: { categories: 'localesPdf' } },
451
+ allow: { to: [{ file: { categories: 'localesPdf', captured: { locale: '{{ from.file.captured.locale }}' } } }] },
452
+ },
453
+ { from: { file: { categories: 'eventListenersTypes' } }, allow: { to: [{ file: { categories: 'modelsTypes' } }] } },
454
+ {
455
+ from: { file: { categories: 'eventListeners' } },
456
+ allow: {
457
+ to: [
458
+ { file: { categories: 'services' } },
459
+ { file: { categories: 'servicesTypes' } },
460
+ { file: { categories: 'configsTypes' } },
461
+ { file: { categories: 'schemas' } },
462
+ {
463
+ file: {
464
+ categories: 'eventListenersTypes',
465
+ captured: { eventName: '{{ from.file.captured.eventName }}' },
466
+ },
467
+ },
468
+ ],
469
+ },
390
470
  },
391
- { from: { type: 'configs' }, allow: { to: [{ type: 'configsTypes' }] } },
392
- { from: { type: 'configsTypes' }, allow: { to: [{ type: 'configs' }] } },
393
- { from: { type: 'eventListenersTypes' }, allow: { to: [{ type: 'modelsTypes' }] } },
471
+ { from: { file: { categories: 'externalEventListenersTypes' } }, allow: [] },
394
472
  {
395
- from: { type: 'eventListeners' },
473
+ from: { file: { categories: 'externalEventListeners' } },
396
474
  allow: {
397
475
  to: [
398
- { type: 'services' },
399
- { type: 'servicesTypes' },
400
- { type: 'configsTypes' },
401
- { type: 'schemas' },
402
- { type: 'eventListenersTypes', captured: { eventName: '{{ from.captured.eventName }}' } },
476
+ { file: { categories: 'services' } },
477
+ { file: { categories: 'configsTypes' } },
478
+ { file: { categories: 'schemas' } },
479
+ {
480
+ file: {
481
+ categories: 'externalEventListenersTypes',
482
+ captured: { eventName: '{{ from.file.captured.eventName }}' },
483
+ },
484
+ },
403
485
  ],
404
486
  },
405
487
  },
406
- { from: { type: 'externalEventListenersTypes' }, allow: [] },
407
488
  {
408
- from: { type: 'externalEventListeners' },
489
+ from: { file: { categories: 'worker' } },
409
490
  allow: {
410
491
  to: [
411
- { type: 'services' },
412
- { type: 'configsTypes' },
413
- { type: 'schemas' },
414
- { type: 'externalEventListenersTypes', captured: { eventName: '{{ from.captured.eventName }}' } },
492
+ { file: { categories: 'worker' } },
493
+ { file: { categories: 'configsTypes' } },
494
+ { file: { categories: 'depsTypes' } },
495
+ { file: { categories: 'workerActivities' } },
415
496
  ],
416
497
  },
417
498
  },
418
499
  {
419
- from: { type: 'worker' },
420
- allow: { to: [{ type: 'configsTypes' }, { type: 'depsTypes' }, { type: 'workerActivities' }] },
500
+ from: { file: { categories: 'workerActivities' } },
501
+ allow: {
502
+ to: [
503
+ { file: { categories: 'workerActivities' } },
504
+ { file: { categories: 'services' } },
505
+ { file: { categories: 'servicesTypes' } },
506
+ { file: { categories: 'repositories' } },
507
+ { file: { categories: 'modelsTypes' } },
508
+ { file: { categories: 'configsTypes' } },
509
+ ],
510
+ },
421
511
  },
512
+ { from: { file: { categories: 'workerWorkflowsTypes' } }, allow: [] },
422
513
  {
423
- from: { type: 'workerActivities' },
514
+ from: { file: { categories: 'workerWorkflows' } },
424
515
  allow: {
425
516
  to: [
426
- { type: 'services' },
427
- { type: 'servicesTypes' },
428
- { type: 'repositories' },
429
- { type: 'modelsTypes' },
430
- { type: 'configsTypes' },
517
+ { file: { categories: 'workerWorkflows' } },
518
+ { file: { categories: 'services' } },
519
+ { file: { categories: 'configsTypes' } },
520
+ { file: { categories: 'workerActivities' } },
521
+ { file: { categories: 'workerWorkflowsTypes' } },
431
522
  ],
432
523
  },
433
524
  },
434
- { from: { type: 'workerWorkflowsTypes' }, allow: [] },
435
525
  {
436
- from: { type: 'workerWorkflows' },
526
+ from: { file: { categories: 'workerSchedules' } },
437
527
  allow: {
438
528
  to: [
439
- { type: 'services' },
440
- { type: 'configsTypes' },
441
- { type: 'workerActivities' },
442
- { type: 'workerWorkflowsTypes' },
529
+ { file: { categories: 'workerSchedules' } },
530
+ { file: { categories: 'configsTypes' } },
531
+ { file: { categories: 'workerWorkflows' } },
443
532
  ],
444
533
  },
445
534
  },
446
- { from: { type: 'workerSchedules' }, allow: { to: [{ type: 'configsTypes' }, { type: 'workerWorkflows' }] } },
447
- { from: { type: 'migrations' }, allow: { to: [{ type: '*' }] } },
535
+ { from: { file: { categories: 'migrations' } }, allow: { to: [{ file: { categories: '*' } }] } },
448
536
  ],
449
537
  },
450
538
  ],