@genesislcap/foundation-filters 14.303.0 → 14.303.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +12 -12
- package/docs/api-report.md +0 -283
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@genesislcap/foundation-filters",
|
|
3
3
|
"description": "Genesis Foundation Filters",
|
|
4
|
-
"version": "14.303.
|
|
4
|
+
"version": "14.303.2",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"license": "SEE LICENSE IN license.txt",
|
|
7
7
|
"main": "dist/esm/index.js",
|
|
@@ -48,19 +48,19 @@
|
|
|
48
48
|
}
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|
|
51
|
-
"@genesislcap/foundation-testing": "14.303.
|
|
52
|
-
"@genesislcap/genx": "14.303.
|
|
53
|
-
"@genesislcap/rollup-builder": "14.303.
|
|
54
|
-
"@genesislcap/ts-builder": "14.303.
|
|
55
|
-
"@genesislcap/uvu-playwright-builder": "14.303.
|
|
56
|
-
"@genesislcap/vite-builder": "14.303.
|
|
57
|
-
"@genesislcap/webpack-builder": "14.303.
|
|
51
|
+
"@genesislcap/foundation-testing": "14.303.2",
|
|
52
|
+
"@genesislcap/genx": "14.303.2",
|
|
53
|
+
"@genesislcap/rollup-builder": "14.303.2",
|
|
54
|
+
"@genesislcap/ts-builder": "14.303.2",
|
|
55
|
+
"@genesislcap/uvu-playwright-builder": "14.303.2",
|
|
56
|
+
"@genesislcap/vite-builder": "14.303.2",
|
|
57
|
+
"@genesislcap/webpack-builder": "14.303.2",
|
|
58
58
|
"@types/ua-parser-js": "^0.7.36"
|
|
59
59
|
},
|
|
60
60
|
"dependencies": {
|
|
61
|
-
"@genesislcap/foundation-comms": "14.303.
|
|
62
|
-
"@genesislcap/foundation-logger": "14.303.
|
|
63
|
-
"@genesislcap/foundation-user": "14.303.
|
|
61
|
+
"@genesislcap/foundation-comms": "14.303.2",
|
|
62
|
+
"@genesislcap/foundation-logger": "14.303.2",
|
|
63
|
+
"@genesislcap/foundation-user": "14.303.2",
|
|
64
64
|
"@microsoft/fast-element": "1.14.0",
|
|
65
65
|
"@microsoft/fast-foundation": "2.49.6",
|
|
66
66
|
"ua-parser-js": "^1.0.32"
|
|
@@ -73,5 +73,5 @@
|
|
|
73
73
|
"publishConfig": {
|
|
74
74
|
"access": "public"
|
|
75
75
|
},
|
|
76
|
-
"gitHead": "
|
|
76
|
+
"gitHead": "f556f123bafe956a7ba9328bb3f78f4d7d2495ba"
|
|
77
77
|
}
|
package/docs/api-report.md
DELETED
|
@@ -1,283 +0,0 @@
|
|
|
1
|
-
## API Report File for "@genesislcap/foundation-filters"
|
|
2
|
-
|
|
3
|
-
> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
|
|
4
|
-
|
|
5
|
-
```ts
|
|
6
|
-
|
|
7
|
-
import { Auth } from '@genesislcap/foundation-comms';
|
|
8
|
-
import { Container } from '@microsoft/fast-foundation';
|
|
9
|
-
import { InterfaceSymbol } from '@microsoft/fast-foundation';
|
|
10
|
-
import { Logger } from '@genesislcap/foundation-logger';
|
|
11
|
-
import { User } from '@genesislcap/foundation-comms';
|
|
12
|
-
|
|
13
|
-
// @public
|
|
14
|
-
export interface ClientFilter<P = any> {
|
|
15
|
-
// (undocumented)
|
|
16
|
-
filter(parameters: P): boolean;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
// @public (undocumented)
|
|
20
|
-
export const ClientFilterName: {
|
|
21
|
-
readonly nodeEnv: "nodeEnv";
|
|
22
|
-
readonly percentage: "percentage";
|
|
23
|
-
readonly timeWindow: "timeWindow";
|
|
24
|
-
readonly urlTargeting: "urlTargeting";
|
|
25
|
-
readonly userAgent: "userAgent";
|
|
26
|
-
readonly userTargeting: "userTargeting";
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
// @public (undocumented)
|
|
30
|
-
export type ClientFilterName = (typeof ClientFilterName)[keyof typeof ClientFilterName];
|
|
31
|
-
|
|
32
|
-
// Warning: (ae-internal-mixed-release-tag) Mixed release tags are not allowed for "ClientFilterRunner" because one of its declarations is marked as @internal
|
|
33
|
-
//
|
|
34
|
-
// @public
|
|
35
|
-
export interface ClientFilterRunner {
|
|
36
|
-
// (undocumented)
|
|
37
|
-
run(filters: ClientFilterSchemas[], container?: Container): boolean;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
// @internal
|
|
41
|
-
export const ClientFilterRunner: InterfaceSymbol<ClientFilterRunner>;
|
|
42
|
-
|
|
43
|
-
// @public
|
|
44
|
-
export type ClientFilterSchema<N extends ClientFilterName, P> = {
|
|
45
|
-
readonly name: N;
|
|
46
|
-
readonly parameters: P;
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
// @public
|
|
50
|
-
export type ClientFilterSchemas = NodeEnvSchema | PercentageSchema | TimeWindowSchema | URLTargetingSchema | UserAgentSchema | UserTargetingSchema;
|
|
51
|
-
|
|
52
|
-
// @public
|
|
53
|
-
export class DefaultClientFilterRunner implements ClientFilterRunner {
|
|
54
|
-
// (undocumented)
|
|
55
|
-
container: Container;
|
|
56
|
-
// (undocumented)
|
|
57
|
-
run(filters: ClientFilterSchemas[], container?: Container): boolean;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
// @public
|
|
61
|
-
export class DefaultNodeEnv implements NodeEnv {
|
|
62
|
-
// (undocumented)
|
|
63
|
-
filter(params: NodeEnvParams): boolean;
|
|
64
|
-
// Warning: (ae-unresolved-inheritdoc-reference) The @inheritDoc reference could not be resolved: The reference is ambiguous because "NodeEnv" has more than one declaration; you need to add a TSDoc member reference selector
|
|
65
|
-
//
|
|
66
|
-
// (undocumented)
|
|
67
|
-
get isDevelopment(): boolean;
|
|
68
|
-
// Warning: (ae-unresolved-inheritdoc-reference) The @inheritDoc reference could not be resolved: The reference is ambiguous because "NodeEnv" has more than one declaration; you need to add a TSDoc member reference selector
|
|
69
|
-
//
|
|
70
|
-
// (undocumented)
|
|
71
|
-
get isProduction(): boolean;
|
|
72
|
-
// Warning: (ae-unresolved-inheritdoc-reference) The @inheritDoc reference could not be resolved: The reference is ambiguous because "NodeEnv" has more than one declaration; you need to add a TSDoc member reference selector
|
|
73
|
-
//
|
|
74
|
-
// (undocumented)
|
|
75
|
-
get isTesting(): boolean;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
// @public
|
|
79
|
-
export class DefaultPercentage implements Percentage {
|
|
80
|
-
// (undocumented)
|
|
81
|
-
filter(params: PercentageParams): boolean;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
// @public
|
|
85
|
-
export class DefaultTimeWindow implements TimeWindow {
|
|
86
|
-
// (undocumented)
|
|
87
|
-
filter(params: TimeWindowParams): boolean;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
// @public
|
|
91
|
-
export class DefaultURLTargeting implements URLTargeting {
|
|
92
|
-
// (undocumented)
|
|
93
|
-
filter(params: URLTargetingParams): boolean;
|
|
94
|
-
// Warning: (ae-unresolved-inheritdoc-reference) The @inheritDoc reference could not be resolved: The reference is ambiguous because "URLTargeting" has more than one declaration; you need to add a TSDoc member reference selector
|
|
95
|
-
//
|
|
96
|
-
// (undocumented)
|
|
97
|
-
isSecure(url: any): boolean;
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
// @public
|
|
101
|
-
export class DefaultUserAgent implements UserAgent {
|
|
102
|
-
// (undocumented)
|
|
103
|
-
filter(params: UserAgentParams): boolean;
|
|
104
|
-
// Warning: (ae-unresolved-inheritdoc-reference) The @inheritDoc reference could not be resolved: The reference is ambiguous because "UserAgent" has more than one declaration; you need to add a TSDoc member reference selector
|
|
105
|
-
//
|
|
106
|
-
// (undocumented)
|
|
107
|
-
get isSafari(): boolean;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
// @public
|
|
111
|
-
export class DefaultUserTargeting implements UserTargeting {
|
|
112
|
-
constructor(auth: Auth);
|
|
113
|
-
// (undocumented)
|
|
114
|
-
auth: Auth;
|
|
115
|
-
// (undocumented)
|
|
116
|
-
filter(params: UserTargetingParams): boolean;
|
|
117
|
-
// Warning: (ae-unresolved-inheritdoc-reference) The @inheritDoc reference could not be resolved: The reference is ambiguous because "UserTargeting" has more than one declaration; you need to add a TSDoc member reference selector
|
|
118
|
-
//
|
|
119
|
-
// (undocumented)
|
|
120
|
-
get hasAdminProfile(): boolean;
|
|
121
|
-
// Warning: (ae-unresolved-inheritdoc-reference) The @inheritDoc reference could not be resolved: The reference is ambiguous because "UserTargeting" has more than one declaration; you need to add a TSDoc member reference selector
|
|
122
|
-
//
|
|
123
|
-
// (undocumented)
|
|
124
|
-
get isLoggedIn(): boolean;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
// @public
|
|
128
|
-
export function getFilterByName(name: ClientFilterName, container: Container): NodeEnv | Percentage | TimeWindow | URLTargeting | UserAgent | UserTargeting;
|
|
129
|
-
|
|
130
|
-
// @public
|
|
131
|
-
export const logger: Logger;
|
|
132
|
-
|
|
133
|
-
// Warning: (ae-internal-mixed-release-tag) Mixed release tags are not allowed for "NodeEnv" because one of its declarations is marked as @internal
|
|
134
|
-
//
|
|
135
|
-
// @public
|
|
136
|
-
export interface NodeEnv extends ClientFilter<NodeEnvParams> {
|
|
137
|
-
// (undocumented)
|
|
138
|
-
readonly isDevelopment: boolean;
|
|
139
|
-
// (undocumented)
|
|
140
|
-
readonly isProduction: boolean;
|
|
141
|
-
// (undocumented)
|
|
142
|
-
readonly isTesting: boolean;
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
// @internal
|
|
146
|
-
export const NodeEnv: InterfaceSymbol<NodeEnv>;
|
|
147
|
-
|
|
148
|
-
// @public
|
|
149
|
-
export function nodeEnvFilter(envs: string[]): boolean;
|
|
150
|
-
|
|
151
|
-
// @public
|
|
152
|
-
export type NodeEnvParams = {
|
|
153
|
-
readonly envs: string[];
|
|
154
|
-
};
|
|
155
|
-
|
|
156
|
-
// @public
|
|
157
|
-
export type NodeEnvSchema = ClientFilterSchema<typeof ClientFilterName.nodeEnv, NodeEnvParams>;
|
|
158
|
-
|
|
159
|
-
// Warning: (ae-internal-mixed-release-tag) Mixed release tags are not allowed for "Percentage" because one of its declarations is marked as @internal
|
|
160
|
-
//
|
|
161
|
-
// @public
|
|
162
|
-
export interface Percentage extends ClientFilter<PercentageParams> {
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
// @internal
|
|
166
|
-
export const Percentage: InterfaceSymbol<Percentage>;
|
|
167
|
-
|
|
168
|
-
// @public
|
|
169
|
-
export function percentageFilter(percent: number, random?: number): boolean;
|
|
170
|
-
|
|
171
|
-
// @public
|
|
172
|
-
export type PercentageParams = {
|
|
173
|
-
readonly percent: number;
|
|
174
|
-
readonly random?: number;
|
|
175
|
-
};
|
|
176
|
-
|
|
177
|
-
// @public
|
|
178
|
-
export type PercentageSchema = ClientFilterSchema<typeof ClientFilterName.percentage, PercentageParams>;
|
|
179
|
-
|
|
180
|
-
// @public
|
|
181
|
-
export function runner(filters: ClientFilterSchemas[], container: Container): boolean;
|
|
182
|
-
|
|
183
|
-
// Warning: (ae-internal-mixed-release-tag) Mixed release tags are not allowed for "TimeWindow" because one of its declarations is marked as @internal
|
|
184
|
-
//
|
|
185
|
-
// @public
|
|
186
|
-
export interface TimeWindow extends ClientFilter<TimeWindowParams> {
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
// @internal
|
|
190
|
-
export const TimeWindow: InterfaceSymbol<TimeWindow>;
|
|
191
|
-
|
|
192
|
-
// @public
|
|
193
|
-
export function timeWindowFilter(start?: string, end?: string): boolean;
|
|
194
|
-
|
|
195
|
-
// @public
|
|
196
|
-
export type TimeWindowParams = {
|
|
197
|
-
readonly start?: string;
|
|
198
|
-
readonly end?: string;
|
|
199
|
-
};
|
|
200
|
-
|
|
201
|
-
// @public
|
|
202
|
-
export type TimeWindowSchema = ClientFilterSchema<typeof ClientFilterName.timeWindow, TimeWindowParams>;
|
|
203
|
-
|
|
204
|
-
// Warning: (ae-internal-mixed-release-tag) Mixed release tags are not allowed for "URLTargeting" because one of its declarations is marked as @internal
|
|
205
|
-
//
|
|
206
|
-
// @public
|
|
207
|
-
export interface URLTargeting extends ClientFilter<URLTargetingParams> {
|
|
208
|
-
// (undocumented)
|
|
209
|
-
isSecure(url: string): boolean;
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
// @internal
|
|
213
|
-
export const URLTargeting: InterfaceSymbol<URLTargeting>;
|
|
214
|
-
|
|
215
|
-
// @public
|
|
216
|
-
export function urlTargetingFilter(url: string, pattern?: RegExp, schemes?: string[], hosts?: string[], paths?: string[]): boolean;
|
|
217
|
-
|
|
218
|
-
// @public
|
|
219
|
-
export type URLTargetingParams = {
|
|
220
|
-
readonly url?: string;
|
|
221
|
-
readonly pattern?: RegExp;
|
|
222
|
-
readonly schemes?: string[];
|
|
223
|
-
readonly hosts?: string[];
|
|
224
|
-
readonly paths?: string[];
|
|
225
|
-
};
|
|
226
|
-
|
|
227
|
-
// @public
|
|
228
|
-
export type URLTargetingSchema = ClientFilterSchema<typeof ClientFilterName.urlTargeting, URLTargetingParams>;
|
|
229
|
-
|
|
230
|
-
// Warning: (ae-internal-mixed-release-tag) Mixed release tags are not allowed for "UserAgent" because one of its declarations is marked as @internal
|
|
231
|
-
//
|
|
232
|
-
// @public
|
|
233
|
-
export interface UserAgent extends ClientFilter<UserAgentParams> {
|
|
234
|
-
// (undocumented)
|
|
235
|
-
readonly isSafari: boolean;
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
// @internal
|
|
239
|
-
export const UserAgent: InterfaceSymbol<UserAgent>;
|
|
240
|
-
|
|
241
|
-
// @public
|
|
242
|
-
export function userAgentFilter(browsers?: string[], devices?: string[], oss?: string[], ua?: string): boolean;
|
|
243
|
-
|
|
244
|
-
// @public
|
|
245
|
-
export type UserAgentParams = {
|
|
246
|
-
readonly browsers?: string[];
|
|
247
|
-
readonly devices?: string[];
|
|
248
|
-
readonly oss?: string[];
|
|
249
|
-
readonly ua?: string;
|
|
250
|
-
};
|
|
251
|
-
|
|
252
|
-
// @public
|
|
253
|
-
export type UserAgentSchema = ClientFilterSchema<typeof ClientFilterName.userAgent, UserAgentParams>;
|
|
254
|
-
|
|
255
|
-
// Warning: (ae-internal-mixed-release-tag) Mixed release tags are not allowed for "UserTargeting" because one of its declarations is marked as @internal
|
|
256
|
-
//
|
|
257
|
-
// @public
|
|
258
|
-
export interface UserTargeting extends ClientFilter<UserTargetingParams> {
|
|
259
|
-
// (undocumented)
|
|
260
|
-
readonly hasAdminProfile: boolean;
|
|
261
|
-
// (undocumented)
|
|
262
|
-
readonly isLoggedIn: boolean;
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
// @internal
|
|
266
|
-
export const UserTargeting: InterfaceSymbol<UserTargeting>;
|
|
267
|
-
|
|
268
|
-
// @public
|
|
269
|
-
export function userTargetingFilter(user: User, usernames?: string[], profiles?: string[], permissions?: string[]): boolean;
|
|
270
|
-
|
|
271
|
-
// @public
|
|
272
|
-
export type UserTargetingParams = {
|
|
273
|
-
readonly usernames?: string[];
|
|
274
|
-
readonly profiles?: string[];
|
|
275
|
-
readonly permissions?: string[];
|
|
276
|
-
};
|
|
277
|
-
|
|
278
|
-
// @public
|
|
279
|
-
export type UserTargetingSchema = ClientFilterSchema<typeof ClientFilterName.userTargeting, UserTargetingParams>;
|
|
280
|
-
|
|
281
|
-
// (No @packageDocumentation comment for this package)
|
|
282
|
-
|
|
283
|
-
```
|