happy-dom 12.6.0 → 12.8.0
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.
Potentially problematic release.
This version of happy-dom might be problematic. Click here for more details.
- package/cjs/clipboard/Clipboard.cjs +103 -0
- package/cjs/clipboard/Clipboard.cjs.map +1 -0
- package/cjs/clipboard/Clipboard.d.ts +42 -0
- package/cjs/clipboard/Clipboard.d.ts.map +1 -0
- package/cjs/clipboard/ClipboardItem.cjs +69 -0
- package/cjs/clipboard/ClipboardItem.cjs.map +1 -0
- package/cjs/clipboard/ClipboardItem.d.ts +37 -0
- package/cjs/clipboard/ClipboardItem.d.ts.map +1 -0
- package/cjs/event/DataTransfer.cjs +71 -2
- package/cjs/event/DataTransfer.cjs.map +1 -1
- package/cjs/event/DataTransfer.d.ts +41 -4
- package/cjs/event/DataTransfer.d.ts.map +1 -1
- package/cjs/event/DataTransferItem.cjs +27 -9
- package/cjs/event/DataTransferItem.cjs.map +1 -1
- package/cjs/event/DataTransferItem.d.ts +10 -4
- package/cjs/event/DataTransferItem.d.ts.map +1 -1
- package/cjs/event/DataTransferItemList.cjs +16 -8
- package/cjs/event/DataTransferItemList.cjs.map +1 -1
- package/cjs/event/DataTransferItemList.d.ts +3 -3
- package/cjs/event/DataTransferItemList.d.ts.map +1 -1
- package/cjs/event/events/ClipboardEvent.cjs +23 -0
- package/cjs/event/events/ClipboardEvent.cjs.map +1 -0
- package/cjs/event/events/ClipboardEvent.d.ts +17 -0
- package/cjs/event/events/ClipboardEvent.d.ts.map +1 -0
- package/cjs/event/events/IClipboardEventInit.cjs +3 -0
- package/cjs/event/events/IClipboardEventInit.cjs.map +1 -0
- package/cjs/event/events/IClipboardEventInit.d.ts +6 -0
- package/cjs/event/events/IClipboardEventInit.d.ts.map +1 -0
- package/cjs/index.cjs +15 -2
- package/cjs/index.cjs.map +1 -1
- package/cjs/index.d.ts +8 -1
- package/cjs/index.d.ts.map +1 -1
- package/cjs/navigator/Navigator.cjs +38 -5
- package/cjs/navigator/Navigator.cjs.map +1 -1
- package/cjs/navigator/Navigator.d.ts +17 -4
- package/cjs/navigator/Navigator.d.ts.map +1 -1
- package/cjs/nodes/element/Element.cjs +2 -0
- package/cjs/nodes/element/Element.cjs.map +1 -1
- package/cjs/nodes/element/Element.d.ts +1 -0
- package/cjs/nodes/element/Element.d.ts.map +1 -1
- package/cjs/nodes/element/IElement.d.ts +1 -0
- package/cjs/nodes/element/IElement.d.ts.map +1 -1
- package/cjs/nodes/html-input-element/HTMLInputElement.cjs +48 -25
- package/cjs/nodes/html-input-element/HTMLInputElement.cjs.map +1 -1
- package/cjs/nodes/html-input-element/HTMLInputElement.d.ts.map +1 -1
- package/cjs/permissions/PermissionNameEnum.cjs +35 -0
- package/cjs/permissions/PermissionNameEnum.cjs.map +1 -0
- package/cjs/permissions/PermissionNameEnum.d.ts +32 -0
- package/cjs/permissions/PermissionNameEnum.d.ts.map +1 -0
- package/cjs/permissions/PermissionStatus.cjs +26 -0
- package/cjs/permissions/PermissionStatus.cjs.map +1 -0
- package/cjs/permissions/PermissionStatus.d.ts +19 -0
- package/cjs/permissions/PermissionStatus.d.ts.map +1 -0
- package/cjs/permissions/Permissions.cjs +46 -0
- package/cjs/permissions/Permissions.cjs.map +1 -0
- package/cjs/permissions/Permissions.d.ts +25 -0
- package/cjs/permissions/Permissions.d.ts.map +1 -0
- package/cjs/version.cjs +1 -1
- package/cjs/window/IWindow.d.ts +128 -21
- package/cjs/window/IWindow.d.ts.map +1 -1
- package/cjs/window/Window.cjs +127 -35
- package/cjs/window/Window.cjs.map +1 -1
- package/cjs/window/Window.d.ts +131 -30
- package/cjs/window/Window.d.ts.map +1 -1
- package/lib/clipboard/Clipboard.d.ts +42 -0
- package/lib/clipboard/Clipboard.d.ts.map +1 -0
- package/lib/clipboard/Clipboard.js +98 -0
- package/lib/clipboard/Clipboard.js.map +1 -0
- package/lib/clipboard/ClipboardItem.d.ts +37 -0
- package/lib/clipboard/ClipboardItem.d.ts.map +1 -0
- package/lib/clipboard/ClipboardItem.js +64 -0
- package/lib/clipboard/ClipboardItem.js.map +1 -0
- package/lib/event/DataTransfer.d.ts +41 -4
- package/lib/event/DataTransfer.d.ts.map +1 -1
- package/lib/event/DataTransfer.js +71 -2
- package/lib/event/DataTransfer.js.map +1 -1
- package/lib/event/DataTransferItem.d.ts +10 -4
- package/lib/event/DataTransferItem.d.ts.map +1 -1
- package/lib/event/DataTransferItem.js +29 -10
- package/lib/event/DataTransferItem.js.map +1 -1
- package/lib/event/DataTransferItemList.d.ts +3 -3
- package/lib/event/DataTransferItemList.d.ts.map +1 -1
- package/lib/event/DataTransferItemList.js +16 -8
- package/lib/event/DataTransferItemList.js.map +1 -1
- package/lib/event/events/ClipboardEvent.d.ts +17 -0
- package/lib/event/events/ClipboardEvent.d.ts.map +1 -0
- package/lib/event/events/ClipboardEvent.js +17 -0
- package/lib/event/events/ClipboardEvent.js.map +1 -0
- package/lib/event/events/IClipboardEventInit.d.ts +6 -0
- package/lib/event/events/IClipboardEventInit.d.ts.map +1 -0
- package/lib/event/events/IClipboardEventInit.js +2 -0
- package/lib/event/events/IClipboardEventInit.js.map +1 -0
- package/lib/index.d.ts +8 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +7 -1
- package/lib/index.js.map +1 -1
- package/lib/navigator/Navigator.d.ts +17 -4
- package/lib/navigator/Navigator.d.ts.map +1 -1
- package/lib/navigator/Navigator.js +40 -6
- package/lib/navigator/Navigator.js.map +1 -1
- package/lib/nodes/element/Element.d.ts +1 -0
- package/lib/nodes/element/Element.d.ts.map +1 -1
- package/lib/nodes/element/Element.js +2 -0
- package/lib/nodes/element/Element.js.map +1 -1
- package/lib/nodes/element/IElement.d.ts +1 -0
- package/lib/nodes/element/IElement.d.ts.map +1 -1
- package/lib/nodes/html-input-element/HTMLInputElement.d.ts.map +1 -1
- package/lib/nodes/html-input-element/HTMLInputElement.js +48 -25
- package/lib/nodes/html-input-element/HTMLInputElement.js.map +1 -1
- package/lib/permissions/PermissionNameEnum.d.ts +32 -0
- package/lib/permissions/PermissionNameEnum.d.ts.map +1 -0
- package/lib/permissions/PermissionNameEnum.js +33 -0
- package/lib/permissions/PermissionNameEnum.js.map +1 -0
- package/lib/permissions/PermissionStatus.d.ts +19 -0
- package/lib/permissions/PermissionStatus.d.ts.map +1 -0
- package/lib/permissions/PermissionStatus.js +20 -0
- package/lib/permissions/PermissionStatus.js.map +1 -0
- package/lib/permissions/Permissions.d.ts +25 -0
- package/lib/permissions/Permissions.d.ts.map +1 -0
- package/lib/permissions/Permissions.js +41 -0
- package/lib/permissions/Permissions.js.map +1 -0
- package/lib/version.js +1 -1
- package/lib/window/IWindow.d.ts +128 -21
- package/lib/window/IWindow.d.ts.map +1 -1
- package/lib/window/Window.d.ts +131 -30
- package/lib/window/Window.d.ts.map +1 -1
- package/lib/window/Window.js +127 -35
- package/lib/window/Window.js.map +1 -1
- package/package.json +1 -1
- package/src/clipboard/Clipboard.ts +96 -0
- package/src/clipboard/ClipboardItem.ts +59 -0
- package/src/event/DataTransfer.ts +88 -4
- package/src/event/DataTransferItem.ts +16 -9
- package/src/event/DataTransferItemList.ts +17 -7
- package/src/event/events/ClipboardEvent.ts +22 -0
- package/src/event/events/IClipboardEventInit.ts +6 -0
- package/src/index.ts +15 -1
- package/src/navigator/Navigator.ts +27 -7
- package/src/nodes/element/Element.ts +2 -0
- package/src/nodes/element/IElement.ts +1 -0
- package/src/nodes/html-input-element/HTMLInputElement.ts +49 -22
- package/src/permissions/PermissionNameEnum.ts +32 -0
- package/src/permissions/PermissionStatus.ts +23 -0
- package/src/permissions/Permissions.ts +45 -0
- package/src/window/IWindow.ts +139 -23
- package/src/window/Window.ts +133 -38
- package/cjs/config/NonImplemenetedElementClasses.cjs +0 -55
- package/cjs/config/NonImplemenetedElementClasses.cjs.map +0 -1
- package/cjs/config/NonImplemenetedElementClasses.d.ts +0 -3
- package/cjs/config/NonImplemenetedElementClasses.d.ts.map +0 -1
- package/cjs/event/NonImplementedEventTypes.cjs +0 -48
- package/cjs/event/NonImplementedEventTypes.cjs.map +0 -1
- package/cjs/event/NonImplementedEventTypes.d.ts +0 -3
- package/cjs/event/NonImplementedEventTypes.d.ts.map +0 -1
- package/lib/config/NonImplemenetedElementClasses.d.ts +0 -3
- package/lib/config/NonImplemenetedElementClasses.d.ts.map +0 -1
- package/lib/config/NonImplemenetedElementClasses.js +0 -53
- package/lib/config/NonImplemenetedElementClasses.js.map +0 -1
- package/lib/event/NonImplementedEventTypes.d.ts +0 -3
- package/lib/event/NonImplementedEventTypes.d.ts.map +0 -1
- package/lib/event/NonImplementedEventTypes.js +0 -46
- package/lib/event/NonImplementedEventTypes.js.map +0 -1
- package/src/config/NonImplemenetedElementClasses.ts +0 -52
- package/src/event/NonImplementedEventTypes.ts +0 -45
package/lib/window/Window.js
CHANGED
@@ -50,9 +50,8 @@ import MessagePort from '../event/MessagePort.js';
|
|
50
50
|
import { URLSearchParams } from 'url';
|
51
51
|
import URL from '../url/URL.js';
|
52
52
|
import Location from '../location/Location.js';
|
53
|
-
import NonImplementedEventTypes from '../event/NonImplementedEventTypes.js';
|
54
53
|
import MutationObserver from '../mutation-observer/MutationObserver.js';
|
55
|
-
import
|
54
|
+
import MutationRecord from '../mutation-observer/MutationRecord.js';
|
56
55
|
import DOMParserImplementation from '../dom-parser/DOMParser.js';
|
57
56
|
import XMLSerializer from '../xml-serializer/XMLSerializer.js';
|
58
57
|
import ResizeObserver from '../resize-observer/ResizeObserver.js';
|
@@ -125,6 +124,11 @@ import WindowErrorUtility from './WindowErrorUtility.js';
|
|
125
124
|
import VirtualConsole from '../console/VirtualConsole.js';
|
126
125
|
import VirtualConsolePrinter from '../console/VirtualConsolePrinter.js';
|
127
126
|
import PackageVersion from '../version.js';
|
127
|
+
import Permissions from '../permissions/Permissions.js';
|
128
|
+
import PermissionStatus from '../permissions/PermissionStatus.js';
|
129
|
+
import Clipboard from '../clipboard/Clipboard.js';
|
130
|
+
import ClipboardItem from '../clipboard/ClipboardItem.js';
|
131
|
+
import ClipboardEvent from '../event/events/ClipboardEvent.js';
|
128
132
|
const ORIGINAL_SET_TIMEOUT = setTimeout;
|
129
133
|
const ORIGINAL_CLEAR_TIMEOUT = clearTimeout;
|
130
134
|
const ORIGINAL_SET_INTERVAL = setInterval;
|
@@ -150,7 +154,7 @@ export default class Window extends EventTarget {
|
|
150
154
|
*/
|
151
155
|
constructor(options) {
|
152
156
|
super();
|
153
|
-
//
|
157
|
+
// Happy DOM property.
|
154
158
|
this.happyDOM = {
|
155
159
|
whenAsyncComplete: async () => {
|
156
160
|
return await this.happyDOM.asyncTaskManager.whenComplete();
|
@@ -196,8 +200,23 @@ export default class Window extends EventTarget {
|
|
196
200
|
setInnerWidth: (width) => this.happyDOM.setWindowSize({ width }),
|
197
201
|
setInnerHeight: (height) => this.happyDOM.setWindowSize({ height })
|
198
202
|
};
|
199
|
-
//
|
203
|
+
// Nodes
|
200
204
|
this.Node = Node;
|
205
|
+
this.Attr = Attr;
|
206
|
+
this.SVGSVGElement = SVGSVGElement;
|
207
|
+
this.SVGElement = SVGElement;
|
208
|
+
this.SVGGraphicsElement = SVGGraphicsElement;
|
209
|
+
this.Text = Text;
|
210
|
+
this.Comment = Comment;
|
211
|
+
this.ShadowRoot = ShadowRoot;
|
212
|
+
this.ProcessingInstruction = ProcessingInstruction;
|
213
|
+
this.Element = Element;
|
214
|
+
this.CharacterData = CharacterData;
|
215
|
+
this.Document = Document;
|
216
|
+
this.HTMLDocument = HTMLDocument;
|
217
|
+
this.XMLDocument = XMLDocument;
|
218
|
+
this.SVGDocument = SVGDocument;
|
219
|
+
// Element classes
|
201
220
|
this.HTMLElement = HTMLElement;
|
202
221
|
this.HTMLUnknownElement = HTMLUnknownElement;
|
203
222
|
this.HTMLTemplateElement = HTMLTemplateElement;
|
@@ -218,25 +237,57 @@ export default class Window extends EventTarget {
|
|
218
237
|
this.HTMLBaseElement = HTMLBaseElement;
|
219
238
|
this.HTMLIFrameElement = HTMLIFrameElement;
|
220
239
|
this.HTMLDialogElement = HTMLDialogElement;
|
221
|
-
|
222
|
-
this.
|
223
|
-
this.
|
224
|
-
this.
|
225
|
-
this.
|
226
|
-
this.
|
227
|
-
this.
|
228
|
-
this.
|
229
|
-
this.
|
230
|
-
this.
|
231
|
-
this.
|
232
|
-
this.
|
233
|
-
this.
|
234
|
-
this.
|
235
|
-
this.
|
236
|
-
this.
|
237
|
-
this.
|
238
|
-
this.
|
239
|
-
this.
|
240
|
+
// Non-implemented element classes
|
241
|
+
this.HTMLHeadElement = HTMLElement;
|
242
|
+
this.HTMLTitleElement = HTMLElement;
|
243
|
+
this.HTMLBodyElement = HTMLElement;
|
244
|
+
this.HTMLHeadingElement = HTMLElement;
|
245
|
+
this.HTMLParagraphElement = HTMLElement;
|
246
|
+
this.HTMLHRElement = HTMLElement;
|
247
|
+
this.HTMLPreElement = HTMLElement;
|
248
|
+
this.HTMLUListElement = HTMLElement;
|
249
|
+
this.HTMLOListElement = HTMLElement;
|
250
|
+
this.HTMLLIElement = HTMLElement;
|
251
|
+
this.HTMLMenuElement = HTMLElement;
|
252
|
+
this.HTMLDListElement = HTMLElement;
|
253
|
+
this.HTMLDivElement = HTMLElement;
|
254
|
+
this.HTMLAnchorElement = HTMLElement;
|
255
|
+
this.HTMLAreaElement = HTMLElement;
|
256
|
+
this.HTMLBRElement = HTMLElement;
|
257
|
+
this.HTMLButtonElement = HTMLElement;
|
258
|
+
this.HTMLCanvasElement = HTMLElement;
|
259
|
+
this.HTMLDataElement = HTMLElement;
|
260
|
+
this.HTMLDataListElement = HTMLElement;
|
261
|
+
this.HTMLDetailsElement = HTMLElement;
|
262
|
+
this.HTMLDirectoryElement = HTMLElement;
|
263
|
+
this.HTMLFieldSetElement = HTMLElement;
|
264
|
+
this.HTMLFontElement = HTMLElement;
|
265
|
+
this.HTMLHtmlElement = HTMLElement;
|
266
|
+
this.HTMLLegendElement = HTMLElement;
|
267
|
+
this.HTMLMapElement = HTMLElement;
|
268
|
+
this.HTMLMarqueeElement = HTMLElement;
|
269
|
+
this.HTMLMeterElement = HTMLElement;
|
270
|
+
this.HTMLModElement = HTMLElement;
|
271
|
+
this.HTMLOutputElement = HTMLElement;
|
272
|
+
this.HTMLPictureElement = HTMLElement;
|
273
|
+
this.HTMLProgressElement = HTMLElement;
|
274
|
+
this.HTMLQuoteElement = HTMLElement;
|
275
|
+
this.HTMLSourceElement = HTMLElement;
|
276
|
+
this.HTMLSpanElement = HTMLElement;
|
277
|
+
this.HTMLTableCaptionElement = HTMLElement;
|
278
|
+
this.HTMLTableCellElement = HTMLElement;
|
279
|
+
this.HTMLTableColElement = HTMLElement;
|
280
|
+
this.HTMLTableElement = HTMLElement;
|
281
|
+
this.HTMLTimeElement = HTMLElement;
|
282
|
+
this.HTMLTableRowElement = HTMLElement;
|
283
|
+
this.HTMLTableSectionElement = HTMLElement;
|
284
|
+
this.HTMLFrameElement = HTMLElement;
|
285
|
+
this.HTMLFrameSetElement = HTMLElement;
|
286
|
+
this.HTMLEmbedElement = HTMLElement;
|
287
|
+
this.HTMLObjectElement = HTMLElement;
|
288
|
+
this.HTMLParamElement = HTMLElement;
|
289
|
+
this.HTMLTrackElement = HTMLElement;
|
290
|
+
// Events classes
|
240
291
|
this.Event = Event;
|
241
292
|
this.UIEvent = UIEvent;
|
242
293
|
this.CustomEvent = CustomEvent;
|
@@ -253,6 +304,55 @@ export default class Window extends EventTarget {
|
|
253
304
|
this.SubmitEvent = SubmitEvent;
|
254
305
|
this.ProgressEvent = ProgressEvent;
|
255
306
|
this.MediaQueryListEvent = MediaQueryListEvent;
|
307
|
+
this.ClipboardEvent = ClipboardEvent;
|
308
|
+
// Non-implemented event classes
|
309
|
+
this.AudioProcessingEvent = Event;
|
310
|
+
this.BeforeInputEvent = Event;
|
311
|
+
this.BeforeUnloadEvent = Event;
|
312
|
+
this.BlobEvent = Event;
|
313
|
+
this.CloseEvent = Event;
|
314
|
+
this.CompositionEvent = Event;
|
315
|
+
this.CSSFontFaceLoadEvent = Event;
|
316
|
+
this.DeviceLightEvent = Event;
|
317
|
+
this.DeviceMotionEvent = Event;
|
318
|
+
this.DeviceOrientationEvent = Event;
|
319
|
+
this.DeviceProximityEvent = Event;
|
320
|
+
this.DOMTransactionEvent = Event;
|
321
|
+
this.DragEvent = Event;
|
322
|
+
this.EditingBeforeInputEvent = Event;
|
323
|
+
this.FetchEvent = Event;
|
324
|
+
this.GamepadEvent = Event;
|
325
|
+
this.HashChangeEvent = Event;
|
326
|
+
this.IDBVersionChangeEvent = Event;
|
327
|
+
this.MediaStreamEvent = Event;
|
328
|
+
this.MutationEvent = Event;
|
329
|
+
this.OfflineAudioCompletionEvent = Event;
|
330
|
+
this.OverconstrainedError = Event;
|
331
|
+
this.PageTransitionEvent = Event;
|
332
|
+
this.PaymentRequestUpdateEvent = Event;
|
333
|
+
this.PopStateEvent = Event;
|
334
|
+
this.RelatedEvent = Event;
|
335
|
+
this.RTCDataChannelEvent = Event;
|
336
|
+
this.RTCIdentityErrorEvent = Event;
|
337
|
+
this.RTCIdentityEvent = Event;
|
338
|
+
this.RTCPeerConnectionIceEvent = Event;
|
339
|
+
this.SensorEvent = Event;
|
340
|
+
this.SVGEvent = Event;
|
341
|
+
this.SVGZoomEvent = Event;
|
342
|
+
this.TimeEvent = Event;
|
343
|
+
this.TouchEvent = Event;
|
344
|
+
this.TrackEvent = Event;
|
345
|
+
this.TransitionEvent = Event;
|
346
|
+
this.UserProximityEvent = Event;
|
347
|
+
this.WebGLContextEvent = Event;
|
348
|
+
this.TextEvent = Event;
|
349
|
+
// Other classes
|
350
|
+
this.NamedNodeMap = NamedNodeMap;
|
351
|
+
this.NodeFilter = NodeFilter;
|
352
|
+
this.NodeIterator = NodeIterator;
|
353
|
+
this.TreeWalker = TreeWalker;
|
354
|
+
this.MutationObserver = MutationObserver;
|
355
|
+
this.MutationRecord = MutationRecord;
|
256
356
|
this.EventTarget = EventTarget;
|
257
357
|
this.MessagePort = MessagePort;
|
258
358
|
this.DataTransfer = DataTransfer;
|
@@ -300,6 +400,10 @@ export default class Window extends EventTarget {
|
|
300
400
|
this.AbortController = AbortController;
|
301
401
|
this.AbortSignal = AbortSignal;
|
302
402
|
this.FormData = FormData;
|
403
|
+
this.Permissions = Permissions;
|
404
|
+
this.PermissionStatus = PermissionStatus;
|
405
|
+
this.Clipboard = Clipboard;
|
406
|
+
this.ClipboardItem = ClipboardItem;
|
303
407
|
// Events
|
304
408
|
this.onload = null;
|
305
409
|
this.onerror = null;
|
@@ -374,18 +478,6 @@ export default class Window extends EventTarget {
|
|
374
478
|
this._setInterval = ORIGINAL_SET_INTERVAL;
|
375
479
|
this._clearInterval = ORIGINAL_CLEAR_INTERVAL;
|
376
480
|
this._queueMicrotask = ORIGINAL_QUEUE_MICROTASK;
|
377
|
-
// Non-implemented event types
|
378
|
-
for (const eventType of NonImplementedEventTypes) {
|
379
|
-
if (!this[eventType]) {
|
380
|
-
this[eventType] = Event;
|
381
|
-
}
|
382
|
-
}
|
383
|
-
// Non implemented element classes
|
384
|
-
for (const className of NonImplemenetedElementClasses) {
|
385
|
-
if (!this[className]) {
|
386
|
-
this[className] = HTMLElement;
|
387
|
-
}
|
388
|
-
}
|
389
481
|
// Binds all methods to "this", so that it will use the correct context when called globally.
|
390
482
|
for (const key of Object.getOwnPropertyNames(Window.prototype).concat(Object.getOwnPropertyNames(EventTarget.prototype))) {
|
391
483
|
if (key !== 'constructor' &&
|
package/lib/window/Window.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Window.js","sourceRoot":"","sources":["../../src/window/Window.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Window.js","sourceRoot":"","sources":["../../src/window/Window.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -0,0 +1,96 @@
|
|
1
|
+
import DOMException from '../exception/DOMException.js';
|
2
|
+
import IWindow from '../window/IWindow.js';
|
3
|
+
import ClipboardItem from './ClipboardItem.js';
|
4
|
+
import Blob from '../file/Blob.js';
|
5
|
+
|
6
|
+
/**
|
7
|
+
* Clipboard API.
|
8
|
+
*
|
9
|
+
* Reference:
|
10
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/Clipboard.
|
11
|
+
*/
|
12
|
+
export default class Clipboard {
|
13
|
+
#ownerWindow: IWindow;
|
14
|
+
#data: ClipboardItem[] = [];
|
15
|
+
|
16
|
+
/**
|
17
|
+
* Constructor.
|
18
|
+
*
|
19
|
+
* @param ownerWindow Owner window.
|
20
|
+
*/
|
21
|
+
constructor(ownerWindow: IWindow) {
|
22
|
+
this.#ownerWindow = ownerWindow;
|
23
|
+
}
|
24
|
+
|
25
|
+
/**
|
26
|
+
* Returns data.
|
27
|
+
*
|
28
|
+
* @returns Data.
|
29
|
+
*/
|
30
|
+
public async read(): Promise<ClipboardItem[]> {
|
31
|
+
const permissionStatus = await this.#ownerWindow.navigator.permissions.query({
|
32
|
+
name: 'clipboard-read'
|
33
|
+
});
|
34
|
+
if (permissionStatus.state === 'denied') {
|
35
|
+
throw new DOMException(`Failed to execute 'read' on 'Clipboard': The request is not allowed`);
|
36
|
+
}
|
37
|
+
return this.#data;
|
38
|
+
}
|
39
|
+
|
40
|
+
/**
|
41
|
+
* Returns text.
|
42
|
+
*
|
43
|
+
* @returns Text.
|
44
|
+
*/
|
45
|
+
public async readText(): Promise<string> {
|
46
|
+
const permissionStatus = await this.#ownerWindow.navigator.permissions.query({
|
47
|
+
name: 'clipboard-read'
|
48
|
+
});
|
49
|
+
if (permissionStatus.state === 'denied') {
|
50
|
+
throw new DOMException(
|
51
|
+
`Failed to execute 'readText' on 'Clipboard': The request is not allowed`
|
52
|
+
);
|
53
|
+
}
|
54
|
+
let text = '';
|
55
|
+
for (const item of this.#data) {
|
56
|
+
if (item.types.includes('text/plain')) {
|
57
|
+
text += await (await item.getType('text/plain')).text();
|
58
|
+
}
|
59
|
+
}
|
60
|
+
return text;
|
61
|
+
}
|
62
|
+
|
63
|
+
/**
|
64
|
+
* Writes data.
|
65
|
+
*
|
66
|
+
* @param data Data.
|
67
|
+
*/
|
68
|
+
public async write(data: ClipboardItem[]): Promise<void> {
|
69
|
+
const permissionStatus = await this.#ownerWindow.navigator.permissions.query({
|
70
|
+
name: 'clipboard-write'
|
71
|
+
});
|
72
|
+
if (permissionStatus.state === 'denied') {
|
73
|
+
throw new DOMException(
|
74
|
+
`Failed to execute 'write' on 'Clipboard': The request is not allowed`
|
75
|
+
);
|
76
|
+
}
|
77
|
+
this.#data = data;
|
78
|
+
}
|
79
|
+
|
80
|
+
/**
|
81
|
+
* Writes text.
|
82
|
+
*
|
83
|
+
* @param text Text.
|
84
|
+
*/
|
85
|
+
public async writeText(text: string): Promise<void> {
|
86
|
+
const permissionStatus = await this.#ownerWindow.navigator.permissions.query({
|
87
|
+
name: 'clipboard-write'
|
88
|
+
});
|
89
|
+
if (permissionStatus.state === 'denied') {
|
90
|
+
throw new DOMException(
|
91
|
+
`Failed to execute 'writeText' on 'Clipboard': The request is not allowed`
|
92
|
+
);
|
93
|
+
}
|
94
|
+
this.#data = [new ClipboardItem({ 'text/plain': new Blob([text], { type: 'text/plain' }) })];
|
95
|
+
}
|
96
|
+
}
|
@@ -0,0 +1,59 @@
|
|
1
|
+
import DOMException from '../exception/DOMException.js';
|
2
|
+
import Blob from '../file/Blob.js';
|
3
|
+
|
4
|
+
/**
|
5
|
+
* Clipboard Item API.
|
6
|
+
*
|
7
|
+
* Reference:
|
8
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/ClipboardItem.
|
9
|
+
*/
|
10
|
+
export default class ClipboardItem {
|
11
|
+
public readonly presentationStyle: 'unspecified' | 'inline' | 'attachment' = 'unspecified';
|
12
|
+
#data: { [mimeType: string]: Blob };
|
13
|
+
|
14
|
+
/**
|
15
|
+
* Constructor.
|
16
|
+
*
|
17
|
+
* @param data Data.
|
18
|
+
* @param [options] Options.
|
19
|
+
* @param [options.presentationStyle] Presentation style.
|
20
|
+
*/
|
21
|
+
constructor(
|
22
|
+
data: { [mimeType: string]: Blob },
|
23
|
+
options?: { presentationStyle?: 'unspecified' | 'inline' | 'attachment' }
|
24
|
+
) {
|
25
|
+
for (const mimeType of Object.keys(data)) {
|
26
|
+
if (mimeType !== data[mimeType].type) {
|
27
|
+
throw new DOMException(`Type ${mimeType} does not match the blob's type`);
|
28
|
+
}
|
29
|
+
}
|
30
|
+
this.#data = data;
|
31
|
+
if (options?.presentationStyle) {
|
32
|
+
this.presentationStyle = options.presentationStyle;
|
33
|
+
}
|
34
|
+
}
|
35
|
+
|
36
|
+
/**
|
37
|
+
* Returns types.
|
38
|
+
*
|
39
|
+
* @returns Types.
|
40
|
+
*/
|
41
|
+
public get types(): string[] {
|
42
|
+
return Object.keys(this.#data);
|
43
|
+
}
|
44
|
+
|
45
|
+
/**
|
46
|
+
* Returns data by type.
|
47
|
+
*
|
48
|
+
* @param type Type.
|
49
|
+
* @returns Data.
|
50
|
+
*/
|
51
|
+
public async getType(type: string): Promise<Blob> {
|
52
|
+
if (!this.#data[type]) {
|
53
|
+
throw new DOMException(
|
54
|
+
`Failed to execute 'getType' on 'ClipboardItem': The type '${type}' was not found`
|
55
|
+
);
|
56
|
+
}
|
57
|
+
return this.#data[type];
|
58
|
+
}
|
59
|
+
}
|
@@ -1,13 +1,97 @@
|
|
1
1
|
import File from '../file/File.js';
|
2
|
+
import DataTransferItem from './DataTransferItem.js';
|
2
3
|
import DataTransferItemList from './DataTransferItemList.js';
|
3
4
|
|
4
5
|
/**
|
6
|
+
* DataTransfer.
|
5
7
|
*
|
8
|
+
* Reference:
|
9
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer
|
6
10
|
*/
|
7
11
|
export default class DataTransfer {
|
8
|
-
public dropEffect = 'none';
|
9
|
-
public effectAllowed
|
10
|
-
|
12
|
+
public dropEffect: 'none' | 'copy' | 'link' | 'move' = 'none';
|
13
|
+
public effectAllowed:
|
14
|
+
| 'none'
|
15
|
+
| 'copy'
|
16
|
+
| 'copyLink'
|
17
|
+
| 'copyMove'
|
18
|
+
| 'link'
|
19
|
+
| 'linkMove'
|
20
|
+
| 'move'
|
21
|
+
| 'all'
|
22
|
+
| 'uninitialized' = 'none';
|
11
23
|
public readonly items: DataTransferItemList = new DataTransferItemList();
|
12
|
-
|
24
|
+
|
25
|
+
/**
|
26
|
+
* Returns files.
|
27
|
+
*
|
28
|
+
* @returns Files.
|
29
|
+
*/
|
30
|
+
public get files(): File[] {
|
31
|
+
const files = [];
|
32
|
+
for (const item of this.items) {
|
33
|
+
if (item.kind === 'file') {
|
34
|
+
files.push(item.getAsFile());
|
35
|
+
}
|
36
|
+
}
|
37
|
+
return files;
|
38
|
+
}
|
39
|
+
|
40
|
+
/**
|
41
|
+
* Returns types.
|
42
|
+
*
|
43
|
+
* @returns Types.
|
44
|
+
*/
|
45
|
+
public get types(): string[] {
|
46
|
+
return this.items.map((item) => item.type);
|
47
|
+
}
|
48
|
+
|
49
|
+
/**
|
50
|
+
* Clears the data.
|
51
|
+
*/
|
52
|
+
public clearData(): void {
|
53
|
+
this.items.clear();
|
54
|
+
}
|
55
|
+
|
56
|
+
/**
|
57
|
+
* Sets the data.
|
58
|
+
*
|
59
|
+
* @param format Format.
|
60
|
+
* @param data Data.
|
61
|
+
*/
|
62
|
+
public setData(format: string, data: string): void {
|
63
|
+
for (let i = 0, max = this.items.length; i < max; i++) {
|
64
|
+
if (this.items[i].type === format) {
|
65
|
+
this.items[i] = new DataTransferItem(data, format);
|
66
|
+
return;
|
67
|
+
}
|
68
|
+
}
|
69
|
+
this.items.add(data, format);
|
70
|
+
}
|
71
|
+
|
72
|
+
/**
|
73
|
+
* Gets the data.
|
74
|
+
*
|
75
|
+
* @param format Format.
|
76
|
+
* @returns Data.
|
77
|
+
*/
|
78
|
+
public getData(format: string): string {
|
79
|
+
for (let i = 0, max = this.items.length; i < max; i++) {
|
80
|
+
if (this.items[i].type === format) {
|
81
|
+
let data = '';
|
82
|
+
this.items[i].getAsString((s) => (data = s));
|
83
|
+
return data;
|
84
|
+
}
|
85
|
+
}
|
86
|
+
return '';
|
87
|
+
}
|
88
|
+
|
89
|
+
/**
|
90
|
+
* Sets drag image.
|
91
|
+
*
|
92
|
+
* TODO: Implement.
|
93
|
+
*/
|
94
|
+
public setDragImage(): void {
|
95
|
+
throw new Error('Not implemented.');
|
96
|
+
}
|
13
97
|
}
|
@@ -1,21 +1,26 @@
|
|
1
1
|
import File from '../file/File.js';
|
2
2
|
|
3
3
|
/**
|
4
|
+
* Data transfer item.
|
4
5
|
*
|
6
|
+
* Reference:
|
7
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/DataTransferItem.
|
5
8
|
*/
|
6
9
|
export default class DataTransferItem {
|
7
|
-
public readonly kind: string
|
8
|
-
public readonly type: string
|
9
|
-
|
10
|
+
public readonly kind: 'string' | 'file';
|
11
|
+
public readonly type: string;
|
12
|
+
#item: string | File = null;
|
10
13
|
|
11
14
|
/**
|
12
15
|
* Constructor.
|
13
16
|
*
|
14
17
|
* @param item Item.
|
18
|
+
* @param type Type.
|
15
19
|
*/
|
16
|
-
constructor(item: string | File) {
|
20
|
+
constructor(item: string | File, type = '') {
|
17
21
|
this.kind = typeof item === 'string' ? 'string' : 'file';
|
18
|
-
this.
|
22
|
+
this.type = this.kind === 'string' ? type : (<File>item).type;
|
23
|
+
this.#item = item;
|
19
24
|
}
|
20
25
|
|
21
26
|
/**
|
@@ -25,16 +30,18 @@ export default class DataTransferItem {
|
|
25
30
|
if (this.kind === 'string') {
|
26
31
|
return null;
|
27
32
|
}
|
28
|
-
return <File>this
|
33
|
+
return <File>this.#item;
|
29
34
|
}
|
30
35
|
|
31
36
|
/**
|
32
37
|
* Returns string.
|
38
|
+
*
|
39
|
+
* @param callback Callback.
|
33
40
|
*/
|
34
|
-
public getAsString(
|
41
|
+
public getAsString(callback: (text: string) => void): void {
|
35
42
|
if (this.kind === 'file') {
|
36
|
-
|
43
|
+
callback;
|
37
44
|
}
|
38
|
-
|
45
|
+
callback(<string>this.#item);
|
39
46
|
}
|
40
47
|
}
|