@btc-embedded/cdk-extensions 0.23.4 → 0.23.5

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 (135) hide show
  1. package/.jsii +5 -5
  2. package/CHANGELOG.md +7 -0
  3. package/assets/cli/catnip.js +154 -166
  4. package/lib/constructs/EventPipe.js +1 -1
  5. package/lib/constructs/ExportedService.js +1 -1
  6. package/lib/constructs/S3Bucket.js +1 -1
  7. package/lib/constructs/SecureRestApi.js +1 -1
  8. package/lib/constructs/SecureRestApiV2.js +1 -1
  9. package/lib/constructs/api-keys/ApiKeyClientAuthorization.js +1 -1
  10. package/lib/constructs/api-keys/ApiKeyManagement.js +1 -1
  11. package/lib/constructs/api-keys/ApiKeyPreTokenHandler.js +1 -1
  12. package/lib/constructs/api-keys/ApiKeyStore.js +1 -1
  13. package/lib/extensions/ApiGatewayExtension.js +1 -1
  14. package/lib/extensions/ApplicationContainer.js +1 -1
  15. package/lib/extensions/ApplicationLoadBalancerExtension.js +1 -1
  16. package/lib/extensions/ApplicationLoadBalancerExtensionV2.js +1 -1
  17. package/lib/extensions/CloudMapExtension.js +1 -1
  18. package/lib/extensions/DeactivatableServiceExtension.js +1 -1
  19. package/lib/extensions/DeploymentConfigExtension.js +1 -1
  20. package/lib/extensions/DocumentDbAccessExtension.js +1 -1
  21. package/lib/extensions/DomainEventMessagingExtension.js +1 -1
  22. package/lib/extensions/EfsMountExtension.js +1 -1
  23. package/lib/extensions/ExtraContainerExtension.js +1 -1
  24. package/lib/extensions/HTTPApiExtension.js +1 -1
  25. package/lib/extensions/LogExtension.js +1 -1
  26. package/lib/extensions/ModifyContainerDefinitionExtension.js +1 -1
  27. package/lib/extensions/ModifyTaskDefinitionExtension.js +1 -1
  28. package/lib/extensions/OpenIdExtension.js +1 -1
  29. package/lib/extensions/OpenTelemetryExtension.js +1 -1
  30. package/lib/extensions/PostgresDbAccessExtension.js +1 -1
  31. package/lib/extensions/SharedVolumeExtension.js +1 -1
  32. package/lib/extensions/TcpKeepAliveExtension.js +1 -1
  33. package/lib/platform/ApiGateway.js +1 -1
  34. package/lib/platform/ApiGatewayVpcLink.js +2 -2
  35. package/lib/platform/ApplicationLoadBalancer.js +1 -1
  36. package/lib/platform/ApplicationLoadBalancerV2.d.ts +1 -0
  37. package/lib/platform/ApplicationLoadBalancerV2.js +10 -3
  38. package/lib/platform/AuroraPostgresDB.js +2 -2
  39. package/lib/platform/BTCLogGroup.js +1 -1
  40. package/lib/platform/CognitoUserPool.js +2 -2
  41. package/lib/platform/DefaultUserPoolClients.js +1 -1
  42. package/lib/platform/DocumentDB.js +2 -2
  43. package/lib/platform/EcsCluster.js +1 -1
  44. package/lib/platform/EfsFileSystem.js +1 -1
  45. package/lib/platform/HostedZone.js +1 -1
  46. package/lib/platform/PrivateDnsNamespace.js +1 -1
  47. package/lib/platform/ResourceServer.js +1 -1
  48. package/lib/platform/Vpc.js +1 -1
  49. package/lib/platform/VpcV2.js +1 -1
  50. package/lib/stacks/ApplicationStack.js +1 -1
  51. package/lib/utils/BasePlatformStackResolver.js +1 -1
  52. package/lib/utils/StackParameter.js +1 -1
  53. package/node_modules/@nodable/entities/README.md +41 -0
  54. package/node_modules/@nodable/entities/package.json +54 -0
  55. package/node_modules/@nodable/entities/src/EntityDecoder.js +543 -0
  56. package/node_modules/@nodable/entities/src/EntityEncoder.js +194 -0
  57. package/node_modules/@nodable/entities/src/entities.js +1177 -0
  58. package/node_modules/@nodable/entities/src/entityTries.js +49 -0
  59. package/node_modules/@nodable/entities/src/index.d.ts +264 -0
  60. package/node_modules/@nodable/entities/src/index.js +29 -0
  61. package/node_modules/fast-xml-builder/CHANGELOG.md +40 -0
  62. package/node_modules/fast-xml-builder/LICENSE +21 -0
  63. package/node_modules/fast-xml-builder/README.md +74 -0
  64. package/node_modules/fast-xml-builder/lib/fxb.cjs +1 -0
  65. package/node_modules/fast-xml-builder/lib/fxb.d.cts +270 -0
  66. package/node_modules/fast-xml-builder/lib/fxb.min.js +2 -0
  67. package/node_modules/fast-xml-builder/lib/fxb.min.js.map +1 -0
  68. package/node_modules/fast-xml-builder/package.json +81 -0
  69. package/node_modules/fast-xml-builder/src/fxb.d.ts +270 -0
  70. package/node_modules/fast-xml-builder/src/fxb.js +599 -0
  71. package/node_modules/fast-xml-builder/src/ignoreAttributes.js +18 -0
  72. package/node_modules/fast-xml-builder/src/orderedJs2Xml.js +359 -0
  73. package/node_modules/fast-xml-builder/src/util.js +16 -0
  74. package/node_modules/fast-xml-parser/CHANGELOG.md +165 -0
  75. package/node_modules/fast-xml-parser/README.md +21 -44
  76. package/node_modules/fast-xml-parser/lib/fxbuilder.min.js +1 -1
  77. package/node_modules/fast-xml-parser/lib/fxbuilder.min.js.map +1 -1
  78. package/node_modules/fast-xml-parser/lib/fxp.cjs +1 -1
  79. package/node_modules/fast-xml-parser/lib/fxp.d.cts +343 -31
  80. package/node_modules/fast-xml-parser/lib/fxp.min.js +1 -1
  81. package/node_modules/fast-xml-parser/lib/fxp.min.js.map +1 -1
  82. package/node_modules/fast-xml-parser/lib/fxparser.min.js +1 -1
  83. package/node_modules/fast-xml-parser/lib/fxparser.min.js.map +1 -1
  84. package/node_modules/fast-xml-parser/lib/fxvalidator.min.js +1 -1
  85. package/node_modules/fast-xml-parser/lib/fxvalidator.min.js.map +1 -1
  86. package/node_modules/fast-xml-parser/package.json +13 -8
  87. package/node_modules/fast-xml-parser/src/fxp.d.ts +335 -30
  88. package/node_modules/fast-xml-parser/src/fxp.js +1 -1
  89. package/node_modules/fast-xml-parser/src/util.js +18 -25
  90. package/node_modules/fast-xml-parser/src/v6/EntitiesParser.js +89 -87
  91. package/node_modules/fast-xml-parser/src/v6/OptionsBuilder.js +10 -10
  92. package/node_modules/fast-xml-parser/src/v6/OutputBuilders/BaseOutputBuilder.js +23 -23
  93. package/node_modules/fast-xml-parser/src/v6/OutputBuilders/JsArrBuilder.js +29 -29
  94. package/node_modules/fast-xml-parser/src/v6/OutputBuilders/JsMinArrBuilder.js +1 -1
  95. package/node_modules/fast-xml-parser/src/v6/OutputBuilders/JsObjBuilder.js +39 -39
  96. package/node_modules/fast-xml-parser/src/v6/OutputBuilders/ParserOptionsBuilder.js +21 -21
  97. package/node_modules/fast-xml-parser/src/v6/XMLParser.js +22 -22
  98. package/node_modules/fast-xml-parser/src/v6/valueParsers/EntitiesParser.js +85 -85
  99. package/node_modules/fast-xml-parser/src/validator.js +34 -34
  100. package/node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js +5 -284
  101. package/node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js +335 -293
  102. package/node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js +160 -43
  103. package/node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js +540 -308
  104. package/node_modules/fast-xml-parser/src/xmlparser/XMLParser.js +26 -26
  105. package/node_modules/fast-xml-parser/src/xmlparser/node2json.js +99 -41
  106. package/node_modules/fast-xml-parser/src/xmlparser/xmlNode.js +10 -10
  107. package/node_modules/path-expression-matcher/LICENSE +21 -0
  108. package/node_modules/path-expression-matcher/README.md +872 -0
  109. package/node_modules/path-expression-matcher/lib/pem.cjs +1 -0
  110. package/node_modules/path-expression-matcher/lib/pem.d.cts +634 -0
  111. package/node_modules/path-expression-matcher/lib/pem.min.js +2 -0
  112. package/node_modules/path-expression-matcher/lib/pem.min.js.map +1 -0
  113. package/node_modules/path-expression-matcher/package.json +78 -0
  114. package/node_modules/path-expression-matcher/src/Expression.js +232 -0
  115. package/node_modules/path-expression-matcher/src/ExpressionSet.js +209 -0
  116. package/node_modules/path-expression-matcher/src/Matcher.js +570 -0
  117. package/node_modules/path-expression-matcher/src/index.d.ts +523 -0
  118. package/node_modules/path-expression-matcher/src/index.js +29 -0
  119. package/node_modules/strnum/CHANGELOG.md +12 -2
  120. package/node_modules/strnum/README.md +1 -0
  121. package/node_modules/strnum/package.json +5 -4
  122. package/node_modules/strnum/strnum.js +99 -65
  123. package/node_modules/xml-naming/README.md +189 -0
  124. package/node_modules/xml-naming/package.json +54 -0
  125. package/node_modules/xml-naming/src/index.d.ts +74 -0
  126. package/node_modules/xml-naming/src/index.js +270 -0
  127. package/package.json +3 -2
  128. package/renovate.json5 +1 -0
  129. package/node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js +0 -134
  130. package/node_modules/strnum/.github/SECURITY.md +0 -5
  131. package/node_modules/strnum/.vscode/launch.json +0 -25
  132. package/node_modules/strnum/algo.stflow +0 -84
  133. package/node_modules/strnum/strnum.test.js +0 -173
  134. package/node_modules/strnum/test.js +0 -9
  135. /package/node_modules/{fast-xml-parser/src/xmlbuilder → fast-xml-builder/src}/prettifyJs2Xml.js +0 -0
@@ -54,7 +54,7 @@ class VpcV2 extends constructs_1.Construct {
54
54
  }
55
55
  exports.VpcV2 = VpcV2;
56
56
  _a = JSII_RTTI_SYMBOL_1;
57
- VpcV2[_a] = { fqn: "@btc-embedded/cdk-extensions.VpcV2", version: "0.23.4" };
57
+ VpcV2[_a] = { fqn: "@btc-embedded/cdk-extensions.VpcV2", version: "0.23.5" };
58
58
  VpcV2.vpcIdParameter = new utils_1.StackParameter({
59
59
  prefix: "vpc",
60
60
  name: "VPC ID",
@@ -13,5 +13,5 @@ class ApplicationStack extends aws_cdk_lib_1.Stack {
13
13
  }
14
14
  exports.ApplicationStack = ApplicationStack;
15
15
  _a = JSII_RTTI_SYMBOL_1;
16
- ApplicationStack[_a] = { fqn: "@btc-embedded/cdk-extensions.ApplicationStack", version: "0.23.4" };
16
+ ApplicationStack[_a] = { fqn: "@btc-embedded/cdk-extensions.ApplicationStack", version: "0.23.5" };
17
17
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwbGljYXRpb25TdGFjay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGFja3MvQXBwbGljYXRpb25TdGFjay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUFnRDtBQUVoRCxrRkFBMEY7QUFNMUYsTUFBYSxnQkFBaUIsU0FBUSxtQkFBSztJQUN6QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTRCO1FBQ3BFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUNsQixnRUFBb0MsRUFDcEMsS0FBSyxDQUFDLHFCQUFxQixDQUM1QixDQUFDO0lBQ0osQ0FBQzs7QUFQSCw0Q0FRQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0YWNrLCBTdGFja1Byb3BzIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgQkFTRV9QTEFURk9STV9TVEFDS19OQU1FX0NPTlRFWFRfS0VZIH0gZnJvbSBcIi4uL3V0aWxzL0Jhc2VQbGF0Zm9ybVN0YWNrUmVzb2x2ZXJcIjtcblxuZXhwb3J0IGludGVyZmFjZSBBcHBsaWNhdGlvblN0YWNrUHJvcHMgZXh0ZW5kcyBTdGFja1Byb3BzIHtcbiAgcmVhZG9ubHkgYmFzZVBsYXRmb3JtU3RhY2tOYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvblN0YWNrIGV4dGVuZHMgU3RhY2sge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQXBwbGljYXRpb25TdGFja1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG4gICAgdGhpcy5ub2RlLnNldENvbnRleHQoXG4gICAgICBCQVNFX1BMQVRGT1JNX1NUQUNLX05BTUVfQ09OVEVYVF9LRVksXG4gICAgICBwcm9wcy5iYXNlUGxhdGZvcm1TdGFja05hbWUsXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -20,5 +20,5 @@ class BasePlatformStackResolver {
20
20
  }
21
21
  exports.BasePlatformStackResolver = BasePlatformStackResolver;
22
22
  _a = JSII_RTTI_SYMBOL_1;
23
- BasePlatformStackResolver[_a] = { fqn: "@btc-embedded/cdk-extensions.BasePlatformStackResolver", version: "0.23.4" };
23
+ BasePlatformStackResolver[_a] = { fqn: "@btc-embedded/cdk-extensions.BasePlatformStackResolver", version: "0.23.5" };
24
24
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZVBsYXRmb3JtU3RhY2tSZXNvbHZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9CYXNlUGxhdGZvcm1TdGFja1Jlc29sdmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBRWEsUUFBQSxvQ0FBb0MsR0FDL0Msc0NBQXNDLENBQUM7QUFFekMsTUFBYSx5QkFBeUI7SUFDcEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFnQixFQUFFLFVBQW1CO1FBQ2xELElBQUksVUFBVSxFQUFFLENBQUM7WUFDZixPQUFPLFVBQVUsQ0FBQztRQUNwQixDQUFDO1FBRUQsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQzNDLDRDQUFvQyxDQUNyQyxDQUFDO1FBQ0YsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQixPQUFPLFlBQVksQ0FBQztRQUN0QixDQUFDO1FBRUQsTUFBTSxJQUFJLEtBQUssQ0FDYixpREFBaUQ7WUFDL0MsK0VBQStFO1lBQy9FLDREQUE0RCxDQUMvRCxDQUFDO0lBQ0osQ0FBQzs7QUFsQkgsOERBbUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuZXhwb3J0IGNvbnN0IEJBU0VfUExBVEZPUk1fU1RBQ0tfTkFNRV9DT05URVhUX0tFWSA9XG4gIFwiY2RrLWV4dGVuc2lvbnM6YmFzZVBsYXRmb3JtU3RhY2tOYW1lXCI7XG5cbmV4cG9ydCBjbGFzcyBCYXNlUGxhdGZvcm1TdGFja1Jlc29sdmVyIHtcbiAgc3RhdGljIHJlc29sdmUoc2NvcGU6IENvbnN0cnVjdCwgcHJvcHNWYWx1ZT86IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKHByb3BzVmFsdWUpIHtcbiAgICAgIHJldHVybiBwcm9wc1ZhbHVlO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbnRleHRWYWx1ZSA9IHNjb3BlLm5vZGUudHJ5R2V0Q29udGV4dChcbiAgICAgIEJBU0VfUExBVEZPUk1fU1RBQ0tfTkFNRV9DT05URVhUX0tFWSxcbiAgICApO1xuICAgIGlmIChjb250ZXh0VmFsdWUpIHtcbiAgICAgIHJldHVybiBjb250ZXh0VmFsdWU7XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgXCJiYXNlUGxhdGZvcm1TdGFja05hbWUgbm90IGNvbmZpZ3VyZWQuIEVpdGhlcjpcXG5cIiArXG4gICAgICAgIFwiMS4gRXh0ZW5kIEFwcGxpY2F0aW9uU3RhY2sgYW5kIHNldCBiYXNlUGxhdGZvcm1TdGFja05hbWUgaW4gc3RhY2sgcHJvcHMsIG9yXFxuXCIgK1xuICAgICAgICBcIjIuIFBhc3MgYmFzZVBsYXRmb3JtU3RhY2tOYW1lIGV4cGxpY2l0bHkgdG8gdGhpcyBjb25zdHJ1Y3RcIixcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -64,5 +64,5 @@ class StackParameter {
64
64
  }
65
65
  exports.StackParameter = StackParameter;
66
66
  _a = JSII_RTTI_SYMBOL_1;
67
- StackParameter[_a] = { fqn: "@btc-embedded/cdk-extensions.StackParameter", version: "0.23.4" };
67
+ StackParameter[_a] = { fqn: "@btc-embedded/cdk-extensions.StackParameter", version: "0.23.5" };
68
68
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhY2tQYXJhbWV0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvU3RhY2tQYXJhbWV0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBbUQ7QUFFbkQsMkVBQXdFO0FBQ3hFLHFDQUFtQztBQUNuQyw2REFBMkQ7QUFzQzNEOzs7R0FHRztBQUNILE1BQWEsY0FBYztJQUl6Qjs7OztPQUlHO0lBQ0gsWUFBWSxPQUE4QjtRQUN4QyxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUNoQyxNQUFNLENBQUMsR0FBRyxJQUFBLGdCQUFPLEVBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFFNUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztJQUVEOzs7Ozs7Ozs7OztPQVdHO0lBQ0ksTUFBTSxDQUFDLEtBQWdCLEVBQUUsU0FBa0I7UUFDaEQsTUFBTSxpQkFBaUIsR0FBRyxxREFBeUIsQ0FBQyxPQUFPLENBQ3pELEtBQUssRUFDTCxTQUFTLENBQ1YsQ0FBQztRQUNGLE9BQU8sZ0JBQUUsQ0FBQyxXQUFXLENBQ25CLElBQUEsd0NBQW1CLEVBQ2pCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUNwQixpQkFBaUIsRUFDakIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUNqQixDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLFVBQVUsQ0FBQyxTQUFpQjtRQUNqQyxPQUFPLElBQUEsd0NBQW1CLEVBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUNwQixTQUFTLEVBQ1QsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUNqQixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsS0FBZ0IsRUFBRSxLQUFhO1FBQzNDLE1BQU0sVUFBVSxHQUFHLElBQUEsd0NBQW1CLEVBQ3BDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUNwQixtQkFBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLEVBQ3pCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FDakIsQ0FBQztRQUVGLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLEdBQUcsVUFBVSxRQUFRLENBQUM7UUFFN0QsT0FBTyxJQUFJLHVCQUFTLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRTtZQUNyQyxVQUFVO1lBQ1YsS0FBSztZQUNMLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVc7U0FDdEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUEzRUgsd0NBNEVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2ZuT3V0cHV0LCBGbiwgU3RhY2sgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBCYXNlUGxhdGZvcm1TdGFja1Jlc29sdmVyIH0gZnJvbSBcIi4vQmFzZVBsYXRmb3JtU3RhY2tSZXNvbHZlclwiO1xuaW1wb3J0IHsgaXNBcnJheSB9IGZyb20gXCIuL2NvbW1vblwiO1xuaW1wb3J0IHsgY3JlYXRlS2V5SWRlbnRpZmllciB9IGZyb20gXCIuL3N0YWNrUGFyYW1ldGVyTmFtZVwiO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGNyZWF0aW5nIGEgU3RhY2tQYXJhbWV0ZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RhY2tQYXJhbWV0ZXJPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBwcmVmaXgoZXMpIGZvciB0aGUgc3RhY2sgcGFyYW1ldGVyLlxuICAgKlxuICAgKiBQcmVmaXhlcyBtdXN0IGJlIGtlYmFiLWNhc2UgKGxvd2VyY2FzZSBsZXR0ZXJzLCBudW1iZXJzLCBhbmQgaHlwaGVucykuIElmXG4gICAqIG11bHRpcGxlIHByZWZpeGVzIGFyZSBwcm92aWRlZCwgdGhleSB3aWxsIGJlIGpvaW5lZCB3aXRoIGNvbG9ucy5cbiAgICovXG4gIHJlYWRvbmx5IHByZWZpeDogc3RyaW5nIHwgc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSBrZXkgZm9yIHRoZSBzdGFjayBwYXJhbWV0ZXIuXG4gICAqL1xuICByZWFkb25seSBrZXk6IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSB1c2VkIGZvciB0aGUgZXhwb3J0IGNvbnN0cnVjdCBsb2dpY2FsIElELlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVmVyc2lvbiBmb3IgdGhlIHN0YWNrIHBhcmFtZXRlci5cbiAgICpcbiAgICogSWYgcHJvdmlkZWQgYW5kIGdyZWF0ZXIgdGhhbiAxLCB0aGUgdmVyc2lvbiB3aWxsIGJlIGFwcGVuZGVkIHRvIHRoZVxuICAgKiBwYXJhbWV0ZXIgbmFtZSBkdXJpbmcgZXhwb3J0IGFuZCBpbXBvcnQgYXMgYC12e3ZlcnNpb259YC5cbiAgICovXG4gIHJlYWRvbmx5IHZlcnNpb24/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIERlc2NyaXB0aW9uIGZvciB0aGUgZXhwb3J0ZWQgcGFyYW1ldGVyLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvdmlkZXMgbWVhbnMgdG8gZXhwb3J0IGFuZCBpbXBvcnQgc3RhY2sgcGFyYW1ldGVycy5cbiAqXG4gKi9cbmV4cG9ydCBjbGFzcyBTdGFja1BhcmFtZXRlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogU3RhY2tQYXJhbWV0ZXJPcHRpb25zO1xuICBwcml2YXRlIHJlYWRvbmx5IHByZWZpeGVzOiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQ29uc3RydWN0IGEgc3RhY2sgcGFyYW1ldGVyLlxuICAgKlxuICAgKiBUaGUgc3RhY2sgcGFyYW1ldGVyIGlzIGNoYXJhY3Rlcml6ZWQgYnkgYSBwcmVmaXgsIGEga2V5LCBhIGRlc2NyaXB0aXZlIG5hbWUsIGFuZCBhbiBvcHRpb25hbCB2ZXJzaW9uLlxuICAgKi9cbiAgY29uc3RydWN0b3Iob3B0aW9uczogU3RhY2tQYXJhbWV0ZXJPcHRpb25zKSB7XG4gICAgY29uc3QgeyBwcmVmaXgsIGtleSB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBwID0gaXNBcnJheShwcmVmaXgpID8gcHJlZml4IDogW3ByZWZpeF07XG4gICAgdGhpcy5wcmVmaXhlcyA9IFsuLi5wLCBrZXldO1xuXG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBvcnQgdGhlIHBhcmFtZXRlciBhcyB7c3RhY2tOYW1lfTp7cHJlZml4fS12e3ZlcnNpb259OntrZXl9LlxuICAgKlxuICAgKiBUaGUgc3RhY2sgbmFtZSBjYW4gYmUgcHJvdmlkZWQgZXhwbGljaXRseSwgb3IgcmVzb2x2ZWQgZnJvbSB0aGUgY29uc3RydWN0IHRyZWVcbiAgICogY29udGV4dCAoc2V0IGJ5IEFwcGxpY2F0aW9uU3RhY2spLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBUaGUgY29uc3RydWN0IHNjb3BlIGZvciBjb250ZXh0IHJlc29sdXRpb25cbiAgICogQHBhcmFtIHN0YWNrTmFtZSAtIE9wdGlvbmFsIGV4cGxpY2l0IHN0YWNrIG5hbWUuIElmIG5vdCBwcm92aWRlZCwgd2lsbCByZXNvbHZlIGZyb20gY29udGV4dC5cbiAgICogQHJldHVybnMgVGhlIGltcG9ydGVkIENsb3VkRm9ybWF0aW9uIHZhbHVlXG4gICAqXG4gICAqIC12e3ZlcnNpb259IGlzIG9ubHkgZW1pdHRlZCB3aGVuIHRoZSB2ZXJzaW9uIGlzIGdyZWF0ZXIgdGhhbiAxLlxuICAgKi9cbiAgcHVibGljIGltcG9ydChzY29wZTogQ29uc3RydWN0LCBzdGFja05hbWU/OiBzdHJpbmcpIHtcbiAgICBjb25zdCByZXNvbHZlZFN0YWNrTmFtZSA9IEJhc2VQbGF0Zm9ybVN0YWNrUmVzb2x2ZXIucmVzb2x2ZShcbiAgICAgIHNjb3BlLFxuICAgICAgc3RhY2tOYW1lLFxuICAgICk7XG4gICAgcmV0dXJuIEZuLmltcG9ydFZhbHVlKFxuICAgICAgY3JlYXRlS2V5SWRlbnRpZmllcihcbiAgICAgICAgdGhpcy5vcHRpb25zLnZlcnNpb24sXG4gICAgICAgIHJlc29sdmVkU3RhY2tOYW1lLFxuICAgICAgICAuLi50aGlzLnByZWZpeGVzLFxuICAgICAgKSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIENsb3VkRm9ybWF0aW9uIGV4cG9ydCBuYW1lIGZvciBhIGdpdmVuIHN0YWNrIG5hbWUsIHdpdGhvdXQgcmVxdWlyaW5nIGEgQ0RLIGNvbnN0cnVjdCBzY29wZS5cbiAgICpcbiAgICogVXNlZnVsIGZvciBDTEkgdG9vbHMgdGhhdCBuZWVkIHRvIGxvb2sgdXAgZXhwb3J0ZWQgdmFsdWVzIGJ5IG5hbWUgYXQgcnVudGltZS5cbiAgICovXG4gIHB1YmxpYyBleHBvcnROYW1lKHN0YWNrTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gY3JlYXRlS2V5SWRlbnRpZmllcihcbiAgICAgIHRoaXMub3B0aW9ucy52ZXJzaW9uLFxuICAgICAgc3RhY2tOYW1lLFxuICAgICAgLi4udGhpcy5wcmVmaXhlcyxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4cG9ydCB0aGUgcGFyYW1ldGVyIGFzIHtzdGFja05hbWV9OntwcmVmaXh9LXZ7dmVyc2lvbn06e2tleX0uXG4gICAqXG4gICAqIC12e3ZlcnNpb259IGlzIG9ubHkgZW1pdHRlZCB3aGVuIHRoZSB2ZXJzaW9uIGlzIGdyZWF0ZXIgdGhhbiAxLlxuICAgKi9cbiAgcHVibGljIGV4cG9ydChzY29wZTogQ29uc3RydWN0LCB2YWx1ZTogc3RyaW5nKSB7XG4gICAgY29uc3QgZXhwb3J0TmFtZSA9IGNyZWF0ZUtleUlkZW50aWZpZXIoXG4gICAgICB0aGlzLm9wdGlvbnMudmVyc2lvbixcbiAgICAgIFN0YWNrLm9mKHNjb3BlKS5zdGFja05hbWUsXG4gICAgICAuLi50aGlzLnByZWZpeGVzLFxuICAgICk7XG5cbiAgICBjb25zdCBsb2dpY2FsSWQgPSB0aGlzLm9wdGlvbnMubmFtZSA/PyBgJHtleHBvcnROYW1lfU91dHB1dGA7XG5cbiAgICByZXR1cm4gbmV3IENmbk91dHB1dChzY29wZSwgbG9naWNhbElkLCB7XG4gICAgICBleHBvcnROYW1lLFxuICAgICAgdmFsdWUsXG4gICAgICBkZXNjcmlwdGlvbjogdGhpcy5vcHRpb25zLmRlc2NyaXB0aW9uLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,41 @@
1
+ # @nodable/entities
2
+
3
+ Fast, zero-dependency XML/HTML entity encoder and decoder for Node.js.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ npm install @nodable/entities
9
+ ```
10
+
11
+ ## Quick start
12
+
13
+ ```js
14
+ import { EntityEncoder, EntityDecoder, ALL_ENTITIES } from '@nodable/entities';
15
+
16
+ // Encode: plain text → entity references
17
+ const enc = new EntityEncoder();
18
+ enc.encode('Hello © 2024 & <stuff>');
19
+ // → 'Hello &copy; 2024 &amp; &lt;stuff&gt;'
20
+
21
+ // Decode: entity references → plain text
22
+ const dec = new EntityDecoder({ namedEntities: ALL_ENTITIES });
23
+ dec.decode('Hello &copy; 2024 &amp; &lt;stuff&gt;');
24
+ // → 'Hello © 2024 & <stuff>'
25
+ ```
26
+
27
+ ## Performance
28
+
29
+ | | encode | decode |
30
+ |---|---|---|
31
+ | `entities` (npm) | 3.65 M req/s | 1.76 M req/s |
32
+ | `@nodable/entities` | 3.33 M req/s | **5.19 M req/s** |
33
+
34
+ ## Documentation
35
+
36
+ - [EntityEncoder](docs/EntityEncoder.md) — options, API, recipes
37
+ - [EntityDecoder](docs/EntityDecoder.md) — options, API, security limits, entity sets
38
+
39
+ ## License
40
+
41
+ MIT
@@ -0,0 +1,54 @@
1
+ {
2
+ "name": "@nodable/entities",
3
+ "version": "2.1.0",
4
+ "description": "Entity parser for XML, HTML, External entites with security and NCR control",
5
+ "main": "./src/index.js",
6
+ "type": "module",
7
+ "sideEffects": false,
8
+ "types": "./src/index.d.ts",
9
+ "scripts": {
10
+ "test": "node --experimental-vm-modules node_modules/.bin/jest",
11
+ "test:watch": "node --experimental-vm-modules node_modules/.bin/jest --watch",
12
+ "test:coverage": "node --experimental-vm-modules node_modules/.bin/jest --coverage",
13
+ "lint": "eslint src/ test/"
14
+ },
15
+ "files": [
16
+ "src",
17
+ "README.md"
18
+ ],
19
+ "repository": {
20
+ "type": "git",
21
+ "url": "git+https://github.com/nodable/val-parsers.git"
22
+ },
23
+ "keywords": [
24
+ "fast",
25
+ "xml",
26
+ "html",
27
+ "entity",
28
+ "encode",
29
+ "decode",
30
+ "ncr",
31
+ "security",
32
+ "performance"
33
+ ],
34
+ "author": "Amit Gupta (https://solothought.com)",
35
+ "license": "MIT",
36
+ "publishConfig": {
37
+ "access": "public"
38
+ },
39
+ "devDependencies": {
40
+ "jest": "^29.7.0"
41
+ },
42
+ "funding": [
43
+ {
44
+ "type": "github",
45
+ "url": "https://github.com/sponsors/nodable"
46
+ }
47
+ ],
48
+ "jest": {
49
+ "testMatch": [
50
+ "**/?(*.)+(spec|test).[jt]s?(x)",
51
+ "**/*_spec.[jt]s?(x)"
52
+ ]
53
+ }
54
+ }