@delon/mock 18.3.0 → 19.0.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/fesm2022/mock.mjs +8 -4
- package/fesm2022/mock.mjs.map +1 -1
- package/package.json +2 -4
- package/src/status.error.d.ts +2 -2
- package/esm2022/mock.mjs +0 -5
- package/esm2022/public_api.mjs +0 -7
- package/esm2022/src/interface.mjs +0 -2
- package/esm2022/src/mock.config.mjs +0 -6
- package/esm2022/src/mock.interceptor.mjs +0 -82
- package/esm2022/src/mock.service.mjs +0 -146
- package/esm2022/src/provide.mjs +0 -6
- package/esm2022/src/status.error.mjs +0 -8
- package/esm2022/src/utils.mjs +0 -13
package/fesm2022/mock.mjs
CHANGED
|
@@ -7,6 +7,9 @@ import { deepCopy } from '@delon/util/other';
|
|
|
7
7
|
|
|
8
8
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
9
9
|
class MockStatusError {
|
|
10
|
+
status;
|
|
11
|
+
error;
|
|
12
|
+
statusText;
|
|
10
13
|
constructor(status, error) {
|
|
11
14
|
this.status = status;
|
|
12
15
|
this.error = error;
|
|
@@ -26,8 +29,9 @@ function provideMockConfig(config) {
|
|
|
26
29
|
|
|
27
30
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
28
31
|
class MockService {
|
|
32
|
+
cached = [];
|
|
33
|
+
config;
|
|
29
34
|
constructor(cogSrv, options) {
|
|
30
|
-
this.cached = [];
|
|
31
35
|
this.config = cogSrv.merge('mock', MOCK_DEFULAT_CONFIG);
|
|
32
36
|
this.setData(options?.data);
|
|
33
37
|
}
|
|
@@ -152,10 +156,10 @@ class MockService {
|
|
|
152
156
|
ngOnDestroy() {
|
|
153
157
|
this.clearCache();
|
|
154
158
|
}
|
|
155
|
-
static
|
|
156
|
-
static
|
|
159
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: MockService, deps: [{ token: i1.AlainConfigService }, { token: DELON_MOCK_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
160
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: MockService, providedIn: 'root' });
|
|
157
161
|
}
|
|
158
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
162
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: MockService, decorators: [{
|
|
159
163
|
type: Injectable,
|
|
160
164
|
args: [{ providedIn: 'root' }]
|
|
161
165
|
}], ctorParameters: () => [{ type: i1.AlainConfigService }, { type: undefined, decorators: [{
|
package/fesm2022/mock.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock.mjs","sources":["../../../../packages/mock/src/status.error.ts","../../../../packages/mock/src/mock.config.ts","../../../../packages/mock/src/provide.ts","../../../../packages/mock/src/mock.service.ts","../../../../packages/mock/src/mock.interceptor.ts","../../../../packages/mock/src/utils.ts","../../../../packages/mock/mock.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n\nexport class MockStatusError {\n statusText?: string;\n\n constructor(\n public status: number,\n public error?: any\n ) {}\n}\n","import type { AlainMockConfig } from '@delon/util/config';\n\nexport const MOCK_DEFULAT_CONFIG: AlainMockConfig = {\n delay: 300,\n force: false,\n log: true\n};\n","import { EnvironmentProviders, InjectionToken, makeEnvironmentProviders } from '@angular/core';\n\nimport { MockOptions } from './interface';\n\nexport const DELON_MOCK_CONFIG = new InjectionToken<MockOptions>('alain-mock-config');\n\nexport function provideMockConfig(config?: MockOptions): EnvironmentProviders {\n return makeEnvironmentProviders([{ provide: DELON_MOCK_CONFIG, useValue: config }]);\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Inject, Injectable, OnDestroy, Optional } from '@angular/core';\n\nimport { AlainConfigService, AlainMockConfig } from '@delon/util/config';\n\nimport { MockCachedRule, MockOptions, MockRule } from './interface';\nimport { MOCK_DEFULAT_CONFIG } from './mock.config';\nimport { DELON_MOCK_CONFIG } from './provide';\n\n@Injectable({ providedIn: 'root' })\nexport class MockService implements OnDestroy {\n private cached: MockCachedRule[] = [];\n readonly config: AlainMockConfig;\n\n constructor(cogSrv: AlainConfigService, @Optional() @Inject(DELON_MOCK_CONFIG) options?: MockOptions) {\n this.config = cogSrv.merge('mock', MOCK_DEFULAT_CONFIG)!;\n this.setData(options?.data);\n }\n\n /**\n * Reset request data\n *\n * 重新设置请求数据\n */\n setData(data: any): void {\n this.applyMock(data);\n }\n\n // #region parse rule\n\n private applyMock(data: any): void {\n this.cached = [];\n try {\n this.realApplyMock(data);\n } catch (e) {\n this.outputError(e);\n }\n }\n\n private realApplyMock(data: any): void {\n if (!data) return;\n Object.keys(data).forEach((key: string) => {\n const rules = data[key];\n if (!rules) return;\n Object.keys(rules).forEach((ruleKey: string) => {\n const value = rules[ruleKey];\n if (!(typeof value === 'function' || typeof value === 'object' || typeof value === 'string')) {\n throw Error(\n `mock value of [${key}-${ruleKey}] should be function or object or string, but got ${typeof value}`\n );\n }\n const rule = this.genRule(ruleKey, value);\n if (['GET', 'POST', 'PUT', 'HEAD', 'DELETE', 'PATCH', 'OPTIONS'].indexOf(rule.method) === -1) {\n throw Error(`method of ${key}-${ruleKey} is not valid`);\n }\n const item = this.cached.find(w => w.url === rule.url && w.method === rule.method);\n if (item) {\n item.callback = rule.callback;\n } else {\n this.cached.push(rule);\n }\n });\n });\n // regular ordering\n this.cached.sort((a, b) => (b.martcher || '').toString().length - (a.martcher || '').toString().length);\n }\n\n private genRule(key: string, callback: any): MockCachedRule {\n let method = 'GET';\n let url = key;\n\n if (key.indexOf(' ') > -1) {\n const splited = key.split(' ');\n method = splited[0].toLowerCase();\n url = splited[1];\n }\n\n let martcher: RegExp | null = null;\n let segments: string[] = [];\n if (~url.indexOf(':')) {\n segments = url!\n .split('/')\n .filter(segment => segment.startsWith(':'))\n .map(v => v.substring(1));\n const reStr = url!\n .split('/')\n .map(segment => (segment.startsWith(':') ? `([^/]+)` : segment))\n .join('/');\n martcher = new RegExp(`^${reStr}`, 'i');\n } else if (/(\\([^)]+\\))/i.test(url)) {\n martcher = new RegExp(url, 'i');\n }\n\n return {\n url,\n martcher,\n segments,\n callback,\n method: method.toUpperCase()\n };\n }\n\n private outputError(error: any): void {\n const filePath = error.message.split(': ')[0];\n const errors = (error.stack as string)\n .split('\\n')\n .filter(line => line.trim().indexOf('at ') !== 0)\n .map(line => line.replace(`${filePath}: `, ''));\n errors.splice(1, 0, '');\n\n console.group();\n console.warn(`==========Failed to parse mock config.==========`);\n console.log(errors.join('\\n'));\n console.groupEnd();\n\n throw error;\n }\n\n // #endregion\n\n getRule(method: string, url: string): MockRule | null {\n method = (method || 'GET').toUpperCase();\n const params: any = {};\n const list = this.cached.filter(w => w.method === method && (w.martcher ? w.martcher.test(url) : w.url === url));\n if (list.length === 0) return null;\n const ret = list.find(w => w.url === url) || list[0];\n if (ret.martcher) {\n const execArr = ret.martcher.exec(url);\n execArr!.slice(1).map((value: string, index: number) => {\n params[ret.segments[index]] = value;\n });\n }\n return {\n url,\n method: ret.method,\n params,\n callback: ret.callback\n };\n }\n\n clearCache(): void {\n this.cached = [];\n }\n\n get rules(): MockCachedRule[] {\n return this.cached;\n }\n\n ngOnDestroy(): void {\n this.clearCache();\n }\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { HttpErrorResponse, HttpResponse, HttpResponseBase, HttpInterceptorFn } from '@angular/common/http';\nimport { inject } from '@angular/core';\nimport { Observable, of, throwError, delay, isObservable, from, map, switchMap } from 'rxjs';\n\nimport { deepCopy } from '@delon/util/other';\n\nimport { MockRequest } from './interface';\nimport { MockService } from './mock.service';\nimport { MockStatusError } from './status.error';\n\nexport const mockInterceptor: HttpInterceptorFn = (req, next) => {\n const src = inject(MockService);\n const config = src.config;\n const rule = src.getRule(req.method, req.url.split('?')[0]);\n if (!rule && !config.force) {\n return next(req);\n }\n\n let res$: Observable<any>;\n switch (typeof rule!.callback) {\n case 'function':\n const mockRequest: MockRequest = {\n original: req,\n body: req.body,\n queryString: {},\n headers: {},\n params: rule!.params\n };\n const urlParams = req.url.split('?');\n if (urlParams.length > 1) {\n urlParams[1].split('&').forEach(item => {\n const itemArr = item.split('=');\n const key = itemArr[0];\n const value = itemArr[1];\n // is array\n if (Object.keys(mockRequest.queryString).includes(key)) {\n if (!Array.isArray(mockRequest.queryString[key])) {\n mockRequest.queryString[key] = [mockRequest.queryString[key]];\n }\n mockRequest.queryString[key].push(value);\n } else {\n mockRequest.queryString[key] = value;\n }\n });\n }\n req.params.keys().forEach(key => (mockRequest.queryString[key] = req.params.get(key)));\n req.headers.keys().forEach(key => (mockRequest.headers[key] = req.headers.get(key)));\n\n try {\n const fnRes = rule!.callback.call(this, mockRequest);\n res$ = isObservable(fnRes) ? fnRes : from(Promise.resolve(fnRes));\n } catch (e: any) {\n res$ = of(\n new HttpErrorResponse({\n url: req.url,\n headers: req.headers,\n status: e instanceof MockStatusError ? e.status : 400,\n statusText: e.statusText || 'Unknown Error',\n error: e.error\n })\n );\n }\n break;\n default:\n res$ = of(rule!.callback);\n break;\n }\n\n res$ = res$.pipe(\n map(res =>\n res instanceof HttpResponseBase\n ? res\n : new HttpResponse({\n status: 200,\n url: req.url,\n body: deepCopy(res)\n })\n ),\n map((res: HttpResponseBase) => {\n const anyRes: any = res;\n if (anyRes.body) {\n anyRes.body = deepCopy(anyRes.body);\n }\n if (config.log) {\n console.log(`%c👽${req.method}->${req.urlWithParams}->request`, 'background:#000;color:#bada55', req);\n console.log(`%c👽${req.method}->${req.urlWithParams}->response`, 'background:#000;color:#bada55', res);\n }\n return res;\n }),\n switchMap((res: HttpResponseBase) => (res instanceof HttpErrorResponse ? throwError(() => res) : of(res)))\n );\n\n return res$.pipe(delay(config.delay!));\n};\n","/**\n * Used to simulate delays\n */\nexport function delay(ms: number): Promise<void> {\n return new Promise(resolve => setTimeout(resolve, ms));\n}\n\n/**\n * Return a random number\n */\nexport function r(min = 1, max = 100): number {\n return Math.floor(Math.random() * (max - min + 1) + min);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["this","delay"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mock.mjs","sources":["../../../../packages/mock/src/status.error.ts","../../../../packages/mock/src/mock.config.ts","../../../../packages/mock/src/provide.ts","../../../../packages/mock/src/mock.service.ts","../../../../packages/mock/src/mock.interceptor.ts","../../../../packages/mock/src/utils.ts","../../../../packages/mock/mock.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n\nexport class MockStatusError {\n statusText?: string;\n\n constructor(\n public status: number,\n public error?: any\n ) {}\n}\n","import type { AlainMockConfig } from '@delon/util/config';\n\nexport const MOCK_DEFULAT_CONFIG: AlainMockConfig = {\n delay: 300,\n force: false,\n log: true\n};\n","import { EnvironmentProviders, InjectionToken, makeEnvironmentProviders } from '@angular/core';\n\nimport { MockOptions } from './interface';\n\nexport const DELON_MOCK_CONFIG = new InjectionToken<MockOptions>('alain-mock-config');\n\nexport function provideMockConfig(config?: MockOptions): EnvironmentProviders {\n return makeEnvironmentProviders([{ provide: DELON_MOCK_CONFIG, useValue: config }]);\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Inject, Injectable, OnDestroy, Optional } from '@angular/core';\n\nimport { AlainConfigService, AlainMockConfig } from '@delon/util/config';\n\nimport { MockCachedRule, MockOptions, MockRule } from './interface';\nimport { MOCK_DEFULAT_CONFIG } from './mock.config';\nimport { DELON_MOCK_CONFIG } from './provide';\n\n@Injectable({ providedIn: 'root' })\nexport class MockService implements OnDestroy {\n private cached: MockCachedRule[] = [];\n readonly config: AlainMockConfig;\n\n constructor(cogSrv: AlainConfigService, @Optional() @Inject(DELON_MOCK_CONFIG) options?: MockOptions) {\n this.config = cogSrv.merge('mock', MOCK_DEFULAT_CONFIG)!;\n this.setData(options?.data);\n }\n\n /**\n * Reset request data\n *\n * 重新设置请求数据\n */\n setData(data: any): void {\n this.applyMock(data);\n }\n\n // #region parse rule\n\n private applyMock(data: any): void {\n this.cached = [];\n try {\n this.realApplyMock(data);\n } catch (e) {\n this.outputError(e);\n }\n }\n\n private realApplyMock(data: any): void {\n if (!data) return;\n Object.keys(data).forEach((key: string) => {\n const rules = data[key];\n if (!rules) return;\n Object.keys(rules).forEach((ruleKey: string) => {\n const value = rules[ruleKey];\n if (!(typeof value === 'function' || typeof value === 'object' || typeof value === 'string')) {\n throw Error(\n `mock value of [${key}-${ruleKey}] should be function or object or string, but got ${typeof value}`\n );\n }\n const rule = this.genRule(ruleKey, value);\n if (['GET', 'POST', 'PUT', 'HEAD', 'DELETE', 'PATCH', 'OPTIONS'].indexOf(rule.method) === -1) {\n throw Error(`method of ${key}-${ruleKey} is not valid`);\n }\n const item = this.cached.find(w => w.url === rule.url && w.method === rule.method);\n if (item) {\n item.callback = rule.callback;\n } else {\n this.cached.push(rule);\n }\n });\n });\n // regular ordering\n this.cached.sort((a, b) => (b.martcher || '').toString().length - (a.martcher || '').toString().length);\n }\n\n private genRule(key: string, callback: any): MockCachedRule {\n let method = 'GET';\n let url = key;\n\n if (key.indexOf(' ') > -1) {\n const splited = key.split(' ');\n method = splited[0].toLowerCase();\n url = splited[1];\n }\n\n let martcher: RegExp | null = null;\n let segments: string[] = [];\n if (~url.indexOf(':')) {\n segments = url!\n .split('/')\n .filter(segment => segment.startsWith(':'))\n .map(v => v.substring(1));\n const reStr = url!\n .split('/')\n .map(segment => (segment.startsWith(':') ? `([^/]+)` : segment))\n .join('/');\n martcher = new RegExp(`^${reStr}`, 'i');\n } else if (/(\\([^)]+\\))/i.test(url)) {\n martcher = new RegExp(url, 'i');\n }\n\n return {\n url,\n martcher,\n segments,\n callback,\n method: method.toUpperCase()\n };\n }\n\n private outputError(error: any): void {\n const filePath = error.message.split(': ')[0];\n const errors = (error.stack as string)\n .split('\\n')\n .filter(line => line.trim().indexOf('at ') !== 0)\n .map(line => line.replace(`${filePath}: `, ''));\n errors.splice(1, 0, '');\n\n console.group();\n console.warn(`==========Failed to parse mock config.==========`);\n console.log(errors.join('\\n'));\n console.groupEnd();\n\n throw error;\n }\n\n // #endregion\n\n getRule(method: string, url: string): MockRule | null {\n method = (method || 'GET').toUpperCase();\n const params: any = {};\n const list = this.cached.filter(w => w.method === method && (w.martcher ? w.martcher.test(url) : w.url === url));\n if (list.length === 0) return null;\n const ret = list.find(w => w.url === url) || list[0];\n if (ret.martcher) {\n const execArr = ret.martcher.exec(url);\n execArr!.slice(1).map((value: string, index: number) => {\n params[ret.segments[index]] = value;\n });\n }\n return {\n url,\n method: ret.method,\n params,\n callback: ret.callback\n };\n }\n\n clearCache(): void {\n this.cached = [];\n }\n\n get rules(): MockCachedRule[] {\n return this.cached;\n }\n\n ngOnDestroy(): void {\n this.clearCache();\n }\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { HttpErrorResponse, HttpResponse, HttpResponseBase, HttpInterceptorFn } from '@angular/common/http';\nimport { inject } from '@angular/core';\nimport { Observable, of, throwError, delay, isObservable, from, map, switchMap } from 'rxjs';\n\nimport { deepCopy } from '@delon/util/other';\n\nimport { MockRequest } from './interface';\nimport { MockService } from './mock.service';\nimport { MockStatusError } from './status.error';\n\nexport const mockInterceptor: HttpInterceptorFn = (req, next) => {\n const src = inject(MockService);\n const config = src.config;\n const rule = src.getRule(req.method, req.url.split('?')[0]);\n if (!rule && !config.force) {\n return next(req);\n }\n\n let res$: Observable<any>;\n switch (typeof rule!.callback) {\n case 'function':\n const mockRequest: MockRequest = {\n original: req,\n body: req.body,\n queryString: {},\n headers: {},\n params: rule!.params\n };\n const urlParams = req.url.split('?');\n if (urlParams.length > 1) {\n urlParams[1].split('&').forEach(item => {\n const itemArr = item.split('=');\n const key = itemArr[0];\n const value = itemArr[1];\n // is array\n if (Object.keys(mockRequest.queryString).includes(key)) {\n if (!Array.isArray(mockRequest.queryString[key])) {\n mockRequest.queryString[key] = [mockRequest.queryString[key]];\n }\n mockRequest.queryString[key].push(value);\n } else {\n mockRequest.queryString[key] = value;\n }\n });\n }\n req.params.keys().forEach(key => (mockRequest.queryString[key] = req.params.get(key)));\n req.headers.keys().forEach(key => (mockRequest.headers[key] = req.headers.get(key)));\n\n try {\n const fnRes = rule!.callback.call(this, mockRequest);\n res$ = isObservable(fnRes) ? fnRes : from(Promise.resolve(fnRes));\n } catch (e: any) {\n res$ = of(\n new HttpErrorResponse({\n url: req.url,\n headers: req.headers,\n status: e instanceof MockStatusError ? e.status : 400,\n statusText: e.statusText || 'Unknown Error',\n error: e.error\n })\n );\n }\n break;\n default:\n res$ = of(rule!.callback);\n break;\n }\n\n res$ = res$.pipe(\n map(res =>\n res instanceof HttpResponseBase\n ? res\n : new HttpResponse({\n status: 200,\n url: req.url,\n body: deepCopy(res)\n })\n ),\n map((res: HttpResponseBase) => {\n const anyRes: any = res;\n if (anyRes.body) {\n anyRes.body = deepCopy(anyRes.body);\n }\n if (config.log) {\n console.log(`%c👽${req.method}->${req.urlWithParams}->request`, 'background:#000;color:#bada55', req);\n console.log(`%c👽${req.method}->${req.urlWithParams}->response`, 'background:#000;color:#bada55', res);\n }\n return res;\n }),\n switchMap((res: HttpResponseBase) => (res instanceof HttpErrorResponse ? throwError(() => res) : of(res)))\n );\n\n return res$.pipe(delay(config.delay!));\n};\n","/**\n * Used to simulate delays\n */\nexport function delay(ms: number): Promise<void> {\n return new Promise(resolve => setTimeout(resolve, ms));\n}\n\n/**\n * Return a random number\n */\nexport function r(min = 1, max = 100): number {\n return Math.floor(Math.random() * (max - min + 1) + min);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["this","delay"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@delon/mock",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "19.0.0",
|
|
4
4
|
"author": "cipchk<cipchk@qq.com>",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"dependencies": {
|
|
29
29
|
"mockjs": "^1.1.0",
|
|
30
30
|
"@types/mockjs": "^1.0.10",
|
|
31
|
-
"@delon/util": "^
|
|
31
|
+
"@delon/util": "^19.0.0",
|
|
32
32
|
"tslib": "^2.3.0"
|
|
33
33
|
},
|
|
34
34
|
"module": "fesm2022/mock.mjs",
|
|
@@ -39,8 +39,6 @@
|
|
|
39
39
|
},
|
|
40
40
|
".": {
|
|
41
41
|
"types": "./index.d.ts",
|
|
42
|
-
"esm2022": "./esm2022/mock.mjs",
|
|
43
|
-
"esm": "./esm2022/mock.mjs",
|
|
44
42
|
"default": "./fesm2022/mock.mjs"
|
|
45
43
|
}
|
|
46
44
|
},
|
package/src/status.error.d.ts
CHANGED
package/esm2022/mock.mjs
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public_api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21vY2svbW9jay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
|
package/esm2022/public_api.mjs
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export * from './src/interface';
|
|
2
|
-
export * from './src/status.error';
|
|
3
|
-
export * from './src/mock.service';
|
|
4
|
-
export * from './src/mock.interceptor';
|
|
5
|
-
export * from './src/provide';
|
|
6
|
-
export * from './src/utils';
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21vY2svcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zcmMvaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL3N0YXR1cy5lcnJvcic7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9tb2NrLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvbW9jay5pbnRlcmNlcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9wcm92aWRlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL3V0aWxzJztcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvbW9jay9zcmMvaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyB0eXBlIEh0dHBSZXF1ZXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHR5cGUgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCB0eXBlIE1vY2tDYWxsYmFjayA9IGFueSB8IE9ic2VydmFibGU8YW55PiB8IFByb21pc2U8YW55PjtcblxuZXhwb3J0IGludGVyZmFjZSBNb2NrT3B0aW9ucyB7XG4gIGRhdGE/OiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ja0NhY2hlZFJ1bGUge1xuICBba2V5OiBzdHJpbmddOiBhbnk7XG5cbiAgbWV0aG9kOiBzdHJpbmc7XG5cbiAgdXJsOiBzdHJpbmc7XG5cbiAgbWFydGNoZXI6IFJlZ0V4cCB8IG51bGw7XG5cbiAgc2VnbWVudHM6IHN0cmluZ1tdO1xuXG4gIGNhbGxiYWNrKHJlcTogTW9ja1JlcXVlc3QpOiBNb2NrQ2FsbGJhY2s7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ja1J1bGUge1xuICBba2V5OiBzdHJpbmddOiBhbnk7XG5cbiAgbWV0aG9kOiBzdHJpbmc7XG5cbiAgdXJsOiBzdHJpbmc7XG5cbiAgLyoqIOi3r+eUseWPguaVsCAqL1xuICBwYXJhbXM/OiBhbnk7XG5cbiAgY2FsbGJhY2socmVxOiBNb2NrUmVxdWVzdCk6IE1vY2tDYWxsYmFjaztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb2NrUmVxdWVzdCB7XG4gIC8qKiDot6/nlLHlj4LmlbAgKi9cbiAgcGFyYW1zPzogYW55O1xuICAvKiogVVJM5Y+C5pWwICovXG4gIHF1ZXJ5U3RyaW5nPzogYW55O1xuICBoZWFkZXJzPzogYW55O1xuICBib2R5PzogYW55O1xuICAvKiog5Y6f5aeLIGBIdHRwUmVxdWVzdGAgKi9cbiAgb3JpZ2luYWw6IEh0dHBSZXF1ZXN0PGFueT47XG59XG4iXX0=
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export const MOCK_DEFULAT_CONFIG = {
|
|
2
|
-
delay: 300,
|
|
3
|
-
force: false,
|
|
4
|
-
log: true
|
|
5
|
-
};
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9tb2NrL3NyYy9tb2NrLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBb0I7SUFDbEQsS0FBSyxFQUFFLEdBQUc7SUFDVixLQUFLLEVBQUUsS0FBSztJQUNaLEdBQUcsRUFBRSxJQUFJO0NBQ1YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQWxhaW5Nb2NrQ29uZmlnIH0gZnJvbSAnQGRlbG9uL3V0aWwvY29uZmlnJztcblxuZXhwb3J0IGNvbnN0IE1PQ0tfREVGVUxBVF9DT05GSUc6IEFsYWluTW9ja0NvbmZpZyA9IHtcbiAgZGVsYXk6IDMwMCxcbiAgZm9yY2U6IGZhbHNlLFxuICBsb2c6IHRydWVcbn07XG4iXX0=
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
import { HttpErrorResponse, HttpResponse, HttpResponseBase } from '@angular/common/http';
|
|
3
|
-
import { inject } from '@angular/core';
|
|
4
|
-
import { of, throwError, delay, isObservable, from, map, switchMap } from 'rxjs';
|
|
5
|
-
import { deepCopy } from '@delon/util/other';
|
|
6
|
-
import { MockService } from './mock.service';
|
|
7
|
-
import { MockStatusError } from './status.error';
|
|
8
|
-
export const mockInterceptor = (req, next) => {
|
|
9
|
-
const src = inject(MockService);
|
|
10
|
-
const config = src.config;
|
|
11
|
-
const rule = src.getRule(req.method, req.url.split('?')[0]);
|
|
12
|
-
if (!rule && !config.force) {
|
|
13
|
-
return next(req);
|
|
14
|
-
}
|
|
15
|
-
let res$;
|
|
16
|
-
switch (typeof rule.callback) {
|
|
17
|
-
case 'function':
|
|
18
|
-
const mockRequest = {
|
|
19
|
-
original: req,
|
|
20
|
-
body: req.body,
|
|
21
|
-
queryString: {},
|
|
22
|
-
headers: {},
|
|
23
|
-
params: rule.params
|
|
24
|
-
};
|
|
25
|
-
const urlParams = req.url.split('?');
|
|
26
|
-
if (urlParams.length > 1) {
|
|
27
|
-
urlParams[1].split('&').forEach(item => {
|
|
28
|
-
const itemArr = item.split('=');
|
|
29
|
-
const key = itemArr[0];
|
|
30
|
-
const value = itemArr[1];
|
|
31
|
-
// is array
|
|
32
|
-
if (Object.keys(mockRequest.queryString).includes(key)) {
|
|
33
|
-
if (!Array.isArray(mockRequest.queryString[key])) {
|
|
34
|
-
mockRequest.queryString[key] = [mockRequest.queryString[key]];
|
|
35
|
-
}
|
|
36
|
-
mockRequest.queryString[key].push(value);
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
mockRequest.queryString[key] = value;
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
req.params.keys().forEach(key => (mockRequest.queryString[key] = req.params.get(key)));
|
|
44
|
-
req.headers.keys().forEach(key => (mockRequest.headers[key] = req.headers.get(key)));
|
|
45
|
-
try {
|
|
46
|
-
const fnRes = rule.callback.call(this, mockRequest);
|
|
47
|
-
res$ = isObservable(fnRes) ? fnRes : from(Promise.resolve(fnRes));
|
|
48
|
-
}
|
|
49
|
-
catch (e) {
|
|
50
|
-
res$ = of(new HttpErrorResponse({
|
|
51
|
-
url: req.url,
|
|
52
|
-
headers: req.headers,
|
|
53
|
-
status: e instanceof MockStatusError ? e.status : 400,
|
|
54
|
-
statusText: e.statusText || 'Unknown Error',
|
|
55
|
-
error: e.error
|
|
56
|
-
}));
|
|
57
|
-
}
|
|
58
|
-
break;
|
|
59
|
-
default:
|
|
60
|
-
res$ = of(rule.callback);
|
|
61
|
-
break;
|
|
62
|
-
}
|
|
63
|
-
res$ = res$.pipe(map(res => res instanceof HttpResponseBase
|
|
64
|
-
? res
|
|
65
|
-
: new HttpResponse({
|
|
66
|
-
status: 200,
|
|
67
|
-
url: req.url,
|
|
68
|
-
body: deepCopy(res)
|
|
69
|
-
})), map((res) => {
|
|
70
|
-
const anyRes = res;
|
|
71
|
-
if (anyRes.body) {
|
|
72
|
-
anyRes.body = deepCopy(anyRes.body);
|
|
73
|
-
}
|
|
74
|
-
if (config.log) {
|
|
75
|
-
console.log(`%c👽${req.method}->${req.urlWithParams}->request`, 'background:#000;color:#bada55', req);
|
|
76
|
-
console.log(`%c👽${req.method}->${req.urlWithParams}->response`, 'background:#000;color:#bada55', res);
|
|
77
|
-
}
|
|
78
|
-
return res;
|
|
79
|
-
}), switchMap((res) => (res instanceof HttpErrorResponse ? throwError(() => res) : of(res))));
|
|
80
|
-
return res$.pipe(delay(config.delay));
|
|
81
|
-
};
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL21vY2svc3JjL21vY2suaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQXFCLE1BQU0sc0JBQXNCLENBQUM7QUFDNUcsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQWMsRUFBRSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTdGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUc3QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBc0IsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUU7SUFDOUQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2hDLE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUM7SUFDMUIsTUFBTSxJQUFJLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUQsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQixDQUFDO0lBRUQsSUFBSSxJQUFxQixDQUFDO0lB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LEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxZQUFZLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQzNHLENBQUM7SUFFRixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFNLENBQUMsQ0FBQyxDQUFDO0FBQ3pDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlLCBIdHRwUmVzcG9uc2UsIEh0dHBSZXNwb25zZUJhc2UsIEh0dHBJbnRlcmNlcHRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgdGhyb3dFcnJvciwgZGVsYXksIGlzT2JzZXJ2YWJsZSwgZnJvbSwgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgZGVlcENvcHkgfSBmcm9tICdAZGVsb24vdXRpbC9vdGhlcic7XG5cbmltcG9ydCB7IE1vY2tSZXF1ZXN0IH0gZnJvbSAnLi9pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTW9ja1NlcnZpY2UgfSBmcm9tICcuL21vY2suc2VydmljZSc7XG5pbXBvcnQgeyBNb2NrU3RhdHVzRXJyb3IgfSBmcm9tICcuL3N0YXR1cy5lcnJvcic7XG5cbmV4cG9ydCBjb25zdCBtb2NrSW50ZXJjZXB0b3I6IEh0dHBJbnRlcmNlcHRvckZuID0gKHJlcSwgbmV4dCkgPT4ge1xuICBjb25zdCBzcmMgPSBpbmplY3QoTW9ja1NlcnZpY2UpO1xuICBjb25zdCBjb25maWcgPSBzcmMuY29uZmlnO1xuICBjb25zdCBydWxlID0gc3JjLmdldFJ1bGUocmVxLm1ldGhvZCwgcmVxLnVybC5zcGxpdCgnPycpWzBdKTtcbiAgaWYgKCFydWxlICYmICFjb25maWcuZm9yY2UpIHtcbiAgICByZXR1cm4gbmV4dChyZXEpO1xuICB9XG5cbiAgbGV0IHJlcyQ6IE9ic2VydmFibGU8YW55PjtcbiAgc3dpdGNoICh0eXBlb2YgcnVsZSEuY2FsbGJhY2spIHtcbiAgICBjYXNlICdmdW5jdGlvbic6XG4gICAgICBjb25zdCBtb2NrUmVxdWVzdDogTW9ja1JlcXVlc3QgPSB7XG4gICAgICAgIG9yaWdpbmFsOiByZXEsXG4gICAgICAgIGJvZHk6IHJlcS5ib2R5LFxuICAgICAgICBxdWVyeVN0cmluZzoge30sXG4gICAgICAgIGhlYWRlcnM6IHt9LFxuICAgICAgICBwYXJhbXM6IHJ1bGUhLnBhcmFtc1xuICAgICAgfTtcbiAgICAgIGNvbnN0IHVybFBhcmFtcyA9IHJlcS51cmwuc3BsaXQoJz8nKTtcbiAgICAgIGlmICh1cmxQYXJhbXMubGVuZ3RoID4gMSkge1xuICAgICAgICB1cmxQYXJhbXNbMV0uc3BsaXQoJyYnKS5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICAgIGNvbnN0IGl0ZW1BcnIgPSBpdGVtLnNwbGl0KCc9Jyk7XG4gICAgICAgICAgY29uc3Qga2V5ID0gaXRlbUFyclswXTtcbiAgICAgICAgICBjb25zdCB2YWx1ZSA9IGl0ZW1BcnJbMV07XG4gICAgICAgICAgLy8gaXMgYXJyYXlcbiAgICAgICAgICBpZiAoT2JqZWN0LmtleXMobW9ja1JlcXVlc3QucXVlcnlTdHJpbmcpLmluY2x1ZGVzKGtleSkpIHtcbiAgICAgICAgICAgIGlmICghQXJyYXkuaXNBcnJheShtb2NrUmVxdWVzdC5xdWVyeVN0cmluZ1trZXldKSkge1xuICAgICAgICAgICAgICBtb2NrUmVxdWVzdC5xdWVyeVN0cmluZ1trZXldID0gW21vY2tSZXF1ZXN0LnF1ZXJ5U3RyaW5nW2tleV1dO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbW9ja1JlcXVlc3QucXVlcnlTdHJpbmdba2V5XS5wdXNoKHZhbHVlKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbW9ja1JlcXVlc3QucXVlcnlTdHJpbmdba2V5XSA9IHZhbHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICByZXEucGFyYW1zLmtleXMoKS5mb3JFYWNoKGtleSA9PiAobW9ja1JlcXVlc3QucXVlcnlTdHJpbmdba2V5XSA9IHJlcS5wYXJhbXMuZ2V0KGtleSkpKTtcbiAgICAgIHJlcS5oZWFkZXJzLmtleXMoKS5mb3JFYWNoKGtleSA9PiAobW9ja1JlcXVlc3QuaGVhZGVyc1trZXldID0gcmVxLmhlYWRlcnMuZ2V0KGtleSkpKTtcblxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgZm5SZXMgPSBydWxlIS5jYWxsYmFjay5jYWxsKHRoaXMsIG1vY2tSZXF1ZXN0KTtcbiAgICAgICAgcmVzJCA9IGlzT2JzZXJ2YWJsZShmblJlcykgPyBmblJlcyA6IGZyb20oUHJvbWlzZS5yZXNvbHZlKGZuUmVzKSk7XG4gICAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgICAgcmVzJCA9IG9mKFxuICAgICAgICAgIG5ldyBIdHRwRXJyb3JSZXNwb25zZSh7XG4gICAgICAgICAgICB1cmw6IHJlcS51cmwsXG4gICAgICAgICAgICBoZWFkZXJzOiByZXEuaGVhZGVycyxcbiAgICAgICAgICAgIHN0YXR1czogZSBpbnN0YW5jZW9mIE1vY2tTdGF0dXNFcnJvciA/IGUuc3RhdHVzIDogNDAwLFxuICAgICAgICAgICAgc3RhdHVzVGV4dDogZS5zdGF0dXNUZXh0IHx8ICdVbmtub3duIEVycm9yJyxcbiAgICAgICAgICAgIGVycm9yOiBlLmVycm9yXG4gICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIGJyZWFrO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXMkID0gb2YocnVsZSEuY2FsbGJhY2spO1xuICAgICAgYnJlYWs7XG4gIH1cblxuICByZXMkID0gcmVzJC5waXBlKFxuICAgIG1hcChyZXMgPT5cbiAgICAgIHJlcyBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZUJhc2VcbiAgICAgICAgPyByZXNcbiAgICAgICAgOiBuZXcgSHR0cFJlc3BvbnNlKHtcbiAgICAgICAgICAgIHN0YXR1czogMjAwLFxuICAgICAgICAgICAgdXJsOiByZXEudXJsLFxuICAgICAgICAgICAgYm9keTogZGVlcENvcHkocmVzKVxuICAgICAgICAgIH0pXG4gICAgKSxcbiAgICBtYXAoKHJlczogSHR0cFJlc3BvbnNlQmFzZSkgPT4ge1xuICAgICAgY29uc3QgYW55UmVzOiBhbnkgPSByZXM7XG4gICAgICBpZiAoYW55UmVzLmJvZHkpIHtcbiAgICAgICAgYW55UmVzLmJvZHkgPSBkZWVwQ29weShhbnlSZXMuYm9keSk7XG4gICAgICB9XG4gICAgICBpZiAoY29uZmlnLmxvZykge1xuICAgICAgICBjb25zb2xlLmxvZyhgJWPwn5G9JHtyZXEubWV0aG9kfS0+JHtyZXEudXJsV2l0aFBhcmFtc30tPnJlcXVlc3RgLCAnYmFja2dyb3VuZDojMDAwO2NvbG9yOiNiYWRhNTUnLCByZXEpO1xuICAgICAgICBjb25zb2xlLmxvZyhgJWPwn5G9JHtyZXEubWV0aG9kfS0+JHtyZXEudXJsV2l0aFBhcmFtc30tPnJlc3BvbnNlYCwgJ2JhY2tncm91bmQ6IzAwMDtjb2xvcjojYmFkYTU1JywgcmVzKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXM7XG4gICAgfSksXG4gICAgc3dpdGNoTWFwKChyZXM6IEh0dHBSZXNwb25zZUJhc2UpID0+IChyZXMgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSA/IHRocm93RXJyb3IoKCkgPT4gcmVzKSA6IG9mKHJlcykpKVxuICApO1xuXG4gIHJldHVybiByZXMkLnBpcGUoZGVsYXkoY29uZmlnLmRlbGF5ISkpO1xufTtcbiJdfQ==
|
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
import { Inject, Injectable, Optional } from '@angular/core';
|
|
3
|
-
import { MOCK_DEFULAT_CONFIG } from './mock.config';
|
|
4
|
-
import { DELON_MOCK_CONFIG } from './provide';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@delon/util/config";
|
|
7
|
-
export class MockService {
|
|
8
|
-
constructor(cogSrv, options) {
|
|
9
|
-
this.cached = [];
|
|
10
|
-
this.config = cogSrv.merge('mock', MOCK_DEFULAT_CONFIG);
|
|
11
|
-
this.setData(options?.data);
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Reset request data
|
|
15
|
-
*
|
|
16
|
-
* 重新设置请求数据
|
|
17
|
-
*/
|
|
18
|
-
setData(data) {
|
|
19
|
-
this.applyMock(data);
|
|
20
|
-
}
|
|
21
|
-
// #region parse rule
|
|
22
|
-
applyMock(data) {
|
|
23
|
-
this.cached = [];
|
|
24
|
-
try {
|
|
25
|
-
this.realApplyMock(data);
|
|
26
|
-
}
|
|
27
|
-
catch (e) {
|
|
28
|
-
this.outputError(e);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
realApplyMock(data) {
|
|
32
|
-
if (!data)
|
|
33
|
-
return;
|
|
34
|
-
Object.keys(data).forEach((key) => {
|
|
35
|
-
const rules = data[key];
|
|
36
|
-
if (!rules)
|
|
37
|
-
return;
|
|
38
|
-
Object.keys(rules).forEach((ruleKey) => {
|
|
39
|
-
const value = rules[ruleKey];
|
|
40
|
-
if (!(typeof value === 'function' || typeof value === 'object' || typeof value === 'string')) {
|
|
41
|
-
throw Error(`mock value of [${key}-${ruleKey}] should be function or object or string, but got ${typeof value}`);
|
|
42
|
-
}
|
|
43
|
-
const rule = this.genRule(ruleKey, value);
|
|
44
|
-
if (['GET', 'POST', 'PUT', 'HEAD', 'DELETE', 'PATCH', 'OPTIONS'].indexOf(rule.method) === -1) {
|
|
45
|
-
throw Error(`method of ${key}-${ruleKey} is not valid`);
|
|
46
|
-
}
|
|
47
|
-
const item = this.cached.find(w => w.url === rule.url && w.method === rule.method);
|
|
48
|
-
if (item) {
|
|
49
|
-
item.callback = rule.callback;
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
this.cached.push(rule);
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
});
|
|
56
|
-
// regular ordering
|
|
57
|
-
this.cached.sort((a, b) => (b.martcher || '').toString().length - (a.martcher || '').toString().length);
|
|
58
|
-
}
|
|
59
|
-
genRule(key, callback) {
|
|
60
|
-
let method = 'GET';
|
|
61
|
-
let url = key;
|
|
62
|
-
if (key.indexOf(' ') > -1) {
|
|
63
|
-
const splited = key.split(' ');
|
|
64
|
-
method = splited[0].toLowerCase();
|
|
65
|
-
url = splited[1];
|
|
66
|
-
}
|
|
67
|
-
let martcher = null;
|
|
68
|
-
let segments = [];
|
|
69
|
-
if (~url.indexOf(':')) {
|
|
70
|
-
segments = url
|
|
71
|
-
.split('/')
|
|
72
|
-
.filter(segment => segment.startsWith(':'))
|
|
73
|
-
.map(v => v.substring(1));
|
|
74
|
-
const reStr = url
|
|
75
|
-
.split('/')
|
|
76
|
-
.map(segment => (segment.startsWith(':') ? `([^/]+)` : segment))
|
|
77
|
-
.join('/');
|
|
78
|
-
martcher = new RegExp(`^${reStr}`, 'i');
|
|
79
|
-
}
|
|
80
|
-
else if (/(\([^)]+\))/i.test(url)) {
|
|
81
|
-
martcher = new RegExp(url, 'i');
|
|
82
|
-
}
|
|
83
|
-
return {
|
|
84
|
-
url,
|
|
85
|
-
martcher,
|
|
86
|
-
segments,
|
|
87
|
-
callback,
|
|
88
|
-
method: method.toUpperCase()
|
|
89
|
-
};
|
|
90
|
-
}
|
|
91
|
-
outputError(error) {
|
|
92
|
-
const filePath = error.message.split(': ')[0];
|
|
93
|
-
const errors = error.stack
|
|
94
|
-
.split('\n')
|
|
95
|
-
.filter(line => line.trim().indexOf('at ') !== 0)
|
|
96
|
-
.map(line => line.replace(`${filePath}: `, ''));
|
|
97
|
-
errors.splice(1, 0, '');
|
|
98
|
-
console.group();
|
|
99
|
-
console.warn(`==========Failed to parse mock config.==========`);
|
|
100
|
-
console.log(errors.join('\n'));
|
|
101
|
-
console.groupEnd();
|
|
102
|
-
throw error;
|
|
103
|
-
}
|
|
104
|
-
// #endregion
|
|
105
|
-
getRule(method, url) {
|
|
106
|
-
method = (method || 'GET').toUpperCase();
|
|
107
|
-
const params = {};
|
|
108
|
-
const list = this.cached.filter(w => w.method === method && (w.martcher ? w.martcher.test(url) : w.url === url));
|
|
109
|
-
if (list.length === 0)
|
|
110
|
-
return null;
|
|
111
|
-
const ret = list.find(w => w.url === url) || list[0];
|
|
112
|
-
if (ret.martcher) {
|
|
113
|
-
const execArr = ret.martcher.exec(url);
|
|
114
|
-
execArr.slice(1).map((value, index) => {
|
|
115
|
-
params[ret.segments[index]] = value;
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
return {
|
|
119
|
-
url,
|
|
120
|
-
method: ret.method,
|
|
121
|
-
params,
|
|
122
|
-
callback: ret.callback
|
|
123
|
-
};
|
|
124
|
-
}
|
|
125
|
-
clearCache() {
|
|
126
|
-
this.cached = [];
|
|
127
|
-
}
|
|
128
|
-
get rules() {
|
|
129
|
-
return this.cached;
|
|
130
|
-
}
|
|
131
|
-
ngOnDestroy() {
|
|
132
|
-
this.clearCache();
|
|
133
|
-
}
|
|
134
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MockService, deps: [{ token: i1.AlainConfigService }, { token: DELON_MOCK_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
135
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MockService, providedIn: 'root' }); }
|
|
136
|
-
}
|
|
137
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MockService, decorators: [{
|
|
138
|
-
type: Injectable,
|
|
139
|
-
args: [{ providedIn: 'root' }]
|
|
140
|
-
}], ctorParameters: () => [{ type: i1.AlainConfigService }, { type: undefined, decorators: [{
|
|
141
|
-
type: Optional
|
|
142
|
-
}, {
|
|
143
|
-
type: Inject,
|
|
144
|
-
args: [DELON_MOCK_CONFIG]
|
|
145
|
-
}] }] });
|
|
146
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvbW9jay9zcmMvbW9jay5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBYSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFLeEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFdBQVcsQ0FBQzs7O0FBRzlDLE1BQU0sT0FBTyxXQUFXO0lBSXRCLFlBQVksTUFBMEIsRUFBeUMsT0FBcUI7UUFINUYsV0FBTSxHQUFxQixFQUFFLENBQUM7UUFJcEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxtQkFBbUIsQ0FBRSxDQUFDO1FBQ3pELElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLElBQVM7UUFDZixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxxQkFBcUI7SUFFYixTQUFTLENBQUMsSUFBUztRQUN6QixJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUM7WUFDSCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNCLENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0QixDQUFDO0lBQ0gsQ0FBQztJQUVPLGFBQWEsQ0FBQyxJQUFTO1FBQzdCLElBQUksQ0FBQyxJQUFJO1lBQUUsT0FBTztRQUNsQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUks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QUFJLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqQixNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN2QyxPQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQWEsRUFBRSxLQUFhLEVBQUUsRUFBRTtnQkFDckQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUM7WUFDdEMsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTztZQUNMLEdBQUc7WUFDSCxNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07WUFDbEIsTUFBTTtZQUNOLFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUTtTQUN2QixDQUFDO0lBQ0osQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7OEdBNUlVLFdBQVcsb0RBSXNDLGlCQUFpQjtrSEFKbEUsV0FBVyxjQURFLE1BQU07OzJGQUNuQixXQUFXO2tCQUR2QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7MEJBS1MsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9uRGVzdHJveSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQWxhaW5Db25maWdTZXJ2aWNlLCBBbGFpbk1vY2tDb25maWcgfSBmcm9tICdAZGVsb24vdXRpbC9jb25maWcnO1xuXG5pbXBvcnQgeyBNb2NrQ2FjaGVkUnVsZSwgTW9ja09wdGlvbnMsIE1vY2tSdWxlIH0gZnJvbSAnLi9pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTU9DS19ERUZVTEFUX0NPTkZJRyB9IGZyb20gJy4vbW9jay5jb25maWcnO1xuaW1wb3J0IHsgREVMT05fTU9DS19DT05GSUcgfSBmcm9tICcuL3Byb3ZpZGUnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIE1vY2tTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBjYWNoZWQ6IE1vY2tDYWNoZWRSdWxlW10gPSBbXTtcbiAgcmVhZG9ubHkgY29uZmlnOiBBbGFpbk1vY2tDb25maWc7XG5cbiAgY29uc3RydWN0b3IoY29nU3J2OiBBbGFpbkNvbmZpZ1NlcnZpY2UsIEBPcHRpb25hbCgpIEBJbmplY3QoREVMT05fTU9DS19DT05GSUcpIG9wdGlvbnM/OiBNb2NrT3B0aW9ucykge1xuICAgIHRoaXMuY29uZmlnID0gY29nU3J2Lm1lcmdlKCdtb2NrJywgTU9DS19ERUZVTEFUX0NPTkZJRykhO1xuICAgIHRoaXMuc2V0RGF0YShvcHRpb25zPy5kYXRhKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldCByZXF1ZXN0IGRhdGFcbiAgICpcbiAgICog6YeN5paw6K6+572u6K+35rGC5pWw5o2uXG4gICAqL1xuICBzZXREYXRhKGRhdGE6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuYXBwbHlNb2NrKGRhdGEpO1xuICB9XG5cbiAgLy8gI3JlZ2lvbiBwYXJzZSBydWxlXG5cbiAgcHJpdmF0ZSBhcHBseU1vY2soZGF0YTogYW55KTogdm9pZCB7XG4gICAgdGhpcy5jYWNoZWQgPSBbXTtcbiAgICB0cnkge1xuICAgICAgdGhpcy5yZWFsQXBwbHlNb2NrKGRhdGEpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRoaXMub3V0cHV0RXJyb3IoZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZWFsQXBwbHlNb2NrKGRhdGE6IGFueSk6IHZvaWQge1xuICAgIGlmICghZGF0YSkgcmV0dXJuO1xuICAgIE9iamVjdC5rZXlzKGRhdGEpLmZvckVhY2goKGtleTogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCBydWxlcyA9IGRhdGFba2V5XTtcbiAgICAgIGlmICghcnVsZXMpIHJldHVybjtcbiAgICAgIE9iamVjdC5rZXlzKHJ1bGVzKS5mb3JFYWNoKChydWxlS2V5OiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBydWxlc1tydWxlS2V5XTtcbiAgICAgICAgaWYgKCEodHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nIHx8IHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgfHwgdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykpIHtcbiAgICAgICAgICB0aHJvdyBFcnJvcihcbiAgICAgICAgICAgIGBtb2NrIHZhbHVlIG9mIFske2tleX0tJHtydWxlS2V5fV0gc2hvdWxkIGJlIGZ1bmN0aW9uIG9yIG9iamVjdCBvciBzdHJpbmcsIGJ1dCBnb3QgJHt0eXBlb2YgdmFsdWV9YFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcnVsZSA9IHRoaXMuZ2VuUnVsZShydWxlS2V5LCB2YWx1ZSk7XG4gICAgICAgIGlmIChbJ0dFVCcsICdQT1NUJywgJ1BVVCcsICdIRUFEJywgJ0RFTEVURScsICdQQVRDSCcsICdPUFRJT05TJ10uaW5kZXhPZihydWxlLm1ldGhvZCkgPT09IC0xKSB7XG4gICAgICAgICAgdGhyb3cgRXJyb3IoYG1ldGhvZCBvZiAke2tleX0tJHtydWxlS2V5fSBpcyBub3QgdmFsaWRgKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpdGVtID0gdGhpcy5jYWNoZWQuZmluZCh3ID0+IHcudXJsID09PSBydWxlLnVybCAmJiB3Lm1ldGhvZCA9PT0gcnVsZS5tZXRob2QpO1xuICAgICAgICBpZiAoaXRlbSkge1xuICAgICAgICAgIGl0ZW0uY2FsbGJhY2sgPSBydWxlLmNhbGxiYWNrO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuY2FjaGVkLnB1c2gocnVsZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIC8vIHJlZ3VsYXIgb3JkZXJpbmdcbiAgICB0aGlzLmNhY2hlZC5zb3J0KChhLCBiKSA9PiAoYi5tYXJ0Y2hlciB8fCAnJykudG9TdHJpbmcoKS5sZW5ndGggLSAoYS5tYXJ0Y2hlciB8fCAnJykudG9TdHJpbmcoKS5sZW5ndGgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZW5SdWxlKGtleTogc3RyaW5nLCBjYWxsYmFjazogYW55KTogTW9ja0NhY2hlZFJ1bGUge1xuICAgIGxldCBtZXRob2QgPSAnR0VUJztcbiAgICBsZXQgdXJsID0ga2V5O1xuXG4gICAgaWYgKGtleS5pbmRleE9mKCcgJykgPiAtMSkge1xuICAgICAgY29uc3Qgc3BsaXRlZCA9IGtleS5zcGxpdCgnICcpO1xuICAgICAgbWV0aG9kID0gc3BsaXRlZFswXS50b0xvd2VyQ2FzZSgpO1xuICAgICAgdXJsID0gc3BsaXRlZFsxXTtcbiAgICB9XG5cbiAgICBsZXQgbWFydGNoZXI6IFJlZ0V4cCB8IG51bGwgPSBudWxsO1xuICAgIGxldCBzZWdtZW50czogc3RyaW5nW10gPSBbXTtcbiAgICBpZiAofnVybC5pbmRleE9mKCc6JykpIHtcbiAgICAgIHNlZ21lbnRzID0gdXJsIVxuICAgICAgICAuc3BsaXQoJy8nKVxuICAgICAgICAuZmlsdGVyKHNlZ21lbnQgPT4gc2VnbWVudC5zdGFydHNXaXRoKCc6JykpXG4gICAgICAgIC5tYXAodiA9PiB2LnN1YnN0cmluZygxKSk7XG4gICAgICBjb25zdCByZVN0ciA9IHVybCFcbiAgICAgICAgLnNwbGl0KCcvJylcbiAgICAgICAgLm1hcChzZWdtZW50ID0+IChzZWdtZW50LnN0YXJ0c1dpdGgoJzonKSA/IGAoW14vXSspYCA6IHNlZ21lbnQpKVxuICAgICAgICAuam9pbignLycpO1xuICAgICAgbWFydGNoZXIgPSBuZXcgUmVnRXhwKGBeJHtyZVN0cn1gLCAnaScpO1xuICAgIH0gZWxzZSBpZiAoLyhcXChbXildK1xcKSkvaS50ZXN0KHVybCkpIHtcbiAgICAgIG1hcnRjaGVyID0gbmV3IFJlZ0V4cCh1cmwsICdpJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIHVybCxcbiAgICAgIG1hcnRjaGVyLFxuICAgICAgc2VnbWVudHMsXG4gICAgICBjYWxsYmFjayxcbiAgICAgIG1ldGhvZDogbWV0aG9kLnRvVXBwZXJDYXNlKClcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBvdXRwdXRFcnJvcihlcnJvcjogYW55KTogdm9pZCB7XG4gICAgY29uc3QgZmlsZVBhdGggPSBlcnJvci5tZXNzYWdlLnNwbGl0KCc6ICcpWzBdO1xuICAgIGNvbnN0IGVycm9ycyA9IChlcnJvci5zdGFjayBhcyBzdHJpbmcpXG4gICAgICAuc3BsaXQoJ1xcbicpXG4gICAgICAuZmlsdGVyKGxpbmUgPT4gbGluZS50cmltKCkuaW5kZXhPZignYXQgJykgIT09IDApXG4gICAgICAubWFwKGxpbmUgPT4gbGluZS5yZXBsYWNlKGAke2ZpbGVQYXRofTogYCwgJycpKTtcbiAgICBlcnJvcnMuc3BsaWNlKDEsIDAsICcnKTtcblxuICAgIGNvbnNvbGUuZ3JvdXAoKTtcbiAgICBjb25zb2xlLndhcm4oYD09PT09PT09PT1GYWlsZWQgdG8gcGFyc2UgbW9jayBjb25maWcuPT09PT09PT09PWApO1xuICAgIGNvbnNvbGUubG9nKGVycm9ycy5qb2luKCdcXG4nKSk7XG4gICAgY29uc29sZS5ncm91cEVuZCgpO1xuXG4gICAgdGhyb3cgZXJyb3I7XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uXG5cbiAgZ2V0UnVsZShtZXRob2Q6IHN0cmluZywgdXJsOiBzdHJpbmcpOiBNb2NrUnVsZSB8IG51bGwge1xuICAgIG1ldGhvZCA9IChtZXRob2QgfHwgJ0dFVCcpLnRvVXBwZXJDYXNlKCk7XG4gICAgY29uc3QgcGFyYW1zOiBhbnkgPSB7fTtcbiAgICBjb25zdCBsaXN0ID0gdGhpcy5jYWNoZWQuZmlsdGVyKHcgPT4gdy5tZXRob2QgPT09IG1ldGhvZCAmJiAody5tYXJ0Y2hlciA/IHcubWFydGNoZXIudGVzdCh1cmwpIDogdy51cmwgPT09IHVybCkpO1xuICAgIGlmIChsaXN0Lmxlbmd0aCA9PT0gMCkgcmV0dXJuIG51bGw7XG4gICAgY29uc3QgcmV0ID0gbGlzdC5maW5kKHcgPT4gdy51cmwgPT09IHVybCkgfHwgbGlzdFswXTtcbiAgICBpZiAocmV0Lm1hcnRjaGVyKSB7XG4gICAgICBjb25zdCBleGVjQXJyID0gcmV0Lm1hcnRjaGVyLmV4ZWModXJsKTtcbiAgICAgIGV4ZWNBcnIhLnNsaWNlKDEpLm1hcCgodmFsdWU6IHN0cmluZywgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICBwYXJhbXNbcmV0LnNlZ21lbnRzW2luZGV4XV0gPSB2YWx1ZTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgdXJsLFxuICAgICAgbWV0aG9kOiByZXQubWV0aG9kLFxuICAgICAgcGFyYW1zLFxuICAgICAgY2FsbGJhY2s6IHJldC5jYWxsYmFja1xuICAgIH07XG4gIH1cblxuICBjbGVhckNhY2hlKCk6IHZvaWQge1xuICAgIHRoaXMuY2FjaGVkID0gW107XG4gIH1cblxuICBnZXQgcnVsZXMoKTogTW9ja0NhY2hlZFJ1bGVbXSB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVkO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5jbGVhckNhY2hlKCk7XG4gIH1cbn1cbiJdfQ==
|
package/esm2022/src/provide.mjs
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { InjectionToken, makeEnvironmentProviders } from '@angular/core';
|
|
2
|
-
export const DELON_MOCK_CONFIG = new InjectionToken('alain-mock-config');
|
|
3
|
-
export function provideMockConfig(config) {
|
|
4
|
-
return makeEnvironmentProviders([{ provide: DELON_MOCK_CONFIG, useValue: config }]);
|
|
5
|
-
}
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL21vY2svc3JjL3Byb3ZpZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF3QixjQUFjLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJL0YsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQWMsbUJBQW1CLENBQUMsQ0FBQztBQUV0RixNQUFNLFVBQVUsaUJBQWlCLENBQUMsTUFBb0I7SUFDcEQsT0FBTyx3QkFBd0IsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDdEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudmlyb25tZW50UHJvdmlkZXJzLCBJbmplY3Rpb25Ub2tlbiwgbWFrZUVudmlyb25tZW50UHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE1vY2tPcHRpb25zIH0gZnJvbSAnLi9pbnRlcmZhY2UnO1xuXG5leHBvcnQgY29uc3QgREVMT05fTU9DS19DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48TW9ja09wdGlvbnM+KCdhbGFpbi1tb2NrLWNvbmZpZycpO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZU1vY2tDb25maWcoY29uZmlnPzogTW9ja09wdGlvbnMpOiBFbnZpcm9ubWVudFByb3ZpZGVycyB7XG4gIHJldHVybiBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMoW3sgcHJvdmlkZTogREVMT05fTU9DS19DT05GSUcsIHVzZVZhbHVlOiBjb25maWcgfV0pO1xufVxuIl19
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
export class MockStatusError {
|
|
3
|
-
constructor(status, error) {
|
|
4
|
-
this.status = status;
|
|
5
|
-
this.error = error;
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLmVycm9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvbW9jay9zcmMvc3RhdHVzLmVycm9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUV2RCxNQUFNLE9BQU8sZUFBZTtJQUcxQixZQUNTLE1BQWMsRUFDZCxLQUFXO1FBRFgsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQU07SUFDakIsQ0FBQztDQUNMIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuXG5leHBvcnQgY2xhc3MgTW9ja1N0YXR1c0Vycm9yIHtcbiAgc3RhdHVzVGV4dD86IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgc3RhdHVzOiBudW1iZXIsXG4gICAgcHVibGljIGVycm9yPzogYW55XG4gICkge31cbn1cbiJdfQ==
|
package/esm2022/src/utils.mjs
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Used to simulate delays
|
|
3
|
-
*/
|
|
4
|
-
export function delay(ms) {
|
|
5
|
-
return new Promise(resolve => setTimeout(resolve, ms));
|
|
6
|
-
}
|
|
7
|
-
/**
|
|
8
|
-
* Return a random number
|
|
9
|
-
*/
|
|
10
|
-
export function r(min = 1, max = 100) {
|
|
11
|
-
return Math.floor(Math.random() * (max - min + 1) + min);
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9tb2NrL3NyYy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sVUFBVSxLQUFLLENBQUMsRUFBVTtJQUM5QixPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQ3pELENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsRUFBRSxHQUFHLEdBQUcsR0FBRztJQUNsQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQztBQUMzRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBVc2VkIHRvIHNpbXVsYXRlIGRlbGF5c1xuICovXG5leHBvcnQgZnVuY3Rpb24gZGVsYXkobXM6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xuICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiBzZXRUaW1lb3V0KHJlc29sdmUsIG1zKSk7XG59XG5cbi8qKlxuICogUmV0dXJuIGEgcmFuZG9tIG51bWJlclxuICovXG5leHBvcnQgZnVuY3Rpb24gcihtaW4gPSAxLCBtYXggPSAxMDApOiBudW1iZXIge1xuICByZXR1cm4gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogKG1heCAtIG1pbiArIDEpICsgbWluKTtcbn1cbiJdfQ==
|