samlesa 2.17.3 → 2.18.1

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.

Potentially problematic release.


This version of samlesa might be problematic. Click here for more details.

Files changed (42) hide show
  1. package/build/src/binding-artifact.js +24 -14
  2. package/build/src/flow.js +169 -27
  3. package/build/src/libsaml.js +454 -213
  4. package/package.json +77 -77
  5. package/types/src/binding-artifact.d.ts.map +1 -1
  6. package/types/src/flow.d.ts.map +1 -1
  7. package/types/src/libsaml.d.ts +50 -1
  8. package/types/src/libsaml.d.ts.map +1 -1
  9. package/types/api.d.ts +0 -15
  10. package/types/api.d.ts.map +0 -1
  11. package/types/binding-post.d.ts +0 -48
  12. package/types/binding-post.d.ts.map +0 -1
  13. package/types/binding-redirect.d.ts +0 -54
  14. package/types/binding-redirect.d.ts.map +0 -1
  15. package/types/binding-simplesign.d.ts +0 -41
  16. package/types/binding-simplesign.d.ts.map +0 -1
  17. package/types/entity-idp.d.ts +0 -38
  18. package/types/entity-idp.d.ts.map +0 -1
  19. package/types/entity-sp.d.ts +0 -38
  20. package/types/entity-sp.d.ts.map +0 -1
  21. package/types/entity.d.ts +0 -100
  22. package/types/entity.d.ts.map +0 -1
  23. package/types/extractor.d.ts +0 -26
  24. package/types/extractor.d.ts.map +0 -1
  25. package/types/flow.d.ts +0 -7
  26. package/types/flow.d.ts.map +0 -1
  27. package/types/libsaml.d.ts +0 -208
  28. package/types/libsaml.d.ts.map +0 -1
  29. package/types/metadata-idp.d.ts +0 -25
  30. package/types/metadata-idp.d.ts.map +0 -1
  31. package/types/metadata-sp.d.ts +0 -37
  32. package/types/metadata-sp.d.ts.map +0 -1
  33. package/types/metadata.d.ts +0 -58
  34. package/types/metadata.d.ts.map +0 -1
  35. package/types/types.d.ts +0 -128
  36. package/types/types.d.ts.map +0 -1
  37. package/types/urn.d.ts +0 -195
  38. package/types/urn.d.ts.map +0 -1
  39. package/types/utility.d.ts +0 -133
  40. package/types/utility.d.ts.map +0 -1
  41. package/types/validator.d.ts +0 -4
  42. package/types/validator.d.ts.map +0 -1
package/package.json CHANGED
@@ -1,77 +1,77 @@
1
- {
2
- "name": "samlesa",
3
- "version": "2.17.3",
4
- "description": "High-level API for Single Sign On (SAML 2.0) baseed on samlify ",
5
- "main": "build/index.js",
6
- "keywords": [
7
- "nodejs",
8
- "saml2",
9
- "sso",
10
- "slo",
11
- "metadata"
12
- ],
13
- "type": "module",
14
- "typings": "types/index.d.ts",
15
- "scripts": {
16
- "build": "tsc && copyfiles -u 1 src/schema/**/* build/src",
17
- "docs": "docsify serve -o docs",
18
- "lint": "tslint -p .",
19
- "lint:fix": "tslint -p . --fix",
20
- "test": "vitest",
21
- "test:watch": "vitest --watch",
22
- "test:coverage": "vitest run --coverage",
23
- "hooks:postinstall": "mklink /J .git\\hooks\\pre-commit .pre-commit.sh || copy .pre-commit.sh .git\\hooks\\pre-commit"
24
- },
25
- "exports": {
26
- ".": {
27
- "types": "./types/index.d.ts",
28
- "import": "./build/index.js"
29
- }
30
- },
31
- "files": [
32
- "build",
33
- "types"
34
- ],
35
- "contributors": [
36
- "Veclea <vemocle@gmail.com>"
37
- ],
38
- "author": "Veclea",
39
- "repository": {
40
- "url": "https://github.com/Veclea/samlify.git",
41
- "type": "git"
42
- },
43
- "license": "MIT",
44
- "dependencies": {
45
- "@xmldom/xmldom": "^0.9.8",
46
- "axios": "^1.10.0",
47
- "camelcase": "^8.0.0",
48
- "cross-env": "^7.0.3",
49
- "iconv-lite": "^0.6.3",
50
- "node-rsa": "^1.1.1",
51
- "pako": "^2.1.0",
52
- "ts-node": "^10.9.2",
53
- "uuid": "^11.1.0",
54
- "vite-tsconfig-paths": "^5.1.4",
55
- "xml": "^1.0.1",
56
- "xml-crypto": "^6.1.2",
57
- "xml-encryption": "^3.1.0",
58
- "xml-escape": "^1.1.0",
59
- "xml2js": "^0.6.2",
60
- "xmllint-wasm": "^5.0.0",
61
- "xpath": "^0.0.32"
62
- },
63
- "devDependencies": {
64
- "@types/node": "^24.0.13",
65
- "@types/pako": "2.0.3",
66
- "@types/uuid": "10.0.0",
67
- "@vitest/coverage-istanbul": "^3.2.4",
68
- "@vitest/coverage-v8": "3.2.4",
69
- "copyfiles": "^2.4.1",
70
- "coveralls": "^3.1.1",
71
- "esbuild": "^0.25.6",
72
- "jsdom": "^26.1.0",
73
- "timekeeper": "^2.3.1",
74
- "typescript": "5.8.3",
75
- "vitest": "^3.2.4"
76
- }
77
- }
1
+ {
2
+ "name": "samlesa",
3
+ "version": "2.18.1",
4
+ "description": "High-level API for Single Sign On (SAML 2.0) baseed on samlify ",
5
+ "main": "build/index.js",
6
+ "keywords": [
7
+ "nodejs",
8
+ "saml2",
9
+ "sso",
10
+ "slo",
11
+ "metadata"
12
+ ],
13
+ "type": "module",
14
+ "typings": "types/index.d.ts",
15
+ "scripts": {
16
+ "build": "tsc && copyfiles -u 1 src/schema/**/* build/src",
17
+ "docs": "docsify serve -o docs",
18
+ "lint": "tslint -p .",
19
+ "lint:fix": "tslint -p . --fix",
20
+ "test": "vitest",
21
+ "test:watch": "vitest --watch",
22
+ "test:coverage": "vitest run --coverage",
23
+ "hooks:postinstall": "mklink /J .git\\hooks\\pre-commit .pre-commit.sh || copy .pre-commit.sh .git\\hooks\\pre-commit"
24
+ },
25
+ "exports": {
26
+ ".": {
27
+ "types": "./types/index.d.ts",
28
+ "import": "./build/index.js"
29
+ }
30
+ },
31
+ "files": [
32
+ "build",
33
+ "types"
34
+ ],
35
+ "contributors": [
36
+ "Veclea <vemocle@gmail.com>"
37
+ ],
38
+ "author": "Veclea",
39
+ "repository": {
40
+ "url": "https://github.com/Veclea/samlify.git",
41
+ "type": "git"
42
+ },
43
+ "license": "MIT",
44
+ "dependencies": {
45
+ "@xmldom/xmldom": "^0.9.8",
46
+ "axios": "^1.10.0",
47
+ "camelcase": "^8.0.0",
48
+ "cross-env": "^7.0.3",
49
+ "iconv-lite": "^0.6.3",
50
+ "node-rsa": "^1.1.1",
51
+ "pako": "^2.1.0",
52
+ "ts-node": "^10.9.2",
53
+ "uuid": "^11.1.0",
54
+ "vite-tsconfig-paths": "^5.1.4",
55
+ "xml": "^1.0.1",
56
+ "xml-crypto": "^6.1.2",
57
+ "xml-encryption": "^3.1.0",
58
+ "xml-escape": "^1.1.0",
59
+ "xml2js": "^0.6.2",
60
+ "xmllint-wasm": "^5.0.0",
61
+ "xpath": "^0.0.32"
62
+ },
63
+ "devDependencies": {
64
+ "@types/node": "^24.0.13",
65
+ "@types/pako": "2.0.3",
66
+ "@types/uuid": "10.0.0",
67
+ "@vitest/coverage-istanbul": "^3.2.4",
68
+ "@vitest/coverage-v8": "3.2.4",
69
+ "copyfiles": "^2.4.1",
70
+ "coveralls": "^3.1.1",
71
+ "esbuild": "^0.25.6",
72
+ "jsdom": "^26.1.0",
73
+ "timekeeper": "^2.3.1",
74
+ "typescript": "5.8.3",
75
+ "vitest": "^3.2.4"
76
+ }
77
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"binding-artifact.d.ts","sourceRoot":"","sources":["../../src/binding-artifact.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,aAAa,CAAC;AAMhD,OAAO,EACH,2BAA2B,IAAI,gBAAgB,EAC/C,0BAA0B,IAAI,eAAe,EAChD,MAAM,YAAY,CAAC;AAwCpB;;;;;GAKG;AACH,iBAAS,gBAAgB,CAAC,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,GAAG,GAAG,CA+FlI;AAED;;;;;;;;GAQG;AACH,iBAAe,iBAAiB,CAAC,WAAW,EAAE,GAAG,YAAK,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAE,GAAQ,EAAE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,EAAE,eAAe,GAAE,OAAe,EAAE,kBAAkB,UAAK,GAAG,OAAO,CAAC,cAAc,CAAC,CAqIpO;AAED,iBAAe,wBAAwB,CAAC,MAAM,EAAE;IAC5C,GAAG,EAAE,gBAAgB,CAAC;IACtB,EAAE,EAAE,eAAe,CAAC;IACpB,GAAG,EAAE,MAAM,CAAA;CACd;;;GAqDA;AAED,iBAAe,yBAAyB,CAAC,MAAM,EAAE;IAAE,GAAG,EAAE,gBAAgB,CAAC;IAAC,EAAE,EAAE,eAAe,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE;;;GA0P3G;AAED,QAAA,MAAM,mBAAmB;;;;;CAOxB,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"binding-artifact.d.ts","sourceRoot":"","sources":["../../src/binding-artifact.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,aAAa,CAAC;AAMhD,OAAO,EACH,2BAA2B,IAAI,gBAAgB,EAC/C,0BAA0B,IAAI,eAAe,EAChD,MAAM,YAAY,CAAC;AAwCpB;;;;;GAKG;AACH,iBAAS,gBAAgB,CAAC,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,GAAG,GAAG,CA+FlI;AAED;;;;;;;;GAQG;AACH,iBAAe,iBAAiB,CAAC,WAAW,EAAE,GAAG,YAAK,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAE,GAAQ,EAAE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,EAAE,eAAe,GAAE,OAAe,EAAE,kBAAkB,UAAK,GAAG,OAAO,CAAC,cAAc,CAAC,CAqIpO;AAED,iBAAe,wBAAwB,CAAC,MAAM,EAAE;IAC5C,GAAG,EAAE,gBAAgB,CAAC;IACtB,EAAE,EAAE,eAAe,CAAC;IACpB,GAAG,EAAE,MAAM,CAAA;CACd;;;GAqDA;AAED,iBAAe,yBAAyB,CAAC,MAAM,EAAE;IAAE,GAAG,EAAE,gBAAgB,CAAC;IAAC,EAAE,EAAE,eAAe,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE;;;GAqQ3G;AAED,QAAA,MAAM,mBAAmB;;;;;CAOxB,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"flow.d.ts","sourceRoot":"","sources":["../../src/flow.ts"],"names":[],"mappings":"AAyBA,MAAM,WAAW,UAAU;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,GAAG,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AA8iBD,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CA6BhG;AAED,wBAAgB,IAAI,CAAC,OAAO,KAAA,GAAG,OAAO,CAAC,UAAU,CAAC,CA0BjD"}
1
+ {"version":3,"file":"flow.d.ts","sourceRoot":"","sources":["../../src/flow.ts"],"names":[],"mappings":"AAyBA,MAAM,WAAW,UAAU;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,GAAG,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAgsBD,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CA6BhG;AAED,wBAAgB,IAAI,CAAC,OAAO,KAAA,GAAG,OAAO,CAAC,UAAU,CAAC,CA0BjD"}
@@ -164,6 +164,19 @@ declare const _default: {
164
164
  * @return {string} base64 encoded string
165
165
  */
166
166
  constructSAMLSignature(opts: SignatureConstructor): string;
167
+ validateCertificate(certificateBase64: string, expectedIssuer?: string): {
168
+ isValid: boolean;
169
+ subject: string;
170
+ issuer: string;
171
+ publicKey: import("crypto").KeyObject;
172
+ error?: undefined;
173
+ } | {
174
+ isValid: boolean;
175
+ error: any;
176
+ subject?: undefined;
177
+ issuer?: undefined;
178
+ publicKey?: undefined;
179
+ };
167
180
  /**
168
181
  * @desc Verify the XML signature
169
182
  * @param {string} xml xml
@@ -172,7 +185,33 @@ declare const _default: {
172
185
  * - The first element is `true` if the signature is valid, `false` otherwise.
173
186
  * - The second element is the cryptographically authenticated assertion node as a string, or `null` if not found.
174
187
  */
175
- verifySignature(xml: string, opts: SignatureVerifierOptions): (boolean | null)[] | (string | boolean)[];
188
+ verifySignature1(xml: string, opts: SignatureVerifierOptions): (boolean | null)[] | (string | boolean)[];
189
+ /**
190
+ * 改进的SAML签名验证函数,支持多种签名和加密组合场景
191
+ * @param xml SAML XML内容
192
+ * @param opts 验证选项
193
+ * @param self
194
+ * @returns 验证结果对象
195
+ */
196
+ /**
197
+ * 改进的SAML签名验证函数,支持多种签名和加密组合场景
198
+ * @param xml SAML XML内容
199
+ * @param opts 验证选项
200
+ * @param self
201
+ * @returns 验证结果对象
202
+ */
203
+ verifySignature(xml: string, opts: SignatureVerifierOptions, self: any): {
204
+ isMessageSigned: boolean;
205
+ MessageSignatureStatus: boolean;
206
+ isAssertionSigned: boolean;
207
+ AssertionSignatureStatus: boolean;
208
+ encrypted: boolean;
209
+ decrypted: boolean;
210
+ type: "AuthnRequest" | "LogoutRequest" | "Response" | "LogoutResponse" | "Unknown";
211
+ status: boolean;
212
+ samlContent: string;
213
+ assertionContent: null;
214
+ };
176
215
  verifySignatureSoap(xml: string, opts: SignatureVerifierOptions): (boolean | null)[] | (string | boolean)[];
177
216
  /**
178
217
  * @desc Helper function to create the key section in metadata (abstraction for signing and encrypt use)
@@ -226,6 +265,16 @@ declare const _default: {
226
265
  * @return {function} a promise to get back the entire xml with decrypted assertion
227
266
  */
228
267
  decryptAssertion(here: any, entireXML: string): Promise<[string, any]>;
268
+ /**
269
+ * 同步版本的断言解密函数
270
+ */
271
+ /**
272
+ * 同步版本的断言解密函数,支持解密后验证断言签名
273
+ */
274
+ decryptAssertionSync(here: any, entireXML: string, opts?: SignatureVerifierOptions): (string | {
275
+ isAssertionSigned: boolean;
276
+ AssertionSignatureStatus: boolean;
277
+ })[];
229
278
  /**
230
279
  * 解密 SOAP 响应中的加密断言
231
280
  * @param self 当前实体(SP 或 IdP)
@@ -1 +1 @@
1
- {"version":3,"file":"libsaml.d.ts","sourceRoot":"","sources":["../../src/libsaml.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"libsaml.d.ts","sourceRoot":"","sources":["../../src/libsaml.ts"],"names":[],"mappings":"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"}
package/types/api.d.ts DELETED
@@ -1,15 +0,0 @@
1
- import { DOMParser as dom } from '@xmldom/xmldom';
2
- import type { Options as DOMParserOptions } from '@xmldom/xmldom';
3
- interface Context extends ValidatorContext, DOMParserContext {
4
- }
5
- interface ValidatorContext {
6
- validate?: (xml: string) => Promise<any>;
7
- }
8
- interface DOMParserContext {
9
- dom: dom;
10
- }
11
- export declare function getContext(): Context;
12
- export declare function setSchemaValidator(params: ValidatorContext): void;
13
- export declare function setDOMParserOptions(options?: DOMParserOptions): void;
14
- export {};
15
- //# sourceMappingURL=api.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElE,UAAU,OAAQ,SAAQ,gBAAgB,EAAE,gBAAgB;CAAG;AAE/D,UAAU,gBAAgB;IACxB,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;CAC1C;AAED,UAAU,gBAAgB;IACxB,GAAG,EAAE,GAAG,CAAC;CACV;AAOD,wBAAgB,UAAU,IAAG,OAAO,CAEnC;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,GAAE,IAAI,CAShE;AAED,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,gBAAqB,GAAE,IAAI,CAEvE"}
@@ -1,48 +0,0 @@
1
- /**
2
- * @file binding-post.ts
3
- * @author tngan
4
- * @desc Binding-level API, declare the functions using POST binding
5
- */
6
- import type { BindingContext } from './entity.js';
7
- /**
8
- * @desc Generate a base64 encoded login request
9
- * @param {string} referenceTagXPath reference uri
10
- * @param {object} entity object includes both idp and sp
11
- * @param {function} customTagReplacement used when developers have their own login response template
12
- */
13
- declare function base64LoginRequest(referenceTagXPath: string, entity: any, customTagReplacement?: (template: string) => BindingContext): BindingContext;
14
- /**
15
- * @desc Generate a base64 encoded login response
16
- * @param {object} requestInfo corresponding request, used to obtain the id
17
- * @param {object} entity object includes both idp and sp
18
- * @param {object} user current logged user (e.g. req.user)
19
- * @param {function} customTagReplacement used when developers have their own login response template
20
- * @param {boolean} encryptThenSign whether or not to encrypt then sign first (if signing). Defaults to sign-then-encrypt
21
- * @param AttributeStatement
22
- */
23
- declare function base64LoginResponse(requestInfo: any | undefined, entity: any, user?: any, customTagReplacement?: (template: string) => BindingContext, encryptThenSign?: boolean, AttributeStatement?: never[]): Promise<BindingContext>;
24
- /**
25
- * @desc Generate a base64 encoded logout request
26
- * @param {object} user current logged user (e.g. req.user)
27
- * @param {string} referenceTagXPath reference uri
28
- * @param {object} entity object includes both idp and sp
29
- * @param {function} customTagReplacement used when developers have their own login response template
30
- * @return {string} base64 encoded request
31
- */
32
- declare function base64LogoutRequest(user: Record<string, unknown>, referenceTagXPath: string, entity: any, customTagReplacement?: (template: string) => BindingContext): BindingContext;
33
- /**
34
- * @desc Generate a base64 encoded logout response
35
- * @param {object} requestInfo corresponding request, used to obtain the id
36
- * @param {string} referenceTagXPath reference uri
37
- * @param {object} entity object includes both idp and sp
38
- * @param {function} customTagReplacement used when developers have their own login response template
39
- */
40
- declare function base64LogoutResponse(requestInfo: any, entity: any, customTagReplacement: (template: string) => BindingContext): BindingContext;
41
- declare const postBinding: {
42
- base64LoginRequest: typeof base64LoginRequest;
43
- base64LoginResponse: typeof base64LoginResponse;
44
- base64LogoutRequest: typeof base64LogoutRequest;
45
- base64LogoutResponse: typeof base64LogoutResponse;
46
- };
47
- export default postBinding;
48
- //# sourceMappingURL=binding-post.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"binding-post.d.ts","sourceRoot":"","sources":["../src/binding-post.ts"],"names":[],"mappings":"AAAA;;;;EAIE;AAGF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAMlD;;;;;EAKE;AACF,iBAAS,kBAAkB,CAAC,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,GAAG,cAAc,CAqD/I;AACD;;;;;;;;GAQG;AACH,iBAAe,mBAAmB,CAAC,WAAW,EAAE,GAAG,YAAK,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAE,GAAQ,EAAE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,EAAE,eAAe,GAAE,OAAe,EAAG,kBAAkB,UAAG,GAAG,OAAO,CAAC,cAAc,CAAC,CAuIrO;AACD;;;;;;;EAOE;AACF,iBAAS,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,EAAC,MAAM,EAAE,MAAM,KAAA,EAAE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,GAAG,cAAc,CAkDzK;AACD;;;;;;EAME;AACF,iBAAS,oBAAoB,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,oBAAoB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,GAAG,cAAc,CAsDvI;AAED,QAAA,MAAM,WAAW;;;;;CAKhB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -1,54 +0,0 @@
1
- import type { BindingContext } from './entity.js';
2
- import { IdentityProvider as Idp } from './entity-idp.js';
3
- import { ServiceProvider as Sp } from './entity-sp.js';
4
- export interface BuildRedirectConfig {
5
- baseUrl: string;
6
- type: string;
7
- isSigned: boolean;
8
- context: string;
9
- entitySetting: any;
10
- relayState?: string;
11
- }
12
- /**
13
- * @desc Redirect URL for login request
14
- * @param {object} entity object includes both idp and sp
15
- * @param {function} customTagReplacement used when developers have their own login response template
16
- * @return {string} redirect URL
17
- */
18
- declare function loginRequestRedirectURL(entity: {
19
- idp: Idp;
20
- sp: Sp;
21
- }, customTagReplacement?: (template: string) => BindingContext): BindingContext;
22
- /**
23
- * @desc Redirect URL for login response
24
- * @param {object} requestInfo corresponding request, used to obtain the id
25
- * @param {object} entity object includes both idp and sp
26
- * @param {object} user current logged user (e.g. req.user)
27
- * @param {String} relayState the relaystate sent by sp corresponding request
28
- * @param {function} customTagReplacement used when developers have their own login response template
29
- * @param AttributeStatement
30
- */
31
- declare function loginResponseRedirectURL(requestInfo: any, entity: any, user?: any, relayState?: string, customTagReplacement?: (template: string) => BindingContext, AttributeStatement?: never[]): BindingContext;
32
- /**
33
- * @desc Redirect URL for logout request
34
- * @param {object} user current logged user (e.g. req.user)
35
- * @param {object} entity object includes both idp and sp
36
- * @param {function} customTagReplacement used when developers have their own login response template
37
- * @return {string} redirect URL
38
- */
39
- declare function logoutRequestRedirectURL(user: any, entity: any, relayState?: string, customTagReplacement?: (template: string, tags: object) => BindingContext): BindingContext;
40
- /**
41
- * @desc Redirect URL for logout response
42
- * @param {object} requescorresponding request, used to obtain the id
43
- * @param {object} entity object includes both idp and sp
44
- * @param {function} customTagReplacement used when developers have their own login response template
45
- */
46
- declare function logoutResponseRedirectURL(requestInfo: any, entity: any, relayState?: string, customTagReplacement?: (template: string) => BindingContext): BindingContext;
47
- declare const redirectBinding: {
48
- loginRequestRedirectURL: typeof loginRequestRedirectURL;
49
- loginResponseRedirectURL: typeof loginResponseRedirectURL;
50
- logoutRequestRedirectURL: typeof logoutRequestRedirectURL;
51
- logoutResponseRedirectURL: typeof logoutResponseRedirectURL;
52
- };
53
- export default redirectBinding;
54
- //# sourceMappingURL=binding-redirect.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"binding-redirect.d.ts","sourceRoot":"","sources":["../src/binding-redirect.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,aAAa,CAAC;AAChD,OAAO,EAAC,gBAAgB,IAAI,GAAG,EAAC,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAC,eAAe,IAAI,EAAE,EAAC,MAAM,gBAAgB,CAAC;AAOrD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,GAAG,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAgED;;;;;GAKG;AACH,iBAAS,uBAAuB,CAAC,MAAM,EAAE;IACvC,GAAG,EAAE,GAAG,CAAC;IACT,EAAE,EAAE,EAAE,CAAA;CACP,EAAE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,GAAG,cAAc,CAyC9E;AAED;;;;;;;;GAQG;AACH,iBAAS,wBAAwB,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAE,GAAQ,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,EAAC,kBAAkB,UAAI,GAAG,cAAc,CAoGxM;AAED;;;;;;GAMG;AACH,iBAAS,wBAAwB,CAAC,IAAI,KAAA,EAAE,MAAM,KAAA,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,cAAc,GAAG,cAAc,CAwC9J;AAED;;;;;GAKG;AACH,iBAAS,yBAAyB,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,GAAG,cAAc,CAyClK;AAED,QAAA,MAAM,eAAe;;;;;CAKpB,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -1,41 +0,0 @@
1
- /**
2
- * @file binding-simplesign.ts
3
- * @author Orange
4
- * @desc Binding-level API, declare the functions using POST SimpleSign binding
5
- */
6
- import type { BindingContext, SimpleSignComputedContext } from './entity.js';
7
- export interface BuildSimpleSignConfig {
8
- type: string;
9
- context: string;
10
- entitySetting: any;
11
- relayState?: string;
12
- }
13
- export interface BindingSimpleSignContext {
14
- id: string;
15
- context: string;
16
- signature: any;
17
- sigAlg: string;
18
- }
19
- /**
20
- * @desc Generate a base64 encoded login request
21
- * @param {string} referenceTagXPath reference uri
22
- * @param {object} entity object includes both idp and sp
23
- * @param {function} customTagReplacement used when developers have their own login response template
24
- */
25
- declare function base64LoginRequest(entity: any, customTagReplacement?: (template: string) => BindingContext): SimpleSignComputedContext;
26
- /**
27
- * @desc Generate a base64 encoded login response
28
- * @param {object} requestInfo corresponding request, used to obtain the id
29
- * @param {object} entity object includes both idp and sp
30
- * @param {object} user current logged user (e.g. req.user)
31
- * @param {string} relayState the relay state
32
- * @param {function} customTagReplacement used when developers have their own login response template
33
- * @param AttributeStatement
34
- */
35
- declare function base64LoginResponse(requestInfo: any | undefined, entity: any, user?: any, relayState?: string, customTagReplacement?: (template: string) => BindingContext, AttributeStatement?: []): Promise<BindingSimpleSignContext>;
36
- declare const simpleSignBinding: {
37
- base64LoginRequest: typeof base64LoginRequest;
38
- base64LoginResponse: typeof base64LoginResponse;
39
- };
40
- export default simpleSignBinding;
41
- //# sourceMappingURL=binding-simplesign.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"binding-simplesign.d.ts","sourceRoot":"","sources":["../src/binding-simplesign.ts"],"names":[],"mappings":"AAAA;;;;EAIE;AAGF,OAAQ,KAAK,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAO9E,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,GAAG,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,GAAG,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AA6CD;;;;;EAKE;AACF,iBAAS,kBAAkB,CAAC,MAAM,EAAE,GAAG,EAAE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,GAAG,yBAAyB,CAkD/H;AACD;;;;;;;;GAQG;AACH,iBAAe,mBAAmB,CAAC,WAAW,EAAE,GAAG,YAAK,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAE,GAAQ,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,EAAE,kBAAkB,GAAC,EAAO,GAAG,OAAO,CAAC,wBAAwB,CAAC,CA6FtO;AAED,QAAA,MAAM,iBAAiB;;;CAGpB,CAAC;AAEJ,eAAe,iBAAiB,CAAC"}
@@ -1,38 +0,0 @@
1
- import Entity, { type ESamlHttpRequest } from './entity.js';
2
- import { ServiceProviderConstructor as ServiceProvider, IdentityProviderMetadata, type IdentityProviderSettings } from './types.js';
3
- import { type FlowResult } from './flow.js';
4
- import type { BindingContext } from './entity.js';
5
- /**
6
- * Identity provider can be configured using either metadata importing or idpSetting
7
- */
8
- export default function (props: IdentityProviderSettings): IdentityProvider;
9
- /**
10
- * Identity provider can be configured using either metadata importing or idpSetting
11
- */
12
- export declare class IdentityProvider extends Entity {
13
- entityMeta: IdentityProviderMetadata;
14
- constructor(idpSetting: IdentityProviderSettings);
15
- /**
16
- * @desc Generates the login response for developers to design their own method
17
- * @param params
18
- */
19
- createLoginResponse(params: {
20
- sp: ServiceProvider;
21
- requestInfo: Record<string, any>;
22
- binding?: string;
23
- user: Record<string, any>;
24
- customTagReplacement?: (template: string) => BindingContext;
25
- encryptThenSign?: boolean;
26
- relayState?: string;
27
- context: Record<string, any>;
28
- AttributeStatement: [];
29
- }): Promise<any>;
30
- /**
31
- * Validation of the parsed URL parameters
32
- * @param sp ServiceProvider instance
33
- * @param binding Protocol binding
34
- * @param req RequesmessageSigningOrderst
35
- */
36
- parseLoginRequest(sp: ServiceProvider, binding: string, req: ESamlHttpRequest): Promise<FlowResult>;
37
- }
38
- //# sourceMappingURL=entity-idp.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"entity-idp.d.ts","sourceRoot":"","sources":["../src/entity-idp.ts"],"names":[],"mappings":"AAYA,OAAO,MAAM,EAAE,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EACL,0BAA0B,IAAI,eAAe,EAE7C,wBAAwB,EACxB,KAAK,wBAAwB,EAC9B,MAAM,YAAY,CAAC;AAMpB,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAO,WAAW,CAAC;AAEnD,OAAO,KAAM,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEnD;;GAEG;AACH,MAAM,CAAC,OAAO,WAAU,KAAK,EAAE,wBAAwB,oBAEtD;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,MAAM;IAElC,UAAU,EAAE,wBAAwB,CAAC;gBAEjC,UAAU,EAAE,wBAAwB;IAqChD;;;OAGG;IACU,mBAAmB,CAAC,MAAM,EAAC;QACtC,EAAE,EAAE,eAAe,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACjC,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC1B,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,CAAC;QAC5D,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7B,kBAAkB,EAAC,EAAE,CAAA;KACtB;IAyCD;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB;CAY9E"}
@@ -1,38 +0,0 @@
1
- /**
2
- * @file entity-sp.ts
3
- * @author tngan
4
- * @desc Declares the actions taken by service provider
5
- */
6
- import Entity from './entity.js';
7
- import type { BindingContext, PostBindingContext, ESamlHttpRequest, SimpleSignBindingContext } from './entity.js';
8
- import { IdentityProviderConstructor as IdentityProvider, ServiceProviderMetadata, type ServiceProviderSettings } from './types.js';
9
- import { type FlowResult } from './flow.js';
10
- export default function (props: ServiceProviderSettings): ServiceProvider;
11
- /**
12
- * @desc Service provider can be configured using either metadata importing or spSetting
13
- * @param {object} spSettingimport { FlowResult } from '../types/src/flow.d';
14
-
15
- */
16
- export declare class ServiceProvider extends Entity {
17
- entityMeta: ServiceProviderMetadata;
18
- /**
19
- * @desc Inherited from Entity
20
- * @param {object} spSetting setting of service provider
21
- */
22
- constructor(spSetting: ServiceProviderSettings);
23
- /**
24
- * @desc Generates the login request for developers to design their own method
25
- * @param {IdentityProvider} idp object of identity provider
26
- * @param {string} binding protocol binding
27
- * @param {function} customTagReplacement used when developers have their own login response template
28
- */
29
- createLoginRequest(idp: IdentityProvider, binding?: string, customTagReplacement?: (template: string) => BindingContext): BindingContext | PostBindingContext | SimpleSignBindingContext;
30
- /**
31
- * @desc Validation of the parsed the URL parameters
32
- * @param {IdentityProvider} idp object of identity provider
33
- * @param {string} binding protocol binding
34
- * @param {request} req request
35
- */
36
- parseLoginResponse(idp: any, binding: any, request: ESamlHttpRequest): Promise<FlowResult>;
37
- }
38
- //# sourceMappingURL=entity-sp.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"entity-sp.d.ts","sourceRoot":"","sources":["../src/entity-sp.ts"],"names":[],"mappings":"AAAA;;;;EAIE;AACF,OAAO,MAEN,MAAM,aAAa,CAAC;AACrB,OAAQ,KAAK,EAAG,cAAc,EAC5B,kBAAkB,EAClB,gBAAgB,EAChB,wBAAwB,EAAE,MAAK,aAAa,CAAC;AAC/C,OAAO,EACL,2BAA2B,IAAI,gBAAgB,EAC/C,uBAAuB,EACvB,KAAK,uBAAuB,EAC7B,MAAM,YAAY,CAAC;AAKpB,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAO,WAAW,CAAC;AAKnD,MAAM,CAAC,OAAO,WAAU,KAAK,EAAE,uBAAuB,mBAErD;AAED;;;;EAIE;AACF,qBAAa,eAAgB,SAAQ,MAAM;IAChC,UAAU,EAAE,uBAAuB,CAAC;IAE7C;;;MAGE;gBACU,SAAS,EAAE,uBAAuB;IAS9C;;;;;MAKE;IACK,kBAAkB,CACvB,GAAG,EAAE,gBAAgB,EACrB,OAAO,SAAa,EACpB,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,GAC1D,cAAc,GAAG,kBAAkB,GAAE,wBAAwB;IAkChE;;;;;MAKE;IACK,kBAAkB,CAAC,GAAG,KAAA,EAAE,OAAO,KAAA,EAAE,OAAO,EAAE,gBAAgB;CAalE"}
package/types/entity.d.ts DELETED
@@ -1,100 +0,0 @@
1
- import { IdpMetadata as IdpMetadataConstructor } from './metadata-idp.js';
2
- import { SpMetadata as SpMetadataConstructor } from './metadata-sp.js';
3
- import type { MetadataIdpConstructor, MetadataSpConstructor, EntitySetting } from './types.js';
4
- import { type FlowResult } from './flow.js';
5
- export interface ESamlHttpRequest {
6
- query?: any;
7
- body?: any;
8
- octetString?: string;
9
- }
10
- export interface BindingContext {
11
- context: string;
12
- id: string;
13
- }
14
- export interface PostBindingContext extends BindingContext {
15
- relayState?: string;
16
- entityEndpoint: string;
17
- type: string;
18
- }
19
- export interface SimpleSignBindingContext extends PostBindingContext {
20
- sigAlg?: string;
21
- signature?: string;
22
- keyInfo?: string;
23
- }
24
- export interface SimpleSignComputedContext extends BindingContext {
25
- sigAlg?: string;
26
- signature?: string;
27
- }
28
- export interface ParseResult {
29
- samlContent: string;
30
- extract: any;
31
- sigAlg: string;
32
- }
33
- export type EntityConstructor = (MetadataIdpConstructor | MetadataSpConstructor) & {
34
- metadata?: string | Buffer;
35
- };
36
- export default class Entity {
37
- entitySetting: EntitySetting;
38
- entityType: string;
39
- entityMeta: IdpMetadataConstructor | SpMetadataConstructor;
40
- /**
41
- * @param entitySetting
42
- * @param entityMeta is the entity metadata, deprecated after 2.0
43
- */
44
- constructor(entitySetting: EntityConstructor, entityType: 'idp' | 'sp');
45
- /**
46
- * @desc Returns the setting of entity
47
- * @return {object}
48
- */
49
- getEntitySetting(): EntitySetting;
50
- /**
51
- * @desc Returns the xml string of entity metadata
52
- * @return {string}
53
- */
54
- getMetadata(): string;
55
- /**
56
- * @desc Exports the entity metadata into specified folder
57
- * @param {string} exportFile indicates the file name
58
- */
59
- exportMetadata(exportFile: string): void;
60
- /** * @desc Verify fields with the one specified in metadata
61
- * @param {string/[string]} field is a string or an array of string indicating the field value in SAML message
62
- * @param {string} metaField is a string indicating the same field specified in metadata
63
- * @return {boolean} True/False
64
- */
65
- verifyFields(field: string | string[], metaField: string): boolean;
66
- /** @desc Generates the logout request for developers to design their own method
67
- * @param {ServiceProvider} sp object of service provider
68
- * @param {string} binding protocol binding
69
- * @param {object} user current logged user (e.g. user)
70
- * @param {string} relayState the URL to which to redirect the user when logout is complete
71
- * @param {function} customTagReplacement used when developers have their own login response template
72
- */
73
- createLogoutRequest(targetEntity: any, binding: any, user: any, relayState?: string, customTagReplacement?: any): BindingContext | PostBindingContext;
74
- /**
75
- * @desc Generates the logout response for developers to design their own method
76
- * @param {IdentityProvider} idp object of identity provider
77
- * @param {object} requestInfo corresponding request, used to obtain the id
78
- * @param {string} relayState the URL to which to redirect the user when logout is complete.
79
- * @param {string} binding protocol binding
80
- * @param {function} customTagReplacement used when developers have their own login response template
81
- */
82
- createLogoutResponse(target: any, requestInfo: any, binding: any, relayState?: string, customTagReplacement?: any): BindingContext | PostBindingContext;
83
- /**
84
- * @desc Validation of the parsed the URL parameters
85
- * @param {IdentityProvider} idp object of identity provider
86
- * @param {string} binding protocol binding
87
- * @param {request} req request
88
- * @return {Promise}
89
- */
90
- parseLogoutRequest(from: any, binding: any, request: ESamlHttpRequest): Promise<FlowResult>;
91
- /**
92
- * @desc Validation of the parsed the URL parameters
93
- * @param {object} config config for the parser
94
- * @param {string} binding protocol binding
95
- * @param {request} req request
96
- * @return {Promise}
97
- */
98
- parseLogoutResponse(from: any, binding: any, request: ESamlHttpRequest): Promise<FlowResult>;
99
- }
100
- //# sourceMappingURL=entity.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../src/entity.ts"],"names":[],"mappings":"AAQA,OAAoB,EAAE,WAAW,IAAI,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAmB,EAAE,UAAU,IAAI,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAGnF,OAAQ,KAAK,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChG,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAO,WAAW,CAAC;AAoBnD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,wBAAyB,SAAQ,kBAAkB;IAClE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,yBAA0B,SAAQ,cAAc;IAC/D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,GAAG,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,iBAAiB,GAAG,CAAC,sBAAsB,GAAG,qBAAqB,CAAC,GAC5E;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAEnC,MAAM,CAAC,OAAO,OAAO,MAAM;IACzB,aAAa,EAAE,aAAa,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,sBAAsB,GAAG,qBAAqB,CAAC;IAE3D;;;MAGE;gBACU,aAAa,EAAE,iBAAiB,EAAE,UAAU,EAAE,KAAK,GAAG,IAAI;IAsBtE;;;MAGE;IACF,gBAAgB;IAGhB;;;MAGE;IACF,WAAW,IAAI,MAAM;IAIrB;;;MAGE;IACF,cAAc,CAAC,UAAU,EAAE,MAAM;IAIjC;;;;MAIE;IACF,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IAgBlE;;;;;;MAME;IACF,mBAAmB,CAAC,YAAY,KAAA,EAAE,OAAO,KAAA,EAAE,IAAI,KAAA,EAAE,UAAU,SAAK,EAAE,oBAAoB,CAAC,KAAA,GAAG,cAAc,GAAG,kBAAkB;IAqB7H;;;;;;;MAOE;IACF,oBAAoB,CAAC,MAAM,KAAA,EAAE,WAAW,KAAA,EAAE,OAAO,KAAA,EAAE,UAAU,SAAK,EAAE,oBAAoB,CAAC,KAAA,GAAG,cAAc,GAAG,kBAAkB;IAuB/H;;;;;;MAME;IACF,kBAAkB,CAAC,IAAI,KAAA,EAAE,OAAO,KAAA,EAAE,OAAO,EAAE,gBAAgB;IAY3D;;;;;;MAME;IACF,mBAAmB,CAAC,IAAI,KAAA,EAAE,OAAO,KAAA,EAAE,OAAO,EAAE,gBAAgB;CAY7D"}