@pierre/diffs 1.1.21 → 1.1.22
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/components/AdvancedVirtualizedFileDiff.d.ts.map +1 -1
- package/dist/components/File.d.ts +1 -0
- package/dist/components/File.d.ts.map +1 -1
- package/dist/components/File.js +13 -4
- package/dist/components/File.js.map +1 -1
- package/dist/components/FileDiff.d.ts +1 -0
- package/dist/components/FileDiff.d.ts.map +1 -1
- package/dist/components/FileDiff.js +13 -4
- package/dist/components/FileDiff.js.map +1 -1
- package/dist/components/FileStream.js +6 -3
- package/dist/components/FileStream.js.map +1 -1
- package/dist/components/UnresolvedFile.d.ts.map +1 -1
- package/dist/components/web-components.js +4 -0
- package/dist/components/web-components.js.map +1 -1
- package/dist/constants.d.ts +3 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +3 -1
- package/dist/constants.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.js +3 -3
- package/dist/style.js +1 -1
- package/dist/style.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/cssWrappers.d.ts +3 -2
- package/dist/utils/cssWrappers.d.ts.map +1 -1
- package/dist/utils/cssWrappers.js +13 -2
- package/dist/utils/cssWrappers.js.map +1 -1
- package/dist/utils/getFiletypeFromFileName.js +16 -0
- package/dist/utils/getFiletypeFromFileName.js.map +1 -1
- package/dist/utils/scrollbarGutter.d.ts +6 -0
- package/dist/utils/scrollbarGutter.d.ts.map +1 -0
- package/dist/utils/scrollbarGutter.js +28 -0
- package/dist/utils/scrollbarGutter.js.map +1 -0
- package/dist/worker/worker-portable.js +18 -0
- package/dist/worker/worker-portable.js.map +1 -1
- package/dist/worker/worker.js +16 -0
- package/dist/worker/worker.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY, DIFFS_SCROLLBAR_MEASURE_ATTRIBUTE } from "../constants.js";
|
|
2
|
+
|
|
3
|
+
//#region src/utils/scrollbarGutter.ts
|
|
4
|
+
let measuredScrollbarGutter;
|
|
5
|
+
function getMeasuredScrollbarGutter(shadowRoot) {
|
|
6
|
+
if (measuredScrollbarGutter != null) return measuredScrollbarGutter;
|
|
7
|
+
const host = shadowRoot.host;
|
|
8
|
+
if (typeof HTMLElement !== "undefined" && host instanceof HTMLElement && !host.isConnected) return;
|
|
9
|
+
const wrapper = document.createElement("div");
|
|
10
|
+
wrapper.setAttribute("data-code", "");
|
|
11
|
+
wrapper.setAttribute(DIFFS_SCROLLBAR_MEASURE_ATTRIBUTE, "true");
|
|
12
|
+
const child = document.createElement("div");
|
|
13
|
+
child.style.position = "relative";
|
|
14
|
+
child.style.width = "200%";
|
|
15
|
+
child.style.height = "200%";
|
|
16
|
+
wrapper.appendChild(child);
|
|
17
|
+
shadowRoot.appendChild(wrapper);
|
|
18
|
+
measuredScrollbarGutter = Math.max(wrapper.offsetHeight - wrapper.clientHeight, 0);
|
|
19
|
+
wrapper.remove();
|
|
20
|
+
return measuredScrollbarGutter;
|
|
21
|
+
}
|
|
22
|
+
function createMeasuredScrollbarGutterDeclaration(scrollbarGutter) {
|
|
23
|
+
return `${DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY}: ${scrollbarGutter == null ? "var(--diffs-scrollbar-gutter-fallback)" : `${scrollbarGutter}px`};`;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
//#endregion
|
|
27
|
+
export { createMeasuredScrollbarGutterDeclaration, getMeasuredScrollbarGutter };
|
|
28
|
+
//# sourceMappingURL=scrollbarGutter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scrollbarGutter.js","names":["measuredScrollbarGutter: number | undefined"],"sources":["../../src/utils/scrollbarGutter.ts"],"sourcesContent":["import {\n DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY,\n DIFFS_SCROLLBAR_MEASURE_ATTRIBUTE,\n} from '../constants';\n\nlet measuredScrollbarGutter: number | undefined;\n\n// Measures the horizontal scrollbar used by `[data-code]` once per page. The\n// hidden probe opts into the same selector as real code panes so custom\n// scrollbar CSS is reflected in the measured value.\nexport function getMeasuredScrollbarGutter(\n shadowRoot: ShadowRoot\n): number | undefined {\n if (measuredScrollbarGutter != null) {\n return measuredScrollbarGutter;\n }\n\n const host = shadowRoot.host;\n if (\n typeof HTMLElement !== 'undefined' &&\n host instanceof HTMLElement &&\n !host.isConnected\n ) {\n return undefined;\n }\n\n const wrapper = document.createElement('div');\n wrapper.setAttribute('data-code', '');\n wrapper.setAttribute(DIFFS_SCROLLBAR_MEASURE_ATTRIBUTE, 'true');\n\n const child = document.createElement('div');\n child.style.position = 'relative';\n child.style.width = '200%';\n child.style.height = '200%';\n wrapper.appendChild(child);\n\n shadowRoot.appendChild(wrapper);\n measuredScrollbarGutter = Math.max(\n wrapper.offsetHeight - wrapper.clientHeight,\n 0\n );\n wrapper.remove();\n return measuredScrollbarGutter;\n}\n\nexport function createMeasuredScrollbarGutterDeclaration(\n scrollbarGutter: number | undefined\n): string {\n const value =\n scrollbarGutter == null\n ? 'var(--diffs-scrollbar-gutter-fallback)'\n : `${scrollbarGutter}px`;\n return `${DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY}: ${value};`;\n}\n"],"mappings":";;;AAKA,IAAIA;AAKJ,SAAgB,2BACd,YACoB;AACpB,KAAI,2BAA2B,KAC7B,QAAO;CAGT,MAAM,OAAO,WAAW;AACxB,KACE,OAAO,gBAAgB,eACvB,gBAAgB,eAChB,CAAC,KAAK,YAEN;CAGF,MAAM,UAAU,SAAS,cAAc,MAAM;AAC7C,SAAQ,aAAa,aAAa,GAAG;AACrC,SAAQ,aAAa,mCAAmC,OAAO;CAE/D,MAAM,QAAQ,SAAS,cAAc,MAAM;AAC3C,OAAM,MAAM,WAAW;AACvB,OAAM,MAAM,QAAQ;AACpB,OAAM,MAAM,SAAS;AACrB,SAAQ,YAAY,MAAM;AAE1B,YAAW,YAAY,QAAQ;AAC/B,2BAA0B,KAAK,IAC7B,QAAQ,eAAe,QAAQ,cAC/B,EACD;AACD,SAAQ,QAAQ;AAChB,QAAO;;AAGT,SAAgB,yCACd,iBACQ;AAKR,QAAO,GAAG,yCAAyC,IAHjD,mBAAmB,OACf,2CACA,GAAG,gBAAgB,IACoC"}
|
|
@@ -12158,6 +12158,8 @@ const DEFAULT_THEMES = {
|
|
|
12158
12158
|
const THEME_CSS_ATTRIBUTE = "data-theme-css";
|
|
12159
12159
|
const UNSAFE_CSS_ATTRIBUTE = "data-unsafe-css";
|
|
12160
12160
|
const CORE_CSS_ATTRIBUTE = "data-core-css";
|
|
12161
|
+
const DIFFS_SCROLLBAR_MEASURE_ATTRIBUTE = "data-diffs-scrollbar-measure";
|
|
12162
|
+
const DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY = "--diffs-scrollbar-gutter-measured";
|
|
12161
12163
|
const DEFAULT_COLLAPSED_CONTEXT_THRESHOLD = 1;
|
|
12162
12164
|
const DEFAULT_VIRTUAL_FILE_METRICS = {
|
|
12163
12165
|
hunkLineCount: 50,
|
|
@@ -12497,6 +12499,22 @@ const EXTENSION_TO_FILE_FORMAT = {
|
|
|
12497
12499
|
rst: "rst",
|
|
12498
12500
|
rake: "ruby",
|
|
12499
12501
|
gemspec: "ruby",
|
|
12502
|
+
jbuilder: "ruby",
|
|
12503
|
+
builder: "ruby",
|
|
12504
|
+
rabl: "ruby",
|
|
12505
|
+
arb: "ruby",
|
|
12506
|
+
ru: "ruby",
|
|
12507
|
+
podspec: "ruby",
|
|
12508
|
+
Gemfile: "ruby",
|
|
12509
|
+
Rakefile: "ruby",
|
|
12510
|
+
Guardfile: "ruby",
|
|
12511
|
+
Capfile: "ruby",
|
|
12512
|
+
Berksfile: "ruby",
|
|
12513
|
+
Brewfile: "ruby",
|
|
12514
|
+
Vagrantfile: "ruby",
|
|
12515
|
+
Thorfile: "ruby",
|
|
12516
|
+
Appraisals: "ruby",
|
|
12517
|
+
Dangerfile: "ruby",
|
|
12500
12518
|
sas: "sas",
|
|
12501
12519
|
sass: "sass",
|
|
12502
12520
|
scala: "scala",
|