swup 4.6.1 → 4.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.
- package/dist/Swup.cjs +1 -1
- package/dist/Swup.cjs.map +1 -1
- package/dist/Swup.modern.js +1 -1
- package/dist/Swup.modern.js.map +1 -1
- package/dist/Swup.module.js +1 -1
- package/dist/Swup.module.js.map +1 -1
- package/dist/Swup.umd.js +1 -1
- package/dist/Swup.umd.js.map +1 -1
- package/dist/types/Swup.d.ts +11 -6
- package/dist/types/Swup.d.ts.map +1 -1
- package/dist/types/helpers/delegateEvent.d.ts +2 -2
- package/dist/types/helpers/delegateEvent.d.ts.map +1 -1
- package/dist/types/helpers/getCurrentUrl.d.ts +1 -1
- package/dist/types/helpers/getCurrentUrl.d.ts.map +1 -1
- package/dist/types/helpers/matchPath.d.ts.map +1 -1
- package/dist/types/modules/Hooks.d.ts +10 -0
- package/dist/types/modules/Hooks.d.ts.map +1 -1
- package/dist/types/modules/Visit.d.ts +4 -0
- package/dist/types/modules/Visit.d.ts.map +1 -1
- package/dist/types/modules/awaitAnimations.d.ts +10 -1
- package/dist/types/modules/awaitAnimations.d.ts.map +1 -1
- package/dist/types/modules/navigate.d.ts +2 -0
- package/dist/types/modules/navigate.d.ts.map +1 -1
- package/dist/types/modules/renderPage.d.ts.map +1 -1
- package/dist/types/utils/index.d.ts +7 -0
- package/dist/types/utils/index.d.ts.map +1 -1
- package/package.json +9 -9
- package/src/Swup.ts +19 -4
- package/src/modules/Hooks.ts +18 -0
- package/src/modules/Visit.ts +8 -2
- package/src/modules/awaitAnimations.ts +15 -22
- package/src/modules/navigate.ts +16 -17
- package/src/modules/renderPage.ts +5 -4
- package/src/utils/index.ts +14 -0
package/dist/types/Swup.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { type DelegateEvent } from 'delegate-it';
|
|
2
|
+
import { Location } from './helpers.js';
|
|
2
3
|
import { type DelegateEventUnsubscribe } from './helpers/delegateEvent.js';
|
|
3
4
|
import { Cache } from './modules/Cache.js';
|
|
4
5
|
import { Classes } from './modules/Classes.js';
|
|
5
6
|
import { type Visit, createVisit } from './modules/Visit.js';
|
|
6
|
-
import { Hooks } from './modules/Hooks.js';
|
|
7
|
+
import { Hooks, type HookInitOptions } from './modules/Hooks.js';
|
|
7
8
|
import { awaitAnimations } from './modules/awaitAnimations.js';
|
|
8
9
|
import { navigate, performNavigation, type NavigationToSelfAction } from './modules/navigate.js';
|
|
9
10
|
import { fetchPage } from './modules/fetchPage.js';
|
|
@@ -32,6 +33,8 @@ export type Options = {
|
|
|
32
33
|
linkToSelf: NavigationToSelfAction;
|
|
33
34
|
/** Enable native animations using the View Transitions API. */
|
|
34
35
|
native: boolean;
|
|
36
|
+
/** Hook handlers to register. */
|
|
37
|
+
hooks: Partial<HookInitOptions>;
|
|
35
38
|
/** Plugins to register on startup. */
|
|
36
39
|
plugins: Plugin[];
|
|
37
40
|
/** Custom headers sent along with fetch requests. */
|
|
@@ -61,8 +64,10 @@ export default class Swup {
|
|
|
61
64
|
readonly hooks: Hooks;
|
|
62
65
|
/** Animation class manager */
|
|
63
66
|
readonly classes: Classes;
|
|
64
|
-
/**
|
|
65
|
-
|
|
67
|
+
/** Location of the currently visible page */
|
|
68
|
+
location: Location;
|
|
69
|
+
/** URL of the currently visible page @deprecated Use swup.location.url instead */
|
|
70
|
+
get currentPageUrl(): string;
|
|
66
71
|
/** Index of the current history entry */
|
|
67
72
|
protected currentHistoryIndex: number;
|
|
68
73
|
/** Delegated event subscription handle */
|
|
@@ -86,7 +91,7 @@ export default class Swup {
|
|
|
86
91
|
/** Create a new context for this visit */
|
|
87
92
|
protected createVisit: typeof createVisit;
|
|
88
93
|
/** Register a delegated event listener */
|
|
89
|
-
delegateEvent: <Selector extends string, TElement extends Element = import("typed-query-selector/parser.js").ParseSelector<Selector, HTMLElement>, TEvent extends
|
|
94
|
+
delegateEvent: <Selector extends string, TElement extends Element = import("typed-query-selector/parser.js").ParseSelector<Selector, HTMLElement>, TEvent extends import("delegate-it").EventType = keyof GlobalEventHandlersEventMap>(selector: Selector, type: TEvent, callback: import("delegate-it").DelegateEventHandler<GlobalEventHandlersEventMap[TEvent], TElement>, options?: import("delegate-it").DelegateOptions) => DelegateEventUnsubscribe;
|
|
90
95
|
/** Fetch a page from the server */
|
|
91
96
|
fetchPage: typeof fetchPage;
|
|
92
97
|
/** Resolve when animations on the page finish */
|
|
@@ -98,10 +103,10 @@ export default class Swup {
|
|
|
98
103
|
protected animatePageOut: (this: Swup, visit: Visit) => Promise<void>;
|
|
99
104
|
protected scrollToContent: (this: Swup, visit: Visit) => boolean;
|
|
100
105
|
/** Find the anchor element for a given hash */
|
|
101
|
-
getAnchorElement: (hash?: string
|
|
106
|
+
getAnchorElement: (hash?: string) => Element | null;
|
|
102
107
|
/** Get the current page URL */
|
|
103
108
|
getCurrentUrl: ({ hash }?: {
|
|
104
|
-
hash?: boolean
|
|
109
|
+
hash?: boolean;
|
|
105
110
|
}) => string;
|
|
106
111
|
/** Resolve a URL to its final location */
|
|
107
112
|
resolveUrl: typeof resolveUrl;
|
package/dist/types/Swup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Swup.d.ts","sourceRoot":"","sources":["../../src/Swup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"Swup.d.ts","sourceRoot":"","sources":["../../src/Swup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { type DelegateEventHandler, type DelegateOptions } from 'delegate-it';
|
|
1
|
+
import { type DelegateEventHandler, type DelegateOptions, type EventType } from 'delegate-it';
|
|
2
2
|
import type { ParseSelector } from 'typed-query-selector/parser.js';
|
|
3
3
|
export type DelegateEventUnsubscribe = {
|
|
4
4
|
destroy: () => void;
|
|
5
5
|
};
|
|
6
6
|
/** Register a delegated event listener. */
|
|
7
|
-
export declare const delegateEvent: <Selector extends string, TElement extends Element = ParseSelector<Selector, HTMLElement>, TEvent extends
|
|
7
|
+
export declare const delegateEvent: <Selector extends string, TElement extends Element = ParseSelector<Selector, HTMLElement>, TEvent extends EventType = keyof GlobalEventHandlersEventMap>(selector: Selector, type: TEvent, callback: DelegateEventHandler<GlobalEventHandlersEventMap[TEvent], TElement>, options?: DelegateOptions) => DelegateEventUnsubscribe;
|
|
8
8
|
//# sourceMappingURL=delegateEvent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delegateEvent.d.ts","sourceRoot":"","sources":["../../../src/helpers/delegateEvent.ts"],"names":[],"mappings":"AAAA,OAAiB,EAChB,KAAK,oBAAoB,EACzB,KAAK,eAAe,
|
|
1
|
+
{"version":3,"file":"delegateEvent.d.ts","sourceRoot":"","sources":["../../../src/helpers/delegateEvent.ts"],"names":[],"mappings":"AAAA,OAAiB,EAChB,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE,MAAM,MAAM,wBAAwB,GAAG;IACtC,OAAO,EAAE,MAAM,IAAI,CAAC;CACpB,CAAC;AAEF,2CAA2C;AAC3C,eAAO,MAAM,aAAa,GACzB,QAAQ,SAAS,MAAM,EACvB,QAAQ,SAAS,OAAO,yCACxB,MAAM,SAAS,SAAS,gDAEd,QAAQ,QACZ,MAAM,YACF,oBAAoB,CAAC,2BAA2B,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,YACnE,eAAe,KACvB,wBAKF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getCurrentUrl.d.ts","sourceRoot":"","sources":["../../../src/helpers/getCurrentUrl.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,eAAO,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"getCurrentUrl.d.ts","sourceRoot":"","sources":["../../../src/helpers/getCurrentUrl.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,eAAO,MAAM,aAAa,cAAc;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,KAAQ,MAEjE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"matchPath.d.ts","sourceRoot":"","sources":["../../../src/helpers/matchPath.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACX,IAAI,EACJ,YAAY,EACZ,qBAAqB,EACrB,uBAAuB,EACvB,aAAa,EACb,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;AAErB,oFAAoF;AACpF,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"matchPath.d.ts","sourceRoot":"","sources":["../../../src/helpers/matchPath.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACX,IAAI,EACJ,YAAY,EACZ,qBAAqB,EACrB,uBAAuB,EACvB,aAAa,EACb,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;AAErB,oFAAoF;AACpF,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,MAAM,iBACnC,IAAI,YACA,YAAY,GAAG,qBAAqB,GAAG,uBAAuB,KACtE,aAAa,CAAC,CAAC,CAMjB,CAAC"}
|
|
@@ -80,6 +80,8 @@ export interface HookReturnValues {
|
|
|
80
80
|
}
|
|
81
81
|
export type HookArguments<T extends HookName> = HookDefinitions[T];
|
|
82
82
|
export type HookName = keyof HookDefinitions;
|
|
83
|
+
export type HookNameWithModifier = `${HookName}.${HookModifier}`;
|
|
84
|
+
type HookModifier = 'once' | 'before' | 'replace';
|
|
83
85
|
/** A generic hook handler. */
|
|
84
86
|
export type HookHandler<T extends HookName> = (
|
|
85
87
|
/** Context about the current visit. */
|
|
@@ -97,6 +99,9 @@ defaultHandler?: HookDefaultHandler<T>) => T extends keyof HookReturnValues ? Ho
|
|
|
97
99
|
export type Handlers = {
|
|
98
100
|
[K in HookName]: HookHandler<K>[];
|
|
99
101
|
};
|
|
102
|
+
export type HookInitOptions = {
|
|
103
|
+
[K in HookName as K | `${K}.${HookModifier}`]: HookHandler<K>;
|
|
104
|
+
};
|
|
100
105
|
/** Unregister a previously registered hook handler. */
|
|
101
106
|
export type HookUnregister = () => void;
|
|
102
107
|
/** Define when and how a hook handler is executed. */
|
|
@@ -283,6 +288,11 @@ export declare class Hooks {
|
|
|
283
288
|
* @param hook Name of the hook.
|
|
284
289
|
*/
|
|
285
290
|
protected dispatchDomEvent<T extends HookName>(hook: T, visit: Visit | undefined, args?: HookArguments<T>): void;
|
|
291
|
+
/**
|
|
292
|
+
* Parse a hook name into the name and any modifiers.
|
|
293
|
+
* @param hook Name of the hook.
|
|
294
|
+
*/
|
|
295
|
+
parseName(hook: HookName | HookNameWithModifier): [HookName, Partial<HookOptions>];
|
|
286
296
|
}
|
|
287
297
|
export {};
|
|
288
298
|
//# sourceMappingURL=Hooks.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Hooks.d.ts","sourceRoot":"","sources":["../../../src/modules/Hooks.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Hooks.d.ts","sourceRoot":"","sources":["../../../src/modules/Hooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,8 @@ import type { HistoryAction, HistoryDirection } from './navigate.js';
|
|
|
5
5
|
export interface VisitFrom {
|
|
6
6
|
/** The URL of the previous page */
|
|
7
7
|
url: string;
|
|
8
|
+
/** The hash of the previous page */
|
|
9
|
+
hash?: string;
|
|
8
10
|
}
|
|
9
11
|
export interface VisitTo {
|
|
10
12
|
/** The URL of the next page */
|
|
@@ -83,6 +85,8 @@ export declare class Visit {
|
|
|
83
85
|
history: VisitHistory;
|
|
84
86
|
/** Scroll behavior on this visit */
|
|
85
87
|
scroll: VisitScroll;
|
|
88
|
+
/** User-defined metadata */
|
|
89
|
+
meta: Record<string, unknown>;
|
|
86
90
|
constructor(swup: Swup, options: VisitInitOptions);
|
|
87
91
|
/** Is this visit done, i.e. completed, failed, or aborted? */
|
|
88
92
|
get done(): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Visit.d.ts","sourceRoot":"","sources":["../../../src/modules/Visit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAErE,kDAAkD;AAGlD,MAAM,WAAW,SAAS;IACzB,mCAAmC;IACnC,GAAG,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"Visit.d.ts","sourceRoot":"","sources":["../../../src/modules/Visit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAErE,kDAAkD;AAGlD,MAAM,WAAW,SAAS;IACzB,mCAAmC;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,oCAAoC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,OAAO;IACvB,+BAA+B;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mEAAmE;IACnE,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC9B,sDAAsD;IACtD,OAAO,EAAE,OAAO,CAAC;IACjB,gGAAgG;IAChG,IAAI,EAAE,OAAO,CAAC;IACd,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0FAA0F;IAC1F,MAAM,EAAE,OAAO,CAAC;IAChB,0EAA0E;IAC1E,KAAK,EAAE,MAAM,GAAG,YAAY,GAAG,MAAM,EAAE,CAAC;IACxC,iFAAiF;IACjF,QAAQ,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,WAAW;IAC3B,4EAA4E;IAC5E,KAAK,EAAE,OAAO,CAAC;IACf,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC5B,6CAA6C;IAC7C,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,2CAA2C;IAC3C,KAAK,CAAC,EAAE,KAAK,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IAC1B,yEAAyE;IACzE,IAAI,EAAE,OAAO,CAAC;IACd,6DAA6D;IAC7D,KAAK,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC5B,qIAAqI;IACrI,MAAM,EAAE,aAAa,CAAC;IACtB,wEAAwE;IACxE,QAAQ,EAAE,OAAO,CAAC;IAClB,4FAA4F;IAC5F,SAAS,EAAE,gBAAgB,GAAG,SAAS,CAAC;CACxC;AAED,MAAM,WAAW,gBAAgB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,CAAC;CACd;AAkBD,yDAAyD;AACzD,qBAAa,KAAK;IACjB,yCAAyC;IACzC,EAAE,EAAE,MAAM,CAAC;IAGX,wCAAwC;IACxC,IAAI,EAAE,SAAS,CAAC;IAChB,oCAAoC;IACpC,EAAE,EAAE,OAAO,CAAC;IACZ,mDAAmD;IACnD,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAClC,kDAAkD;IAClD,SAAS,EAAE,cAAc,CAAC;IAC1B,gCAAgC;IAChC,OAAO,EAAE,YAAY,CAAC;IACtB,oCAAoC;IACpC,KAAK,EAAE,UAAU,CAAC;IAClB,6CAA6C;IAC7C,OAAO,EAAE,YAAY,CAAC;IACtB,oCAAoC;IACpC,MAAM,EAAE,WAAW,CAAC;IACpB,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAElB,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB;IA6CjD,8DAA8D;IAC9D,IAAI,IAAI,IAAI,OAAO,CAElB;CACD;AAED,iCAAiC;AACjC,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,GAAG,KAAK,CAExE"}
|
|
@@ -1,12 +1,21 @@
|
|
|
1
1
|
import type Swup from '../Swup.js';
|
|
2
2
|
import type { Options } from '../Swup.js';
|
|
3
|
+
declare const TRANSITION = "transition";
|
|
4
|
+
declare const ANIMATION = "animation";
|
|
5
|
+
type AnimationType = typeof TRANSITION | typeof ANIMATION;
|
|
6
|
+
type AnimationProperty = 'Delay' | 'Duration';
|
|
7
|
+
type AnimationStyleKey = `${AnimationType}${AnimationProperty}` | 'transitionProperty';
|
|
3
8
|
export type AnimationDirection = 'in' | 'out';
|
|
4
9
|
/**
|
|
5
10
|
* Return a Promise that resolves when all CSS animations and transitions
|
|
6
11
|
* are done on the page. Filters by selector or takes elements directly.
|
|
7
12
|
*/
|
|
8
|
-
export declare function awaitAnimations(this: Swup, {
|
|
13
|
+
export declare function awaitAnimations(this: Swup, { selector, elements }: {
|
|
9
14
|
selector: Options['animationSelector'];
|
|
10
15
|
elements?: NodeListOf<HTMLElement> | HTMLElement[];
|
|
11
16
|
}): Promise<void>;
|
|
17
|
+
export declare function getStyleProperties(styles: CSSStyleDeclaration, key: AnimationStyleKey): string[];
|
|
18
|
+
export declare function calculateTimeout(delays: string[], durations: string[]): number;
|
|
19
|
+
export declare function toMs(time: string): number;
|
|
20
|
+
export {};
|
|
12
21
|
//# sourceMappingURL=awaitAnimations.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"awaitAnimations.d.ts","sourceRoot":"","sources":["../../../src/modules/awaitAnimations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"awaitAnimations.d.ts","sourceRoot":"","sources":["../../../src/modules/awaitAnimations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C,QAAA,MAAM,UAAU,eAAe,CAAC;AAChC,QAAA,MAAM,SAAS,cAAc,CAAC;AAE9B,KAAK,aAAa,GAAG,OAAO,UAAU,GAAG,OAAO,SAAS,CAAC;AAE1D,KAAK,iBAAiB,GAAG,OAAO,GAAG,UAAU,CAAC;AAC9C,KAAK,iBAAiB,GAAG,GAAG,aAAa,GAAG,iBAAiB,EAAE,GAAG,oBAAoB,CAAC;AAEvF,MAAM,MAAM,kBAAkB,GAAG,IAAI,GAAG,KAAK,CAAC;AAE9C;;;GAGG;AACH,wBAAsB,eAAe,CACpC,IAAI,EAAE,IAAI,EACV,EACC,QAAQ,EACR,QAAQ,EACR,EAAE;IACF,QAAQ,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACvC,QAAQ,CAAC,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,WAAW,EAAE,CAAC;CACnD,GACC,OAAO,CAAC,IAAI,CAAC,CA+Bf;AA2ED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,EAAE,GAAG,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAEhG;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAM9E;AAED,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEzC"}
|
|
@@ -18,6 +18,8 @@ type NavigationOptions = {
|
|
|
18
18
|
history?: HistoryAction;
|
|
19
19
|
/** Whether this visit should read from or write to the cache. */
|
|
20
20
|
cache?: CacheControl;
|
|
21
|
+
/** Custom metadata associated with this visit. */
|
|
22
|
+
meta?: Record<string, unknown>;
|
|
21
23
|
};
|
|
22
24
|
/**
|
|
23
25
|
* Navigate to a new URL.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigate.d.ts","sourceRoot":"","sources":["../../../src/modules/navigate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AACnC,OAAO,EAAc,KAAK,YAAY,EAAiB,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,KAAK,EAAc,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"navigate.d.ts","sourceRoot":"","sources":["../../../src/modules/navigate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AACnC,OAAO,EAAc,KAAK,YAAY,EAAiB,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,KAAK,EAAc,MAAM,YAAY,CAAC;AAI3E,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,SAAS,CAAC;AAC/C,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,WAAW,CAAC;AACxD,MAAM,MAAM,sBAAsB,GAAG,QAAQ,GAAG,UAAU,CAAC;AAC3D,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAEtE,wCAAwC;AACxC,KAAK,iBAAiB,GAAG;IACxB,sDAAsD;IACtD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qIAAqI;IACrI,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,iEAAiE;IACjE,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,kDAAkD;IAClD,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,QAAQ,CACvB,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,iBAAiB,GAAG,YAAiB,EAC9C,IAAI,GAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAM,QAgBvC;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACtC,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,OAAO,GAAE,iBAAiB,GAAG,YAAiB,GAC5C,OAAO,CAAC,IAAI,CAAC,CA0Kf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderPage.d.ts","sourceRoot":"","sources":["../../../src/modules/renderPage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAc,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,UAAU,SAAyB,IAAI,SAAS,KAAK,QAAQ,QAAQ,KAAG,
|
|
1
|
+
{"version":3,"file":"renderPage.d.ts","sourceRoot":"","sources":["../../../src/modules/renderPage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAc,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,UAAU,SAAyB,IAAI,SAAS,KAAK,QAAQ,QAAQ,KAAG,OAAO,CAAC,IAAI,CA0ChG,CAAC"}
|
|
@@ -13,4 +13,11 @@ export declare function runAsPromise(func: Function, args?: unknown[]): Promise<
|
|
|
13
13
|
* @see https://stackoverflow.com/a/21665117/3759615
|
|
14
14
|
*/
|
|
15
15
|
export declare function forceReflow(element?: HTMLElement): void;
|
|
16
|
+
/**
|
|
17
|
+
* Read data attribute from closest element with that attribute.
|
|
18
|
+
*
|
|
19
|
+
* Returns `undefined` if no element is found or attribute is missing.
|
|
20
|
+
* Returns `true` if attribute is present without a value.
|
|
21
|
+
*/
|
|
22
|
+
export declare function getContextualAttr(el: Element | undefined, attr: string): string | boolean | undefined;
|
|
16
23
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,eAAO,MAAM,KAAK,aAAc,MAAM,YAAW,QAAQ,GAAG,OAAO,uBAElE,CAAC;AAEF,0CAA0C;AAC1C,eAAO,MAAM,QAAQ,aACV,MAAM,YACP,QAAQ,GAAG,OAAO,KACzB,WAAW,EAEb,CAAC;AAEF,gEAAgE;AAChE,eAAO,MAAM,QAAQ,QAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,eAAO,MAAM,KAAK,aAAc,MAAM,YAAW,QAAQ,GAAG,OAAO,uBAElE,CAAC;AAEF,0CAA0C;AAC1C,eAAO,MAAM,QAAQ,aACV,MAAM,YACP,QAAQ,GAAG,OAAO,KACzB,WAAW,EAEb,CAAC;AAEF,gEAAgE;AAChE,eAAO,MAAM,QAAQ,QAAO,OAAO,CAAC,IAAI,CAQvC,CAAC;AAEF,oDAAoD;AACpD,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,CAMhE;AAED,wFAAwF;AAExF,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CASnF;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAGvD;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAChC,EAAE,EAAE,OAAO,GAAG,SAAS,EACvB,IAAI,EAAE,MAAM,GACV,MAAM,GAAG,OAAO,GAAG,SAAS,CAG9B"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "swup",
|
|
3
3
|
"amdName": "Swup",
|
|
4
|
-
"version": "4.
|
|
4
|
+
"version": "4.8.0",
|
|
5
5
|
"description": "Versatile and extensible page transition library for server-rendered websites",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"source": "./src/Swup.ts",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"test:e2e:instrument": "nyc instrument --compact=false dist tests/fixtures/dist",
|
|
45
45
|
"test:e2e:serve": "npx serve -n -S -L -p 8274 --config ./tests/config/serve.json",
|
|
46
46
|
"test:e2e:start": "npm run test:e2e:instrument && npm run test:e2e:serve",
|
|
47
|
-
"prepare": "husky
|
|
47
|
+
"prepare": "husky"
|
|
48
48
|
},
|
|
49
49
|
"author": "Georgy Marchuk",
|
|
50
50
|
"license": "MIT",
|
|
@@ -70,23 +70,23 @@
|
|
|
70
70
|
"@swup/prettier-config": "^1.0.0",
|
|
71
71
|
"@types/dom-view-transitions": "^1.0.2",
|
|
72
72
|
"@types/jsdom": "^21.1.1",
|
|
73
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
74
|
-
"@typescript-eslint/parser": "^
|
|
73
|
+
"@typescript-eslint/eslint-plugin": "^7.13.0",
|
|
74
|
+
"@typescript-eslint/parser": "^7.13.0",
|
|
75
75
|
"eslint": "^8.46.0",
|
|
76
76
|
"eslint-config-prettier": "^9.0.0",
|
|
77
|
-
"eslint-plugin-compat": "^
|
|
77
|
+
"eslint-plugin-compat": "^5.0.0",
|
|
78
78
|
"eslint-plugin-ecmascript-compat": "^3.2.0",
|
|
79
79
|
"eslint-plugin-prettier": "^5.0.1",
|
|
80
|
-
"husky": "^
|
|
80
|
+
"husky": "^9.0.11",
|
|
81
81
|
"istanbul-lib-coverage": "^3.2.0",
|
|
82
|
-
"jsdom": "^
|
|
82
|
+
"jsdom": "^25.0.1",
|
|
83
83
|
"microbundle": "^0.15.0",
|
|
84
|
-
"nyc": "^
|
|
84
|
+
"nyc": "^17.0.0",
|
|
85
85
|
"prettier": "^3.1.0",
|
|
86
86
|
"serve": "^14.2.1",
|
|
87
87
|
"typed-query-selector": "^2.11.0",
|
|
88
88
|
"typescript": "^5.2.2",
|
|
89
|
-
"vitest": "^1.
|
|
89
|
+
"vitest": "^2.1.1"
|
|
90
90
|
},
|
|
91
91
|
"collective": {
|
|
92
92
|
"type": "opencollective",
|
package/src/Swup.ts
CHANGED
|
@@ -8,7 +8,7 @@ import { type DelegateEventUnsubscribe } from './helpers/delegateEvent.js';
|
|
|
8
8
|
import { Cache } from './modules/Cache.js';
|
|
9
9
|
import { Classes } from './modules/Classes.js';
|
|
10
10
|
import { type Visit, createVisit } from './modules/Visit.js';
|
|
11
|
-
import { Hooks } from './modules/Hooks.js';
|
|
11
|
+
import { Hooks, type HookName, type HookInitOptions } from './modules/Hooks.js';
|
|
12
12
|
import { getAnchorElement } from './modules/getAnchorElement.js';
|
|
13
13
|
import { awaitAnimations } from './modules/awaitAnimations.js';
|
|
14
14
|
import { navigate, performNavigation, type NavigationToSelfAction } from './modules/navigate.js';
|
|
@@ -43,6 +43,8 @@ export type Options = {
|
|
|
43
43
|
linkToSelf: NavigationToSelfAction;
|
|
44
44
|
/** Enable native animations using the View Transitions API. */
|
|
45
45
|
native: boolean;
|
|
46
|
+
/** Hook handlers to register. */
|
|
47
|
+
hooks: Partial<HookInitOptions>;
|
|
46
48
|
/** Plugins to register on startup. */
|
|
47
49
|
plugins: Plugin[];
|
|
48
50
|
/** Custom headers sent along with fetch requests. */
|
|
@@ -61,6 +63,7 @@ const defaults: Options = {
|
|
|
61
63
|
animationScope: 'html',
|
|
62
64
|
cache: true,
|
|
63
65
|
containers: ['#swup'],
|
|
66
|
+
hooks: {},
|
|
64
67
|
ignoreVisit: (url, { el } = {}) => !!el?.closest('[data-no-swup]'),
|
|
65
68
|
linkSelector: 'a[href]',
|
|
66
69
|
linkToSelf: 'scroll',
|
|
@@ -93,8 +96,12 @@ export default class Swup {
|
|
|
93
96
|
readonly hooks: Hooks;
|
|
94
97
|
/** Animation class manager */
|
|
95
98
|
readonly classes: Classes;
|
|
96
|
-
/**
|
|
97
|
-
|
|
99
|
+
/** Location of the currently visible page */
|
|
100
|
+
location: Location = Location.fromUrl(window.location.href);
|
|
101
|
+
/** URL of the currently visible page @deprecated Use swup.location.url instead */
|
|
102
|
+
get currentPageUrl(): string {
|
|
103
|
+
return this.location.url;
|
|
104
|
+
}
|
|
98
105
|
/** Index of the current history entry */
|
|
99
106
|
protected currentHistoryIndex: number;
|
|
100
107
|
/** Delegated event subscription handle */
|
|
@@ -184,6 +191,14 @@ export default class Swup {
|
|
|
184
191
|
// Mount plugins
|
|
185
192
|
this.options.plugins.forEach((plugin) => this.use(plugin));
|
|
186
193
|
|
|
194
|
+
// Install user hooks
|
|
195
|
+
for (const [key, handler] of Object.entries(this.options.hooks)) {
|
|
196
|
+
// Build hook options from modifier suffix: 'content:replace.before' => { before: true }
|
|
197
|
+
const [hook, modifiers] = this.hooks.parseName(key as HookName);
|
|
198
|
+
// @ts-expect-error: object.entries() does not preserve key/value types
|
|
199
|
+
this.hooks.on(hook, handler, modifiers);
|
|
200
|
+
}
|
|
201
|
+
|
|
187
202
|
// Create initial history record
|
|
188
203
|
if ((window.history.state as HistoryState)?.source !== 'swup') {
|
|
189
204
|
updateHistoryRecord(null, { index: this.currentHistoryIndex });
|
|
@@ -322,7 +337,7 @@ export default class Swup {
|
|
|
322
337
|
}
|
|
323
338
|
|
|
324
339
|
// Exit early if the resolved path hasn't changed
|
|
325
|
-
if (this.isSameResolvedUrl(getCurrentUrl(), this.
|
|
340
|
+
if (this.isSameResolvedUrl(getCurrentUrl(), this.location.url)) {
|
|
326
341
|
return;
|
|
327
342
|
}
|
|
328
343
|
|
package/src/modules/Hooks.ts
CHANGED
|
@@ -49,6 +49,10 @@ export type HookArguments<T extends HookName> = HookDefinitions[T];
|
|
|
49
49
|
|
|
50
50
|
export type HookName = keyof HookDefinitions;
|
|
51
51
|
|
|
52
|
+
export type HookNameWithModifier = `${HookName}.${HookModifier}`;
|
|
53
|
+
|
|
54
|
+
type HookModifier = 'once' | 'before' | 'replace';
|
|
55
|
+
|
|
52
56
|
/** A generic hook handler. */
|
|
53
57
|
export type HookHandler<T extends HookName> = (
|
|
54
58
|
/** Context about the current visit. */
|
|
@@ -71,6 +75,10 @@ export type Handlers = {
|
|
|
71
75
|
[K in HookName]: HookHandler<K>[];
|
|
72
76
|
};
|
|
73
77
|
|
|
78
|
+
export type HookInitOptions = {
|
|
79
|
+
[K in HookName as K | `${K}.${HookModifier}`]: HookHandler<K>;
|
|
80
|
+
};
|
|
81
|
+
|
|
74
82
|
/** Unregister a previously registered hook handler. */
|
|
75
83
|
export type HookUnregister = () => void;
|
|
76
84
|
|
|
@@ -570,4 +578,14 @@ export class Hooks {
|
|
|
570
578
|
new CustomEvent<HookEventDetail>(`swup:${hook}`, { detail, bubbles: true })
|
|
571
579
|
);
|
|
572
580
|
}
|
|
581
|
+
|
|
582
|
+
/**
|
|
583
|
+
* Parse a hook name into the name and any modifiers.
|
|
584
|
+
* @param hook Name of the hook.
|
|
585
|
+
*/
|
|
586
|
+
parseName(hook: HookName | HookNameWithModifier): [HookName, Partial<HookOptions>] {
|
|
587
|
+
const [name, ...modifiers] = hook.split('.');
|
|
588
|
+
const options = modifiers.reduce((acc, mod) => ({ ...acc, [mod]: true }), {});
|
|
589
|
+
return [name as HookName, options];
|
|
590
|
+
}
|
|
573
591
|
}
|
package/src/modules/Visit.ts
CHANGED
|
@@ -8,6 +8,8 @@ import type { HistoryAction, HistoryDirection } from './navigate.js';
|
|
|
8
8
|
export interface VisitFrom {
|
|
9
9
|
/** The URL of the previous page */
|
|
10
10
|
url: string;
|
|
11
|
+
/** The hash of the previous page */
|
|
12
|
+
hash?: string;
|
|
11
13
|
}
|
|
12
14
|
|
|
13
15
|
export interface VisitTo {
|
|
@@ -112,13 +114,15 @@ export class Visit {
|
|
|
112
114
|
history: VisitHistory;
|
|
113
115
|
/** Scroll behavior on this visit */
|
|
114
116
|
scroll: VisitScroll;
|
|
117
|
+
/** User-defined metadata */
|
|
118
|
+
meta: Record<string, unknown>;
|
|
115
119
|
|
|
116
120
|
constructor(swup: Swup, options: VisitInitOptions) {
|
|
117
|
-
const { to, from
|
|
121
|
+
const { to, from, hash, el, event } = options;
|
|
118
122
|
|
|
119
123
|
this.id = Math.random();
|
|
120
124
|
this.state = VisitState.CREATED;
|
|
121
|
-
this.from = { url: from };
|
|
125
|
+
this.from = { url: from ?? swup.location.url, hash: swup.location.hash };
|
|
122
126
|
this.to = { url: to, hash };
|
|
123
127
|
this.containers = swup.options.containers;
|
|
124
128
|
this.animation = {
|
|
@@ -143,7 +147,9 @@ export class Visit {
|
|
|
143
147
|
reset: true,
|
|
144
148
|
target: undefined
|
|
145
149
|
};
|
|
150
|
+
this.meta = {};
|
|
146
151
|
}
|
|
152
|
+
|
|
147
153
|
/** @internal */
|
|
148
154
|
advance(state: VisitState) {
|
|
149
155
|
if (this.state < state) {
|
|
@@ -5,10 +5,10 @@ import type { Options } from '../Swup.js';
|
|
|
5
5
|
const TRANSITION = 'transition';
|
|
6
6
|
const ANIMATION = 'animation';
|
|
7
7
|
|
|
8
|
-
type
|
|
9
|
-
type
|
|
10
|
-
type
|
|
11
|
-
type
|
|
8
|
+
type AnimationType = typeof TRANSITION | typeof ANIMATION;
|
|
9
|
+
type AnimationEndEvent = `${AnimationType}end`;
|
|
10
|
+
type AnimationProperty = 'Delay' | 'Duration';
|
|
11
|
+
type AnimationStyleKey = `${AnimationType}${AnimationProperty}` | 'transitionProperty';
|
|
12
12
|
|
|
13
13
|
export type AnimationDirection = 'in' | 'out';
|
|
14
14
|
|
|
@@ -19,8 +19,8 @@ export type AnimationDirection = 'in' | 'out';
|
|
|
19
19
|
export async function awaitAnimations(
|
|
20
20
|
this: Swup,
|
|
21
21
|
{
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
selector,
|
|
23
|
+
elements
|
|
24
24
|
}: {
|
|
25
25
|
selector: Options['animationSelector'];
|
|
26
26
|
elements?: NodeListOf<HTMLElement> | HTMLElement[];
|
|
@@ -58,7 +58,7 @@ export async function awaitAnimations(
|
|
|
58
58
|
await Promise.all(awaitedAnimations);
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
-
function awaitAnimationsOnElement(element:
|
|
61
|
+
function awaitAnimationsOnElement(element: HTMLElement): Promise<void> | false {
|
|
62
62
|
const { type, timeout, propCount } = getTransitionInfo(element);
|
|
63
63
|
|
|
64
64
|
// Resolve immediately if no transition defined
|
|
@@ -67,7 +67,7 @@ function awaitAnimationsOnElement(element: Element): Promise<void> | false {
|
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
return new Promise((resolve) => {
|
|
70
|
-
const endEvent = `${type}end`;
|
|
70
|
+
const endEvent: AnimationEndEvent = `${type}end`;
|
|
71
71
|
const startTime = performance.now();
|
|
72
72
|
let propsTransitioned = 0;
|
|
73
73
|
|
|
@@ -76,16 +76,12 @@ function awaitAnimationsOnElement(element: Element): Promise<void> | false {
|
|
|
76
76
|
resolve();
|
|
77
77
|
};
|
|
78
78
|
|
|
79
|
-
const onEnd
|
|
79
|
+
const onEnd = (event: TransitionEvent | AnimationEvent) => {
|
|
80
80
|
// Skip transitions on child elements
|
|
81
81
|
if (event.target !== element) {
|
|
82
82
|
return;
|
|
83
83
|
}
|
|
84
84
|
|
|
85
|
-
if (!isTransitionOrAnimationEvent(event)) {
|
|
86
|
-
throw new Error('Not a transition or animation event.');
|
|
87
|
-
}
|
|
88
|
-
|
|
89
85
|
// Skip transitions that happened before we started listening
|
|
90
86
|
const elapsedTime = (performance.now() - startTime) / 1000;
|
|
91
87
|
if (elapsedTime < event.elapsedTime) {
|
|
@@ -109,17 +105,18 @@ function awaitAnimationsOnElement(element: Element): Promise<void> | false {
|
|
|
109
105
|
}
|
|
110
106
|
|
|
111
107
|
function getTransitionInfo(element: Element) {
|
|
112
|
-
const styles = window.getComputedStyle(element)
|
|
108
|
+
const styles = window.getComputedStyle(element);
|
|
113
109
|
|
|
114
110
|
const transitionDelays = getStyleProperties(styles, `${TRANSITION}Delay`);
|
|
115
111
|
const transitionDurations = getStyleProperties(styles, `${TRANSITION}Duration`);
|
|
116
112
|
const transitionTimeout = calculateTimeout(transitionDelays, transitionDurations);
|
|
113
|
+
|
|
117
114
|
const animationDelays = getStyleProperties(styles, `${ANIMATION}Delay`);
|
|
118
115
|
const animationDurations = getStyleProperties(styles, `${ANIMATION}Duration`);
|
|
119
116
|
const animationTimeout = calculateTimeout(animationDelays, animationDurations);
|
|
120
117
|
|
|
121
118
|
const timeout = Math.max(transitionTimeout, animationTimeout);
|
|
122
|
-
const type =
|
|
119
|
+
const type: AnimationType | null =
|
|
123
120
|
timeout > 0 ? (transitionTimeout > animationTimeout ? TRANSITION : ANIMATION) : null;
|
|
124
121
|
const propCount = type
|
|
125
122
|
? type === TRANSITION
|
|
@@ -134,15 +131,11 @@ function getTransitionInfo(element: Element) {
|
|
|
134
131
|
};
|
|
135
132
|
}
|
|
136
133
|
|
|
137
|
-
function
|
|
138
|
-
return [`${TRANSITION}end`, `${ANIMATION}end`].includes(event.type);
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
function getStyleProperties(styles: AnimationStyleDeclarations, key: AnimationStyleKeys): string[] {
|
|
134
|
+
export function getStyleProperties(styles: CSSStyleDeclaration, key: AnimationStyleKey): string[] {
|
|
142
135
|
return (styles[key] || '').split(', ');
|
|
143
136
|
}
|
|
144
137
|
|
|
145
|
-
function calculateTimeout(delays: string[], durations: string[]): number {
|
|
138
|
+
export function calculateTimeout(delays: string[], durations: string[]): number {
|
|
146
139
|
while (delays.length < durations.length) {
|
|
147
140
|
delays = delays.concat(delays);
|
|
148
141
|
}
|
|
@@ -150,6 +143,6 @@ function calculateTimeout(delays: string[], durations: string[]): number {
|
|
|
150
143
|
return Math.max(...durations.map((duration, i) => toMs(duration) + toMs(delays[i])));
|
|
151
144
|
}
|
|
152
145
|
|
|
153
|
-
function toMs(time: string): number {
|
|
146
|
+
export function toMs(time: string): number {
|
|
154
147
|
return parseFloat(time) * 1000;
|
|
155
148
|
}
|