|
238 | 238 | return API.greedyMerge(left, middle, right);
|
239 | 239 | }
|
240 | 240 |
|
241 |
| - function diff(left, middle, right) { |
242 |
| - return API.diff(left, middle, right); |
| 241 | + function diff(left, middle, right, patience) { |
| 242 | + return API.resolve(left, middle, right, false, false, patience); |
243 | 243 | }
|
244 | 244 |
|
245 |
| - function resolveNonConflicting(left, middle, right) { |
246 |
| - return API.resolveNonConflicting(left, middle, right); |
| 245 | + function resolveNonConflicting(left, middle, right, greedy, patience) { |
| 246 | + return API.resolve(left, middle, right, true, greedy, patience, false); |
247 | 247 | }
|
248 | 248 |
|
249 |
| - function applyResolvableConflictedChanges(left, middle, right) { |
250 |
| - return API.applyResolvableConflictedChanges(left, middle, right); |
| 249 | + function applyResolvableConflictedChanges(left, middle, right, greedy, patience) { |
| 250 | + return API.resolve(left, middle, right, true, greedy, patience, true); |
251 | 251 | }
|
252 | 252 |
|
253 | 253 | function getIjText() {
|
|
265 | 265 | }
|
266 | 266 |
|
267 | 267 | function clearResults() {
|
268 |
| - setResults(["", "", ""]) |
| 268 | + setResults(["", "", ""]); |
269 | 269 | }
|
270 | 270 |
|
271 |
| - function doDiff() { |
| 271 | + function doDiff(patience = false) { |
272 | 272 | const [left, middle, right] = getIjText();
|
273 | 273 |
|
274 | 274 | clearResults()
|
275 |
| - const results = diff(left, middle, right); |
| 275 | + const results = diff(left, middle, right, patience); |
276 | 276 | setResults(results);
|
277 | 277 | API.decorate();
|
278 | 278 | }
|
279 | 279 |
|
280 |
| - function doResolveNonConflicting() { |
| 280 | + function doResolveNonConflicting(greedy = false, patience = false) { |
281 | 281 | const [left, middle, right] = getIjText();
|
282 | 282 |
|
283 | 283 | clearResults()
|
284 |
| - const results = resolveNonConflicting(left, middle, right); |
| 284 | + const results = resolveNonConflicting(left, middle, right, greedy, patience); |
285 | 285 | setResults(results);
|
286 | 286 | API.decorate();
|
287 | 287 | }
|
288 | 288 |
|
289 |
| - function doApplyResolvableConflictedChanges() { |
| 289 | + function doApplyResolvableConflictedChanges(greedy = false, patience = false) { |
290 | 290 | const [left, middle, right] = getIjText();
|
291 | 291 |
|
292 | 292 | clearResults()
|
293 |
| - const results = applyResolvableConflictedChanges(left, middle, right); |
| 293 | + const results = applyResolvableConflictedChanges(left, middle, right, greedy, patience); |
294 | 294 | setResults(results);
|
295 | 295 | API.decorate();
|
296 | 296 | }
|
@@ -352,8 +352,15 @@ <h2>IJ Merge</h2>
|
352 | 352 |
|
353 | 353 | <div class="action-buttons">
|
354 | 354 | <button onclick="doDiff()">Render diff</button>
|
| 355 | + <button onclick="doDiff(true)">Render diff (patience)</button> |
355 | 356 | <button onclick="doResolveNonConflicting()">Resolve non-conflicting changes</button>
|
356 |
| - <button onclick="doApplyResolvableConflictedChanges()">Apply resolvable conflicted changes</button> |
| 357 | + <button onclick="doResolveNonConflicting(true)">Resolve non-conflicting changes (greedy)</button> |
| 358 | + <button onclick="doResolveNonConflicting(false, true)">Resolve non-conflicting changes (patience)</button> |
| 359 | + <button onclick="doResolveNonConflicting(true, true)">Resolve non-conflicting changes (greedy, patience)</button> |
| 360 | + <button onclick="doApplyResolvableConflictedChanges()">Apply resolvable conflicted changes ()</button> |
| 361 | + <button onclick="doApplyResolvableConflictedChanges(true)">Apply resolvable conflicted changes (greedy)</button> |
| 362 | + <button onclick="doApplyResolvableConflictedChanges(false, true)">Apply resolvable conflicted changes (patience)</button> |
| 363 | + <button onclick="doApplyResolvableConflictedChanges(true, true)">Apply resolvable conflicted changes (greedy, patience)</button> |
357 | 364 | </div>
|
358 | 365 | </body>
|
359 | 366 | </html>
|
0 commit comments