bkui-vue 2.0.1-beta.110 → 2.0.1-beta.112
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/dist/index.cjs.js +54 -54
- package/dist/index.esm.js +23106 -23099
- package/dist/index.umd.js +54 -54
- package/dist/style.css +1 -1
- package/lib/affix/index.d.ts +57 -111
- package/lib/affix/index.js +17 -17
- package/lib/alert/index.d.ts +73 -126
- package/lib/alert/index.js +20 -20
- package/lib/animate-number/index.d.ts +33 -96
- package/lib/animate-number/index.js +8 -7
- package/lib/backtop/index.d.ts +69 -117
- package/lib/backtop/index.js +11 -10
- package/lib/badge/index.d.ts +119 -152
- package/lib/badge/index.js +19 -19
- package/lib/breadcrumb/index.d.ts +67 -119
- package/lib/breadcrumb/index.js +17 -17
- package/lib/button/button.d.ts +2 -2
- package/lib/button/index.d.ts +121 -156
- package/lib/button/index.js +19 -20
- package/lib/card/index.d.ts +128 -157
- package/lib/card/index.js +20 -22
- package/lib/cascader/cascader.d.ts +5 -5
- package/lib/cascader/index.d.ts +395 -356
- package/lib/cascader/index.js +74 -805
- package/lib/checkbox/checkbox.d.ts +1 -1
- package/lib/checkbox/index.d.ts +143 -175
- package/lib/checkbox/index.js +45 -45
- package/lib/code-diff/index.d.ts +65 -82
- package/lib/code-diff/index.js +381 -438
- package/lib/collapse/index.d.ts +156 -175
- package/lib/collapse/index.js +28 -27
- package/lib/collapse-transition/index.d.ts +19 -94
- package/lib/collapse-transition/index.js +4 -3
- package/lib/color-picker/color-picker.d.ts +1 -1
- package/lib/color-picker/index.d.ts +144 -165
- package/lib/color-picker/index.js +50 -294
- package/lib/config-provider/index.d.ts +160 -227
- package/lib/config-provider/index.js +17 -17
- package/lib/container/container.d.ts +1 -1
- package/lib/container/index.d.ts +74 -85
- package/lib/container/index.js +28 -26
- package/lib/date-picker/base/picker-dropdown.d.ts +1 -1
- package/lib/date-picker/base/time-spinner.d.ts +3 -3
- package/lib/date-picker/date-picker.d.ts +4 -4
- package/lib/date-picker/index.d.ts +382 -352
- package/lib/date-picker/index.js +154 -150
- package/lib/date-picker/panel/date-range.d.ts +1 -1
- package/lib/date-picker/panel/date.d.ts +1 -1
- package/lib/date-picker/panel/time-range.d.ts +2 -2
- package/lib/date-picker/panel/time.d.ts +2 -2
- package/lib/date-picker/time-picker.d.ts +4 -4
- package/lib/dialog/index.d.ts +299 -269
- package/lib/dialog/index.js +227 -228
- package/lib/directives/index.d.ts +1 -0
- package/lib/directives/index.js +29 -29
- package/lib/divider/index.d.ts +57 -111
- package/lib/divider/index.js +3 -2
- package/lib/dropdown/dropdown.d.ts +1 -1
- package/lib/dropdown/index.d.ts +94 -136
- package/lib/dropdown/index.js +24 -22
- package/lib/exception/index.d.ts +41 -102
- package/lib/exception/index.js +21 -21
- package/lib/fixed-navbar/index.d.ts +59 -113
- package/lib/fixed-navbar/index.js +3 -2
- package/lib/form/form.d.ts +1 -1
- package/lib/form/index.d.ts +80 -132
- package/lib/form/index.js +21 -22
- package/lib/icon/angle-double-down-line.js +17 -17
- package/lib/icon/angle-double-left-line.js +17 -17
- package/lib/icon/angle-double-left.js +17 -17
- package/lib/icon/angle-double-right-line.js +17 -17
- package/lib/icon/angle-double-right.js +17 -17
- package/lib/icon/angle-double-up-line.js +17 -17
- package/lib/icon/angle-down-fill.js +17 -17
- package/lib/icon/angle-down-line.js +17 -17
- package/lib/icon/angle-down.js +17 -17
- package/lib/icon/angle-left.js +17 -17
- package/lib/icon/angle-right.js +17 -17
- package/lib/icon/angle-up-fill.js +17 -17
- package/lib/icon/angle-up.js +17 -17
- package/lib/icon/archive-fill.js +17 -17
- package/lib/icon/arrows-left.js +17 -17
- package/lib/icon/arrows-right.js +17 -17
- package/lib/icon/assistant.js +17 -17
- package/lib/icon/audio-fill.js +17 -17
- package/lib/icon/bk.js +17 -17
- package/lib/icon/circle.js +17 -17
- package/lib/icon/close-line.js +17 -17
- package/lib/icon/close.js +17 -17
- package/lib/icon/code.js +17 -17
- package/lib/icon/cog-shape.js +17 -17
- package/lib/icon/collapse-left.js +17 -17
- package/lib/icon/copy-shape.js +17 -17
- package/lib/icon/copy.js +17 -17
- package/lib/icon/data-shape.js +17 -17
- package/lib/icon/del.js +17 -17
- package/lib/icon/doc-fill.js +17 -17
- package/lib/icon/done.js +17 -17
- package/lib/icon/down-shape.js +17 -17
- package/lib/icon/down-small.js +17 -17
- package/lib/icon/edit-line.js +17 -17
- package/lib/icon/ellipsis.js +17 -17
- package/lib/icon/enlarge-line.js +17 -17
- package/lib/icon/error.js +17 -17
- package/lib/icon/excel-fill.js +17 -17
- package/lib/icon/exclamation-circle-shape.js +17 -17
- package/lib/icon/eye.js +17 -17
- package/lib/icon/filliscreen-line.js +17 -17
- package/lib/icon/fix-line.js +17 -17
- package/lib/icon/fix-shape.js +17 -17
- package/lib/icon/folder-open.js +17 -17
- package/lib/icon/folder-shape-open.js +17 -17
- package/lib/icon/folder-shape.js +17 -17
- package/lib/icon/folder.js +17 -17
- package/lib/icon/funnel.js +17 -17
- package/lib/icon/grag-fill.js +17 -17
- package/lib/icon/help-document-fill.js +17 -17
- package/lib/icon/help-fill.js +17 -17
- package/lib/icon/help.js +17 -17
- package/lib/icon/image-fill.js +17 -17
- package/lib/icon/img-error.js +17 -17
- package/lib/icon/img-placehoulder.js +17 -17
- package/lib/icon/info-line.js +17 -17
- package/lib/icon/info.js +17 -17
- package/lib/icon/left-shape.js +17 -17
- package/lib/icon/left-turn-line.js +17 -17
- package/lib/icon/loading.js +17 -17
- package/lib/icon/narrow-line.js +17 -17
- package/lib/icon/original.js +17 -17
- package/lib/icon/pdf-fill.js +17 -17
- package/lib/icon/play-shape.js +17 -17
- package/lib/icon/plus.js +17 -17
- package/lib/icon/ppt-fill.js +17 -17
- package/lib/icon/qq.js +17 -17
- package/lib/icon/right-shape.js +17 -17
- package/lib/icon/right-turn-line.js +17 -17
- package/lib/icon/search.js +17 -17
- package/lib/icon/share.js +17 -17
- package/lib/icon/spinner.js +17 -17
- package/lib/icon/success.js +17 -17
- package/lib/icon/switcher-loading.js +17 -17
- package/lib/icon/text-all.js +17 -17
- package/lib/icon/text-file.js +17 -17
- package/lib/icon/text-fill.js +17 -17
- package/lib/icon/transfer.js +17 -17
- package/lib/icon/tree-application-shape.js +17 -17
- package/lib/icon/unfull-screen.js +17 -17
- package/lib/icon/unvisible.js +17 -17
- package/lib/icon/up-shape.js +17 -17
- package/lib/icon/upload.js +17 -17
- package/lib/icon/video-fill.js +17 -17
- package/lib/icon/warn.js +17 -17
- package/lib/icon/weixin-pro.js +17 -17
- package/lib/icon/weixin.js +17 -17
- package/lib/image/index.d.ts +113 -149
- package/lib/image/index.js +27 -26
- package/lib/index.js +1 -1
- package/lib/info-box/index.js +232 -233
- package/lib/input/index.d.ts +326 -293
- package/lib/input/index.js +46 -48
- package/lib/link/index.d.ts +73 -122
- package/lib/link/index.js +2 -2
- package/lib/loading/index.d.ts +130 -156
- package/lib/loading/index.js +32 -33
- package/lib/loading/loading.d.ts +1 -1
- package/lib/menu/index.d.ts +55 -116
- package/lib/menu/index.js +26 -25
- package/lib/message/index.js +24 -25
- package/lib/message/messageConstructor.d.ts +5 -5
- package/lib/modal/index.d.ts +171 -185
- package/lib/modal/index.js +19 -19
- package/lib/navigation/index.d.ts +152 -188
- package/lib/navigation/index.js +9 -7
- package/lib/notify/index.js +20 -21
- package/lib/overflow-title/index.d.ts +343 -256
- package/lib/overflow-title/index.js +11 -10
- package/lib/pagination/index.d.ts +185 -199
- package/lib/pagination/index.js +49 -56
- package/lib/pagination/pagination.d.ts +1 -1
- package/lib/plugin-popover/index.d.ts +1 -1
- package/lib/plugin-popover/index.js +4 -3898
- package/lib/pop-confirm/index.d.ts +119 -157
- package/lib/pop-confirm/index.js +5 -4
- package/lib/pop-confirm/pop-confirm.d.ts +5 -5
- package/lib/pop-confirm/props.d.ts +1 -1
- package/lib/popover/content.d.ts +1 -1
- package/lib/popover/index.d.ts +421 -359
- package/lib/popover/index.js +241 -264
- package/lib/popover2/index.d.ts +8 -83
- package/lib/popover2/index.js +2 -2
- package/lib/process/index.d.ts +93 -137
- package/lib/process/index.js +226 -226
- package/lib/progress/index.d.ts +178 -187
- package/lib/progress/index.js +22 -21
- package/lib/progress/progress.d.ts +2 -2
- package/lib/radio/index.d.ts +91 -140
- package/lib/radio/index.js +46 -48
- package/lib/rate/index.d.ts +55 -112
- package/lib/rate/index.js +19 -20
- package/lib/resize-layout/index.d.ts +168 -192
- package/lib/resize-layout/index.js +20 -21
- package/lib/resize-layout/resize-layout.d.ts +2 -2
- package/lib/scrollbar/index.js +38 -38
- package/lib/search-select/index.d.ts +678 -895
- package/lib/search-select/index.js +274 -274
- package/lib/search-select/input.d.ts +2 -2
- package/lib/search-select/search-select.d.ts +133 -188
- package/lib/search-select/selected.d.ts +133 -188
- package/lib/select/index.d.ts +1380 -1221
- package/lib/select/index.js +336 -334
- package/lib/select/select.d.ts +134 -171
- package/lib/select/selectTagInput.d.ts +2 -2
- package/lib/shared/index.js +54 -56
- package/lib/sideslider/index.d.ts +197 -201
- package/lib/sideslider/index.js +227 -228
- package/lib/slider/index.d.ts +214 -210
- package/lib/slider/index.js +226 -225
- package/lib/steps/index.d.ts +110 -149
- package/lib/steps/index.js +230 -231
- package/lib/swiper/index.d.ts +81 -127
- package/lib/swiper/index.js +18 -18
- package/lib/switcher/index.d.ts +152 -174
- package/lib/switcher/index.js +20 -22
- package/lib/tab/index.d.ts +151 -183
- package/lib/tab/index.js +20 -19
- package/lib/table/components/table-column.d.ts +1 -1
- package/lib/table/hooks/use-columns.d.ts +1 -1
- package/lib/table/hooks/use-layout.d.ts +2 -2
- package/lib/table/hooks/use-rows.d.ts +1 -1
- package/lib/table/index.d.ts +459 -364
- package/lib/table/index.js +336 -348
- package/lib/table/table.d.ts +3 -3
- package/lib/table-column/index.d.ts +104 -150
- package/lib/table-column/index.js +7 -731
- package/lib/tag/index.d.ts +95 -142
- package/lib/tag/index.js +19 -19
- package/lib/tag-input/index.d.ts +750 -533
- package/lib/tag-input/index.js +151 -151
- package/lib/tag-input/tag-input.d.ts +9 -9
- package/lib/tag-input/tag-props.d.ts +1 -1
- package/lib/tag-input/tag-render.d.ts +2 -2
- package/lib/time-picker/index.d.ts +439 -386
- package/lib/timeline/index.d.ts +64 -131
- package/lib/timeline/index.js +6 -6
- package/lib/transfer/index.d.ts +192 -207
- package/lib/transfer/transfer.d.ts +1 -1
- package/lib/tree/index.d.ts +350 -308
- package/lib/tree/index.js +71 -74
- package/lib/tree/tree.d.ts +1 -1
- package/lib/tree/use-tree-init.d.ts +1 -1
- package/lib/upload/index.d.ts +311 -273
- package/lib/upload/index.js +261 -264
- package/lib/upload/upload.d.ts +2 -2
- package/lib/virtual-render/index.d.ts +333 -241
- package/lib/virtual-render/index.js +29 -29
- package/lib/virtual-render/virtual-render.d.ts +1 -1
- package/package.json +1 -1
package/lib/code-diff/index.js
CHANGED
@@ -18,7 +18,7 @@ import * as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_config_provider_fe8577a3__ fr
|
|
18
18
|
|
19
19
|
var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
|
20
20
|
// Module
|
21
|
-
___CSS_LOADER_EXPORT___.push([module.id, `.d2h-wrapper{text-align:left}.d2h-file-header{background-color:#f7f7f7;border-bottom:1px solid #d8d8d8;display:-webkit-box;display:-ms-flexbox;display:flex;font-family:Source Sans Pro,Helvetica Neue,Helvetica,Arial,sans-serif;height:35px;padding:5px 10px}.d2h-file-header.d2h-sticky-header{position:sticky;top:0;z-index:1}.d2h-file-stats{display:-webkit-box;display:-ms-flexbox;display:flex;font-size:14px;margin-left:auto}.d2h-lines-added{border:1px solid #b4e2b4;border-radius:5px 0 0 5px;color:#399839;padding:2px;text-align:right;vertical-align:middle}.d2h-lines-deleted{border:1px solid #e9aeae;border-radius:0 5px 5px 0;color:#c33;margin-left:1px;padding:2px;text-align:left;vertical-align:middle}.d2h-file-name-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:15px;width:100%}.d2h-file-name{overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap}.d2h-file-wrapper{border:1px solid #ddd;border-radius:3px;margin-bottom:1em}.d2h-file-collapse{-webkit-box-pack:end;-ms-flex-pack:end;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px solid #ddd;border-radius:3px;cursor:pointer;display:none;font-size:12px;justify-content:flex-end;padding:4px 8px}.d2h-file-collapse.d2h-selected{background-color:#c8e1ff}.d2h-file-collapse-input{margin:0 4px 0 0}.d2h-diff-table{border-collapse:collapse;font-family:Menlo,Consolas,monospace;font-size:13px;width:100%}.d2h-files-diff{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%}.d2h-file-diff{overflow-y:hidden}.d2h-file-diff.d2h-d-none,.d2h-files-diff.d2h-d-none{display:none}.d2h-file-side-diff{display:inline-block;overflow-x:scroll;overflow-y:hidden;width:50%}.d2h-code-line{padding:0 8em;width:calc(100% - 16em)}.d2h-code-line,.d2h-code-side-line{display:inline-block;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.d2h-code-side-line{padding:0 4.5em;width:calc(100% - 9em)}.d2h-code-line-ctn{word-wrap:normal;background:none;display:inline-block;padding:0;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;vertical-align:middle;white-space:pre;width:100%}.d2h-code-line del,.d2h-code-side-line del{background-color:#ffb6ba;border-radius:.2em;display:inline-block;margin-top:-1px;text-decoration:none}.d2h-code-line ins,.d2h-code-side-line ins{background-color:#97f295;border-radius:.2em;display:inline-block;margin-top:-1px;text-align:left;text-decoration:none}.d2h-code-line-prefix{word-wrap:normal;background:none;display:inline;padding:0;white-space:pre}.line-num1{float:left}.line-num1,.line-num2{-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;padding:0 .5em;text-overflow:ellipsis;width:3.5em}.line-num2{float:right}.d2h-code-linenumber{background-color:#fff;border:solid #eee;border-width:0 1px;-webkit-box-sizing:border-box;box-sizing:border-box;color:rgba(0,0,0,.3);cursor:pointer;display:inline-block;position:absolute;text-align:right;width:7.5em}.d2h-code-linenumber:after{content:"\\200b"}.d2h-code-side-linenumber{background-color:#fff;border:solid #eee;border-width:0 1px;-webkit-box-sizing:border-box;box-sizing:border-box;color:rgba(0,0,0,.3);cursor:pointer;display:inline-block;overflow:hidden;padding:0 .5em;position:absolute;text-align:right;text-overflow:ellipsis;width:4em}.d2h-code-side-linenumber:after{content:"\\200b"}.d2h-code-side-emptyplaceholder,.d2h-emptyplaceholder{background-color:#f1f1f1;border-color:#e1e1e1}.d2h-code-line-prefix,.d2h-code-linenumber,.d2h-code-side-linenumber,.d2h-emptyplaceholder{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.d2h-code-linenumber,.d2h-code-side-linenumber{direction:rtl}.d2h-del{background-color:#fee8e9;border-color:#e9aeae}.d2h-ins{background-color:#dfd;border-color:#b4e2b4}.d2h-info{background-color:#f8fafd;border-color:#d5e4f2;color:rgba(0,0,0,.3)}.d2h-file-diff .d2h-del.d2h-change{background-color:#fdf2d0}.d2h-file-diff .d2h-ins.d2h-change{background-color:#ded}.d2h-file-list-wrapper{margin-bottom:10px}.d2h-file-list-wrapper a{color:#3572b0;text-decoration:none}.d2h-file-list-wrapper a:visited{color:#3572b0}.d2h-file-list-header{text-align:left}.d2h-file-list-title{font-weight:700}.d2h-file-list-line{display:-webkit-box;display:-ms-flexbox;display:flex;text-align:left}.d2h-file-list{display:block;list-style:none;margin:0;padding:0}.d2h-file-list>li{border-bottom:1px solid #ddd;margin:0;padding:5px 10px}.d2h-file-list>li:last-child{border-bottom:none}.d2h-file-switch{cursor:pointer;display:none;font-size:10px}.d2h-icon{fill:currentColor;margin-right:10px;vertical-align:middle}.d2h-deleted{color:#c33}.d2h-added{color:#399839}.d2h-changed{color:#d0b44c}.d2h-moved{color:#3572b0}.d2h-tag{background-color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:10px;margin-left:5px;padding:0 2px}.d2h-deleted-tag{border:1px solid #c33}.d2h-added-tag{border:1px solid #399839}.d2h-changed-tag{border:1px solid #d0b44c}.d2h-moved-tag{border:1px solid #3572b0}`, ""]);
|
21
|
+
___CSS_LOADER_EXPORT___.push([module.id, `:host,:root{--d2h-bg-color:#fff;--d2h-border-color:#ddd;--d2h-dim-color:rgba(0,0,0,.3);--d2h-line-border-color:#eee;--d2h-file-header-bg-color:#f7f7f7;--d2h-file-header-border-color:#d8d8d8;--d2h-empty-placeholder-bg-color:#f1f1f1;--d2h-empty-placeholder-border-color:#e1e1e1;--d2h-selected-color:#c8e1ff;--d2h-ins-bg-color:#dfd;--d2h-ins-border-color:#b4e2b4;--d2h-ins-highlight-bg-color:#97f295;--d2h-ins-label-color:#399839;--d2h-del-bg-color:#fee8e9;--d2h-del-border-color:#e9aeae;--d2h-del-highlight-bg-color:#ffb6ba;--d2h-del-label-color:#c33;--d2h-change-del-color:#fdf2d0;--d2h-change-ins-color:#ded;--d2h-info-bg-color:#f8fafd;--d2h-info-border-color:#d5e4f2;--d2h-change-label-color:#d0b44c;--d2h-moved-label-color:#3572b0;--d2h-dark-color:#e6edf3;--d2h-dark-bg-color:#0d1117;--d2h-dark-border-color:#30363d;--d2h-dark-dim-color:#6e7681;--d2h-dark-line-border-color:#21262d;--d2h-dark-file-header-bg-color:#161b22;--d2h-dark-file-header-border-color:#30363d;--d2h-dark-empty-placeholder-bg-color:hsla(215,8%,47%,.1);--d2h-dark-empty-placeholder-border-color:#30363d;--d2h-dark-selected-color:rgba(56,139,253,.1);--d2h-dark-ins-bg-color:rgba(46,160,67,.15);--d2h-dark-ins-border-color:rgba(46,160,67,.4);--d2h-dark-ins-highlight-bg-color:rgba(46,160,67,.4);--d2h-dark-ins-label-color:#3fb950;--d2h-dark-del-bg-color:rgba(248,81,73,.1);--d2h-dark-del-border-color:rgba(248,81,73,.4);--d2h-dark-del-highlight-bg-color:rgba(248,81,73,.4);--d2h-dark-del-label-color:#f85149;--d2h-dark-change-del-color:rgba(210,153,34,.2);--d2h-dark-change-ins-color:rgba(46,160,67,.25);--d2h-dark-info-bg-color:rgba(56,139,253,.1);--d2h-dark-info-border-color:rgba(56,139,253,.4);--d2h-dark-change-label-color:#d29922;--d2h-dark-moved-label-color:#3572b0}.d2h-wrapper{text-align:left}.d2h-file-header{background-color:#f7f7f7;background-color:var(--d2h-file-header-bg-color);border-bottom:1px solid #d8d8d8;border-bottom:1px solid var(--d2h-file-header-border-color);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:Source Sans Pro,Helvetica Neue,Helvetica,Arial,sans-serif;height:35px;padding:5px 10px}.d2h-file-header.d2h-sticky-header{position:sticky;top:0;z-index:1}.d2h-file-stats{display:-webkit-box;display:-ms-flexbox;display:flex;font-size:14px;margin-left:auto}.d2h-lines-added{border:1px solid #b4e2b4;border:1px solid var(--d2h-ins-border-color);border-radius:5px 0 0 5px;color:#399839;color:var(--d2h-ins-label-color);padding:2px;text-align:right;vertical-align:middle}.d2h-lines-deleted{border:1px solid #e9aeae;border:1px solid var(--d2h-del-border-color);border-radius:0 5px 5px 0;color:#c33;color:var(--d2h-del-label-color);margin-left:1px;padding:2px;text-align:left;vertical-align:middle}.d2h-file-name-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:15px;width:100%}.d2h-file-name{overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap}.d2h-file-wrapper{border:1px solid #ddd;border:1px solid var(--d2h-border-color);border-radius:3px;margin-bottom:1em}.d2h-file-collapse{-webkit-box-pack:end;-ms-flex-pack:end;cursor:pointer;display:none;font-size:12px;justify-content:flex-end;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px solid #ddd;border:1px solid var(--d2h-border-color);border-radius:3px;padding:4px 8px}.d2h-file-collapse.d2h-selected{background-color:#c8e1ff;background-color:var(--d2h-selected-color)}.d2h-file-collapse-input{margin:0 4px 0 0}.d2h-diff-table{border-collapse:collapse;font-family:Menlo,Consolas,monospace;font-size:13px;width:100%}.d2h-files-diff{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%}.d2h-file-diff{overflow-y:hidden}.d2h-file-diff.d2h-d-none,.d2h-files-diff.d2h-d-none{display:none}.d2h-file-side-diff{display:inline-block;overflow-x:scroll;overflow-y:hidden;width:50%}.d2h-code-line{padding:0 8em;width:calc(100% - 16em)}.d2h-code-line,.d2h-code-side-line{display:inline-block;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.d2h-code-side-line{padding:0 4.5em;width:calc(100% - 9em)}.d2h-code-line-ctn{background:none;display:inline-block;padding:0;word-wrap:normal;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;vertical-align:middle;white-space:pre;width:100%}.d2h-code-line del,.d2h-code-side-line del{background-color:#ffb6ba;background-color:var(--d2h-del-highlight-bg-color)}.d2h-code-line del,.d2h-code-line ins,.d2h-code-side-line del,.d2h-code-side-line ins{border-radius:.2em;display:inline-block;margin-top:-1px;-webkit-text-decoration:none;text-decoration:none}.d2h-code-line ins,.d2h-code-side-line ins{background-color:#97f295;background-color:var(--d2h-ins-highlight-bg-color);text-align:left}.d2h-code-line-prefix{background:none;display:inline;padding:0;word-wrap:normal;white-space:pre}.line-num1{float:left}.line-num1,.line-num2{-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;padding:0 .5em;text-overflow:ellipsis;width:3.5em}.line-num2{float:right}.d2h-code-linenumber{background-color:#fff;background-color:var(--d2h-bg-color);border:solid #eee;border:solid var(--d2h-line-border-color);border-width:0 1px;-webkit-box-sizing:border-box;box-sizing:border-box;color:rgba(0,0,0,.3);color:var(--d2h-dim-color);cursor:pointer;display:inline-block;position:absolute;text-align:right;width:7.5em}.d2h-code-linenumber:after{content:"\\200b"}.d2h-code-side-linenumber{background-color:#fff;background-color:var(--d2h-bg-color);border:solid #eee;border:solid var(--d2h-line-border-color);border-width:0 1px;-webkit-box-sizing:border-box;box-sizing:border-box;color:rgba(0,0,0,.3);color:var(--d2h-dim-color);cursor:pointer;display:inline-block;overflow:hidden;padding:0 .5em;position:absolute;text-align:right;text-overflow:ellipsis;width:4em}.d2h-code-side-linenumber:after{content:"\\200b"}.d2h-code-side-emptyplaceholder,.d2h-emptyplaceholder{background-color:#f1f1f1;background-color:var(--d2h-empty-placeholder-bg-color);border-color:#e1e1e1;border-color:var(--d2h-empty-placeholder-border-color)}.d2h-code-line-prefix,.d2h-code-linenumber,.d2h-code-side-linenumber,.d2h-emptyplaceholder{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.d2h-code-linenumber,.d2h-code-side-linenumber{direction:rtl}.d2h-del{background-color:#fee8e9;background-color:var(--d2h-del-bg-color);border-color:#e9aeae;border-color:var(--d2h-del-border-color)}.d2h-ins{background-color:#dfd;background-color:var(--d2h-ins-bg-color);border-color:#b4e2b4;border-color:var(--d2h-ins-border-color)}.d2h-info{background-color:#f8fafd;background-color:var(--d2h-info-bg-color);border-color:#d5e4f2;border-color:var(--d2h-info-border-color);color:rgba(0,0,0,.3);color:var(--d2h-dim-color)}.d2h-file-diff .d2h-del.d2h-change{background-color:#fdf2d0;background-color:var(--d2h-change-del-color)}.d2h-file-diff .d2h-ins.d2h-change{background-color:#ded;background-color:var(--d2h-change-ins-color)}.d2h-file-list-wrapper{margin-bottom:10px}.d2h-file-list-wrapper a{-webkit-text-decoration:none;text-decoration:none}.d2h-file-list-wrapper a,.d2h-file-list-wrapper a:visited{color:#3572b0;color:var(--d2h-moved-label-color)}.d2h-file-list-header{text-align:left}.d2h-file-list-title{font-weight:700}.d2h-file-list-line{display:-webkit-box;display:-ms-flexbox;display:flex;text-align:left}.d2h-file-list{display:block;list-style:none;margin:0;padding:0}.d2h-file-list>li{border-bottom:1px solid #ddd;border-bottom:1px solid var(--d2h-border-color);margin:0;padding:5px 10px}.d2h-file-list>li:last-child{border-bottom:none}.d2h-file-switch{cursor:pointer;display:none;font-size:10px}.d2h-icon{margin-right:10px;vertical-align:middle;fill:currentColor}.d2h-deleted{color:#c33;color:var(--d2h-del-label-color)}.d2h-added{color:#399839;color:var(--d2h-ins-label-color)}.d2h-changed{color:#d0b44c;color:var(--d2h-change-label-color)}.d2h-moved{color:#3572b0;color:var(--d2h-moved-label-color)}.d2h-tag{background-color:#fff;background-color:var(--d2h-bg-color);display:-webkit-box;display:-ms-flexbox;display:flex;font-size:10px;margin-left:5px;padding:0 2px}.d2h-deleted-tag{border:1px solid #c33;border:1px solid var(--d2h-del-label-color)}.d2h-added-tag{border:1px solid #399839;border:1px solid var(--d2h-ins-label-color)}.d2h-changed-tag{border:1px solid #d0b44c;border:1px solid var(--d2h-change-label-color)}.d2h-moved-tag{border:1px solid #3572b0;border:1px solid var(--d2h-moved-label-color)}.d2h-dark-color-scheme{background-color:#0d1117;background-color:var(--d2h-dark-bg-color);color:#e6edf3;color:var(--d2h-dark-color)}.d2h-dark-color-scheme .d2h-file-header{background-color:#161b22;background-color:var(--d2h-dark-file-header-bg-color);border-bottom:#30363d;border-bottom:var(--d2h-dark-file-header-border-color)}.d2h-dark-color-scheme .d2h-lines-added{border:1px solid rgba(46,160,67,.4);border:1px solid var(--d2h-dark-ins-border-color);color:#3fb950;color:var(--d2h-dark-ins-label-color)}.d2h-dark-color-scheme .d2h-lines-deleted{border:1px solid rgba(248,81,73,.4);border:1px solid var(--d2h-dark-del-border-color);color:#f85149;color:var(--d2h-dark-del-label-color)}.d2h-dark-color-scheme .d2h-code-line del,.d2h-dark-color-scheme .d2h-code-side-line del{background-color:rgba(248,81,73,.4);background-color:var(--d2h-dark-del-highlight-bg-color)}.d2h-dark-color-scheme .d2h-code-line ins,.d2h-dark-color-scheme .d2h-code-side-line ins{background-color:rgba(46,160,67,.4);background-color:var(--d2h-dark-ins-highlight-bg-color)}.d2h-dark-color-scheme .d2h-diff-tbody{border-color:#30363d;border-color:var(--d2h-dark-border-color)}.d2h-dark-color-scheme .d2h-code-side-linenumber{background-color:#0d1117;background-color:var(--d2h-dark-bg-color);border-color:#21262d;border-color:var(--d2h-dark-line-border-color);color:#6e7681;color:var(--d2h-dark-dim-color)}.d2h-dark-color-scheme .d2h-files-diff .d2h-code-side-emptyplaceholder,.d2h-dark-color-scheme .d2h-files-diff .d2h-emptyplaceholder{background-color:hsla(215,8%,47%,.1);background-color:var(--d2h-dark-empty-placeholder-bg-color);border-color:#30363d;border-color:var(--d2h-dark-empty-placeholder-border-color)}.d2h-dark-color-scheme .d2h-code-linenumber{background-color:#0d1117;background-color:var(--d2h-dark-bg-color);border-color:#21262d;border-color:var(--d2h-dark-line-border-color);color:#6e7681;color:var(--d2h-dark-dim-color)}.d2h-dark-color-scheme .d2h-del{background-color:rgba(248,81,73,.1);background-color:var(--d2h-dark-del-bg-color);border-color:rgba(248,81,73,.4);border-color:var(--d2h-dark-del-border-color)}.d2h-dark-color-scheme .d2h-ins{background-color:rgba(46,160,67,.15);background-color:var(--d2h-dark-ins-bg-color);border-color:rgba(46,160,67,.4);border-color:var(--d2h-dark-ins-border-color)}.d2h-dark-color-scheme .d2h-info{background-color:rgba(56,139,253,.1);background-color:var(--d2h-dark-info-bg-color);border-color:rgba(56,139,253,.4);border-color:var(--d2h-dark-info-border-color);color:#6e7681;color:var(--d2h-dark-dim-color)}.d2h-dark-color-scheme .d2h-file-diff .d2h-del.d2h-change{background-color:rgba(210,153,34,.2);background-color:var(--d2h-dark-change-del-color)}.d2h-dark-color-scheme .d2h-file-diff .d2h-ins.d2h-change{background-color:rgba(46,160,67,.25);background-color:var(--d2h-dark-change-ins-color)}.d2h-dark-color-scheme .d2h-file-wrapper{border:1px solid #30363d;border:1px solid var(--d2h-dark-border-color)}.d2h-dark-color-scheme .d2h-file-collapse{border:1px solid #0d1117;border:1px solid var(--d2h-dark-bg-color)}.d2h-dark-color-scheme .d2h-file-collapse.d2h-selected{background-color:rgba(56,139,253,.1);background-color:var(--d2h-dark-selected-color)}.d2h-dark-color-scheme .d2h-file-list-wrapper a,.d2h-dark-color-scheme .d2h-file-list-wrapper a:visited{color:#3572b0;color:var(--d2h-dark-moved-label-color)}.d2h-dark-color-scheme .d2h-file-list>li{border-bottom:1px solid #0d1117;border-bottom:1px solid var(--d2h-dark-bg-color)}.d2h-dark-color-scheme .d2h-deleted{color:#f85149;color:var(--d2h-dark-del-label-color)}.d2h-dark-color-scheme .d2h-added{color:#3fb950;color:var(--d2h-dark-ins-label-color)}.d2h-dark-color-scheme .d2h-changed{color:#d29922;color:var(--d2h-dark-change-label-color)}.d2h-dark-color-scheme .d2h-moved{color:#3572b0;color:var(--d2h-dark-moved-label-color)}.d2h-dark-color-scheme .d2h-tag{background-color:#0d1117;background-color:var(--d2h-dark-bg-color)}.d2h-dark-color-scheme .d2h-deleted-tag{border:1px solid #f85149;border:1px solid var(--d2h-dark-del-label-color)}.d2h-dark-color-scheme .d2h-added-tag{border:1px solid #3fb950;border:1px solid var(--d2h-dark-ins-label-color)}.d2h-dark-color-scheme .d2h-changed-tag{border:1px solid #d29922;border:1px solid var(--d2h-dark-change-label-color)}.d2h-dark-color-scheme .d2h-moved-tag{border:1px solid #3572b0;border:1px solid var(--d2h-dark-moved-label-color)}@media (prefers-color-scheme:dark){.d2h-auto-color-scheme{background-color:#0d1117;background-color:var(--d2h-dark-bg-color);color:#e6edf3;color:var(--d2h-dark-color)}.d2h-auto-color-scheme .d2h-file-header{background-color:#161b22;background-color:var(--d2h-dark-file-header-bg-color);border-bottom:#30363d;border-bottom:var(--d2h-dark-file-header-border-color)}.d2h-auto-color-scheme .d2h-lines-added{border:1px solid rgba(46,160,67,.4);border:1px solid var(--d2h-dark-ins-border-color);color:#3fb950;color:var(--d2h-dark-ins-label-color)}.d2h-auto-color-scheme .d2h-lines-deleted{border:1px solid rgba(248,81,73,.4);border:1px solid var(--d2h-dark-del-border-color);color:#f85149;color:var(--d2h-dark-del-label-color)}.d2h-auto-color-scheme .d2h-code-line del,.d2h-auto-color-scheme .d2h-code-side-line del{background-color:rgba(248,81,73,.4);background-color:var(--d2h-dark-del-highlight-bg-color)}.d2h-auto-color-scheme .d2h-code-line ins,.d2h-auto-color-scheme .d2h-code-side-line ins{background-color:rgba(46,160,67,.4);background-color:var(--d2h-dark-ins-highlight-bg-color)}.d2h-auto-color-scheme .d2h-diff-tbody{border-color:#30363d;border-color:var(--d2h-dark-border-color)}.d2h-auto-color-scheme .d2h-code-side-linenumber{background-color:#0d1117;background-color:var(--d2h-dark-bg-color);border-color:#21262d;border-color:var(--d2h-dark-line-border-color);color:#6e7681;color:var(--d2h-dark-dim-color)}.d2h-auto-color-scheme .d2h-files-diff .d2h-code-side-emptyplaceholder,.d2h-auto-color-scheme .d2h-files-diff .d2h-emptyplaceholder{background-color:hsla(215,8%,47%,.1);background-color:var(--d2h-dark-empty-placeholder-bg-color);border-color:#30363d;border-color:var(--d2h-dark-empty-placeholder-border-color)}.d2h-auto-color-scheme .d2h-code-linenumber{background-color:#0d1117;background-color:var(--d2h-dark-bg-color);border-color:#21262d;border-color:var(--d2h-dark-line-border-color);color:#6e7681;color:var(--d2h-dark-dim-color)}.d2h-auto-color-scheme .d2h-del{background-color:rgba(248,81,73,.1);background-color:var(--d2h-dark-del-bg-color);border-color:rgba(248,81,73,.4);border-color:var(--d2h-dark-del-border-color)}.d2h-auto-color-scheme .d2h-ins{background-color:rgba(46,160,67,.15);background-color:var(--d2h-dark-ins-bg-color);border-color:rgba(46,160,67,.4);border-color:var(--d2h-dark-ins-border-color)}.d2h-auto-color-scheme .d2h-info{background-color:rgba(56,139,253,.1);background-color:var(--d2h-dark-info-bg-color);border-color:rgba(56,139,253,.4);border-color:var(--d2h-dark-info-border-color);color:#6e7681;color:var(--d2h-dark-dim-color)}.d2h-auto-color-scheme .d2h-file-diff .d2h-del.d2h-change{background-color:rgba(210,153,34,.2);background-color:var(--d2h-dark-change-del-color)}.d2h-auto-color-scheme .d2h-file-diff .d2h-ins.d2h-change{background-color:rgba(46,160,67,.25);background-color:var(--d2h-dark-change-ins-color)}.d2h-auto-color-scheme .d2h-file-wrapper{border:1px solid #30363d;border:1px solid var(--d2h-dark-border-color)}.d2h-auto-color-scheme .d2h-file-collapse{border:1px solid #0d1117;border:1px solid var(--d2h-dark-bg-color)}.d2h-auto-color-scheme .d2h-file-collapse.d2h-selected{background-color:rgba(56,139,253,.1);background-color:var(--d2h-dark-selected-color)}.d2h-auto-color-scheme .d2h-file-list-wrapper a,.d2h-auto-color-scheme .d2h-file-list-wrapper a:visited{color:#3572b0;color:var(--d2h-dark-moved-label-color)}.d2h-auto-color-scheme .d2h-file-list>li{border-bottom:1px solid #0d1117;border-bottom:1px solid var(--d2h-dark-bg-color)}.d2h-dark-color-scheme .d2h-deleted{color:#f85149;color:var(--d2h-dark-del-label-color)}.d2h-auto-color-scheme .d2h-added{color:#3fb950;color:var(--d2h-dark-ins-label-color)}.d2h-auto-color-scheme .d2h-changed{color:#d29922;color:var(--d2h-dark-change-label-color)}.d2h-auto-color-scheme .d2h-moved{color:#3572b0;color:var(--d2h-dark-moved-label-color)}.d2h-auto-color-scheme .d2h-tag{background-color:#0d1117;background-color:var(--d2h-dark-bg-color)}.d2h-auto-color-scheme .d2h-deleted-tag{border:1px solid #f85149;border:1px solid var(--d2h-dark-del-label-color)}.d2h-auto-color-scheme .d2h-added-tag{border:1px solid #3fb950;border:1px solid var(--d2h-dark-ins-label-color)}.d2h-auto-color-scheme .d2h-changed-tag{border:1px solid #d29922;border:1px solid var(--d2h-dark-change-label-color)}.d2h-auto-color-scheme .d2h-moved-tag{border:1px solid #3572b0;border:1px solid var(--d2h-dark-moved-label-color)}}`, ""]);
|
22
22
|
// Exports
|
23
23
|
/* unused harmony default export */ var __WEBPACK_DEFAULT_EXPORT__ = ((/* unused pure expression or super */ null && (___CSS_LOADER_EXPORT___)));
|
24
24
|
|
@@ -1008,31 +1008,31 @@ function _arrayWithHoles(arr) {
|
|
1008
1008
|
if (Array.isArray(arr)) return arr;
|
1009
1009
|
}
|
1010
1010
|
;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
|
1011
|
-
function _iterableToArrayLimit(
|
1012
|
-
var
|
1013
|
-
if (null !=
|
1014
|
-
var
|
1015
|
-
|
1016
|
-
|
1017
|
-
|
1018
|
-
|
1019
|
-
|
1020
|
-
|
1011
|
+
function _iterableToArrayLimit(r, l) {
|
1012
|
+
var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
|
1013
|
+
if (null != t) {
|
1014
|
+
var e,
|
1015
|
+
n,
|
1016
|
+
i,
|
1017
|
+
u,
|
1018
|
+
a = [],
|
1019
|
+
f = !0,
|
1020
|
+
o = !1;
|
1021
1021
|
try {
|
1022
|
-
if (
|
1023
|
-
if (Object(
|
1024
|
-
|
1025
|
-
} else for (; !(
|
1026
|
-
} catch (
|
1027
|
-
|
1022
|
+
if (i = (t = t.call(r)).next, 0 === l) {
|
1023
|
+
if (Object(t) !== t) return;
|
1024
|
+
f = !1;
|
1025
|
+
} else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
|
1026
|
+
} catch (r) {
|
1027
|
+
o = !0, n = r;
|
1028
1028
|
} finally {
|
1029
1029
|
try {
|
1030
|
-
if (!
|
1030
|
+
if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
|
1031
1031
|
} finally {
|
1032
|
-
if (
|
1032
|
+
if (o) throw n;
|
1033
1033
|
}
|
1034
1034
|
}
|
1035
|
-
return
|
1035
|
+
return a;
|
1036
1036
|
}
|
1037
1037
|
}
|
1038
1038
|
;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
|
@@ -2637,22 +2637,28 @@ var LineType;
|
|
2637
2637
|
LineType["DELETE"] = "delete";
|
2638
2638
|
LineType["CONTEXT"] = "context";
|
2639
2639
|
})(LineType || (LineType = {}));
|
2640
|
-
|
2640
|
+
const OutputFormatType = {
|
2641
2641
|
LINE_BY_LINE: 'line-by-line',
|
2642
2642
|
SIDE_BY_SIDE: 'side-by-side',
|
2643
2643
|
};
|
2644
|
-
|
2644
|
+
const LineMatchingType = {
|
2645
2645
|
LINES: 'lines',
|
2646
2646
|
WORDS: 'words',
|
2647
2647
|
NONE: 'none',
|
2648
2648
|
};
|
2649
|
-
|
2649
|
+
const DiffStyleType = {
|
2650
2650
|
WORD: 'word',
|
2651
2651
|
CHAR: 'char',
|
2652
2652
|
};
|
2653
|
+
var ColorSchemeType;
|
2654
|
+
(function (ColorSchemeType) {
|
2655
|
+
ColorSchemeType["AUTO"] = "auto";
|
2656
|
+
ColorSchemeType["DARK"] = "dark";
|
2657
|
+
ColorSchemeType["LIGHT"] = "light";
|
2658
|
+
})(ColorSchemeType || (ColorSchemeType = {}));
|
2653
2659
|
//# sourceMappingURL=types.js.map
|
2654
2660
|
;// CONCATENATED MODULE: ../../node_modules/diff2html/lib-esm/utils.js
|
2655
|
-
|
2661
|
+
const specials = [
|
2656
2662
|
'-',
|
2657
2663
|
'[',
|
2658
2664
|
']',
|
@@ -2670,7 +2676,7 @@ var specials = [
|
|
2670
2676
|
'$',
|
2671
2677
|
'|',
|
2672
2678
|
];
|
2673
|
-
|
2679
|
+
const regex = RegExp('[' + specials.join('\\') + ']', 'g');
|
2674
2680
|
function escapeForRegExp(str) {
|
2675
2681
|
return str.replace(regex, '\\$&');
|
2676
2682
|
}
|
@@ -2678,8 +2684,8 @@ function unifyPath(path) {
|
|
2678
2684
|
return path ? path.replace(/\\/g, '/') : path;
|
2679
2685
|
}
|
2680
2686
|
function hashCode(text) {
|
2681
|
-
|
2682
|
-
|
2687
|
+
let i, chr, len;
|
2688
|
+
let hash = 0;
|
2683
2689
|
for (i = 0, len = text.length; i < len; i++) {
|
2684
2690
|
chr = text.charCodeAt(i);
|
2685
2691
|
hash = (hash << 5) - hash + chr;
|
@@ -2689,33 +2695,24 @@ function hashCode(text) {
|
|
2689
2695
|
}
|
2690
2696
|
//# sourceMappingURL=utils.js.map
|
2691
2697
|
;// CONCATENATED MODULE: ../../node_modules/diff2html/lib-esm/diff-parser.js
|
2692
|
-
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
|
2693
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
2694
|
-
if (ar || !(i in from)) {
|
2695
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
2696
|
-
ar[i] = from[i];
|
2697
|
-
}
|
2698
|
-
}
|
2699
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
2700
|
-
};
|
2701
2698
|
|
2702
2699
|
|
2703
2700
|
function getExtension(filename, language) {
|
2704
|
-
|
2701
|
+
const filenameParts = filename.split('.');
|
2705
2702
|
return filenameParts.length > 1 ? filenameParts[filenameParts.length - 1] : language;
|
2706
2703
|
}
|
2707
2704
|
function startsWithAny(str, prefixes) {
|
2708
|
-
return prefixes.reduce(
|
2705
|
+
return prefixes.reduce((startsWith, prefix) => startsWith || str.startsWith(prefix), false);
|
2709
2706
|
}
|
2710
|
-
|
2707
|
+
const baseDiffFilenamePrefixes = ['a/', 'b/', 'i/', 'w/', 'c/', 'o/'];
|
2711
2708
|
function getFilename(line, linePrefix, extraPrefix) {
|
2712
|
-
|
2713
|
-
|
2714
|
-
? new RegExp(
|
2709
|
+
const prefixes = extraPrefix !== undefined ? [...baseDiffFilenamePrefixes, extraPrefix] : baseDiffFilenamePrefixes;
|
2710
|
+
const FilenameRegExp = linePrefix
|
2711
|
+
? new RegExp(`^${escapeForRegExp(linePrefix)} "?(.+?)"?$`)
|
2715
2712
|
: new RegExp('^"?(.+?)"?$');
|
2716
|
-
|
2717
|
-
|
2718
|
-
|
2713
|
+
const [, filename = ''] = FilenameRegExp.exec(line) || [];
|
2714
|
+
const matchingPrefix = prefixes.find(p => filename.indexOf(p) === 0);
|
2715
|
+
const fnameWithoutPrefix = matchingPrefix ? filename.slice(matchingPrefix.length) : filename;
|
2719
2716
|
return fnameWithoutPrefix.replace(/\s+\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}(?:\.\d+)? [+-]\d{4}.*$/, '');
|
2720
2717
|
}
|
2721
2718
|
function getSrcFilename(line, srcPrefix) {
|
@@ -2724,37 +2721,36 @@ function getSrcFilename(line, srcPrefix) {
|
|
2724
2721
|
function getDstFilename(line, dstPrefix) {
|
2725
2722
|
return getFilename(line, '+++', dstPrefix);
|
2726
2723
|
}
|
2727
|
-
function parse(diffInput, config) {
|
2728
|
-
|
2729
|
-
|
2730
|
-
|
2731
|
-
|
2732
|
-
|
2733
|
-
|
2734
|
-
|
2735
|
-
|
2736
|
-
|
2737
|
-
|
2738
|
-
|
2739
|
-
|
2740
|
-
|
2741
|
-
|
2742
|
-
|
2743
|
-
|
2744
|
-
|
2745
|
-
|
2746
|
-
|
2747
|
-
|
2748
|
-
|
2749
|
-
|
2750
|
-
|
2751
|
-
|
2752
|
-
|
2753
|
-
|
2754
|
-
|
2755
|
-
|
2756
|
-
|
2757
|
-
var diffLines = diffInput
|
2724
|
+
function parse(diffInput, config = {}) {
|
2725
|
+
const files = [];
|
2726
|
+
let currentFile = null;
|
2727
|
+
let currentBlock = null;
|
2728
|
+
let oldLine = null;
|
2729
|
+
let oldLine2 = null;
|
2730
|
+
let newLine = null;
|
2731
|
+
let possibleOldName = null;
|
2732
|
+
let possibleNewName = null;
|
2733
|
+
const oldFileNameHeader = '--- ';
|
2734
|
+
const newFileNameHeader = '+++ ';
|
2735
|
+
const hunkHeaderPrefix = '@@';
|
2736
|
+
const oldMode = /^old mode (\d{6})/;
|
2737
|
+
const newMode = /^new mode (\d{6})/;
|
2738
|
+
const deletedFileMode = /^deleted file mode (\d{6})/;
|
2739
|
+
const newFileMode = /^new file mode (\d{6})/;
|
2740
|
+
const copyFrom = /^copy from "?(.+)"?/;
|
2741
|
+
const copyTo = /^copy to "?(.+)"?/;
|
2742
|
+
const renameFrom = /^rename from "?(.+)"?/;
|
2743
|
+
const renameTo = /^rename to "?(.+)"?/;
|
2744
|
+
const similarityIndex = /^similarity index (\d+)%/;
|
2745
|
+
const dissimilarityIndex = /^dissimilarity index (\d+)%/;
|
2746
|
+
const index = /^index ([\da-z]+)\.\.([\da-z]+)\s*(\d{6})?/;
|
2747
|
+
const binaryFiles = /^Binary files (.*) and (.*) differ/;
|
2748
|
+
const binaryDiff = /^GIT binary patch/;
|
2749
|
+
const combinedIndex = /^index ([\da-z]+),([\da-z]+)\.\.([\da-z]+)/;
|
2750
|
+
const combinedMode = /^mode (\d{6}),(\d{6})\.\.(\d{6})/;
|
2751
|
+
const combinedNewFile = /^new file mode (\d{6})/;
|
2752
|
+
const combinedDeletedFile = /^deleted file mode (\d{6}),(\d{6})/;
|
2753
|
+
const diffLines = diffInput
|
2758
2754
|
.replace(/\/g, '')
|
2759
2755
|
.replace(/\r\n?/g, '\n')
|
2760
2756
|
.split('\n');
|
@@ -2791,7 +2787,7 @@ function parse(diffInput, config) {
|
|
2791
2787
|
}
|
2792
2788
|
function startBlock(line) {
|
2793
2789
|
saveBlock();
|
2794
|
-
|
2790
|
+
let values;
|
2795
2791
|
if (currentFile !== null) {
|
2796
2792
|
if ((values = /^@@ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@.*/.exec(line))) {
|
2797
2793
|
currentFile.isCombined = false;
|
@@ -2824,11 +2820,11 @@ function parse(diffInput, config) {
|
|
2824
2820
|
function createLine(line) {
|
2825
2821
|
if (currentFile === null || currentBlock === null || oldLine === null || newLine === null)
|
2826
2822
|
return;
|
2827
|
-
|
2823
|
+
const currentLine = {
|
2828
2824
|
content: line,
|
2829
2825
|
};
|
2830
|
-
|
2831
|
-
|
2826
|
+
const addedPrefixes = currentFile.isCombined ? ['+ ', ' +', '++'] : ['+'];
|
2827
|
+
const deletedPrefixes = currentFile.isCombined ? ['- ', ' -', '--'] : ['-'];
|
2832
2828
|
if (startsWithAny(line, addedPrefixes)) {
|
2833
2829
|
currentFile.addedLines++;
|
2834
2830
|
currentLine.type = LineType.INSERT;
|
@@ -2849,7 +2845,7 @@ function parse(diffInput, config) {
|
|
2849
2845
|
currentBlock.lines.push(currentLine);
|
2850
2846
|
}
|
2851
2847
|
function existHunkHeader(line, lineIdx) {
|
2852
|
-
|
2848
|
+
let idx = lineIdx;
|
2853
2849
|
while (idx < diffLines.length - 3) {
|
2854
2850
|
if (line.startsWith('diff')) {
|
2855
2851
|
return false;
|
@@ -2863,17 +2859,17 @@ function parse(diffInput, config) {
|
|
2863
2859
|
}
|
2864
2860
|
return false;
|
2865
2861
|
}
|
2866
|
-
diffLines.forEach(
|
2862
|
+
diffLines.forEach((line, lineIndex) => {
|
2867
2863
|
if (!line || line.startsWith('*')) {
|
2868
2864
|
return;
|
2869
2865
|
}
|
2870
|
-
|
2871
|
-
|
2872
|
-
|
2873
|
-
|
2866
|
+
let values;
|
2867
|
+
const prevLine = diffLines[lineIndex - 1];
|
2868
|
+
const nxtLine = diffLines[lineIndex + 1];
|
2869
|
+
const afterNxtLine = diffLines[lineIndex + 2];
|
2874
2870
|
if (line.startsWith('diff --git') || line.startsWith('diff --combined')) {
|
2875
2871
|
startFile();
|
2876
|
-
|
2872
|
+
const gitDiffStart = /^diff --git "?([a-ciow]\/.+)"? "?([a-ciow]\/.+)"?/;
|
2877
2873
|
if ((values = gitDiffStart.exec(line))) {
|
2878
2874
|
possibleOldName = getFilename(values[1], undefined, config.dstPrefix);
|
2879
2875
|
possibleNewName = getFilename(values[2], undefined, config.srcPrefix);
|
@@ -2886,7 +2882,7 @@ function parse(diffInput, config) {
|
|
2886
2882
|
}
|
2887
2883
|
if (line.startsWith('Binary files') && !(currentFile === null || currentFile === void 0 ? void 0 : currentFile.isGitDiff)) {
|
2888
2884
|
startFile();
|
2889
|
-
|
2885
|
+
const unixDiffBinaryStart = /^Binary files "?([a-ciow]\/.+)"? and "?([a-ciow]\/.+)"? differ/;
|
2890
2886
|
if ((values = unixDiffBinaryStart.exec(line))) {
|
2891
2887
|
possibleOldName = getFilename(values[1], undefined, config.dstPrefix);
|
2892
2888
|
possibleNewName = getFilename(values[2], undefined, config.srcPrefix);
|
@@ -2917,7 +2913,7 @@ function parse(diffInput, config) {
|
|
2917
2913
|
currentFile.deletedLines = 0;
|
2918
2914
|
currentFile.blocks = [];
|
2919
2915
|
currentBlock = null;
|
2920
|
-
|
2916
|
+
const message = typeof config.diffTooBigMessage === 'function'
|
2921
2917
|
? config.diffTooBigMessage(files.length)
|
2922
2918
|
: 'Diff too big to be displayed';
|
2923
2919
|
startBlock(message);
|
@@ -2952,7 +2948,7 @@ function parse(diffInput, config) {
|
|
2952
2948
|
createLine(line);
|
2953
2949
|
return;
|
2954
2950
|
}
|
2955
|
-
|
2951
|
+
const doesNotExistHunkHeader = !existHunkHeader(line, lineIndex);
|
2956
2952
|
if (currentFile === null) {
|
2957
2953
|
throw new Error('Where is my file !!!');
|
2958
2954
|
}
|
@@ -4608,12 +4604,12 @@ function levenshtein(a, b) {
|
|
4608
4604
|
if (b.length === 0) {
|
4609
4605
|
return a.length;
|
4610
4606
|
}
|
4611
|
-
|
4612
|
-
|
4607
|
+
const matrix = [];
|
4608
|
+
let i;
|
4613
4609
|
for (i = 0; i <= b.length; i++) {
|
4614
4610
|
matrix[i] = [i];
|
4615
4611
|
}
|
4616
|
-
|
4612
|
+
let j;
|
4617
4613
|
for (j = 0; j <= a.length; j++) {
|
4618
4614
|
matrix[0][j] = j;
|
4619
4615
|
}
|
@@ -4630,22 +4626,21 @@ function levenshtein(a, b) {
|
|
4630
4626
|
return matrix[b.length][a.length];
|
4631
4627
|
}
|
4632
4628
|
function newDistanceFn(str) {
|
4633
|
-
return
|
4634
|
-
|
4635
|
-
|
4636
|
-
|
4629
|
+
return (x, y) => {
|
4630
|
+
const xValue = str(x).trim();
|
4631
|
+
const yValue = str(y).trim();
|
4632
|
+
const lev = levenshtein(xValue, yValue);
|
4637
4633
|
return lev / (xValue.length + yValue.length);
|
4638
4634
|
};
|
4639
4635
|
}
|
4640
4636
|
function newMatcherFn(distance) {
|
4641
|
-
function findBestMatch(a, b, cache) {
|
4642
|
-
|
4643
|
-
|
4644
|
-
|
4645
|
-
|
4646
|
-
|
4647
|
-
|
4648
|
-
var md = void 0;
|
4637
|
+
function findBestMatch(a, b, cache = new Map()) {
|
4638
|
+
let bestMatchDist = Infinity;
|
4639
|
+
let bestMatch;
|
4640
|
+
for (let i = 0; i < a.length; ++i) {
|
4641
|
+
for (let j = 0; j < b.length; ++j) {
|
4642
|
+
const cacheKey = JSON.stringify([a[i], b[j]]);
|
4643
|
+
let md;
|
4649
4644
|
if (!(cache.has(cacheKey) && (md = cache.get(cacheKey)))) {
|
4650
4645
|
md = distance(a[i], b[j]);
|
4651
4646
|
cache.set(cacheKey, md);
|
@@ -4658,25 +4653,23 @@ function newMatcherFn(distance) {
|
|
4658
4653
|
}
|
4659
4654
|
return bestMatch;
|
4660
4655
|
}
|
4661
|
-
function group(a, b, level, cache) {
|
4662
|
-
|
4663
|
-
if (cache === void 0) { cache = new Map(); }
|
4664
|
-
var bm = findBestMatch(a, b, cache);
|
4656
|
+
function group(a, b, level = 0, cache = new Map()) {
|
4657
|
+
const bm = findBestMatch(a, b, cache);
|
4665
4658
|
if (!bm || a.length + b.length < 3) {
|
4666
4659
|
return [[a, b]];
|
4667
4660
|
}
|
4668
|
-
|
4669
|
-
|
4670
|
-
|
4671
|
-
|
4672
|
-
|
4673
|
-
|
4674
|
-
|
4675
|
-
|
4676
|
-
|
4677
|
-
|
4678
|
-
|
4679
|
-
|
4661
|
+
const a1 = a.slice(0, bm.indexA);
|
4662
|
+
const b1 = b.slice(0, bm.indexB);
|
4663
|
+
const aMatch = [a[bm.indexA]];
|
4664
|
+
const bMatch = [b[bm.indexB]];
|
4665
|
+
const tailA = bm.indexA + 1;
|
4666
|
+
const tailB = bm.indexB + 1;
|
4667
|
+
const a2 = a.slice(tailA);
|
4668
|
+
const b2 = b.slice(tailB);
|
4669
|
+
const group1 = group(a1, b1, level + 1, cache);
|
4670
|
+
const groupMatch = group(aMatch, bMatch, level + 1, cache);
|
4671
|
+
const group2 = group(a2, b2, level + 1, cache);
|
4672
|
+
let result = groupMatch;
|
4680
4673
|
if (bm.indexA > 0 || bm.indexB > 0) {
|
4681
4674
|
result = group1.concat(result);
|
4682
4675
|
}
|
@@ -4689,22 +4682,11 @@ function newMatcherFn(distance) {
|
|
4689
4682
|
}
|
4690
4683
|
//# sourceMappingURL=rematch.js.map
|
4691
4684
|
;// CONCATENATED MODULE: ../../node_modules/diff2html/lib-esm/render-utils.js
|
4692
|
-
var __assign = (undefined && undefined.__assign) || function () {
|
4693
|
-
__assign = Object.assign || function(t) {
|
4694
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
4695
|
-
s = arguments[i];
|
4696
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
4697
|
-
t[p] = s[p];
|
4698
|
-
}
|
4699
|
-
return t;
|
4700
|
-
};
|
4701
|
-
return __assign.apply(this, arguments);
|
4702
|
-
};
|
4703
4685
|
|
4704
4686
|
|
4705
4687
|
|
4706
4688
|
|
4707
|
-
|
4689
|
+
const CSSLineClass = {
|
4708
4690
|
INSERTS: 'd2h-ins',
|
4709
4691
|
DELETES: 'd2h-del',
|
4710
4692
|
CONTEXT: 'd2h-cntx',
|
@@ -4712,15 +4694,16 @@ var CSSLineClass = {
|
|
4712
4694
|
INSERT_CHANGES: 'd2h-ins d2h-change',
|
4713
4695
|
DELETE_CHANGES: 'd2h-del d2h-change',
|
4714
4696
|
};
|
4715
|
-
|
4697
|
+
const defaultRenderConfig = {
|
4716
4698
|
matching: LineMatchingType.NONE,
|
4717
4699
|
matchWordsThreshold: 0.25,
|
4718
4700
|
maxLineLengthHighlight: 10000,
|
4719
4701
|
diffStyle: DiffStyleType.WORD,
|
4702
|
+
colorScheme: ColorSchemeType.LIGHT,
|
4720
4703
|
};
|
4721
|
-
|
4722
|
-
|
4723
|
-
|
4704
|
+
const separator = '/';
|
4705
|
+
const distance = newDistanceFn((change) => change.value);
|
4706
|
+
const matcher = newMatcherFn(distance);
|
4724
4707
|
function isDevNullName(name) {
|
4725
4708
|
return name.indexOf('dev/null') !== -1;
|
4726
4709
|
}
|
@@ -4740,6 +4723,17 @@ function toCSSClass(lineType) {
|
|
4740
4723
|
return CSSLineClass.DELETES;
|
4741
4724
|
}
|
4742
4725
|
}
|
4726
|
+
function colorSchemeToCss(colorScheme) {
|
4727
|
+
switch (colorScheme) {
|
4728
|
+
case ColorSchemeType.DARK:
|
4729
|
+
return 'd2h-dark-color-scheme';
|
4730
|
+
case ColorSchemeType.AUTO:
|
4731
|
+
return 'd2h-auto-color-scheme';
|
4732
|
+
case ColorSchemeType.LIGHT:
|
4733
|
+
default:
|
4734
|
+
return 'd2h-light-color-scheme';
|
4735
|
+
}
|
4736
|
+
}
|
4743
4737
|
function prefixLength(isCombined) {
|
4744
4738
|
return isCombined ? 2 : 1;
|
4745
4739
|
}
|
@@ -4753,27 +4747,26 @@ function escapeForHtml(str) {
|
|
4753
4747
|
.replace(/'/g, ''')
|
4754
4748
|
.replace(/\//g, '/');
|
4755
4749
|
}
|
4756
|
-
function deconstructLine(line, isCombined, escape) {
|
4757
|
-
|
4758
|
-
var indexToSplit = prefixLength(isCombined);
|
4750
|
+
function deconstructLine(line, isCombined, escape = true) {
|
4751
|
+
const indexToSplit = prefixLength(isCombined);
|
4759
4752
|
return {
|
4760
4753
|
prefix: line.substring(0, indexToSplit),
|
4761
4754
|
content: escape ? escapeForHtml(line.substring(indexToSplit)) : line.substring(indexToSplit),
|
4762
4755
|
};
|
4763
4756
|
}
|
4764
4757
|
function filenameDiff(file) {
|
4765
|
-
|
4766
|
-
|
4758
|
+
const oldFilename = unifyPath(file.oldName);
|
4759
|
+
const newFilename = unifyPath(file.newName);
|
4767
4760
|
if (oldFilename !== newFilename && !isDevNullName(oldFilename) && !isDevNullName(newFilename)) {
|
4768
|
-
|
4769
|
-
|
4770
|
-
|
4771
|
-
|
4772
|
-
|
4773
|
-
|
4774
|
-
|
4775
|
-
|
4776
|
-
|
4761
|
+
const prefixPaths = [];
|
4762
|
+
const suffixPaths = [];
|
4763
|
+
const oldFilenameParts = oldFilename.split(separator);
|
4764
|
+
const newFilenameParts = newFilename.split(separator);
|
4765
|
+
const oldFilenamePartsSize = oldFilenameParts.length;
|
4766
|
+
const newFilenamePartsSize = newFilenameParts.length;
|
4767
|
+
let i = 0;
|
4768
|
+
let j = oldFilenamePartsSize - 1;
|
4769
|
+
let k = newFilenamePartsSize - 1;
|
4777
4770
|
while (i < j && i < k) {
|
4778
4771
|
if (oldFilenameParts[i] === newFilenameParts[i]) {
|
4779
4772
|
prefixPaths.push(newFilenameParts[i]);
|
@@ -4793,10 +4786,10 @@ function filenameDiff(file) {
|
|
4793
4786
|
break;
|
4794
4787
|
}
|
4795
4788
|
}
|
4796
|
-
|
4797
|
-
|
4798
|
-
|
4799
|
-
|
4789
|
+
const finalPrefix = prefixPaths.join(separator);
|
4790
|
+
const finalSuffix = suffixPaths.join(separator);
|
4791
|
+
const oldRemainingPath = oldFilenameParts.slice(i, j + 1).join(separator);
|
4792
|
+
const newRemainingPath = newFilenameParts.slice(i, k + 1).join(separator);
|
4800
4793
|
if (finalPrefix.length && finalSuffix.length) {
|
4801
4794
|
return (finalPrefix + separator + '{' + oldRemainingPath + ' → ' + newRemainingPath + '}' + separator + finalSuffix);
|
4802
4795
|
}
|
@@ -4816,10 +4809,10 @@ function filenameDiff(file) {
|
|
4816
4809
|
}
|
4817
4810
|
}
|
4818
4811
|
function getHtmlId(file) {
|
4819
|
-
return
|
4812
|
+
return `d2h-${hashCode(filenameDiff(file)).toString().slice(-6)}`;
|
4820
4813
|
}
|
4821
4814
|
function getFileIcon(file) {
|
4822
|
-
|
4815
|
+
let templateName = 'file-changed';
|
4823
4816
|
if (file.isRename) {
|
4824
4817
|
templateName = 'file-renamed';
|
4825
4818
|
}
|
@@ -4837,11 +4830,10 @@ function getFileIcon(file) {
|
|
4837
4830
|
}
|
4838
4831
|
return templateName;
|
4839
4832
|
}
|
4840
|
-
function diffHighlight(diffLine1, diffLine2, isCombined, config) {
|
4841
|
-
|
4842
|
-
|
4843
|
-
|
4844
|
-
var line2 = deconstructLine(diffLine2, isCombined, false);
|
4833
|
+
function diffHighlight(diffLine1, diffLine2, isCombined, config = {}) {
|
4834
|
+
const { matching, maxLineLengthHighlight, matchWordsThreshold, diffStyle } = Object.assign(Object.assign({}, defaultRenderConfig), config);
|
4835
|
+
const line1 = deconstructLine(diffLine1, isCombined, false);
|
4836
|
+
const line2 = deconstructLine(diffLine2, isCombined, false);
|
4845
4837
|
if (line1.content.length > maxLineLengthHighlight || line2.content.length > maxLineLengthHighlight) {
|
4846
4838
|
return {
|
4847
4839
|
oldLine: {
|
@@ -4854,17 +4846,17 @@ function diffHighlight(diffLine1, diffLine2, isCombined, config) {
|
|
4854
4846
|
},
|
4855
4847
|
};
|
4856
4848
|
}
|
4857
|
-
|
4849
|
+
const diff = diffStyle === 'char'
|
4858
4850
|
? lib_diffChars(line1.content, line2.content)
|
4859
4851
|
: lib_diffWordsWithSpace(line1.content, line2.content);
|
4860
|
-
|
4852
|
+
const changedWords = [];
|
4861
4853
|
if (diffStyle === 'word' && matching === 'words') {
|
4862
|
-
|
4863
|
-
|
4864
|
-
|
4865
|
-
chunks.forEach(
|
4854
|
+
const removed = diff.filter(element => element.removed);
|
4855
|
+
const added = diff.filter(element => element.added);
|
4856
|
+
const chunks = matcher(added, removed);
|
4857
|
+
chunks.forEach(chunk => {
|
4866
4858
|
if (chunk[0].length === 1 && chunk[1].length === 1) {
|
4867
|
-
|
4859
|
+
const dist = distance(chunk[0][0], chunk[1][0]);
|
4868
4860
|
if (dist < matchWordsThreshold) {
|
4869
4861
|
changedWords.push(chunk[0][0]);
|
4870
4862
|
changedWords.push(chunk[1][0]);
|
@@ -4872,13 +4864,13 @@ function diffHighlight(diffLine1, diffLine2, isCombined, config) {
|
|
4872
4864
|
}
|
4873
4865
|
});
|
4874
4866
|
}
|
4875
|
-
|
4876
|
-
|
4877
|
-
|
4878
|
-
|
4867
|
+
const highlightedLine = diff.reduce((highlightedLine, part) => {
|
4868
|
+
const elemType = part.added ? 'ins' : part.removed ? 'del' : null;
|
4869
|
+
const addClass = changedWords.indexOf(part) > -1 ? ' class="d2h-change"' : '';
|
4870
|
+
const escapedValue = escapeForHtml(part.value);
|
4879
4871
|
return elemType !== null
|
4880
|
-
?
|
4881
|
-
:
|
4872
|
+
? `${highlightedLine}<${elemType}${addClass}>${escapedValue}</${elemType}>`
|
4873
|
+
: `${highlightedLine}${escapedValue}`;
|
4882
4874
|
}, '');
|
4883
4875
|
return {
|
4884
4876
|
oldLine: {
|
@@ -4894,12 +4886,19 @@ function diffHighlight(diffLine1, diffLine2, isCombined, config) {
|
|
4894
4886
|
//# sourceMappingURL=render-utils.js.map
|
4895
4887
|
;// CONCATENATED MODULE: ../../node_modules/diff2html/lib-esm/file-list-renderer.js
|
4896
4888
|
|
4897
|
-
|
4898
|
-
|
4899
|
-
|
4900
|
-
|
4901
|
-
|
4902
|
-
|
4889
|
+
const baseTemplatesPath = 'file-summary';
|
4890
|
+
const iconsBaseTemplatesPath = 'icon';
|
4891
|
+
const defaultFileListRendererConfig = {
|
4892
|
+
colorScheme: defaultRenderConfig.colorScheme,
|
4893
|
+
};
|
4894
|
+
class FileListRenderer {
|
4895
|
+
constructor(hoganUtils, config = {}) {
|
4896
|
+
this.hoganUtils = hoganUtils;
|
4897
|
+
this.config = Object.assign(Object.assign({}, defaultFileListRendererConfig), config);
|
4898
|
+
}
|
4899
|
+
render(diffFiles) {
|
4900
|
+
const files = diffFiles
|
4901
|
+
.map(file => this.hoganUtils.render(baseTemplatesPath, 'line', {
|
4903
4902
|
fileHtmlId: getHtmlId(file),
|
4904
4903
|
oldName: file.oldName,
|
4905
4904
|
newName: file.newName,
|
@@ -4907,65 +4906,56 @@ function render(diffFiles, hoganUtils) {
|
|
4907
4906
|
deletedLines: '-' + file.deletedLines,
|
4908
4907
|
addedLines: '+' + file.addedLines,
|
4909
4908
|
}, {
|
4910
|
-
fileIcon: hoganUtils.template(iconsBaseTemplatesPath, getFileIcon(file)),
|
4909
|
+
fileIcon: this.hoganUtils.template(iconsBaseTemplatesPath, getFileIcon(file)),
|
4910
|
+
}))
|
4911
|
+
.join('\n');
|
4912
|
+
return this.hoganUtils.render(baseTemplatesPath, 'wrapper', {
|
4913
|
+
colorScheme: colorSchemeToCss(this.config.colorScheme),
|
4914
|
+
filesNumber: diffFiles.length,
|
4915
|
+
files: files,
|
4911
4916
|
});
|
4912
|
-
}
|
4913
|
-
.join('\n');
|
4914
|
-
return hoganUtils.render(baseTemplatesPath, 'wrapper', {
|
4915
|
-
filesNumber: diffFiles.length,
|
4916
|
-
files: files,
|
4917
|
-
});
|
4917
|
+
}
|
4918
4918
|
}
|
4919
4919
|
//# sourceMappingURL=file-list-renderer.js.map
|
4920
4920
|
;// CONCATENATED MODULE: ../../node_modules/diff2html/lib-esm/line-by-line-renderer.js
|
4921
|
-
var line_by_line_renderer_assign = (undefined && undefined.__assign) || function () {
|
4922
|
-
line_by_line_renderer_assign = Object.assign || function(t) {
|
4923
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
4924
|
-
s = arguments[i];
|
4925
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
4926
|
-
t[p] = s[p];
|
4927
|
-
}
|
4928
|
-
return t;
|
4929
|
-
};
|
4930
|
-
return line_by_line_renderer_assign.apply(this, arguments);
|
4931
|
-
};
|
4932
4921
|
|
4933
4922
|
|
4934
4923
|
|
4935
|
-
|
4936
|
-
|
4937
|
-
|
4938
|
-
|
4939
|
-
|
4940
|
-
|
4941
|
-
|
4942
|
-
if (config === void 0) { config = {}; }
|
4924
|
+
const defaultLineByLineRendererConfig = Object.assign(Object.assign({}, defaultRenderConfig), { renderNothingWhenEmpty: false, matchingMaxComparisons: 2500, maxLineSizeInBlockForComparison: 200 });
|
4925
|
+
const genericTemplatesPath = 'generic';
|
4926
|
+
const line_by_line_renderer_baseTemplatesPath = 'line-by-line';
|
4927
|
+
const line_by_line_renderer_iconsBaseTemplatesPath = 'icon';
|
4928
|
+
const tagsBaseTemplatesPath = 'tag';
|
4929
|
+
class LineByLineRenderer {
|
4930
|
+
constructor(hoganUtils, config = {}) {
|
4943
4931
|
this.hoganUtils = hoganUtils;
|
4944
|
-
this.config =
|
4932
|
+
this.config = Object.assign(Object.assign({}, defaultLineByLineRendererConfig), config);
|
4945
4933
|
}
|
4946
|
-
|
4947
|
-
|
4948
|
-
|
4949
|
-
|
4950
|
-
var diffs;
|
4934
|
+
render(diffFiles) {
|
4935
|
+
const diffsHtml = diffFiles
|
4936
|
+
.map(file => {
|
4937
|
+
let diffs;
|
4951
4938
|
if (file.blocks.length) {
|
4952
|
-
diffs =
|
4939
|
+
diffs = this.generateFileHtml(file);
|
4953
4940
|
}
|
4954
4941
|
else {
|
4955
|
-
diffs =
|
4942
|
+
diffs = this.generateEmptyDiff();
|
4956
4943
|
}
|
4957
|
-
return
|
4944
|
+
return this.makeFileDiffHtml(file, diffs);
|
4958
4945
|
})
|
4959
4946
|
.join('\n');
|
4960
|
-
return this.hoganUtils.render(genericTemplatesPath, 'wrapper', {
|
4961
|
-
|
4962
|
-
|
4947
|
+
return this.hoganUtils.render(genericTemplatesPath, 'wrapper', {
|
4948
|
+
colorScheme: colorSchemeToCss(this.config.colorScheme),
|
4949
|
+
content: diffsHtml,
|
4950
|
+
});
|
4951
|
+
}
|
4952
|
+
makeFileDiffHtml(file, diffs) {
|
4963
4953
|
if (this.config.renderNothingWhenEmpty && Array.isArray(file.blocks) && file.blocks.length === 0)
|
4964
4954
|
return '';
|
4965
|
-
|
4966
|
-
|
4967
|
-
|
4968
|
-
|
4955
|
+
const fileDiffTemplate = this.hoganUtils.template(line_by_line_renderer_baseTemplatesPath, 'file-diff');
|
4956
|
+
const filePathTemplate = this.hoganUtils.template(genericTemplatesPath, 'file-path');
|
4957
|
+
const fileIconTemplate = this.hoganUtils.template(line_by_line_renderer_iconsBaseTemplatesPath, 'file');
|
4958
|
+
const fileTagTemplate = this.hoganUtils.template(tagsBaseTemplatesPath, getFileIcon(file));
|
4969
4959
|
return fileDiffTemplate.render({
|
4970
4960
|
file: file,
|
4971
4961
|
fileHtmlId: getHtmlId(file),
|
@@ -4977,38 +4967,35 @@ var LineByLineRenderer = (function () {
|
|
4977
4967
|
fileTag: fileTagTemplate,
|
4978
4968
|
}),
|
4979
4969
|
});
|
4980
|
-
}
|
4981
|
-
|
4970
|
+
}
|
4971
|
+
generateEmptyDiff() {
|
4982
4972
|
return this.hoganUtils.render(genericTemplatesPath, 'empty-diff', {
|
4983
4973
|
contentClass: 'd2h-code-line',
|
4984
4974
|
CSSLineClass: CSSLineClass,
|
4985
4975
|
});
|
4986
|
-
}
|
4987
|
-
|
4988
|
-
|
4989
|
-
var matcher = newMatcherFn(newDistanceFn(function (e) { return deconstructLine(e.content, file.isCombined).content; }));
|
4976
|
+
}
|
4977
|
+
generateFileHtml(file) {
|
4978
|
+
const matcher = newMatcherFn(newDistanceFn((e) => deconstructLine(e.content, file.isCombined).content));
|
4990
4979
|
return file.blocks
|
4991
|
-
.map(
|
4992
|
-
|
4980
|
+
.map(block => {
|
4981
|
+
let lines = this.hoganUtils.render(genericTemplatesPath, 'block-header', {
|
4993
4982
|
CSSLineClass: CSSLineClass,
|
4994
4983
|
blockHeader: file.isTooBig ? block.header : escapeForHtml(block.header),
|
4995
4984
|
lineClass: 'd2h-code-linenumber',
|
4996
4985
|
contentClass: 'd2h-code-line',
|
4997
4986
|
});
|
4998
|
-
|
4999
|
-
var contextLines = _a[0], oldLines = _a[1], newLines = _a[2];
|
4987
|
+
this.applyLineGroupping(block).forEach(([contextLines, oldLines, newLines]) => {
|
5000
4988
|
if (oldLines.length && newLines.length && !contextLines.length) {
|
5001
|
-
|
5002
|
-
|
5003
|
-
var _b = _this.processChangedLines(file, file.isCombined, oldLines, newLines), left = _b.left, right = _b.right;
|
4989
|
+
this.applyRematchMatching(oldLines, newLines, matcher).map(([oldLines, newLines]) => {
|
4990
|
+
const { left, right } = this.processChangedLines(file, file.isCombined, oldLines, newLines);
|
5004
4991
|
lines += left;
|
5005
4992
|
lines += right;
|
5006
4993
|
});
|
5007
4994
|
}
|
5008
4995
|
else if (contextLines.length) {
|
5009
|
-
contextLines.forEach(
|
5010
|
-
|
5011
|
-
lines +=
|
4996
|
+
contextLines.forEach(line => {
|
4997
|
+
const { prefix, content } = deconstructLine(line.content, file.isCombined);
|
4998
|
+
lines += this.generateSingleLineHtml(file, {
|
5012
4999
|
type: CSSLineClass.CONTEXT,
|
5013
5000
|
prefix: prefix,
|
5014
5001
|
content: content,
|
@@ -5018,7 +5005,7 @@ var LineByLineRenderer = (function () {
|
|
5018
5005
|
});
|
5019
5006
|
}
|
5020
5007
|
else if (oldLines.length || newLines.length) {
|
5021
|
-
|
5008
|
+
const { left, right } = this.processChangedLines(file, file.isCombined, oldLines, newLines);
|
5022
5009
|
lines += left;
|
5023
5010
|
lines += right;
|
5024
5011
|
}
|
@@ -5029,13 +5016,13 @@ var LineByLineRenderer = (function () {
|
|
5029
5016
|
return lines;
|
5030
5017
|
})
|
5031
5018
|
.join('\n');
|
5032
|
-
}
|
5033
|
-
|
5034
|
-
|
5035
|
-
|
5036
|
-
|
5037
|
-
for (
|
5038
|
-
|
5019
|
+
}
|
5020
|
+
applyLineGroupping(block) {
|
5021
|
+
const blockLinesGroups = [];
|
5022
|
+
let oldLines = [];
|
5023
|
+
let newLines = [];
|
5024
|
+
for (let i = 0; i < block.lines.length; i++) {
|
5025
|
+
const diffLine = block.lines[i];
|
5039
5026
|
if ((diffLine.type !== LineType.INSERT && newLines.length) ||
|
5040
5027
|
(diffLine.type === LineType.CONTEXT && oldLines.length > 0)) {
|
5041
5028
|
blockLinesGroups.push([[], oldLines, newLines]);
|
@@ -5061,59 +5048,59 @@ var LineByLineRenderer = (function () {
|
|
5061
5048
|
newLines = [];
|
5062
5049
|
}
|
5063
5050
|
return blockLinesGroups;
|
5064
|
-
}
|
5065
|
-
|
5066
|
-
|
5067
|
-
|
5068
|
-
|
5051
|
+
}
|
5052
|
+
applyRematchMatching(oldLines, newLines, matcher) {
|
5053
|
+
const comparisons = oldLines.length * newLines.length;
|
5054
|
+
const maxLineSizeInBlock = Math.max.apply(null, [0].concat(oldLines.concat(newLines).map(elem => elem.content.length)));
|
5055
|
+
const doMatching = comparisons < this.config.matchingMaxComparisons &&
|
5069
5056
|
maxLineSizeInBlock < this.config.maxLineSizeInBlockForComparison &&
|
5070
5057
|
(this.config.matching === 'lines' || this.config.matching === 'words');
|
5071
5058
|
return doMatching ? matcher(oldLines, newLines) : [[oldLines, newLines]];
|
5072
|
-
}
|
5073
|
-
|
5074
|
-
|
5059
|
+
}
|
5060
|
+
processChangedLines(file, isCombined, oldLines, newLines) {
|
5061
|
+
const fileHtml = {
|
5075
5062
|
right: '',
|
5076
5063
|
left: '',
|
5077
5064
|
};
|
5078
|
-
|
5079
|
-
for (
|
5080
|
-
|
5081
|
-
|
5082
|
-
|
5065
|
+
const maxLinesNumber = Math.max(oldLines.length, newLines.length);
|
5066
|
+
for (let i = 0; i < maxLinesNumber; i++) {
|
5067
|
+
const oldLine = oldLines[i];
|
5068
|
+
const newLine = newLines[i];
|
5069
|
+
const diff = oldLine !== undefined && newLine !== undefined
|
5083
5070
|
? diffHighlight(oldLine.content, newLine.content, isCombined, this.config)
|
5084
5071
|
: undefined;
|
5085
|
-
|
5086
|
-
?
|
5072
|
+
const preparedOldLine = oldLine !== undefined && oldLine.oldNumber !== undefined
|
5073
|
+
? Object.assign(Object.assign({}, (diff !== undefined
|
5087
5074
|
? {
|
5088
5075
|
prefix: diff.oldLine.prefix,
|
5089
5076
|
content: diff.oldLine.content,
|
5090
5077
|
type: CSSLineClass.DELETE_CHANGES,
|
5091
5078
|
}
|
5092
|
-
:
|
5093
|
-
|
5094
|
-
?
|
5079
|
+
: Object.assign(Object.assign({}, deconstructLine(oldLine.content, isCombined)), { type: toCSSClass(oldLine.type) }))), { oldNumber: oldLine.oldNumber, newNumber: oldLine.newNumber }) : undefined;
|
5080
|
+
const preparedNewLine = newLine !== undefined && newLine.newNumber !== undefined
|
5081
|
+
? Object.assign(Object.assign({}, (diff !== undefined
|
5095
5082
|
? {
|
5096
5083
|
prefix: diff.newLine.prefix,
|
5097
5084
|
content: diff.newLine.content,
|
5098
5085
|
type: CSSLineClass.INSERT_CHANGES,
|
5099
5086
|
}
|
5100
|
-
:
|
5101
|
-
|
5087
|
+
: Object.assign(Object.assign({}, deconstructLine(newLine.content, isCombined)), { type: toCSSClass(newLine.type) }))), { oldNumber: newLine.oldNumber, newNumber: newLine.newNumber }) : undefined;
|
5088
|
+
const { left, right } = this.generateLineHtml(file, preparedOldLine, preparedNewLine);
|
5102
5089
|
fileHtml.left += left;
|
5103
5090
|
fileHtml.right += right;
|
5104
5091
|
}
|
5105
5092
|
return fileHtml;
|
5106
|
-
}
|
5107
|
-
|
5093
|
+
}
|
5094
|
+
generateLineHtml(file, oldLine, newLine) {
|
5108
5095
|
return {
|
5109
5096
|
left: this.generateSingleLineHtml(file, oldLine),
|
5110
5097
|
right: this.generateSingleLineHtml(file, newLine),
|
5111
5098
|
};
|
5112
|
-
}
|
5113
|
-
|
5099
|
+
}
|
5100
|
+
generateSingleLineHtml(file, line) {
|
5114
5101
|
if (line === undefined)
|
5115
5102
|
return '';
|
5116
|
-
|
5103
|
+
const lineNumberHtml = this.hoganUtils.render(line_by_line_renderer_baseTemplatesPath, 'numbers', {
|
5117
5104
|
oldNumber: line.oldNumber || '',
|
5118
5105
|
newNumber: line.newNumber || '',
|
5119
5106
|
});
|
@@ -5124,63 +5111,51 @@ var LineByLineRenderer = (function () {
|
|
5124
5111
|
prefix: line.prefix === ' ' ? ' ' : line.prefix,
|
5125
5112
|
content: line.content,
|
5126
5113
|
lineNumber: lineNumberHtml,
|
5127
|
-
line
|
5128
|
-
file
|
5114
|
+
line,
|
5115
|
+
file,
|
5129
5116
|
});
|
5130
|
-
}
|
5131
|
-
|
5132
|
-
}());
|
5133
|
-
/* harmony default export */ const line_by_line_renderer = (LineByLineRenderer);
|
5117
|
+
}
|
5118
|
+
}
|
5134
5119
|
//# sourceMappingURL=line-by-line-renderer.js.map
|
5135
5120
|
;// CONCATENATED MODULE: ../../node_modules/diff2html/lib-esm/side-by-side-renderer.js
|
5136
|
-
var side_by_side_renderer_assign = (undefined && undefined.__assign) || function () {
|
5137
|
-
side_by_side_renderer_assign = Object.assign || function(t) {
|
5138
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
5139
|
-
s = arguments[i];
|
5140
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
5141
|
-
t[p] = s[p];
|
5142
|
-
}
|
5143
|
-
return t;
|
5144
|
-
};
|
5145
|
-
return side_by_side_renderer_assign.apply(this, arguments);
|
5146
|
-
};
|
5147
5121
|
|
5148
5122
|
|
5149
5123
|
|
5150
|
-
|
5151
|
-
|
5152
|
-
|
5153
|
-
|
5154
|
-
|
5155
|
-
|
5156
|
-
|
5157
|
-
if (config === void 0) { config = {}; }
|
5124
|
+
const defaultSideBySideRendererConfig = Object.assign(Object.assign({}, defaultRenderConfig), { renderNothingWhenEmpty: false, matchingMaxComparisons: 2500, maxLineSizeInBlockForComparison: 200 });
|
5125
|
+
const side_by_side_renderer_genericTemplatesPath = 'generic';
|
5126
|
+
const side_by_side_renderer_baseTemplatesPath = 'side-by-side';
|
5127
|
+
const side_by_side_renderer_iconsBaseTemplatesPath = 'icon';
|
5128
|
+
const side_by_side_renderer_tagsBaseTemplatesPath = 'tag';
|
5129
|
+
class SideBySideRenderer {
|
5130
|
+
constructor(hoganUtils, config = {}) {
|
5158
5131
|
this.hoganUtils = hoganUtils;
|
5159
|
-
this.config =
|
5132
|
+
this.config = Object.assign(Object.assign({}, defaultSideBySideRendererConfig), config);
|
5160
5133
|
}
|
5161
|
-
|
5162
|
-
|
5163
|
-
|
5164
|
-
|
5165
|
-
var diffs;
|
5134
|
+
render(diffFiles) {
|
5135
|
+
const diffsHtml = diffFiles
|
5136
|
+
.map(file => {
|
5137
|
+
let diffs;
|
5166
5138
|
if (file.blocks.length) {
|
5167
|
-
diffs =
|
5139
|
+
diffs = this.generateFileHtml(file);
|
5168
5140
|
}
|
5169
5141
|
else {
|
5170
|
-
diffs =
|
5142
|
+
diffs = this.generateEmptyDiff();
|
5171
5143
|
}
|
5172
|
-
return
|
5144
|
+
return this.makeFileDiffHtml(file, diffs);
|
5173
5145
|
})
|
5174
5146
|
.join('\n');
|
5175
|
-
return this.hoganUtils.render(side_by_side_renderer_genericTemplatesPath, 'wrapper', {
|
5176
|
-
|
5177
|
-
|
5147
|
+
return this.hoganUtils.render(side_by_side_renderer_genericTemplatesPath, 'wrapper', {
|
5148
|
+
colorScheme: colorSchemeToCss(this.config.colorScheme),
|
5149
|
+
content: diffsHtml,
|
5150
|
+
});
|
5151
|
+
}
|
5152
|
+
makeFileDiffHtml(file, diffs) {
|
5178
5153
|
if (this.config.renderNothingWhenEmpty && Array.isArray(file.blocks) && file.blocks.length === 0)
|
5179
5154
|
return '';
|
5180
|
-
|
5181
|
-
|
5182
|
-
|
5183
|
-
|
5155
|
+
const fileDiffTemplate = this.hoganUtils.template(side_by_side_renderer_baseTemplatesPath, 'file-diff');
|
5156
|
+
const filePathTemplate = this.hoganUtils.template(side_by_side_renderer_genericTemplatesPath, 'file-path');
|
5157
|
+
const fileIconTemplate = this.hoganUtils.template(side_by_side_renderer_iconsBaseTemplatesPath, 'file');
|
5158
|
+
const fileTagTemplate = this.hoganUtils.template(side_by_side_renderer_tagsBaseTemplatesPath, getFileIcon(file));
|
5184
5159
|
return fileDiffTemplate.render({
|
5185
5160
|
file: file,
|
5186
5161
|
fileHtmlId: getHtmlId(file),
|
@@ -5192,8 +5167,8 @@ var SideBySideRenderer = (function () {
|
|
5192
5167
|
fileTag: fileTagTemplate,
|
5193
5168
|
}),
|
5194
5169
|
});
|
5195
|
-
}
|
5196
|
-
|
5170
|
+
}
|
5171
|
+
generateEmptyDiff() {
|
5197
5172
|
return {
|
5198
5173
|
right: '',
|
5199
5174
|
left: this.hoganUtils.render(side_by_side_renderer_genericTemplatesPath, 'empty-diff', {
|
@@ -5201,30 +5176,27 @@ var SideBySideRenderer = (function () {
|
|
5201
5176
|
CSSLineClass: CSSLineClass,
|
5202
5177
|
}),
|
5203
5178
|
};
|
5204
|
-
}
|
5205
|
-
|
5206
|
-
|
5207
|
-
var matcher = newMatcherFn(newDistanceFn(function (e) { return deconstructLine(e.content, file.isCombined).content; }));
|
5179
|
+
}
|
5180
|
+
generateFileHtml(file) {
|
5181
|
+
const matcher = newMatcherFn(newDistanceFn((e) => deconstructLine(e.content, file.isCombined).content));
|
5208
5182
|
return file.blocks
|
5209
|
-
.map(
|
5210
|
-
|
5211
|
-
left:
|
5212
|
-
right:
|
5183
|
+
.map(block => {
|
5184
|
+
const fileHtml = {
|
5185
|
+
left: this.makeHeaderHtml(block.header, file),
|
5186
|
+
right: this.makeHeaderHtml(''),
|
5213
5187
|
};
|
5214
|
-
|
5215
|
-
var contextLines = _a[0], oldLines = _a[1], newLines = _a[2];
|
5188
|
+
this.applyLineGroupping(block).forEach(([contextLines, oldLines, newLines]) => {
|
5216
5189
|
if (oldLines.length && newLines.length && !contextLines.length) {
|
5217
|
-
|
5218
|
-
|
5219
|
-
var _b = _this.processChangedLines(file.isCombined, oldLines, newLines), left = _b.left, right = _b.right;
|
5190
|
+
this.applyRematchMatching(oldLines, newLines, matcher).map(([oldLines, newLines]) => {
|
5191
|
+
const { left, right } = this.processChangedLines(file.isCombined, oldLines, newLines);
|
5220
5192
|
fileHtml.left += left;
|
5221
5193
|
fileHtml.right += right;
|
5222
5194
|
});
|
5223
5195
|
}
|
5224
5196
|
else if (contextLines.length) {
|
5225
|
-
contextLines.forEach(
|
5226
|
-
|
5227
|
-
|
5197
|
+
contextLines.forEach(line => {
|
5198
|
+
const { prefix, content } = deconstructLine(line.content, file.isCombined);
|
5199
|
+
const { left, right } = this.generateLineHtml({
|
5228
5200
|
type: CSSLineClass.CONTEXT,
|
5229
5201
|
prefix: prefix,
|
5230
5202
|
content: content,
|
@@ -5234,13 +5206,13 @@ var SideBySideRenderer = (function () {
|
|
5234
5206
|
prefix: prefix,
|
5235
5207
|
content: content,
|
5236
5208
|
number: line.newNumber,
|
5237
|
-
})
|
5209
|
+
});
|
5238
5210
|
fileHtml.left += left;
|
5239
5211
|
fileHtml.right += right;
|
5240
5212
|
});
|
5241
5213
|
}
|
5242
5214
|
else if (oldLines.length || newLines.length) {
|
5243
|
-
|
5215
|
+
const { left, right } = this.processChangedLines(file.isCombined, oldLines, newLines);
|
5244
5216
|
fileHtml.left += left;
|
5245
5217
|
fileHtml.right += right;
|
5246
5218
|
}
|
@@ -5250,16 +5222,16 @@ var SideBySideRenderer = (function () {
|
|
5250
5222
|
});
|
5251
5223
|
return fileHtml;
|
5252
5224
|
})
|
5253
|
-
.reduce(
|
5225
|
+
.reduce((accomulated, html) => {
|
5254
5226
|
return { left: accomulated.left + html.left, right: accomulated.right + html.right };
|
5255
5227
|
}, { left: '', right: '' });
|
5256
|
-
}
|
5257
|
-
|
5258
|
-
|
5259
|
-
|
5260
|
-
|
5261
|
-
for (
|
5262
|
-
|
5228
|
+
}
|
5229
|
+
applyLineGroupping(block) {
|
5230
|
+
const blockLinesGroups = [];
|
5231
|
+
let oldLines = [];
|
5232
|
+
let newLines = [];
|
5233
|
+
for (let i = 0; i < block.lines.length; i++) {
|
5234
|
+
const diffLine = block.lines[i];
|
5263
5235
|
if ((diffLine.type !== LineType.INSERT && newLines.length) ||
|
5264
5236
|
(diffLine.type === LineType.CONTEXT && oldLines.length > 0)) {
|
5265
5237
|
blockLinesGroups.push([[], oldLines, newLines]);
|
@@ -5285,86 +5257,84 @@ var SideBySideRenderer = (function () {
|
|
5285
5257
|
newLines = [];
|
5286
5258
|
}
|
5287
5259
|
return blockLinesGroups;
|
5288
|
-
}
|
5289
|
-
|
5290
|
-
|
5291
|
-
|
5292
|
-
|
5260
|
+
}
|
5261
|
+
applyRematchMatching(oldLines, newLines, matcher) {
|
5262
|
+
const comparisons = oldLines.length * newLines.length;
|
5263
|
+
const maxLineSizeInBlock = Math.max.apply(null, [0].concat(oldLines.concat(newLines).map(elem => elem.content.length)));
|
5264
|
+
const doMatching = comparisons < this.config.matchingMaxComparisons &&
|
5293
5265
|
maxLineSizeInBlock < this.config.maxLineSizeInBlockForComparison &&
|
5294
5266
|
(this.config.matching === 'lines' || this.config.matching === 'words');
|
5295
5267
|
return doMatching ? matcher(oldLines, newLines) : [[oldLines, newLines]];
|
5296
|
-
}
|
5297
|
-
|
5268
|
+
}
|
5269
|
+
makeHeaderHtml(blockHeader, file) {
|
5298
5270
|
return this.hoganUtils.render(side_by_side_renderer_genericTemplatesPath, 'block-header', {
|
5299
5271
|
CSSLineClass: CSSLineClass,
|
5300
5272
|
blockHeader: (file === null || file === void 0 ? void 0 : file.isTooBig) ? blockHeader : escapeForHtml(blockHeader),
|
5301
5273
|
lineClass: 'd2h-code-side-linenumber',
|
5302
5274
|
contentClass: 'd2h-code-side-line',
|
5303
5275
|
});
|
5304
|
-
}
|
5305
|
-
|
5306
|
-
|
5276
|
+
}
|
5277
|
+
processChangedLines(isCombined, oldLines, newLines) {
|
5278
|
+
const fileHtml = {
|
5307
5279
|
right: '',
|
5308
5280
|
left: '',
|
5309
5281
|
};
|
5310
|
-
|
5311
|
-
for (
|
5312
|
-
|
5313
|
-
|
5314
|
-
|
5282
|
+
const maxLinesNumber = Math.max(oldLines.length, newLines.length);
|
5283
|
+
for (let i = 0; i < maxLinesNumber; i++) {
|
5284
|
+
const oldLine = oldLines[i];
|
5285
|
+
const newLine = newLines[i];
|
5286
|
+
const diff = oldLine !== undefined && newLine !== undefined
|
5315
5287
|
? diffHighlight(oldLine.content, newLine.content, isCombined, this.config)
|
5316
5288
|
: undefined;
|
5317
|
-
|
5318
|
-
?
|
5289
|
+
const preparedOldLine = oldLine !== undefined && oldLine.oldNumber !== undefined
|
5290
|
+
? Object.assign(Object.assign({}, (diff !== undefined
|
5319
5291
|
? {
|
5320
5292
|
prefix: diff.oldLine.prefix,
|
5321
5293
|
content: diff.oldLine.content,
|
5322
5294
|
type: CSSLineClass.DELETE_CHANGES,
|
5323
5295
|
}
|
5324
|
-
:
|
5325
|
-
|
5326
|
-
?
|
5296
|
+
: Object.assign(Object.assign({}, deconstructLine(oldLine.content, isCombined)), { type: toCSSClass(oldLine.type) }))), { number: oldLine.oldNumber }) : undefined;
|
5297
|
+
const preparedNewLine = newLine !== undefined && newLine.newNumber !== undefined
|
5298
|
+
? Object.assign(Object.assign({}, (diff !== undefined
|
5327
5299
|
? {
|
5328
5300
|
prefix: diff.newLine.prefix,
|
5329
5301
|
content: diff.newLine.content,
|
5330
5302
|
type: CSSLineClass.INSERT_CHANGES,
|
5331
5303
|
}
|
5332
|
-
:
|
5333
|
-
|
5304
|
+
: Object.assign(Object.assign({}, deconstructLine(newLine.content, isCombined)), { type: toCSSClass(newLine.type) }))), { number: newLine.newNumber }) : undefined;
|
5305
|
+
const { left, right } = this.generateLineHtml(preparedOldLine, preparedNewLine);
|
5334
5306
|
fileHtml.left += left;
|
5335
5307
|
fileHtml.right += right;
|
5336
5308
|
}
|
5337
5309
|
return fileHtml;
|
5338
|
-
}
|
5339
|
-
|
5310
|
+
}
|
5311
|
+
generateLineHtml(oldLine, newLine) {
|
5340
5312
|
return {
|
5341
5313
|
left: this.generateSingleHtml(oldLine),
|
5342
5314
|
right: this.generateSingleHtml(newLine),
|
5343
5315
|
};
|
5344
|
-
}
|
5345
|
-
|
5346
|
-
|
5347
|
-
|
5316
|
+
}
|
5317
|
+
generateSingleHtml(line) {
|
5318
|
+
const lineClass = 'd2h-code-side-linenumber';
|
5319
|
+
const contentClass = 'd2h-code-side-line';
|
5348
5320
|
return this.hoganUtils.render(side_by_side_renderer_genericTemplatesPath, 'line', {
|
5349
|
-
type: (line === null || line === void 0 ? void 0 : line.type) ||
|
5350
|
-
lineClass: line !== undefined ? lineClass :
|
5351
|
-
contentClass: line !== undefined ? contentClass :
|
5321
|
+
type: (line === null || line === void 0 ? void 0 : line.type) || `${CSSLineClass.CONTEXT} d2h-emptyplaceholder`,
|
5322
|
+
lineClass: line !== undefined ? lineClass : `${lineClass} d2h-code-side-emptyplaceholder`,
|
5323
|
+
contentClass: line !== undefined ? contentClass : `${contentClass} d2h-code-side-emptyplaceholder`,
|
5352
5324
|
prefix: (line === null || line === void 0 ? void 0 : line.prefix) === ' ' ? ' ' : line === null || line === void 0 ? void 0 : line.prefix,
|
5353
5325
|
content: line === null || line === void 0 ? void 0 : line.content,
|
5354
5326
|
lineNumber: line === null || line === void 0 ? void 0 : line.number,
|
5355
5327
|
});
|
5356
|
-
}
|
5357
|
-
|
5358
|
-
}());
|
5359
|
-
/* harmony default export */ const side_by_side_renderer = (SideBySideRenderer);
|
5328
|
+
}
|
5329
|
+
}
|
5360
5330
|
//# sourceMappingURL=side-by-side-renderer.js.map
|
5361
5331
|
// EXTERNAL MODULE: ../../node_modules/hogan.js/lib/hogan.js
|
5362
5332
|
var hogan = __webpack_require__(112);
|
5363
5333
|
;// CONCATENATED MODULE: ../../node_modules/diff2html/lib-esm/diff2html-templates.js
|
5364
5334
|
|
5365
|
-
|
5335
|
+
const defaultTemplates = {};
|
5366
5336
|
defaultTemplates["file-summary-line"] = new hogan.Template({ code: function (c, p, i) { var t = this; t.b(i = i || ""); t.b("<li class=\"d2h-file-list-line\">"); t.b("\n" + i); t.b(" <span class=\"d2h-file-name-wrapper\">"); t.b("\n" + i); t.b(t.rp("<fileIcon0", c, p, " ")); t.b(" <a href=\"#"); t.b(t.v(t.f("fileHtmlId", c, p, 0))); t.b("\" class=\"d2h-file-name\">"); t.b(t.v(t.f("fileName", c, p, 0))); t.b("</a>"); t.b("\n" + i); t.b(" <span class=\"d2h-file-stats\">"); t.b("\n" + i); t.b(" <span class=\"d2h-lines-added\">"); t.b(t.v(t.f("addedLines", c, p, 0))); t.b("</span>"); t.b("\n" + i); t.b(" <span class=\"d2h-lines-deleted\">"); t.b(t.v(t.f("deletedLines", c, p, 0))); t.b("</span>"); t.b("\n" + i); t.b(" </span>"); t.b("\n" + i); t.b(" </span>"); t.b("\n" + i); t.b("</li>"); return t.fl(); }, partials: { "<fileIcon0": { name: "fileIcon", partials: {}, subs: {} } }, subs: {} });
|
5367
|
-
defaultTemplates["file-summary-wrapper"] = new hogan.Template({ code: function (c, p, i) { var t = this; t.b(i = i || ""); t.b("<div class=\"d2h-file-list-wrapper\">"); t.b("\n" + i); t.b(" <div class=\"d2h-file-list-header\">"); t.b("\n" + i); t.b(" <span class=\"d2h-file-list-title\">Files changed ("); t.b(t.v(t.f("filesNumber", c, p, 0))); t.b(")</span>"); t.b("\n" + i); t.b(" <a class=\"d2h-file-switch d2h-hide\">hide</a>"); t.b("\n" + i); t.b(" <a class=\"d2h-file-switch d2h-show\">show</a>"); t.b("\n" + i); t.b(" </div>"); t.b("\n" + i); t.b(" <ol class=\"d2h-file-list\">"); t.b("\n" + i); t.b(" "); t.b(t.t(t.f("files", c, p, 0))); t.b("\n" + i); t.b(" </ol>"); t.b("\n" + i); t.b("</div>"); return t.fl(); }, partials: {}, subs: {} });
|
5337
|
+
defaultTemplates["file-summary-wrapper"] = new hogan.Template({ code: function (c, p, i) { var t = this; t.b(i = i || ""); t.b("<div class=\"d2h-file-list-wrapper "); t.b(t.v(t.f("colorScheme", c, p, 0))); t.b("\">"); t.b("\n" + i); t.b(" <div class=\"d2h-file-list-header\">"); t.b("\n" + i); t.b(" <span class=\"d2h-file-list-title\">Files changed ("); t.b(t.v(t.f("filesNumber", c, p, 0))); t.b(")</span>"); t.b("\n" + i); t.b(" <a class=\"d2h-file-switch d2h-hide\">hide</a>"); t.b("\n" + i); t.b(" <a class=\"d2h-file-switch d2h-show\">show</a>"); t.b("\n" + i); t.b(" </div>"); t.b("\n" + i); t.b(" <ol class=\"d2h-file-list\">"); t.b("\n" + i); t.b(" "); t.b(t.t(t.f("files", c, p, 0))); t.b("\n" + i); t.b(" </ol>"); t.b("\n" + i); t.b("</div>"); return t.fl(); }, partials: {}, subs: {} });
|
5368
5338
|
defaultTemplates["generic-block-header"] = new hogan.Template({ code: function (c, p, i) { var t = this; t.b(i = i || ""); t.b("<tr>"); t.b("\n" + i); t.b(" <td class=\""); t.b(t.v(t.f("lineClass", c, p, 0))); t.b(" "); t.b(t.v(t.d("CSSLineClass.INFO", c, p, 0))); t.b("\"></td>"); t.b("\n" + i); t.b(" <td class=\""); t.b(t.v(t.d("CSSLineClass.INFO", c, p, 0))); t.b("\">"); t.b("\n" + i); t.b(" <div class=\""); t.b(t.v(t.f("contentClass", c, p, 0))); t.b("\">"); if (t.s(t.f("blockHeader", c, p, 1), c, p, 0, 156, 173, "{{ }}")) {
|
5369
5339
|
t.rs(c, p, function (c, p, t) { t.b(t.t(t.f("blockHeader", c, p, 0))); });
|
5370
5340
|
c.pop();
|
@@ -5386,7 +5356,7 @@ defaultTemplates["generic-line"] = new hogan.Template({ code: function (c, p, i)
|
|
5386
5356
|
t.b(" <span class=\"d2h-code-line-ctn\"><br></span>");
|
5387
5357
|
t.b("\n" + i);
|
5388
5358
|
} ; t.b(" </div>"); t.b("\n" + i); t.b(" </td>"); t.b("\n" + i); t.b("</tr>"); return t.fl(); }, partials: {}, subs: {} });
|
5389
|
-
defaultTemplates["generic-wrapper"] = new hogan.Template({ code: function (c, p, i) { var t = this; t.b(i = i || ""); t.b("<div class=\"d2h-wrapper\">"); t.b("\n" + i); t.b(" "); t.b(t.t(t.f("content", c, p, 0))); t.b("\n" + i); t.b("</div>"); return t.fl(); }, partials: {}, subs: {} });
|
5359
|
+
defaultTemplates["generic-wrapper"] = new hogan.Template({ code: function (c, p, i) { var t = this; t.b(i = i || ""); t.b("<div class=\"d2h-wrapper "); t.b(t.v(t.f("colorScheme", c, p, 0))); t.b("\">"); t.b("\n" + i); t.b(" "); t.b(t.t(t.f("content", c, p, 0))); t.b("\n" + i); t.b("</div>"); return t.fl(); }, partials: {}, subs: {} });
|
5390
5360
|
defaultTemplates["icon-file-added"] = new hogan.Template({ code: function (c, p, i) { var t = this; t.b(i = i || ""); t.b("<svg aria-hidden=\"true\" class=\"d2h-icon d2h-added\" height=\"16\" title=\"added\" version=\"1.1\" viewBox=\"0 0 14 16\""); t.b("\n" + i); t.b(" width=\"14\">"); t.b("\n" + i); t.b(" <path d=\"M13 1H1C0.45 1 0 1.45 0 2v12c0 0.55 0.45 1 1 1h12c0.55 0 1-0.45 1-1V2c0-0.55-0.45-1-1-1z m0 13H1V2h12v12zM6 9H3V7h3V4h2v3h3v2H8v3H6V9z\"></path>"); t.b("\n" + i); t.b("</svg>"); return t.fl(); }, partials: {}, subs: {} });
|
5391
5361
|
defaultTemplates["icon-file-changed"] = new hogan.Template({ code: function (c, p, i) { var t = this; t.b(i = i || ""); t.b("<svg aria-hidden=\"true\" class=\"d2h-icon d2h-changed\" height=\"16\" title=\"modified\" version=\"1.1\""); t.b("\n" + i); t.b(" viewBox=\"0 0 14 16\" width=\"14\">"); t.b("\n" + i); t.b(" <path d=\"M13 1H1C0.45 1 0 1.45 0 2v12c0 0.55 0.45 1 1 1h12c0.55 0 1-0.45 1-1V2c0-0.55-0.45-1-1-1z m0 13H1V2h12v12zM4 8c0-1.66 1.34-3 3-3s3 1.34 3 3-1.34 3-3 3-3-1.34-3-3z\"></path>"); t.b("\n" + i); t.b("</svg>"); return t.fl(); }, partials: {}, subs: {} });
|
5392
5362
|
defaultTemplates["icon-file-deleted"] = new hogan.Template({ code: function (c, p, i) { var t = this; t.b(i = i || ""); t.b("<svg aria-hidden=\"true\" class=\"d2h-icon d2h-deleted\" height=\"16\" title=\"removed\" version=\"1.1\""); t.b("\n" + i); t.b(" viewBox=\"0 0 14 16\" width=\"14\">"); t.b("\n" + i); t.b(" <path d=\"M13 1H1C0.45 1 0 1.45 0 2v12c0 0.55 0.45 1 1 1h12c0.55 0 1-0.45 1-1V2c0-0.55-0.45-1-1-1z m0 13H1V2h12v12zM11 9H3V7h8v2z\"></path>"); t.b("\n" + i); t.b("</svg>"); return t.fl(); }, partials: {}, subs: {} });
|
@@ -5401,85 +5371,58 @@ defaultTemplates["tag-file-deleted"] = new hogan.Template({ code: function (c, p
|
|
5401
5371
|
defaultTemplates["tag-file-renamed"] = new hogan.Template({ code: function (c, p, i) { var t = this; t.b(i = i || ""); t.b("<span class=\"d2h-tag d2h-moved d2h-moved-tag\">RENAMED</span>"); return t.fl(); }, partials: {}, subs: {} });
|
5402
5372
|
//# sourceMappingURL=diff2html-templates.js.map
|
5403
5373
|
;// CONCATENATED MODULE: ../../node_modules/diff2html/lib-esm/hoganjs-utils.js
|
5404
|
-
var hoganjs_utils_assign = (undefined && undefined.__assign) || function () {
|
5405
|
-
hoganjs_utils_assign = Object.assign || function(t) {
|
5406
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
5407
|
-
s = arguments[i];
|
5408
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
5409
|
-
t[p] = s[p];
|
5410
|
-
}
|
5411
|
-
return t;
|
5412
|
-
};
|
5413
|
-
return hoganjs_utils_assign.apply(this, arguments);
|
5414
|
-
};
|
5415
5374
|
|
5416
5375
|
|
5417
|
-
|
5418
|
-
|
5419
|
-
|
5420
|
-
|
5421
|
-
|
5422
|
-
var name = _a[0], templateString = _a[1];
|
5423
|
-
var compiledTemplate = hogan.compile(templateString, { asString: false });
|
5424
|
-
return hoganjs_utils_assign(hoganjs_utils_assign({}, previousTemplates), (_b = {}, _b[name] = compiledTemplate, _b));
|
5376
|
+
class HoganJsUtils {
|
5377
|
+
constructor({ compiledTemplates = {}, rawTemplates = {} }) {
|
5378
|
+
const compiledRawTemplates = Object.entries(rawTemplates).reduce((previousTemplates, [name, templateString]) => {
|
5379
|
+
const compiledTemplate = hogan.compile(templateString, { asString: false });
|
5380
|
+
return Object.assign(Object.assign({}, previousTemplates), { [name]: compiledTemplate });
|
5425
5381
|
}, {});
|
5426
|
-
this.preCompiledTemplates =
|
5382
|
+
this.preCompiledTemplates = Object.assign(Object.assign(Object.assign({}, defaultTemplates), compiledTemplates), compiledRawTemplates);
|
5427
5383
|
}
|
5428
|
-
|
5384
|
+
static compile(templateString) {
|
5429
5385
|
return hogan.compile(templateString, { asString: false });
|
5430
|
-
}
|
5431
|
-
|
5432
|
-
|
5386
|
+
}
|
5387
|
+
render(namespace, view, params, partials, indent) {
|
5388
|
+
const templateKey = this.templateKey(namespace, view);
|
5433
5389
|
try {
|
5434
|
-
|
5390
|
+
const template = this.preCompiledTemplates[templateKey];
|
5435
5391
|
return template.render(params, partials, indent);
|
5436
5392
|
}
|
5437
5393
|
catch (e) {
|
5438
|
-
throw new Error(
|
5394
|
+
throw new Error(`Could not find template to render '${templateKey}'`);
|
5439
5395
|
}
|
5440
|
-
}
|
5441
|
-
|
5396
|
+
}
|
5397
|
+
template(namespace, view) {
|
5442
5398
|
return this.preCompiledTemplates[this.templateKey(namespace, view)];
|
5443
|
-
}
|
5444
|
-
|
5445
|
-
return
|
5446
|
-
}
|
5447
|
-
|
5448
|
-
}());
|
5449
|
-
/* harmony default export */ const hoganjs_utils = (HoganJsUtils);
|
5399
|
+
}
|
5400
|
+
templateKey(namespace, view) {
|
5401
|
+
return `${namespace}-${view}`;
|
5402
|
+
}
|
5403
|
+
}
|
5450
5404
|
//# sourceMappingURL=hoganjs-utils.js.map
|
5451
5405
|
;// CONCATENATED MODULE: ../../node_modules/diff2html/lib-esm/diff2html.js
|
5452
|
-
var diff2html_assign = (undefined && undefined.__assign) || function () {
|
5453
|
-
diff2html_assign = Object.assign || function(t) {
|
5454
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
5455
|
-
s = arguments[i];
|
5456
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
5457
|
-
t[p] = s[p];
|
5458
|
-
}
|
5459
|
-
return t;
|
5460
|
-
};
|
5461
|
-
return diff2html_assign.apply(this, arguments);
|
5462
|
-
};
|
5463
5406
|
|
5464
5407
|
|
5465
5408
|
|
5466
5409
|
|
5467
5410
|
|
5468
5411
|
|
5469
|
-
|
5470
|
-
function diff2html_parse(diffInput, configuration) {
|
5471
|
-
|
5472
|
-
return DiffParser.parse(diffInput, diff2html_assign(diff2html_assign({}, defaultDiff2HtmlConfig), configuration));
|
5412
|
+
const defaultDiff2HtmlConfig = Object.assign(Object.assign(Object.assign({}, defaultLineByLineRendererConfig), defaultSideBySideRendererConfig), { outputFormat: OutputFormatType.LINE_BY_LINE, drawFileList: true });
|
5413
|
+
function diff2html_parse(diffInput, configuration = {}) {
|
5414
|
+
return DiffParser.parse(diffInput, Object.assign(Object.assign({}, defaultDiff2HtmlConfig), configuration));
|
5473
5415
|
}
|
5474
|
-
function html(diffInput, configuration) {
|
5475
|
-
|
5476
|
-
|
5477
|
-
|
5478
|
-
|
5479
|
-
|
5480
|
-
|
5481
|
-
|
5482
|
-
|
5416
|
+
function html(diffInput, configuration = {}) {
|
5417
|
+
const config = Object.assign(Object.assign({}, defaultDiff2HtmlConfig), configuration);
|
5418
|
+
const diffJson = typeof diffInput === 'string' ? parse(diffInput, config) : diffInput;
|
5419
|
+
const hoganUtils = new HoganJsUtils(config);
|
5420
|
+
const { colorScheme } = config;
|
5421
|
+
const fileListRendererConfig = { colorScheme };
|
5422
|
+
const fileList = config.drawFileList ? new FileListRenderer(hoganUtils, fileListRendererConfig).render(diffJson) : '';
|
5423
|
+
const diffOutput = config.outputFormat === 'side-by-side'
|
5424
|
+
? new SideBySideRenderer(hoganUtils, config).render(diffJson)
|
5425
|
+
: new LineByLineRenderer(hoganUtils, config).render(diffJson);
|
5483
5426
|
return fileList + diffOutput;
|
5484
5427
|
}
|
5485
5428
|
//# sourceMappingURL=diff2html.js.map
|