@jjrawlins/cdk-ami-builder 0.0.179 → 0.0.181

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.
Files changed (131) hide show
  1. package/.jsii +11 -11
  2. package/cdkamibuilder/jsii/jsii.go +2 -2
  3. package/cdkamibuilder/version +1 -1
  4. package/lib/ImagePipeline/ImagePipeline.js +1 -1
  5. package/lib/Lambdas/CheckStateMachineStatus/CheckStateMachineStatus-function.js +1 -1
  6. package/lib/Lambdas/StartStateMachine/StartStateMachine-function.js +1 -1
  7. package/node_modules/@aws-sdk/client-ec2/dist-cjs/index.js +6 -0
  8. package/node_modules/@aws-sdk/client-ec2/dist-cjs/schemas/schemas_0.js +56 -29
  9. package/node_modules/@aws-sdk/client-ec2/dist-es/models/enums.js +5 -0
  10. package/node_modules/@aws-sdk/client-ec2/dist-es/schemas/schemas_0.js +33 -6
  11. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/CreateFleetCommand.d.ts +8 -3
  12. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/CreateSecondarySubnetCommand.d.ts +1 -2
  13. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DeleteTrafficMirrorSessionCommand.d.ts +2 -1
  14. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DescribeFleetsCommand.d.ts +8 -3
  15. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DescribeInstanceImageMetadataCommand.d.ts +1 -2
  16. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DescribeTrafficMirrorSessionsCommand.d.ts +2 -1
  17. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DescribeTrafficMirrorTargetsCommand.d.ts +1 -2
  18. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetDeclarativePoliciesReportSummaryCommand.d.ts +2 -1
  19. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/ModifyFleetCommand.d.ts +1 -1
  20. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/ModifyTrafficMirrorSessionCommand.d.ts +1 -1
  21. package/node_modules/@aws-sdk/client-ec2/dist-types/models/enums.d.ts +13 -0
  22. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_1.d.ts +31 -43
  23. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_2.d.ts +40 -10
  24. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_3.d.ts +31 -166
  25. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_4.d.ts +166 -73
  26. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_5.d.ts +71 -100
  27. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_6.d.ts +102 -68
  28. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_7.d.ts +67 -2
  29. package/node_modules/@aws-sdk/client-ec2/dist-types/schemas/schemas_0.d.ts +2 -0
  30. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/CreateSecondarySubnetCommand.d.ts +4 -2
  31. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/DeleteTrafficMirrorSessionCommand.d.ts +2 -4
  32. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/DescribeInstanceImageMetadataCommand.d.ts +4 -2
  33. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/DescribeTrafficMirrorSessionsCommand.d.ts +2 -4
  34. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/DescribeTrafficMirrorTargetsCommand.d.ts +4 -2
  35. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/GetDeclarativePoliciesReportSummaryCommand.d.ts +2 -4
  36. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/ModifyTrafficMirrorSessionCommand.d.ts +1 -1
  37. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/enums.d.ts +7 -0
  38. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_1.d.ts +5 -9
  39. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_2.d.ts +9 -3
  40. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_3.d.ts +8 -18
  41. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_4.d.ts +19 -13
  42. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_5.d.ts +12 -18
  43. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_6.d.ts +19 -17
  44. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_7.d.ts +16 -0
  45. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/schemas/schemas_0.d.ts +2 -0
  46. package/node_modules/@aws-sdk/client-ec2/package.json +13 -13
  47. package/node_modules/@aws-sdk/client-ecs/package.json +12 -12
  48. package/node_modules/@aws-sdk/client-kms/package.json +12 -12
  49. package/node_modules/@aws-sdk/client-s3/package.json +16 -16
  50. package/node_modules/@aws-sdk/client-secrets-manager/package.json +12 -12
  51. package/node_modules/@aws-sdk/client-sfn/package.json +12 -12
  52. package/node_modules/@aws-sdk/client-sns/package.json +12 -12
  53. package/node_modules/@aws-sdk/client-sqs/package.json +13 -13
  54. package/node_modules/@aws-sdk/client-ssm/package.json +12 -12
  55. package/node_modules/@aws-sdk/core/package.json +3 -3
  56. package/node_modules/@aws-sdk/credential-provider-env/package.json +2 -2
  57. package/node_modules/@aws-sdk/credential-provider-http/package.json +3 -3
  58. package/node_modules/@aws-sdk/credential-provider-ini/package.json +9 -9
  59. package/node_modules/@aws-sdk/credential-provider-login/package.json +3 -3
  60. package/node_modules/@aws-sdk/credential-provider-node/package.json +7 -7
  61. package/node_modules/@aws-sdk/credential-provider-process/package.json +2 -2
  62. package/node_modules/@aws-sdk/credential-provider-sso/package.json +4 -4
  63. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +3 -3
  64. package/node_modules/@aws-sdk/middleware-flexible-checksums/package.json +2 -2
  65. package/node_modules/@aws-sdk/middleware-sdk-ec2/package.json +3 -3
  66. package/node_modules/@aws-sdk/middleware-sdk-s3/package.json +3 -3
  67. package/node_modules/@aws-sdk/middleware-sdk-sqs/package.json +2 -2
  68. package/node_modules/@aws-sdk/middleware-user-agent/package.json +2 -2
  69. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/CognitoIdentity.js +1 -1
  70. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/CognitoIdentity.d.ts +2 -2
  71. package/node_modules/@aws-sdk/nested-clients/package.json +11 -11
  72. package/node_modules/@aws-sdk/region-config-resolver/package.json +2 -2
  73. package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +2 -2
  74. package/node_modules/@aws-sdk/token-providers/package.json +3 -3
  75. package/node_modules/@aws-sdk/util-user-agent-node/package.json +2 -2
  76. package/node_modules/@aws-sdk/xml-builder/dist-types/ts3.4/XmlNode.d.ts +29 -49
  77. package/node_modules/@aws-sdk/xml-builder/dist-types/ts3.4/XmlText.d.ts +6 -11
  78. package/node_modules/@aws-sdk/xml-builder/dist-types/ts3.4/escape-attribute.d.ts +1 -6
  79. package/node_modules/@aws-sdk/xml-builder/dist-types/ts3.4/escape-element.d.ts +1 -6
  80. package/node_modules/@aws-sdk/xml-builder/dist-types/ts3.4/index.d.ts +3 -12
  81. package/node_modules/@aws-sdk/xml-builder/dist-types/ts3.4/stringable.d.ts +3 -6
  82. package/node_modules/@aws-sdk/xml-builder/dist-types/ts3.4/xml-parser.browser.d.ts +1 -9
  83. package/node_modules/@aws-sdk/xml-builder/dist-types/ts3.4/xml-parser.d.ts +1 -4
  84. package/node_modules/@aws-sdk/xml-builder/package.json +2 -2
  85. package/node_modules/@smithy/config-resolver/dist-cjs/index.js +12 -0
  86. package/node_modules/@smithy/config-resolver/dist-es/endpointsConfig/NodeUseDualstackEndpointConfigOptions.js +5 -0
  87. package/node_modules/@smithy/config-resolver/dist-es/endpointsConfig/NodeUseFipsEndpointConfigOptions.js +5 -0
  88. package/node_modules/@smithy/config-resolver/dist-types/endpointsConfig/NodeUseDualstackEndpointConfigOptions.d.ts +6 -0
  89. package/node_modules/@smithy/config-resolver/dist-types/endpointsConfig/NodeUseFipsEndpointConfigOptions.d.ts +6 -0
  90. package/node_modules/@smithy/config-resolver/dist-types/ts3.4/endpointsConfig/NodeUseDualstackEndpointConfigOptions.d.ts +6 -0
  91. package/node_modules/@smithy/config-resolver/dist-types/ts3.4/endpointsConfig/NodeUseFipsEndpointConfigOptions.d.ts +6 -0
  92. package/node_modules/@smithy/config-resolver/package.json +1 -1
  93. package/node_modules/@smithy/middleware-endpoint/dist-types/resolveEndpointConfig.d.ts +2 -2
  94. package/node_modules/@smithy/middleware-endpoint/dist-types/ts3.4/resolveEndpointConfig.d.ts +2 -2
  95. package/node_modules/@smithy/middleware-endpoint/package.json +1 -1
  96. package/node_modules/@smithy/middleware-retry/package.json +2 -2
  97. package/node_modules/@smithy/smithy-client/package.json +2 -2
  98. package/node_modules/@smithy/util-defaults-mode-browser/package.json +2 -2
  99. package/node_modules/@smithy/util-defaults-mode-node/package.json +3 -3
  100. package/node_modules/fast-xml-parser/CHANGELOG.md +7 -0
  101. package/node_modules/fast-xml-parser/lib/fxbuilder.min.js +1 -1
  102. package/node_modules/fast-xml-parser/lib/fxbuilder.min.js.map +1 -1
  103. package/node_modules/fast-xml-parser/lib/fxp.cjs +1 -1
  104. package/node_modules/fast-xml-parser/lib/fxp.d.cts +20 -12
  105. package/node_modules/fast-xml-parser/lib/fxp.min.js +1 -1
  106. package/node_modules/fast-xml-parser/lib/fxp.min.js.map +1 -1
  107. package/node_modules/fast-xml-parser/lib/fxparser.min.js +1 -1
  108. package/node_modules/fast-xml-parser/lib/fxparser.min.js.map +1 -1
  109. package/node_modules/fast-xml-parser/lib/pem.d.cts +148 -0
  110. package/node_modules/fast-xml-parser/package.json +3 -3
  111. package/node_modules/fast-xml-parser/src/fxp.d.ts +13 -11
  112. package/node_modules/fast-xml-parser/src/pem.d.ts +135 -0
  113. package/node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js +26 -17
  114. package/node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js +6 -6
  115. package/node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js +22 -16
  116. package/node_modules/fast-xml-parser/src/xmlparser/XMLParser.js +2 -2
  117. package/node_modules/fast-xml-parser/src/xmlparser/node2json.js +10 -11
  118. package/node_modules/path-expression-matcher/README.md +98 -13
  119. package/node_modules/path-expression-matcher/lib/pem.cjs +1 -1
  120. package/node_modules/path-expression-matcher/lib/pem.d.cts +188 -0
  121. package/node_modules/path-expression-matcher/lib/pem.min.js +1 -1
  122. package/node_modules/path-expression-matcher/lib/pem.min.js.map +1 -1
  123. package/node_modules/path-expression-matcher/package.json +2 -2
  124. package/node_modules/path-expression-matcher/src/Matcher.js +84 -0
  125. package/node_modules/path-expression-matcher/src/index.d.ts +152 -0
  126. package/node_modules/strnum/CHANGELOG.md +5 -2
  127. package/node_modules/strnum/package.json +1 -1
  128. package/node_modules/strnum/strnum.js +9 -4
  129. package/node_modules/strnum/tests/strnum_test.js +2 -0
  130. package/node_modules/strnum/tests/temp.js +8 -0
  131. package/package.json +10 -10
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/util-user-agent-node",
3
- "version": "3.973.8",
3
+ "version": "3.973.10",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs",
6
6
  "build:cjs": "node ../../scripts/compilation/inline util-user-agent-node",
@@ -24,7 +24,7 @@
24
24
  },
25
25
  "license": "Apache-2.0",
26
26
  "dependencies": {
27
- "@aws-sdk/middleware-user-agent": "^3.972.22",
27
+ "@aws-sdk/middleware-user-agent": "^3.972.24",
28
28
  "@aws-sdk/types": "^3.973.6",
29
29
  "@smithy/node-config-provider": "^4.3.12",
30
30
  "@smithy/types": "^4.13.1",
@@ -1,49 +1,29 @@
1
- import { Stringable } from "./stringable";
2
- /**
3
- * @internal
4
- *
5
- * Represents an XML node.
6
- */
7
- export declare class XmlNode {
8
- private name;
9
- readonly children: Stringable[];
10
- private attributes;
11
- static of(name: string, childText?: string, withName?: string): XmlNode;
12
- constructor(name: string, children?: Stringable[]);
13
- withName(name: string): XmlNode;
14
- addAttribute(name: string, value: any): XmlNode;
15
- addChildNode(child: Stringable): XmlNode;
16
- removeAttribute(name: string): XmlNode;
17
- /**
18
- * @internal
19
- * Alias of {@link XmlNode#withName(string)} for codegen brevity.
20
- */
21
- n(name: string): XmlNode;
22
- /**
23
- * @internal
24
- * Alias of {@link XmlNode#addChildNode(string)} for codegen brevity.
25
- */
26
- c(child: Stringable): XmlNode;
27
- /**
28
- * @internal
29
- * Checked version of {@link XmlNode#addAttribute(string)} for codegen brevity.
30
- */
31
- a(name: string, value: any): XmlNode;
32
- /**
33
- * Create a child node.
34
- * Used in serialization of string fields.
35
- * @internal
36
- */
37
- cc(input: any, field: string, withName?: string): void;
38
- /**
39
- * Creates list child nodes.
40
- * @internal
41
- */
42
- l(input: any, listName: string, memberName: string, valueProvider: Function): void;
43
- /**
44
- * Creates list child nodes with container.
45
- * @internal
46
- */
47
- lc(input: any, listName: string, memberName: string, valueProvider: Function): void;
48
- toString(): string;
49
- }
1
+ import { Stringable } from "./stringable";
2
+ export declare class XmlNode {
3
+ private name;
4
+ readonly children: Stringable[];
5
+ private attributes;
6
+ static of(name: string, childText?: string, withName?: string): XmlNode;
7
+ constructor(name: string, children?: Stringable[]);
8
+ withName(name: string): XmlNode;
9
+ addAttribute(name: string, value: any): XmlNode;
10
+ addChildNode(child: Stringable): XmlNode;
11
+ removeAttribute(name: string): XmlNode;
12
+ n(name: string): XmlNode;
13
+ c(child: Stringable): XmlNode;
14
+ a(name: string, value: any): XmlNode;
15
+ cc(input: any, field: string, withName?: string): void;
16
+ l(
17
+ input: any,
18
+ listName: string,
19
+ memberName: string,
20
+ valueProvider: Function
21
+ ): void;
22
+ lc(
23
+ input: any,
24
+ listName: string,
25
+ memberName: string,
26
+ valueProvider: Function
27
+ ): void;
28
+ toString(): string;
29
+ }
@@ -1,11 +1,6 @@
1
- import { Stringable } from "./stringable";
2
- /**
3
- * @internal
4
- *
5
- * Represents an XML text value.
6
- */
7
- export declare class XmlText implements Stringable {
8
- private value;
9
- constructor(value: string);
10
- toString(): string;
11
- }
1
+ import { Stringable } from "./stringable";
2
+ export declare class XmlText implements Stringable {
3
+ private value;
4
+ constructor(value: string);
5
+ toString(): string;
6
+ }
@@ -1,6 +1 @@
1
- /**
2
- * @internal
3
- *
4
- * Escapes characters that can not be in an XML attribute.
5
- */
6
- export declare function escapeAttribute(value: string): string;
1
+ export declare function escapeAttribute(value: string): string;
@@ -1,6 +1 @@
1
- /**
2
- * @internal
3
- *
4
- * Escapes characters that can not be in an XML element.
5
- */
6
- export declare function escapeElement(value: string): string;
1
+ export declare function escapeElement(value: string): string;
@@ -1,12 +1,3 @@
1
- /**
2
- * @internal
3
- */
4
- export * from "./XmlNode";
5
- /**
6
- * @internal
7
- */
8
- export * from "./XmlText";
9
- /**
10
- * @internal
11
- */
12
- export { parseXML } from "./xml-parser";
1
+ export * from "./XmlNode";
2
+ export * from "./XmlText";
3
+ export { parseXML } from "./xml-parser";
@@ -1,6 +1,3 @@
1
- /**
2
- * @internal
3
- */
4
- export interface Stringable {
5
- toString(): string;
6
- }
1
+ export interface Stringable {
2
+ toString(): string;
3
+ }
@@ -1,9 +1 @@
1
- /**
2
- * Cases where this differs from fast-xml-parser:
3
- *
4
- * 1. Mixing text with nested tags (does not occur in AWS REST XML).
5
- * <mixed-text> hello, <bold>world</bold>, how are you?</mixed-text>
6
- *
7
- * @internal
8
- */
9
- export declare function parseXML(xmlString: string): any;
1
+ export declare function parseXML(xmlString: string): any;
@@ -1,4 +1 @@
1
- /**
2
- * @internal
3
- */
4
- export declare function parseXML(xmlString: string): any;
1
+ export declare function parseXML(xmlString: string): any;
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@aws-sdk/xml-builder",
3
- "version": "3.972.13",
3
+ "version": "3.972.15",
4
4
  "description": "XML utilities for the AWS SDK",
5
5
  "dependencies": {
6
6
  "@smithy/types": "^4.13.1",
7
- "fast-xml-parser": "5.5.6",
7
+ "fast-xml-parser": "5.5.8",
8
8
  "tslib": "^2.6.2"
9
9
  },
10
10
  "scripts": {
@@ -12,6 +12,11 @@ const NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = {
12
12
  configFileSelector: (profile) => utilConfigProvider.booleanSelector(profile, CONFIG_USE_DUALSTACK_ENDPOINT, utilConfigProvider.SelectorType.CONFIG),
13
13
  default: false,
14
14
  };
15
+ const nodeDualstackConfigSelectors = {
16
+ environmentVariableSelector: (env) => utilConfigProvider.booleanSelector(env, ENV_USE_DUALSTACK_ENDPOINT, utilConfigProvider.SelectorType.ENV),
17
+ configFileSelector: (profile) => utilConfigProvider.booleanSelector(profile, CONFIG_USE_DUALSTACK_ENDPOINT, utilConfigProvider.SelectorType.CONFIG),
18
+ default: undefined,
19
+ };
15
20
 
16
21
  const ENV_USE_FIPS_ENDPOINT = "AWS_USE_FIPS_ENDPOINT";
17
22
  const CONFIG_USE_FIPS_ENDPOINT = "use_fips_endpoint";
@@ -21,6 +26,11 @@ const NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = {
21
26
  configFileSelector: (profile) => utilConfigProvider.booleanSelector(profile, CONFIG_USE_FIPS_ENDPOINT, utilConfigProvider.SelectorType.CONFIG),
22
27
  default: false,
23
28
  };
29
+ const nodeFipsConfigSelectors = {
30
+ environmentVariableSelector: (env) => utilConfigProvider.booleanSelector(env, ENV_USE_FIPS_ENDPOINT, utilConfigProvider.SelectorType.ENV),
31
+ configFileSelector: (profile) => utilConfigProvider.booleanSelector(profile, CONFIG_USE_FIPS_ENDPOINT, utilConfigProvider.SelectorType.CONFIG),
32
+ default: undefined,
33
+ };
24
34
 
25
35
  const resolveCustomEndpointsConfig = (input) => {
26
36
  const { tls, endpoint, urlParser, useDualstackEndpoint } = input;
@@ -181,6 +191,8 @@ exports.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = NODE_USE_FIPS_ENDPOINT_CONFIG_OP
181
191
  exports.REGION_ENV_NAME = REGION_ENV_NAME;
182
192
  exports.REGION_INI_NAME = REGION_INI_NAME;
183
193
  exports.getRegionInfo = getRegionInfo;
194
+ exports.nodeDualstackConfigSelectors = nodeDualstackConfigSelectors;
195
+ exports.nodeFipsConfigSelectors = nodeFipsConfigSelectors;
184
196
  exports.resolveCustomEndpointsConfig = resolveCustomEndpointsConfig;
185
197
  exports.resolveEndpointsConfig = resolveEndpointsConfig;
186
198
  exports.resolveRegionConfig = resolveRegionConfig;
@@ -7,3 +7,8 @@ export const NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = {
7
7
  configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_DUALSTACK_ENDPOINT, SelectorType.CONFIG),
8
8
  default: false,
9
9
  };
10
+ export const nodeDualstackConfigSelectors = {
11
+ environmentVariableSelector: (env) => booleanSelector(env, ENV_USE_DUALSTACK_ENDPOINT, SelectorType.ENV),
12
+ configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_DUALSTACK_ENDPOINT, SelectorType.CONFIG),
13
+ default: undefined,
14
+ };
@@ -7,3 +7,8 @@ export const NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = {
7
7
  configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_FIPS_ENDPOINT, SelectorType.CONFIG),
8
8
  default: false,
9
9
  };
10
+ export const nodeFipsConfigSelectors = {
11
+ environmentVariableSelector: (env) => booleanSelector(env, ENV_USE_FIPS_ENDPOINT, SelectorType.ENV),
12
+ configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_FIPS_ENDPOINT, SelectorType.CONFIG),
13
+ default: undefined,
14
+ };
@@ -12,6 +12,12 @@ export declare const CONFIG_USE_DUALSTACK_ENDPOINT = "use_dualstack_endpoint";
12
12
  */
13
13
  export declare const DEFAULT_USE_DUALSTACK_ENDPOINT = false;
14
14
  /**
15
+ * Don't delete this, used by older clients.
16
+ * @deprecated replaced by nodeDualstackConfigSelectors in newer clients.
15
17
  * @internal
16
18
  */
17
19
  export declare const NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS: LoadedConfigSelectors<boolean>;
20
+ /**
21
+ * @internal
22
+ */
23
+ export declare const nodeDualstackConfigSelectors: LoadedConfigSelectors<boolean | undefined>;
@@ -12,6 +12,12 @@ export declare const CONFIG_USE_FIPS_ENDPOINT = "use_fips_endpoint";
12
12
  */
13
13
  export declare const DEFAULT_USE_FIPS_ENDPOINT = false;
14
14
  /**
15
+ * Don't delete this, used by older clients.
16
+ * @deprecated replaced by nodeFipsConfigSelectors in newer clients.
15
17
  * @internal
16
18
  */
17
19
  export declare const NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS: LoadedConfigSelectors<boolean>;
20
+ /**
21
+ * @internal
22
+ */
23
+ export declare const nodeFipsConfigSelectors: LoadedConfigSelectors<boolean | undefined>;
@@ -12,6 +12,12 @@ export declare const CONFIG_USE_DUALSTACK_ENDPOINT = "use_dualstack_endpoint";
12
12
  */
13
13
  export declare const DEFAULT_USE_DUALSTACK_ENDPOINT = false;
14
14
  /**
15
+ * Don't delete this, used by older clients.
16
+ * @deprecated replaced by nodeDualstackConfigSelectors in newer clients.
15
17
  * @internal
16
18
  */
17
19
  export declare const NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS: LoadedConfigSelectors<boolean>;
20
+ /**
21
+ * @internal
22
+ */
23
+ export declare const nodeDualstackConfigSelectors: LoadedConfigSelectors<boolean | undefined>;
@@ -12,6 +12,12 @@ export declare const CONFIG_USE_FIPS_ENDPOINT = "use_fips_endpoint";
12
12
  */
13
13
  export declare const DEFAULT_USE_FIPS_ENDPOINT = false;
14
14
  /**
15
+ * Don't delete this, used by older clients.
16
+ * @deprecated replaced by nodeFipsConfigSelectors in newer clients.
15
17
  * @internal
16
18
  */
17
19
  export declare const NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS: LoadedConfigSelectors<boolean>;
20
+ /**
21
+ * @internal
22
+ */
23
+ export declare const nodeFipsConfigSelectors: LoadedConfigSelectors<boolean | undefined>;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/config-resolver",
3
- "version": "4.4.11",
3
+ "version": "4.4.13",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "node ../../scripts/inline config-resolver",
@@ -31,11 +31,11 @@ export interface EndpointInputConfig<T extends EndpointParameters = EndpointPara
31
31
  /**
32
32
  * Enables IPv6/IPv4 dualstack endpoint.
33
33
  */
34
- useDualstackEndpoint?: boolean | Provider<boolean>;
34
+ useDualstackEndpoint?: boolean | Provider<boolean | undefined>;
35
35
  /**
36
36
  * Enables FIPS compatible endpoints.
37
37
  */
38
- useFipsEndpoint?: boolean | Provider<boolean>;
38
+ useFipsEndpoint?: boolean | Provider<boolean | undefined>;
39
39
  /**
40
40
  * @internal
41
41
  * This field is used internally so you should not fill any value to this field.
@@ -31,11 +31,11 @@ export interface EndpointInputConfig<T extends EndpointParameters = EndpointPara
31
31
  /**
32
32
  * Enables IPv6/IPv4 dualstack endpoint.
33
33
  */
34
- useDualstackEndpoint?: boolean | Provider<boolean>;
34
+ useDualstackEndpoint?: boolean | Provider<boolean | undefined>;
35
35
  /**
36
36
  * Enables FIPS compatible endpoints.
37
37
  */
38
- useFipsEndpoint?: boolean | Provider<boolean>;
38
+ useFipsEndpoint?: boolean | Provider<boolean | undefined>;
39
39
  /**
40
40
  * @internal
41
41
  * This field is used internally so you should not fill any value to this field.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/middleware-endpoint",
3
- "version": "4.4.26",
3
+ "version": "4.4.27",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "node ../../scripts/inline middleware-endpoint",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/middleware-retry",
3
- "version": "4.4.43",
3
+ "version": "4.4.44",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "node ../../scripts/inline middleware-retry",
@@ -37,7 +37,7 @@
37
37
  "@smithy/node-config-provider": "^4.3.12",
38
38
  "@smithy/protocol-http": "^5.3.12",
39
39
  "@smithy/service-error-classification": "^4.2.12",
40
- "@smithy/smithy-client": "^4.12.6",
40
+ "@smithy/smithy-client": "^4.12.7",
41
41
  "@smithy/types": "^4.13.1",
42
42
  "@smithy/util-middleware": "^4.2.12",
43
43
  "@smithy/util-retry": "^4.2.12",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/smithy-client",
3
- "version": "4.12.6",
3
+ "version": "4.12.7",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "node ../../scripts/inline smithy-client",
@@ -28,7 +28,7 @@
28
28
  "sideEffects": false,
29
29
  "dependencies": {
30
30
  "@smithy/core": "^3.23.12",
31
- "@smithy/middleware-endpoint": "^4.4.26",
31
+ "@smithy/middleware-endpoint": "^4.4.27",
32
32
  "@smithy/middleware-stack": "^4.2.12",
33
33
  "@smithy/protocol-http": "^5.3.12",
34
34
  "@smithy/types": "^4.13.1",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-defaults-mode-browser",
3
- "version": "4.3.42",
3
+ "version": "4.3.43",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "node ../../scripts/inline util-defaults-mode-browser",
@@ -25,7 +25,7 @@
25
25
  "sideEffects": false,
26
26
  "dependencies": {
27
27
  "@smithy/property-provider": "^4.2.12",
28
- "@smithy/smithy-client": "^4.12.6",
28
+ "@smithy/smithy-client": "^4.12.7",
29
29
  "@smithy/types": "^4.13.1",
30
30
  "tslib": "^2.6.2"
31
31
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-defaults-mode-node",
3
- "version": "4.2.45",
3
+ "version": "4.2.47",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "node ../../scripts/inline util-defaults-mode-node",
@@ -24,11 +24,11 @@
24
24
  "license": "Apache-2.0",
25
25
  "sideEffects": false,
26
26
  "dependencies": {
27
- "@smithy/config-resolver": "^4.4.11",
27
+ "@smithy/config-resolver": "^4.4.13",
28
28
  "@smithy/credential-provider-imds": "^4.2.12",
29
29
  "@smithy/node-config-provider": "^4.3.12",
30
30
  "@smithy/property-provider": "^4.2.12",
31
- "@smithy/smithy-client": "^4.12.6",
31
+ "@smithy/smithy-client": "^4.12.7",
32
32
  "@smithy/types": "^4.13.1",
33
33
  "tslib": "^2.6.2"
34
34
  },
@@ -2,6 +2,13 @@
2
2
 
3
3
  Note: Due to some last quick changes on v4, detail of v4.5.3 & v4.5.4 are not updated here. v4.5.4x is the last tag of v4 in github repository. I'm extremely sorry for the confusion
4
4
 
5
+ **5.5.8 / 2026-03-20**
6
+ - pass read only matcher in callback
7
+
8
+ **5.5.7 / 2026-03-19**
9
+ - fix: entity expansion limits
10
+ - update strnum package to 2.2.0
11
+
5
12
  **5.5.6 / 2026-03-16**
6
13
  - update builder dependency
7
14
  - fix incorrect regex to replace \. in entity name
@@ -1,2 +1,2 @@
1
- !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.XMLBuilder=e():t.XMLBuilder=e()}(this,()=>(()=>{"use strict";var t={d:(e,i)=>{for(var s in i)t.o(i,s)&&!t.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:i[s]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{default:()=>N});class i{constructor(t,e={}){this.pattern=t,this.separator=e.separator||".",this.segments=this._parse(t),this._hasDeepWildcard=this.segments.some(t=>"deep-wildcard"===t.type),this._hasAttributeCondition=this.segments.some(t=>void 0!==t.attrName),this._hasPositionSelector=this.segments.some(t=>void 0!==t.position)}_parse(t){const e=[];let i=0,s="";for(;i<t.length;)t[i]===this.separator?i+1<t.length&&t[i+1]===this.separator?(s.trim()&&(e.push(this._parseSegment(s.trim())),s=""),e.push({type:"deep-wildcard"}),i+=2):(s.trim()&&e.push(this._parseSegment(s.trim())),s="",i++):(s+=t[i],i++);return s.trim()&&e.push(this._parseSegment(s.trim())),e}_parseSegment(t){const e={type:"tag"};let i=null,s=t;const n=t.match(/^([^\[]+)(\[[^\]]*\])(.*)$/);if(n&&(s=n[1]+n[3],n[2])){const t=n[2].slice(1,-1);t&&(i=t)}let o,r,a=s;if(s.includes("::")){const e=s.indexOf("::");if(o=s.substring(0,e).trim(),a=s.substring(e+2).trim(),!o)throw new Error(`Invalid namespace in pattern: ${t}`)}let h=null;if(a.includes(":")){const t=a.lastIndexOf(":"),e=a.substring(0,t).trim(),i=a.substring(t+1).trim();["first","last","odd","even"].includes(i)||/^nth\(\d+\)$/.test(i)?(r=e,h=i):r=a}else r=a;if(!r)throw new Error(`Invalid segment pattern: ${t}`);if(e.tag=r,o&&(e.namespace=o),i)if(i.includes("=")){const t=i.indexOf("=");e.attrName=i.substring(0,t).trim(),e.attrValue=i.substring(t+1).trim()}else e.attrName=i.trim();if(h){const t=h.match(/^nth\((\d+)\)$/);t?(e.position="nth",e.positionValue=parseInt(t[1],10)):e.position=h}return e}get length(){return this.segments.length}hasDeepWildcard(){return this._hasDeepWildcard}hasAttributeCondition(){return this._hasAttributeCondition}hasPositionSelector(){return this._hasPositionSelector}toString(){return this.pattern}}class s{constructor(t={}){this.separator=t.separator||".",this.path=[],this.siblingStacks=[]}push(t,e=null,i=null){this.path.length>0&&(this.path[this.path.length-1].values=void 0);const s=this.path.length;this.siblingStacks[s]||(this.siblingStacks[s]=new Map);const n=this.siblingStacks[s],o=i?`${i}:${t}`:t,r=n.get(o)||0;let a=0;for(const t of n.values())a+=t;n.set(o,r+1);const h={tag:t,position:a,counter:r};null!=i&&(h.namespace=i),null!=e&&(h.values=e),this.path.push(h)}pop(){if(0===this.path.length)return;const t=this.path.pop();return this.siblingStacks.length>this.path.length+1&&(this.siblingStacks.length=this.path.length+1),t}updateCurrent(t){if(this.path.length>0){const e=this.path[this.path.length-1];null!=t&&(e.values=t)}}getCurrentTag(){return this.path.length>0?this.path[this.path.length-1].tag:void 0}getCurrentNamespace(){return this.path.length>0?this.path[this.path.length-1].namespace:void 0}getAttrValue(t){if(0===this.path.length)return;const e=this.path[this.path.length-1];return e.values?.[t]}hasAttr(t){if(0===this.path.length)return!1;const e=this.path[this.path.length-1];return void 0!==e.values&&t in e.values}getPosition(){return 0===this.path.length?-1:this.path[this.path.length-1].position??0}getCounter(){return 0===this.path.length?-1:this.path[this.path.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this.path.length}toString(t,e=!0){const i=t||this.separator;return this.path.map(t=>e&&t.namespace?`${t.namespace}:${t.tag}`:t.tag).join(i)}toArray(){return this.path.map(t=>t.tag)}reset(){this.path=[],this.siblingStacks=[]}matches(t){const e=t.segments;return 0!==e.length&&(t.hasDeepWildcard()?this._matchWithDeepWildcard(e):this._matchSimple(e))}_matchSimple(t){if(this.path.length!==t.length)return!1;for(let e=0;e<t.length;e++){const i=t[e],s=this.path[e],n=e===this.path.length-1;if(!this._matchSegment(i,s,n))return!1}return!0}_matchWithDeepWildcard(t){let e=this.path.length-1,i=t.length-1;for(;i>=0&&e>=0;){const s=t[i];if("deep-wildcard"===s.type){if(i--,i<0)return!0;const s=t[i];let n=!1;for(let t=e;t>=0;t--){const o=t===this.path.length-1;if(this._matchSegment(s,this.path[t],o)){e=t-1,i--,n=!0;break}}if(!n)return!1}else{const t=e===this.path.length-1;if(!this._matchSegment(s,this.path[e],t))return!1;e--,i--}}return i<0}_matchSegment(t,e,i){if("*"!==t.tag&&t.tag!==e.tag)return!1;if(void 0!==t.namespace&&"*"!==t.namespace&&t.namespace!==e.namespace)return!1;if(void 0!==t.attrName){if(!i)return!1;if(!e.values||!(t.attrName in e.values))return!1;if(void 0!==t.attrValue){const i=e.values[t.attrName];if(String(i)!==String(t.attrValue))return!1}}if(void 0!==t.position){if(!i)return!1;const s=e.counter??0;if("first"===t.position&&0!==s)return!1;if("odd"===t.position&&s%2!=1)return!1;if("even"===t.position&&s%2!=0)return!1;if("nth"===t.position&&s!==t.positionValue)return!1}return!0}snapshot(){return{path:this.path.map(t=>({...t})),siblingStacks:this.siblingStacks.map(t=>new Map(t))}}restore(t){this.path=t.path.map(t=>({...t})),this.siblingStacks=t.siblingStacks.map(t=>new Map(t))}}function n(t,e){let n="";e.format&&e.indentBy.length>0&&(n="\n");const r=[];if(e.stopNodes&&Array.isArray(e.stopNodes))for(let t=0;t<e.stopNodes.length;t++){const s=e.stopNodes[t];"string"==typeof s?r.push(new i(s)):s instanceof i&&r.push(s)}return o(t,e,n,new s,r)}function o(t,e,i,s,n){let h="",d=!1;if(e.maxNestedTags&&s.getDepth()>e.maxNestedTags)throw new Error("Maximum nested tags exceeded");if(!Array.isArray(t)){if(null!=t){let i=t.toString();return i=c(i,e),i}return""}for(let f=0;f<t.length;f++){const g=t[f],m=p(g);if(void 0===m)continue;const b=r(g[":@"],e);s.push(m,b);const N=l(s,n);if(m===e.textNodeName){let t=g[m];N||(t=e.tagValueProcessor(m,t),t=c(t,e)),d&&(h+=i),h+=t,d=!1,s.pop();continue}if(m===e.cdataPropName){d&&(h+=i),h+=`<![CDATA[${g[m][0][e.textNodeName]}]]>`,d=!1,s.pop();continue}if(m===e.commentPropName){h+=i+`\x3c!--${g[m][0][e.textNodeName]}--\x3e`,d=!0,s.pop();continue}if("?"===m[0]){const t=u(g[":@"],e,N),n="?xml"===m?"":i;let o=g[m][0][e.textNodeName];o=0!==o.length?" "+o:"",h+=n+`<${m}${o}${t}?>`,d=!0,s.pop();continue}let y=i;""!==y&&(y+=e.indentBy);const x=i+`<${m}${u(g[":@"],e,N)}`;let P;P=N?a(g[m],e):o(g[m],e,y,s,n),-1!==e.unpairedTags.indexOf(m)?e.suppressUnpairedNode?h+=x+">":h+=x+"/>":P&&0!==P.length||!e.suppressEmptyNode?P&&P.endsWith(">")?h+=x+`>${P}${i}</${m}>`:(h+=x+">",P&&""!==i&&(P.includes("/>")||P.includes("</"))?h+=i+e.indentBy+P+i:h+=P,h+=`</${m}>`):h+=x+"/>",d=!0,s.pop()}return h}function r(t,e){if(!t||e.ignoreAttributes)return null;const i={};let s=!1;for(let n in t)Object.prototype.hasOwnProperty.call(t,n)&&(i[n.startsWith(e.attributeNamePrefix)?n.substr(e.attributeNamePrefix.length):n]=t[n],s=!0);return s?i:null}function a(t,e){if(!Array.isArray(t))return null!=t?t.toString():"";let i="";for(let s=0;s<t.length;s++){const n=t[s],o=p(n);if(o===e.textNodeName)i+=n[o];else if(o===e.cdataPropName)i+=n[o][0][e.textNodeName];else if(o===e.commentPropName)i+=n[o][0][e.textNodeName];else{if(o&&"?"===o[0])continue;if(o){const t=h(n[":@"],e),s=a(n[o],e);s&&0!==s.length?i+=`<${o}${t}>${s}</${o}>`:i+=`<${o}${t}/>`}}}return i}function h(t,e){let i="";if(t&&!e.ignoreAttributes)for(let s in t){if(!Object.prototype.hasOwnProperty.call(t,s))continue;let n=t[s];!0===n&&e.suppressBooleanAttributes?i+=` ${s.substr(e.attributeNamePrefix.length)}`:i+=` ${s.substr(e.attributeNamePrefix.length)}="${n}"`}return i}function p(t){const e=Object.keys(t);for(let i=0;i<e.length;i++){const s=e[i];if(Object.prototype.hasOwnProperty.call(t,s)&&":@"!==s)return s}}function u(t,e,i){let s="";if(t&&!e.ignoreAttributes)for(let n in t){if(!Object.prototype.hasOwnProperty.call(t,n))continue;let o;i?o=t[n]:(o=e.attributeValueProcessor(n,t[n]),o=c(o,e)),!0===o&&e.suppressBooleanAttributes?s+=` ${n.substr(e.attributeNamePrefix.length)}`:s+=` ${n.substr(e.attributeNamePrefix.length)}="${o}"`}return s}function l(t,e){if(!e||0===e.length)return!1;for(let i=0;i<e.length;i++)if(t.matches(e[i]))return!0;return!1}function c(t,e){if(t&&t.length>0&&e.processEntities)for(let i=0;i<e.entities.length;i++){const s=e.entities[i];t=t.replace(s.regex,s.val)}return t}const d={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&amp;"},{regex:new RegExp(">","g"),val:"&gt;"},{regex:new RegExp("<","g"),val:"&lt;"},{regex:new RegExp("'","g"),val:"&apos;"},{regex:new RegExp('"',"g"),val:"&quot;"}],processEntities:!0,stopNodes:[],oneListGroup:!1,maxNestedTags:100,jPath:!0};function f(t){if(this.options=Object.assign({},d,t),this.options.stopNodes&&Array.isArray(this.options.stopNodes)&&(this.options.stopNodes=this.options.stopNodes.map(t=>"string"==typeof t&&t.startsWith("*.")?".."+t.substring(2):t)),this.stopNodeExpressions=[],this.options.stopNodes&&Array.isArray(this.options.stopNodes))for(let t=0;t<this.options.stopNodes.length;t++){const e=this.options.stopNodes[t];"string"==typeof e?this.stopNodeExpressions.push(new i(e)):e instanceof i&&this.stopNodeExpressions.push(e)}var e;!0===this.options.ignoreAttributes||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.ignoreAttributesFn="function"==typeof(e=this.options.ignoreAttributes)?e:Array.isArray(e)?t=>{for(const i of e){if("string"==typeof i&&t===i)return!0;if(i instanceof RegExp&&i.test(t))return!0}}:()=>!1,this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=b),this.processTextOrObjNode=g,this.options.format?(this.indentate=m,this.tagEndChar=">\n",this.newLine="\n"):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}function g(t,e,i,s){const n=this.extractAttributes(t);if(s.push(e,n),this.checkStopNode(s)){const n=this.buildRawContent(t),o=this.buildAttributesForStopNode(t);return s.pop(),this.buildObjectNode(n,e,o,i)}const o=this.j2x(t,i+1,s);return s.pop(),void 0!==t[this.options.textNodeName]&&1===Object.keys(t).length?this.buildTextValNode(t[this.options.textNodeName],e,o.attrStr,i,s):this.buildObjectNode(o.val,e,o.attrStr,i)}function m(t){return this.options.indentBy.repeat(t)}function b(t){return!(!t.startsWith(this.options.attributeNamePrefix)||t===this.options.textNodeName)&&t.substr(this.attrPrefixLen)}f.prototype.build=function(t){if(this.options.preserveOrder)return n(t,this.options);{Array.isArray(t)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(t={[this.options.arrayNodeName]:t});const e=new s;return this.j2x(t,0,e).val}},f.prototype.j2x=function(t,e,i){let s="",n="";if(this.options.maxNestedTags&&i.getDepth()>=this.options.maxNestedTags)throw new Error("Maximum nested tags exceeded");const o=this.options.jPath?i.toString():i,r=this.checkStopNode(i);for(let a in t)if(Object.prototype.hasOwnProperty.call(t,a))if(void 0===t[a])this.isAttribute(a)&&(n+="");else if(null===t[a])this.isAttribute(a)||a===this.options.cdataPropName?n+="":"?"===a[0]?n+=this.indentate(e)+"<"+a+"?"+this.tagEndChar:n+=this.indentate(e)+"<"+a+"/"+this.tagEndChar;else if(t[a]instanceof Date)n+=this.buildTextValNode(t[a],a,"",e,i);else if("object"!=typeof t[a]){const h=this.isAttribute(a);if(h&&!this.ignoreAttributesFn(h,o))s+=this.buildAttrPairStr(h,""+t[a],r);else if(!h)if(a===this.options.textNodeName){let e=this.options.tagValueProcessor(a,""+t[a]);n+=this.replaceEntitiesValue(e)}else{i.push(a);const s=this.checkStopNode(i);if(i.pop(),s){const i=""+t[a];n+=""===i?this.indentate(e)+"<"+a+this.closeTag(a)+this.tagEndChar:this.indentate(e)+"<"+a+">"+i+"</"+a+this.tagEndChar}else n+=this.buildTextValNode(t[a],a,"",e,i)}}else if(Array.isArray(t[a])){const s=t[a].length;let o="",r="";for(let h=0;h<s;h++){const s=t[a][h];if(void 0===s);else if(null===s)"?"===a[0]?n+=this.indentate(e)+"<"+a+"?"+this.tagEndChar:n+=this.indentate(e)+"<"+a+"/"+this.tagEndChar;else if("object"==typeof s)if(this.options.oneListGroup){i.push(a);const t=this.j2x(s,e+1,i);i.pop(),o+=t.val,this.options.attributesGroupName&&s.hasOwnProperty(this.options.attributesGroupName)&&(r+=t.attrStr)}else o+=this.processTextOrObjNode(s,a,e,i);else if(this.options.oneListGroup){let t=this.options.tagValueProcessor(a,s);t=this.replaceEntitiesValue(t),o+=t}else{i.push(a);const t=this.checkStopNode(i);if(i.pop(),t){const t=""+s;o+=""===t?this.indentate(e)+"<"+a+this.closeTag(a)+this.tagEndChar:this.indentate(e)+"<"+a+">"+t+"</"+a+this.tagEndChar}else o+=this.buildTextValNode(s,a,"",e,i)}}this.options.oneListGroup&&(o=this.buildObjectNode(o,a,r,e)),n+=o}else if(this.options.attributesGroupName&&a===this.options.attributesGroupName){const e=Object.keys(t[a]),i=e.length;for(let n=0;n<i;n++)s+=this.buildAttrPairStr(e[n],""+t[a][e[n]],r)}else n+=this.processTextOrObjNode(t[a],a,e,i);return{attrStr:s,val:n}},f.prototype.buildAttrPairStr=function(t,e,i){return i||(e=this.options.attributeValueProcessor(t,""+e),e=this.replaceEntitiesValue(e)),this.options.suppressBooleanAttributes&&"true"===e?" "+t:" "+t+'="'+e+'"'},f.prototype.extractAttributes=function(t){if(!t||"object"!=typeof t)return null;const e={};let i=!1;if(this.options.attributesGroupName&&t[this.options.attributesGroupName]){const s=t[this.options.attributesGroupName];for(let t in s)Object.prototype.hasOwnProperty.call(s,t)&&(e[t.startsWith(this.options.attributeNamePrefix)?t.substring(this.options.attributeNamePrefix.length):t]=s[t],i=!0)}else for(let s in t){if(!Object.prototype.hasOwnProperty.call(t,s))continue;const n=this.isAttribute(s);n&&(e[n]=t[s],i=!0)}return i?e:null},f.prototype.buildRawContent=function(t){if("string"==typeof t)return t;if("object"!=typeof t||null===t)return String(t);if(void 0!==t[this.options.textNodeName])return t[this.options.textNodeName];let e="";for(let i in t){if(!Object.prototype.hasOwnProperty.call(t,i))continue;if(this.isAttribute(i))continue;if(this.options.attributesGroupName&&i===this.options.attributesGroupName)continue;const s=t[i];if(i===this.options.textNodeName)e+=s;else if(Array.isArray(s)){for(let t of s)if("string"==typeof t||"number"==typeof t)e+=`<${i}>${t}</${i}>`;else if("object"==typeof t&&null!==t){const s=this.buildRawContent(t),n=this.buildAttributesForStopNode(t);e+=""===s?`<${i}${n}/>`:`<${i}${n}>${s}</${i}>`}}else if("object"==typeof s&&null!==s){const t=this.buildRawContent(s),n=this.buildAttributesForStopNode(s);e+=""===t?`<${i}${n}/>`:`<${i}${n}>${t}</${i}>`}else e+=`<${i}>${s}</${i}>`}return e},f.prototype.buildAttributesForStopNode=function(t){if(!t||"object"!=typeof t)return"";let e="";if(this.options.attributesGroupName&&t[this.options.attributesGroupName]){const i=t[this.options.attributesGroupName];for(let t in i){if(!Object.prototype.hasOwnProperty.call(i,t))continue;const s=t.startsWith(this.options.attributeNamePrefix)?t.substring(this.options.attributeNamePrefix.length):t,n=i[t];!0===n&&this.options.suppressBooleanAttributes?e+=" "+s:e+=" "+s+'="'+n+'"'}}else for(let i in t){if(!Object.prototype.hasOwnProperty.call(t,i))continue;const s=this.isAttribute(i);if(s){const n=t[i];!0===n&&this.options.suppressBooleanAttributes?e+=" "+s:e+=" "+s+'="'+n+'"'}}return e},f.prototype.buildObjectNode=function(t,e,i,s){if(""===t)return"?"===e[0]?this.indentate(s)+"<"+e+i+"?"+this.tagEndChar:this.indentate(s)+"<"+e+i+this.closeTag(e)+this.tagEndChar;{let n="</"+e+this.tagEndChar,o="";return"?"===e[0]&&(o="?",n=""),!i&&""!==i||-1!==t.indexOf("<")?!1!==this.options.commentPropName&&e===this.options.commentPropName&&0===o.length?this.indentate(s)+`\x3c!--${t}--\x3e`+this.newLine:this.indentate(s)+"<"+e+i+o+this.tagEndChar+t+this.indentate(s)+n:this.indentate(s)+"<"+e+i+o+">"+t+n}},f.prototype.closeTag=function(t){let e="";return-1!==this.options.unpairedTags.indexOf(t)?this.options.suppressUnpairedNode||(e="/"):e=this.options.suppressEmptyNode?"/":`></${t}`,e},f.prototype.checkStopNode=function(t){if(!this.stopNodeExpressions||0===this.stopNodeExpressions.length)return!1;for(let e=0;e<this.stopNodeExpressions.length;e++)if(t.matches(this.stopNodeExpressions[e]))return!0;return!1},f.prototype.buildTextValNode=function(t,e,i,s,n){if(!1!==this.options.cdataPropName&&e===this.options.cdataPropName)return this.indentate(s)+`<![CDATA[${t}]]>`+this.newLine;if(!1!==this.options.commentPropName&&e===this.options.commentPropName)return this.indentate(s)+`\x3c!--${t}--\x3e`+this.newLine;if("?"===e[0])return this.indentate(s)+"<"+e+i+"?"+this.tagEndChar;{let n=this.options.tagValueProcessor(e,t);return n=this.replaceEntitiesValue(n),""===n?this.indentate(s)+"<"+e+i+this.closeTag(e)+this.tagEndChar:this.indentate(s)+"<"+e+i+">"+n+"</"+e+this.tagEndChar}},f.prototype.replaceEntitiesValue=function(t){if(t&&t.length>0&&this.options.processEntities)for(let e=0;e<this.options.entities.length;e++){const i=this.options.entities[e];t=t.replace(i.regex,i.val)}return t};const N=f;return e})());
1
+ !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.XMLBuilder=e():t.XMLBuilder=e()}(this,()=>(()=>{"use strict";var t={d:(e,i)=>{for(var s in i)t.o(i,s)&&!t.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:i[s]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{default:()=>y});class i{constructor(t,e={}){this.pattern=t,this.separator=e.separator||".",this.segments=this._parse(t),this._hasDeepWildcard=this.segments.some(t=>"deep-wildcard"===t.type),this._hasAttributeCondition=this.segments.some(t=>void 0!==t.attrName),this._hasPositionSelector=this.segments.some(t=>void 0!==t.position)}_parse(t){const e=[];let i=0,s="";for(;i<t.length;)t[i]===this.separator?i+1<t.length&&t[i+1]===this.separator?(s.trim()&&(e.push(this._parseSegment(s.trim())),s=""),e.push({type:"deep-wildcard"}),i+=2):(s.trim()&&e.push(this._parseSegment(s.trim())),s="",i++):(s+=t[i],i++);return s.trim()&&e.push(this._parseSegment(s.trim())),e}_parseSegment(t){const e={type:"tag"};let i=null,s=t;const n=t.match(/^([^\[]+)(\[[^\]]*\])(.*)$/);if(n&&(s=n[1]+n[3],n[2])){const t=n[2].slice(1,-1);t&&(i=t)}let r,o,a=s;if(s.includes("::")){const e=s.indexOf("::");if(r=s.substring(0,e).trim(),a=s.substring(e+2).trim(),!r)throw new Error(`Invalid namespace in pattern: ${t}`)}let h=null;if(a.includes(":")){const t=a.lastIndexOf(":"),e=a.substring(0,t).trim(),i=a.substring(t+1).trim();["first","last","odd","even"].includes(i)||/^nth\(\d+\)$/.test(i)?(o=e,h=i):o=a}else o=a;if(!o)throw new Error(`Invalid segment pattern: ${t}`);if(e.tag=o,r&&(e.namespace=r),i)if(i.includes("=")){const t=i.indexOf("=");e.attrName=i.substring(0,t).trim(),e.attrValue=i.substring(t+1).trim()}else e.attrName=i.trim();if(h){const t=h.match(/^nth\((\d+)\)$/);t?(e.position="nth",e.positionValue=parseInt(t[1],10)):e.position=h}return e}get length(){return this.segments.length}hasDeepWildcard(){return this._hasDeepWildcard}hasAttributeCondition(){return this._hasAttributeCondition}hasPositionSelector(){return this._hasPositionSelector}toString(){return this.pattern}}const s=new Set(["push","pop","reset","updateCurrent","restore"]);class n{constructor(t={}){this.separator=t.separator||".",this.path=[],this.siblingStacks=[]}push(t,e=null,i=null){this.path.length>0&&(this.path[this.path.length-1].values=void 0);const s=this.path.length;this.siblingStacks[s]||(this.siblingStacks[s]=new Map);const n=this.siblingStacks[s],r=i?`${i}:${t}`:t,o=n.get(r)||0;let a=0;for(const t of n.values())a+=t;n.set(r,o+1);const h={tag:t,position:a,counter:o};null!=i&&(h.namespace=i),null!=e&&(h.values=e),this.path.push(h)}pop(){if(0===this.path.length)return;const t=this.path.pop();return this.siblingStacks.length>this.path.length+1&&(this.siblingStacks.length=this.path.length+1),t}updateCurrent(t){if(this.path.length>0){const e=this.path[this.path.length-1];null!=t&&(e.values=t)}}getCurrentTag(){return this.path.length>0?this.path[this.path.length-1].tag:void 0}getCurrentNamespace(){return this.path.length>0?this.path[this.path.length-1].namespace:void 0}getAttrValue(t){if(0===this.path.length)return;const e=this.path[this.path.length-1];return e.values?.[t]}hasAttr(t){if(0===this.path.length)return!1;const e=this.path[this.path.length-1];return void 0!==e.values&&t in e.values}getPosition(){return 0===this.path.length?-1:this.path[this.path.length-1].position??0}getCounter(){return 0===this.path.length?-1:this.path[this.path.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this.path.length}toString(t,e=!0){const i=t||this.separator;return this.path.map(t=>e&&t.namespace?`${t.namespace}:${t.tag}`:t.tag).join(i)}toArray(){return this.path.map(t=>t.tag)}reset(){this.path=[],this.siblingStacks=[]}matches(t){const e=t.segments;return 0!==e.length&&(t.hasDeepWildcard()?this._matchWithDeepWildcard(e):this._matchSimple(e))}_matchSimple(t){if(this.path.length!==t.length)return!1;for(let e=0;e<t.length;e++){const i=t[e],s=this.path[e],n=e===this.path.length-1;if(!this._matchSegment(i,s,n))return!1}return!0}_matchWithDeepWildcard(t){let e=this.path.length-1,i=t.length-1;for(;i>=0&&e>=0;){const s=t[i];if("deep-wildcard"===s.type){if(i--,i<0)return!0;const s=t[i];let n=!1;for(let t=e;t>=0;t--){const r=t===this.path.length-1;if(this._matchSegment(s,this.path[t],r)){e=t-1,i--,n=!0;break}}if(!n)return!1}else{const t=e===this.path.length-1;if(!this._matchSegment(s,this.path[e],t))return!1;e--,i--}}return i<0}_matchSegment(t,e,i){if("*"!==t.tag&&t.tag!==e.tag)return!1;if(void 0!==t.namespace&&"*"!==t.namespace&&t.namespace!==e.namespace)return!1;if(void 0!==t.attrName){if(!i)return!1;if(!e.values||!(t.attrName in e.values))return!1;if(void 0!==t.attrValue){const i=e.values[t.attrName];if(String(i)!==String(t.attrValue))return!1}}if(void 0!==t.position){if(!i)return!1;const s=e.counter??0;if("first"===t.position&&0!==s)return!1;if("odd"===t.position&&s%2!=1)return!1;if("even"===t.position&&s%2!=0)return!1;if("nth"===t.position&&s!==t.positionValue)return!1}return!0}snapshot(){return{path:this.path.map(t=>({...t})),siblingStacks:this.siblingStacks.map(t=>new Map(t))}}restore(t){this.path=t.path.map(t=>({...t})),this.siblingStacks=t.siblingStacks.map(t=>new Map(t))}readOnly(){return new Proxy(this,{get(t,e,i){if(s.has(e))return()=>{throw new TypeError(`Cannot call '${e}' on a read-only Matcher. Obtain a writable instance to mutate state.`)};const n=Reflect.get(t,e,i);return"path"===e||"siblingStacks"===e?Object.freeze(Array.isArray(n)?n.map(t=>t instanceof Map?Object.freeze(new Map(t)):Object.freeze({...t})):n):"function"==typeof n?n.bind(t):n},set(t,e){throw new TypeError(`Cannot set property '${String(e)}' on a read-only Matcher.`)},deleteProperty(t,e){throw new TypeError(`Cannot delete property '${String(e)}' from a read-only Matcher.`)}})}}function r(t,e){let s="";e.format&&e.indentBy.length>0&&(s="\n");const r=[];if(e.stopNodes&&Array.isArray(e.stopNodes))for(let t=0;t<e.stopNodes.length;t++){const s=e.stopNodes[t];"string"==typeof s?r.push(new i(s)):s instanceof i&&r.push(s)}return o(t,e,s,new n,r)}function o(t,e,i,s,n){let r="",p=!1;if(e.maxNestedTags&&s.getDepth()>e.maxNestedTags)throw new Error("Maximum nested tags exceeded");if(!Array.isArray(t)){if(null!=t){let i=t.toString();return i=d(i,e),i}return""}for(let f=0;f<t.length;f++){const g=t[f],m=u(g);if(void 0===m)continue;const b=a(g[":@"],e);s.push(m,b);const N=c(s,n);if(m===e.textNodeName){let t=g[m];N||(t=e.tagValueProcessor(m,t),t=d(t,e)),p&&(r+=i),r+=t,p=!1,s.pop();continue}if(m===e.cdataPropName){p&&(r+=i),r+=`<![CDATA[${g[m][0][e.textNodeName]}]]>`,p=!1,s.pop();continue}if(m===e.commentPropName){r+=i+`\x3c!--${g[m][0][e.textNodeName]}--\x3e`,p=!0,s.pop();continue}if("?"===m[0]){const t=l(g[":@"],e,N),n="?xml"===m?"":i;let o=g[m][0][e.textNodeName];o=0!==o.length?" "+o:"",r+=n+`<${m}${o}${t}?>`,p=!0,s.pop();continue}let y=i;""!==y&&(y+=e.indentBy);const x=i+`<${m}${l(g[":@"],e,N)}`;let P;P=N?h(g[m],e):o(g[m],e,y,s,n),-1!==e.unpairedTags.indexOf(m)?e.suppressUnpairedNode?r+=x+">":r+=x+"/>":P&&0!==P.length||!e.suppressEmptyNode?P&&P.endsWith(">")?r+=x+`>${P}${i}</${m}>`:(r+=x+">",P&&""!==i&&(P.includes("/>")||P.includes("</"))?r+=i+e.indentBy+P+i:r+=P,r+=`</${m}>`):r+=x+"/>",p=!0,s.pop()}return r}function a(t,e){if(!t||e.ignoreAttributes)return null;const i={};let s=!1;for(let n in t)Object.prototype.hasOwnProperty.call(t,n)&&(i[n.startsWith(e.attributeNamePrefix)?n.substr(e.attributeNamePrefix.length):n]=t[n],s=!0);return s?i:null}function h(t,e){if(!Array.isArray(t))return null!=t?t.toString():"";let i="";for(let s=0;s<t.length;s++){const n=t[s],r=u(n);if(r===e.textNodeName)i+=n[r];else if(r===e.cdataPropName)i+=n[r][0][e.textNodeName];else if(r===e.commentPropName)i+=n[r][0][e.textNodeName];else{if(r&&"?"===r[0])continue;if(r){const t=p(n[":@"],e),s=h(n[r],e);s&&0!==s.length?i+=`<${r}${t}>${s}</${r}>`:i+=`<${r}${t}/>`}}}return i}function p(t,e){let i="";if(t&&!e.ignoreAttributes)for(let s in t){if(!Object.prototype.hasOwnProperty.call(t,s))continue;let n=t[s];!0===n&&e.suppressBooleanAttributes?i+=` ${s.substr(e.attributeNamePrefix.length)}`:i+=` ${s.substr(e.attributeNamePrefix.length)}="${n}"`}return i}function u(t){const e=Object.keys(t);for(let i=0;i<e.length;i++){const s=e[i];if(Object.prototype.hasOwnProperty.call(t,s)&&":@"!==s)return s}}function l(t,e,i){let s="";if(t&&!e.ignoreAttributes)for(let n in t){if(!Object.prototype.hasOwnProperty.call(t,n))continue;let r;i?r=t[n]:(r=e.attributeValueProcessor(n,t[n]),r=d(r,e)),!0===r&&e.suppressBooleanAttributes?s+=` ${n.substr(e.attributeNamePrefix.length)}`:s+=` ${n.substr(e.attributeNamePrefix.length)}="${r}"`}return s}function c(t,e){if(!e||0===e.length)return!1;for(let i=0;i<e.length;i++)if(t.matches(e[i]))return!0;return!1}function d(t,e){if(t&&t.length>0&&e.processEntities)for(let i=0;i<e.entities.length;i++){const s=e.entities[i];t=t.replace(s.regex,s.val)}return t}const f={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&amp;"},{regex:new RegExp(">","g"),val:"&gt;"},{regex:new RegExp("<","g"),val:"&lt;"},{regex:new RegExp("'","g"),val:"&apos;"},{regex:new RegExp('"',"g"),val:"&quot;"}],processEntities:!0,stopNodes:[],oneListGroup:!1,maxNestedTags:100,jPath:!0};function g(t){if(this.options=Object.assign({},f,t),this.options.stopNodes&&Array.isArray(this.options.stopNodes)&&(this.options.stopNodes=this.options.stopNodes.map(t=>"string"==typeof t&&t.startsWith("*.")?".."+t.substring(2):t)),this.stopNodeExpressions=[],this.options.stopNodes&&Array.isArray(this.options.stopNodes))for(let t=0;t<this.options.stopNodes.length;t++){const e=this.options.stopNodes[t];"string"==typeof e?this.stopNodeExpressions.push(new i(e)):e instanceof i&&this.stopNodeExpressions.push(e)}var e;!0===this.options.ignoreAttributes||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.ignoreAttributesFn="function"==typeof(e=this.options.ignoreAttributes)?e:Array.isArray(e)?t=>{for(const i of e){if("string"==typeof i&&t===i)return!0;if(i instanceof RegExp&&i.test(t))return!0}}:()=>!1,this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=N),this.processTextOrObjNode=m,this.options.format?(this.indentate=b,this.tagEndChar=">\n",this.newLine="\n"):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}function m(t,e,i,s){const n=this.extractAttributes(t);if(s.push(e,n),this.checkStopNode(s)){const n=this.buildRawContent(t),r=this.buildAttributesForStopNode(t);return s.pop(),this.buildObjectNode(n,e,r,i)}const r=this.j2x(t,i+1,s);return s.pop(),void 0!==t[this.options.textNodeName]&&1===Object.keys(t).length?this.buildTextValNode(t[this.options.textNodeName],e,r.attrStr,i,s):this.buildObjectNode(r.val,e,r.attrStr,i)}function b(t){return this.options.indentBy.repeat(t)}function N(t){return!(!t.startsWith(this.options.attributeNamePrefix)||t===this.options.textNodeName)&&t.substr(this.attrPrefixLen)}g.prototype.build=function(t){if(this.options.preserveOrder)return r(t,this.options);{Array.isArray(t)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(t={[this.options.arrayNodeName]:t});const e=new n;return this.j2x(t,0,e).val}},g.prototype.j2x=function(t,e,i){let s="",n="";if(this.options.maxNestedTags&&i.getDepth()>=this.options.maxNestedTags)throw new Error("Maximum nested tags exceeded");const r=this.options.jPath?i.toString():i,o=this.checkStopNode(i);for(let a in t)if(Object.prototype.hasOwnProperty.call(t,a))if(void 0===t[a])this.isAttribute(a)&&(n+="");else if(null===t[a])this.isAttribute(a)||a===this.options.cdataPropName?n+="":"?"===a[0]?n+=this.indentate(e)+"<"+a+"?"+this.tagEndChar:n+=this.indentate(e)+"<"+a+"/"+this.tagEndChar;else if(t[a]instanceof Date)n+=this.buildTextValNode(t[a],a,"",e,i);else if("object"!=typeof t[a]){const h=this.isAttribute(a);if(h&&!this.ignoreAttributesFn(h,r))s+=this.buildAttrPairStr(h,""+t[a],o);else if(!h)if(a===this.options.textNodeName){let e=this.options.tagValueProcessor(a,""+t[a]);n+=this.replaceEntitiesValue(e)}else{i.push(a);const s=this.checkStopNode(i);if(i.pop(),s){const i=""+t[a];n+=""===i?this.indentate(e)+"<"+a+this.closeTag(a)+this.tagEndChar:this.indentate(e)+"<"+a+">"+i+"</"+a+this.tagEndChar}else n+=this.buildTextValNode(t[a],a,"",e,i)}}else if(Array.isArray(t[a])){const s=t[a].length;let r="",o="";for(let h=0;h<s;h++){const s=t[a][h];if(void 0===s);else if(null===s)"?"===a[0]?n+=this.indentate(e)+"<"+a+"?"+this.tagEndChar:n+=this.indentate(e)+"<"+a+"/"+this.tagEndChar;else if("object"==typeof s)if(this.options.oneListGroup){i.push(a);const t=this.j2x(s,e+1,i);i.pop(),r+=t.val,this.options.attributesGroupName&&s.hasOwnProperty(this.options.attributesGroupName)&&(o+=t.attrStr)}else r+=this.processTextOrObjNode(s,a,e,i);else if(this.options.oneListGroup){let t=this.options.tagValueProcessor(a,s);t=this.replaceEntitiesValue(t),r+=t}else{i.push(a);const t=this.checkStopNode(i);if(i.pop(),t){const t=""+s;r+=""===t?this.indentate(e)+"<"+a+this.closeTag(a)+this.tagEndChar:this.indentate(e)+"<"+a+">"+t+"</"+a+this.tagEndChar}else r+=this.buildTextValNode(s,a,"",e,i)}}this.options.oneListGroup&&(r=this.buildObjectNode(r,a,o,e)),n+=r}else if(this.options.attributesGroupName&&a===this.options.attributesGroupName){const e=Object.keys(t[a]),i=e.length;for(let n=0;n<i;n++)s+=this.buildAttrPairStr(e[n],""+t[a][e[n]],o)}else n+=this.processTextOrObjNode(t[a],a,e,i);return{attrStr:s,val:n}},g.prototype.buildAttrPairStr=function(t,e,i){return i||(e=this.options.attributeValueProcessor(t,""+e),e=this.replaceEntitiesValue(e)),this.options.suppressBooleanAttributes&&"true"===e?" "+t:" "+t+'="'+e+'"'},g.prototype.extractAttributes=function(t){if(!t||"object"!=typeof t)return null;const e={};let i=!1;if(this.options.attributesGroupName&&t[this.options.attributesGroupName]){const s=t[this.options.attributesGroupName];for(let t in s)Object.prototype.hasOwnProperty.call(s,t)&&(e[t.startsWith(this.options.attributeNamePrefix)?t.substring(this.options.attributeNamePrefix.length):t]=s[t],i=!0)}else for(let s in t){if(!Object.prototype.hasOwnProperty.call(t,s))continue;const n=this.isAttribute(s);n&&(e[n]=t[s],i=!0)}return i?e:null},g.prototype.buildRawContent=function(t){if("string"==typeof t)return t;if("object"!=typeof t||null===t)return String(t);if(void 0!==t[this.options.textNodeName])return t[this.options.textNodeName];let e="";for(let i in t){if(!Object.prototype.hasOwnProperty.call(t,i))continue;if(this.isAttribute(i))continue;if(this.options.attributesGroupName&&i===this.options.attributesGroupName)continue;const s=t[i];if(i===this.options.textNodeName)e+=s;else if(Array.isArray(s)){for(let t of s)if("string"==typeof t||"number"==typeof t)e+=`<${i}>${t}</${i}>`;else if("object"==typeof t&&null!==t){const s=this.buildRawContent(t),n=this.buildAttributesForStopNode(t);e+=""===s?`<${i}${n}/>`:`<${i}${n}>${s}</${i}>`}}else if("object"==typeof s&&null!==s){const t=this.buildRawContent(s),n=this.buildAttributesForStopNode(s);e+=""===t?`<${i}${n}/>`:`<${i}${n}>${t}</${i}>`}else e+=`<${i}>${s}</${i}>`}return e},g.prototype.buildAttributesForStopNode=function(t){if(!t||"object"!=typeof t)return"";let e="";if(this.options.attributesGroupName&&t[this.options.attributesGroupName]){const i=t[this.options.attributesGroupName];for(let t in i){if(!Object.prototype.hasOwnProperty.call(i,t))continue;const s=t.startsWith(this.options.attributeNamePrefix)?t.substring(this.options.attributeNamePrefix.length):t,n=i[t];!0===n&&this.options.suppressBooleanAttributes?e+=" "+s:e+=" "+s+'="'+n+'"'}}else for(let i in t){if(!Object.prototype.hasOwnProperty.call(t,i))continue;const s=this.isAttribute(i);if(s){const n=t[i];!0===n&&this.options.suppressBooleanAttributes?e+=" "+s:e+=" "+s+'="'+n+'"'}}return e},g.prototype.buildObjectNode=function(t,e,i,s){if(""===t)return"?"===e[0]?this.indentate(s)+"<"+e+i+"?"+this.tagEndChar:this.indentate(s)+"<"+e+i+this.closeTag(e)+this.tagEndChar;{let n="</"+e+this.tagEndChar,r="";return"?"===e[0]&&(r="?",n=""),!i&&""!==i||-1!==t.indexOf("<")?!1!==this.options.commentPropName&&e===this.options.commentPropName&&0===r.length?this.indentate(s)+`\x3c!--${t}--\x3e`+this.newLine:this.indentate(s)+"<"+e+i+r+this.tagEndChar+t+this.indentate(s)+n:this.indentate(s)+"<"+e+i+r+">"+t+n}},g.prototype.closeTag=function(t){let e="";return-1!==this.options.unpairedTags.indexOf(t)?this.options.suppressUnpairedNode||(e="/"):e=this.options.suppressEmptyNode?"/":`></${t}`,e},g.prototype.checkStopNode=function(t){if(!this.stopNodeExpressions||0===this.stopNodeExpressions.length)return!1;for(let e=0;e<this.stopNodeExpressions.length;e++)if(t.matches(this.stopNodeExpressions[e]))return!0;return!1},g.prototype.buildTextValNode=function(t,e,i,s,n){if(!1!==this.options.cdataPropName&&e===this.options.cdataPropName)return this.indentate(s)+`<![CDATA[${t}]]>`+this.newLine;if(!1!==this.options.commentPropName&&e===this.options.commentPropName)return this.indentate(s)+`\x3c!--${t}--\x3e`+this.newLine;if("?"===e[0])return this.indentate(s)+"<"+e+i+"?"+this.tagEndChar;{let n=this.options.tagValueProcessor(e,t);return n=this.replaceEntitiesValue(n),""===n?this.indentate(s)+"<"+e+i+this.closeTag(e)+this.tagEndChar:this.indentate(s)+"<"+e+i+">"+n+"</"+e+this.tagEndChar}},g.prototype.replaceEntitiesValue=function(t){if(t&&t.length>0&&this.options.processEntities)for(let e=0;e<this.options.entities.length;e++){const i=this.options.entities[e];t=t.replace(i.regex,i.val)}return t};const y=g;return e})());
2
2
  //# sourceMappingURL=fxbuilder.min.js.map