@tamagui/static 2.0.0-rc.4 → 2.0.0-rc.40

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.
Files changed (185) hide show
  1. package/dist/check-dep-versions.cjs +201 -96
  2. package/dist/checkDeps.cjs +250 -46
  3. package/dist/constants.cjs +32 -30
  4. package/dist/exports.cjs +18 -13
  5. package/dist/extractor/accessSafe.cjs +25 -23
  6. package/dist/extractor/babelParse.cjs +30 -28
  7. package/dist/extractor/buildClassName.cjs +59 -35
  8. package/dist/extractor/bundle.cjs +177 -101
  9. package/dist/extractor/bundleConfig.cjs +554 -167
  10. package/dist/extractor/concatClassName.cjs +41 -29
  11. package/dist/extractor/createEvaluator.cjs +54 -41
  12. package/dist/extractor/createExtractor.cjs +1400 -581
  13. package/dist/extractor/createLogger.cjs +30 -25
  14. package/dist/extractor/detectModuleFormat.cjs +55 -0
  15. package/dist/extractor/ensureImportingConcat.cjs +31 -25
  16. package/dist/extractor/errors.cjs +12 -10
  17. package/dist/extractor/esbuildAliasPlugin.cjs +28 -16
  18. package/dist/extractor/esbuildTsconfigPaths.cjs +60 -36
  19. package/dist/extractor/evaluateAstNode.cjs +104 -59
  20. package/dist/extractor/extractHelpers.cjs +130 -67
  21. package/dist/extractor/extractMediaStyle.cjs +110 -69
  22. package/dist/extractor/extractToClassNames.cjs +337 -229
  23. package/dist/extractor/extractToNative.cjs +248 -154
  24. package/dist/extractor/findTopmostFunction.cjs +22 -13
  25. package/dist/extractor/generatedUid.cjs +39 -28
  26. package/dist/extractor/getPrefixLogs.cjs +12 -10
  27. package/dist/extractor/getPropValueFromAttributes.cjs +52 -34
  28. package/dist/extractor/getSourceModule.cjs +73 -37
  29. package/dist/extractor/getStaticBindingsForScope.cjs +131 -68
  30. package/dist/extractor/getTamaguiConfigPathFromOptionsConfig.cjs +20 -14
  31. package/dist/extractor/hasTopLevelAwait.cjs +62 -0
  32. package/dist/extractor/hoistClassNames.cjs +46 -32
  33. package/dist/extractor/literalToAst.cjs +67 -42
  34. package/dist/extractor/loadFile.cjs +9 -3
  35. package/dist/extractor/loadTamagui.cjs +149 -104
  36. package/dist/extractor/logLines.cjs +27 -19
  37. package/dist/extractor/normalizeTernaries.cjs +66 -44
  38. package/dist/extractor/propsToFontFamilyCache.cjs +15 -11
  39. package/dist/extractor/regenerateConfig.cjs +109 -81
  40. package/dist/extractor/removeUnusedHooks.cjs +73 -41
  41. package/dist/extractor/timer.cjs +23 -14
  42. package/dist/extractor/validHTMLAttributes.cjs +61 -59
  43. package/dist/extractor/watchTamaguiConfig.cjs +35 -23
  44. package/dist/getPragmaOptions.cjs +38 -19
  45. package/dist/helpers/memoize.cjs +24 -16
  46. package/dist/helpers/requireTamaguiCore.cjs +22 -15
  47. package/dist/index.cjs +26 -24
  48. package/dist/registerRequire.cjs +167 -65
  49. package/dist/server.cjs +35 -28
  50. package/dist/types.cjs +7 -5
  51. package/dist/worker.cjs +62 -40
  52. package/package.json +26 -22
  53. package/src/checkDeps.ts +305 -68
  54. package/src/exports.ts +1 -0
  55. package/src/extractor/babelParse.ts +1 -0
  56. package/src/extractor/bundle.ts +140 -37
  57. package/src/extractor/bundleConfig.ts +435 -61
  58. package/src/extractor/createExtractor.ts +283 -48
  59. package/src/extractor/detectModuleFormat.ts +42 -0
  60. package/src/extractor/esbuildTsconfigPaths.ts +6 -1
  61. package/src/extractor/extractToClassNames.ts +15 -9
  62. package/src/extractor/extractToNative.ts +66 -33
  63. package/src/extractor/hasTopLevelAwait.ts +28 -0
  64. package/src/extractor/loadTamagui.ts +2 -2
  65. package/src/getPragmaOptions.ts +6 -1
  66. package/src/registerRequire.ts +88 -8
  67. package/types/checkDeps.d.ts.map +1 -1
  68. package/types/exports.d.ts +1 -0
  69. package/types/exports.d.ts.map +1 -1
  70. package/types/extractor/babelParse.d.ts.map +1 -1
  71. package/types/extractor/bundle.d.ts +83 -1
  72. package/types/extractor/bundle.d.ts.map +1 -1
  73. package/types/extractor/bundleConfig.d.ts +15 -2
  74. package/types/extractor/bundleConfig.d.ts.map +1 -1
  75. package/types/extractor/createExtractor.d.ts.map +1 -1
  76. package/types/extractor/detectModuleFormat.d.ts +5 -0
  77. package/types/extractor/detectModuleFormat.d.ts.map +1 -0
  78. package/types/extractor/esbuildTsconfigPaths.d.ts +8 -0
  79. package/types/extractor/esbuildTsconfigPaths.d.ts.map +1 -1
  80. package/types/extractor/extractToClassNames.d.ts.map +1 -1
  81. package/types/extractor/extractToNative.d.ts.map +1 -1
  82. package/types/extractor/hasTopLevelAwait.d.ts +2 -0
  83. package/types/extractor/hasTopLevelAwait.d.ts.map +1 -0
  84. package/types/getPragmaOptions.d.ts.map +1 -1
  85. package/types/registerRequire.d.ts.map +1 -1
  86. package/dist/check-dep-versions.js +0 -389
  87. package/dist/check-dep-versions.js.map +0 -6
  88. package/dist/checkDeps.js +0 -60
  89. package/dist/checkDeps.js.map +0 -6
  90. package/dist/constants.js +0 -34
  91. package/dist/constants.js.map +0 -6
  92. package/dist/exports.js +0 -34
  93. package/dist/exports.js.map +0 -6
  94. package/dist/extractor/accessSafe.js +0 -47
  95. package/dist/extractor/accessSafe.js.map +0 -6
  96. package/dist/extractor/babelParse.js +0 -59
  97. package/dist/extractor/babelParse.js.map +0 -6
  98. package/dist/extractor/buildClassName.js +0 -72
  99. package/dist/extractor/buildClassName.js.map +0 -6
  100. package/dist/extractor/bundle.js +0 -135
  101. package/dist/extractor/bundle.js.map +0 -6
  102. package/dist/extractor/bundleConfig.js +0 -352
  103. package/dist/extractor/bundleConfig.js.map +0 -6
  104. package/dist/extractor/concatClassName.js +0 -69
  105. package/dist/extractor/concatClassName.js.map +0 -6
  106. package/dist/extractor/createEvaluator.js +0 -66
  107. package/dist/extractor/createEvaluator.js.map +0 -6
  108. package/dist/extractor/createExtractor.js +0 -1215
  109. package/dist/extractor/createExtractor.js.map +0 -6
  110. package/dist/extractor/createLogger.js +0 -32
  111. package/dist/extractor/createLogger.js.map +0 -6
  112. package/dist/extractor/ensureImportingConcat.js +0 -50
  113. package/dist/extractor/ensureImportingConcat.js.map +0 -6
  114. package/dist/extractor/errors.js +0 -22
  115. package/dist/extractor/errors.js.map +0 -6
  116. package/dist/extractor/esbuildAliasPlugin.js +0 -36
  117. package/dist/extractor/esbuildAliasPlugin.js.map +0 -6
  118. package/dist/extractor/esbuildTsconfigPaths.js +0 -79
  119. package/dist/extractor/esbuildTsconfigPaths.js.map +0 -6
  120. package/dist/extractor/evaluateAstNode.js +0 -99
  121. package/dist/extractor/evaluateAstNode.js.map +0 -6
  122. package/dist/extractor/extractHelpers.js +0 -108
  123. package/dist/extractor/extractHelpers.js.map +0 -6
  124. package/dist/extractor/extractMediaStyle.js +0 -123
  125. package/dist/extractor/extractMediaStyle.js.map +0 -6
  126. package/dist/extractor/extractToClassNames.js +0 -351
  127. package/dist/extractor/extractToClassNames.js.map +0 -6
  128. package/dist/extractor/extractToNative.js +0 -286
  129. package/dist/extractor/extractToNative.js.map +0 -6
  130. package/dist/extractor/findTopmostFunction.js +0 -32
  131. package/dist/extractor/findTopmostFunction.js.map +0 -6
  132. package/dist/extractor/generatedUid.js +0 -42
  133. package/dist/extractor/generatedUid.js.map +0 -6
  134. package/dist/extractor/getPrefixLogs.js +0 -24
  135. package/dist/extractor/getPrefixLogs.js.map +0 -6
  136. package/dist/extractor/getPropValueFromAttributes.js +0 -65
  137. package/dist/extractor/getPropValueFromAttributes.js.map +0 -6
  138. package/dist/extractor/getSourceModule.js +0 -62
  139. package/dist/extractor/getSourceModule.js.map +0 -6
  140. package/dist/extractor/getStaticBindingsForScope.js +0 -145
  141. package/dist/extractor/getStaticBindingsForScope.js.map +0 -6
  142. package/dist/extractor/getTamaguiConfigPathFromOptionsConfig.js +0 -32
  143. package/dist/extractor/getTamaguiConfigPathFromOptionsConfig.js.map +0 -6
  144. package/dist/extractor/hoistClassNames.js +0 -63
  145. package/dist/extractor/hoistClassNames.js.map +0 -6
  146. package/dist/extractor/literalToAst.js +0 -90
  147. package/dist/extractor/literalToAst.js.map +0 -6
  148. package/dist/extractor/loadFile.js +0 -14
  149. package/dist/extractor/loadFile.js.map +0 -6
  150. package/dist/extractor/loadTamagui.js +0 -306
  151. package/dist/extractor/loadTamagui.js.map +0 -6
  152. package/dist/extractor/logLines.js +0 -30
  153. package/dist/extractor/logLines.js.map +0 -6
  154. package/dist/extractor/normalizeTernaries.js +0 -61
  155. package/dist/extractor/normalizeTernaries.js.map +0 -6
  156. package/dist/extractor/propsToFontFamilyCache.js +0 -33
  157. package/dist/extractor/propsToFontFamilyCache.js.map +0 -6
  158. package/dist/extractor/regenerateConfig.js +0 -123
  159. package/dist/extractor/regenerateConfig.js.map +0 -6
  160. package/dist/extractor/removeUnusedHooks.js +0 -72
  161. package/dist/extractor/removeUnusedHooks.js.map +0 -6
  162. package/dist/extractor/timer.js +0 -38
  163. package/dist/extractor/timer.js.map +0 -6
  164. package/dist/extractor/validHTMLAttributes.js +0 -72
  165. package/dist/extractor/validHTMLAttributes.js.map +0 -6
  166. package/dist/extractor/watchTamaguiConfig.js +0 -57
  167. package/dist/extractor/watchTamaguiConfig.js.map +0 -6
  168. package/dist/getPragmaOptions.js +0 -46
  169. package/dist/getPragmaOptions.js.map +0 -6
  170. package/dist/helpers/memoize.js +0 -33
  171. package/dist/helpers/memoize.js.map +0 -6
  172. package/dist/helpers/requireTamaguiCore.js +0 -30
  173. package/dist/helpers/requireTamaguiCore.js.map +0 -6
  174. package/dist/index.js +0 -30
  175. package/dist/index.js.map +0 -6
  176. package/dist/registerRequire.js +0 -100
  177. package/dist/registerRequire.js.map +0 -6
  178. package/dist/server.js +0 -58
  179. package/dist/server.js.map +0 -6
  180. package/dist/setup.js +0 -1
  181. package/dist/setup.js.map +0 -6
  182. package/dist/types.js +0 -14
  183. package/dist/types.js.map +0 -6
  184. package/dist/worker.js +0 -72
  185. package/dist/worker.js.map +0 -6
@@ -3,61 +3,106 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
5
  var __export = (target, all) => {
6
- for (var name in all) __defProp(target, name, {
7
- get: all[name],
8
- enumerable: !0
9
- });
10
- },
11
- __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
13
14
  get: () => from[key],
14
15
  enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
16
  });
16
- return to;
17
- };
17
+ }
18
+ return to;
19
+ };
18
20
  var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
19
- value: !0
21
+ value: true
20
22
  }), mod);
21
23
  var check_dep_versions_exports = {};
22
24
  __export(check_dep_versions_exports, {
23
25
  CDVC: () => CDVC
24
26
  });
25
27
  module.exports = __toCommonJS(check_dep_versions_exports);
26
- var import_fast_glob = require("fast-glob"),
27
- import_js_yaml = require("js-yaml"),
28
- import_node_fs = require("node:fs"),
29
- import_node_path = require("node:path");
28
+ var import_fast_glob = require("fast-glob");
29
+ var import_js_yaml = require("js-yaml");
30
+ var import_node_fs = require("node:fs");
31
+ var import_node_path = require("node:path");
30
32
  function calculateVersionsForEachDependency(packages, depType = DEFAULT_DEP_TYPES) {
31
33
  const dependenciesToVersionsSeen = /* @__PURE__ */new Map();
32
- for (const package_ of packages) recordDependencyVersionsForPackageJson(dependenciesToVersionsSeen, package_, depType);
34
+ for (const package_ of packages) {
35
+ recordDependencyVersionsForPackageJson(dependenciesToVersionsSeen, package_, depType);
36
+ }
33
37
  return dependenciesToVersionsSeen;
34
38
  }
35
39
  function recordDependencyVersionsForPackageJson(dependenciesToVersionsSeen, package_, depType) {
36
- if (package_.packageJson.name && package_.packageJson.version && recordDependencyVersion(dependenciesToVersionsSeen, package_.packageJson.name, package_.packageJson.version, package_, !0), depType.includes("dependencies" /* dependencies */) && package_.packageJson.dependencies) for (const [dependency, dependencyVersion] of Object.entries(package_.packageJson.dependencies)) dependencyVersion && recordDependencyVersion(dependenciesToVersionsSeen, dependency, dependencyVersion, package_);
37
- if (depType.includes("devDependencies" /* devDependencies */) && package_.packageJson.devDependencies) for (const [dependency, dependencyVersion] of Object.entries(package_.packageJson.devDependencies)) dependencyVersion && recordDependencyVersion(dependenciesToVersionsSeen, dependency, dependencyVersion, package_);
38
- if (depType.includes("optionalDependencies" /* optionalDependencies */) && package_.packageJson.optionalDependencies) for (const [dependency, dependencyVersion] of Object.entries(package_.packageJson.optionalDependencies)) dependencyVersion && recordDependencyVersion(dependenciesToVersionsSeen, dependency, dependencyVersion, package_);
39
- if (depType.includes("peerDependencies" /* peerDependencies */) && package_.packageJson.peerDependencies) for (const [dependency, dependencyVersion] of Object.entries(package_.packageJson.peerDependencies)) dependencyVersion && recordDependencyVersion(dependenciesToVersionsSeen, dependency, dependencyVersion, package_);
40
- if (depType.includes("resolutions" /* resolutions */) && package_.packageJson.resolutions) for (const [dependency, dependencyVersion] of Object.entries(package_.packageJson.resolutions)) dependencyVersion && recordDependencyVersion(dependenciesToVersionsSeen, dependency, dependencyVersion, package_);
40
+ if (package_.packageJson.name && package_.packageJson.version) {
41
+ recordDependencyVersion(dependenciesToVersionsSeen, package_.packageJson.name, package_.packageJson.version, package_, true);
42
+ }
43
+ if (depType.includes("dependencies" /* dependencies */) && package_.packageJson.dependencies) {
44
+ for (const [dependency, dependencyVersion] of Object.entries(package_.packageJson.dependencies)) {
45
+ if (dependencyVersion) {
46
+ recordDependencyVersion(dependenciesToVersionsSeen, dependency, dependencyVersion, package_);
47
+ }
48
+ }
49
+ }
50
+ if (depType.includes("devDependencies" /* devDependencies */) && package_.packageJson.devDependencies) {
51
+ for (const [dependency, dependencyVersion] of Object.entries(package_.packageJson.devDependencies)) {
52
+ if (dependencyVersion) {
53
+ recordDependencyVersion(dependenciesToVersionsSeen, dependency, dependencyVersion, package_);
54
+ }
55
+ }
56
+ }
57
+ if (depType.includes("optionalDependencies" /* optionalDependencies */) && package_.packageJson.optionalDependencies) {
58
+ for (const [dependency, dependencyVersion] of Object.entries(package_.packageJson.optionalDependencies)) {
59
+ if (dependencyVersion) {
60
+ recordDependencyVersion(dependenciesToVersionsSeen, dependency, dependencyVersion, package_);
61
+ }
62
+ }
63
+ }
64
+ if (depType.includes("peerDependencies" /* peerDependencies */) && package_.packageJson.peerDependencies) {
65
+ for (const [dependency, dependencyVersion] of Object.entries(package_.packageJson.peerDependencies)) {
66
+ if (dependencyVersion) {
67
+ recordDependencyVersion(dependenciesToVersionsSeen, dependency, dependencyVersion, package_);
68
+ }
69
+ }
70
+ }
71
+ if (depType.includes("resolutions" /* resolutions */) && package_.packageJson.resolutions) {
72
+ for (const [dependency, dependencyVersion] of Object.entries(package_.packageJson.resolutions)) {
73
+ if (dependencyVersion) {
74
+ recordDependencyVersion(dependenciesToVersionsSeen, dependency, dependencyVersion, package_);
75
+ }
76
+ }
77
+ }
41
78
  }
42
- function recordDependencyVersion(dependenciesToVersionsSeen, dependency, version, package_, isLocalPackageVersion = !1) {
43
- dependenciesToVersionsSeen.has(dependency) || dependenciesToVersionsSeen.set(dependency, []);
79
+ function recordDependencyVersion(dependenciesToVersionsSeen, dependency, version, package_, isLocalPackageVersion = false) {
80
+ if (!dependenciesToVersionsSeen.has(dependency)) {
81
+ dependenciesToVersionsSeen.set(dependency, []);
82
+ }
44
83
  const list = dependenciesToVersionsSeen.get(dependency);
45
- list && list.push({
46
- package: package_,
47
- version,
48
- isLocalPackageVersion
49
- });
84
+ if (list) {
85
+ list.push({
86
+ package: package_,
87
+ version,
88
+ isLocalPackageVersion
89
+ });
90
+ }
50
91
  }
51
92
  function calculateDependenciesAndVersions(dependencyVersions) {
52
93
  return [...dependencyVersions.entries()].sort((a, b) => a[0].localeCompare(b[0])).flatMap(([dependency, versionObjectsForDep]) => {
53
- if (!versionObjectsForDep) return [];
94
+ if (!versionObjectsForDep) {
95
+ return [];
96
+ }
54
97
  let versions = versionObjectsForDep.filter(versionObject => !versionObject.isLocalPackageVersion).map(versionObject => versionObject.version);
55
- const localPackageVersions = versionObjectsForDep.filter(versionObject => versionObject.isLocalPackageVersion).map(versionObject => versionObject.version),
56
- allVersionsHaveWorkspacePrefix = versions.every(version => version.startsWith("workspace:")),
57
- hasIncompatibilityWithLocalPackageVersion = versions.some(version => localPackageVersions[0] !== version);
58
- localPackageVersions.length === 1 && !allVersionsHaveWorkspacePrefix && hasIncompatibilityWithLocalPackageVersion && (versions = [...versions, ...localPackageVersions]);
59
- const uniqueVersions = [...new Set(versions)],
60
- uniqueVersionsWithInfo = versionsObjectsWithSortedPackages(uniqueVersions, versionObjectsForDep);
98
+ const localPackageVersions = versionObjectsForDep.filter(versionObject => versionObject.isLocalPackageVersion).map(versionObject => versionObject.version);
99
+ const allVersionsHaveWorkspacePrefix = versions.every(version => version.startsWith("workspace:"));
100
+ const hasIncompatibilityWithLocalPackageVersion = versions.some(version => localPackageVersions[0] !== version);
101
+ if (localPackageVersions.length === 1 && !allVersionsHaveWorkspacePrefix && hasIncompatibilityWithLocalPackageVersion) {
102
+ versions = [...versions, ...localPackageVersions];
103
+ }
104
+ const uniqueVersions = [...new Set(versions)];
105
+ const uniqueVersionsWithInfo = versionsObjectsWithSortedPackages(uniqueVersions, versionObjectsForDep);
61
106
  return {
62
107
  dependency,
63
108
  versions: uniqueVersionsWithInfo
@@ -77,30 +122,63 @@ const HARDCODED_IGNORED_DEPENDENCIES = /* @__PURE__ */new Set(["//"
77
122
  // May be used to add comments to package.json files.
78
123
  ]);
79
124
  function filterOutIgnoredDependencies(mismatchingVersions, ignoredDependencies, includedDependencyPatterns) {
80
- for (const ignoreDependency of ignoredDependencies) if (!mismatchingVersions.some(mismatchingVersion => mismatchingVersion.dependency === ignoreDependency)) throw new Error(`Specified option '--ignore-dep ${ignoreDependency}', but no version mismatches detected for this dependency.`);
81
- return ignoredDependencies.length > 0 || includedDependencyPatterns.length > 0 || mismatchingVersions.some(mismatchingVersion => HARDCODED_IGNORED_DEPENDENCIES.has(mismatchingVersion.dependency)) ? mismatchingVersions.filter(mismatchingVersion => !ignoredDependencies.includes(mismatchingVersion.dependency) && includedDependencyPatterns.some(ignoreDependencyPattern => mismatchingVersion.dependency.match(ignoreDependencyPattern)) && !HARDCODED_IGNORED_DEPENDENCIES.has(mismatchingVersion.dependency)) : mismatchingVersions;
125
+ for (const ignoreDependency of ignoredDependencies) {
126
+ if (!mismatchingVersions.some(mismatchingVersion => mismatchingVersion.dependency === ignoreDependency)) {
127
+ throw new Error(`Specified option '--ignore-dep ${ignoreDependency}', but no version mismatches detected for this dependency.`);
128
+ }
129
+ }
130
+ if (ignoredDependencies.length > 0 || includedDependencyPatterns.length > 0 || mismatchingVersions.some(mismatchingVersion => HARDCODED_IGNORED_DEPENDENCIES.has(mismatchingVersion.dependency))) {
131
+ return mismatchingVersions.filter(mismatchingVersion => !ignoredDependencies.includes(mismatchingVersion.dependency) && includedDependencyPatterns.some(ignoreDependencyPattern => mismatchingVersion.dependency.match(ignoreDependencyPattern)) && !HARDCODED_IGNORED_DEPENDENCIES.has(mismatchingVersion.dependency));
132
+ }
133
+ return mismatchingVersions;
82
134
  }
83
135
  function getPackages(root, ignorePackages, ignorePackagePatterns, ignorePaths, ignorePathPatterns) {
84
- if (!Package.exists(root)) throw new Error("No package.json found at provided path.");
136
+ if (!Package.exists(root)) {
137
+ throw new Error("No package.json found at provided path.");
138
+ }
85
139
  const packages = accumulatePackages(root, ["."]);
86
- for (const ignoredPackage of ignorePackages) if (!Package.some(packages, package_ => package_.name === ignoredPackage)) throw new Error(`Specified option '--ignore-package ${ignoredPackage}', but no such package detected in workspace.`);
87
- for (const ignoredPackagePattern of ignorePackagePatterns) if (
88
- // eslint-disable-next-line unicorn/no-array-method-this-argument,unicorn/no-array-callback-reference -- false positive
89
- !Package.some(packages, package_ => ignoredPackagePattern.test(package_.name))) throw new Error(`Specified option '--ignore-package-pattern ${String(ignoredPackagePattern)}', but no matching packages detected in workspace.`);
90
- for (const ignoredPath of ignorePaths) if (
91
- // eslint-disable-next-line unicorn/no-array-method-this-argument,unicorn/no-array-callback-reference -- false positive
92
- !Package.some(packages, package_ => package_.pathRelative.includes(ignoredPath))) throw new Error(`Specified option '--ignore-path ${ignoredPath}', but no matching paths detected in workspace.`);
93
- for (const ignoredPathPattern of ignorePathPatterns) if (
94
- // eslint-disable-next-line unicorn/no-array-method-this-argument,unicorn/no-array-callback-reference -- false positive
95
- !Package.some(packages, package_ => ignoredPathPattern.test(package_.pathRelative))) throw new Error(`Specified option '--ignore-path-pattern ${String(ignoredPathPattern)}', but no matching paths detected in workspace.`);
96
- return ignorePackages.length > 0 || ignorePackagePatterns.length > 0 || ignorePaths.length > 0 || ignorePathPatterns.length > 0 ? packages.filter(package_ => !ignorePackages.includes(package_.name) && !ignorePackagePatterns.some(ignorePackagePattern => package_.name.match(ignorePackagePattern)) && !ignorePaths.some(ignorePath => package_.pathRelative.includes(ignorePath)) && !ignorePathPatterns.some(ignorePathPattern => package_.pathRelative.match(ignorePathPattern))) : packages;
140
+ for (const ignoredPackage of ignorePackages) {
141
+ if (!Package.some(packages, package_ => package_.name === ignoredPackage)) {
142
+ throw new Error(`Specified option '--ignore-package ${ignoredPackage}', but no such package detected in workspace.`);
143
+ }
144
+ }
145
+ for (const ignoredPackagePattern of ignorePackagePatterns) {
146
+ if (
147
+ // eslint-disable-next-line unicorn/no-array-method-this-argument,unicorn/no-array-callback-reference -- false positive
148
+ !Package.some(packages, package_ => ignoredPackagePattern.test(package_.name))) {
149
+ throw new Error(`Specified option '--ignore-package-pattern ${String(ignoredPackagePattern)}', but no matching packages detected in workspace.`);
150
+ }
151
+ }
152
+ for (const ignoredPath of ignorePaths) {
153
+ if (
154
+ // eslint-disable-next-line unicorn/no-array-method-this-argument,unicorn/no-array-callback-reference -- false positive
155
+ !Package.some(packages, package_ => package_.pathRelative.includes(ignoredPath))) {
156
+ throw new Error(`Specified option '--ignore-path ${ignoredPath}', but no matching paths detected in workspace.`);
157
+ }
158
+ }
159
+ for (const ignoredPathPattern of ignorePathPatterns) {
160
+ if (
161
+ // eslint-disable-next-line unicorn/no-array-method-this-argument,unicorn/no-array-callback-reference -- false positive
162
+ !Package.some(packages, package_ => ignoredPathPattern.test(package_.pathRelative))) {
163
+ throw new Error(`Specified option '--ignore-path-pattern ${String(ignoredPathPattern)}', but no matching paths detected in workspace.`);
164
+ }
165
+ }
166
+ if (ignorePackages.length > 0 || ignorePackagePatterns.length > 0 || ignorePaths.length > 0 || ignorePathPatterns.length > 0) {
167
+ return packages.filter(package_ => !ignorePackages.includes(package_.name) && !ignorePackagePatterns.some(ignorePackagePattern => package_.name.match(ignorePackagePattern)) && !ignorePaths.some(ignorePath => package_.pathRelative.includes(ignorePath)) && !ignorePathPatterns.some(ignorePathPattern => package_.pathRelative.match(ignorePathPattern)));
168
+ }
169
+ return packages;
97
170
  }
98
171
  function expandWorkspaces(root, workspacePatterns) {
99
- return workspacePatterns.flatMap(workspace => workspace.includes("*") ? (0, import_fast_glob.globSync)(workspace, {
100
- onlyDirectories: !0,
101
- cwd: root,
102
- ignore: ["**/node_modules"]
103
- }) : [workspace]);
172
+ return workspacePatterns.flatMap(workspace => {
173
+ if (!workspace.includes("*")) {
174
+ return [workspace];
175
+ }
176
+ return (0, import_fast_glob.globSync)(workspace, {
177
+ onlyDirectories: true,
178
+ cwd: root,
179
+ ignore: ["**/node_modules"]
180
+ });
181
+ });
104
182
  }
105
183
  function accumulatePackages(root, paths) {
106
184
  const results = [];
@@ -126,20 +204,26 @@ class Package {
126
204
  packageJsonEndsInNewline;
127
205
  pnpmWorkspacePackages;
128
206
  constructor(path, pathWorkspace) {
129
- this.path = path, this.pathWorkspace = pathWorkspace, this.pathPackageJson = (0, import_node_path.join)(path, "package.json");
207
+ this.path = path;
208
+ this.pathWorkspace = pathWorkspace;
209
+ this.pathPackageJson = (0, import_node_path.join)(path, "package.json");
130
210
  const packageJsonContents = (0, import_node_fs.readFileSync)(this.pathPackageJson, "utf8");
131
- this.packageJsonEndsInNewline = packageJsonContents.endsWith(`
132
- `), this.packageJson = JSON.parse(packageJsonContents);
211
+ this.packageJsonEndsInNewline = packageJsonContents.endsWith("\n");
212
+ this.packageJson = JSON.parse(packageJsonContents);
133
213
  const pnpmWorkspacePath = (0, import_node_path.join)(path, "pnpm-workspace.yaml");
134
214
  if ((0, import_node_fs.existsSync)(pnpmWorkspacePath)) {
135
- const pnpmWorkspaceContents = (0, import_node_fs.readFileSync)(pnpmWorkspacePath, "utf8"),
136
- pnpmWorkspaceYaml = (0, import_js_yaml.load)(pnpmWorkspaceContents);
215
+ const pnpmWorkspaceContents = (0, import_node_fs.readFileSync)(pnpmWorkspacePath, "utf8");
216
+ const pnpmWorkspaceYaml = (0, import_js_yaml.load)(pnpmWorkspaceContents);
137
217
  this.pnpmWorkspacePackages = pnpmWorkspaceYaml.packages;
138
218
  }
139
219
  }
140
220
  get name() {
141
- if (this.workspacePatterns.length > 0 && !this.packageJson.name) return "(Root)";
142
- if (!this.packageJson.name) throw new Error(`${this.pathPackageJson} missing \`name\``);
221
+ if (this.workspacePatterns.length > 0 && !this.packageJson.name) {
222
+ return "(Root)";
223
+ }
224
+ if (!this.packageJson.name) {
225
+ throw new Error(`${this.pathPackageJson} missing \`name\``);
226
+ }
143
227
  return this.packageJson.name;
144
228
  }
145
229
  /** Relative to workspace root. */
@@ -148,14 +232,21 @@ class Package {
148
232
  }
149
233
  get workspacePatterns() {
150
234
  if (this.packageJson.workspaces) {
151
- if (Array.isArray(this.packageJson.workspaces)) return this.packageJson.workspaces;
152
- if (this.packageJson.workspaces.packages) {
153
- if (!Array.isArray(this.packageJson.workspaces.packages)) throw new TypeError("package.json `workspaces.packages` is not a string array.");
235
+ if (Array.isArray(this.packageJson.workspaces)) {
236
+ return this.packageJson.workspaces;
237
+ } else if (this.packageJson.workspaces.packages) {
238
+ if (!Array.isArray(this.packageJson.workspaces.packages)) {
239
+ throw new TypeError("package.json `workspaces.packages` is not a string array.");
240
+ }
154
241
  return this.packageJson.workspaces.packages;
155
- } else throw new TypeError("package.json `workspaces` is not a string array.");
242
+ } else {
243
+ throw new TypeError("package.json `workspaces` is not a string array.");
244
+ }
156
245
  }
157
246
  if (this.pnpmWorkspacePackages) {
158
- if (!Array.isArray(this.pnpmWorkspacePackages)) throw new TypeError("pnpm-workspace.yaml `packages` is not a string array.");
247
+ if (!Array.isArray(this.pnpmWorkspacePackages)) {
248
+ throw new TypeError("pnpm-workspace.yaml `packages` is not a string array.");
249
+ }
159
250
  return this.pnpmWorkspacePackages;
160
251
  }
161
252
  return [];
@@ -171,7 +262,14 @@ class Package {
171
262
  return package1.name.localeCompare(package2.name);
172
263
  }
173
264
  }
174
- var DEPENDENCY_TYPE = /* @__PURE__ */(DEPENDENCY_TYPE2 => (DEPENDENCY_TYPE2.dependencies = "dependencies", DEPENDENCY_TYPE2.devDependencies = "devDependencies", DEPENDENCY_TYPE2.optionalDependencies = "optionalDependencies", DEPENDENCY_TYPE2.peerDependencies = "peerDependencies", DEPENDENCY_TYPE2.resolutions = "resolutions", DEPENDENCY_TYPE2))(DEPENDENCY_TYPE || {});
265
+ var DEPENDENCY_TYPE = /* @__PURE__ */(DEPENDENCY_TYPE2 => {
266
+ DEPENDENCY_TYPE2["dependencies"] = "dependencies";
267
+ DEPENDENCY_TYPE2["devDependencies"] = "devDependencies";
268
+ DEPENDENCY_TYPE2["optionalDependencies"] = "optionalDependencies";
269
+ DEPENDENCY_TYPE2["peerDependencies"] = "peerDependencies";
270
+ DEPENDENCY_TYPE2["resolutions"] = "resolutions";
271
+ return DEPENDENCY_TYPE2;
272
+ })(DEPENDENCY_TYPE || {});
175
273
  const DEFAULT_DEP_TYPES = ["dependencies" /* dependencies */, "devDependencies" /* devDependencies */, "optionalDependencies" /* optionalDependencies */, "resolutions" /* resolutions */
176
274
  // peerDependencies is not included by default, see discussion in: https://github.com/bmish/check-dependency-version-consistency/issues/402
177
275
  ];
@@ -179,38 +277,42 @@ function check(path) {
179
277
  const options = {
180
278
  includeDepPattern: ["tamagui", "react-native-web-lite", "react-native-web-internals"]
181
279
  };
182
- if (options && options.depType && options.depType.some(dt => !Object.keys(DEPENDENCY_TYPE).includes(dt))) throw new Error(`Invalid depType provided. Choices are: ${Object.keys(DEPENDENCY_TYPE).join(", ")}.`);
280
+ if (options && options.depType && options.depType.some(dt => !Object.keys(DEPENDENCY_TYPE).includes(dt))) {
281
+ throw new Error(`Invalid depType provided. Choices are: ${Object.keys(DEPENDENCY_TYPE).join(", ")}.`);
282
+ }
183
283
  const optionsWithDefaults = {
184
- fix: !1,
185
- ignoreDep: [],
186
- includeDepPattern: [],
187
- ignorePackage: [],
188
- ignorePackagePattern: [],
189
- ignorePath: [],
190
- ignorePathPattern: [],
191
- ...options,
192
- // Fallback to default if no depType(s) provided.
193
- depType: options && options.depType && options.depType.length > 0 ? options.depType : DEFAULT_DEP_TYPES
194
- },
195
- packages = getPackages(path, optionsWithDefaults.ignorePackage, optionsWithDefaults.ignorePackagePattern.map(s => new RegExp(s)), optionsWithDefaults.ignorePath, optionsWithDefaults.ignorePathPattern.map(s => new RegExp(s))),
196
- dependencies = calculateVersionsForEachDependency(packages, optionsWithDefaults.depType.map(dt => DEPENDENCY_TYPE[dt])
197
- // Convert string to enum.
198
- ),
199
- dependenciesAndVersions = calculateDependenciesAndVersions(dependencies),
200
- dependenciesAndVersionsWithMismatches = dependenciesAndVersions.filter(({
201
- versions
202
- }) => versions.length > 1),
203
- dependenciesAndVersionsWithoutIgnored = filterOutIgnoredDependencies(dependenciesAndVersions, optionsWithDefaults.ignoreDep, optionsWithDefaults.includeDepPattern.map(s => new RegExp(s))),
204
- dependenciesAndVersionsMismatchesWithoutIgnored = filterOutIgnoredDependencies(dependenciesAndVersionsWithMismatches, optionsWithDefaults.ignoreDep, optionsWithDefaults.includeDepPattern.map(s => new RegExp(s)));
284
+ fix: false,
285
+ ignoreDep: [],
286
+ includeDepPattern: [],
287
+ ignorePackage: [],
288
+ ignorePackagePattern: [],
289
+ ignorePath: [],
290
+ ignorePathPattern: [],
291
+ ...options,
292
+ // Fallback to default if no depType(s) provided.
293
+ depType: options && options.depType && options.depType.length > 0 ? options.depType : DEFAULT_DEP_TYPES
294
+ };
295
+ const packages = getPackages(path, optionsWithDefaults.ignorePackage, optionsWithDefaults.ignorePackagePattern.map(s => new RegExp(s)), optionsWithDefaults.ignorePath, optionsWithDefaults.ignorePathPattern.map(s => new RegExp(s)));
296
+ const dependencies = calculateVersionsForEachDependency(packages, optionsWithDefaults.depType.map(dt => DEPENDENCY_TYPE[dt])
297
+ // Convert string to enum.
298
+ );
299
+ const dependenciesAndVersions = calculateDependenciesAndVersions(dependencies);
300
+ const dependenciesAndVersionsWithMismatches = dependenciesAndVersions.filter(({
301
+ versions
302
+ }) => versions.length > 1);
303
+ const dependenciesAndVersionsWithoutIgnored = filterOutIgnoredDependencies(dependenciesAndVersions, optionsWithDefaults.ignoreDep, optionsWithDefaults.includeDepPattern.map(s => new RegExp(s)));
304
+ const dependenciesAndVersionsMismatchesWithoutIgnored = filterOutIgnoredDependencies(dependenciesAndVersionsWithMismatches, optionsWithDefaults.ignoreDep, optionsWithDefaults.includeDepPattern.map(s => new RegExp(s)));
205
305
  return {
206
306
  // Information about all dependencies.
207
307
  dependencies: Object.fromEntries(dependenciesAndVersionsWithoutIgnored.map(({
208
308
  dependency,
209
309
  versions
210
- }) => [dependency, {
211
- isMismatching: dependenciesAndVersionsMismatchesWithoutIgnored.some(dep => dep.dependency === dependency),
212
- versions
213
- }]))
310
+ }) => {
311
+ return [dependency, {
312
+ isMismatching: dependenciesAndVersionsMismatchesWithoutIgnored.some(dep => dep.dependency === dependency),
313
+ versions
314
+ }];
315
+ }))
214
316
  };
215
317
  }
216
318
  class CDVC {
@@ -260,8 +362,11 @@ function dependenciesToMismatchSummary(dependencies) {
260
362
  dependency,
261
363
  versions: value.versions
262
364
  }));
263
- if (mismatchingDependencyVersions.length === 0) return "";
264
- const tables = mismatchingDependencyVersions.map(object => `${object.dependency} - ${object.versions.map(v => `${v.version}`).join(", ")}`).join("");
265
- return [`Found ${mismatchingDependencyVersions.length} ${mismatchingDependencyVersions.length === 1 ? "dependency" : "dependencies"} with mismatching versions across the workspace.`, tables].join(`
266
- `);
365
+ if (mismatchingDependencyVersions.length === 0) {
366
+ return "";
367
+ }
368
+ const tables = mismatchingDependencyVersions.map(object => {
369
+ return `${object.dependency} - ${object.versions.map(v => `${v.version}`).join(", ")}`;
370
+ }).join("");
371
+ return [`Found ${mismatchingDependencyVersions.length} ${mismatchingDependencyVersions.length === 1 ? "dependency" : "dependencies"} with mismatching versions across the workspace.`, tables].join("\n");
267
372
  }