@weconjs/core 1.2.12 → 1.2.14
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/database/index.d.ts +19 -0
- package/dist/database/index.d.ts.map +1 -1
- package/dist/database/index.js +11 -10
- package/dist/database/index.js.map +1 -1
- package/dist/generators/PostmanGenerator.d.ts +137 -0
- package/dist/generators/PostmanGenerator.d.ts.map +1 -0
- package/dist/generators/PostmanGenerator.js +318 -0
- package/dist/generators/PostmanGenerator.js.map +1 -0
- package/dist/index.d.ts +6 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/routing/PostmanGroup.d.ts +56 -0
- package/dist/routing/PostmanGroup.d.ts.map +1 -0
- package/dist/routing/PostmanGroup.js +66 -0
- package/dist/routing/PostmanGroup.js.map +1 -0
- package/dist/routing/PostmanRoute.d.ts +145 -0
- package/dist/routing/PostmanRoute.d.ts.map +1 -0
- package/dist/routing/PostmanRoute.js +138 -0
- package/dist/routing/PostmanRoute.js.map +1 -0
- package/dist/routing/Route.d.ts +2 -0
- package/dist/routing/Route.d.ts.map +1 -1
- package/dist/routing/Route.js +2 -0
- package/dist/routing/Route.js.map +1 -1
- package/dist/routing/Routes.d.ts +2 -0
- package/dist/routing/Routes.d.ts.map +1 -1
- package/dist/routing/Routes.js +3 -0
- package/dist/routing/Routes.js.map +1 -1
- package/dist/routing/Wecon.d.ts +33 -0
- package/dist/routing/Wecon.d.ts.map +1 -1
- package/dist/routing/Wecon.js +52 -0
- package/dist/routing/Wecon.js.map +1 -1
- package/dist/routing/index.d.ts +5 -1
- package/dist/routing/index.d.ts.map +1 -1
- package/dist/routing/index.js +2 -0
- package/dist/routing/index.js.map +1 -1
- package/dist/server/index.d.ts +5 -0
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +1 -0
- package/dist/server/index.js.map +1 -1
- package/dist/types/postman.types.d.ts +241 -0
- package/dist/types/postman.types.d.ts.map +1 -0
- package/dist/types/postman.types.js +6 -0
- package/dist/types/postman.types.js.map +1 -0
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,gBAAgB;AAChB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEtE,gBAAgB;AAChB,OAAO,EACL,YAAY,EACZ,UAAU,EACV,sBAAsB,EACtB,wBAAwB,EACxB,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAErB,kDAAkD;AAClD,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAG3B,UAAU;AACV,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE3D,SAAS;AACT,OAAO,EACL,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAG3B,SAAS;AACT,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAShD,UAAU;AACV,OAAO,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,WAAW,EACX,UAAU,EACV,YAAY,GACb,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,gBAAgB;AAChB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEtE,gBAAgB;AAChB,OAAO,EACL,YAAY,EACZ,UAAU,EACV,sBAAsB,EACtB,wBAAwB,EACxB,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAErB,kDAAkD;AAClD,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAG3B,UAAU;AACV,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE3D,SAAS;AACT,OAAO,EACL,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAG3B,SAAS;AACT,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAShD,UAAU;AACV,OAAO,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,YAAY,GACb,MAAM,oBAAoB,CAAC;AAS5B,oBAAoB;AACpB,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAuB/E,SAAS;AACT,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO;AACP,OAAO,EACL,cAAc,EACd,QAAQ,EACR,uBAAuB,EACvB,OAAO,EACP,OAAO,EACP,UAAU,EACV,SAAS,EACT,kBAAkB,EAClB,cAAc,GACf,MAAM,iBAAiB,CAAC;AAGzB,WAAW;AACX,OAAO,EACL,wBAAwB,EACxB,aAAa,EACb,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAQ7B,YAAY;AACZ,OAAO,EACL,kBAAkB,EAClB,sBAAsB,IAAI,iCAAiC,EAC3D,wBAAwB,IAAI,mCAAmC,EAC/D,gBAAgB,EAChB,aAAa,GACd,MAAM,mBAAmB,CAAC;AAU3B,WAAW;AACX,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3D,yDAAyD;AACzD,OAAO,oBAAoB,CAAC;AAC5B,OAAO,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { PostmanDescription, PostmanAuth, PostmanVariableList, PostmanEventList, PostmanProtocolProfileBehavior, PostmanGroupConfig } from "../types/postman.types.js";
|
|
2
|
+
import type { PostmanItem } from "./PostmanRoute.js";
|
|
3
|
+
/**
|
|
4
|
+
* Postman Item Group (Folder) structure
|
|
5
|
+
*/
|
|
6
|
+
export interface PostmanItemGroup {
|
|
7
|
+
name: string;
|
|
8
|
+
description?: PostmanDescription;
|
|
9
|
+
item: (PostmanItem | PostmanItemGroup)[];
|
|
10
|
+
auth?: PostmanAuth | null;
|
|
11
|
+
event?: PostmanEventList;
|
|
12
|
+
variable?: PostmanVariableList;
|
|
13
|
+
protocolProfileBehavior?: PostmanProtocolProfileBehavior;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* PostmanGroup
|
|
17
|
+
*
|
|
18
|
+
* Configures how a group of Routes (a folder) is represented in the generated Postman collection.
|
|
19
|
+
* This class handles the creation of Postman Folders (Item Groups).
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```typescript
|
|
23
|
+
* new Routes({
|
|
24
|
+
* prefix: '/users',
|
|
25
|
+
* postman: new PostmanGroup({
|
|
26
|
+
* folderName: 'User Management',
|
|
27
|
+
* description: 'Endpoints for managing users',
|
|
28
|
+
* auth: { type: 'bearer', ... }
|
|
29
|
+
* })
|
|
30
|
+
* })
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
declare class PostmanGroup {
|
|
34
|
+
/** Folder name - the display name for this folder in Postman */
|
|
35
|
+
folderName: string;
|
|
36
|
+
/** Description of the folder/route group */
|
|
37
|
+
description?: PostmanDescription;
|
|
38
|
+
/** Authentication configuration (inherited by child items unless overridden) */
|
|
39
|
+
auth?: PostmanAuth | null;
|
|
40
|
+
/** Variables scoped to this folder */
|
|
41
|
+
variable?: PostmanVariableList;
|
|
42
|
+
/** Pre-request and test scripts for this folder */
|
|
43
|
+
event?: PostmanEventList;
|
|
44
|
+
/** Protocol profile behavior configuration */
|
|
45
|
+
protocolProfileBehavior?: PostmanProtocolProfileBehavior;
|
|
46
|
+
constructor(config: PostmanGroupConfig);
|
|
47
|
+
/**
|
|
48
|
+
* Converts this configuration and a list of child items into a Postman Folder.
|
|
49
|
+
*
|
|
50
|
+
* @param items - The list of child requests (Items) or sub-folders (ItemGroups)
|
|
51
|
+
* @returns A formatted Postman ItemGroup object
|
|
52
|
+
*/
|
|
53
|
+
toPostmanItemGroup(items: (PostmanItem | PostmanItemGroup)[]): PostmanItemGroup;
|
|
54
|
+
}
|
|
55
|
+
export default PostmanGroup;
|
|
56
|
+
//# sourceMappingURL=PostmanGroup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PostmanGroup.d.ts","sourceRoot":"","sources":["../../src/routing/PostmanGroup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,WAAW,EACX,mBAAmB,EACnB,gBAAgB,EAChB,8BAA8B,EAC9B,kBAAkB,EACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,IAAI,EAAE,CAAC,WAAW,GAAG,gBAAgB,CAAC,EAAE,CAAC;IACzC,IAAI,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC1B,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,uBAAuB,CAAC,EAAE,8BAA8B,CAAC;CAC1D;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,cAAM,YAAY;IAChB,gEAAgE;IAChE,UAAU,EAAE,MAAM,CAAC;IAEnB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,kBAAkB,CAAC;IAEjC,gFAAgF;IAChF,IAAI,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAE1B,sCAAsC;IACtC,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAE/B,mDAAmD;IACnD,KAAK,CAAC,EAAE,gBAAgB,CAAC;IAEzB,8CAA8C;IAC9C,uBAAuB,CAAC,EAAE,8BAA8B,CAAC;gBAE7C,MAAM,EAAE,kBAAkB;IAStC;;;;;OAKG;IACI,kBAAkB,CACvB,KAAK,EAAE,CAAC,WAAW,GAAG,gBAAgB,CAAC,EAAE,GACxC,gBAAgB;CAgBpB;AAED,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PostmanGroup
|
|
3
|
+
*
|
|
4
|
+
* Configures how a group of Routes (a folder) is represented in the generated Postman collection.
|
|
5
|
+
* This class handles the creation of Postman Folders (Item Groups).
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* new Routes({
|
|
10
|
+
* prefix: '/users',
|
|
11
|
+
* postman: new PostmanGroup({
|
|
12
|
+
* folderName: 'User Management',
|
|
13
|
+
* description: 'Endpoints for managing users',
|
|
14
|
+
* auth: { type: 'bearer', ... }
|
|
15
|
+
* })
|
|
16
|
+
* })
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
class PostmanGroup {
|
|
20
|
+
/** Folder name - the display name for this folder in Postman */
|
|
21
|
+
folderName;
|
|
22
|
+
/** Description of the folder/route group */
|
|
23
|
+
description;
|
|
24
|
+
/** Authentication configuration (inherited by child items unless overridden) */
|
|
25
|
+
auth;
|
|
26
|
+
/** Variables scoped to this folder */
|
|
27
|
+
variable;
|
|
28
|
+
/** Pre-request and test scripts for this folder */
|
|
29
|
+
event;
|
|
30
|
+
/** Protocol profile behavior configuration */
|
|
31
|
+
protocolProfileBehavior;
|
|
32
|
+
constructor(config) {
|
|
33
|
+
this.folderName = config.folderName;
|
|
34
|
+
this.description = config.description;
|
|
35
|
+
this.auth = config.auth;
|
|
36
|
+
this.variable = config.variable;
|
|
37
|
+
this.event = config.event;
|
|
38
|
+
this.protocolProfileBehavior = config.protocolProfileBehavior;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Converts this configuration and a list of child items into a Postman Folder.
|
|
42
|
+
*
|
|
43
|
+
* @param items - The list of child requests (Items) or sub-folders (ItemGroups)
|
|
44
|
+
* @returns A formatted Postman ItemGroup object
|
|
45
|
+
*/
|
|
46
|
+
toPostmanItemGroup(items) {
|
|
47
|
+
const folder = {
|
|
48
|
+
name: this.folderName,
|
|
49
|
+
item: items,
|
|
50
|
+
};
|
|
51
|
+
if (this.description)
|
|
52
|
+
folder.description = this.description;
|
|
53
|
+
if (this.auth !== undefined)
|
|
54
|
+
folder.auth = this.auth;
|
|
55
|
+
if (this.variable)
|
|
56
|
+
folder.variable = this.variable;
|
|
57
|
+
if (this.event)
|
|
58
|
+
folder.event = this.event;
|
|
59
|
+
if (this.protocolProfileBehavior) {
|
|
60
|
+
folder.protocolProfileBehavior = this.protocolProfileBehavior;
|
|
61
|
+
}
|
|
62
|
+
return folder;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
export default PostmanGroup;
|
|
66
|
+
//# sourceMappingURL=PostmanGroup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PostmanGroup.js","sourceRoot":"","sources":["../../src/routing/PostmanGroup.ts"],"names":[],"mappings":"AAuBA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,YAAY;IAChB,gEAAgE;IAChE,UAAU,CAAS;IAEnB,4CAA4C;IAC5C,WAAW,CAAsB;IAEjC,gFAAgF;IAChF,IAAI,CAAsB;IAE1B,sCAAsC;IACtC,QAAQ,CAAuB;IAE/B,mDAAmD;IACnD,KAAK,CAAoB;IAEzB,8CAA8C;IAC9C,uBAAuB,CAAkC;IAEzD,YAAY,MAA0B;QACpC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,uBAAuB,GAAG,MAAM,CAAC,uBAAuB,CAAC;IAChE,CAAC;IAED;;;;;OAKG;IACI,kBAAkB,CACvB,KAAyC;QAEzC,MAAM,MAAM,GAAqB;YAC/B,IAAI,EAAE,IAAI,CAAC,UAAU;YACrB,IAAI,EAAE,KAAK;SACZ,CAAC;QAEF,IAAI,IAAI,CAAC,WAAW;YAAE,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAC5D,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;YAAE,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACrD,IAAI,IAAI,CAAC,QAAQ;YAAE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACnD,IAAI,IAAI,CAAC,KAAK;YAAE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1C,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACjC,MAAM,CAAC,uBAAuB,GAAG,IAAI,CAAC,uBAAuB,CAAC;QAChE,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import type { PostmanDescription, PostmanAuth, PostmanVariableList, PostmanEventList, PostmanProtocolProfileBehavior, PostmanRouteConfig } from "../types/postman.types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Postman URL structure
|
|
4
|
+
*/
|
|
5
|
+
interface PostmanUrl {
|
|
6
|
+
raw: string;
|
|
7
|
+
protocol?: string;
|
|
8
|
+
host?: string | string[];
|
|
9
|
+
port?: string;
|
|
10
|
+
path?: string | string[];
|
|
11
|
+
query?: Array<{
|
|
12
|
+
key: string;
|
|
13
|
+
value: string;
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
description?: PostmanDescription;
|
|
16
|
+
}>;
|
|
17
|
+
hash?: string;
|
|
18
|
+
variable?: PostmanVariableList;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Postman Request structure
|
|
22
|
+
*/
|
|
23
|
+
interface PostmanRequest {
|
|
24
|
+
method: string;
|
|
25
|
+
header?: Array<{
|
|
26
|
+
key: string;
|
|
27
|
+
value: string;
|
|
28
|
+
disabled?: boolean;
|
|
29
|
+
description?: PostmanDescription;
|
|
30
|
+
}>;
|
|
31
|
+
body?: {
|
|
32
|
+
mode: string;
|
|
33
|
+
raw?: string;
|
|
34
|
+
urlencoded?: Array<{
|
|
35
|
+
key: string;
|
|
36
|
+
value: string;
|
|
37
|
+
disabled?: boolean;
|
|
38
|
+
}>;
|
|
39
|
+
formdata?: Array<{
|
|
40
|
+
key: string;
|
|
41
|
+
value: string;
|
|
42
|
+
type?: string;
|
|
43
|
+
disabled?: boolean;
|
|
44
|
+
}>;
|
|
45
|
+
file?: {
|
|
46
|
+
src: string;
|
|
47
|
+
};
|
|
48
|
+
graphql?: {
|
|
49
|
+
query: string;
|
|
50
|
+
variables?: string;
|
|
51
|
+
};
|
|
52
|
+
options?: {
|
|
53
|
+
raw?: {
|
|
54
|
+
language?: string;
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
url: PostmanUrl | string;
|
|
59
|
+
auth?: PostmanAuth | null;
|
|
60
|
+
description?: PostmanDescription;
|
|
61
|
+
proxy?: unknown;
|
|
62
|
+
certificate?: unknown;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Postman Item structure (represents a single request)
|
|
66
|
+
*/
|
|
67
|
+
export interface PostmanItem {
|
|
68
|
+
id?: string;
|
|
69
|
+
name: string;
|
|
70
|
+
description?: PostmanDescription;
|
|
71
|
+
variable?: PostmanVariableList;
|
|
72
|
+
event?: PostmanEventList;
|
|
73
|
+
request: PostmanRequest | string;
|
|
74
|
+
response?: Array<{
|
|
75
|
+
name: string;
|
|
76
|
+
originalRequest?: unknown;
|
|
77
|
+
status?: string;
|
|
78
|
+
code?: number;
|
|
79
|
+
header?: Array<{
|
|
80
|
+
key: string;
|
|
81
|
+
value: string;
|
|
82
|
+
}>;
|
|
83
|
+
body?: string;
|
|
84
|
+
_postman_previewlanguage?: string;
|
|
85
|
+
}>;
|
|
86
|
+
protocolProfileBehavior?: PostmanProtocolProfileBehavior;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* PostmanRoute
|
|
90
|
+
*
|
|
91
|
+
* Configures how a single API Route is represented in the generated Postman collection.
|
|
92
|
+
* This class handles the transformation of route metadata into a Postman Request Item.
|
|
93
|
+
*
|
|
94
|
+
* @example
|
|
95
|
+
* ```typescript
|
|
96
|
+
* new Route({
|
|
97
|
+
* method: 'POST',
|
|
98
|
+
* path: '/users',
|
|
99
|
+
* postman: new PostmanRoute({
|
|
100
|
+
* name: 'Create New User',
|
|
101
|
+
* body: {
|
|
102
|
+
* mode: 'raw',
|
|
103
|
+
* raw: JSON.stringify({ name: 'John' })
|
|
104
|
+
* }
|
|
105
|
+
* })
|
|
106
|
+
* })
|
|
107
|
+
* ```
|
|
108
|
+
*/
|
|
109
|
+
declare class PostmanRoute {
|
|
110
|
+
name?: string;
|
|
111
|
+
description?: PostmanDescription;
|
|
112
|
+
auth?: PostmanAuth | null;
|
|
113
|
+
variable?: PostmanVariableList;
|
|
114
|
+
event?: PostmanEventList;
|
|
115
|
+
protocolProfileBehavior?: PostmanProtocolProfileBehavior;
|
|
116
|
+
headers?: Record<string, string>;
|
|
117
|
+
query?: Record<string, string>;
|
|
118
|
+
body?: PostmanRouteConfig["body"];
|
|
119
|
+
response?: PostmanRouteConfig["response"];
|
|
120
|
+
constructor(config: PostmanRouteConfig);
|
|
121
|
+
/**
|
|
122
|
+
* Converts this configuration into a Postman Collection Item.
|
|
123
|
+
*
|
|
124
|
+
* @param route - The route definition containing method, path, etc.
|
|
125
|
+
* @param baseUrl - The base URL variable (default: "{{baseUrl}}")
|
|
126
|
+
* @returns A formatted Postman Item object
|
|
127
|
+
*/
|
|
128
|
+
toPostmanItem(route: {
|
|
129
|
+
method: string;
|
|
130
|
+
path: string;
|
|
131
|
+
name: string;
|
|
132
|
+
description: string;
|
|
133
|
+
rai: string;
|
|
134
|
+
params?: Array<{
|
|
135
|
+
path: string;
|
|
136
|
+
description?: string;
|
|
137
|
+
}>;
|
|
138
|
+
}, baseUrl?: string): PostmanItem;
|
|
139
|
+
/**
|
|
140
|
+
* Helper: Converts Express path params (:id) to Postman syntax ({{id}})
|
|
141
|
+
*/
|
|
142
|
+
private convertPathToPostman;
|
|
143
|
+
}
|
|
144
|
+
export default PostmanRoute;
|
|
145
|
+
//# sourceMappingURL=PostmanRoute.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PostmanRoute.d.ts","sourceRoot":"","sources":["../../src/routing/PostmanRoute.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PostmanRoute
|
|
3
|
+
*
|
|
4
|
+
* Configures how a single API Route is represented in the generated Postman collection.
|
|
5
|
+
* This class handles the transformation of route metadata into a Postman Request Item.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* new Route({
|
|
10
|
+
* method: 'POST',
|
|
11
|
+
* path: '/users',
|
|
12
|
+
* postman: new PostmanRoute({
|
|
13
|
+
* name: 'Create New User',
|
|
14
|
+
* body: {
|
|
15
|
+
* mode: 'raw',
|
|
16
|
+
* raw: JSON.stringify({ name: 'John' })
|
|
17
|
+
* }
|
|
18
|
+
* })
|
|
19
|
+
* })
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
class PostmanRoute {
|
|
23
|
+
name;
|
|
24
|
+
description;
|
|
25
|
+
auth;
|
|
26
|
+
variable;
|
|
27
|
+
event;
|
|
28
|
+
protocolProfileBehavior;
|
|
29
|
+
headers;
|
|
30
|
+
query;
|
|
31
|
+
body;
|
|
32
|
+
response;
|
|
33
|
+
constructor(config) {
|
|
34
|
+
this.name = config.name;
|
|
35
|
+
this.description = config.description;
|
|
36
|
+
this.auth = config.auth;
|
|
37
|
+
this.variable = config.variable;
|
|
38
|
+
this.event = config.event;
|
|
39
|
+
this.protocolProfileBehavior = config.protocolProfileBehavior;
|
|
40
|
+
this.headers = config.headers;
|
|
41
|
+
this.query = config.query;
|
|
42
|
+
this.body = config.body;
|
|
43
|
+
this.response = config.response;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Converts this configuration into a Postman Collection Item.
|
|
47
|
+
*
|
|
48
|
+
* @param route - The route definition containing method, path, etc.
|
|
49
|
+
* @param baseUrl - The base URL variable (default: "{{baseUrl}}")
|
|
50
|
+
* @returns A formatted Postman Item object
|
|
51
|
+
*/
|
|
52
|
+
toPostmanItem(route, baseUrl = "{{baseUrl}}") {
|
|
53
|
+
// 1. Prepare Path (Convert :param to {{param}})
|
|
54
|
+
const postmanPath = this.convertPathToPostman(route.path);
|
|
55
|
+
// 2. Build URL Object
|
|
56
|
+
const url = {
|
|
57
|
+
raw: `${baseUrl}${postmanPath}`,
|
|
58
|
+
host: baseUrl.includes("://") ? [baseUrl] : [baseUrl],
|
|
59
|
+
path: postmanPath.split("/").filter((segment) => segment !== ""),
|
|
60
|
+
};
|
|
61
|
+
// 3. Add Query Parameters
|
|
62
|
+
if (this.query) {
|
|
63
|
+
url.query = Object.entries(this.query).map(([key, value]) => ({
|
|
64
|
+
key,
|
|
65
|
+
value,
|
|
66
|
+
disabled: false,
|
|
67
|
+
}));
|
|
68
|
+
}
|
|
69
|
+
// 4. Build Headers
|
|
70
|
+
const headers = [];
|
|
71
|
+
if (this.headers) {
|
|
72
|
+
Object.entries(this.headers).forEach(([key, value]) => {
|
|
73
|
+
headers.push({ key, value, disabled: false });
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
// 5. Construct Request Object
|
|
77
|
+
const request = {
|
|
78
|
+
method: route.method.toUpperCase(),
|
|
79
|
+
header: headers,
|
|
80
|
+
url,
|
|
81
|
+
};
|
|
82
|
+
// 6. Add Body (if applicable)
|
|
83
|
+
if (this.body) {
|
|
84
|
+
request.body = {
|
|
85
|
+
mode: this.body.mode,
|
|
86
|
+
...(this.body.mode === "raw" && this.body.raw !== undefined
|
|
87
|
+
? { raw: this.body.raw }
|
|
88
|
+
: {}),
|
|
89
|
+
...(this.body.mode === "urlencoded" && this.body.urlencoded
|
|
90
|
+
? { urlencoded: this.body.urlencoded }
|
|
91
|
+
: {}),
|
|
92
|
+
...(this.body.mode === "formdata" && this.body.formdata
|
|
93
|
+
? { formdata: this.body.formdata }
|
|
94
|
+
: {}),
|
|
95
|
+
...(this.body.mode === "file" && this.body.file
|
|
96
|
+
? { file: this.body.file }
|
|
97
|
+
: {}),
|
|
98
|
+
...(this.body.mode === "graphql" && this.body.graphql
|
|
99
|
+
? { graphql: this.body.graphql }
|
|
100
|
+
: {}),
|
|
101
|
+
...(this.body.options ? { options: this.body.options } : {}),
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
// 7. Add Authentication (if explicitly set)
|
|
105
|
+
if (this.auth !== undefined) {
|
|
106
|
+
request.auth = this.auth;
|
|
107
|
+
}
|
|
108
|
+
// 8. Assemble Final Item
|
|
109
|
+
const item = {
|
|
110
|
+
name: this.name || route.name,
|
|
111
|
+
request,
|
|
112
|
+
};
|
|
113
|
+
// 9. Add Optional Metadata
|
|
114
|
+
if (this.description !== undefined) {
|
|
115
|
+
item.description = this.description;
|
|
116
|
+
}
|
|
117
|
+
else if (route.description) {
|
|
118
|
+
item.description = route.description;
|
|
119
|
+
}
|
|
120
|
+
if (this.variable)
|
|
121
|
+
item.variable = this.variable;
|
|
122
|
+
if (this.event)
|
|
123
|
+
item.event = this.event;
|
|
124
|
+
if (this.protocolProfileBehavior)
|
|
125
|
+
item.protocolProfileBehavior = this.protocolProfileBehavior;
|
|
126
|
+
if (this.response)
|
|
127
|
+
item.response = this.response;
|
|
128
|
+
return item;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Helper: Converts Express path params (:id) to Postman syntax ({{id}})
|
|
132
|
+
*/
|
|
133
|
+
convertPathToPostman(path) {
|
|
134
|
+
return path.replace(/:([a-zA-Z_][a-zA-Z0-9_]*)/g, "{{$1}}");
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
export default PostmanRoute;
|
|
138
|
+
//# sourceMappingURL=PostmanRoute.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PostmanRoute.js","sourceRoot":"","sources":["../../src/routing/PostmanRoute.ts"],"names":[],"mappings":"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"}
|
package/dist/routing/Route.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import type { Handler, RequestHandler } from "express";
|
|
|
2
2
|
import type { RouteConfig, ErrorTraceType, RAI, DefaultRole } from "../types.js";
|
|
3
3
|
import ErrorCatcher from "./ErrorCatcher.js";
|
|
4
4
|
import type RoutesParam from "./RoutesParam.js";
|
|
5
|
+
import type PostmanRoute from "./PostmanRoute.js";
|
|
5
6
|
/**
|
|
6
7
|
* Single API endpoint definition.
|
|
7
8
|
* Carries method, path, RAI, roles, middlewares, and metadata.
|
|
@@ -16,6 +17,7 @@ declare class Route<TRole extends string = DefaultRole> extends ErrorCatcher {
|
|
|
16
17
|
description: string;
|
|
17
18
|
rai: RAI;
|
|
18
19
|
roles: TRole[];
|
|
20
|
+
postman?: PostmanRoute;
|
|
19
21
|
meta?: Record<string, unknown>;
|
|
20
22
|
debugInfo: ErrorTraceType;
|
|
21
23
|
constructor(r: RouteConfig<TRole>);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Route.d.ts","sourceRoot":"","sources":["../../src/routing/Route.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EAEd,GAAG,EACH,WAAW,EACZ,MAAM,aAAa,CAAC;AACrB,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"Route.d.ts","sourceRoot":"","sources":["../../src/routing/Route.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EAEd,GAAG,EACH,WAAW,EACZ,MAAM,aAAa,CAAC;AACrB,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAC;AAChD,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAC;AAElD;;;GAGG;AACH,cAAM,KAAK,CAAC,KAAK,SAAS,MAAM,GAAG,WAAW,CAAE,SAAQ,YAAY;IAClE,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAM;IACjC,WAAW,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,GAAG,GAAG,EAAE,CAAC;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,GAAG,CAAC;IACT,KAAK,EAAE,KAAK,EAAE,CAAC;IACf,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxB,SAAS,EAAE,cAAc,CAAC;gBAErB,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC;IAsBjC,OAAO,CAAC,aAAa;IAwBrB,OAAO,CAAC,iBAAiB;IAqDzB,8DAA8D;IAC9D,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO;CAS3C;AAED,eAAe,KAAK,CAAC"}
|
package/dist/routing/Route.js
CHANGED
|
@@ -16,6 +16,7 @@ class Route extends ErrorCatcher {
|
|
|
16
16
|
description;
|
|
17
17
|
rai;
|
|
18
18
|
roles;
|
|
19
|
+
postman;
|
|
19
20
|
meta;
|
|
20
21
|
debugInfo;
|
|
21
22
|
constructor(r) {
|
|
@@ -28,6 +29,7 @@ class Route extends ErrorCatcher {
|
|
|
28
29
|
this.description = r.description ? r.description : "";
|
|
29
30
|
this.rai = r.rai;
|
|
30
31
|
this.roles = r.roles;
|
|
32
|
+
this.postman = r.postman;
|
|
31
33
|
this.meta = r.meta;
|
|
32
34
|
this.debugInfo = Route.getCallerInfo();
|
|
33
35
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Route.js","sourceRoot":"","sources":["../../src/routing/Route.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AASpC,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,MAAM,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"Route.js","sourceRoot":"","sources":["../../src/routing/Route.ts"],"names":[],"mappings":"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"}
|
package/dist/routing/Routes.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import Route from "./Route.js";
|
|
|
3
3
|
import type { RoutesConfig, DefaultRole } from "../types.js";
|
|
4
4
|
import RoutesParam from "./RoutesParam.js";
|
|
5
5
|
import ErrorCatcher from "./ErrorCatcher.js";
|
|
6
|
+
import PostmanGroup from "./PostmanGroup.js";
|
|
6
7
|
/**
|
|
7
8
|
* Hierarchical route group with shared prefix, middleware, and params.
|
|
8
9
|
* Contains Route (endpoints) and/or nested Routes (sub-groups).
|
|
@@ -13,6 +14,7 @@ declare class Routes<TRole extends string = DefaultRole> extends ErrorCatcher {
|
|
|
13
14
|
params?: RoutesParam[];
|
|
14
15
|
middlewares?: Handler[];
|
|
15
16
|
mergeParams?: boolean;
|
|
17
|
+
postman?: PostmanGroup;
|
|
16
18
|
meta?: Record<string, unknown>;
|
|
17
19
|
constructor(r: RoutesConfig<TRole>);
|
|
18
20
|
private validateRoutes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Routes.d.ts","sourceRoot":"","sources":["../../src/routing/Routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,KAAK,EAGV,YAAY,EACZ,WAAW,EACZ,MAAM,aAAa,CAAC;AACrB,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,YAAY,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"Routes.d.ts","sourceRoot":"","sources":["../../src/routing/Routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,KAAK,EAGV,YAAY,EACZ,WAAW,EACZ,MAAM,aAAa,CAAC;AACrB,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C;;;GAGG;AACH,cAAM,MAAM,CAAC,KAAK,SAAS,MAAM,GAAG,WAAW,CAAE,SAAQ,YAAY;IACnE,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5C,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAS;IAC9B,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAEnB,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC;IAmBlC,OAAO,CAAC,cAAc;IAqBtB,OAAO,CAAC,iBAAiB;IA0CzB;;;OAGG;IACI,gBAAgB,IAAI,GAAG,CAC5B,MAAM,EACN,KAAK,CAAC,KAAK,CAAC,GAAG;QAAE,MAAM,EAAE,WAAW,EAAE,CAAC;QAAC,WAAW,EAAE,OAAO,EAAE,CAAA;KAAE,CACjE;IA6ED,OAAO,CAAC,iBAAiB;CAK1B;AAED,eAAe,MAAM,CAAC"}
|
package/dist/routing/Routes.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import Route from "./Route.js";
|
|
2
2
|
import ErrorCatcher from "./ErrorCatcher.js";
|
|
3
3
|
import errors from "../errors/index.js";
|
|
4
|
+
import PostmanGroup from "./PostmanGroup.js";
|
|
4
5
|
/**
|
|
5
6
|
* Hierarchical route group with shared prefix, middleware, and params.
|
|
6
7
|
* Contains Route (endpoints) and/or nested Routes (sub-groups).
|
|
@@ -11,6 +12,7 @@ class Routes extends ErrorCatcher {
|
|
|
11
12
|
params;
|
|
12
13
|
middlewares;
|
|
13
14
|
mergeParams = false;
|
|
15
|
+
postman;
|
|
14
16
|
meta;
|
|
15
17
|
constructor(r) {
|
|
16
18
|
super();
|
|
@@ -19,6 +21,7 @@ class Routes extends ErrorCatcher {
|
|
|
19
21
|
this.params = r.params ? r.params : [];
|
|
20
22
|
this.middlewares = r.middlewares ? r.middlewares : [];
|
|
21
23
|
this.mergeParams = r.mergeParams ? r.mergeParams : false;
|
|
24
|
+
this.postman = r.postman ? r.postman : new PostmanGroup({ folderName: "" });
|
|
22
25
|
this.meta = r.meta;
|
|
23
26
|
try {
|
|
24
27
|
this.validateRoutes();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Routes.js","sourceRoot":"","sources":["../../src/routing/Routes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,YAAY,CAAC;AAQ/B,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,MAAM,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"Routes.js","sourceRoot":"","sources":["../../src/routing/Routes.ts"],"names":[],"mappings":"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"}
|
package/dist/routing/Wecon.d.ts
CHANGED
|
@@ -18,6 +18,28 @@ export interface WeconDevConfig {
|
|
|
18
18
|
/** Log registered routes on startup */
|
|
19
19
|
logRoutes?: boolean;
|
|
20
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* Postman configuration interface
|
|
23
|
+
*/
|
|
24
|
+
export interface WeconPostmanConfig {
|
|
25
|
+
/** Name of the Postman collection */
|
|
26
|
+
name: string;
|
|
27
|
+
/** Description of the API */
|
|
28
|
+
description?: string;
|
|
29
|
+
/** Base URL for all requests */
|
|
30
|
+
baseUrl?: string;
|
|
31
|
+
/** API version */
|
|
32
|
+
version?: string;
|
|
33
|
+
/** Output file paths */
|
|
34
|
+
output?: {
|
|
35
|
+
/** Path to save the collection JSON file */
|
|
36
|
+
collection?: string;
|
|
37
|
+
/** Path to save the environment JSON file */
|
|
38
|
+
environment?: string;
|
|
39
|
+
};
|
|
40
|
+
/** Auto-generate on build */
|
|
41
|
+
autoGenerate?: boolean;
|
|
42
|
+
}
|
|
21
43
|
/**
|
|
22
44
|
* Main Wecon class with fluent API.
|
|
23
45
|
* Compiles routes into a single master router with RBAC enforcement.
|
|
@@ -26,6 +48,7 @@ declare class Wecon<TRole extends string = DefaultRole> {
|
|
|
26
48
|
private _routes?;
|
|
27
49
|
private _roles;
|
|
28
50
|
private _guestRole;
|
|
51
|
+
private _postman?;
|
|
29
52
|
private _onRoutesPrepared?;
|
|
30
53
|
private _dev?;
|
|
31
54
|
private _raiMatcher?;
|
|
@@ -44,6 +67,12 @@ declare class Wecon<TRole extends string = DefaultRole> {
|
|
|
44
67
|
onRoutesPrepared(callback: (routes: Route[]) => void | Promise<void>): this;
|
|
45
68
|
/** Configure development mode options */
|
|
46
69
|
dev(config: WeconDevConfig): this;
|
|
70
|
+
/**
|
|
71
|
+
* Configure Postman collection generation
|
|
72
|
+
* @param config - Postman configuration object
|
|
73
|
+
* @returns this for method chaining
|
|
74
|
+
*/
|
|
75
|
+
postman(config: WeconPostmanConfig): this;
|
|
47
76
|
/**
|
|
48
77
|
* Compile all routes into the middleware.
|
|
49
78
|
* Must be called before using the Wecon instance.
|
|
@@ -61,6 +90,10 @@ declare class Wecon<TRole extends string = DefaultRole> {
|
|
|
61
90
|
getRoute(rai: RAI): Route | undefined;
|
|
62
91
|
/** Get the Express middleware function */
|
|
63
92
|
handler(): RequestHandler;
|
|
93
|
+
/**
|
|
94
|
+
* Generate Postman collection and environment files
|
|
95
|
+
*/
|
|
96
|
+
generatePostman(): Promise<void>;
|
|
64
97
|
}
|
|
65
98
|
export default Wecon;
|
|
66
99
|
//# sourceMappingURL=Wecon.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Wecon.d.ts","sourceRoot":"","sources":["../../src/routing/Wecon.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAGV,cAAc,EAGf,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,KAAK,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"Wecon.d.ts","sourceRoot":"","sources":["../../src/routing/Wecon.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAGV,cAAc,EAGf,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,KAAK,MAAM,YAAY,CAAC;AAK/B,qCAAqC;AACrC,MAAM,WAAW,cAAc;IAC7B,6CAA6C;IAC7C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wCAAwC;IACxC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,uCAAuC;IACvC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gCAAgC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wBAAwB;IACxB,MAAM,CAAC,EAAE;QACP,4CAA4C;QAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,6CAA6C;QAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,6BAA6B;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;GAGG;AACH,cAAM,KAAK,CAAC,KAAK,SAAS,MAAM,GAAG,WAAW;IAC5C,OAAO,CAAC,OAAO,CAAC,CAAgB;IAChC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,QAAQ,CAAC,CAAqB;IACtC,OAAO,CAAC,iBAAiB,CAAC,CAAmD;IAC7E,OAAO,CAAC,IAAI,CAAC,CAAiB;IAE9B,OAAO,CAAC,WAAW,CAAC,CAAa;IACjC,OAAO,CAAC,aAAa,CAAC,CAAS;IAE/B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,QAAQ,CAAC,CAAyB;IAC1C,OAAO,CAAC,WAAW,CAAC,CAAiB;;IAIrC,0BAA0B;IACnB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI;IAW1C,6BAA6B;IACtB,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;IAW7D,+CAA+C;IACxC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAWzC,gDAAgD;IACzC,gBAAgB,CACrB,QAAQ,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAClD,IAAI;IAWP,yCAAyC;IAClC,GAAG,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;IAQxC;;;;OAIG;IACI,OAAO,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAQhD;;;OAGG;IACI,KAAK,IAAI,IAAI;IAsFpB,kDAAkD;IAClD,OAAO,CAAC,aAAa;IAsBrB,2EAA2E;IAC3E,OAAO,CAAC,gBAAgB;IAiDxB,OAAO,CAAC,0BAA0B;IAelC,OAAO,CAAC,8BAA8B;IAatC,0DAA0D;IACnD,SAAS,IAAI,KAAK,EAAE;IAO3B,yBAAyB;IAClB,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,KAAK,GAAG,SAAS;IAO5C,0CAA0C;IACnC,OAAO,IAAI,cAAc;IAOhC;;OAEG;IACU,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;CAyC9C;AAED,eAAe,KAAK,CAAC"}
|