decidim 0.27.4 → 0.27.6

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of decidim might be problematic. Click here for more details.

Files changed (214) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +7 -16
  3. data/decidim-core/lib/decidim/webpacker/webpack/.modernizrrc +9 -0
  4. data/decidim.gemspec +65 -0
  5. data/docs/modules/develop/pages/releases.adoc +4 -0
  6. data/docs/modules/install/assets/attachments/.gitkeep +0 -0
  7. data/docs/modules/install/assets/images/.gitkeep +0 -0
  8. data/docs/modules/install/pages/manual.adoc +5 -1
  9. data/docs/modules/install/pages/update.adoc +5 -0
  10. data/docs/modules/install/partials/version_matrix.adoc +13 -0
  11. data/docs/modules/services/pages/maps.adoc +8 -0
  12. data/lib/decidim/gem_manager.rb +38 -0
  13. data/lib/decidim/version.rb +1 -1
  14. data/package-lock.json +32 -26
  15. data/packages/browserslist-config/package.json +1 -1
  16. data/packages/core/package.json +4 -4
  17. data/packages/dev/package.json +1 -1
  18. data/packages/elections/package.json +1 -1
  19. data/packages/eslint-config/package.json +1 -1
  20. data/packages/stylelint-config/package.json +1 -1
  21. data/packages/webpacker/package.json +1 -1
  22. metadata +52 -239
  23. data/lib/decidim/release_manager.rb.new +0 -43
  24. data/packages/core/node_modules/diff/CONTRIBUTING.md +0 -39
  25. data/packages/core/node_modules/diff/LICENSE +0 -31
  26. data/packages/core/node_modules/diff/README.md +0 -211
  27. data/packages/core/node_modules/diff/dist/diff.js +0 -1627
  28. data/packages/core/node_modules/diff/dist/diff.min.js +0 -38
  29. data/packages/core/node_modules/diff/lib/convert/dmp.js +0 -32
  30. data/packages/core/node_modules/diff/lib/convert/xml.js +0 -42
  31. data/packages/core/node_modules/diff/lib/diff/array.js +0 -45
  32. data/packages/core/node_modules/diff/lib/diff/base.js +0 -307
  33. data/packages/core/node_modules/diff/lib/diff/character.js +0 -37
  34. data/packages/core/node_modules/diff/lib/diff/css.js +0 -41
  35. data/packages/core/node_modules/diff/lib/diff/json.js +0 -163
  36. data/packages/core/node_modules/diff/lib/diff/line.js +0 -89
  37. data/packages/core/node_modules/diff/lib/diff/sentence.js +0 -41
  38. data/packages/core/node_modules/diff/lib/diff/word.js +0 -108
  39. data/packages/core/node_modules/diff/lib/index.es6.js +0 -1561
  40. data/packages/core/node_modules/diff/lib/index.js +0 -216
  41. data/packages/core/node_modules/diff/lib/index.mjs +0 -1561
  42. data/packages/core/node_modules/diff/lib/patch/apply.js +0 -238
  43. data/packages/core/node_modules/diff/lib/patch/create.js +0 -272
  44. data/packages/core/node_modules/diff/lib/patch/merge.js +0 -613
  45. data/packages/core/node_modules/diff/lib/patch/parse.js +0 -167
  46. data/packages/core/node_modules/diff/lib/util/array.js +0 -32
  47. data/packages/core/node_modules/diff/lib/util/distance-iterator.js +0 -57
  48. data/packages/core/node_modules/diff/lib/util/params.js +0 -24
  49. data/packages/core/node_modules/diff/package.json +0 -87
  50. data/packages/core/node_modules/diff/release-notes.md +0 -309
  51. data/packages/core/node_modules/diff/runtime.js +0 -3
  52. data/packages/core/package-lock.json +0 -4889
  53. data/packages/webpacker/node_modules/argparse/CHANGELOG.md +0 -216
  54. data/packages/webpacker/node_modules/argparse/LICENSE +0 -254
  55. data/packages/webpacker/node_modules/argparse/README.md +0 -84
  56. data/packages/webpacker/node_modules/argparse/argparse.js +0 -3707
  57. data/packages/webpacker/node_modules/argparse/lib/sub.js +0 -67
  58. data/packages/webpacker/node_modules/argparse/lib/textwrap.js +0 -440
  59. data/packages/webpacker/node_modules/argparse/package.json +0 -31
  60. data/packages/webpacker/node_modules/brace-expansion/LICENSE +0 -21
  61. data/packages/webpacker/node_modules/brace-expansion/README.md +0 -135
  62. data/packages/webpacker/node_modules/brace-expansion/index.js +0 -203
  63. data/packages/webpacker/node_modules/brace-expansion/package.json +0 -46
  64. data/packages/webpacker/node_modules/glob/LICENSE +0 -15
  65. data/packages/webpacker/node_modules/glob/README.md +0 -1214
  66. data/packages/webpacker/node_modules/glob/dist/cjs/package.json +0 -4
  67. data/packages/webpacker/node_modules/glob/dist/cjs/src/bin.d.ts +0 -3
  68. data/packages/webpacker/node_modules/glob/dist/cjs/src/bin.d.ts.map +0 -1
  69. data/packages/webpacker/node_modules/glob/dist/cjs/src/bin.js +0 -270
  70. data/packages/webpacker/node_modules/glob/dist/cjs/src/bin.js.map +0 -1
  71. data/packages/webpacker/node_modules/glob/dist/cjs/src/glob.d.ts +0 -344
  72. data/packages/webpacker/node_modules/glob/dist/cjs/src/glob.d.ts.map +0 -1
  73. data/packages/webpacker/node_modules/glob/dist/cjs/src/glob.js +0 -238
  74. data/packages/webpacker/node_modules/glob/dist/cjs/src/glob.js.map +0 -1
  75. data/packages/webpacker/node_modules/glob/dist/cjs/src/has-magic.d.ts +0 -14
  76. data/packages/webpacker/node_modules/glob/dist/cjs/src/has-magic.d.ts.map +0 -1
  77. data/packages/webpacker/node_modules/glob/dist/cjs/src/has-magic.js +0 -27
  78. data/packages/webpacker/node_modules/glob/dist/cjs/src/has-magic.js.map +0 -1
  79. data/packages/webpacker/node_modules/glob/dist/cjs/src/ignore.d.ts +0 -20
  80. data/packages/webpacker/node_modules/glob/dist/cjs/src/ignore.d.ts.map +0 -1
  81. data/packages/webpacker/node_modules/glob/dist/cjs/src/ignore.js +0 -103
  82. data/packages/webpacker/node_modules/glob/dist/cjs/src/ignore.js.map +0 -1
  83. data/packages/webpacker/node_modules/glob/dist/cjs/src/index.d.ts +0 -95
  84. data/packages/webpacker/node_modules/glob/dist/cjs/src/index.d.ts.map +0 -1
  85. data/packages/webpacker/node_modules/glob/dist/cjs/src/index.js +0 -68
  86. data/packages/webpacker/node_modules/glob/dist/cjs/src/index.js.map +0 -1
  87. data/packages/webpacker/node_modules/glob/dist/cjs/src/pattern.d.ts +0 -77
  88. data/packages/webpacker/node_modules/glob/dist/cjs/src/pattern.d.ts.map +0 -1
  89. data/packages/webpacker/node_modules/glob/dist/cjs/src/pattern.js +0 -219
  90. data/packages/webpacker/node_modules/glob/dist/cjs/src/pattern.js.map +0 -1
  91. data/packages/webpacker/node_modules/glob/dist/cjs/src/processor.d.ts +0 -59
  92. data/packages/webpacker/node_modules/glob/dist/cjs/src/processor.d.ts.map +0 -1
  93. data/packages/webpacker/node_modules/glob/dist/cjs/src/processor.js +0 -309
  94. data/packages/webpacker/node_modules/glob/dist/cjs/src/processor.js.map +0 -1
  95. data/packages/webpacker/node_modules/glob/dist/cjs/src/walker.d.ts +0 -96
  96. data/packages/webpacker/node_modules/glob/dist/cjs/src/walker.d.ts.map +0 -1
  97. data/packages/webpacker/node_modules/glob/dist/cjs/src/walker.js +0 -358
  98. data/packages/webpacker/node_modules/glob/dist/cjs/src/walker.js.map +0 -1
  99. data/packages/webpacker/node_modules/glob/dist/mjs/glob.d.ts +0 -344
  100. data/packages/webpacker/node_modules/glob/dist/mjs/glob.d.ts.map +0 -1
  101. data/packages/webpacker/node_modules/glob/dist/mjs/glob.js +0 -234
  102. data/packages/webpacker/node_modules/glob/dist/mjs/glob.js.map +0 -1
  103. data/packages/webpacker/node_modules/glob/dist/mjs/has-magic.d.ts +0 -14
  104. data/packages/webpacker/node_modules/glob/dist/mjs/has-magic.d.ts.map +0 -1
  105. data/packages/webpacker/node_modules/glob/dist/mjs/has-magic.js +0 -23
  106. data/packages/webpacker/node_modules/glob/dist/mjs/has-magic.js.map +0 -1
  107. data/packages/webpacker/node_modules/glob/dist/mjs/ignore.d.ts +0 -20
  108. data/packages/webpacker/node_modules/glob/dist/mjs/ignore.d.ts.map +0 -1
  109. data/packages/webpacker/node_modules/glob/dist/mjs/ignore.js +0 -99
  110. data/packages/webpacker/node_modules/glob/dist/mjs/ignore.js.map +0 -1
  111. data/packages/webpacker/node_modules/glob/dist/mjs/index.d.ts +0 -95
  112. data/packages/webpacker/node_modules/glob/dist/mjs/index.d.ts.map +0 -1
  113. data/packages/webpacker/node_modules/glob/dist/mjs/index.js +0 -56
  114. data/packages/webpacker/node_modules/glob/dist/mjs/index.js.map +0 -1
  115. data/packages/webpacker/node_modules/glob/dist/mjs/package.json +0 -4
  116. data/packages/webpacker/node_modules/glob/dist/mjs/pattern.d.ts +0 -77
  117. data/packages/webpacker/node_modules/glob/dist/mjs/pattern.d.ts.map +0 -1
  118. data/packages/webpacker/node_modules/glob/dist/mjs/pattern.js +0 -215
  119. data/packages/webpacker/node_modules/glob/dist/mjs/pattern.js.map +0 -1
  120. data/packages/webpacker/node_modules/glob/dist/mjs/processor.d.ts +0 -59
  121. data/packages/webpacker/node_modules/glob/dist/mjs/processor.d.ts.map +0 -1
  122. data/packages/webpacker/node_modules/glob/dist/mjs/processor.js +0 -302
  123. data/packages/webpacker/node_modules/glob/dist/mjs/processor.js.map +0 -1
  124. data/packages/webpacker/node_modules/glob/dist/mjs/walker.d.ts +0 -96
  125. data/packages/webpacker/node_modules/glob/dist/mjs/walker.d.ts.map +0 -1
  126. data/packages/webpacker/node_modules/glob/dist/mjs/walker.js +0 -352
  127. data/packages/webpacker/node_modules/glob/dist/mjs/walker.js.map +0 -1
  128. data/packages/webpacker/node_modules/glob/package.json +0 -98
  129. data/packages/webpacker/node_modules/js-yaml/CHANGELOG.md +0 -616
  130. data/packages/webpacker/node_modules/js-yaml/LICENSE +0 -21
  131. data/packages/webpacker/node_modules/js-yaml/README.md +0 -246
  132. data/packages/webpacker/node_modules/js-yaml/bin/js-yaml.js +0 -126
  133. data/packages/webpacker/node_modules/js-yaml/dist/js-yaml.js +0 -3874
  134. data/packages/webpacker/node_modules/js-yaml/dist/js-yaml.min.js +0 -2
  135. data/packages/webpacker/node_modules/js-yaml/dist/js-yaml.mjs +0 -3851
  136. data/packages/webpacker/node_modules/js-yaml/index.js +0 -47
  137. data/packages/webpacker/node_modules/js-yaml/lib/common.js +0 -59
  138. data/packages/webpacker/node_modules/js-yaml/lib/dumper.js +0 -965
  139. data/packages/webpacker/node_modules/js-yaml/lib/exception.js +0 -55
  140. data/packages/webpacker/node_modules/js-yaml/lib/loader.js +0 -1727
  141. data/packages/webpacker/node_modules/js-yaml/lib/schema/core.js +0 -11
  142. data/packages/webpacker/node_modules/js-yaml/lib/schema/default.js +0 -22
  143. data/packages/webpacker/node_modules/js-yaml/lib/schema/failsafe.js +0 -17
  144. data/packages/webpacker/node_modules/js-yaml/lib/schema/json.js +0 -19
  145. data/packages/webpacker/node_modules/js-yaml/lib/schema.js +0 -121
  146. data/packages/webpacker/node_modules/js-yaml/lib/snippet.js +0 -101
  147. data/packages/webpacker/node_modules/js-yaml/lib/type/binary.js +0 -125
  148. data/packages/webpacker/node_modules/js-yaml/lib/type/bool.js +0 -35
  149. data/packages/webpacker/node_modules/js-yaml/lib/type/float.js +0 -97
  150. data/packages/webpacker/node_modules/js-yaml/lib/type/int.js +0 -156
  151. data/packages/webpacker/node_modules/js-yaml/lib/type/map.js +0 -8
  152. data/packages/webpacker/node_modules/js-yaml/lib/type/merge.js +0 -12
  153. data/packages/webpacker/node_modules/js-yaml/lib/type/null.js +0 -35
  154. data/packages/webpacker/node_modules/js-yaml/lib/type/omap.js +0 -44
  155. data/packages/webpacker/node_modules/js-yaml/lib/type/pairs.js +0 -53
  156. data/packages/webpacker/node_modules/js-yaml/lib/type/seq.js +0 -8
  157. data/packages/webpacker/node_modules/js-yaml/lib/type/set.js +0 -29
  158. data/packages/webpacker/node_modules/js-yaml/lib/type/str.js +0 -8
  159. data/packages/webpacker/node_modules/js-yaml/lib/type/timestamp.js +0 -88
  160. data/packages/webpacker/node_modules/js-yaml/lib/type.js +0 -66
  161. data/packages/webpacker/node_modules/js-yaml/package.json +0 -66
  162. data/packages/webpacker/node_modules/minimatch/LICENSE +0 -15
  163. data/packages/webpacker/node_modules/minimatch/README.md +0 -454
  164. data/packages/webpacker/node_modules/minimatch/dist/cjs/assert-valid-pattern.d.ts +0 -2
  165. data/packages/webpacker/node_modules/minimatch/dist/cjs/assert-valid-pattern.d.ts.map +0 -1
  166. data/packages/webpacker/node_modules/minimatch/dist/cjs/assert-valid-pattern.js +0 -14
  167. data/packages/webpacker/node_modules/minimatch/dist/cjs/assert-valid-pattern.js.map +0 -1
  168. data/packages/webpacker/node_modules/minimatch/dist/cjs/ast.d.ts +0 -19
  169. data/packages/webpacker/node_modules/minimatch/dist/cjs/ast.d.ts.map +0 -1
  170. data/packages/webpacker/node_modules/minimatch/dist/cjs/ast.js +0 -589
  171. data/packages/webpacker/node_modules/minimatch/dist/cjs/ast.js.map +0 -1
  172. data/packages/webpacker/node_modules/minimatch/dist/cjs/brace-expressions.d.ts +0 -8
  173. data/packages/webpacker/node_modules/minimatch/dist/cjs/brace-expressions.d.ts.map +0 -1
  174. data/packages/webpacker/node_modules/minimatch/dist/cjs/brace-expressions.js +0 -152
  175. data/packages/webpacker/node_modules/minimatch/dist/cjs/brace-expressions.js.map +0 -1
  176. data/packages/webpacker/node_modules/minimatch/dist/cjs/escape.d.ts +0 -12
  177. data/packages/webpacker/node_modules/minimatch/dist/cjs/escape.d.ts.map +0 -1
  178. data/packages/webpacker/node_modules/minimatch/dist/cjs/escape.js +0 -22
  179. data/packages/webpacker/node_modules/minimatch/dist/cjs/escape.js.map +0 -1
  180. data/packages/webpacker/node_modules/minimatch/dist/cjs/index.d.ts +0 -94
  181. data/packages/webpacker/node_modules/minimatch/dist/cjs/index.d.ts.map +0 -1
  182. data/packages/webpacker/node_modules/minimatch/dist/cjs/index.js +0 -1011
  183. data/packages/webpacker/node_modules/minimatch/dist/cjs/index.js.map +0 -1
  184. data/packages/webpacker/node_modules/minimatch/dist/cjs/package.json +0 -3
  185. data/packages/webpacker/node_modules/minimatch/dist/cjs/unescape.d.ts +0 -17
  186. data/packages/webpacker/node_modules/minimatch/dist/cjs/unescape.d.ts.map +0 -1
  187. data/packages/webpacker/node_modules/minimatch/dist/cjs/unescape.js +0 -24
  188. data/packages/webpacker/node_modules/minimatch/dist/cjs/unescape.js.map +0 -1
  189. data/packages/webpacker/node_modules/minimatch/dist/mjs/assert-valid-pattern.d.ts +0 -2
  190. data/packages/webpacker/node_modules/minimatch/dist/mjs/assert-valid-pattern.d.ts.map +0 -1
  191. data/packages/webpacker/node_modules/minimatch/dist/mjs/assert-valid-pattern.js +0 -10
  192. data/packages/webpacker/node_modules/minimatch/dist/mjs/assert-valid-pattern.js.map +0 -1
  193. data/packages/webpacker/node_modules/minimatch/dist/mjs/ast.d.ts +0 -19
  194. data/packages/webpacker/node_modules/minimatch/dist/mjs/ast.d.ts.map +0 -1
  195. data/packages/webpacker/node_modules/minimatch/dist/mjs/ast.js +0 -585
  196. data/packages/webpacker/node_modules/minimatch/dist/mjs/ast.js.map +0 -1
  197. data/packages/webpacker/node_modules/minimatch/dist/mjs/brace-expressions.d.ts +0 -8
  198. data/packages/webpacker/node_modules/minimatch/dist/mjs/brace-expressions.d.ts.map +0 -1
  199. data/packages/webpacker/node_modules/minimatch/dist/mjs/brace-expressions.js +0 -148
  200. data/packages/webpacker/node_modules/minimatch/dist/mjs/brace-expressions.js.map +0 -1
  201. data/packages/webpacker/node_modules/minimatch/dist/mjs/escape.d.ts +0 -12
  202. data/packages/webpacker/node_modules/minimatch/dist/mjs/escape.d.ts.map +0 -1
  203. data/packages/webpacker/node_modules/minimatch/dist/mjs/escape.js +0 -18
  204. data/packages/webpacker/node_modules/minimatch/dist/mjs/escape.js.map +0 -1
  205. data/packages/webpacker/node_modules/minimatch/dist/mjs/index.d.ts +0 -94
  206. data/packages/webpacker/node_modules/minimatch/dist/mjs/index.d.ts.map +0 -1
  207. data/packages/webpacker/node_modules/minimatch/dist/mjs/index.js +0 -995
  208. data/packages/webpacker/node_modules/minimatch/dist/mjs/index.js.map +0 -1
  209. data/packages/webpacker/node_modules/minimatch/dist/mjs/package.json +0 -3
  210. data/packages/webpacker/node_modules/minimatch/dist/mjs/unescape.d.ts +0 -17
  211. data/packages/webpacker/node_modules/minimatch/dist/mjs/unescape.d.ts.map +0 -1
  212. data/packages/webpacker/node_modules/minimatch/dist/mjs/unescape.js +0 -20
  213. data/packages/webpacker/node_modules/minimatch/dist/mjs/unescape.js.map +0 -1
  214. data/packages/webpacker/node_modules/minimatch/package.json +0 -86
@@ -1,163 +0,0 @@
1
- /*istanbul ignore start*/
2
- "use strict";
3
-
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.diffJson = diffJson;
8
- exports.canonicalize = canonicalize;
9
- exports.jsonDiff = void 0;
10
-
11
- /*istanbul ignore end*/
12
- var
13
- /*istanbul ignore start*/
14
- _base = _interopRequireDefault(require("./base"))
15
- /*istanbul ignore end*/
16
- ;
17
-
18
- var
19
- /*istanbul ignore start*/
20
- _line = require("./line")
21
- /*istanbul ignore end*/
22
- ;
23
-
24
- /*istanbul ignore start*/ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
25
-
26
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
27
-
28
- /*istanbul ignore end*/
29
- var objectPrototypeToString = Object.prototype.toString;
30
- var jsonDiff = new
31
- /*istanbul ignore start*/
32
- _base
33
- /*istanbul ignore end*/
34
- [
35
- /*istanbul ignore start*/
36
- "default"
37
- /*istanbul ignore end*/
38
- ](); // Discriminate between two lines of pretty-printed, serialized JSON where one of them has a
39
- // dangling comma and the other doesn't. Turns out including the dangling comma yields the nicest output:
40
-
41
- /*istanbul ignore start*/
42
- exports.jsonDiff = jsonDiff;
43
-
44
- /*istanbul ignore end*/
45
- jsonDiff.useLongestToken = true;
46
- jsonDiff.tokenize =
47
- /*istanbul ignore start*/
48
- _line
49
- /*istanbul ignore end*/
50
- .
51
- /*istanbul ignore start*/
52
- lineDiff
53
- /*istanbul ignore end*/
54
- .tokenize;
55
-
56
- jsonDiff.castInput = function (value) {
57
- /*istanbul ignore start*/
58
- var _this$options =
59
- /*istanbul ignore end*/
60
- this.options,
61
- undefinedReplacement = _this$options.undefinedReplacement,
62
- _this$options$stringi = _this$options.stringifyReplacer,
63
- stringifyReplacer = _this$options$stringi === void 0 ? function (k, v)
64
- /*istanbul ignore start*/
65
- {
66
- return (
67
- /*istanbul ignore end*/
68
- typeof v === 'undefined' ? undefinedReplacement : v
69
- );
70
- } : _this$options$stringi;
71
- return typeof value === 'string' ? value : JSON.stringify(canonicalize(value, null, null, stringifyReplacer), stringifyReplacer, ' ');
72
- };
73
-
74
- jsonDiff.equals = function (left, right) {
75
- return (
76
- /*istanbul ignore start*/
77
- _base
78
- /*istanbul ignore end*/
79
- [
80
- /*istanbul ignore start*/
81
- "default"
82
- /*istanbul ignore end*/
83
- ].prototype.equals.call(jsonDiff, left.replace(/,([\r\n])/g, '$1'), right.replace(/,([\r\n])/g, '$1'))
84
- );
85
- };
86
-
87
- function diffJson(oldObj, newObj, options) {
88
- return jsonDiff.diff(oldObj, newObj, options);
89
- } // This function handles the presence of circular references by bailing out when encountering an
90
- // object that is already on the "stack" of items being processed. Accepts an optional replacer
91
-
92
-
93
- function canonicalize(obj, stack, replacementStack, replacer, key) {
94
- stack = stack || [];
95
- replacementStack = replacementStack || [];
96
-
97
- if (replacer) {
98
- obj = replacer(key, obj);
99
- }
100
-
101
- var i;
102
-
103
- for (i = 0; i < stack.length; i += 1) {
104
- if (stack[i] === obj) {
105
- return replacementStack[i];
106
- }
107
- }
108
-
109
- var canonicalizedObj;
110
-
111
- if ('[object Array]' === objectPrototypeToString.call(obj)) {
112
- stack.push(obj);
113
- canonicalizedObj = new Array(obj.length);
114
- replacementStack.push(canonicalizedObj);
115
-
116
- for (i = 0; i < obj.length; i += 1) {
117
- canonicalizedObj[i] = canonicalize(obj[i], stack, replacementStack, replacer, key);
118
- }
119
-
120
- stack.pop();
121
- replacementStack.pop();
122
- return canonicalizedObj;
123
- }
124
-
125
- if (obj && obj.toJSON) {
126
- obj = obj.toJSON();
127
- }
128
-
129
- if (
130
- /*istanbul ignore start*/
131
- _typeof(
132
- /*istanbul ignore end*/
133
- obj) === 'object' && obj !== null) {
134
- stack.push(obj);
135
- canonicalizedObj = {};
136
- replacementStack.push(canonicalizedObj);
137
-
138
- var sortedKeys = [],
139
- _key;
140
-
141
- for (_key in obj) {
142
- /* istanbul ignore else */
143
- if (obj.hasOwnProperty(_key)) {
144
- sortedKeys.push(_key);
145
- }
146
- }
147
-
148
- sortedKeys.sort();
149
-
150
- for (i = 0; i < sortedKeys.length; i += 1) {
151
- _key = sortedKeys[i];
152
- canonicalizedObj[_key] = canonicalize(obj[_key], stack, replacementStack, replacer, _key);
153
- }
154
-
155
- stack.pop();
156
- replacementStack.pop();
157
- } else {
158
- canonicalizedObj = obj;
159
- }
160
-
161
- return canonicalizedObj;
162
- }
163
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWZmL2pzb24uanMiXSwibmFtZXMiOlsib2JqZWN0UHJvdG90eXBlVG9TdHJpbmciLCJPYmplY3QiLCJwcm90b3R5cGUiLCJ0b1N0cmluZyIsImpzb25EaWZmIiwiRGlmZiIsInVzZUxvbmdlc3RUb2tlbiIsInRva2VuaXplIiwibGluZURpZmYiLCJjYXN0SW5wdXQiLCJ2YWx1ZSIsIm9wdGlvbnMiLCJ1bmRlZmluZWRSZXBsYWNlbWVudCIsInN0cmluZ2lmeVJlcGxhY2VyIiwiayIsInYiLCJKU09OIiwic3RyaW5naWZ5IiwiY2Fub25pY2FsaXplIiwiZXF1YWxzIiwibGVmdCIsInJpZ2h0IiwiY2FsbCIsInJlcGxhY2UiLCJkaWZmSnNvbiIsIm9sZE9iaiIsIm5ld09iaiIsImRpZmYiLCJvYmoiLCJzdGFjayIsInJlcGxhY2VtZW50U3RhY2siLCJyZXBsYWNlciIsImtleSIsImkiLCJsZW5ndGgiLCJjYW5vbmljYWxpemVkT2JqIiwicHVzaCIsIkFycmF5IiwicG9wIiwidG9KU09OIiwic29ydGVkS2V5cyIsImhhc093blByb3BlcnR5Iiwic29ydCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7Ozs7QUFFQSxJQUFNQSx1QkFBdUIsR0FBR0MsTUFBTSxDQUFDQyxTQUFQLENBQWlCQyxRQUFqRDtBQUdPLElBQU1DLFFBQVEsR0FBRztBQUFJQztBQUFBQTtBQUFBQTtBQUFBQTtBQUFBQTtBQUFBQTtBQUFBQTtBQUFBQSxDQUFKLEVBQWpCLEMsQ0FDUDtBQUNBOzs7Ozs7QUFDQUQsUUFBUSxDQUFDRSxlQUFULEdBQTJCLElBQTNCO0FBRUFGLFFBQVEsQ0FBQ0csUUFBVDtBQUFvQkM7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQTtBQUFBLENBQVNELFFBQTdCOztBQUNBSCxRQUFRLENBQUNLLFNBQVQsR0FBcUIsVUFBU0MsS0FB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Z0IsR0FBR1AsR0FBbkI7QUFDRDs7QUFDRCxTQUFPTyxnQkFBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IERpZmYgZnJvbSAnLi9iYXNlJztcbmltcG9ydCB7bGluZURpZmZ9IGZyb20gJy4vbGluZSc7XG5cbmNvbnN0IG9iamVjdFByb3RvdHlwZVRvU3RyaW5nID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZztcblxuXG5leHBvcnQgY29uc3QganNvbkRpZmYgPSBuZXcgRGlmZigpO1xuLy8gRGlzY3JpbWluYXRlIGJldHdlZW4gdHdvIGxpbmVzIG9mIHByZXR0eS1wcmludGVkLCBzZXJpYWxpemVkIEpTT04gd2hlcmUgb25lIG9mIHRoZW0gaGFzIGFcbi8vIGRhbmdsaW5nIGNvbW1hIGFuZCB0aGUgb3RoZXIgZG9lc24ndC4gVHVybnMgb3V0IGluY2x1ZGluZyB0aGUgZGFuZ2xpbmcgY29tbWEgeWllbGRzIHRoZSBuaWNlc3Qgb3V0cHV0OlxuanNvbkRpZmYudXNlTG9uZ2VzdFRva2VuID0gdHJ1ZTtcblxuanNvbkRpZmYudG9rZW5pemUgPSBsaW5lRGlmZi50b2tlbml6ZTtcbmpzb25EaWZmLmNhc3RJbnB1dCA9IGZ1bmN0aW9uKHZhbHVlKSB7XG4gIGNvbnN0IHt1bmRlZmluZWRSZXBsYWNlbWVudCwgc3RyaW5naWZ5UmVwbGFjZXIgPSAoaywgdikgPT4gdHlwZW9mIHYgPT09ICd1bmRlZmluZWQnID8gdW5kZWZpbmVkUmVwbGFjZW1lbnQgOiB2fSA9IHRoaXMub3B0aW9ucztcblxuICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyA/IHZhbHVlIDogSlNPTi5zdHJpbmdpZnkoY2Fub25pY2FsaXplKHZhbHVlLCBudWxsLCBudWxsLCBzdHJpbmdpZnlSZXBsYWNlciksIHN0cmluZ2lmeVJlcGxhY2VyLCAnICAnKTtcbn07XG5qc29uRGlmZi5lcXVhbHMgPSBmdW5jdGlvbihsZWZ0LCByaWdodCkge1xuICByZXR1cm4gRGlmZi5wcm90b3R5cGUuZXF1YWxzLmNhbGwoanNvbkRpZmYsIGxlZnQucmVwbGFjZSgvLChbXFxyXFxuXSkvZywgJyQxJyksIHJpZ2h0LnJlcGxhY2UoLywoW1xcclxcbl0pL2csICckMScpKTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBkaWZmSnNvbihvbGRPYmosIG5ld09iaiwgb3B0aW9ucykgeyByZXR1cm4ganNvbkRpZmYuZGlmZihvbGRPYmosIG5ld09iaiwgb3B0aW9ucyk7IH1cblxuLy8gVGhpcyBmdW5jdGlvbiBoYW5kbGVzIHRoZSBwcmVzZW5jZSBvZiBjaXJjdWxhciByZWZlcmVuY2VzIGJ5IGJhaWxpbmcgb3V0IHdoZW4gZW5jb3VudGVyaW5nIGFuXG4vLyBvYmplY3QgdGhhdCBpcyBhbHJlYWR5IG9uIHRoZSBcInN0YWNrXCIgb2YgaXRlbXMgYmVpbmcgcHJvY2Vzc2VkLiBBY2NlcHRzIGFuIG9wdGlvbmFsIHJlcGxhY2VyXG5leHBvcnQgZnVuY3Rpb24gY2Fub25pY2FsaXplKG9iaiwgc3RhY2ssIHJlcGxhY2VtZW50U3RhY2ssIHJlcGxhY2VyLCBrZXkpIHtcbiAgc3RhY2sgPSBzdGFjayB8fCBbXTtcbiAgcmVwbGFjZW1lbnRTdGFjayA9IHJlcGxhY2VtZW50U3RhY2sgfHwgW107XG5cbiAgaWYgKHJlcGxhY2VyKSB7XG4gICAgb2JqID0gcmVwbGFjZXIoa2V5LCBvYmopO1xuICB9XG5cbiAgbGV0IGk7XG5cbiAgZm9yIChpID0gMDsgaSA8IHN0YWNrLmxlbmd0aDsgaSArPSAxKSB7XG4gICAgaWYgKHN0YWNrW2ldID09PSBvYmopIHtcbiAgICAgIHJldHVybiByZXBsYWNlbWVudFN0YWNrW2ldO1xuICAgIH1cbiAgfVxuXG4gIGxldCBjYW5vbmljYWxpemVkT2JqO1xuXG4gIGlmICgnW29iamVjdCBBcnJheV0nID09PSBvYmplY3RQcm90b3R5cGVUb1N0cmluZy5jYWxsKG9iaikpIHtcbiAgICBzdGFjay5wdXNoKG9iaik7XG4gICAgY2Fub25pY2FsaXplZE9iaiA9IG5ldyBBcnJheShvYmoubGVuZ3RoKTtcbiAgICByZXBsYWNlbWVudFN0YWNrLnB1c2goY2Fub25pY2FsaXplZE9iaik7XG4gICAgZm9yIChpID0gMDsgaSA8IG9iai5sZW5ndGg7IGkgKz0gMSkge1xuICAgICAgY2Fub25pY2FsaXplZE9ialtpXSA9IGNhbm9uaWNhbGl6ZShvYmpbaV0sIHN0YWNrLCByZXBsYWNlbWVudFN0YWNrLCByZXBsYWNlciwga2V5KTtcbiAgICB9XG4gICAgc3RhY2sucG9wKCk7XG4gICAgcmVwbGFjZW1lbnRTdGFjay5wb3AoKTtcbiAgICByZXR1cm4gY2Fub25pY2FsaXplZE9iajtcbiAgfVxuXG4gIGlmIChvYmogJiYgb2JqLnRvSlNPTikge1xuICAgIG9iaiA9IG9iai50b0pTT04oKTtcbiAgfVxuXG4gIGlmICh0eXBlb2Ygb2JqID09PSAnb2JqZWN0JyAmJiBvYmogIT09IG51bGwpIHtcbiAgICBzdGFjay5wdXNoKG9iaik7XG4gICAgY2Fub25pY2FsaXplZE9iaiA9IHt9O1xuICAgIHJlcGxhY2VtZW50U3RhY2sucHVzaChjYW5vbmljYWxpemVkT2JqKTtcbiAgICBsZXQgc29ydGVkS2V5cyA9IFtdLFxuICAgICAgICBrZXk7XG4gICAgZm9yIChrZXkgaW4gb2JqKSB7XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgaWYgKG9iai5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XG4gICAgICAgIHNvcnRlZEtleXMucHVzaChrZXkpO1xuICAgICAgfVxuICAgIH1cbiAgICBzb3J0ZWRLZXlzLnNvcnQoKTtcbiAgICBmb3IgKGkgPSAwOyBpIDwgc29ydGVkS2V5cy5sZW5ndGg7IGkgKz0gMSkge1xuICAgICAga2V5ID0gc29ydGVkS2V5c1tpXTtcbiAgICAgIGNhbm9uaWNhbGl6ZWRPYmpba2V5XSA9IGNhbm9uaWNhbGl6ZShvYmpba2V5XSwgc3RhY2ssIHJlcGxhY2VtZW50U3RhY2ssIHJlcGxhY2VyLCBrZXkpO1xuICAgIH1cbiAgICBzdGFjay5wb3AoKTtcbiAgICByZXBsYWNlbWVudFN0YWNrLnBvcCgpO1xuICB9IGVsc2Uge1xuICAgIGNhbm9uaWNhbGl6ZWRPYmogPSBvYmo7XG4gIH1cbiAgcmV0dXJuIGNhbm9uaWNhbGl6ZWRPYmo7XG59XG4iXX0=
@@ -1,89 +0,0 @@
1
- /*istanbul ignore start*/
2
- "use strict";
3
-
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.diffLines = diffLines;
8
- exports.diffTrimmedLines = diffTrimmedLines;
9
- exports.lineDiff = void 0;
10
-
11
- /*istanbul ignore end*/
12
- var
13
- /*istanbul ignore start*/
14
- _base = _interopRequireDefault(require("./base"))
15
- /*istanbul ignore end*/
16
- ;
17
-
18
- var
19
- /*istanbul ignore start*/
20
- _params = require("../util/params")
21
- /*istanbul ignore end*/
22
- ;
23
-
24
- /*istanbul ignore start*/ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
25
-
26
- /*istanbul ignore end*/
27
- var lineDiff = new
28
- /*istanbul ignore start*/
29
- _base
30
- /*istanbul ignore end*/
31
- [
32
- /*istanbul ignore start*/
33
- "default"
34
- /*istanbul ignore end*/
35
- ]();
36
-
37
- /*istanbul ignore start*/
38
- exports.lineDiff = lineDiff;
39
-
40
- /*istanbul ignore end*/
41
- lineDiff.tokenize = function (value) {
42
- var retLines = [],
43
- linesAndNewlines = value.split(/(\n|\r\n)/); // Ignore the final empty token that occurs if the string ends with a new line
44
-
45
- if (!linesAndNewlines[linesAndNewlines.length - 1]) {
46
- linesAndNewlines.pop();
47
- } // Merge the content and line separators into single tokens
48
-
49
-
50
- for (var i = 0; i < linesAndNewlines.length; i++) {
51
- var line = linesAndNewlines[i];
52
-
53
- if (i % 2 && !this.options.newlineIsToken) {
54
- retLines[retLines.length - 1] += line;
55
- } else {
56
- if (this.options.ignoreWhitespace) {
57
- line = line.trim();
58
- }
59
-
60
- retLines.push(line);
61
- }
62
- }
63
-
64
- return retLines;
65
- };
66
-
67
- function diffLines(oldStr, newStr, callback) {
68
- return lineDiff.diff(oldStr, newStr, callback);
69
- }
70
-
71
- function diffTrimmedLines(oldStr, newStr, callback) {
72
- var options =
73
- /*istanbul ignore start*/
74
- (0,
75
- /*istanbul ignore end*/
76
-
77
- /*istanbul ignore start*/
78
- _params
79
- /*istanbul ignore end*/
80
- .
81
- /*istanbul ignore start*/
82
- generateOptions)
83
- /*istanbul ignore end*/
84
- (callback, {
85
- ignoreWhitespace: true
86
- });
87
- return lineDiff.diff(oldStr, newStr, options);
88
- }
89
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWZmL2xpbmUuanMiXSwibmFtZXMiOlsibGluZURpZmYiLCJEaWZmIiwidG9rZW5pemUiLCJ2YWx1ZSIsInJldExpbmVzIiwibGluZXNBbmROZXdsaW5lcyIsInNwbGl0IiwibGVuZ3RoIiwicG9wIiwiaSIsImxpbmUiLCJvcHRpb25zIiwibmV3bGluZUlzVG9rZW4iLCJpZ25vcmVXaGl0ZXNwYWNlIiwidHJpbSIsInB1c2giLCJkaWZmTGluZXMiLCJvbGRTdHIiLCJuZXdTdHIiLCJjYWxsYmFjayIsImRpZmYiLCJkaWZmVHJpbW1lZExpbmVzIiwiZ2VuZXJhdGVPcHRpb25zIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTs7Ozs7QUFFTyxJQUFNQSxRQUFRLEdBQUc7QUFBSUM7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUEsQ0FBSixFQUFqQjs7Ozs7O0FBQ1BELFFBQVEsQ0FBQ0UsUUFBVCxHQUFvQixVQUFTQyxLQUFULEVBQWdCO0FBQ2xDLE1BQUlDLFFBQVEsR0FBRyxFQUFmO0FBQUEsTUFDSUMsZ0JBQWdCLEdBQUdGLEtBQUssQ0FBQ0csS0FBTixDQUFZLFdBQVosQ0FEdkIsQ0FEa0MsQ0FJbEM7O0FBQ0EsTUFBSSxDQUFDRCxnQkFBZ0IsQ0FBQ0EsZ0JBQWdCLENBQUNFLE1BQWpCLEdBQTBCLENBQTNCLENBQXJCLEVBQW9EO0FBQ2xERixJQUFBQSxnQkFBZ0IsQ0FBQ0csR0FBakI7QUFDRCxHQVBpQyxDQVNsQzs7O0FBQ0EsT0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHSixnQkFBZ0IsQ0FBQ0UsTUFBckMsRUFBNkNFLENBQUMsRUFBOUMsRUFBa0Q7QUFDaEQsUUFBSUMsSUFBSSxHQUFHTCxnQkFBZ0IsQ0FBQ0ksQ0FBRCxDQUEzQjs7QUFFQSxRQUFJQSxDQUFDLEdBQUcsQ0FBSixJQUFTLENBQUMsS0FBS0UsT0FBTCxDQUFhQyxjQUEzQixFQUEyQztBQUN6Q1IsTUFBQUEsUUFBUSxDQUFDQSxRQUFRLENBQUNHLE1BQVQsR0FBa0IsQ0FBbkIsQ0FBUixJQUFpQ0csSUFBakM7QUFDRCxLQUZELE1BRU87QUFDTCxVQUFJLEtBQUtDLE9BQUwsQ0FBYUUsZ0JBQWpCLEVBQW1DO0FBQ2pDSCxRQUFBQSxJQUFJLEdBQUdBLElBQUksQ0FBQ0ksSUFBTCxFQUFQO0FBQ0Q7O0FBQ0RWLE1BQUFBLFFBQVEsQ0FBQ1csSUFBVCxDQUFjTCxJQUFkO0FBQ0Q7QUFDRjs7QUFFRCxTQUFPTixRQUFQO0FBQ0QsQ0F4QkQ7O0FBMEJPLFNBQVNZLFNBQVQsQ0FBbUJDLE1BQW5CLEVBQTJCQyxNQUEzQixFQUFtQ0MsUUFBbkMsRUFBNkM7QUFBRSxTQUFPbkIsUUFBUSxDQUFDb0IsSUFBVCxDQUFjSCxNQUFkLEVBQXNCQyxNQUF0QixFQUE4QkMsUUFBOUIsQ0FBUDtBQUFpRDs7QUFDaEcsU0FBU0UsZ0JBQVQsQ0FBMEJKLE1BQTFCLEVBQWtDQyxNQUFsQyxFQUEwQ0MsUUFBMUMsRUFBb0Q7QUFDekQsTUFBSVIsT0FBTztBQUFHO0FBQUE7QUFBQTs7QUFBQVc7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQTtBQUFBLEdBQWdCSCxRQUFoQixFQUEwQjtBQUFDTixJQUFBQSxnQkFBZ0IsRUFBRTtBQUFuQixHQUExQixDQUFkO0FBQ0EsU0FBT2IsUUFBUSxDQUFDb0IsSUFBVCxDQUFjSCxNQUFkLEVBQXNCQyxNQUF0QixFQUE4QlAsT0FBOUIsQ0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IERpZmYgZnJvbSAnLi9iYXNlJztcbmltcG9ydCB7Z2VuZXJhdGVPcHRpb25zfSBmcm9tICcuLi91dGlsL3BhcmFtcyc7XG5cbmV4cG9ydCBjb25zdCBsaW5lRGlmZiA9IG5ldyBEaWZmKCk7XG5saW5lRGlmZi50b2tlbml6ZSA9IGZ1bmN0aW9uKHZhbHVlKSB7XG4gIGxldCByZXRMaW5lcyA9IFtdLFxuICAgICAgbGluZXNBbmROZXdsaW5lcyA9IHZhbHVlLnNwbGl0KC8oXFxufFxcclxcbikvKTtcblxuICAvLyBJZ25vcmUgdGhlIGZpbmFsIGVtcHR5IHRva2VuIHRoYXQgb2NjdXJzIGlmIHRoZSBzdHJpbmcgZW5kcyB3aXRoIGEgbmV3IGxpbmVcbiAgaWYgKCFsaW5lc0FuZE5ld2xpbmVzW2xpbmVzQW5kTmV3bGluZXMubGVuZ3RoIC0gMV0pIHtcbiAgICBsaW5lc0FuZE5ld2xpbmVzLnBvcCgpO1xuICB9XG5cbiAgLy8gTWVyZ2UgdGhlIGNvbnRlbnQgYW5kIGxpbmUgc2VwYXJhdG9ycyBpbnRvIHNpbmdsZSB0b2tlbnNcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaW5lc0FuZE5ld2xpbmVzLmxlbmd0aDsgaSsrKSB7XG4gICAgbGV0IGxpbmUgPSBsaW5lc0FuZE5ld2xpbmVzW2ldO1xuXG4gICAgaWYgKGkgJSAyICYmICF0aGlzLm9wdGlvbnMubmV3bGluZUlzVG9rZW4pIHtcbiAgICAgIHJldExpbmVzW3JldExpbmVzLmxlbmd0aCAtIDFdICs9IGxpbmU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLm9wdGlvbnMuaWdub3JlV2hpdGVzcGFjZSkge1xuICAgICAgICBsaW5lID0gbGluZS50cmltKCk7XG4gICAgICB9XG4gICAgICByZXRMaW5lcy5wdXNoKGxpbmUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiByZXRMaW5lcztcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBkaWZmTGluZXMob2xkU3RyLCBuZXdTdHIsIGNhbGxiYWNrKSB7IHJldHVybiBsaW5lRGlmZi5kaWZmKG9sZFN0ciwgbmV3U3RyLCBjYWxsYmFjayk7IH1cbmV4cG9ydCBmdW5jdGlvbiBkaWZmVHJpbW1lZExpbmVzKG9sZFN0ciwgbmV3U3RyLCBjYWxsYmFjaykge1xuICBsZXQgb3B0aW9ucyA9IGdlbmVyYXRlT3B0aW9ucyhjYWxsYmFjaywge2lnbm9yZVdoaXRlc3BhY2U6IHRydWV9KTtcbiAgcmV0dXJuIGxpbmVEaWZmLmRpZmYob2xkU3RyLCBuZXdTdHIsIG9wdGlvbnMpO1xufVxuIl19
@@ -1,41 +0,0 @@
1
- /*istanbul ignore start*/
2
- "use strict";
3
-
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.diffSentences = diffSentences;
8
- exports.sentenceDiff = void 0;
9
-
10
- /*istanbul ignore end*/
11
- var
12
- /*istanbul ignore start*/
13
- _base = _interopRequireDefault(require("./base"))
14
- /*istanbul ignore end*/
15
- ;
16
-
17
- /*istanbul ignore start*/ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
18
-
19
- /*istanbul ignore end*/
20
- var sentenceDiff = new
21
- /*istanbul ignore start*/
22
- _base
23
- /*istanbul ignore end*/
24
- [
25
- /*istanbul ignore start*/
26
- "default"
27
- /*istanbul ignore end*/
28
- ]();
29
-
30
- /*istanbul ignore start*/
31
- exports.sentenceDiff = sentenceDiff;
32
-
33
- /*istanbul ignore end*/
34
- sentenceDiff.tokenize = function (value) {
35
- return value.split(/(\S.+?[.!?])(?=\s+|$)/);
36
- };
37
-
38
- function diffSentences(oldStr, newStr, callback) {
39
- return sentenceDiff.diff(oldStr, newStr, callback);
40
- }
41
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWZmL3NlbnRlbmNlLmpzIl0sIm5hbWVzIjpbInNlbnRlbmNlRGlmZiIsIkRpZmYiLCJ0b2tlbml6ZSIsInZhbHVlIiwic3BsaXQiLCJkaWZmU2VudGVuY2VzIiwib2xkU3RyIiwibmV3U3RyIiwiY2FsbGJhY2siLCJkaWZmIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7Ozs7QUFHTyxJQUFNQSxZQUFZLEdBQUc7QUFBSUM7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUEsQ0FBSixFQUFyQjs7Ozs7O0FBQ1BELFlBQVksQ0FBQ0UsUUFBYixHQUF3QixVQUFTQyxLQUFULEVBQWdCO0FBQ3RDLFNBQU9BLEtBQUssQ0FBQ0MsS0FBTixDQUFZLHVCQUFaLENBQVA7QUFDRCxDQUZEOztBQUlPLFNBQVNDLGFBQVQsQ0FBdUJDLE1BQXZCLEVBQStCQyxNQUEvQixFQUF1Q0MsUUFBdkMsRUFBaUQ7QUFBRSxTQUFPUixZQUFZLENBQUNTLElBQWIsQ0FBa0JILE1BQWxCLEVBQTBCQyxNQUExQixFQUFrQ0MsUUFBbEMsQ0FBUDtBQUFxRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBEaWZmIGZyb20gJy4vYmFzZSc7XG5cblxuZXhwb3J0IGNvbnN0IHNlbnRlbmNlRGlmZiA9IG5ldyBEaWZmKCk7XG5zZW50ZW5jZURpZmYudG9rZW5pemUgPSBmdW5jdGlvbih2YWx1ZSkge1xuICByZXR1cm4gdmFsdWUuc3BsaXQoLyhcXFMuKz9bLiE/XSkoPz1cXHMrfCQpLyk7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gZGlmZlNlbnRlbmNlcyhvbGRTdHIsIG5ld1N0ciwgY2FsbGJhY2spIHsgcmV0dXJuIHNlbnRlbmNlRGlmZi5kaWZmKG9sZFN0ciwgbmV3U3RyLCBjYWxsYmFjayk7IH1cbiJdfQ==
@@ -1,108 +0,0 @@
1
- /*istanbul ignore start*/
2
- "use strict";
3
-
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.diffWords = diffWords;
8
- exports.diffWordsWithSpace = diffWordsWithSpace;
9
- exports.wordDiff = void 0;
10
-
11
- /*istanbul ignore end*/
12
- var
13
- /*istanbul ignore start*/
14
- _base = _interopRequireDefault(require("./base"))
15
- /*istanbul ignore end*/
16
- ;
17
-
18
- var
19
- /*istanbul ignore start*/
20
- _params = require("../util/params")
21
- /*istanbul ignore end*/
22
- ;
23
-
24
- /*istanbul ignore start*/ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
25
-
26
- /*istanbul ignore end*/
27
- // Based on https://en.wikipedia.org/wiki/Latin_script_in_Unicode
28
- //
29
- // Ranges and exceptions:
30
- // Latin-1 Supplement, 0080–00FF
31
- // - U+00D7 × Multiplication sign
32
- // - U+00F7 ÷ Division sign
33
- // Latin Extended-A, 0100–017F
34
- // Latin Extended-B, 0180–024F
35
- // IPA Extensions, 0250–02AF
36
- // Spacing Modifier Letters, 02B0–02FF
37
- // - U+02C7 ˇ &#711; Caron
38
- // - U+02D8 ˘ &#728; Breve
39
- // - U+02D9 ˙ &#729; Dot Above
40
- // - U+02DA ˚ &#730; Ring Above
41
- // - U+02DB ˛ &#731; Ogonek
42
- // - U+02DC ˜ &#732; Small Tilde
43
- // - U+02DD ˝ &#733; Double Acute Accent
44
- // Latin Extended Additional, 1E00–1EFF
45
- var extendedWordChars = /^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/;
46
- var reWhitespace = /\S/;
47
- var wordDiff = new
48
- /*istanbul ignore start*/
49
- _base
50
- /*istanbul ignore end*/
51
- [
52
- /*istanbul ignore start*/
53
- "default"
54
- /*istanbul ignore end*/
55
- ]();
56
-
57
- /*istanbul ignore start*/
58
- exports.wordDiff = wordDiff;
59
-
60
- /*istanbul ignore end*/
61
- wordDiff.equals = function (left, right) {
62
- if (this.options.ignoreCase) {
63
- left = left.toLowerCase();
64
- right = right.toLowerCase();
65
- }
66
-
67
- return left === right || this.options.ignoreWhitespace && !reWhitespace.test(left) && !reWhitespace.test(right);
68
- };
69
-
70
- wordDiff.tokenize = function (value) {
71
- // All whitespace symbols except newline group into one token, each newline - in separate token
72
- var tokens = value.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/); // Join the boundary splits that we do not consider to be boundaries. This is primarily the extended Latin character set.
73
-
74
- for (var i = 0; i < tokens.length - 1; i++) {
75
- // If we have an empty string in the next field and we have only word chars before and after, merge
76
- if (!tokens[i + 1] && tokens[i + 2] && extendedWordChars.test(tokens[i]) && extendedWordChars.test(tokens[i + 2])) {
77
- tokens[i] += tokens[i + 2];
78
- tokens.splice(i + 1, 2);
79
- i--;
80
- }
81
- }
82
-
83
- return tokens;
84
- };
85
-
86
- function diffWords(oldStr, newStr, options) {
87
- options =
88
- /*istanbul ignore start*/
89
- (0,
90
- /*istanbul ignore end*/
91
-
92
- /*istanbul ignore start*/
93
- _params
94
- /*istanbul ignore end*/
95
- .
96
- /*istanbul ignore start*/
97
- generateOptions)
98
- /*istanbul ignore end*/
99
- (options, {
100
- ignoreWhitespace: true
101
- });
102
- return wordDiff.diff(oldStr, newStr, options);
103
- }
104
-
105
- function diffWordsWithSpace(oldStr, newStr, options) {
106
- return wordDiff.diff(oldStr, newStr, options);
107
- }
108
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWZmL3dvcmQuanMiXSwibmFtZXMiOlsiZXh0ZW5kZWRXb3JkQ2hhcnMiLCJyZVdoaXRlc3BhY2UiLCJ3b3JkRGlmZiIsIkRpZmYiLCJlcXVhbHMiLCJsZWZ0IiwicmlnaHQiLCJvcHRpb25zIiwiaWdub3JlQ2FzZSIsInRvTG93ZXJDYXNlIiwiaWdub3JlV2hpdGVzcGFjZSIsInRlc3QiLCJ0b2tlbml6ZSIsInZhbHVlIiwidG9rZW5zIiwic3BsaXQiLCJpIiwibGVuZ3RoIiwic3BsaWNlIiwiZGlmZldvcmRzIiwib2xkU3RyIiwibmV3U3RyIiwiZ2VuZXJhdGVPcHRpb25zIiwiZGlmZiIsImRpZmZXb3Jkc1dpdGhTcGFjZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBTUEsaUJBQWlCLEdBQUcsK0RBQTFCO0FBRUEsSUFBTUMsWUFBWSxHQUFHLElBQXJCO0FBRU8sSUFBTUMsUUFBUSxHQUFHO0FBQUlDO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBLENBQUosRUFBakI7Ozs7OztBQUNQRCxRQUFRLENBQUNFLE1BQVQsR0FBa0IsVUFBU0MsSUFBVCxFQUFlQyxLQUFmLEVBQXNCO0FBQ3RDLE1BQUksS0FBS0MsT0FBTCxDQUFhQyxVQUFqQixFQUE2QjtBQUMzQkgsSUFBQUEsSUFBSSxHQUFHQSxJQUFJLENBQUNJLFdBQUwsRUFBUDtBQUNBSCxJQUFBQSxLQUFLLEdBQUdBLEtBQUssQ0FBQ0csV0FBTixFQUFSO0FBQ0Q7O0FBQ0QsU0FBT0osSUFBSSxLQUFLQyxLQUFULElBQW1CLEtBQUtDLE9BQUwsQ0FBYUcsZ0JBQWIsSUFBaUMsQ0FBQ1QsWUFBWSxDQUFDVSxJQUFiLENBQWtCTixJQUFsQixDQUFsQyxJQUE2RCxDQUFDSixZQUFZLENBQUNVLElBQWIsQ0FBa0JMLEtBQWxCLENBQXhGO0FBQ0QsQ0FORDs7QUFPQUosUUFBUSxDQUFDVSxRQUFULEdBQW9CLFVBQVNDLEtBQVQsRUFBZ0I7QUFDbEM7QUFDQSxNQUFJQyxNQUFNLEdBQUdELEtBQUssQ0FBQ0UsS0FBTixDQUFZLGlDQUFaLENBQWIsQ0FGa0MsQ0FJbEM7O0FBQ0EsT0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHRixNQUFNLENBQUNHLE1BQVAsR0FBZ0IsQ0FBcEMsRUFBdUNELENBQUMsRUFBeEMsRUFBNEM7QUFDMUM7QUFDQSxRQUFJLENBQUNGLE1BQU0sQ0FBQ0UsQ0FBQyxHQUFHLENBQUwsQ0FBUCxJQUFrQkYsTUFBTSxDQUFDRSxDQUFDLEdBQUcsQ0FBTCxDQUF4QixJQUNLaEIsaUJBQWlCLENBQUNXLElBQWxCLENBQXVCRyxNQUFNLENBQUNFLENBQUQsQ0FBN0IsQ0FETCxJQUVLaEIsaUJBQWlCLENBQUNXLElBQWxCLENBQXVCRyxNQUFNLENBQUNFLENBQUMsR0FBRyxDQUFMLENBQTdCLENBRlQsRUFFZ0Q7QUFDOUNGLE1BQUFBLE1BQU0sQ0FBQ0UsQ0FBRCxDQUFOLElBQWFGLE1BQU0sQ0FBQ0UsQ0FBQyxHQUFHLENBQUwsQ0FBbkI7QUFDQUYsTUFBQUEsTUFBTSxDQUFDSSxNQUFQLENBQWNGLENBQUMsR0FBRyxDQUFsQixFQUFxQixDQUFyQjtBQUNBQSxNQUFBQSxDQUFDO0FBQ0Y7QUFDRjs7QUFFRCxTQUFPRixNQUFQO0FBQ0QsQ0FqQkQ7O0FBbUJPLFNBQVNLLFNBQVQsQ0FBbUJDLE1BQW5CLEVBQTJCQyxNQUEzQixFQUFtQ2QsT0FBbkMsRUFBNEM7QUFDakRBLEVBQUFBLE9BQU87QUFBRztBQUFBO0FBQUE7O0FBQUFlO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUE7QUFBQSxHQUFnQmYsT0FBaEIsRUFBeUI7QUFBQ0csSUFBQUEsZ0JBQWdCLEVBQUU7QUFBbkIsR0FBekIsQ0FBVjtBQUNBLFNBQU9SLFFBQVEsQ0FBQ3FCLElBQVQsQ0FBY0gsTUFBZCxFQUFzQkMsTUFBdEIsRUFBOEJkLE9BQTlCLENBQVA7QUFDRDs7QUFFTSxTQUFTaUIsa0JBQVQsQ0FBNEJKLE1BQTVCLEVBQW9DQyxNQUFwQyxFQUE0Q2QsT0FBNUMsRUFBcUQ7QUFDMUQsU0FBT0wsUUFBUSxDQUFDcUIsSUFBVCxDQUFjSCxNQUFkLEVBQXNCQyxNQUF0QixFQUE4QmQsT0FBOUIsQ0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IERpZmYgZnJvbSAnLi9iYXNlJztcbmltcG9ydCB7Z2VuZXJhdGVPcHRpb25zfSBmcm9tICcuLi91dGlsL3BhcmFtcyc7XG5cbi8vIEJhc2VkIG9uIGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0xhdGluX3NjcmlwdF9pbl9Vbmljb2RlXG4vL1xuLy8gUmFuZ2VzIGFuZCBleGNlcHRpb25zOlxuLy8gTGF0aW4tMSBTdXBwbGVtZW50LCAwMDgw4oCTMDBGRlxuLy8gIC0gVSswMEQ3ICDDlyBNdWx0aXBsaWNhdGlvbiBzaWduXG4vLyAgLSBVKzAwRjcgIMO3IERpdmlzaW9uIHNpZ25cbi8vIExhdGluIEV4dGVuZGVkLUEsIDAxMDDigJMwMTdGXG4vLyBMYXRpbiBFeHRlbmRlZC1CLCAwMTgw4oCTMDI0RlxuLy8gSVBBIEV4dGVuc2lvbnMsIDAyNTDigJMwMkFGXG4vLyBTcGFjaW5nIE1vZGlmaWVyIExldHRlcnMsIDAyQjDigJMwMkZGXG4vLyAgLSBVKzAyQzcgIMuHICYjNzExOyAgQ2Fyb25cbi8vICAtIFUrMDJEOCAgy5ggJiM3Mjg7ICBCcmV2ZVxuLy8gIC0gVSswMkQ5ICDLmSAmIzcyOTsgIERvdCBBYm92ZVxuLy8gIC0gVSswMkRBICDLmiAmIzczMDsgIFJpbmcgQWJvdmVcbi8vICAtIFUrMDJEQiAgy5sgJiM3MzE7ICBPZ29uZWtcbi8vICAtIFUrMDJEQyAgy5wgJiM3MzI7ICBTbWFsbCBUaWxkZVxuLy8gIC0gVSswMkREICDLnSAmIzczMzsgIERvdWJsZSBBY3V0ZSBBY2NlbnRcbi8vIExhdGluIEV4dGVuZGVkIEFkZGl0aW9uYWwsIDFFMDDigJMxRUZGXG5jb25zdCBleHRlbmRlZFdvcmRDaGFycyA9IC9eW2EtekEtWlxcdXtDMH0tXFx1e0ZGfVxcdXtEOH0tXFx1e0Y2fVxcdXtGOH0tXFx1ezJDNn1cXHV7MkM4fS1cXHV7MkQ3fVxcdXsyREV9LVxcdXsyRkZ9XFx1ezFFMDB9LVxcdXsxRUZGfV0rJC91O1xuXG5jb25zdCByZVdoaXRlc3BhY2UgPSAvXFxTLztcblxuZXhwb3J0IGNvbnN0IHdvcmREaWZmID0gbmV3IERpZmYoKTtcbndvcmREaWZmLmVxdWFscyA9IGZ1bmN0aW9uKGxlZnQsIHJpZ2h0KSB7XG4gIGlmICh0aGlzLm9wdGlvbnMuaWdub3JlQ2FzZSkge1xuICAgIGxlZnQgPSBsZWZ0LnRvTG93ZXJDYXNlKCk7XG4gICAgcmlnaHQgPSByaWdodC50b0xvd2VyQ2FzZSgpO1xuICB9XG4gIHJldHVybiBsZWZ0ID09PSByaWdodCB8fCAodGhpcy5vcHRpb25zLmlnbm9yZVdoaXRlc3BhY2UgJiYgIXJlV2hpdGVzcGFjZS50ZXN0KGxlZnQpICYmICFyZVdoaXRlc3BhY2UudGVzdChyaWdodCkpO1xufTtcbndvcmREaWZmLnRva2VuaXplID0gZnVuY3Rpb24odmFsdWUpIHtcbiAgLy8gQWxsIHdoaXRlc3BhY2Ugc3ltYm9scyBleGNlcHQgbmV3bGluZSBncm91cCBpbnRvIG9uZSB0b2tlbiwgZWFjaCBuZXdsaW5lIC0gaW4gc2VwYXJhdGUgdG9rZW5cbiAgbGV0IHRva2VucyA9IHZhbHVlLnNwbGl0KC8oW15cXFNcXHJcXG5dK3xbKClbXFxde30nXCJcXHJcXG5dfFxcYikvKTtcblxuICAvLyBKb2luIHRoZSBib3VuZGFyeSBzcGxpdHMgdGhhdCB3ZSBkbyBub3QgY29uc2lkZXIgdG8gYmUgYm91bmRhcmllcy4gVGhpcyBpcyBwcmltYXJpbHkgdGhlIGV4dGVuZGVkIExhdGluIGNoYXJhY3RlciBzZXQuXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgdG9rZW5zLmxlbmd0aCAtIDE7IGkrKykge1xuICAgIC8vIElmIHdlIGhhdmUgYW4gZW1wdHkgc3RyaW5nIGluIHRoZSBuZXh0IGZpZWxkIGFuZCB3ZSBoYXZlIG9ubHkgd29yZCBjaGFycyBiZWZvcmUgYW5kIGFmdGVyLCBtZXJnZVxuICAgIGlmICghdG9rZW5zW2kgKyAxXSAmJiB0b2tlbnNbaSArIDJdXG4gICAgICAgICAgJiYgZXh0ZW5kZWRXb3JkQ2hhcnMudGVzdCh0b2tlbnNbaV0pXG4gICAgICAgICAgJiYgZXh0ZW5kZWRXb3JkQ2hhcnMudGVzdCh0b2tlbnNbaSArIDJdKSkge1xuICAgICAgdG9rZW5zW2ldICs9IHRva2Vuc1tpICsgMl07XG4gICAgICB0b2tlbnMuc3BsaWNlKGkgKyAxLCAyKTtcbiAgICAgIGktLTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdG9rZW5zO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGRpZmZXb3JkcyhvbGRTdHIsIG5ld1N0ciwgb3B0aW9ucykge1xuICBvcHRpb25zID0gZ2VuZXJhdGVPcHRpb25zKG9wdGlvbnMsIHtpZ25vcmVXaGl0ZXNwYWNlOiB0cnVlfSk7XG4gIHJldHVybiB3b3JkRGlmZi5kaWZmKG9sZFN0ciwgbmV3U3RyLCBvcHRpb25zKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRpZmZXb3Jkc1dpdGhTcGFjZShvbGRTdHIsIG5ld1N0ciwgb3B0aW9ucykge1xuICByZXR1cm4gd29yZERpZmYuZGlmZihvbGRTdHIsIG5ld1N0ciwgb3B0aW9ucyk7XG59XG4iXX0=