@wendongfly/zihi 1.1.0 → 1.1.2

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.
Files changed (157) hide show
  1. package/dist/index.js +1 -1
  2. package/dist/lib/xterm/README.md +27 -14
  3. package/dist/lib/xterm/css/xterm.css +81 -5
  4. package/dist/lib/xterm/lib/xterm.js +1 -1
  5. package/dist/lib/xterm/lib/xterm.js.map +1 -1
  6. package/dist/lib/xterm/lib/xterm.mjs +53 -0
  7. package/dist/lib/xterm/lib/xterm.mjs.map +7 -0
  8. package/dist/lib/xterm/package.json +49 -38
  9. package/dist/lib/xterm/src/browser/AccessibilityManager.ts +185 -50
  10. package/dist/lib/xterm/src/browser/CoreBrowserTerminal.ts +1339 -0
  11. package/dist/lib/xterm/src/browser/Linkifier.ts +403 -0
  12. package/dist/lib/xterm/src/browser/LocalizableStrings.ts +15 -4
  13. package/dist/lib/xterm/src/browser/OscLinkProvider.ts +2 -1
  14. package/dist/lib/xterm/src/browser/RenderDebouncer.ts +6 -5
  15. package/dist/lib/xterm/src/browser/TimeBasedDebouncer.ts +2 -2
  16. package/dist/lib/xterm/src/browser/Types.ts +226 -0
  17. package/dist/lib/xterm/src/browser/Viewport.ts +148 -357
  18. package/dist/lib/xterm/src/browser/decorations/BufferDecorationRenderer.ts +17 -12
  19. package/dist/lib/xterm/src/browser/decorations/OverviewRulerRenderer.ts +47 -52
  20. package/dist/lib/xterm/src/browser/input/CompositionHelper.ts +5 -3
  21. package/dist/lib/xterm/src/browser/input/MoveToCell.ts +3 -1
  22. package/dist/lib/xterm/src/browser/public/Terminal.ts +39 -24
  23. package/dist/lib/xterm/src/browser/renderer/dom/DomRenderer.ts +76 -40
  24. package/dist/lib/xterm/src/browser/renderer/dom/DomRendererRowFactory.ts +47 -23
  25. package/dist/lib/xterm/src/browser/renderer/dom/WidthCache.ts +19 -9
  26. package/dist/lib/xterm/src/browser/renderer/shared/Constants.ts +0 -8
  27. package/dist/lib/xterm/src/browser/renderer/shared/RendererUtils.ts +38 -1
  28. package/dist/lib/xterm/src/browser/renderer/shared/SelectionRenderModel.ts +6 -4
  29. package/dist/lib/xterm/src/browser/renderer/shared/Types.ts +84 -0
  30. package/dist/lib/xterm/src/browser/selection/Types.ts +15 -0
  31. package/dist/lib/xterm/src/browser/services/CharSizeService.ts +57 -32
  32. package/dist/lib/xterm/src/browser/services/CoreBrowserService.ts +108 -4
  33. package/dist/lib/xterm/src/browser/services/LinkProviderService.ts +28 -0
  34. package/dist/lib/xterm/src/browser/services/RenderService.ts +132 -40
  35. package/dist/lib/xterm/src/browser/services/SelectionService.ts +19 -9
  36. package/dist/lib/xterm/src/browser/services/Services.ts +36 -16
  37. package/dist/lib/xterm/src/browser/services/ThemeService.ts +19 -58
  38. package/dist/lib/xterm/src/browser/shared/Constants.ts +8 -0
  39. package/dist/lib/xterm/src/common/CircularList.ts +5 -5
  40. package/dist/lib/xterm/src/common/Color.ts +34 -14
  41. package/dist/lib/xterm/src/common/CoreTerminal.ts +40 -41
  42. package/dist/lib/xterm/src/common/InputHandler.ts +177 -125
  43. package/dist/lib/xterm/src/common/Platform.ts +2 -1
  44. package/dist/lib/xterm/src/common/SortedList.ts +86 -10
  45. package/dist/lib/xterm/src/common/TaskQueue.ts +7 -7
  46. package/dist/lib/xterm/src/common/Types.ts +552 -0
  47. package/dist/lib/xterm/src/common/buffer/AttributeData.ts +15 -0
  48. package/dist/lib/xterm/src/common/buffer/Buffer.ts +15 -7
  49. package/dist/lib/xterm/src/common/buffer/BufferLine.ts +53 -22
  50. package/dist/lib/xterm/src/common/buffer/BufferRange.ts +1 -1
  51. package/dist/lib/xterm/src/common/buffer/BufferReflow.ts +9 -6
  52. package/dist/lib/xterm/src/common/buffer/BufferSet.ts +5 -5
  53. package/dist/lib/xterm/src/common/buffer/Constants.ts +10 -2
  54. package/dist/lib/xterm/src/common/buffer/Marker.ts +4 -4
  55. package/dist/lib/xterm/src/common/buffer/Types.ts +52 -0
  56. package/dist/lib/xterm/src/common/input/Keyboard.ts +2 -27
  57. package/dist/lib/xterm/src/common/input/UnicodeV6.ts +18 -5
  58. package/dist/lib/xterm/src/common/input/WriteBuffer.ts +9 -8
  59. package/dist/lib/xterm/src/common/parser/EscapeSequenceParser.ts +13 -13
  60. package/dist/lib/xterm/src/common/parser/Types.ts +275 -0
  61. package/dist/lib/xterm/src/common/public/AddonManager.ts +1 -1
  62. package/dist/lib/xterm/src/common/public/BufferApiView.ts +1 -1
  63. package/dist/lib/xterm/src/common/public/BufferLineApiView.ts +1 -1
  64. package/dist/lib/xterm/src/common/public/BufferNamespaceApi.ts +4 -4
  65. package/dist/lib/xterm/src/common/public/ParserApi.ts +1 -1
  66. package/dist/lib/xterm/src/common/public/UnicodeApi.ts +1 -1
  67. package/dist/lib/xterm/src/common/services/BufferService.ts +14 -11
  68. package/dist/lib/xterm/src/common/services/CoreMouseService.ts +53 -6
  69. package/dist/lib/xterm/src/common/services/CoreService.ts +13 -8
  70. package/dist/lib/xterm/src/common/services/DecorationService.ts +11 -11
  71. package/dist/lib/xterm/src/common/services/InstantiationService.ts +1 -1
  72. package/dist/lib/xterm/src/common/services/LogService.ts +2 -2
  73. package/dist/lib/xterm/src/common/services/OptionsService.ts +16 -5
  74. package/dist/lib/xterm/src/common/services/ServiceRegistry.ts +1 -1
  75. package/dist/lib/xterm/src/common/services/Services.ts +73 -19
  76. package/dist/lib/xterm/src/common/services/UnicodeService.ts +30 -5
  77. package/dist/lib/xterm/src/vs/base/browser/browser.ts +141 -0
  78. package/dist/lib/xterm/src/vs/base/browser/canIUse.ts +49 -0
  79. package/dist/lib/xterm/src/vs/base/browser/dom.ts +2369 -0
  80. package/dist/lib/xterm/src/vs/base/browser/fastDomNode.ts +316 -0
  81. package/dist/lib/xterm/src/vs/base/browser/globalPointerMoveMonitor.ts +112 -0
  82. package/dist/lib/xterm/src/vs/base/browser/iframe.ts +135 -0
  83. package/dist/lib/xterm/src/vs/base/browser/keyboardEvent.ts +213 -0
  84. package/dist/lib/xterm/src/vs/base/browser/mouseEvent.ts +229 -0
  85. package/dist/lib/xterm/src/vs/base/browser/touch.ts +372 -0
  86. package/dist/lib/xterm/src/vs/base/browser/ui/scrollbar/abstractScrollbar.ts +303 -0
  87. package/dist/lib/xterm/src/vs/base/browser/ui/scrollbar/horizontalScrollbar.ts +114 -0
  88. package/dist/lib/xterm/src/vs/base/browser/ui/scrollbar/scrollableElement.ts +720 -0
  89. package/dist/lib/xterm/src/vs/base/browser/ui/scrollbar/scrollableElementOptions.ts +165 -0
  90. package/dist/lib/xterm/src/vs/base/browser/ui/scrollbar/scrollbarArrow.ts +114 -0
  91. package/dist/lib/xterm/src/vs/base/browser/ui/scrollbar/scrollbarState.ts +243 -0
  92. package/dist/lib/xterm/src/vs/base/browser/ui/scrollbar/scrollbarVisibilityController.ts +118 -0
  93. package/dist/lib/xterm/src/vs/base/browser/ui/scrollbar/verticalScrollbar.ts +116 -0
  94. package/dist/lib/xterm/src/vs/base/browser/ui/widget.ts +57 -0
  95. package/dist/lib/xterm/src/vs/base/browser/window.ts +14 -0
  96. package/dist/lib/xterm/src/vs/base/common/arrays.ts +887 -0
  97. package/dist/lib/xterm/src/vs/base/common/arraysFind.ts +202 -0
  98. package/dist/lib/xterm/src/vs/base/common/assert.ts +71 -0
  99. package/dist/lib/xterm/src/vs/base/common/async.ts +1992 -0
  100. package/dist/lib/xterm/src/vs/base/common/cancellation.ts +148 -0
  101. package/dist/lib/xterm/src/vs/base/common/charCode.ts +450 -0
  102. package/dist/lib/xterm/src/vs/base/common/collections.ts +140 -0
  103. package/dist/lib/xterm/src/vs/base/common/decorators.ts +130 -0
  104. package/dist/lib/xterm/src/vs/base/common/equals.ts +146 -0
  105. package/dist/lib/xterm/src/vs/base/common/errors.ts +303 -0
  106. package/dist/lib/xterm/src/vs/base/common/event.ts +1778 -0
  107. package/dist/lib/xterm/src/vs/base/common/functional.ts +32 -0
  108. package/dist/lib/xterm/src/vs/base/common/hash.ts +316 -0
  109. package/dist/lib/xterm/src/vs/base/common/iterator.ts +159 -0
  110. package/dist/lib/xterm/src/vs/base/common/keyCodes.ts +526 -0
  111. package/dist/lib/xterm/src/vs/base/common/keybindings.ts +284 -0
  112. package/dist/lib/xterm/src/vs/base/common/lazy.ts +47 -0
  113. package/dist/lib/xterm/src/vs/base/common/lifecycle.ts +801 -0
  114. package/dist/lib/xterm/src/vs/base/common/linkedList.ts +142 -0
  115. package/dist/lib/xterm/src/vs/base/common/map.ts +202 -0
  116. package/dist/lib/xterm/src/vs/base/common/numbers.ts +98 -0
  117. package/dist/lib/xterm/src/vs/base/common/observable.ts +76 -0
  118. package/dist/lib/xterm/src/vs/base/common/observableInternal/api.ts +31 -0
  119. package/dist/lib/xterm/src/vs/base/common/observableInternal/autorun.ts +281 -0
  120. package/dist/lib/xterm/src/vs/base/common/observableInternal/base.ts +489 -0
  121. package/dist/lib/xterm/src/vs/base/common/observableInternal/debugName.ts +145 -0
  122. package/dist/lib/xterm/src/vs/base/common/observableInternal/derived.ts +428 -0
  123. package/dist/lib/xterm/src/vs/base/common/observableInternal/lazyObservableValue.ts +146 -0
  124. package/dist/lib/xterm/src/vs/base/common/observableInternal/logging.ts +328 -0
  125. package/dist/lib/xterm/src/vs/base/common/observableInternal/promise.ts +209 -0
  126. package/dist/lib/xterm/src/vs/base/common/observableInternal/utils.ts +610 -0
  127. package/dist/lib/xterm/src/vs/base/common/platform.ts +281 -0
  128. package/dist/lib/xterm/src/vs/base/common/scrollable.ts +522 -0
  129. package/dist/lib/xterm/src/vs/base/common/sequence.ts +34 -0
  130. package/dist/lib/xterm/src/vs/base/common/stopwatch.ts +43 -0
  131. package/dist/lib/xterm/src/vs/base/common/strings.ts +557 -0
  132. package/dist/lib/xterm/src/vs/base/common/symbols.ts +9 -0
  133. package/dist/lib/xterm/src/vs/base/common/uint.ts +59 -0
  134. package/dist/lib/xterm/src/vs/patches/nls.ts +90 -0
  135. package/dist/lib/xterm/src/vs/typings/base-common.d.ts +20 -0
  136. package/dist/lib/xterm/src/vs/typings/require.d.ts +42 -0
  137. package/dist/lib/xterm/src/vs/typings/vscode-globals-nls.d.ts +36 -0
  138. package/dist/lib/xterm/src/vs/typings/vscode-globals-product.d.ts +33 -0
  139. package/dist/lib/xterm/typings/xterm.d.ts +156 -43
  140. package/dist/lib/xterm-fit/README.md +5 -5
  141. package/dist/lib/xterm-fit/lib/addon-fit.js +2 -0
  142. package/dist/lib/xterm-fit/lib/addon-fit.js.map +1 -0
  143. package/dist/lib/xterm-fit/lib/addon-fit.mjs +18 -0
  144. package/dist/lib/xterm-fit/lib/addon-fit.mjs.map +7 -0
  145. package/dist/lib/xterm-fit/package.json +9 -9
  146. package/dist/lib/xterm-fit/src/FitAddon.ts +7 -4
  147. package/dist/lib/xterm-fit/typings/addon-fit.d.ts +55 -0
  148. package/dist/lib/xterm-links/README.md +5 -5
  149. package/dist/lib/xterm-links/lib/addon-web-links.js +2 -0
  150. package/dist/lib/xterm-links/lib/addon-web-links.js.map +1 -0
  151. package/dist/lib/xterm-links/lib/addon-web-links.mjs +18 -0
  152. package/dist/lib/xterm-links/lib/addon-web-links.mjs.map +7 -0
  153. package/dist/lib/xterm-links/package.json +9 -9
  154. package/dist/lib/xterm-links/src/WebLinkProvider.ts +16 -15
  155. package/dist/lib/xterm-links/src/WebLinksAddon.ts +4 -3
  156. package/dist/lib/xterm-links/typings/addon-web-links.d.ts +57 -0
  157. package/package.json +5 -6
@@ -0,0 +1,226 @@
1
+ /**
2
+ * Copyright (c) 2017 The xterm.js authors. All rights reserved.
3
+ * @license MIT
4
+ */
5
+
6
+ import { CharData, IColor, ICoreTerminal, ITerminalOptions } from 'common/Types';
7
+ import { IBuffer } from 'common/buffer/Types';
8
+ import { IDisposable, Terminal as ITerminalApi } from '@xterm/xterm';
9
+ import { channels, css } from 'common/Color';
10
+ import type { Event } from 'vs/base/common/event';
11
+
12
+ /**
13
+ * A portion of the public API that are implemented identially internally and simply passed through.
14
+ */
15
+ type InternalPassthroughApis = Omit<ITerminalApi, 'buffer' | 'parser' | 'unicode' | 'modes' | 'writeln' | 'loadAddon'>;
16
+
17
+ export interface ITerminal extends InternalPassthroughApis, ICoreTerminal {
18
+ screenElement: HTMLElement | undefined;
19
+ browser: IBrowser;
20
+ buffer: IBuffer;
21
+ linkifier: ILinkifier2 | undefined;
22
+ options: Required<ITerminalOptions>;
23
+
24
+ onBlur: Event<void>;
25
+ onFocus: Event<void>;
26
+ onA11yChar: Event<string>;
27
+ onA11yTab: Event<number>;
28
+ onWillOpen: Event<HTMLElement>;
29
+
30
+ cancel(ev: MouseEvent | WheelEvent | KeyboardEvent | InputEvent, force?: boolean): boolean | void;
31
+ }
32
+
33
+ export type CustomKeyEventHandler = (event: KeyboardEvent) => boolean;
34
+ export type CustomWheelEventHandler = (event: WheelEvent) => boolean;
35
+
36
+ export type LineData = CharData[];
37
+
38
+ export interface ICompositionHelper {
39
+ readonly isComposing: boolean;
40
+ compositionstart(): void;
41
+ compositionupdate(ev: CompositionEvent): void;
42
+ compositionend(): void;
43
+ updateCompositionElements(dontRecurse?: boolean): void;
44
+ keydown(ev: KeyboardEvent): boolean;
45
+ }
46
+
47
+ export interface IBrowser {
48
+ isNode: boolean;
49
+ userAgent: string;
50
+ platform: string;
51
+ isFirefox: boolean;
52
+ isMac: boolean;
53
+ isIpad: boolean;
54
+ isIphone: boolean;
55
+ isWindows: boolean;
56
+ }
57
+
58
+ export interface IColorSet {
59
+ foreground: IColor;
60
+ background: IColor;
61
+ cursor: IColor;
62
+ cursorAccent: IColor;
63
+ selectionForeground: IColor | undefined;
64
+ selectionBackgroundTransparent: IColor;
65
+ /** The selection blended on top of background. */
66
+ selectionBackgroundOpaque: IColor;
67
+ selectionInactiveBackgroundTransparent: IColor;
68
+ selectionInactiveBackgroundOpaque: IColor;
69
+ scrollbarSliderBackground: IColor;
70
+ scrollbarSliderHoverBackground: IColor;
71
+ scrollbarSliderActiveBackground: IColor;
72
+ overviewRulerBorder: IColor;
73
+ ansi: IColor[];
74
+ /** Maps original colors to colors that respect minimum contrast ratio. */
75
+ contrastCache: IColorContrastCache;
76
+ /** Maps original colors to colors that respect _half_ of the minimum contrast ratio. */
77
+ halfContrastCache: IColorContrastCache;
78
+ }
79
+
80
+ export type ReadonlyColorSet = Readonly<Omit<IColorSet, 'ansi'>> & { ansi: Readonly<Pick<IColorSet, 'ansi'>['ansi']> };
81
+
82
+ export interface IColorContrastCache {
83
+ clear(): void;
84
+ setCss(bg: number, fg: number, value: string | null): void;
85
+ getCss(bg: number, fg: number): string | null | undefined;
86
+ setColor(bg: number, fg: number, value: IColor | null): void;
87
+ getColor(bg: number, fg: number): IColor | null | undefined;
88
+ }
89
+
90
+ export interface IPartialColorSet {
91
+ foreground: IColor;
92
+ background: IColor;
93
+ cursor?: IColor;
94
+ cursorAccent?: IColor;
95
+ selectionBackground?: IColor;
96
+ ansi: IColor[];
97
+ }
98
+
99
+ export interface IViewport extends IDisposable {
100
+ scrollBarWidth: number;
101
+ readonly onRequestScrollLines: Event<{ amount: number, suppressScrollEvent: boolean }>;
102
+ syncScrollArea(immediate?: boolean, force?: boolean): void;
103
+ getLinesScrolled(ev: WheelEvent): number;
104
+ getBufferElements(startLine: number, endLine?: number): { bufferElements: HTMLElement[], cursorElement?: HTMLElement };
105
+ handleWheel(ev: WheelEvent): boolean;
106
+ handleTouchStart(ev: TouchEvent): void;
107
+ handleTouchMove(ev: TouchEvent): boolean;
108
+ scrollLines(disp: number): void; // todo api name?
109
+ reset(): void;
110
+ }
111
+
112
+ export interface ILinkifierEvent {
113
+ x1: number;
114
+ y1: number;
115
+ x2: number;
116
+ y2: number;
117
+ cols: number;
118
+ fg: number | undefined;
119
+ }
120
+
121
+ interface ILinkState {
122
+ decorations: ILinkDecorations;
123
+ isHovered: boolean;
124
+ }
125
+ export interface ILinkWithState {
126
+ link: ILink;
127
+ state?: ILinkState;
128
+ }
129
+
130
+ export interface ILinkifier2 extends IDisposable {
131
+ onShowLinkUnderline: Event<ILinkifierEvent>;
132
+ onHideLinkUnderline: Event<ILinkifierEvent>;
133
+ readonly currentLink: ILinkWithState | undefined;
134
+ }
135
+
136
+ export interface ILink {
137
+ range: IBufferRange;
138
+ text: string;
139
+ decorations?: ILinkDecorations;
140
+ activate(event: MouseEvent, text: string): void;
141
+ hover?(event: MouseEvent, text: string): void;
142
+ leave?(event: MouseEvent, text: string): void;
143
+ dispose?(): void;
144
+ }
145
+
146
+ export interface ILinkDecorations {
147
+ pointerCursor: boolean;
148
+ underline: boolean;
149
+ }
150
+
151
+ export interface IBufferRange {
152
+ start: IBufferCellPosition;
153
+ end: IBufferCellPosition;
154
+ }
155
+
156
+ export interface IBufferCellPosition {
157
+ x: number;
158
+ y: number;
159
+ }
160
+
161
+ export type CharacterJoinerHandler = (text: string) => [number, number][];
162
+
163
+ export interface ICharacterJoiner {
164
+ id: number;
165
+ handler: CharacterJoinerHandler;
166
+ }
167
+
168
+ export interface IRenderDebouncer extends IDisposable {
169
+ refresh(rowStart: number | undefined, rowEnd: number | undefined, rowCount: number): void;
170
+ }
171
+
172
+ export interface IRenderDebouncerWithCallback extends IRenderDebouncer {
173
+ addRefreshCallback(callback: FrameRequestCallback): number;
174
+ }
175
+
176
+ export interface IBufferElementProvider {
177
+ provideBufferElements(): DocumentFragment | HTMLElement;
178
+ }
179
+
180
+ // An IIFE to generate DEFAULT_ANSI_COLORS.
181
+ export const DEFAULT_ANSI_COLORS = Object.freeze((() => {
182
+ const colors = [
183
+ // dark:
184
+ css.toColor('#2e3436'),
185
+ css.toColor('#cc0000'),
186
+ css.toColor('#4e9a06'),
187
+ css.toColor('#c4a000'),
188
+ css.toColor('#3465a4'),
189
+ css.toColor('#75507b'),
190
+ css.toColor('#06989a'),
191
+ css.toColor('#d3d7cf'),
192
+ // bright:
193
+ css.toColor('#555753'),
194
+ css.toColor('#ef2929'),
195
+ css.toColor('#8ae234'),
196
+ css.toColor('#fce94f'),
197
+ css.toColor('#729fcf'),
198
+ css.toColor('#ad7fa8'),
199
+ css.toColor('#34e2e2'),
200
+ css.toColor('#eeeeec')
201
+ ];
202
+
203
+ // Fill in the remaining 240 ANSI colors.
204
+ // Generate colors (16-231)
205
+ const v = [0x00, 0x5f, 0x87, 0xaf, 0xd7, 0xff];
206
+ for (let i = 0; i < 216; i++) {
207
+ const r = v[(i / 36) % 6 | 0];
208
+ const g = v[(i / 6) % 6 | 0];
209
+ const b = v[i % 6];
210
+ colors.push({
211
+ css: channels.toCss(r, g, b),
212
+ rgba: channels.toRgba(r, g, b)
213
+ });
214
+ }
215
+
216
+ // Generate greys (232-255)
217
+ for (let i = 0; i < 24; i++) {
218
+ const c = 8 + i * 10;
219
+ colors.push({
220
+ css: channels.toCss(c, c, c),
221
+ rgba: channels.toRgba(c, c, c)
222
+ });
223
+ }
224
+
225
+ return colors;
226
+ })());