pob 38.8.0 → 38.10.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.
@@ -536,10 +536,15 @@ export default class CommonFormatLintGenerator extends Generator {
536
536
  const oxlintExtends = oxlintConfig.extends || [];
537
537
  const pobOxlintConfigPath = (name) =>
538
538
  `./node_modules/@pob/eslint-config/oxlint/${name}.json`;
539
+ const pobReactOxlintConfigPath = (name) =>
540
+ `./node_modules/@pob/eslint-config-typescript-react/oxlint/${name}.json`;
539
541
  await writeAndFormatJson(this.fs, oxlintConfigPath, {
540
542
  ...oxlintConfig,
541
543
  extends: [
542
544
  pobOxlintConfigPath("base"),
545
+ // ES module rules, not for configs.nodeCommonjs
546
+ (useTypescript || pkg.type !== "commonjs") &&
547
+ pobOxlintConfigPath("module"),
543
548
  // like configs.node and configs.nodeModule (not configs.nodeCommonjs)
544
549
  useNode &&
545
550
  (useTypescript || pkg.type !== "commonjs") &&
@@ -564,8 +569,24 @@ export default class CommonFormatLintGenerator extends Generator {
564
569
  )
565
570
  .map(pobOxlintConfigPath)
566
571
  : []),
572
+ // like the @pob/eslint-config-typescript-react configs, after
573
+ // module.json and node.json: they override import/extensions.
574
+ // react-native.json is kept when added by hand.
575
+ ...(hasReact
576
+ ? ["react", "react-native", "react-native-web"]
577
+ .filter(
578
+ (name) =>
579
+ name === "react" ||
580
+ (name === "react-native-web" &&
581
+ pkg.dependencies?.["react-native-web"]) ||
582
+ oxlintExtends.includes(pobReactOxlintConfigPath(name)),
583
+ )
584
+ .map(pobReactOxlintConfigPath)
585
+ : []),
567
586
  ...oxlintExtends.filter(
568
- (value) => !value.includes("@pob/eslint-config/"),
587
+ (value) =>
588
+ !value.includes("@pob/eslint-config/") &&
589
+ !value.includes("@pob/eslint-config-typescript-react/"),
569
590
  ),
570
591
  ].filter(Boolean),
571
592
  ignorePatterns: [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pob",
3
- "version": "38.8.0",
3
+ "version": "38.10.0",
4
4
  "description": "Pile of bones, library generator with git/babel/typescript/typedoc/readme/vitest",
5
5
  "keywords": [
6
6
  "skeleton"
@@ -48,17 +48,17 @@
48
48
  "validate-npm-package-name": "^8.0.0",
49
49
  "yeoman-environment": "6.1.0",
50
50
  "yeoman-generator": "8.2.2",
51
- "@pob/eslint-config": "67.7.0",
52
- "@pob/eslint-config-typescript-react": "67.7.0",
51
+ "@pob/eslint-config-typescript-react": "67.9.0",
53
52
  "@pob/sort-object": "11.2.0",
54
53
  "@pob/sort-pkg": "13.2.0",
55
- "pob-dependencies": "27.7.0"
54
+ "pob-dependencies": "27.9.0",
55
+ "@pob/eslint-config": "67.9.0"
56
56
  },
57
57
  "devDependencies": {
58
58
  "@types/node": "24.13.3",
59
59
  "@typescript/native": "npm:typescript@7.0.2",
60
60
  "@yeoman/types": "1.11.1",
61
- "@pob/root": "27.8.0"
61
+ "@pob/root": "27.10.0"
62
62
  },
63
63
  "engines": {
64
64
  "node": ">=22.18.0"