mirror of
https://gitlab.com/freepascal.org/fpc/pas2js.git
synced 2025-09-25 13:09:43 +02:00
* Performance
This commit is contained in:
parent
488e3b02b5
commit
c622a245f2
@ -123,6 +123,7 @@ Type
|
|||||||
TJSCacheStorage = BrowserApi.WebOrWorker.TJSCacheStorage;
|
TJSCacheStorage = BrowserApi.WebOrWorker.TJSCacheStorage;
|
||||||
TJSPermissions = BrowserApi.WebOrWorker.TJSPermissions;
|
TJSPermissions = BrowserApi.WebOrWorker.TJSPermissions;
|
||||||
TJSRequest = BrowserApi.WebOrWorker.TJSRequest;
|
TJSRequest = BrowserApi.WebOrWorker.TJSRequest;
|
||||||
|
TJSPerformance = BrowserApi.WebOrWorker.TJSPerformance;
|
||||||
{$ELSE}
|
{$ELSE}
|
||||||
TJSServiceWorker = weborworker.TJSServiceWorker;
|
TJSServiceWorker = weborworker.TJSServiceWorker;
|
||||||
TJSServiceWorkerRegistration = weborworker.TJSServiceWorkerRegistration;
|
TJSServiceWorkerRegistration = weborworker.TJSServiceWorkerRegistration;
|
||||||
@ -195,6 +196,7 @@ Type
|
|||||||
TJSCacheStorage = weborworker.TJSCacheStorage;
|
TJSCacheStorage = weborworker.TJSCacheStorage;
|
||||||
TJSRequest = webOrworker.TJSRequest;
|
TJSRequest = webOrworker.TJSRequest;
|
||||||
TJSAbortController = webOrworker.TJSAbortController;
|
TJSAbortController = webOrworker.TJSAbortController;
|
||||||
|
TJSPerformance = WebOrWorker.TJSPerformance;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
TJSMessagePortArray = TJSMessagePortDynArray;
|
TJSMessagePortArray = TJSMessagePortDynArray;
|
||||||
TEventListenerEvent = TJSEvent;
|
TEventListenerEvent = TJSEvent;
|
||||||
@ -1486,7 +1488,6 @@ Type
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
TJSPerformance = class external name 'Performance' (TJSObject);
|
|
||||||
|
|
||||||
TJSScreen = class external name 'Screen' (TJSObject)
|
TJSScreen = class external name 'Screen' (TJSObject)
|
||||||
private
|
private
|
||||||
|
@ -1351,6 +1351,70 @@ type
|
|||||||
resizeQuality : String;
|
resizeQuality : String;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
TJSEventCountsMap = class external name 'EventCounts' (TJSMap)
|
||||||
|
end;
|
||||||
|
|
||||||
|
TJSDOMHighResTimeStamp = Double;
|
||||||
|
|
||||||
|
{ TJSPerformanceEntry }
|
||||||
|
|
||||||
|
TJSPerformanceEntry = class external name 'PerformanceEntry' (TJSObject)
|
||||||
|
private
|
||||||
|
FDuration: TJSDOMHighResTimeStamp; external name 'duration';
|
||||||
|
FEntryType: string; external name 'entryType';
|
||||||
|
FName: string; external name 'name';
|
||||||
|
FStartTime: TJSDOMHighResTimeStamp; external name 'startTime';
|
||||||
|
Public
|
||||||
|
Property Duration : TJSDOMHighResTimeStamp Read FDuration;
|
||||||
|
Property EntryType : string Read FEntryType;
|
||||||
|
Property Name : string Read FName;
|
||||||
|
Property StartTime : TJSDOMHighResTimeStamp Read FStartTime;
|
||||||
|
end;
|
||||||
|
TJSPerformanceEntryArray = Array of TJSPerformanceEntry;
|
||||||
|
|
||||||
|
TJSPerformanceMarkOptions = class external name 'Object' (TJSObject)
|
||||||
|
detail : JSValue;
|
||||||
|
startTime: TJSDOMHighResTimeStamp;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TJSPerformanceMeasureOptions = class external name 'Object' (TJSObject)
|
||||||
|
detail : JSValue;
|
||||||
|
startTime: TJSDOMHighResTimeStamp;
|
||||||
|
duration: TJSDOMHighResTimeStamp;
|
||||||
|
end_: TJSDOMHighResTimeStamp; external name 'end';
|
||||||
|
end;
|
||||||
|
|
||||||
|
TJSPerformance = class external name 'Performance' (TJSObject)
|
||||||
|
Private
|
||||||
|
FEventCounts : TJSEventCountsMap; external name 'eventcounts';
|
||||||
|
FTimeOrigin : TJSDOMHighResTimeStamp; external name 'timeOrigin';
|
||||||
|
public
|
||||||
|
procedure clearMarks; overload;
|
||||||
|
procedure clearMarks(aName : String); overload;
|
||||||
|
procedure clearMeasures; overload;
|
||||||
|
procedure clearMeasures(aName : String); overload;
|
||||||
|
procedure clearResourceTimings; overload;
|
||||||
|
function getEntries : TJSPerformanceEntryArray;
|
||||||
|
function getEntriesByName(aName : string) : TJSPerformanceEntryArray;
|
||||||
|
function getEntriesByName(aName,aType : string) : TJSPerformanceEntryArray;
|
||||||
|
function getEntriesByType(aType : string) : TJSPerformanceEntryArray;
|
||||||
|
procedure mark(aName : String); overload;
|
||||||
|
procedure mark(aName : String; aOptions : TJSObject); overload;
|
||||||
|
procedure mark(aName : String; aOptions : TJSPerformanceMarkOptions); overload;
|
||||||
|
procedure measure(aName : String); overload;
|
||||||
|
procedure measure(aName, aStartmark : String); overload;
|
||||||
|
procedure measure(aName, aStartmark, aEndMark : String); overload;
|
||||||
|
procedure measure(aName : String; aOptions : TJSObject); overload;
|
||||||
|
procedure measure(aName : String; aOptions : TJSPerformanceMeasureOptions); overload;
|
||||||
|
procedure measure(aName : String; aOptions : TJSObject; aEndMark : string); overload;
|
||||||
|
procedure measure(aName : String; aOptions : TJSPerformanceMeasureOptions; aEndMark : string); overload;
|
||||||
|
function now : TJSDOMHighResTimeStamp;
|
||||||
|
function toJSON : TJSObject;
|
||||||
|
procedure setResourceTimingBufferSize(aMaxSize : NativeInt);
|
||||||
|
property eventCounts : TJSEventCountsMap read FEventCounts;
|
||||||
|
property timeOrigin : TJSDOMHighResTimeStamp Read FTimeOrigin;
|
||||||
|
end;
|
||||||
|
|
||||||
{ TWindowOrWorkerGlobalScope }
|
{ TWindowOrWorkerGlobalScope }
|
||||||
|
|
||||||
TWindowOrWorkerGlobalScope = Class external name 'Object' (TJSEventTarget)
|
TWindowOrWorkerGlobalScope = Class external name 'Object' (TJSEventTarget)
|
||||||
@ -1359,6 +1423,7 @@ type
|
|||||||
FisSecureContext : boolean; external name 'isSecureContext';
|
FisSecureContext : boolean; external name 'isSecureContext';
|
||||||
FIDBFactory : TJSIDBFactory; external name 'indexedDB';
|
FIDBFactory : TJSIDBFactory; external name 'indexedDB';
|
||||||
fcaches : TJSCacheStorage; external name 'caches';
|
fcaches : TJSCacheStorage; external name 'caches';
|
||||||
|
FPerformance : TJSPerformance; external name 'performanc';
|
||||||
Public
|
Public
|
||||||
Function setInterval(ahandler : TJSTimerCallBack; aInterval : NativeUInt) : NativeInt; varargs;
|
Function setInterval(ahandler : TJSTimerCallBack; aInterval : NativeUInt) : NativeInt; varargs;
|
||||||
Function setTimeout(ahandler : TJSTimerCallBack; aTimeout : NativeUInt) : NativeInt; varargs;
|
Function setTimeout(ahandler : TJSTimerCallBack; aTimeout : NativeUInt) : NativeInt; varargs;
|
||||||
@ -1376,6 +1441,7 @@ type
|
|||||||
function fetch(resource: String): TJSResponse; {$IFNDEF SkipAsync}async;{$ENDIF} overload; external name 'fetch';
|
function fetch(resource: String): TJSResponse; {$IFNDEF SkipAsync}async;{$ENDIF} overload; external name 'fetch';
|
||||||
function fetch(resource: TJSObject; init: TJSObject): TJSPromise; overload; external name 'fetch';
|
function fetch(resource: TJSObject; init: TJSObject): TJSPromise; overload; external name 'fetch';
|
||||||
function fetch(resource: TJSObject): TJSPromise; overload; external name 'fetch';
|
function fetch(resource: TJSObject): TJSPromise; overload; external name 'fetch';
|
||||||
|
property Performance: TJSPerformance read FPerformance;
|
||||||
property isSecureContext : Boolean Read FisSecureContext;
|
property isSecureContext : Boolean Read FisSecureContext;
|
||||||
property IDBFactory : TJSIDBFactory Read FIDBFactory;
|
property IDBFactory : TJSIDBFactory Read FIDBFactory;
|
||||||
property caches : TJSCacheStorage read fcaches;
|
property caches : TJSCacheStorage read fcaches;
|
||||||
@ -1554,6 +1620,7 @@ var
|
|||||||
Crypto: TJSCrypto; external name 'crypto';
|
Crypto: TJSCrypto; external name 'crypto';
|
||||||
indexedDB : TJSIDBFactory; external name 'indexedDB';
|
indexedDB : TJSIDBFactory; external name 'indexedDB';
|
||||||
self_ : TWindowOrWorkerGlobalScope; external name 'self';
|
self_ : TWindowOrWorkerGlobalScope; external name 'self';
|
||||||
|
performance : TJSPerformance; external name 'self.performance';
|
||||||
|
|
||||||
function fetch(resource: String; init: TJSObject): TJSPromise; overload; external name 'fetch';
|
function fetch(resource: String; init: TJSObject): TJSPromise; overload; external name 'fetch';
|
||||||
//function fetch(resource: String): TJSPromise; overload; external name 'fetch';
|
//function fetch(resource: String): TJSPromise; overload; external name 'fetch';
|
||||||
|
Loading…
Reference in New Issue
Block a user