@forsakringskassan/commitlint-config 3.3.1 → 3.3.2

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 (2) hide show
  1. package/dist/commitlint.js +47 -10
  2. package/package.json +1 -1
@@ -262739,7 +262739,8 @@ var scopeCase = (parsed, when = "always", value2 = []) => {
262739
262739
  if (!scope) {
262740
262740
  return [true];
262741
262741
  }
262742
- const checks = (Array.isArray(value2) ? value2 : [value2]).map((check) => {
262742
+ const isObjectBasedConfiguration = !Array.isArray(value2) && !(typeof value2 === "string");
262743
+ const checks = (isObjectBasedConfiguration ? value2.cases : Array.isArray(value2) ? value2 : [value2]).map((check) => {
262743
262744
  if (typeof check === "string") {
262744
262745
  return {
262745
262746
  when: "always",
@@ -262748,10 +262749,14 @@ var scopeCase = (parsed, when = "always", value2 = []) => {
262748
262749
  }
262749
262750
  return check;
262750
262751
  });
262751
- const delimiters = /\/|\\|, ?/g;
262752
- const scopeSegments = scope.split(delimiters);
262752
+ const delimiters = isObjectBasedConfiguration && value2.delimiters?.length ? value2.delimiters : ["/", "\\", ","];
262753
+ const delimiterPatterns = delimiters.map((delimiter) => {
262754
+ return delimiter === "," ? ", ?" : delimiter.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
262755
+ });
262756
+ const delimiterRegex = new RegExp(delimiterPatterns.join("|"));
262757
+ const scopeSegments = scope.split(delimiterRegex);
262753
262758
  const result = checks.some((check) => {
262754
- const r = scopeSegments.every((segment) => delimiters.test(segment) || case_default(segment, check.case));
262759
+ const r = scopeSegments.every((segment) => delimiterRegex.test(segment) || case_default(segment, check.case));
262755
262760
  return negated3(check.when) ? !r : r;
262756
262761
  });
262757
262762
  const list = checks.map((c) => c.case).join(", ");
@@ -262761,6 +262766,30 @@ var scopeCase = (parsed, when = "always", value2 = []) => {
262761
262766
  ];
262762
262767
  };
262763
262768
 
262769
+ // node_modules/@commitlint/rules/lib/scope-delimiter-style.js
262770
+ var scopeDelimiterStyle = ({ scope }, when = "always", value2 = []) => {
262771
+ if (!scope) {
262772
+ return [true];
262773
+ }
262774
+ const delimiters = value2.length ? value2 : ["/", "\\", ","];
262775
+ const scopeRawDelimiters = scope.match(/[^A-Za-z0-9-_]+/g) ?? [];
262776
+ const scopeDelimiters = [
262777
+ ...new Set(scopeRawDelimiters.map((delimiter) => {
262778
+ return delimiter.trim() === "," ? "," : delimiter;
262779
+ }))
262780
+ ];
262781
+ const isAllDelimitersAllowed = scopeDelimiters.every((delimiter) => {
262782
+ return enum_default(delimiter, delimiters);
262783
+ });
262784
+ const isNever = when === "never";
262785
+ return [
262786
+ isNever ? !isAllDelimitersAllowed : isAllDelimitersAllowed,
262787
+ message([
262788
+ `scope delimiters must ${isNever ? "not " : ""}be one of [${delimiters.join(", ")}]`
262789
+ ])
262790
+ ];
262791
+ };
262792
+
262764
262793
  // node_modules/@commitlint/rules/lib/scope-empty.js
262765
262794
  var scopeEmpty = (parsed, when = "never") => {
262766
262795
  const negated6 = when === "always";
@@ -262773,13 +262802,17 @@ var scopeEmpty = (parsed, when = "never") => {
262773
262802
 
262774
262803
  // node_modules/@commitlint/rules/lib/scope-enum.js
262775
262804
  var scopeEnum = ({ scope }, when = "always", value2 = []) => {
262776
- if (!scope || !value2.length) {
262805
+ const scopes = Array.isArray(value2) ? value2 : value2.scopes;
262806
+ if (!scope || !scopes.length) {
262777
262807
  return [true, ""];
262778
262808
  }
262779
- const delimiters = /\/|\\|, ?/g;
262780
- const messageScopes = scope.split(delimiters);
262781
- const errorMessage = ["scope must", `be one of [${value2.join(", ")}]`];
262782
- const isScopeInEnum = (scope2) => enum_default(scope2, value2);
262809
+ const delimiters = Array.isArray(value2) || !value2.delimiters?.length ? ["/", "\\", ","] : value2.delimiters;
262810
+ const delimiterPatterns = delimiters.map((delimiter) => {
262811
+ return delimiter === "," ? ", ?" : delimiter.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
262812
+ });
262813
+ const messageScopes = scope.split(new RegExp(delimiterPatterns.join("|")));
262814
+ const errorMessage = ["scope must", `be one of [${scopes.join(", ")}]`];
262815
+ const isScopeInEnum = (scope2) => enum_default(scope2, scopes);
262783
262816
  let isValid;
262784
262817
  if (when === "never") {
262785
262818
  isValid = !messageScopes.some(isScopeInEnum) && !isScopeInEnum(scope);
@@ -263051,6 +263084,7 @@ var lib_default2 = {
263051
263084
  "header-trim": headerTrim,
263052
263085
  "references-empty": referencesEmpty,
263053
263086
  "scope-case": scopeCase,
263087
+ "scope-delimiter-style": scopeDelimiterStyle,
263054
263088
  "scope-empty": scopeEmpty,
263055
263089
  "scope-enum": scopeEnum,
263056
263090
  "scope-max-length": scopeMaxLength,
@@ -264846,12 +264880,15 @@ async function loadConfig(cwd, configPath) {
264846
264880
  // files supported by TypescriptLoader
264847
264881
  `.${moduleName}rc.ts`,
264848
264882
  `.${moduleName}rc.cts`,
264883
+ `.${moduleName}rc.mts`,
264849
264884
  `${moduleName}.config.ts`,
264850
- `${moduleName}.config.cts`
264885
+ `${moduleName}.config.cts`,
264886
+ `${moduleName}.config.mts`
264851
264887
  ],
264852
264888
  loaders: {
264853
264889
  ".ts": tsLoader,
264854
264890
  ".cts": tsLoader,
264891
+ ".mts": tsLoader,
264855
264892
  ".cjs": loaders[".cjs"],
264856
264893
  ".js": loaders[".js"]
264857
264894
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forsakringskassan/commitlint-config",
3
- "version": "3.3.1",
3
+ "version": "3.3.2",
4
4
  "description": "FK commitlint shareable config",
5
5
  "keywords": [
6
6
  "commitlint"