@ztimson/momentum 1.5.4 → 1.5.5
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/analytics.d.ts +22 -29
- package/dist/analytics.d.ts.map +1 -1
- package/dist/auth.d.ts +2 -2
- package/dist/auth.d.ts.map +1 -1
- package/dist/client.d.ts +19 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/data.d.ts +1 -1
- package/dist/data.d.ts.map +1 -1
- package/dist/index.js +126 -65
- package/dist/index.mjs +126 -65
- package/dist/momentum.worker.mjs +52 -88
- package/dist/notifications.d.ts.map +1 -1
- package/dist/routes.d.ts +5 -0
- package/dist/routes.d.ts.map +1 -1
- package/dist/storage.d.ts +1 -1
- package/dist/storage.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/analytics.d.ts
CHANGED
|
@@ -53,6 +53,7 @@ export type AnalyticInfo = Meta & {
|
|
|
53
53
|
};
|
|
54
54
|
/** originating IP */
|
|
55
55
|
readonly ip?: string;
|
|
56
|
+
/** Anonymous token */
|
|
56
57
|
/** System language */
|
|
57
58
|
readonly lang?: string;
|
|
58
59
|
/** JavaScript heap size */
|
|
@@ -84,7 +85,7 @@ export type AnalyticInfo = Meta & {
|
|
|
84
85
|
/** Screen resolution */
|
|
85
86
|
readonly res?: number[];
|
|
86
87
|
/** IP Trace */
|
|
87
|
-
readonly trace?: IpTrace
|
|
88
|
+
readonly trace?: Omit<IpTrace, 'ip' | 'timezone'>;
|
|
88
89
|
/** Timezone offset */
|
|
89
90
|
readonly tz?: string;
|
|
90
91
|
/** Original user agent string */
|
|
@@ -92,53 +93,45 @@ export type AnalyticInfo = Meta & {
|
|
|
92
93
|
};
|
|
93
94
|
export type IpTrace = {
|
|
94
95
|
/** Ip trace target */
|
|
95
|
-
readonly
|
|
96
|
-
/**
|
|
97
|
-
readonly
|
|
98
|
-
/** Geolocated continent */
|
|
99
|
-
readonly continent: string;
|
|
100
|
-
/** Geolocated continent shortcode */
|
|
101
|
-
readonly continentCode: string;
|
|
96
|
+
readonly ip: string;
|
|
97
|
+
/** Timezone */
|
|
98
|
+
readonly timezone: string;
|
|
102
99
|
/** Geolocated country */
|
|
103
100
|
readonly country: string;
|
|
104
101
|
/** Geolocated country shortcode */
|
|
105
|
-
readonly countryCode: string;
|
|
106
|
-
/** Geolocated country region shortcode */
|
|
107
102
|
readonly region: string;
|
|
108
|
-
/** Geolocated country region */
|
|
109
|
-
readonly regionName: string;
|
|
110
103
|
/** Geolocated city */
|
|
111
104
|
readonly city: string;
|
|
112
|
-
/** Geolocated city district/suburb */
|
|
113
|
-
readonly district: string;
|
|
114
105
|
/** Geolocated postal code/zip */
|
|
115
106
|
readonly zip: string;
|
|
116
107
|
/** Geolocated latitude */
|
|
117
108
|
readonly lat: number;
|
|
118
109
|
/** Geolocated longitude */
|
|
119
110
|
readonly lon: number;
|
|
120
|
-
/**
|
|
121
|
-
readonly
|
|
122
|
-
/** Geolocated timezone offset */
|
|
123
|
-
readonly offset: number;
|
|
124
|
-
/** Geolocated currency */
|
|
125
|
-
readonly currency: string;
|
|
111
|
+
/** Trace accuracy */
|
|
112
|
+
readonly accuracy: number;
|
|
126
113
|
/** Address provider */
|
|
127
114
|
readonly isp: string;
|
|
128
115
|
/** Registered organization */
|
|
129
116
|
readonly org: string;
|
|
130
|
-
/** AS
|
|
117
|
+
/** AS Registration */
|
|
131
118
|
readonly as: string;
|
|
132
|
-
/** AS organization */
|
|
133
|
-
readonly asname: string;
|
|
134
119
|
/** Cellular network */
|
|
135
120
|
readonly mobile: boolean;
|
|
136
|
-
/** Known
|
|
137
|
-
readonly
|
|
138
|
-
/**
|
|
139
|
-
readonly
|
|
140
|
-
/**
|
|
141
|
-
readonly
|
|
121
|
+
/** Known datacenter */
|
|
122
|
+
readonly datacenter: boolean;
|
|
123
|
+
/** Using TOR network */
|
|
124
|
+
readonly tor: boolean;
|
|
125
|
+
/** Using known VPN */
|
|
126
|
+
readonly vpn: boolean;
|
|
127
|
+
/** Malicious IP */
|
|
128
|
+
readonly naughty: boolean;
|
|
129
|
+
/** Forward Confirmed Reverse DNS */
|
|
130
|
+
readonly fcrdns: boolean;
|
|
131
|
+
/** PTR hostname */
|
|
132
|
+
readonly hostname: string;
|
|
133
|
+
/** Registry Unique ID */
|
|
134
|
+
readonly rdapHandle: string;
|
|
142
135
|
};
|
|
143
136
|
/** Analytics metric */
|
|
144
137
|
export type Metric<T = any> = {
|
package/dist/analytics.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../src/analytics.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../src/analytics.ts"],"names":[],"mappings":"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"}
|
package/dist/auth.d.ts
CHANGED
|
@@ -36,8 +36,8 @@ export declare class Auth extends PathEventEmitter {
|
|
|
36
36
|
* 4. Handle redirects/events
|
|
37
37
|
* @param {boolean | string} reload - Perform redirect (string) or reload (true) on success
|
|
38
38
|
*/
|
|
39
|
-
handleLogin(redirect: string): Promise<SessionData | null>;
|
|
40
39
|
handleLogin(reload?: boolean): Promise<SessionData | null>;
|
|
40
|
+
handleLogin(redirect: string): Promise<SessionData | null>;
|
|
41
41
|
/**
|
|
42
42
|
* Check if origin is recognized & whitelisted
|
|
43
43
|
* @param {string} host Origin to check
|
|
@@ -69,8 +69,8 @@ export declare class Auth extends PathEventEmitter {
|
|
|
69
69
|
* Logout current user
|
|
70
70
|
* @param {boolean | string} reload - Perform redirect (string) or reload (true) on logout
|
|
71
71
|
*/
|
|
72
|
-
logout(redirect: string): Promise<void>;
|
|
73
72
|
logout(reload?: boolean): Promise<void>;
|
|
73
|
+
logout(redirect: string): Promise<void>;
|
|
74
74
|
/**
|
|
75
75
|
* Create a new user with login
|
|
76
76
|
* @param {Partial<User> & {password: string}} user User data with password
|
package/dist/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,gBAAgB,EAAM,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,EAAC,IAAI,EAAE,WAAW,EAAC,MAAM,QAAQ,CAAC;AACzC,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,SAAS,CAAC;AAElC,MAAM,MAAM,WAAW,GAAG;IACzB,iBAAiB;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,mBAAmB;IACnB,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,6BAA6B;IAC7B,MAAM,EAAE,GAAG,CAAC;IACZ,wBAAwB;IACxB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,oCAAoC;IACpC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,2BAA2B;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAA;CACrB,CAAA;AAED,iCAAiC;AACjC,qBAAa,IAAK,SAAQ,gBAAgB;IAmB7B,SAAS,CAAC,QAAQ,EAAE,QAAQ;IAlBxC,sBAAsB;IACf,IAAI,EAAG,IAAI,CAAC;IAEnB,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAE7B,OAAO,CAAC,KAAK,CAAC,CAAc;IAC5B,yDAAyD;IACzD,IAAI,IAAI,IAAI,IAAI,GAAG,IAAI,GAAG,SAAS,CAAuB;IAC1D,oDAAoD;IACpD,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,EAOrC;gBAEqB,QAAQ,EAAE,QAAQ;IAiBxC;;;;;;;OAOG;IACG,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,gBAAgB,EAAM,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,EAAC,IAAI,EAAE,WAAW,EAAC,MAAM,QAAQ,CAAC;AACzC,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,SAAS,CAAC;AAElC,MAAM,MAAM,WAAW,GAAG;IACzB,iBAAiB;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,mBAAmB;IACnB,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,6BAA6B;IAC7B,MAAM,EAAE,GAAG,CAAC;IACZ,wBAAwB;IACxB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,oCAAoC;IACpC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,2BAA2B;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAA;CACrB,CAAA;AAED,iCAAiC;AACjC,qBAAa,IAAK,SAAQ,gBAAgB;IAmB7B,SAAS,CAAC,QAAQ,EAAE,QAAQ;IAlBxC,sBAAsB;IACf,IAAI,EAAG,IAAI,CAAC;IAEnB,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAE7B,OAAO,CAAC,KAAK,CAAC,CAAc;IAC5B,yDAAyD;IACzD,IAAI,IAAI,IAAI,IAAI,GAAG,IAAI,GAAG,SAAS,CAAuB;IAC1D,oDAAoD;IACpD,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,EAOrC;gBAEqB,QAAQ,EAAE,QAAQ;IAiBxC;;;;;;;OAOG;IACG,WAAW,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1D,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAsBhE;;;;OAIG;IACH,SAAS,CAAC,IAAI,GAAE,MAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxD;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,WAAW,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAA;KAAC,GAAG,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAC,GAAG,IAAI,CAAC;IAqBvK;;;;OAIG;IACH,aAAa,CAAC,IAAI,GAAE,MAAwB,GAAG,OAAO,CAAC,MAAM,CAAC;IAqB9D;;;OAGG;IACG,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IACvC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY7C;;;;OAIG;IACG,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAOpF;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACtD;;;;OAIG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcnC;;;;;OAKG;IACG,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,UAAQ,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAgBlF,0EAA0E;IACpE,MAAM,CAAC,QAAQ,EAAE,MAAM;IAK7B;;;;;;OAMG;IACG,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAW7F"}
|
package/dist/client.d.ts
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
import { Momentum } from './momentum';
|
|
2
2
|
import { PathEventEmitter } from './core';
|
|
3
|
+
export type MetaTag = {
|
|
4
|
+
tag: 'meta';
|
|
5
|
+
attrs: Record<string, string>;
|
|
6
|
+
} | {
|
|
7
|
+
tag: 'link';
|
|
8
|
+
attrs: Record<string, string>;
|
|
9
|
+
};
|
|
3
10
|
export type Platform = 'windows' | 'android' | 'ios' | 'mac' | 'linux' | 'unknown';
|
|
4
11
|
export type Theme = {
|
|
5
12
|
background: string;
|
|
@@ -55,6 +62,17 @@ export declare class Client extends PathEventEmitter {
|
|
|
55
62
|
get platform(): Platform;
|
|
56
63
|
get storage(): boolean;
|
|
57
64
|
constructor(momentum: Momentum);
|
|
65
|
+
/**
|
|
66
|
+
* Build the isomorphic list of SEO/meta/link tags shared by the client (DOM) & server (SSR)
|
|
67
|
+
* @param settings Settings map: title, description, theme, public_url, modules, locale
|
|
68
|
+
* @param opts canonicalPath - adds a <link rel="canonical">; assetBaseUrl - base for favicon/manifest (client uses momentum.url, server uses public_url)
|
|
69
|
+
*/
|
|
70
|
+
static metaTags(settings: any, opts?: {
|
|
71
|
+
canonicalPath?: string;
|
|
72
|
+
assetBaseUrl?: string;
|
|
73
|
+
}): MetaTag[];
|
|
74
|
+
/** Render meta tags to an HTML string (SSR) */
|
|
75
|
+
static renderMetaTags(tags: MetaTag[]): string;
|
|
58
76
|
static theme(setting: any, css: true): string;
|
|
59
77
|
static theme(setting: any, css?: false): Theme;
|
|
60
78
|
/**
|
|
@@ -65,6 +83,7 @@ export declare class Client extends PathEventEmitter {
|
|
|
65
83
|
inject(opts?: {
|
|
66
84
|
install?: boolean;
|
|
67
85
|
reload?: boolean;
|
|
86
|
+
canonicalPath?: string;
|
|
68
87
|
}): Promise<{
|
|
69
88
|
[key: string]: any;
|
|
70
89
|
}>;
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,EAAC,gBAAgB,EAAM,MAAM,QAAQ,CAAA;AAE5C,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,GAAG,SAAS,CAAC;AAEnF,MAAM,MAAM,KAAK,GAAG;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CACf,CAAA;AAED,6BAA6B;AAC7B,qBAAa,MAAO,SAAQ,gBAAgB;IAqE/B,SAAS,CAAC,QAAQ,EAAE,QAAQ;IApExC,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,cAAc,CAAM;IAC5B,OAAO,CAAC,eAAe,CAAC,CAAM;IAC9B,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,QAAQ,CAAS;IAEzB,IAAI,SAAS,IAAI,SAAS,GAAG,OAAO,GAAG,KAAK,CAAiC;IAC7E,IAAI,YAAY,IAAI,MAAM,CAA+B;IAEzD,wBAAwB;IACxB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,CAYnC;IAEH,oCAAoC;IACpC,IAAI,UAAU,IAAI,OAAO,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/data.d.ts
CHANGED
|
@@ -94,9 +94,9 @@ export declare class Data extends PathEventEmitter {
|
|
|
94
94
|
* @param {DeleteOptions} options Delete options
|
|
95
95
|
* @return {Promise<number[]>} Array of deleted document IDs
|
|
96
96
|
*/
|
|
97
|
+
delete<T>(collection: string, filter: Filter<T>, options?: DeleteOptions): Promise<number[]>;
|
|
97
98
|
delete(collection: string, id: number, options?: DeleteOptions): Promise<number[]>;
|
|
98
99
|
delete(collection: string, ids: number[], options?: DeleteOptions): Promise<number[]>;
|
|
99
|
-
delete<T>(collection: string, filter: Filter<T>, options?: DeleteOptions): Promise<number[]>;
|
|
100
100
|
/**
|
|
101
101
|
* Execute raw MongoDB query
|
|
102
102
|
* @param {string} collection Target collection name
|
package/dist/data.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../src/data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAC,KAAK,IAAI,EAAE,gBAAgB,EAAM,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AAEpC,uCAAuC;AACvC,MAAM,MAAM,cAAc,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEtG,mFAAmF;AACnF,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC,GAAG,cAAc,GAAG,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;AAEnH,6EAA6E;AAC7E,MAAM,MAAM,MAAM,CAAC,CAAC,GAAG,GAAG,IAAI,CAAA;KAC5B,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC;CAAC,IACrE,KAAK,CAAC,CAAA;KAAE,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAC,GAAG;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAA;CAAC,IAAG,IAAI,CAAC,CAAC;AAEnF,+BAA+B;AAC/B,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;AAEnC,yBAAyB;AACzB,MAAM,MAAM,WAAW,GAAG;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CACzB,CAAC;AAEF,2BAA2B;AAC3B,MAAM,MAAM,aAAa,GAAG;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,2BAA2B;AAC3B,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,GAAG,IAAI;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,wBAAwB;AACxB,MAAM,MAAM,QAAQ,GAAG;IACtB,2BAA2B;IAC3B,OAAO,EAAE,YAAY,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,YAAY,GAAG,WAAW,GAAG,aAAa,GAAG,YAAY,GAAG,YAAY,GAAG,WAAW,CAAC;IACtJ,gCAAgC;IAChC,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,YAAY;IACZ,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,gCAAgC;IAChC,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,4BAA4B;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB,CAAA;AASD,qCAAqC;AACrC,qBAAa,IAAK,SAAQ,gBAAgB;IAG7B,SAAS,CAAC,QAAQ,EAAE,QAAQ;IAFxC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAA;KAAC,CAAM;gBAE5C,QAAQ,EAAE,QAAQ;IAIxC,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM;IAIjE;;;;;OAKG;IACH,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC3E,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAe/E;;;;;;OAMG;IACH,IAAI,CAAC,CAAC,SAAS,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IACjG,IAAI,CAAC,CAAC,SAAS,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;IAC5F,IAAI,CAAC,CAAC,SAAS,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAsBjG;;;;;;OAMG;IACH,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACvG,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3G,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG;QAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;KAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7H,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAoBvI;;;;;;OAMG;IACH,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../src/data.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -669,7 +669,7 @@
|
|
|
669
669
|
}
|
|
670
670
|
function dayOfYear(date) {
|
|
671
671
|
const start = new Date(Date.UTC(date.getUTCFullYear(), 0, 1));
|
|
672
|
-
return Math.ceil((date.getTime() - start.getTime()) /
|
|
672
|
+
return Math.ceil((date.getTime() - start.getTime()) / 864e5);
|
|
673
673
|
}
|
|
674
674
|
function formatDate(format = "YYYY-MM-DD H:mm", date = /* @__PURE__ */ new Date(), tz = "local") {
|
|
675
675
|
if (typeof date === "number" || typeof date === "string") date = new Date(date);
|
|
@@ -1725,10 +1725,11 @@
|
|
|
1725
1725
|
on(event, listener) {
|
|
1726
1726
|
makeArray(event).forEach((e) => {
|
|
1727
1727
|
let fullEvent;
|
|
1728
|
-
if (typeof e === "string")
|
|
1729
|
-
|
|
1730
|
-
|
|
1731
|
-
|
|
1728
|
+
if (typeof e === "string") {
|
|
1729
|
+
if (e[0] === ":" && this.prefix) fullEvent = `${this.prefix}${e}`;
|
|
1730
|
+
else if (this.prefix) fullEvent = `${this.prefix}/${e}`;
|
|
1731
|
+
else fullEvent = e;
|
|
1732
|
+
} else fullEvent = e instanceof PathEvent ? PathEvent.toString(e.fullPath, e.methods) : e;
|
|
1732
1733
|
this.listeners.push([new PathEvent(fullEvent), listener]);
|
|
1733
1734
|
});
|
|
1734
1735
|
return () => this.off(listener);
|
|
@@ -2479,7 +2480,7 @@
|
|
|
2479
2480
|
if (!date) return true;
|
|
2480
2481
|
if (date == "true") return false;
|
|
2481
2482
|
if (typeof date != "object") date = new Date(date);
|
|
2482
|
-
return Date.now() - date.getTime() >=
|
|
2483
|
+
return Date.now() - date.getTime() >= 2592e6;
|
|
2483
2484
|
}
|
|
2484
2485
|
collectNavigationMetrics() {
|
|
2485
2486
|
return new Promise((res) => {
|
|
@@ -2559,7 +2560,7 @@
|
|
|
2559
2560
|
async consentPrompt(content) {
|
|
2560
2561
|
const settings = await this.momentum.settings.map();
|
|
2561
2562
|
const { close, dialog, result } = createDialog(`
|
|
2562
|
-
<div style="margin: 1rem; text-align: center">${content || `<p style="margin: 0;">This website uses cookies to improve your experience. ${settings.privacy_policy_url ? `For more information, please read our <a href="${this.momentum.url}${settings.privacy_policy_url}" target="_blank">Privacy Policy</a>.` : ""}</p>`}</div>
|
|
2563
|
+
<div style="margin: 1rem; text-align: center;">${content || `<p style="margin: 0; color: black;">This website uses cookies to improve your experience. ${settings.privacy_policy_url ? `For more information, please read our <a href="${this.momentum.url}${settings.privacy_policy_url}" target="_blank">Privacy Policy</a>.` : ""}</p>`}</div>
|
|
2563
2564
|
<div style="display: flex; gap: 10px">
|
|
2564
2565
|
<button class="agree btn btn-primary" >Agree</button>
|
|
2565
2566
|
<button class="decline btn">Essential Only</button>
|
|
@@ -2582,8 +2583,8 @@
|
|
|
2582
2583
|
async speedTest(format = false, bytes) {
|
|
2583
2584
|
let bps = 0;
|
|
2584
2585
|
if (!bytes) {
|
|
2585
|
-
bps = await this.speedTest(false,
|
|
2586
|
-
if (bps >
|
|
2586
|
+
bps = await this.speedTest(false, 1048576);
|
|
2587
|
+
if (bps > 10485760) bps = await this.speedTest(false, 20971520);
|
|
2587
2588
|
} else {
|
|
2588
2589
|
const start = performance.now();
|
|
2589
2590
|
await this.momentum.api.request({ url: `api/tools/dummy-file?size=${bytes}` });
|
|
@@ -2646,8 +2647,10 @@
|
|
|
2646
2647
|
this._token = token;
|
|
2647
2648
|
if (this.momentum.opts.credentialsStrategy == "auto" && !this.sameOrigin || this.momentum.opts.credentialsStrategy == "header") {
|
|
2648
2649
|
this.headers["Authorization"] = this._token ? `Bearer ${this._token}` : null;
|
|
2649
|
-
if (this.momentum.opts.persist && typeof localStorage != "undefined")
|
|
2650
|
-
|
|
2650
|
+
if (this.momentum.opts.persist && typeof localStorage != "undefined") {
|
|
2651
|
+
if (this._token) localStorage.setItem(this.storageKey, this._token);
|
|
2652
|
+
else localStorage.removeItem(this.storageKey);
|
|
2653
|
+
}
|
|
2651
2654
|
}
|
|
2652
2655
|
this.emit(`token:${token ? "c" : "d"}`, this._token);
|
|
2653
2656
|
}
|
|
@@ -2873,8 +2876,10 @@
|
|
|
2873
2876
|
}
|
|
2874
2877
|
if (!s?.user) {
|
|
2875
2878
|
s = await this.loginRedirect();
|
|
2876
|
-
if (!!s && reload)
|
|
2877
|
-
|
|
2879
|
+
if (!!s && reload) {
|
|
2880
|
+
if (typeof reload == "string") location.href = reload;
|
|
2881
|
+
else location.reload();
|
|
2882
|
+
}
|
|
2878
2883
|
}
|
|
2879
2884
|
return this.session || null;
|
|
2880
2885
|
}
|
|
@@ -3248,7 +3253,7 @@
|
|
|
3248
3253
|
});
|
|
3249
3254
|
/** Check if PWA can be installed */
|
|
3250
3255
|
get canInstall() {
|
|
3251
|
-
return !!this.nativePwaPrompt;
|
|
3256
|
+
return !!this.nativePwaPrompt && !this.isApp && !this.isHeadless;
|
|
3252
3257
|
}
|
|
3253
3258
|
/** Running inside a container */
|
|
3254
3259
|
get isApp() {
|
|
@@ -3304,7 +3309,7 @@
|
|
|
3304
3309
|
window.addEventListener("beforeinstallprompt", (event) => {
|
|
3305
3310
|
event.preventDefault();
|
|
3306
3311
|
this.nativePwaPrompt = event;
|
|
3307
|
-
this.emit("install:r");
|
|
3312
|
+
this.emit("install:r", true);
|
|
3308
3313
|
});
|
|
3309
3314
|
if (this.storage && sessionStorage.getItem(`${this.momentum.url.host}:speed`)) this.speed = Promise.resolve(+sessionStorage.getItem(`${this.momentum.url.host}:speed`));
|
|
3310
3315
|
else this.speed = new Promise((res) => {
|
|
@@ -3312,6 +3317,66 @@
|
|
|
3312
3317
|
});
|
|
3313
3318
|
}
|
|
3314
3319
|
}
|
|
3320
|
+
/**
|
|
3321
|
+
* Build the isomorphic list of SEO/meta/link tags shared by the client (DOM) & server (SSR)
|
|
3322
|
+
* @param settings Settings map: title, description, theme, public_url, modules, locale
|
|
3323
|
+
* @param opts canonicalPath - adds a <link rel="canonical">; assetBaseUrl - base for favicon/manifest (client uses momentum.url, server uses public_url)
|
|
3324
|
+
*/
|
|
3325
|
+
static metaTags(settings, opts = {}) {
|
|
3326
|
+
const base = settings.public_url;
|
|
3327
|
+
const assetBase = opts.assetBaseUrl ?? base;
|
|
3328
|
+
const banner = `${base}/banner.png?size=1200x630`;
|
|
3329
|
+
const favicon = `${base}/favicon.png`;
|
|
3330
|
+
const assetFavicon = `${assetBase}/favicon.png`;
|
|
3331
|
+
const tags = [];
|
|
3332
|
+
const meta = (key, name, content) => content != null && tags.push({
|
|
3333
|
+
tag: "meta",
|
|
3334
|
+
attrs: {
|
|
3335
|
+
[key]: name,
|
|
3336
|
+
content
|
|
3337
|
+
}
|
|
3338
|
+
});
|
|
3339
|
+
const link = (rel, href) => href && tags.push({
|
|
3340
|
+
tag: "link",
|
|
3341
|
+
attrs: {
|
|
3342
|
+
rel,
|
|
3343
|
+
href
|
|
3344
|
+
}
|
|
3345
|
+
});
|
|
3346
|
+
if (opts.canonicalPath != null) link("canonical", `${base}${opts.canonicalPath.startsWith("/") ? "" : "/"}${opts.canonicalPath}`);
|
|
3347
|
+
meta("name", "author", "Built with Momentum");
|
|
3348
|
+
meta("name", "description", settings.description);
|
|
3349
|
+
meta("name", "theme-color", settings.theme?.background);
|
|
3350
|
+
meta("property", "og:title", settings.title);
|
|
3351
|
+
meta("property", "og:description", settings.description);
|
|
3352
|
+
meta("property", "og:image", banner);
|
|
3353
|
+
meta("property", "og:image:width", "1200");
|
|
3354
|
+
meta("property", "og:image:height", "630");
|
|
3355
|
+
meta("property", "og:image:alt", settings.title);
|
|
3356
|
+
meta("property", "og:logo", `${base}/favicon.png?size=180`);
|
|
3357
|
+
meta("property", "og:url", base);
|
|
3358
|
+
meta("property", "og:site_name", "Momentum");
|
|
3359
|
+
meta("property", "og:type", "website");
|
|
3360
|
+
meta("property", "og:locale", settings.locale || "en_US");
|
|
3361
|
+
meta("name", "twitter:card", "summary_large_image");
|
|
3362
|
+
meta("name", "twitter:title", settings.title);
|
|
3363
|
+
meta("name", "twitter:description", settings.description);
|
|
3364
|
+
meta("name", "twitter:image", banner);
|
|
3365
|
+
link("icon", favicon);
|
|
3366
|
+
link("apple-touch-icon", assetFavicon);
|
|
3367
|
+
if (settings.modules?.pwa) {
|
|
3368
|
+
meta("name", "mobile-web-app-capable", "yes");
|
|
3369
|
+
meta("name", "apple-mobile-web-app-status-bar-style", "default");
|
|
3370
|
+
meta("name", "apple-mobile-web-app-title", settings.title);
|
|
3371
|
+
link("apple-touch-startup-image", assetFavicon);
|
|
3372
|
+
link("manifest", `${assetBase}/manifest.json`);
|
|
3373
|
+
}
|
|
3374
|
+
return tags;
|
|
3375
|
+
}
|
|
3376
|
+
/** Render meta tags to an HTML string (SSR) */
|
|
3377
|
+
static renderMetaTags(tags) {
|
|
3378
|
+
return tags.map((t) => `<${t.tag} ${Object.entries(t.attrs).map(([k, v]) => `${k}="${v}"`).join(" ")}>`).join("\n");
|
|
3379
|
+
}
|
|
3315
3380
|
static theme(setting, css = false) {
|
|
3316
3381
|
const t = {
|
|
3317
3382
|
background: setting?.background,
|
|
@@ -3371,14 +3436,6 @@ ${Object.entries(t).map(([name, value]) => `--theme-${kebabCase(name)}: ${value}
|
|
|
3371
3436
|
[k]: v.value
|
|
3372
3437
|
}), {});
|
|
3373
3438
|
} else settings = await this.momentum.settings.map(opts.reload);
|
|
3374
|
-
const meta = (key, name, value) => {
|
|
3375
|
-
const exists = document.querySelector(`meta[${key}="${name}"]`);
|
|
3376
|
-
if (value === void 0 || exists) return exists;
|
|
3377
|
-
const meta = document.createElement("meta");
|
|
3378
|
-
meta.setAttribute(key, name);
|
|
3379
|
-
meta.content = value;
|
|
3380
|
-
document.head.append(meta);
|
|
3381
|
-
};
|
|
3382
3439
|
document.querySelectorAll(".momentum-logo").forEach((el) => {
|
|
3383
3440
|
const size = el.src ? /[?&]size="?(.+)(?:"|&|$)/.exec(el.src) : null;
|
|
3384
3441
|
el.src = `${this.momentum.url.toString()}favicon.png${size ? `?size=${size[1]}` : ""}`;
|
|
@@ -3389,35 +3446,35 @@ ${Object.entries(t).map(([name, value]) => `--theme-${kebabCase(name)}: ${value}
|
|
|
3389
3446
|
else if (keys[1] == "contact" && el.tagName == "A") el.href = `mailto:${settings.contact}?subject=${settings.title} - ${document.title.split("|")[0]}`;
|
|
3390
3447
|
el.innerText = keys[2] ? dotNotation(settings[keys[1]], keys[2]) : settings[keys[1]];
|
|
3391
3448
|
});
|
|
3392
|
-
|
|
3393
|
-
|
|
3394
|
-
|
|
3395
|
-
|
|
3396
|
-
|
|
3397
|
-
|
|
3398
|
-
|
|
3399
|
-
|
|
3400
|
-
|
|
3401
|
-
|
|
3402
|
-
|
|
3403
|
-
|
|
3404
|
-
|
|
3405
|
-
|
|
3406
|
-
|
|
3407
|
-
|
|
3408
|
-
|
|
3409
|
-
|
|
3410
|
-
|
|
3411
|
-
|
|
3412
|
-
|
|
3449
|
+
Client.metaTags(settings, {
|
|
3450
|
+
canonicalPath: opts.canonicalPath,
|
|
3451
|
+
assetBaseUrl: this.momentum.url.toString().replace(/\/$/, "")
|
|
3452
|
+
}).forEach((t) => {
|
|
3453
|
+
if (t.tag == "meta") {
|
|
3454
|
+
const key = t.attrs.name ? "name" : "property";
|
|
3455
|
+
const name = t.attrs[key];
|
|
3456
|
+
let el = document.querySelector(`meta[${key}="${name}"]`);
|
|
3457
|
+
if (!el) {
|
|
3458
|
+
el = document.createElement("meta");
|
|
3459
|
+
el.setAttribute(key, name);
|
|
3460
|
+
document.head.append(el);
|
|
3461
|
+
}
|
|
3462
|
+
el.setAttribute("content", t.attrs.content);
|
|
3463
|
+
} else {
|
|
3464
|
+
let el = document.querySelector(`link[rel="${t.attrs.rel}"]`);
|
|
3465
|
+
if (!el) {
|
|
3466
|
+
el = document.createElement("link");
|
|
3467
|
+
el.setAttribute("rel", t.attrs.rel);
|
|
3468
|
+
document.head.append(el);
|
|
3469
|
+
}
|
|
3470
|
+
el.setAttribute("href", t.attrs.href);
|
|
3413
3471
|
}
|
|
3414
|
-
|
|
3415
|
-
|
|
3416
|
-
|
|
3417
|
-
|
|
3418
|
-
|
|
3419
|
-
}
|
|
3420
|
-
meta("name", "theme-color", settings["theme"]?.background);
|
|
3472
|
+
});
|
|
3473
|
+
if (settings.modules?.["pwa"] && opts.install !== false && !this.installTimeout && this.canInstall) this.installTimeout = setTimeout(async () => {
|
|
3474
|
+
this.installTimeout = null;
|
|
3475
|
+
const dismissed = localStorage.getItem(`momentum:install`);
|
|
3476
|
+
if (!dismissed || dismissed != "true" && Date.now() - new Date(dismissed).getTime() > 864e5 * this.momentum.opts.installPrompt.retry) this.install();
|
|
3477
|
+
}, 6e4 * this.momentum.opts.installPrompt.delay);
|
|
3421
3478
|
if (!document.body.classList.contains("theme-manual")) {
|
|
3422
3479
|
document.body.classList.add(settings["theme"]?.darkMode ? "theme-dark" : "theme-light");
|
|
3423
3480
|
document.body.classList.remove(!settings["theme"]?.darkMode ? "theme-dark" : "theme-light");
|
|
@@ -3624,9 +3681,10 @@ ${Object.entries(t).map(([name, value]) => `--theme-${kebabCase(name)}: ${value}
|
|
|
3624
3681
|
}
|
|
3625
3682
|
}).then((resp) => {
|
|
3626
3683
|
if (!resp) return null;
|
|
3627
|
-
if (Array.isArray(resp))
|
|
3628
|
-
|
|
3629
|
-
|
|
3684
|
+
if (Array.isArray(resp)) {
|
|
3685
|
+
if (!q && !options?.limit) this.emit(PES`data/${collection}:r`, collection, resp);
|
|
3686
|
+
else resp.forEach((r) => this.emit(PES`data/${collection}/${r._id}:r`, collection, resp));
|
|
3687
|
+
} else this.emit(PES`data/${collection}/${resp._id}:r`, collection, resp);
|
|
3630
3688
|
return resp;
|
|
3631
3689
|
});
|
|
3632
3690
|
}
|
|
@@ -3816,12 +3874,13 @@ ${Object.entries(t).map(([name, value]) => `--theme-${kebabCase(name)}: ${value}
|
|
|
3816
3874
|
if (typeof window != "undefined") window.addEventListener("unhandledrejection", async (event) => {
|
|
3817
3875
|
let log = event.reason?.stack || event.reason;
|
|
3818
3876
|
if (event.reason?.url) log = `${event.reason.method} ${event.reason.url} -> ${event.reason.code}\n\n${log}`;
|
|
3819
|
-
if (event.reason?.code == null || event.reason?.code >= 500)
|
|
3820
|
-
|
|
3821
|
-
|
|
3822
|
-
|
|
3823
|
-
|
|
3824
|
-
|
|
3877
|
+
if (event.reason?.code == null || event.reason?.code >= 500) {
|
|
3878
|
+
if (LOG_LEVEL[this.logLevel] >= 0) this.error(log);
|
|
3879
|
+
else {
|
|
3880
|
+
this.logs.push(this.buildLog(LOG_LEVEL.ERROR, log));
|
|
3881
|
+
this.emit(`local/error:c`, this.logs);
|
|
3882
|
+
}
|
|
3883
|
+
} else if (LOG_LEVEL[this.logLevel] >= 1) this.warn(log);
|
|
3825
3884
|
else {
|
|
3826
3885
|
this.logs.push(this.buildLog(LOG_LEVEL.WARN, log));
|
|
3827
3886
|
this.emit(`local/warn:c`, this.logs);
|
|
@@ -4184,7 +4243,7 @@ ${Object.entries(t).map(([name, value]) => `--theme-${kebabCase(name)}: ${value}
|
|
|
4184
4243
|
*/
|
|
4185
4244
|
getToken(id) {
|
|
4186
4245
|
return this.momentum.api.request({
|
|
4187
|
-
url:
|
|
4246
|
+
url: this.momentum.url.origin + `/api/transactions/init/${id || ""}`,
|
|
4188
4247
|
method: "POST"
|
|
4189
4248
|
}).then((resp) => resp.token);
|
|
4190
4249
|
}
|
|
@@ -4253,7 +4312,7 @@ ${Object.entries(t).map(([name, value]) => `--theme-${kebabCase(name)}: ${value}
|
|
|
4253
4312
|
* @returns {string} URL
|
|
4254
4313
|
*/
|
|
4255
4314
|
checkoutUrl(id) {
|
|
4256
|
-
return encodeURI(`${this.momentum.opts.checkoutUrl}?
|
|
4315
|
+
return encodeURI(`${this.momentum.opts.checkoutUrl}?transaction=${id}`);
|
|
4257
4316
|
}
|
|
4258
4317
|
async delete(key) {
|
|
4259
4318
|
throw new Error("Not supported");
|
|
@@ -4563,8 +4622,10 @@ ${Object.entries(t).map(([name, value]) => `--theme-${kebabCase(name)}: ${value}
|
|
|
4563
4622
|
this.cache.values().forEach((meta) => {
|
|
4564
4623
|
if (meta?.children && event.path == meta.path) meta.children = [...meta.children.filter((c) => c.path != event.name), payload.name];
|
|
4565
4624
|
});
|
|
4566
|
-
} else if (event.delete || payload == null)
|
|
4567
|
-
|
|
4625
|
+
} else if (event.delete || payload == null) {
|
|
4626
|
+
if (!event.path) return this.cache.clear();
|
|
4627
|
+
else this.cache.delete(event.path);
|
|
4628
|
+
}
|
|
4568
4629
|
});
|
|
4569
4630
|
}
|
|
4570
4631
|
/**
|
|
@@ -4891,7 +4952,7 @@ ${Object.entries(t).map(([name, value]) => `--theme-${kebabCase(name)}: ${value}
|
|
|
4891
4952
|
};
|
|
4892
4953
|
//#endregion
|
|
4893
4954
|
//#region package.json
|
|
4894
|
-
var version = "1.5.
|
|
4955
|
+
var version = "1.5.5";
|
|
4895
4956
|
//#endregion
|
|
4896
4957
|
//#region src/webRtc.ts
|
|
4897
4958
|
var WebRtc = class extends PathEventEmitter {
|
package/dist/index.mjs
CHANGED
|
@@ -665,7 +665,7 @@ function dayOfWeek(d) {
|
|
|
665
665
|
}
|
|
666
666
|
function dayOfYear(date) {
|
|
667
667
|
const start = new Date(Date.UTC(date.getUTCFullYear(), 0, 1));
|
|
668
|
-
return Math.ceil((date.getTime() - start.getTime()) /
|
|
668
|
+
return Math.ceil((date.getTime() - start.getTime()) / 864e5);
|
|
669
669
|
}
|
|
670
670
|
function formatDate(format = "YYYY-MM-DD H:mm", date = /* @__PURE__ */ new Date(), tz = "local") {
|
|
671
671
|
if (typeof date === "number" || typeof date === "string") date = new Date(date);
|
|
@@ -1721,10 +1721,11 @@ var PathEventEmitter = class {
|
|
|
1721
1721
|
on(event, listener) {
|
|
1722
1722
|
makeArray(event).forEach((e) => {
|
|
1723
1723
|
let fullEvent;
|
|
1724
|
-
if (typeof e === "string")
|
|
1725
|
-
|
|
1726
|
-
|
|
1727
|
-
|
|
1724
|
+
if (typeof e === "string") {
|
|
1725
|
+
if (e[0] === ":" && this.prefix) fullEvent = `${this.prefix}${e}`;
|
|
1726
|
+
else if (this.prefix) fullEvent = `${this.prefix}/${e}`;
|
|
1727
|
+
else fullEvent = e;
|
|
1728
|
+
} else fullEvent = e instanceof PathEvent ? PathEvent.toString(e.fullPath, e.methods) : e;
|
|
1728
1729
|
this.listeners.push([new PathEvent(fullEvent), listener]);
|
|
1729
1730
|
});
|
|
1730
1731
|
return () => this.off(listener);
|
|
@@ -2475,7 +2476,7 @@ var Analytics = class extends AssetController {
|
|
|
2475
2476
|
if (!date) return true;
|
|
2476
2477
|
if (date == "true") return false;
|
|
2477
2478
|
if (typeof date != "object") date = new Date(date);
|
|
2478
|
-
return Date.now() - date.getTime() >=
|
|
2479
|
+
return Date.now() - date.getTime() >= 2592e6;
|
|
2479
2480
|
}
|
|
2480
2481
|
collectNavigationMetrics() {
|
|
2481
2482
|
return new Promise((res) => {
|
|
@@ -2555,7 +2556,7 @@ var Analytics = class extends AssetController {
|
|
|
2555
2556
|
async consentPrompt(content) {
|
|
2556
2557
|
const settings = await this.momentum.settings.map();
|
|
2557
2558
|
const { close, dialog, result } = createDialog(`
|
|
2558
|
-
<div style="margin: 1rem; text-align: center">${content || `<p style="margin: 0;">This website uses cookies to improve your experience. ${settings.privacy_policy_url ? `For more information, please read our <a href="${this.momentum.url}${settings.privacy_policy_url}" target="_blank">Privacy Policy</a>.` : ""}</p>`}</div>
|
|
2559
|
+
<div style="margin: 1rem; text-align: center;">${content || `<p style="margin: 0; color: black;">This website uses cookies to improve your experience. ${settings.privacy_policy_url ? `For more information, please read our <a href="${this.momentum.url}${settings.privacy_policy_url}" target="_blank">Privacy Policy</a>.` : ""}</p>`}</div>
|
|
2559
2560
|
<div style="display: flex; gap: 10px">
|
|
2560
2561
|
<button class="agree btn btn-primary" >Agree</button>
|
|
2561
2562
|
<button class="decline btn">Essential Only</button>
|
|
@@ -2578,8 +2579,8 @@ var Analytics = class extends AssetController {
|
|
|
2578
2579
|
async speedTest(format = false, bytes) {
|
|
2579
2580
|
let bps = 0;
|
|
2580
2581
|
if (!bytes) {
|
|
2581
|
-
bps = await this.speedTest(false,
|
|
2582
|
-
if (bps >
|
|
2582
|
+
bps = await this.speedTest(false, 1048576);
|
|
2583
|
+
if (bps > 10485760) bps = await this.speedTest(false, 20971520);
|
|
2583
2584
|
} else {
|
|
2584
2585
|
const start = performance.now();
|
|
2585
2586
|
await this.momentum.api.request({ url: `api/tools/dummy-file?size=${bytes}` });
|
|
@@ -2642,8 +2643,10 @@ var Api = class extends Http {
|
|
|
2642
2643
|
this._token = token;
|
|
2643
2644
|
if (this.momentum.opts.credentialsStrategy == "auto" && !this.sameOrigin || this.momentum.opts.credentialsStrategy == "header") {
|
|
2644
2645
|
this.headers["Authorization"] = this._token ? `Bearer ${this._token}` : null;
|
|
2645
|
-
if (this.momentum.opts.persist && typeof localStorage != "undefined")
|
|
2646
|
-
|
|
2646
|
+
if (this.momentum.opts.persist && typeof localStorage != "undefined") {
|
|
2647
|
+
if (this._token) localStorage.setItem(this.storageKey, this._token);
|
|
2648
|
+
else localStorage.removeItem(this.storageKey);
|
|
2649
|
+
}
|
|
2647
2650
|
}
|
|
2648
2651
|
this.emit(`token:${token ? "c" : "d"}`, this._token);
|
|
2649
2652
|
}
|
|
@@ -2869,8 +2872,10 @@ var Auth = class extends PathEventEmitter {
|
|
|
2869
2872
|
}
|
|
2870
2873
|
if (!s?.user) {
|
|
2871
2874
|
s = await this.loginRedirect();
|
|
2872
|
-
if (!!s && reload)
|
|
2873
|
-
|
|
2875
|
+
if (!!s && reload) {
|
|
2876
|
+
if (typeof reload == "string") location.href = reload;
|
|
2877
|
+
else location.reload();
|
|
2878
|
+
}
|
|
2874
2879
|
}
|
|
2875
2880
|
return this.session || null;
|
|
2876
2881
|
}
|
|
@@ -3244,7 +3249,7 @@ var Client = class Client extends PathEventEmitter {
|
|
|
3244
3249
|
});
|
|
3245
3250
|
/** Check if PWA can be installed */
|
|
3246
3251
|
get canInstall() {
|
|
3247
|
-
return !!this.nativePwaPrompt;
|
|
3252
|
+
return !!this.nativePwaPrompt && !this.isApp && !this.isHeadless;
|
|
3248
3253
|
}
|
|
3249
3254
|
/** Running inside a container */
|
|
3250
3255
|
get isApp() {
|
|
@@ -3300,7 +3305,7 @@ var Client = class Client extends PathEventEmitter {
|
|
|
3300
3305
|
window.addEventListener("beforeinstallprompt", (event) => {
|
|
3301
3306
|
event.preventDefault();
|
|
3302
3307
|
this.nativePwaPrompt = event;
|
|
3303
|
-
this.emit("install:r");
|
|
3308
|
+
this.emit("install:r", true);
|
|
3304
3309
|
});
|
|
3305
3310
|
if (this.storage && sessionStorage.getItem(`${this.momentum.url.host}:speed`)) this.speed = Promise.resolve(+sessionStorage.getItem(`${this.momentum.url.host}:speed`));
|
|
3306
3311
|
else this.speed = new Promise((res) => {
|
|
@@ -3308,6 +3313,66 @@ var Client = class Client extends PathEventEmitter {
|
|
|
3308
3313
|
});
|
|
3309
3314
|
}
|
|
3310
3315
|
}
|
|
3316
|
+
/**
|
|
3317
|
+
* Build the isomorphic list of SEO/meta/link tags shared by the client (DOM) & server (SSR)
|
|
3318
|
+
* @param settings Settings map: title, description, theme, public_url, modules, locale
|
|
3319
|
+
* @param opts canonicalPath - adds a <link rel="canonical">; assetBaseUrl - base for favicon/manifest (client uses momentum.url, server uses public_url)
|
|
3320
|
+
*/
|
|
3321
|
+
static metaTags(settings, opts = {}) {
|
|
3322
|
+
const base = settings.public_url;
|
|
3323
|
+
const assetBase = opts.assetBaseUrl ?? base;
|
|
3324
|
+
const banner = `${base}/banner.png?size=1200x630`;
|
|
3325
|
+
const favicon = `${base}/favicon.png`;
|
|
3326
|
+
const assetFavicon = `${assetBase}/favicon.png`;
|
|
3327
|
+
const tags = [];
|
|
3328
|
+
const meta = (key, name, content) => content != null && tags.push({
|
|
3329
|
+
tag: "meta",
|
|
3330
|
+
attrs: {
|
|
3331
|
+
[key]: name,
|
|
3332
|
+
content
|
|
3333
|
+
}
|
|
3334
|
+
});
|
|
3335
|
+
const link = (rel, href) => href && tags.push({
|
|
3336
|
+
tag: "link",
|
|
3337
|
+
attrs: {
|
|
3338
|
+
rel,
|
|
3339
|
+
href
|
|
3340
|
+
}
|
|
3341
|
+
});
|
|
3342
|
+
if (opts.canonicalPath != null) link("canonical", `${base}${opts.canonicalPath.startsWith("/") ? "" : "/"}${opts.canonicalPath}`);
|
|
3343
|
+
meta("name", "author", "Built with Momentum");
|
|
3344
|
+
meta("name", "description", settings.description);
|
|
3345
|
+
meta("name", "theme-color", settings.theme?.background);
|
|
3346
|
+
meta("property", "og:title", settings.title);
|
|
3347
|
+
meta("property", "og:description", settings.description);
|
|
3348
|
+
meta("property", "og:image", banner);
|
|
3349
|
+
meta("property", "og:image:width", "1200");
|
|
3350
|
+
meta("property", "og:image:height", "630");
|
|
3351
|
+
meta("property", "og:image:alt", settings.title);
|
|
3352
|
+
meta("property", "og:logo", `${base}/favicon.png?size=180`);
|
|
3353
|
+
meta("property", "og:url", base);
|
|
3354
|
+
meta("property", "og:site_name", "Momentum");
|
|
3355
|
+
meta("property", "og:type", "website");
|
|
3356
|
+
meta("property", "og:locale", settings.locale || "en_US");
|
|
3357
|
+
meta("name", "twitter:card", "summary_large_image");
|
|
3358
|
+
meta("name", "twitter:title", settings.title);
|
|
3359
|
+
meta("name", "twitter:description", settings.description);
|
|
3360
|
+
meta("name", "twitter:image", banner);
|
|
3361
|
+
link("icon", favicon);
|
|
3362
|
+
link("apple-touch-icon", assetFavicon);
|
|
3363
|
+
if (settings.modules?.pwa) {
|
|
3364
|
+
meta("name", "mobile-web-app-capable", "yes");
|
|
3365
|
+
meta("name", "apple-mobile-web-app-status-bar-style", "default");
|
|
3366
|
+
meta("name", "apple-mobile-web-app-title", settings.title);
|
|
3367
|
+
link("apple-touch-startup-image", assetFavicon);
|
|
3368
|
+
link("manifest", `${assetBase}/manifest.json`);
|
|
3369
|
+
}
|
|
3370
|
+
return tags;
|
|
3371
|
+
}
|
|
3372
|
+
/** Render meta tags to an HTML string (SSR) */
|
|
3373
|
+
static renderMetaTags(tags) {
|
|
3374
|
+
return tags.map((t) => `<${t.tag} ${Object.entries(t.attrs).map(([k, v]) => `${k}="${v}"`).join(" ")}>`).join("\n");
|
|
3375
|
+
}
|
|
3311
3376
|
static theme(setting, css = false) {
|
|
3312
3377
|
const t = {
|
|
3313
3378
|
background: setting?.background,
|
|
@@ -3367,14 +3432,6 @@ ${Object.entries(t).map(([name, value]) => `--theme-${kebabCase(name)}: ${value}
|
|
|
3367
3432
|
[k]: v.value
|
|
3368
3433
|
}), {});
|
|
3369
3434
|
} else settings = await this.momentum.settings.map(opts.reload);
|
|
3370
|
-
const meta = (key, name, value) => {
|
|
3371
|
-
const exists = document.querySelector(`meta[${key}="${name}"]`);
|
|
3372
|
-
if (value === void 0 || exists) return exists;
|
|
3373
|
-
const meta = document.createElement("meta");
|
|
3374
|
-
meta.setAttribute(key, name);
|
|
3375
|
-
meta.content = value;
|
|
3376
|
-
document.head.append(meta);
|
|
3377
|
-
};
|
|
3378
3435
|
document.querySelectorAll(".momentum-logo").forEach((el) => {
|
|
3379
3436
|
const size = el.src ? /[?&]size="?(.+)(?:"|&|$)/.exec(el.src) : null;
|
|
3380
3437
|
el.src = `${this.momentum.url.toString()}favicon.png${size ? `?size=${size[1]}` : ""}`;
|
|
@@ -3385,35 +3442,35 @@ ${Object.entries(t).map(([name, value]) => `--theme-${kebabCase(name)}: ${value}
|
|
|
3385
3442
|
else if (keys[1] == "contact" && el.tagName == "A") el.href = `mailto:${settings.contact}?subject=${settings.title} - ${document.title.split("|")[0]}`;
|
|
3386
3443
|
el.innerText = keys[2] ? dotNotation(settings[keys[1]], keys[2]) : settings[keys[1]];
|
|
3387
3444
|
});
|
|
3388
|
-
|
|
3389
|
-
|
|
3390
|
-
|
|
3391
|
-
|
|
3392
|
-
|
|
3393
|
-
|
|
3394
|
-
|
|
3395
|
-
|
|
3396
|
-
|
|
3397
|
-
|
|
3398
|
-
|
|
3399
|
-
|
|
3400
|
-
|
|
3401
|
-
|
|
3402
|
-
|
|
3403
|
-
|
|
3404
|
-
|
|
3405
|
-
|
|
3406
|
-
|
|
3407
|
-
|
|
3408
|
-
|
|
3445
|
+
Client.metaTags(settings, {
|
|
3446
|
+
canonicalPath: opts.canonicalPath,
|
|
3447
|
+
assetBaseUrl: this.momentum.url.toString().replace(/\/$/, "")
|
|
3448
|
+
}).forEach((t) => {
|
|
3449
|
+
if (t.tag == "meta") {
|
|
3450
|
+
const key = t.attrs.name ? "name" : "property";
|
|
3451
|
+
const name = t.attrs[key];
|
|
3452
|
+
let el = document.querySelector(`meta[${key}="${name}"]`);
|
|
3453
|
+
if (!el) {
|
|
3454
|
+
el = document.createElement("meta");
|
|
3455
|
+
el.setAttribute(key, name);
|
|
3456
|
+
document.head.append(el);
|
|
3457
|
+
}
|
|
3458
|
+
el.setAttribute("content", t.attrs.content);
|
|
3459
|
+
} else {
|
|
3460
|
+
let el = document.querySelector(`link[rel="${t.attrs.rel}"]`);
|
|
3461
|
+
if (!el) {
|
|
3462
|
+
el = document.createElement("link");
|
|
3463
|
+
el.setAttribute("rel", t.attrs.rel);
|
|
3464
|
+
document.head.append(el);
|
|
3465
|
+
}
|
|
3466
|
+
el.setAttribute("href", t.attrs.href);
|
|
3409
3467
|
}
|
|
3410
|
-
|
|
3411
|
-
|
|
3412
|
-
|
|
3413
|
-
|
|
3414
|
-
|
|
3415
|
-
}
|
|
3416
|
-
meta("name", "theme-color", settings["theme"]?.background);
|
|
3468
|
+
});
|
|
3469
|
+
if (settings.modules?.["pwa"] && opts.install !== false && !this.installTimeout && this.canInstall) this.installTimeout = setTimeout(async () => {
|
|
3470
|
+
this.installTimeout = null;
|
|
3471
|
+
const dismissed = localStorage.getItem(`momentum:install`);
|
|
3472
|
+
if (!dismissed || dismissed != "true" && Date.now() - new Date(dismissed).getTime() > 864e5 * this.momentum.opts.installPrompt.retry) this.install();
|
|
3473
|
+
}, 6e4 * this.momentum.opts.installPrompt.delay);
|
|
3417
3474
|
if (!document.body.classList.contains("theme-manual")) {
|
|
3418
3475
|
document.body.classList.add(settings["theme"]?.darkMode ? "theme-dark" : "theme-light");
|
|
3419
3476
|
document.body.classList.remove(!settings["theme"]?.darkMode ? "theme-dark" : "theme-light");
|
|
@@ -3620,9 +3677,10 @@ var Data = class extends PathEventEmitter {
|
|
|
3620
3677
|
}
|
|
3621
3678
|
}).then((resp) => {
|
|
3622
3679
|
if (!resp) return null;
|
|
3623
|
-
if (Array.isArray(resp))
|
|
3624
|
-
|
|
3625
|
-
|
|
3680
|
+
if (Array.isArray(resp)) {
|
|
3681
|
+
if (!q && !options?.limit) this.emit(PES`data/${collection}:r`, collection, resp);
|
|
3682
|
+
else resp.forEach((r) => this.emit(PES`data/${collection}/${r._id}:r`, collection, resp));
|
|
3683
|
+
} else this.emit(PES`data/${collection}/${resp._id}:r`, collection, resp);
|
|
3626
3684
|
return resp;
|
|
3627
3685
|
});
|
|
3628
3686
|
}
|
|
@@ -3812,12 +3870,13 @@ var Logger = class Logger extends PathEventEmitter {
|
|
|
3812
3870
|
if (typeof window != "undefined") window.addEventListener("unhandledrejection", async (event) => {
|
|
3813
3871
|
let log = event.reason?.stack || event.reason;
|
|
3814
3872
|
if (event.reason?.url) log = `${event.reason.method} ${event.reason.url} -> ${event.reason.code}\n\n${log}`;
|
|
3815
|
-
if (event.reason?.code == null || event.reason?.code >= 500)
|
|
3816
|
-
|
|
3817
|
-
|
|
3818
|
-
|
|
3819
|
-
|
|
3820
|
-
|
|
3873
|
+
if (event.reason?.code == null || event.reason?.code >= 500) {
|
|
3874
|
+
if (LOG_LEVEL[this.logLevel] >= 0) this.error(log);
|
|
3875
|
+
else {
|
|
3876
|
+
this.logs.push(this.buildLog(LOG_LEVEL.ERROR, log));
|
|
3877
|
+
this.emit(`local/error:c`, this.logs);
|
|
3878
|
+
}
|
|
3879
|
+
} else if (LOG_LEVEL[this.logLevel] >= 1) this.warn(log);
|
|
3821
3880
|
else {
|
|
3822
3881
|
this.logs.push(this.buildLog(LOG_LEVEL.WARN, log));
|
|
3823
3882
|
this.emit(`local/warn:c`, this.logs);
|
|
@@ -4180,7 +4239,7 @@ var Transactions = class extends AssetController {
|
|
|
4180
4239
|
*/
|
|
4181
4240
|
getToken(id) {
|
|
4182
4241
|
return this.momentum.api.request({
|
|
4183
|
-
url:
|
|
4242
|
+
url: this.momentum.url.origin + `/api/transactions/init/${id || ""}`,
|
|
4184
4243
|
method: "POST"
|
|
4185
4244
|
}).then((resp) => resp.token);
|
|
4186
4245
|
}
|
|
@@ -4249,7 +4308,7 @@ var Transactions = class extends AssetController {
|
|
|
4249
4308
|
* @returns {string} URL
|
|
4250
4309
|
*/
|
|
4251
4310
|
checkoutUrl(id) {
|
|
4252
|
-
return encodeURI(`${this.momentum.opts.checkoutUrl}?
|
|
4311
|
+
return encodeURI(`${this.momentum.opts.checkoutUrl}?transaction=${id}`);
|
|
4253
4312
|
}
|
|
4254
4313
|
async delete(key) {
|
|
4255
4314
|
throw new Error("Not supported");
|
|
@@ -4559,8 +4618,10 @@ var Storage = class extends PathEventEmitter {
|
|
|
4559
4618
|
this.cache.values().forEach((meta) => {
|
|
4560
4619
|
if (meta?.children && event.path == meta.path) meta.children = [...meta.children.filter((c) => c.path != event.name), payload.name];
|
|
4561
4620
|
});
|
|
4562
|
-
} else if (event.delete || payload == null)
|
|
4563
|
-
|
|
4621
|
+
} else if (event.delete || payload == null) {
|
|
4622
|
+
if (!event.path) return this.cache.clear();
|
|
4623
|
+
else this.cache.delete(event.path);
|
|
4624
|
+
}
|
|
4564
4625
|
});
|
|
4565
4626
|
}
|
|
4566
4627
|
/**
|
|
@@ -4887,7 +4948,7 @@ var Static = class extends Storage {
|
|
|
4887
4948
|
};
|
|
4888
4949
|
//#endregion
|
|
4889
4950
|
//#region package.json
|
|
4890
|
-
var version = "1.5.
|
|
4951
|
+
var version = "1.5.5";
|
|
4891
4952
|
//#endregion
|
|
4892
4953
|
//#region src/webRtc.ts
|
|
4893
4954
|
var WebRtc = class extends PathEventEmitter {
|
package/dist/momentum.worker.mjs
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import {Momentum} from '/momentum.mjs';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
let analyticsId = null;
|
|
4
|
+
const production = self.location.origin !== 'http://localhost:5173';
|
|
5
|
+
const apiUrl = production ? self.location.origin : 'http://localhost:3000';
|
|
6
|
+
const cache = caches.open(apiUrl);
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
let momentum;
|
|
9
|
+
const ready = (async () => {
|
|
9
10
|
try {
|
|
10
11
|
const analyticsCache = await caches.open('analytics-cache');
|
|
11
12
|
const res = await analyticsCache.match('analytics-id');
|
|
@@ -14,77 +15,43 @@ import {Momentum} from '/momentum.mjs';
|
|
|
14
15
|
console.warn('Failed to restore analytics ID:', err);
|
|
15
16
|
}
|
|
16
17
|
|
|
17
|
-
|
|
18
|
-
const momentum = new Momentum(apiUrl, {
|
|
18
|
+
momentum = new Momentum(apiUrl, {
|
|
19
19
|
analytics: analyticsId || false,
|
|
20
20
|
banner: false,
|
|
21
21
|
offline: true,
|
|
22
22
|
socket: true,
|
|
23
23
|
worker: false,
|
|
24
24
|
});
|
|
25
|
+
})();
|
|
25
26
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
async function update() {
|
|
34
|
-
const c = await cache;
|
|
35
|
-
let files = await momentum.static.all();
|
|
36
|
-
// files.map(meta => momentum.static.open(meta.path, false));
|
|
37
|
-
// for (const file of files) {
|
|
38
|
-
// const req = new Request(file.path, {cache: 'no-cache'});
|
|
39
|
-
// try {
|
|
40
|
-
// const res = await fetch(req);
|
|
41
|
-
// if (res.ok) await c.put(req, res);
|
|
42
|
-
// else throw new Error();
|
|
43
|
-
// } catch (err) {
|
|
44
|
-
// await c.delete(req);
|
|
45
|
-
// }
|
|
46
|
-
// }
|
|
47
|
-
}
|
|
27
|
+
async function reloadClients() {
|
|
28
|
+
const allClients = await self.clients.matchAll({type: 'window', includeUncontrolled: true});
|
|
29
|
+
for (const client of allClients) client.postMessage({update: true});
|
|
30
|
+
}
|
|
48
31
|
|
|
49
|
-
|
|
32
|
+
async function update() {
|
|
33
|
+
await ready;
|
|
34
|
+
const c = await cache;
|
|
35
|
+
let files = await momentum.static.all();
|
|
36
|
+
// files.map(meta => momentum.static.open(meta.path, false));
|
|
37
|
+
}
|
|
50
38
|
|
|
51
|
-
|
|
39
|
+
self.addEventListener('install', e => e.waitUntil(update()));
|
|
52
40
|
|
|
53
|
-
|
|
54
|
-
e.waitUntil((async () => {
|
|
55
|
-
await self.clients.claim();
|
|
56
|
-
await reloadClients();
|
|
57
|
-
})());
|
|
58
|
-
});
|
|
41
|
+
self.addEventListener('periodicsync', e => e.waitUntil(update()));
|
|
59
42
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
// const c = await cache;
|
|
67
|
-
// if(!self.navigator.onLine) {
|
|
68
|
-
// const cachedResponse = await c.match(req);
|
|
69
|
-
// if(cachedResponse) return cachedResponse;
|
|
70
|
-
// return new Response('You are offline', {status: 503, statusText: 'Service Unavailable'});
|
|
71
|
-
// }
|
|
72
|
-
// try {
|
|
73
|
-
// const response = await fetch(req);
|
|
74
|
-
// if(response.ok) await c.put(req, response.clone());
|
|
75
|
-
// else if(response.status === 404) await c.delete(req);
|
|
76
|
-
// return response;
|
|
77
|
-
// } catch (err) {
|
|
78
|
-
// const cachedResponse = await c.match(req);
|
|
79
|
-
// if(cachedResponse) return cachedResponse;
|
|
80
|
-
// throw err;
|
|
81
|
-
// }
|
|
82
|
-
// })());
|
|
83
|
-
// });
|
|
43
|
+
self.addEventListener('activate', e => {
|
|
44
|
+
e.waitUntil((async () => {
|
|
45
|
+
await self.clients.claim();
|
|
46
|
+
await reloadClients();
|
|
47
|
+
})());
|
|
48
|
+
});
|
|
84
49
|
|
|
85
|
-
|
|
50
|
+
self.addEventListener('message', (event) => {
|
|
51
|
+
event.waitUntil?.((async () => {
|
|
52
|
+
await ready;
|
|
86
53
|
if (event.data?.analyticsId) {
|
|
87
|
-
momentum.analytics.id = event.data?.analyticsId
|
|
54
|
+
momentum.analytics.id = event.data?.analyticsId;
|
|
88
55
|
try {
|
|
89
56
|
const analyticsCache = await caches.open('analytics-cache');
|
|
90
57
|
await analyticsCache.put('analytics-id', new Response(JSON.stringify({id: event.data?.analyticsId})));
|
|
@@ -94,31 +61,28 @@ import {Momentum} from '/momentum.mjs';
|
|
|
94
61
|
} else if (event.data?.skipWaiting) {
|
|
95
62
|
await self.skipWaiting();
|
|
96
63
|
} else if (event.data?.update) {
|
|
97
|
-
if (self.registration.waiting) {
|
|
98
|
-
|
|
99
|
-
} else {
|
|
100
|
-
await reloadClients();
|
|
101
|
-
}
|
|
64
|
+
if (self.registration.waiting) self.registration.waiting.postMessage({skipWaiting: true});
|
|
65
|
+
else await reloadClients();
|
|
102
66
|
}
|
|
103
|
-
});
|
|
67
|
+
})());
|
|
68
|
+
});
|
|
104
69
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
70
|
+
self.addEventListener('notificationclick', (event) => {
|
|
71
|
+
const data = event.notification.data;
|
|
72
|
+
event.notification.close();
|
|
73
|
+
if(data && data.link) event.waitUntil(clients.openWindow(data.link));
|
|
74
|
+
});
|
|
110
75
|
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
})();
|
|
76
|
+
self.addEventListener('push', (event) => {
|
|
77
|
+
let data;
|
|
78
|
+
try { data = event.data?.json() ?? {}; }
|
|
79
|
+
catch { data = {message: event.data?.text()}; }
|
|
80
|
+
event.waitUntil(
|
|
81
|
+
self.registration.showNotification(data.title || `Momentum Alert`, {
|
|
82
|
+
body: data.message || '',
|
|
83
|
+
tag: data.title || 'general',
|
|
84
|
+
icon: data.icon || `${self.location.origin}/favicon.ico`,
|
|
85
|
+
data
|
|
86
|
+
})
|
|
87
|
+
);
|
|
88
|
+
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notifications.d.ts","sourceRoot":"","sources":["../src/notifications.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,gBAAgB,EAAM,MAAM,QAAQ,CAAC;AACtD,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AAEpC,wBAAwB;AACxB,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG;IACpC,4CAA4C;IAC5C,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC;IAC9B,4BAA4B;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACpB,CAAA;AAED,oBAAoB;AACpB,qBAAa,aAAc,SAAQ,gBAAgB;IAetC,SAAS,CAAC,QAAQ,EAAE,QAAQ;IAdxC,OAAO,CAAC,QAAQ,CAAS;IACzB,gCAAgC;IAChC,IAAI,OAAO,IAAI,OAAO,CAA0B;IAChD,OAAO,KAAK,OAAO,QAGlB;IAED,iCAAiC;IACjC,IAAI,YAAY,IAAI,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAGnD;gBAEqB,QAAQ,EAAE,QAAQ;IAKxC;;;;OAIG;IACH,MAAM,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAOjD;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ9B;;;OAGG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"notifications.d.ts","sourceRoot":"","sources":["../src/notifications.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,gBAAgB,EAAM,MAAM,QAAQ,CAAC;AACtD,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AAEpC,wBAAwB;AACxB,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG;IACpC,4CAA4C;IAC5C,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC;IAC9B,4BAA4B;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACpB,CAAA;AAED,oBAAoB;AACpB,qBAAa,aAAc,SAAQ,gBAAgB;IAetC,SAAS,CAAC,QAAQ,EAAE,QAAQ;IAdxC,OAAO,CAAC,QAAQ,CAAS;IACzB,gCAAgC;IAChC,IAAI,OAAO,IAAI,OAAO,CAA0B;IAChD,OAAO,KAAK,OAAO,QAGlB;IAED,iCAAiC;IACjC,IAAI,YAAY,IAAI,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAGnD;gBAEqB,QAAQ,EAAE,QAAQ;IAKxC;;;;OAIG;IACH,MAAM,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAOjD;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ9B;;;OAGG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAY7B"}
|
package/dist/routes.d.ts
CHANGED
|
@@ -10,11 +10,16 @@ export type RateLimit = Meta & {
|
|
|
10
10
|
match: {
|
|
11
11
|
path: string | null;
|
|
12
12
|
cidr: string | null;
|
|
13
|
+
datacenter: boolean;
|
|
14
|
+
malicious: boolean;
|
|
15
|
+
tor: boolean;
|
|
16
|
+
vpn: boolean;
|
|
13
17
|
};
|
|
14
18
|
required: {
|
|
15
19
|
cidr: string | null;
|
|
16
20
|
groups: string[];
|
|
17
21
|
captcha: number | null;
|
|
22
|
+
captchaOp: '>' | '<';
|
|
18
23
|
};
|
|
19
24
|
limit: {
|
|
20
25
|
ip: boolean;
|
package/dist/routes.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../src/routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAC,IAAI,EAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AAEpC,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG;IAC9B,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE;QACN,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../src/routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAC,IAAI,EAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AAEpC,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG;IAC9B,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE;QACN,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,UAAU,EAAE,OAAO,CAAC;QACpB,SAAS,EAAE,OAAO,CAAC;QACnB,GAAG,EAAE,OAAO,CAAC;QACb,GAAG,EAAE,OAAO,CAAC;KACb,CAAC;IACF,QAAQ,EAAE;QACT,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,SAAS,EAAE,GAAG,GAAG,GAAG,CAAC;KACrB,CAAA;IACD,KAAK,EAAE;QACN,EAAE,EAAE,OAAO,CAAC;QACZ,IAAI,EAAE,OAAO,CAAC;QACd,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;QACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;KACrB,CAAA;CACD,CAAA;AAED,qBAAa,SAAU,SAAQ,eAAe,CAAC,WAAW,CAAC;IAC9C,SAAS,CAAC,QAAQ,EAAE,QAAQ;gBAAlB,QAAQ,EAAE,QAAQ;IAIlC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;CAGhE;AAED,qBAAa,WAAY,SAAQ,eAAe,CAAC,SAAS,CAAC;IAC9C,SAAS,CAAC,QAAQ,EAAE,QAAQ;gBAAlB,QAAQ,EAAE,QAAQ;CAGxC;AAED,qBAAa,MAAO,SAAQ,gBAAgB;IAI/B,SAAS,CAAC,QAAQ,EAAE,QAAQ;IAHxC,SAAS,EAAG,SAAS,CAAC;IACtB,WAAW,EAAG,WAAW,CAAC;gBAEJ,QAAQ,EAAE,QAAQ;CAOxC"}
|
package/dist/storage.d.ts
CHANGED
|
@@ -90,8 +90,8 @@ export declare class Storage extends PathEventEmitter {
|
|
|
90
90
|
* @param {string} set Update transcribed text
|
|
91
91
|
* @return {Promise<string>} Extracted text
|
|
92
92
|
*/
|
|
93
|
-
text(path: string): Promise<string>;
|
|
94
93
|
text(path: string, set: string | null): Promise<FileMeta>;
|
|
94
|
+
text(path: string): Promise<string>;
|
|
95
95
|
/**
|
|
96
96
|
* Upload file(s) to server, Uses file browser if no files provided
|
|
97
97
|
* @param path Path files will be uploaded to
|
package/dist/storage.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,IAAI,EAAK,MAAM,QAAQ,CAAC;AACrC,OAAO,EACN,KAAK,EACL,eAAe,EAKf,gBAAgB,EAAO,WAAW,EAAE,SAAS,EAC7C,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AAEpC,4BAA4B;AAC5B,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG;IAChC,sBAAsB;IACtB,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC;IAC1C,kCAAkC;IAClC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;CAC3B,CAAA;AAED,uBAAuB;AACvB,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG;IAC7B,oBAAoB;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,gBAAgB;IAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,oBAAoB;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,gBAAgB;IAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,+BAA+B;IAC/B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,+BAA+B;IAC/B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACvB,CAAA;AAED,mBAAmB;AACnB,qBAAa,OAAQ,SAAQ,gBAAgB;IAKhC,SAAS,CAAC,QAAQ,EAAE,QAAQ;IAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJjE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoC;IAEhE,KAAK,oCAAiD;gBAEhC,QAAQ,EAAE,QAAQ,EAAmB,MAAM,GAAE,MAAkB;IAiBrF;;;;OAIG;IACH,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC;IAQnD;;;;;OAKG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,QAAQ,CAAC;IAgBvE;;;;OAIG;IACG,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAO3C;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC;IAI9D;;;;OAIG;IACH,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,QAAQ,CAAC;IAQhD;;;;OAIG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQrC;;;;;OAKG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,QAAQ,CAAC;IAStE;;;;;OAKG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM;IACjD,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC;IAC/E,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI;IAiB7D;;;;;OAKG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"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"}
|