sf-git-merge-driver 1.0.1-dev-70.16903004469-1 → 1.0.1-dev-70.16904427900-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.
package/README.md CHANGED
@@ -48,7 +48,7 @@ EXAMPLES
48
48
  $ sf git merge driver install
49
49
  ```
50
50
 
51
- _See code: [src/commands/git/merge/driver/install.ts](https://github.com/scolladon/sf-git-merge-driver/blob/v1.0.1-dev-70.16903004469-1/src/commands/git/merge/driver/install.ts)_
51
+ _See code: [src/commands/git/merge/driver/install.ts](https://github.com/scolladon/sf-git-merge-driver/blob/v1.0.1-dev-70.16904427900-1/src/commands/git/merge/driver/install.ts)_
52
52
 
53
53
  ## `sf git merge driver run`
54
54
 
@@ -92,7 +92,7 @@ EXAMPLES
92
92
  - output-file is the path to the file where the merged content will be written
93
93
  ```
94
94
 
95
- _See code: [src/commands/git/merge/driver/run.ts](https://github.com/scolladon/sf-git-merge-driver/blob/v1.0.1-dev-70.16903004469-1/src/commands/git/merge/driver/run.ts)_
95
+ _See code: [src/commands/git/merge/driver/run.ts](https://github.com/scolladon/sf-git-merge-driver/blob/v1.0.1-dev-70.16904427900-1/src/commands/git/merge/driver/run.ts)_
96
96
 
97
97
  ## `sf git merge driver uninstall`
98
98
 
@@ -119,7 +119,7 @@ EXAMPLES
119
119
  $ sf git merge driver uninstall
120
120
  ```
121
121
 
122
- _See code: [src/commands/git/merge/driver/uninstall.ts](https://github.com/scolladon/sf-git-merge-driver/blob/v1.0.1-dev-70.16903004469-1/src/commands/git/merge/driver/uninstall.ts)_
122
+ _See code: [src/commands/git/merge/driver/uninstall.ts](https://github.com/scolladon/sf-git-merge-driver/blob/v1.0.1-dev-70.16904427900-1/src/commands/git/merge/driver/uninstall.ts)_
123
123
  <!-- commandsstop -->
124
124
 
125
125
  ## How It Works
@@ -1,10 +1,32 @@
1
1
  import { castArray, isNil } from 'lodash-es';
2
- const CRLF = '\r\n';
2
+ import { EOL } from 'os';
3
+ const CR = '\r';
3
4
  const LF = '\n';
5
+ const CRLF = `${CR}${LF}`;
4
6
  export const isObject = (ancestor, local, other) => typeof [ancestor, other, local].find(ele => !isNil(ele)) === 'object';
5
7
  export const ensureArray = (value) => isNil(value) ? [] : castArray(value);
6
8
  export const getUniqueSortedProps = (...objects) => Array.from(new Set([...objects].map(Object.keys).flat())).sort();
7
- export const detectEol = (text) => text.includes(CRLF) ? CRLF : LF;
9
+ export const detectEol = (text) => {
10
+ if (!text) {
11
+ return EOL;
12
+ }
13
+ let hasCRLF = false;
14
+ let hasLF = false;
15
+ for (let i = 0; i < text.length; ++i) {
16
+ if (text[i] === LF) {
17
+ if (i > 0 && text[i - 1] === CR) {
18
+ hasCRLF = true;
19
+ }
20
+ else {
21
+ hasLF = true;
22
+ }
23
+ if (hasCRLF && hasLF) {
24
+ return EOL;
25
+ }
26
+ }
27
+ }
28
+ return hasCRLF ? CRLF : hasLF ? LF : EOL;
29
+ };
8
30
  export const normalizeEol = (text, eol) => {
9
31
  if (!eol || !text) {
10
32
  return text;
@@ -18,7 +40,6 @@ const normalizeWindowsEol = (text) => {
18
40
  return normalizeUnixEol(text).split(LF).join(CRLF);
19
41
  };
20
42
  const normalizeUnixEol = (text) => {
21
- // Convert CRLF to LF
22
43
  return text.split(CRLF).join(LF);
23
44
  };
24
45
  //# sourceMappingURL=mergeUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mergeUtils.js","sourceRoot":"","sources":["../../src/utils/mergeUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AAG5C,MAAM,IAAI,GAAG,MAAM,CAAA;AACnB,MAAM,EAAE,GAAG,IAAI,CAAA;AAEf,MAAM,CAAC,MAAM,QAAQ,GAAG,CACtB,QAAsC,EACtC,KAAmC,EACnC,KAAmC,EAC1B,EAAE,CACX,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,QAAQ,CAAA;AAEvE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAgB,EAAa,EAAE,CACzD,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAE,SAAS,CAAC,KAAK,CAAe,CAAA;AAErD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,GAAG,OAAmC,EAC5B,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;AAE/E,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAY,EAAU,EAAE,CAChD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;AAEjC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,GAAW,EAAU,EAAE;IAChE,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAA;AACxC,CAAC,CAAA;AAED,MAAM,oBAAoB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,IAAY,EAAE,EAAE,CAC7D,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;AAEnE,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC3C,4CAA4C;IAC5C,uCAAuC;IACvC,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACpD,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,EAAE;IACxC,qBAAqB;IACrB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAClC,CAAC,CAAA"}
1
+ {"version":3,"file":"mergeUtils.js","sourceRoot":"","sources":["../../src/utils/mergeUtils.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "sf-git-merge-driver",
3
- "version": "1.0.1-dev-70.16903004469-1",
3
+ "version": "1.0.1-dev-70.16904427900-1",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "sf-git-merge-driver",
9
- "version": "1.0.1-dev-70.16903004469-1",
9
+ "version": "1.0.1-dev-70.16904427900-1",
10
10
  "license": "MIT",
11
11
  "dependencies": {
12
12
  "@oclif/core": "^4.5.2",
@@ -284,5 +284,5 @@
284
284
  ]
285
285
  }
286
286
  },
287
- "version": "1.0.1-dev-70.16903004469-1"
287
+ "version": "1.0.1-dev-70.16904427900-1"
288
288
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "sf-git-merge-driver",
3
3
  "description": "git remote add origin git@github.com:scolladon/sf-git-merge-driver.git",
4
- "version": "1.0.1-dev-70.16903004469-1",
4
+ "version": "1.0.1-dev-70.16904427900-1",
5
5
  "exports": "./lib/driver/MergeDriver.js",
6
6
  "type": "module",
7
7
  "author": "Sébastien Colladon (colladonsebastien@gmail.com)",