@azure/provisioning-core 1.0.0-beta.1 → 1.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/README.md +49 -10
- package/dist/browser/constructs/built-in-resources/resource-group.d.ts +7 -1
- package/dist/browser/constructs/built-in-resources/resource-group.d.ts.map +1 -1
- package/dist/browser/constructs/built-in-resources/resource-group.js +26 -6
- package/dist/browser/constructs/built-in-resources/resource-group.js.map +1 -1
- package/dist/browser/constructs/output.d.ts +1 -1
- package/dist/browser/constructs/output.d.ts.map +1 -1
- package/dist/browser/constructs/output.js.map +1 -1
- package/dist/browser/constructs/parameter.d.ts +1 -1
- package/dist/browser/constructs/parameter.d.ts.map +1 -1
- package/dist/browser/constructs/parameter.js.map +1 -1
- package/dist/browser/constructs/resource/resource-query.d.ts +3 -1
- package/dist/browser/constructs/resource/resource-query.d.ts.map +1 -1
- package/dist/browser/constructs/resource/resource-query.js +10 -0
- package/dist/browser/constructs/resource/resource-query.js.map +1 -1
- package/dist/browser/constructs/resource/resource-relationships.d.ts +9 -0
- package/dist/browser/constructs/resource/resource-relationships.d.ts.map +1 -0
- package/dist/browser/constructs/resource/resource-relationships.js +35 -0
- package/dist/browser/constructs/resource/resource-relationships.js.map +1 -0
- package/dist/browser/constructs/resource/resource.d.ts +11 -17
- package/dist/browser/constructs/resource/resource.d.ts.map +1 -1
- package/dist/browser/constructs/resource/resource.js +70 -28
- package/dist/browser/constructs/resource/resource.js.map +1 -1
- package/dist/browser/constructs/stack.d.ts +2 -16
- package/dist/browser/constructs/stack.d.ts.map +1 -1
- package/dist/browser/constructs/stack.js +1 -15
- package/dist/browser/constructs/stack.js.map +1 -1
- package/dist/browser/expression/ast-nodes.d.ts +1 -1
- package/dist/browser/expression/ast-nodes.d.ts.map +1 -1
- package/dist/browser/expression/ast-nodes.js.map +1 -1
- package/dist/browser/expression/expressions.d.ts +2 -9
- package/dist/browser/expression/expressions.d.ts.map +1 -1
- package/dist/browser/expression/expressions.js +2 -9
- package/dist/browser/expression/expressions.js.map +1 -1
- package/dist/browser/expression/utils.d.ts +5 -0
- package/dist/browser/expression/utils.d.ts.map +1 -0
- package/dist/browser/expression/utils.js +25 -0
- package/dist/browser/expression/utils.js.map +1 -0
- package/dist/browser/index.d.ts +4 -4
- package/dist/browser/index.d.ts.map +1 -1
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/internal.d.ts +2 -5
- package/dist/browser/internal.d.ts.map +1 -1
- package/dist/browser/internal.js +1 -3
- package/dist/browser/internal.js.map +1 -1
- package/dist/browser/naming/name-validation.d.ts +15 -0
- package/dist/browser/naming/name-validation.d.ts.map +1 -0
- package/dist/browser/naming/name-validation.js +82 -0
- package/dist/browser/naming/name-validation.js.map +1 -0
- package/dist/browser/naming/naming-policy.d.ts +7 -7
- package/dist/browser/naming/naming-policy.d.ts.map +1 -1
- package/dist/browser/naming/naming-policy.js +166 -33
- package/dist/browser/naming/naming-policy.js.map +1 -1
- package/dist/browser/naming/naming-rules.d.ts +12 -11
- package/dist/browser/naming/naming-rules.d.ts.map +1 -1
- package/dist/browser/naming/naming-rules.js +2 -9
- package/dist/browser/naming/naming-rules.js.map +1 -1
- package/dist/browser/package.json +1 -1
- package/dist/{esm/serialization/json/lower.d.ts → browser/serialization/arm-object-conversion.d.ts} +11 -11
- package/dist/browser/serialization/arm-object-conversion.d.ts.map +1 -0
- package/dist/{esm/serialization/json/lower.js → browser/serialization/arm-object-conversion.js} +20 -20
- package/dist/browser/serialization/arm-object-conversion.js.map +1 -0
- package/dist/browser/serialization/ast/declaration-builder.d.ts +10 -0
- package/dist/browser/serialization/ast/declaration-builder.d.ts.map +1 -0
- package/dist/browser/serialization/ast/declaration-builder.js +265 -0
- package/dist/browser/serialization/ast/declaration-builder.js.map +1 -0
- package/dist/browser/serialization/ast/declaration-dependencies.d.ts +18 -0
- package/dist/browser/serialization/ast/declaration-dependencies.d.ts.map +1 -0
- package/dist/browser/serialization/ast/declaration-dependencies.js +96 -0
- package/dist/browser/serialization/ast/declaration-dependencies.js.map +1 -0
- package/dist/browser/serialization/ast/expression-builder.d.ts +14 -0
- package/dist/browser/serialization/ast/expression-builder.d.ts.map +1 -0
- package/dist/browser/serialization/ast/expression-builder.js +313 -0
- package/dist/browser/serialization/ast/expression-builder.js.map +1 -0
- package/dist/browser/serialization/ast/expression-restorer.d.ts +8 -0
- package/dist/browser/serialization/ast/expression-restorer.d.ts.map +1 -0
- package/dist/browser/serialization/ast/expression-restorer.js +162 -0
- package/dist/browser/serialization/ast/expression-restorer.js.map +1 -0
- package/dist/browser/serialization/ast/expression-rewriter.d.ts +29 -0
- package/dist/browser/serialization/ast/expression-rewriter.d.ts.map +1 -0
- package/dist/browser/serialization/ast/expression-rewriter.js +257 -0
- package/dist/browser/serialization/ast/expression-rewriter.js.map +1 -0
- package/dist/browser/serialization/ast/expression-walker.d.ts +16 -0
- package/dist/browser/serialization/ast/expression-walker.d.ts.map +1 -0
- package/dist/browser/serialization/ast/expression-walker.js +154 -0
- package/dist/browser/serialization/ast/expression-walker.js.map +1 -0
- package/dist/browser/serialization/ast/generated/ast.d.ts.map +1 -0
- package/dist/browser/serialization/ast/generated/ast.js.map +1 -0
- package/dist/browser/serialization/ast/index.d.ts +7 -0
- package/dist/browser/serialization/ast/index.d.ts.map +1 -0
- package/dist/browser/serialization/ast/index.js.map +1 -0
- package/dist/browser/serialization/ast/resource-utils.d.ts +10 -0
- package/dist/browser/serialization/ast/resource-utils.d.ts.map +1 -0
- package/dist/browser/serialization/ast/resource-utils.js +52 -0
- package/dist/browser/serialization/ast/resource-utils.js.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/authored-context.d.ts +12 -0
- package/dist/browser/serialization/bicep/file-layout/authored-context.d.ts.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/authored-context.js +57 -0
- package/dist/browser/serialization/bicep/file-layout/authored-context.js.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/bicep-namer.d.ts +11 -0
- package/dist/browser/serialization/bicep/file-layout/bicep-namer.d.ts.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/bicep-namer.js +100 -0
- package/dist/browser/serialization/bicep/file-layout/bicep-namer.js.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/build-bicep-files.d.ts +7 -0
- package/dist/browser/serialization/bicep/file-layout/build-bicep-files.d.ts.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/build-bicep-files.js +46 -0
- package/dist/browser/serialization/bicep/file-layout/build-bicep-files.js.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/deployment-planning.d.ts +19 -0
- package/dist/browser/serialization/bicep/file-layout/deployment-planning.d.ts.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/deployment-planning.js +68 -0
- package/dist/browser/serialization/bicep/file-layout/deployment-planning.js.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/deployment-resource-utils.d.ts +8 -0
- package/dist/browser/serialization/bicep/file-layout/deployment-resource-utils.d.ts.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/deployment-resource-utils.js +67 -0
- package/dist/browser/serialization/bicep/file-layout/deployment-resource-utils.js.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/file-dependencies.d.ts +4 -0
- package/dist/browser/serialization/bicep/file-layout/file-dependencies.d.ts.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/file-dependencies.js +32 -0
- package/dist/browser/serialization/bicep/file-layout/file-dependencies.js.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/file-paths.d.ts +3 -0
- package/dist/browser/serialization/bicep/file-layout/file-paths.d.ts.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/file-paths.js +46 -0
- package/dist/browser/serialization/bicep/file-layout/file-paths.js.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/file-preparation.d.ts +34 -0
- package/dist/browser/serialization/bicep/file-layout/file-preparation.d.ts.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/file-preparation.js +140 -0
- package/dist/browser/serialization/bicep/file-layout/file-preparation.js.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/reference-wiring.d.ts +3 -0
- package/dist/browser/serialization/bicep/file-layout/reference-wiring.d.ts.map +1 -0
- package/dist/browser/serialization/bicep/file-layout/reference-wiring.js +225 -0
- package/dist/browser/serialization/bicep/file-layout/reference-wiring.js.map +1 -0
- package/dist/browser/serialization/bicep/index.d.ts +2 -0
- package/dist/browser/serialization/bicep/index.d.ts.map +1 -0
- package/dist/browser/serialization/bicep/index.js +4 -0
- package/dist/browser/serialization/bicep/index.js.map +1 -0
- package/dist/browser/serialization/bicep/render.d.ts +11 -0
- package/dist/browser/serialization/bicep/render.d.ts.map +1 -0
- package/dist/browser/serialization/bicep/render.js +293 -0
- package/dist/browser/serialization/bicep/render.js.map +1 -0
- package/dist/browser/serialization/{json/encoding.d.ts → encoding.d.ts} +1 -1
- package/dist/browser/serialization/encoding.d.ts.map +1 -0
- package/dist/browser/serialization/{json/encoding.js → encoding.js} +2 -12
- package/dist/browser/serialization/encoding.js.map +1 -0
- package/dist/browser/serialization/{json/util.d.ts → identifiers.d.ts} +1 -1
- package/dist/browser/serialization/identifiers.d.ts.map +1 -0
- package/dist/browser/serialization/{json/util.js → identifiers.js} +1 -1
- package/dist/browser/serialization/identifiers.js.map +1 -0
- package/dist/browser/serialization/index.d.ts +1 -1
- package/dist/browser/serialization/index.d.ts.map +1 -1
- package/dist/browser/serialization/index.js.map +1 -1
- package/dist/browser/serialization/json/deserialize.d.ts.map +1 -1
- package/dist/browser/serialization/json/deserialize.js +131 -39
- package/dist/browser/serialization/json/deserialize.js.map +1 -1
- package/dist/browser/serialization/json/serialize.d.ts +1 -1
- package/dist/browser/serialization/json/serialize.d.ts.map +1 -1
- package/dist/browser/serialization/json/serialize.js +5 -360
- package/dist/browser/serialization/json/serialize.js.map +1 -1
- package/dist/browser/serialization/pluralize-config.d.ts.map +1 -0
- package/dist/browser/serialization/pluralize-config.js.map +1 -0
- package/dist/browser/serialization/symbol-map.d.ts +10 -0
- package/dist/browser/serialization/symbol-map.d.ts.map +1 -0
- package/dist/browser/serialization/symbol-map.js +40 -0
- package/dist/browser/serialization/symbol-map.js.map +1 -0
- package/dist/browser/shape/shape.d.ts +4 -4
- package/dist/browser/shape/shape.js +2 -2
- package/dist/browser/shape/shape.js.map +1 -1
- package/dist/commonjs/constructs/built-in-resources/resource-group.d.ts +7 -1
- package/dist/commonjs/constructs/built-in-resources/resource-group.d.ts.map +1 -1
- package/dist/commonjs/constructs/built-in-resources/resource-group.js +27 -6
- package/dist/commonjs/constructs/built-in-resources/resource-group.js.map +2 -2
- package/dist/commonjs/constructs/output.d.ts +1 -1
- package/dist/commonjs/constructs/output.d.ts.map +1 -1
- package/dist/commonjs/constructs/output.js.map +1 -1
- package/dist/commonjs/constructs/parameter.d.ts +1 -1
- package/dist/commonjs/constructs/parameter.d.ts.map +1 -1
- package/dist/commonjs/constructs/parameter.js.map +1 -1
- package/dist/commonjs/constructs/resource/resource-query.d.ts +3 -1
- package/dist/commonjs/constructs/resource/resource-query.d.ts.map +1 -1
- package/dist/commonjs/constructs/resource/resource-query.js +11 -0
- package/dist/commonjs/constructs/resource/resource-query.js.map +2 -2
- package/dist/commonjs/constructs/resource/resource-relationships.d.ts +9 -0
- package/dist/commonjs/constructs/resource/resource-relationships.d.ts.map +1 -0
- package/dist/commonjs/constructs/resource/resource-relationships.js +59 -0
- package/dist/commonjs/constructs/resource/resource-relationships.js.map +7 -0
- package/dist/commonjs/constructs/resource/resource.d.ts +11 -17
- package/dist/commonjs/constructs/resource/resource.d.ts.map +1 -1
- package/dist/commonjs/constructs/resource/resource.js +57 -35
- package/dist/commonjs/constructs/resource/resource.js.map +2 -2
- package/dist/commonjs/constructs/stack.d.ts +2 -16
- package/dist/commonjs/constructs/stack.d.ts.map +1 -1
- package/dist/commonjs/constructs/stack.js.map +2 -2
- package/dist/commonjs/expression/ast-nodes.d.ts +1 -1
- package/dist/commonjs/expression/ast-nodes.d.ts.map +1 -1
- package/dist/commonjs/expression/ast-nodes.js.map +1 -1
- package/dist/commonjs/expression/expressions.d.ts +2 -9
- package/dist/commonjs/expression/expressions.d.ts.map +1 -1
- package/dist/commonjs/expression/expressions.js.map +2 -2
- package/dist/commonjs/expression/utils.d.ts +5 -0
- package/dist/commonjs/expression/utils.d.ts.map +1 -0
- package/dist/commonjs/expression/utils.js +43 -0
- package/dist/commonjs/expression/utils.js.map +7 -0
- package/dist/commonjs/index.d.ts +4 -4
- package/dist/commonjs/index.d.ts.map +1 -1
- package/dist/commonjs/index.js.map +2 -2
- package/dist/commonjs/internal.d.ts +2 -5
- package/dist/commonjs/internal.d.ts.map +1 -1
- package/dist/commonjs/internal.js +3 -9
- package/dist/commonjs/internal.js.map +2 -2
- package/dist/commonjs/naming/name-validation.d.ts +15 -0
- package/dist/commonjs/naming/name-validation.d.ts.map +1 -0
- package/dist/commonjs/naming/name-validation.js +74 -0
- package/dist/commonjs/naming/name-validation.js.map +7 -0
- package/dist/commonjs/naming/naming-policy.d.ts +7 -7
- package/dist/commonjs/naming/naming-policy.d.ts.map +1 -1
- package/dist/commonjs/naming/naming-policy.js +136 -26
- package/dist/commonjs/naming/naming-policy.js.map +2 -2
- package/dist/commonjs/naming/naming-rules.d.ts +12 -11
- package/dist/commonjs/naming/naming-rules.d.ts.map +1 -1
- package/dist/commonjs/naming/naming-rules.js +4 -11
- package/dist/commonjs/naming/naming-rules.js.map +2 -2
- package/dist/commonjs/package.json +1 -1
- package/dist/{browser/serialization/json/lower.d.ts → commonjs/serialization/arm-object-conversion.d.ts} +11 -11
- package/dist/commonjs/serialization/arm-object-conversion.d.ts.map +1 -0
- package/dist/commonjs/serialization/{json/lower.js → arm-object-conversion.js} +15 -15
- package/dist/commonjs/serialization/arm-object-conversion.js.map +7 -0
- package/dist/commonjs/serialization/ast/declaration-builder.d.ts +10 -0
- package/dist/commonjs/serialization/ast/declaration-builder.d.ts.map +1 -0
- package/dist/commonjs/serialization/ast/declaration-builder.js +274 -0
- package/dist/commonjs/serialization/ast/declaration-builder.js.map +7 -0
- package/dist/commonjs/serialization/ast/declaration-dependencies.d.ts +18 -0
- package/dist/commonjs/serialization/ast/declaration-dependencies.d.ts.map +1 -0
- package/dist/commonjs/serialization/ast/declaration-dependencies.js +109 -0
- package/dist/commonjs/serialization/ast/declaration-dependencies.js.map +7 -0
- package/dist/commonjs/serialization/ast/expression-builder.d.ts +14 -0
- package/dist/commonjs/serialization/ast/expression-builder.d.ts.map +1 -0
- package/dist/commonjs/serialization/ast/expression-builder.js +316 -0
- package/dist/commonjs/serialization/ast/expression-builder.js.map +7 -0
- package/dist/commonjs/serialization/ast/expression-restorer.d.ts +8 -0
- package/dist/commonjs/serialization/ast/expression-restorer.d.ts.map +1 -0
- package/dist/commonjs/serialization/ast/expression-restorer.js +193 -0
- package/dist/commonjs/serialization/ast/expression-restorer.js.map +7 -0
- package/dist/commonjs/serialization/ast/expression-rewriter.d.ts +29 -0
- package/dist/commonjs/serialization/ast/expression-rewriter.d.ts.map +1 -0
- package/dist/commonjs/serialization/ast/expression-rewriter.js +270 -0
- package/dist/commonjs/serialization/ast/expression-rewriter.js.map +7 -0
- package/dist/commonjs/serialization/ast/expression-walker.d.ts +16 -0
- package/dist/commonjs/serialization/ast/expression-walker.d.ts.map +1 -0
- package/dist/commonjs/serialization/ast/expression-walker.js +165 -0
- package/dist/commonjs/serialization/ast/expression-walker.js.map +7 -0
- package/dist/commonjs/serialization/ast/generated/ast.d.ts.map +1 -0
- package/dist/commonjs/serialization/{contract → ast}/generated/ast.js.map +1 -1
- package/dist/commonjs/serialization/ast/index.d.ts +7 -0
- package/dist/commonjs/serialization/ast/index.d.ts.map +1 -0
- package/dist/commonjs/serialization/{contract → ast}/index.js +3 -3
- package/dist/commonjs/serialization/ast/index.js.map +7 -0
- package/dist/commonjs/serialization/ast/resource-utils.d.ts +10 -0
- package/dist/commonjs/serialization/ast/resource-utils.d.ts.map +1 -0
- package/dist/commonjs/serialization/ast/resource-utils.js +71 -0
- package/dist/commonjs/serialization/ast/resource-utils.js.map +7 -0
- package/dist/commonjs/serialization/bicep/file-layout/authored-context.d.ts +12 -0
- package/dist/commonjs/serialization/bicep/file-layout/authored-context.d.ts.map +1 -0
- package/dist/commonjs/serialization/bicep/file-layout/authored-context.js +74 -0
- package/dist/commonjs/serialization/bicep/file-layout/authored-context.js.map +7 -0
- package/dist/commonjs/serialization/bicep/file-layout/bicep-namer.d.ts +11 -0
- package/dist/commonjs/serialization/bicep/file-layout/bicep-namer.d.ts.map +1 -0
- package/dist/commonjs/serialization/bicep/file-layout/bicep-namer.js +130 -0
- package/dist/commonjs/serialization/bicep/file-layout/bicep-namer.js.map +7 -0
- package/dist/commonjs/serialization/bicep/file-layout/build-bicep-files.d.ts +7 -0
- package/dist/commonjs/serialization/bicep/file-layout/build-bicep-files.d.ts.map +1 -0
- package/dist/commonjs/serialization/bicep/file-layout/build-bicep-files.js +71 -0
- package/dist/commonjs/serialization/bicep/file-layout/build-bicep-files.js.map +7 -0
- package/dist/commonjs/serialization/bicep/file-layout/deployment-planning.d.ts +19 -0
- package/dist/commonjs/serialization/bicep/file-layout/deployment-planning.d.ts.map +1 -0
- package/dist/commonjs/serialization/bicep/file-layout/deployment-planning.js +80 -0
- package/dist/commonjs/serialization/bicep/file-layout/deployment-planning.js.map +7 -0
- package/dist/commonjs/serialization/bicep/file-layout/deployment-resource-utils.d.ts +8 -0
- package/dist/commonjs/serialization/bicep/file-layout/deployment-resource-utils.d.ts.map +1 -0
- package/dist/commonjs/serialization/bicep/file-layout/deployment-resource-utils.js +91 -0
- package/dist/commonjs/serialization/bicep/file-layout/deployment-resource-utils.js.map +7 -0
- package/dist/commonjs/serialization/bicep/file-layout/file-dependencies.d.ts +4 -0
- package/dist/commonjs/serialization/bicep/file-layout/file-dependencies.d.ts.map +1 -0
- package/dist/commonjs/serialization/bicep/file-layout/file-dependencies.js +57 -0
- package/dist/commonjs/serialization/bicep/file-layout/file-dependencies.js.map +7 -0
- package/dist/commonjs/serialization/bicep/file-layout/file-paths.d.ts +3 -0
- package/dist/commonjs/serialization/bicep/file-layout/file-paths.d.ts.map +1 -0
- package/dist/commonjs/serialization/bicep/file-layout/file-paths.js +70 -0
- package/dist/commonjs/serialization/bicep/file-layout/file-paths.js.map +7 -0
- package/dist/commonjs/serialization/bicep/file-layout/file-preparation.d.ts +34 -0
- package/dist/commonjs/serialization/bicep/file-layout/file-preparation.d.ts.map +1 -0
- package/dist/commonjs/serialization/bicep/file-layout/file-preparation.js +190 -0
- package/dist/commonjs/serialization/bicep/file-layout/file-preparation.js.map +7 -0
- package/dist/commonjs/serialization/bicep/file-layout/reference-wiring.d.ts +3 -0
- package/dist/commonjs/serialization/bicep/file-layout/reference-wiring.d.ts.map +1 -0
- package/dist/commonjs/serialization/bicep/file-layout/reference-wiring.js +241 -0
- package/dist/commonjs/serialization/bicep/file-layout/reference-wiring.js.map +7 -0
- package/dist/commonjs/serialization/bicep/index.d.ts +2 -0
- package/dist/commonjs/serialization/bicep/index.d.ts.map +1 -0
- package/dist/commonjs/serialization/bicep/index.js +28 -0
- package/dist/commonjs/serialization/bicep/index.js.map +7 -0
- package/dist/commonjs/serialization/bicep/render.d.ts +11 -0
- package/dist/commonjs/serialization/bicep/render.d.ts.map +1 -0
- package/dist/commonjs/serialization/bicep/render.js +312 -0
- package/dist/commonjs/serialization/bicep/render.js.map +7 -0
- package/dist/commonjs/serialization/{json/encoding.d.ts → encoding.d.ts} +1 -1
- package/dist/commonjs/serialization/encoding.d.ts.map +1 -0
- package/dist/commonjs/serialization/{json/encoding.js → encoding.js} +2 -12
- package/dist/commonjs/serialization/encoding.js.map +7 -0
- package/dist/commonjs/serialization/{json/util.d.ts → identifiers.d.ts} +1 -1
- package/dist/commonjs/serialization/identifiers.d.ts.map +1 -0
- package/dist/commonjs/serialization/{json/util.js → identifiers.js} +4 -4
- package/dist/commonjs/serialization/{json/util.js.map → identifiers.js.map} +1 -1
- package/dist/commonjs/serialization/index.d.ts +1 -1
- package/dist/commonjs/serialization/index.d.ts.map +1 -1
- package/dist/commonjs/serialization/index.js.map +1 -1
- package/dist/commonjs/serialization/json/deserialize.d.ts.map +1 -1
- package/dist/commonjs/serialization/json/deserialize.js +115 -44
- package/dist/commonjs/serialization/json/deserialize.js.map +2 -2
- package/dist/commonjs/serialization/json/serialize.d.ts +1 -1
- package/dist/commonjs/serialization/json/serialize.d.ts.map +1 -1
- package/dist/commonjs/serialization/json/serialize.js +6 -308
- package/dist/commonjs/serialization/json/serialize.js.map +3 -3
- package/dist/commonjs/serialization/pluralize-config.d.ts.map +1 -0
- package/dist/commonjs/serialization/{json/pluralize-config.js.map → pluralize-config.js.map} +1 -1
- package/dist/commonjs/serialization/symbol-map.d.ts +10 -0
- package/dist/commonjs/serialization/symbol-map.d.ts.map +1 -0
- package/dist/commonjs/serialization/symbol-map.js +72 -0
- package/dist/commonjs/serialization/symbol-map.js.map +7 -0
- package/dist/commonjs/shape/shape.d.ts +4 -4
- package/dist/commonjs/shape/shape.js.map +1 -1
- package/dist/commonjs/tsdoc-metadata.json +1 -1
- package/dist/esm/constructs/built-in-resources/resource-group.d.ts +7 -1
- package/dist/esm/constructs/built-in-resources/resource-group.d.ts.map +1 -1
- package/dist/esm/constructs/built-in-resources/resource-group.js +26 -6
- package/dist/esm/constructs/built-in-resources/resource-group.js.map +1 -1
- package/dist/esm/constructs/output.d.ts +1 -1
- package/dist/esm/constructs/output.d.ts.map +1 -1
- package/dist/esm/constructs/output.js.map +1 -1
- package/dist/esm/constructs/parameter.d.ts +1 -1
- package/dist/esm/constructs/parameter.d.ts.map +1 -1
- package/dist/esm/constructs/parameter.js.map +1 -1
- package/dist/esm/constructs/resource/resource-query.d.ts +3 -1
- package/dist/esm/constructs/resource/resource-query.d.ts.map +1 -1
- package/dist/esm/constructs/resource/resource-query.js +10 -0
- package/dist/esm/constructs/resource/resource-query.js.map +1 -1
- package/dist/esm/constructs/resource/resource-relationships.d.ts +9 -0
- package/dist/esm/constructs/resource/resource-relationships.d.ts.map +1 -0
- package/dist/esm/constructs/resource/resource-relationships.js +35 -0
- package/dist/esm/constructs/resource/resource-relationships.js.map +1 -0
- package/dist/esm/constructs/resource/resource.d.ts +11 -17
- package/dist/esm/constructs/resource/resource.d.ts.map +1 -1
- package/dist/esm/constructs/resource/resource.js +70 -28
- package/dist/esm/constructs/resource/resource.js.map +1 -1
- package/dist/esm/constructs/stack.d.ts +2 -16
- package/dist/esm/constructs/stack.d.ts.map +1 -1
- package/dist/esm/constructs/stack.js +1 -15
- package/dist/esm/constructs/stack.js.map +1 -1
- package/dist/esm/expression/ast-nodes.d.ts +1 -1
- package/dist/esm/expression/ast-nodes.d.ts.map +1 -1
- package/dist/esm/expression/ast-nodes.js.map +1 -1
- package/dist/esm/expression/expressions.d.ts +2 -9
- package/dist/esm/expression/expressions.d.ts.map +1 -1
- package/dist/esm/expression/expressions.js +2 -9
- package/dist/esm/expression/expressions.js.map +1 -1
- package/dist/esm/expression/utils.d.ts +5 -0
- package/dist/esm/expression/utils.d.ts.map +1 -0
- package/dist/esm/expression/utils.js +25 -0
- package/dist/esm/expression/utils.js.map +1 -0
- package/dist/esm/index.d.ts +4 -4
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal.d.ts +2 -5
- package/dist/esm/internal.d.ts.map +1 -1
- package/dist/esm/internal.js +1 -3
- package/dist/esm/internal.js.map +1 -1
- package/dist/esm/naming/name-validation.d.ts +15 -0
- package/dist/esm/naming/name-validation.d.ts.map +1 -0
- package/dist/esm/naming/name-validation.js +82 -0
- package/dist/esm/naming/name-validation.js.map +1 -0
- package/dist/esm/naming/naming-policy.d.ts +7 -7
- package/dist/esm/naming/naming-policy.d.ts.map +1 -1
- package/dist/esm/naming/naming-policy.js +166 -33
- package/dist/esm/naming/naming-policy.js.map +1 -1
- package/dist/esm/naming/naming-rules.d.ts +12 -11
- package/dist/esm/naming/naming-rules.d.ts.map +1 -1
- package/dist/esm/naming/naming-rules.js +2 -9
- package/dist/esm/naming/naming-rules.js.map +1 -1
- package/dist/esm/package.json +1 -1
- package/dist/{commonjs/serialization/json/lower.d.ts → esm/serialization/arm-object-conversion.d.ts} +11 -11
- package/dist/esm/serialization/arm-object-conversion.d.ts.map +1 -0
- package/dist/{browser/serialization/json/lower.js → esm/serialization/arm-object-conversion.js} +20 -20
- package/dist/esm/serialization/arm-object-conversion.js.map +1 -0
- package/dist/esm/serialization/ast/declaration-builder.d.ts +10 -0
- package/dist/esm/serialization/ast/declaration-builder.d.ts.map +1 -0
- package/dist/esm/serialization/ast/declaration-builder.js +265 -0
- package/dist/esm/serialization/ast/declaration-builder.js.map +1 -0
- package/dist/esm/serialization/ast/declaration-dependencies.d.ts +18 -0
- package/dist/esm/serialization/ast/declaration-dependencies.d.ts.map +1 -0
- package/dist/esm/serialization/ast/declaration-dependencies.js +96 -0
- package/dist/esm/serialization/ast/declaration-dependencies.js.map +1 -0
- package/dist/esm/serialization/ast/expression-builder.d.ts +14 -0
- package/dist/esm/serialization/ast/expression-builder.d.ts.map +1 -0
- package/dist/esm/serialization/ast/expression-builder.js +313 -0
- package/dist/esm/serialization/ast/expression-builder.js.map +1 -0
- package/dist/esm/serialization/ast/expression-restorer.d.ts +8 -0
- package/dist/esm/serialization/ast/expression-restorer.d.ts.map +1 -0
- package/dist/esm/serialization/ast/expression-restorer.js +162 -0
- package/dist/esm/serialization/ast/expression-restorer.js.map +1 -0
- package/dist/esm/serialization/ast/expression-rewriter.d.ts +29 -0
- package/dist/esm/serialization/ast/expression-rewriter.d.ts.map +1 -0
- package/dist/esm/serialization/ast/expression-rewriter.js +257 -0
- package/dist/esm/serialization/ast/expression-rewriter.js.map +1 -0
- package/dist/esm/serialization/ast/expression-walker.d.ts +16 -0
- package/dist/esm/serialization/ast/expression-walker.d.ts.map +1 -0
- package/dist/esm/serialization/ast/expression-walker.js +154 -0
- package/dist/esm/serialization/ast/expression-walker.js.map +1 -0
- package/dist/esm/serialization/ast/generated/ast.d.ts.map +1 -0
- package/dist/esm/serialization/ast/generated/ast.js.map +1 -0
- package/dist/esm/serialization/ast/index.d.ts +7 -0
- package/dist/esm/serialization/ast/index.d.ts.map +1 -0
- package/dist/esm/serialization/ast/index.js.map +1 -0
- package/dist/esm/serialization/ast/resource-utils.d.ts +10 -0
- package/dist/esm/serialization/ast/resource-utils.d.ts.map +1 -0
- package/dist/esm/serialization/ast/resource-utils.js +52 -0
- package/dist/esm/serialization/ast/resource-utils.js.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/authored-context.d.ts +12 -0
- package/dist/esm/serialization/bicep/file-layout/authored-context.d.ts.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/authored-context.js +57 -0
- package/dist/esm/serialization/bicep/file-layout/authored-context.js.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/bicep-namer.d.ts +11 -0
- package/dist/esm/serialization/bicep/file-layout/bicep-namer.d.ts.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/bicep-namer.js +100 -0
- package/dist/esm/serialization/bicep/file-layout/bicep-namer.js.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/build-bicep-files.d.ts +7 -0
- package/dist/esm/serialization/bicep/file-layout/build-bicep-files.d.ts.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/build-bicep-files.js +46 -0
- package/dist/esm/serialization/bicep/file-layout/build-bicep-files.js.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/deployment-planning.d.ts +19 -0
- package/dist/esm/serialization/bicep/file-layout/deployment-planning.d.ts.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/deployment-planning.js +68 -0
- package/dist/esm/serialization/bicep/file-layout/deployment-planning.js.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/deployment-resource-utils.d.ts +8 -0
- package/dist/esm/serialization/bicep/file-layout/deployment-resource-utils.d.ts.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/deployment-resource-utils.js +67 -0
- package/dist/esm/serialization/bicep/file-layout/deployment-resource-utils.js.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/file-dependencies.d.ts +4 -0
- package/dist/esm/serialization/bicep/file-layout/file-dependencies.d.ts.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/file-dependencies.js +32 -0
- package/dist/esm/serialization/bicep/file-layout/file-dependencies.js.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/file-paths.d.ts +3 -0
- package/dist/esm/serialization/bicep/file-layout/file-paths.d.ts.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/file-paths.js +46 -0
- package/dist/esm/serialization/bicep/file-layout/file-paths.js.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/file-preparation.d.ts +34 -0
- package/dist/esm/serialization/bicep/file-layout/file-preparation.d.ts.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/file-preparation.js +140 -0
- package/dist/esm/serialization/bicep/file-layout/file-preparation.js.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/reference-wiring.d.ts +3 -0
- package/dist/esm/serialization/bicep/file-layout/reference-wiring.d.ts.map +1 -0
- package/dist/esm/serialization/bicep/file-layout/reference-wiring.js +225 -0
- package/dist/esm/serialization/bicep/file-layout/reference-wiring.js.map +1 -0
- package/dist/esm/serialization/bicep/index.d.ts +2 -0
- package/dist/esm/serialization/bicep/index.d.ts.map +1 -0
- package/dist/esm/serialization/bicep/index.js +4 -0
- package/dist/esm/serialization/bicep/index.js.map +1 -0
- package/dist/esm/serialization/bicep/render.d.ts +11 -0
- package/dist/esm/serialization/bicep/render.d.ts.map +1 -0
- package/dist/esm/serialization/bicep/render.js +293 -0
- package/dist/esm/serialization/bicep/render.js.map +1 -0
- package/dist/esm/serialization/{json/encoding.d.ts → encoding.d.ts} +1 -1
- package/dist/esm/serialization/encoding.d.ts.map +1 -0
- package/dist/esm/serialization/{json/encoding.js → encoding.js} +2 -12
- package/dist/esm/serialization/encoding.js.map +1 -0
- package/dist/esm/serialization/{json/util.d.ts → identifiers.d.ts} +1 -1
- package/dist/esm/serialization/identifiers.d.ts.map +1 -0
- package/dist/esm/serialization/{json/util.js → identifiers.js} +1 -1
- package/dist/esm/serialization/identifiers.js.map +1 -0
- package/dist/esm/serialization/index.d.ts +1 -1
- package/dist/esm/serialization/index.d.ts.map +1 -1
- package/dist/esm/serialization/index.js.map +1 -1
- package/dist/esm/serialization/json/deserialize.d.ts.map +1 -1
- package/dist/esm/serialization/json/deserialize.js +131 -39
- package/dist/esm/serialization/json/deserialize.js.map +1 -1
- package/dist/esm/serialization/json/serialize.d.ts +1 -1
- package/dist/esm/serialization/json/serialize.d.ts.map +1 -1
- package/dist/esm/serialization/json/serialize.js +5 -360
- package/dist/esm/serialization/json/serialize.js.map +1 -1
- package/dist/esm/serialization/pluralize-config.d.ts.map +1 -0
- package/dist/esm/serialization/pluralize-config.js.map +1 -0
- package/dist/esm/serialization/symbol-map.d.ts +10 -0
- package/dist/esm/serialization/symbol-map.d.ts.map +1 -0
- package/dist/esm/serialization/symbol-map.js +40 -0
- package/dist/esm/serialization/symbol-map.js.map +1 -0
- package/dist/esm/shape/shape.d.ts +4 -4
- package/dist/esm/shape/shape.js +2 -2
- package/dist/esm/shape/shape.js.map +1 -1
- package/package.json +3 -2
- package/dist/browser/serialization/contract/generated/ast.d.ts.map +0 -1
- package/dist/browser/serialization/contract/generated/ast.js.map +0 -1
- package/dist/browser/serialization/contract/index.d.ts +0 -2
- package/dist/browser/serialization/contract/index.d.ts.map +0 -1
- package/dist/browser/serialization/contract/index.js.map +0 -1
- package/dist/browser/serialization/json/encoding.d.ts.map +0 -1
- package/dist/browser/serialization/json/encoding.js.map +0 -1
- package/dist/browser/serialization/json/expression.d.ts +0 -32
- package/dist/browser/serialization/json/expression.d.ts.map +0 -1
- package/dist/browser/serialization/json/expression.js +0 -494
- package/dist/browser/serialization/json/expression.js.map +0 -1
- package/dist/browser/serialization/json/lower.d.ts.map +0 -1
- package/dist/browser/serialization/json/lower.js.map +0 -1
- package/dist/browser/serialization/json/pluralize-config.d.ts.map +0 -1
- package/dist/browser/serialization/json/pluralize-config.js.map +0 -1
- package/dist/browser/serialization/json/util.d.ts.map +0 -1
- package/dist/browser/serialization/json/util.js.map +0 -1
- package/dist/browser/serialization/utils.d.ts +0 -3
- package/dist/browser/serialization/utils.d.ts.map +0 -1
- package/dist/browser/serialization/utils.js +0 -146
- package/dist/browser/serialization/utils.js.map +0 -1
- package/dist/commonjs/serialization/contract/generated/ast.d.ts.map +0 -1
- package/dist/commonjs/serialization/contract/index.d.ts +0 -2
- package/dist/commonjs/serialization/contract/index.d.ts.map +0 -1
- package/dist/commonjs/serialization/contract/index.js.map +0 -7
- package/dist/commonjs/serialization/json/encoding.d.ts.map +0 -1
- package/dist/commonjs/serialization/json/encoding.js.map +0 -7
- package/dist/commonjs/serialization/json/expression.d.ts +0 -32
- package/dist/commonjs/serialization/json/expression.d.ts.map +0 -1
- package/dist/commonjs/serialization/json/expression.js +0 -509
- package/dist/commonjs/serialization/json/expression.js.map +0 -7
- package/dist/commonjs/serialization/json/lower.d.ts.map +0 -1
- package/dist/commonjs/serialization/json/lower.js.map +0 -7
- package/dist/commonjs/serialization/json/pluralize-config.d.ts.map +0 -1
- package/dist/commonjs/serialization/json/util.d.ts.map +0 -1
- package/dist/commonjs/serialization/utils.d.ts +0 -3
- package/dist/commonjs/serialization/utils.d.ts.map +0 -1
- package/dist/commonjs/serialization/utils.js +0 -169
- package/dist/commonjs/serialization/utils.js.map +0 -7
- package/dist/esm/serialization/contract/generated/ast.d.ts.map +0 -1
- package/dist/esm/serialization/contract/generated/ast.js.map +0 -1
- package/dist/esm/serialization/contract/index.d.ts +0 -2
- package/dist/esm/serialization/contract/index.d.ts.map +0 -1
- package/dist/esm/serialization/contract/index.js.map +0 -1
- package/dist/esm/serialization/json/encoding.d.ts.map +0 -1
- package/dist/esm/serialization/json/encoding.js.map +0 -1
- package/dist/esm/serialization/json/expression.d.ts +0 -32
- package/dist/esm/serialization/json/expression.d.ts.map +0 -1
- package/dist/esm/serialization/json/expression.js +0 -494
- package/dist/esm/serialization/json/expression.js.map +0 -1
- package/dist/esm/serialization/json/lower.d.ts.map +0 -1
- package/dist/esm/serialization/json/lower.js.map +0 -1
- package/dist/esm/serialization/json/pluralize-config.d.ts.map +0 -1
- package/dist/esm/serialization/json/pluralize-config.js.map +0 -1
- package/dist/esm/serialization/json/util.d.ts.map +0 -1
- package/dist/esm/serialization/json/util.js.map +0 -1
- package/dist/esm/serialization/utils.d.ts +0 -3
- package/dist/esm/serialization/utils.d.ts.map +0 -1
- package/dist/esm/serialization/utils.js +0 -146
- package/dist/esm/serialization/utils.js.map +0 -1
- /package/dist/browser/serialization/{contract → ast}/generated/ast.d.ts +0 -0
- /package/dist/browser/serialization/{contract → ast}/generated/ast.js +0 -0
- /package/dist/browser/serialization/{contract → ast}/index.js +0 -0
- /package/dist/browser/serialization/{json/pluralize-config.d.ts → pluralize-config.d.ts} +0 -0
- /package/dist/browser/serialization/{json/pluralize-config.js → pluralize-config.js} +0 -0
- /package/dist/commonjs/serialization/{contract → ast}/generated/ast.d.ts +0 -0
- /package/dist/commonjs/serialization/{contract → ast}/generated/ast.js +0 -0
- /package/dist/commonjs/serialization/{json/pluralize-config.d.ts → pluralize-config.d.ts} +0 -0
- /package/dist/commonjs/serialization/{json/pluralize-config.js → pluralize-config.js} +0 -0
- /package/dist/esm/serialization/{contract → ast}/generated/ast.d.ts +0 -0
- /package/dist/esm/serialization/{contract → ast}/generated/ast.js +0 -0
- /package/dist/esm/serialization/{contract → ast}/index.js +0 -0
- /package/dist/esm/serialization/{json/pluralize-config.d.ts → pluralize-config.d.ts} +0 -0
- /package/dist/esm/serialization/{json/pluralize-config.js → pluralize-config.js} +0 -0
|
@@ -1,169 +0,0 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __export = (target, all) => {
|
|
6
|
-
for (var name in all)
|
|
7
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
-
};
|
|
9
|
-
var __copyProps = (to, from, except, desc) => {
|
|
10
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
-
for (let key of __getOwnPropNames(from))
|
|
12
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
-
}
|
|
15
|
-
return to;
|
|
16
|
-
};
|
|
17
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
-
var utils_exports = {};
|
|
19
|
-
__export(utils_exports, {
|
|
20
|
-
collectDependenciesForDeclaration: () => collectDependenciesForDeclaration
|
|
21
|
-
});
|
|
22
|
-
module.exports = __toCommonJS(utils_exports);
|
|
23
|
-
function collectDependenciesForDeclaration(node) {
|
|
24
|
-
const identifiers = /* @__PURE__ */ new Set();
|
|
25
|
-
if ("valueType" in node) {
|
|
26
|
-
collectIdentifierIdsFromType(node.valueType, identifiers);
|
|
27
|
-
}
|
|
28
|
-
collectIdentifierIdsFromExpression(node.value, identifiers);
|
|
29
|
-
collectIdentifierIdsFromDecorators(node.decorators, identifiers);
|
|
30
|
-
return identifiers;
|
|
31
|
-
}
|
|
32
|
-
function collectIdentifierIdsFromDecorators(decorators, identifiers) {
|
|
33
|
-
for (const value of Object.values(decorators?.metadata ?? {})) {
|
|
34
|
-
collectIdentifierIdsFromExpression(value, identifiers);
|
|
35
|
-
}
|
|
36
|
-
for (const value of decorators?.allowed ?? []) {
|
|
37
|
-
collectIdentifierIdsFromExpression(value, identifiers);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
function collectIdentifierIdsFromType(type, identifiers) {
|
|
41
|
-
switch (type.kind) {
|
|
42
|
-
case "type-reference":
|
|
43
|
-
identifiers.add(type.name);
|
|
44
|
-
return;
|
|
45
|
-
case "union-type-member":
|
|
46
|
-
case "parameterized-type-argument":
|
|
47
|
-
collectIdentifierIdsFromType(type.valueType, identifiers);
|
|
48
|
-
return;
|
|
49
|
-
case "array-type":
|
|
50
|
-
collectIdentifierIdsFromType(type.item, identifiers);
|
|
51
|
-
return;
|
|
52
|
-
case "object-type-property":
|
|
53
|
-
case "object-type-additional-properties":
|
|
54
|
-
collectIdentifierIdsFromType(type.valueType, identifiers);
|
|
55
|
-
collectIdentifierIdsFromDecorators(type.decorators, identifiers);
|
|
56
|
-
return;
|
|
57
|
-
case "object-type":
|
|
58
|
-
for (const property of type.properties) {
|
|
59
|
-
collectIdentifierIdsFromType(property, identifiers);
|
|
60
|
-
}
|
|
61
|
-
if (type.additionalProperties !== void 0) {
|
|
62
|
-
collectIdentifierIdsFromType(type.additionalProperties, identifiers);
|
|
63
|
-
}
|
|
64
|
-
return;
|
|
65
|
-
case "union-type":
|
|
66
|
-
for (const member of type.members) {
|
|
67
|
-
collectIdentifierIdsFromType(member.valueType, identifiers);
|
|
68
|
-
}
|
|
69
|
-
return;
|
|
70
|
-
case "nullable-type":
|
|
71
|
-
collectIdentifierIdsFromType(type.base, identifiers);
|
|
72
|
-
return;
|
|
73
|
-
case "parameterized-type-instantiation":
|
|
74
|
-
collectIdentifierIdsFromType(type.base, identifiers);
|
|
75
|
-
for (const argument of type.args) {
|
|
76
|
-
collectIdentifierIdsFromType(argument.valueType, identifiers);
|
|
77
|
-
}
|
|
78
|
-
return;
|
|
79
|
-
case "primitive-type":
|
|
80
|
-
case "string-type-literal":
|
|
81
|
-
case "integer-type-literal":
|
|
82
|
-
case "boolean-type-literal":
|
|
83
|
-
case "null-type-literal":
|
|
84
|
-
return;
|
|
85
|
-
default: {
|
|
86
|
-
const exhaustive = type;
|
|
87
|
-
throw new Error(`Unsupported type kind: ${exhaustive.kind}`);
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
function collectIdentifierIdsFromExpression(expr, out, boundIdentifiers = /* @__PURE__ */ new Set()) {
|
|
92
|
-
switch (expr.kind) {
|
|
93
|
-
case "identifier":
|
|
94
|
-
if (!boundIdentifiers.has(expr.id)) out.add(expr.id);
|
|
95
|
-
break;
|
|
96
|
-
case "property-access":
|
|
97
|
-
collectIdentifierIdsFromExpression(expr.base, out, boundIdentifiers);
|
|
98
|
-
break;
|
|
99
|
-
case "array-access":
|
|
100
|
-
collectIdentifierIdsFromExpression(expr.base, out, boundIdentifiers);
|
|
101
|
-
collectIdentifierIdsFromExpression(expr.index, out, boundIdentifiers);
|
|
102
|
-
break;
|
|
103
|
-
case "function-call":
|
|
104
|
-
if (typeof expr.target !== "string") {
|
|
105
|
-
collectIdentifierIdsFromExpression(expr.target, out, boundIdentifiers);
|
|
106
|
-
}
|
|
107
|
-
for (const arg of expr.args) {
|
|
108
|
-
collectIdentifierIdsFromExpression(arg, out, boundIdentifiers);
|
|
109
|
-
}
|
|
110
|
-
break;
|
|
111
|
-
case "instance-function-call":
|
|
112
|
-
collectIdentifierIdsFromExpression(expr.base, out, boundIdentifiers);
|
|
113
|
-
for (const arg of expr.args) {
|
|
114
|
-
collectIdentifierIdsFromExpression(arg, out, boundIdentifiers);
|
|
115
|
-
}
|
|
116
|
-
break;
|
|
117
|
-
case "binary-operation":
|
|
118
|
-
collectIdentifierIdsFromExpression(expr.left, out, boundIdentifiers);
|
|
119
|
-
collectIdentifierIdsFromExpression(expr.right, out, boundIdentifiers);
|
|
120
|
-
break;
|
|
121
|
-
case "unary-operation":
|
|
122
|
-
collectIdentifierIdsFromExpression(expr.argument, out, boundIdentifiers);
|
|
123
|
-
break;
|
|
124
|
-
case "ternary-operation":
|
|
125
|
-
collectIdentifierIdsFromExpression(expr.condition, out, boundIdentifiers);
|
|
126
|
-
collectIdentifierIdsFromExpression(expr.trueValue, out, boundIdentifiers);
|
|
127
|
-
collectIdentifierIdsFromExpression(expr.falseValue, out, boundIdentifiers);
|
|
128
|
-
break;
|
|
129
|
-
case "if-condition":
|
|
130
|
-
collectIdentifierIdsFromExpression(expr.condition, out, boundIdentifiers);
|
|
131
|
-
collectIdentifierIdsFromExpression(expr.body, out, boundIdentifiers);
|
|
132
|
-
break;
|
|
133
|
-
case "for-expression": {
|
|
134
|
-
collectIdentifierIdsFromExpression(expr.collection, out, boundIdentifiers);
|
|
135
|
-
const loopBindings = new Set(boundIdentifiers);
|
|
136
|
-
loopBindings.add(expr.itemVariable);
|
|
137
|
-
if (expr.indexVariable !== void 0) {
|
|
138
|
-
loopBindings.add(expr.indexVariable);
|
|
139
|
-
}
|
|
140
|
-
collectIdentifierIdsFromExpression(expr.body, out, loopBindings);
|
|
141
|
-
break;
|
|
142
|
-
}
|
|
143
|
-
case "interpolated-string":
|
|
144
|
-
for (const segment of expr.segments) {
|
|
145
|
-
collectIdentifierIdsFromExpression(segment, out, boundIdentifiers);
|
|
146
|
-
}
|
|
147
|
-
break;
|
|
148
|
-
case "object":
|
|
149
|
-
for (const value of Object.values(expr.value)) {
|
|
150
|
-
collectIdentifierIdsFromExpression(value, out, boundIdentifiers);
|
|
151
|
-
}
|
|
152
|
-
break;
|
|
153
|
-
case "array":
|
|
154
|
-
for (const item of expr.items) {
|
|
155
|
-
collectIdentifierIdsFromExpression(item, out, boundIdentifiers);
|
|
156
|
-
}
|
|
157
|
-
break;
|
|
158
|
-
case "null":
|
|
159
|
-
case "boolean":
|
|
160
|
-
case "integer":
|
|
161
|
-
case "string":
|
|
162
|
-
break;
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
166
|
-
0 && (module.exports = {
|
|
167
|
-
collectDependenciesForDeclaration
|
|
168
|
-
});
|
|
169
|
-
//# sourceMappingURL=utils.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/serialization/utils.ts"],
|
|
4
|
-
"sourcesContent": ["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type {\n DecoratorsNode,\n ExpressionNode,\n ModuleDeclarationNode,\n OutputDeclarationNode,\n ResourceDeclarationNode,\n TypeNode,\n VariableDeclarationNode,\n} from \"./contract/index.js\";\n\nexport function collectDependenciesForDeclaration(\n node:\n | ResourceDeclarationNode\n | VariableDeclarationNode\n | OutputDeclarationNode\n | ModuleDeclarationNode,\n): Set<string> {\n const identifiers = new Set<string>();\n if (\"valueType\" in node) {\n collectIdentifierIdsFromType(node.valueType, identifiers);\n }\n collectIdentifierIdsFromExpression(node.value, identifiers);\n collectIdentifierIdsFromDecorators(node.decorators, identifiers);\n return identifiers;\n}\n\nfunction collectIdentifierIdsFromDecorators(\n decorators: DecoratorsNode | undefined,\n identifiers: Set<string>,\n): void {\n for (const value of Object.values(decorators?.metadata ?? {})) {\n collectIdentifierIdsFromExpression(value, identifiers);\n }\n for (const value of decorators?.allowed ?? []) {\n collectIdentifierIdsFromExpression(value, identifiers);\n }\n}\n\nfunction collectIdentifierIdsFromType(type: TypeNode, identifiers: Set<string>): void {\n switch (type.kind) {\n case \"type-reference\":\n identifiers.add(type.name);\n return;\n case \"union-type-member\":\n case \"parameterized-type-argument\":\n collectIdentifierIdsFromType(type.valueType, identifiers);\n return;\n case \"array-type\":\n collectIdentifierIdsFromType(type.item, identifiers);\n return;\n case \"object-type-property\":\n case \"object-type-additional-properties\":\n collectIdentifierIdsFromType(type.valueType, identifiers);\n collectIdentifierIdsFromDecorators(type.decorators, identifiers);\n return;\n case \"object-type\":\n for (const property of type.properties) {\n collectIdentifierIdsFromType(property, identifiers);\n }\n if (type.additionalProperties !== undefined) {\n collectIdentifierIdsFromType(type.additionalProperties, identifiers);\n }\n return;\n case \"union-type\":\n for (const member of type.members) {\n collectIdentifierIdsFromType(member.valueType, identifiers);\n }\n return;\n case \"nullable-type\":\n collectIdentifierIdsFromType(type.base, identifiers);\n return;\n case \"parameterized-type-instantiation\":\n collectIdentifierIdsFromType(type.base, identifiers);\n for (const argument of type.args) {\n collectIdentifierIdsFromType(argument.valueType, identifiers);\n }\n return;\n case \"primitive-type\":\n case \"string-type-literal\":\n case \"integer-type-literal\":\n case \"boolean-type-literal\":\n case \"null-type-literal\":\n return;\n default: {\n const exhaustive: never = type;\n throw new Error(`Unsupported type kind: ${(exhaustive as { kind: string }).kind}`);\n }\n }\n}\n\nfunction collectIdentifierIdsFromExpression(\n expr: ExpressionNode,\n out: Set<string>,\n boundIdentifiers: ReadonlySet<string> = new Set(),\n): void {\n switch (expr.kind) {\n case \"identifier\":\n if (!boundIdentifiers.has(expr.id)) out.add(expr.id);\n break;\n case \"property-access\":\n collectIdentifierIdsFromExpression(expr.base, out, boundIdentifiers);\n break;\n case \"array-access\":\n collectIdentifierIdsFromExpression(expr.base, out, boundIdentifiers);\n collectIdentifierIdsFromExpression(expr.index, out, boundIdentifiers);\n break;\n case \"function-call\":\n if (typeof expr.target !== \"string\") {\n collectIdentifierIdsFromExpression(expr.target, out, boundIdentifiers);\n }\n for (const arg of expr.args) {\n collectIdentifierIdsFromExpression(arg, out, boundIdentifiers);\n }\n break;\n case \"instance-function-call\":\n collectIdentifierIdsFromExpression(expr.base, out, boundIdentifiers);\n for (const arg of expr.args) {\n collectIdentifierIdsFromExpression(arg, out, boundIdentifiers);\n }\n break;\n case \"binary-operation\":\n collectIdentifierIdsFromExpression(expr.left, out, boundIdentifiers);\n collectIdentifierIdsFromExpression(expr.right, out, boundIdentifiers);\n break;\n case \"unary-operation\":\n collectIdentifierIdsFromExpression(expr.argument, out, boundIdentifiers);\n break;\n case \"ternary-operation\":\n collectIdentifierIdsFromExpression(expr.condition, out, boundIdentifiers);\n collectIdentifierIdsFromExpression(expr.trueValue, out, boundIdentifiers);\n collectIdentifierIdsFromExpression(expr.falseValue, out, boundIdentifiers);\n break;\n case \"if-condition\":\n collectIdentifierIdsFromExpression(expr.condition, out, boundIdentifiers);\n collectIdentifierIdsFromExpression(expr.body, out, boundIdentifiers);\n break;\n case \"for-expression\": {\n collectIdentifierIdsFromExpression(expr.collection, out, boundIdentifiers);\n const loopBindings = new Set(boundIdentifiers);\n loopBindings.add(expr.itemVariable);\n if (expr.indexVariable !== undefined) {\n loopBindings.add(expr.indexVariable);\n }\n collectIdentifierIdsFromExpression(expr.body, out, loopBindings);\n break;\n }\n case \"interpolated-string\":\n for (const segment of expr.segments) {\n collectIdentifierIdsFromExpression(segment, out, boundIdentifiers);\n }\n break;\n case \"object\":\n for (const value of Object.values(expr.value)) {\n collectIdentifierIdsFromExpression(value, out, boundIdentifiers);\n }\n break;\n case \"array\":\n for (const item of expr.items) {\n collectIdentifierIdsFromExpression(item, out, boundIdentifiers);\n }\n break;\n case \"null\":\n case \"boolean\":\n case \"integer\":\n case \"string\":\n break;\n }\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../../../../src/serialization/contract/generated/ast.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ast.js","sourceRoot":"","sources":["../../../../../src/serialization/contract/generated/ast.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAoGlC;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAA8C;IAC3E,GAAG,EAAE,IAAI;IACT,KAAK,EAAE,IAAI;IACX,IAAI,EAAE,IAAI;IACV,GAAG,EAAE,IAAI;IACT,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,IAAI;CACb,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,OAAO,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;AAClD,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * The deployment scope for a Bicep file.\n */\nexport type TargetScope = \"resourceGroup\" | \"subscription\" | \"managementGroup\" | \"tenant\";\n\n/**\n * The set of Bicep primitive type names.\n */\nexport type PrimitiveTypeName = \"any\" | \"array\" | \"bool\" | \"int\" | \"object\" | \"string\";\n\n/**\n * Binary operators supported in Bicep expressions.\n */\nexport type BinaryOperator =\n | \"%\"\n | \"*\"\n | \"+\"\n | \"-\"\n | \"/\"\n | \"<\"\n | \"<=\"\n | \"==\"\n | \"!=\"\n | \"=~\"\n | \"!~\"\n | \">\"\n | \">=\"\n | \"&&\"\n | \"||\"\n | \"??\";\n\n/**\n * Unary operators supported in Bicep expressions.\n */\nexport type UnaryOperator = \"!\" | \"-\";\n\n/**\n * Discriminated union of all expression node types.\n * This includes all ValueNode variants plus expression-specific variants.\n */\nexport type ExpressionNode =\n | NullValue\n | BooleanValue\n | IntegerValue\n | StringValue\n | ArrayValue\n | ObjectValue\n | IdentifierExpression\n | FunctionCallExpression\n | InstanceFunctionCallExpression\n | PropertyAccessExpression\n | ArrayAccessExpression\n | BinaryOperationExpression\n | UnaryOperationExpression\n | TernaryOperationExpression\n | IfConditionExpression\n | ForExpression\n | InterpolatedStringExpression;\n\n/**\n * Discriminated union of all type node kinds.\n */\nexport type TypeNode =\n | PrimitiveTypeNode\n | TypeReferenceNode\n | StringTypeLiteralNode\n | IntegerTypeLiteralNode\n | BooleanTypeLiteralNode\n | NullTypeLiteralNode\n | ArrayTypeNode\n | ObjectTypePropertyNode\n | ObjectTypeAdditionalPropertiesNode\n | ObjectTypeNode\n | UnionTypeMemberNode\n | UnionTypeNode\n | NullableTypeNode\n | ParameterizedTypeArgumentNode\n | ParameterizedTypeInstantiationNode;\n\n/**\n * An object body, optionally guarded by an `if` or produced by a `for`.\n */\nexport type DeclarableBodyNode = ObjectValue | IfConditionExpression | ForExpression;\n\n/**\n * Maps each Bicep primitive type name to its TypeScript authoring value type.\n *\n * Generated from TypeSpec and emitter mappings. Do not edit.\n */\nexport interface PrimitiveTypeMap {\n readonly any: unknown;\n readonly array: readonly unknown[];\n readonly bool: boolean;\n readonly int: number;\n readonly object: Record<string, unknown>;\n readonly string: string;\n}\n\n/**\n * Runtime lookup for PrimitiveTypeName values.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport const primitiveTypeNames: Readonly<Record<PrimitiveTypeName, true>> = {\n any: true,\n array: true,\n bool: true,\n int: true,\n object: true,\n string: true,\n};\n\n/**\n * Checks whether a string is a PrimitiveTypeName value. Generated from\n * TypeSpec. Do not edit.\n */\nexport function isPrimitiveTypeName(value: string): value is PrimitiveTypeName {\n return Object.hasOwn(primitiveTypeNames, value);\n}\n\n/**\n * Represents a single infrastructure unit in the serialization output.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface InfraNode {\n /**\n * The relative file path/name (e.g. \"main.bicep\", \"modules/storage.bicep\").\n */\n readonly fileName: string;\n /**\n * The deployment target scope. Defaults to \"resourceGroup\" if omitted.\n */\n readonly targetScope?: TargetScope;\n /**\n * Parameter declarations, keyed by Bicep identifier.\n */\n readonly parameters?: Record<string, ParameterDeclarationNode>;\n /**\n * Variable declarations, keyed by Bicep identifier.\n */\n readonly variables?: Record<string, VariableDeclarationNode>;\n /**\n * Output declarations, keyed by Bicep identifier.\n */\n readonly outputs?: Record<string, OutputDeclarationNode>;\n /**\n * Resource declarations, keyed by Bicep identifier.\n */\n readonly resources?: Record<string, ResourceDeclarationNode>;\n /**\n * Module declarations, keyed by Bicep identifier.\n */\n readonly modules?: Record<string, ModuleDeclarationNode>;\n}\n\n/**\n * A Bicep parameter declaration.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface ParameterDeclarationNode {\n readonly bicepIdentifier: string;\n readonly valueType: TypeNode;\n readonly defaultValue?: ExpressionNode;\n readonly decorators?: DecoratorsNode;\n}\n\n/**\n * A built-in primitive type (e.g. `string`, `int`, `bool`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface PrimitiveTypeNode {\n readonly kind: \"primitive-type\";\n readonly name: PrimitiveTypeName;\n}\n\n/**\n * A reference to a named/user-defined type.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface TypeReferenceNode {\n readonly kind: \"type-reference\";\n readonly name: string;\n}\n\n/**\n * A string literal used as a type (e.g. `'Standard_GRS'`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface StringTypeLiteralNode {\n readonly kind: \"string-type-literal\";\n readonly value: string;\n}\n\n/**\n * An integer literal used as a type.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface IntegerTypeLiteralNode {\n readonly kind: \"integer-type-literal\";\n readonly value: string;\n}\n\n/**\n * A boolean literal used as a type.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface BooleanTypeLiteralNode {\n readonly kind: \"boolean-type-literal\";\n readonly value: boolean;\n}\n\n/**\n * A null literal used as a type.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface NullTypeLiteralNode {\n readonly kind: \"null-type-literal\";\n readonly value: null;\n}\n\n/**\n * An array type (e.g. `string[]`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface ArrayTypeNode {\n readonly kind: \"array-type\";\n readonly item: TypeNode;\n}\n\n/**\n * A property within an object type definition.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface ObjectTypePropertyNode {\n readonly kind: \"object-type-property\";\n readonly key: string;\n readonly valueType: TypeNode;\n readonly optional?: boolean;\n readonly decorators?: DecoratorsNode;\n}\n\n/**\n * Decorator metadata that can be applied to declarations and type properties.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface DecoratorsNode {\n readonly description?: string;\n readonly secure?: true;\n readonly minValue?: number;\n readonly maxValue?: number;\n readonly minLength?: number;\n readonly maxLength?: number;\n readonly metadata?: Record<string, ExpressionNode>;\n readonly allowed?: readonly ExpressionNode[];\n readonly discriminator?: string;\n readonly sealed?: true;\n readonly export?: true;\n readonly batchSize?: number;\n}\n\n/**\n * A null literal value.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface NullValue {\n readonly kind: \"null\";\n readonly value: null;\n}\n\n/**\n * A boolean literal value.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface BooleanValue {\n readonly kind: \"boolean\";\n readonly value: boolean;\n}\n\n/**\n * An integer literal value.\n * Stored as a string to preserve 64-bit integer fidelity.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface IntegerValue {\n readonly kind: \"integer\";\n readonly value: string;\n}\n\n/**\n * A string literal value.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface StringValue {\n readonly kind: \"string\";\n readonly value: string;\n}\n\n/**\n * An array of expression nodes.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface ArrayValue {\n readonly kind: \"array\";\n readonly items: readonly ExpressionNode[];\n}\n\n/**\n * An object with named expression node properties.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface ObjectValue {\n readonly kind: \"object\";\n readonly value: Record<string, ExpressionNode>;\n}\n\n/**\n * A reference to a named identifier (variable, parameter, resource, etc.).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface IdentifierExpression {\n readonly kind: \"identifier\";\n readonly id: string;\n}\n\n/**\n * A top-level function call (e.g. `toLower(...)`, `concat(...)`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface FunctionCallExpression {\n readonly kind: \"function-call\";\n /**\n * Function name or an expression that resolves to a callable.\n */\n readonly target: string | ExpressionNode;\n readonly args: readonly ExpressionNode[];\n}\n\n/**\n * An instance method call (e.g. `base.method(...)`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface InstanceFunctionCallExpression {\n readonly kind: \"instance-function-call\";\n readonly base: ExpressionNode;\n readonly name: string;\n readonly args: readonly ExpressionNode[];\n}\n\n/**\n * Property access on an expression (e.g. `base.property` or `base.?property`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface PropertyAccessExpression {\n readonly kind: \"property-access\";\n readonly base: ExpressionNode;\n readonly property: string;\n readonly nullish: boolean;\n}\n\n/**\n * Array/index access on an expression (e.g. `base[index]` or `base[^index]`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface ArrayAccessExpression {\n readonly kind: \"array-access\";\n readonly base: ExpressionNode;\n readonly index: ExpressionNode;\n readonly nullish: boolean;\n readonly fromEnd: boolean;\n}\n\n/**\n * A binary operator expression (e.g. `a + b`, `a ?? b`, `a && b`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface BinaryOperationExpression {\n readonly kind: \"binary-operation\";\n readonly operator: BinaryOperator;\n readonly left: ExpressionNode;\n readonly right: ExpressionNode;\n}\n\n/**\n * A unary operator expression (e.g. `!enabled`, `-count`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface UnaryOperationExpression {\n readonly kind: \"unary-operation\";\n readonly operator: UnaryOperator;\n readonly argument: ExpressionNode;\n}\n\n/**\n * A ternary conditional expression (e.g. `condition ? whenTrue : whenFalse`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface TernaryOperationExpression {\n readonly kind: \"ternary-operation\";\n readonly condition: ExpressionNode;\n readonly trueValue: ExpressionNode;\n readonly falseValue: ExpressionNode;\n}\n\n/**\n * A conditional expression block (e.g. `if (enabled) { ... }`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface IfConditionExpression {\n readonly kind: \"if-condition\";\n readonly condition: ExpressionNode;\n readonly body: ExpressionNode;\n}\n\n/**\n * A `for` expression (e.g. `[for item in items: { ... }]`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface ForExpression {\n readonly kind: \"for-expression\";\n readonly itemVariable: string;\n readonly indexVariable?: string;\n readonly collection: ExpressionNode;\n readonly body: ExpressionNode;\n}\n\n/**\n * An interpolated string expression (e.g. `'prefix${expr}suffix'`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface InterpolatedStringExpression {\n readonly kind: \"interpolated-string\";\n readonly segments: readonly ExpressionNode[];\n}\n\n/**\n * The additional-properties clause of an object type (`*: T`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface ObjectTypeAdditionalPropertiesNode {\n readonly kind: \"object-type-additional-properties\";\n readonly valueType: TypeNode;\n readonly decorators?: DecoratorsNode;\n}\n\n/**\n * An object type with named properties and optional additional properties.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface ObjectTypeNode {\n readonly kind: \"object-type\";\n readonly properties: readonly ObjectTypePropertyNode[];\n readonly additionalProperties?: ObjectTypeAdditionalPropertiesNode;\n}\n\n/**\n * An individual member in a union type.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface UnionTypeMemberNode {\n readonly kind: \"union-type-member\";\n readonly valueType: TypeNode;\n}\n\n/**\n * A union type (e.g. `string | int`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface UnionTypeNode {\n readonly kind: \"union-type\";\n readonly members: readonly UnionTypeMemberNode[];\n}\n\n/**\n * A nullable type wrapper (e.g. `string?`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface NullableTypeNode {\n readonly kind: \"nullable-type\";\n readonly base: TypeNode;\n}\n\n/**\n * A type argument in a parameterized type instantiation.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface ParameterizedTypeArgumentNode {\n readonly kind: \"parameterized-type-argument\";\n readonly valueType: TypeNode;\n}\n\n/**\n * A parameterized type instantiation (e.g. `map<string>`).\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface ParameterizedTypeInstantiationNode {\n readonly kind: \"parameterized-type-instantiation\";\n readonly base: TypeNode;\n readonly args: readonly ParameterizedTypeArgumentNode[];\n}\n\n/**\n * A Bicep variable declaration.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface VariableDeclarationNode {\n readonly bicepIdentifier: string;\n readonly value: ExpressionNode;\n readonly decorators?: DecoratorsNode;\n}\n\n/**\n * A Bicep output declaration.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface OutputDeclarationNode {\n readonly bicepIdentifier: string;\n readonly valueType: TypeNode;\n readonly value: ExpressionNode;\n readonly decorators?: DecoratorsNode;\n}\n\n/**\n * A Bicep resource declaration.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface ResourceDeclarationNode {\n readonly bicepIdentifier: string;\n /**\n * The Azure resource type (e.g. \"Microsoft.Storage/storageAccounts\").\n */\n readonly type: string;\n /**\n * The API version (e.g. \"2024-01-01\").\n */\n readonly apiVersion: string;\n /**\n * Whether this references an existing resource (`existing` keyword).\n */\n readonly existing: boolean;\n /**\n * The resource body.\n */\n readonly value: DeclarableBodyNode;\n readonly decorators?: DecoratorsNode;\n}\n\n/**\n * A Bicep module declaration.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface ModuleDeclarationNode {\n readonly bicepIdentifier: string;\n /**\n * Relative path to the module file.\n */\n readonly path: string;\n /**\n * The module body.\n */\n readonly value: DeclarableBodyNode;\n readonly decorators?: DecoratorsNode;\n}\n\n/**\n * The root serialization document containing all infra nodes.\n *\n * Generated from TypeSpec. Do not edit.\n */\nexport interface SerializationDocument {\n /**\n * The collection of infra nodes that make up this deployment.\n */\n readonly infras: readonly InfraNode[];\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/serialization/contract/index.ts"],"names":[],"mappings":"AAGA,cAAc,oBAAoB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/serialization/contract/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,cAAc,oBAAoB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport * from \"./generated/ast.js\";\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"encoding.d.ts","sourceRoot":"","sources":["../../../../src/serialization/json/encoding.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAOV,uBAAuB,EACxB,MAAM,+BAA+B,CAAC;AAEvC,wBAAgB,eAAe,CAC7B,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,uBAAuB,EACjC,IAAI,GAAE,SAAS,MAAM,EAAO,GAC3B,OAAO,CA8BT;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,uBAAuB,EACjC,IAAI,GAAE,SAAS,MAAM,EAAO,GAC3B,OAAO,CAiCT"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"encoding.js","sourceRoot":"","sources":["../../../../src/serialization/json/encoding.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { isExpressionNode } from \"../../expression/ast-nodes.js\";\nimport { isExpression } from \"../../expression/expressions.js\";\nimport type {\n BytesEncodingDescriptor,\n DateTimeTextEncodingDescriptor,\n IntegerScalarName,\n NumericScalarName,\n NumericStringEncodingDescriptor,\n UnixTimestampEncodingDescriptor,\n ValueEncodingDescriptor,\n} from \"../../shape/value-encoding.js\";\n\nexport function encodeWireValue(\n value: unknown,\n encoding: ValueEncodingDescriptor,\n path: readonly string[] = [],\n): unknown {\n if (value === null || value === undefined) return value;\n if (isExpression(value) || isExpressionNode(value)) return value;\n\n switch (encoding.kind) {\n case \"date-time-text\":\n return encodeDateTimeText(value, encoding, path);\n case \"unix-timestamp\":\n return encodeUnixTimestamp(value, encoding, path);\n case \"duration-iso8601\":\n return requireIsoDuration(value, path);\n case \"duration-numeric\":\n return requireInteger(value, encoding.wire.scalar, path);\n case \"bytes\":\n return encodeBytes(value, encoding, path);\n case \"plain-date\":\n return encoding.clientMode === \"wire\"\n ? requirePlainDate(value, path)\n : encodePlainDate(value, path);\n case \"numeric-string\":\n return requireNumericString(value, encoding, path);\n case \"boolean-string\":\n if (encoding.clientMode === \"wire\") {\n return requireBooleanString(value, path);\n }\n if (typeof value !== \"boolean\") {\n fail(path, `Expected a boolean, got ${describe(value)}.`);\n }\n return String(value);\n }\n}\n\nexport function decodeWireValue(\n value: unknown,\n encoding: ValueEncodingDescriptor,\n path: readonly string[] = [],\n): unknown {\n if (value === null || value === undefined) return value;\n if (isExpression(value) || isExpressionNode(value)) return value;\n\n switch (encoding.kind) {\n case \"date-time-text\":\n return decodeDateTimeText(value, encoding, path);\n case \"unix-timestamp\": {\n const seconds = requireInteger(value, encoding.wire.scalar, path);\n if (encoding.clientMode === \"wire\") return seconds;\n const date = new Date(seconds * 1000);\n if (Number.isNaN(date.getTime())) {\n fail(path, \"Unix timestamp is outside the JavaScript Date range.\");\n }\n return date;\n }\n case \"duration-iso8601\":\n return requireIsoDuration(value, path);\n case \"duration-numeric\":\n return requireInteger(value, encoding.wire.scalar, path);\n case \"bytes\":\n return decodeBytes(value, encoding, path);\n case \"plain-date\": {\n const date = requirePlainDate(value, path);\n return encoding.clientMode === \"wire\" ? date : new Date(`${date}T00:00:00.000Z`);\n }\n case \"numeric-string\":\n return requireNumericString(value, encoding, path);\n case \"boolean-string\": {\n const booleanText = requireBooleanString(value, path);\n return encoding.clientMode === \"wire\" ? booleanText : booleanText.toLowerCase() === \"true\";\n }\n }\n}\n\nfunction encodeDateTimeText(\n value: unknown,\n encoding: DateTimeTextEncodingDescriptor,\n path: readonly string[],\n): string {\n if (encoding.clientMode === \"wire\") {\n if (encoding.source === \"offsetDateTime\") {\n const clientText = requireDateString(value, \"rfc3339\", path);\n if (encoding.format === \"rfc7231\") {\n requireWholeSecondDateTime(clientText, path);\n return new Date(clientText).toUTCString();\n }\n return clientText;\n }\n return requireDateString(value, encoding.format, path);\n }\n const date = requireDate(value, path);\n if (encoding.format === \"rfc7231\") {\n if (date.getUTCMilliseconds() !== 0) {\n fail(path, \"RFC7231 conversion would lose millisecond precision.\");\n }\n return date.toUTCString();\n }\n return date.toISOString();\n}\n\nfunction decodeDateTimeText(\n value: unknown,\n encoding: DateTimeTextEncodingDescriptor,\n path: readonly string[],\n): unknown {\n const text = requireDateString(value, encoding.format, path);\n if (encoding.source === \"offsetDateTime\") {\n return encoding.format === \"rfc7231\" ? new Date(text).toISOString() : text;\n }\n if (encoding.clientMode === \"wire\") return text;\n return new Date(text);\n}\n\nfunction encodeUnixTimestamp(\n value: unknown,\n encoding: UnixTimestampEncodingDescriptor,\n path: readonly string[],\n): number {\n if (encoding.clientMode === \"wire\") {\n return requireInteger(value, encoding.wire.scalar, path);\n }\n const date = requireDate(value, path);\n if (date.getTime() % 1000 !== 0) {\n fail(path, \"Unix timestamp conversion would lose millisecond precision.\");\n }\n return requireInteger(date.getTime() / 1000, encoding.wire.scalar, path);\n}\n\nfunction encodeBytes(\n value: unknown,\n encoding: BytesEncodingDescriptor,\n path: readonly string[],\n): string {\n if (encoding.clientMode === \"wire\") {\n return requireBase64(value, encoding.format, path);\n }\n if (!(value instanceof Uint8Array)) {\n fail(path, `Expected Uint8Array, got ${describe(value)}.`);\n }\n const base64 = uint8ArrayToBase64(value);\n return encoding.format === \"base64url\" ? base64ToBase64Url(base64) : base64;\n}\n\nfunction decodeBytes(\n value: unknown,\n encoding: BytesEncodingDescriptor,\n path: readonly string[],\n): unknown {\n const text = requireBase64(value, encoding.format, path);\n if (encoding.clientMode === \"wire\") return text;\n const base64 = encoding.format === \"base64url\" ? base64UrlToBase64(text) : text;\n return base64ToUint8Array(base64);\n}\n\nfunction requireDate(value: unknown, path: readonly string[]): Date {\n if (!(value instanceof Date) || Number.isNaN(value.getTime())) {\n fail(path, `Expected a valid Date, got ${describe(value)}.`);\n }\n return value;\n}\n\nfunction encodePlainDate(value: unknown, path: readonly string[]): string {\n const date = requireDate(value, path);\n if (\n date.getUTCHours() !== 0 ||\n date.getUTCMinutes() !== 0 ||\n date.getUTCSeconds() !== 0 ||\n date.getUTCMilliseconds() !== 0\n ) {\n fail(path, \"Plain-date conversion requires UTC midnight.\");\n }\n return date.toISOString().slice(0, 10);\n}\n\nfunction requireWholeSecondDateTime(value: string, path: readonly string[]): void {\n const fraction = /\\.(\\d+)(?:Z|[+-]\\d{2}:\\d{2})$/.exec(value)?.[1];\n if (fraction !== undefined && /[1-9]/.test(fraction)) {\n fail(path, \"RFC7231 conversion would lose subsecond precision.\");\n }\n}\n\nfunction requireDateString(\n value: unknown,\n format: \"rfc3339\" | \"rfc7231\",\n path: readonly string[],\n): string {\n const isValid =\n format === \"rfc3339\"\n ? isValidRfc3339(String(value))\n : /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), \\d{2} (?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \\d{4} \\d{2}:\\d{2}:\\d{2} GMT$/.test(\n String(value),\n ) &&\n !Number.isNaN(Date.parse(String(value))) &&\n new Date(String(value)).toUTCString() === value;\n if (typeof value !== \"string\" || !isValid) {\n fail(path, `Expected a valid ${format} date string, got ${describe(value)}.`);\n }\n return value;\n}\n\nconst ISO_DURATION =\n /^-?P(?=\\d|T\\d)(?:(?:\\d+(?:\\.\\d+)?Y)?(?:\\d+(?:\\.\\d+)?M)?(?:\\d+(?:\\.\\d+)?W)?(?:\\d+(?:\\.\\d+)?D)?)(?:T(?:\\d+(?:\\.\\d+)?H)?(?:\\d+(?:\\.\\d+)?M)?(?:\\d+(?:\\.\\d+)?S)?)?$/;\n\nfunction requireIsoDuration(value: unknown, path: readonly string[]): string {\n if (typeof value !== \"string\" || !ISO_DURATION.test(value)) {\n fail(path, `Expected an ISO8601 day/time duration, got ${describe(value)}.`);\n }\n\n return value;\n}\n\nfunction requirePlainDate(value: unknown, path: readonly string[]): string {\n if (\n typeof value !== \"string\" ||\n !/^\\d{4}-\\d{2}-\\d{2}$/.test(value) ||\n Number.isNaN(Date.parse(`${value}T00:00:00.000Z`)) ||\n new Date(`${value}T00:00:00.000Z`).toISOString().slice(0, 10) !== value\n ) {\n fail(path, `Expected a YYYY-MM-DD date, got ${describe(value)}.`);\n }\n return value;\n}\n\nfunction requireInteger(\n value: unknown,\n scalar: IntegerScalarName,\n path: readonly string[],\n): number {\n if (\n typeof value !== \"number\" ||\n !Number.isSafeInteger(value) ||\n !inIntegerRange(BigInt(value), scalar)\n ) {\n fail(path, `Expected a safe ${scalar} value, got ${describe(value)}.`);\n }\n return value;\n}\n\nconst CANONICAL_NUMBER = /^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$/;\n\nfunction requireNumericString(\n value: unknown,\n encoding: NumericStringEncodingDescriptor,\n path: readonly string[],\n): string {\n const pattern = encoding.source === \"integer\" ? /^-?(?:0|[1-9]\\d*)$/ : CANONICAL_NUMBER;\n if (typeof value !== \"string\" || !pattern.test(value)) {\n fail(path, `Expected a canonical numeric string, got ${describe(value)}.`);\n }\n if (\n encoding.source === \"integer\"\n ? !inIntegerRange(BigInt(value), encoding.sourceScalar)\n : !inNumericRange(value, encoding.sourceScalar)\n ) {\n fail(path, `Numeric string is outside '${encoding.sourceScalar}' range.`);\n }\n return value;\n}\n\nfunction inNumericRange(value: string, scalar: NumericScalarName): boolean {\n if (scalar === \"numeric\" || scalar === \"decimal\") return true;\n if (scalar === \"decimal128\") {\n const match = /^(-?)(\\d+)(?:\\.(\\d+))?(?:[eE]([+-]?\\d+))?$/.exec(value);\n if (!match) return false;\n const integer = match[2]!;\n const fraction = match[3] ?? \"\";\n const significant = `${integer}${fraction}`.replace(/^0+/u, \"\");\n if (significant.length === 0) return true;\n if (significant.length > 34) return false;\n const exponent = Number(match[4] ?? 0);\n const adjustedExponent = exponent + integer.length - 1;\n return adjustedExponent >= -6176 && adjustedExponent <= 6144;\n }\n\n const number = Number(value);\n if (!Number.isFinite(number)) return false;\n if (scalar === \"float32\") {\n return Math.abs(number) <= 3.4028234663852886e38;\n }\n return true;\n}\n\nconst INTEGER_RANGES: Partial<Record<NumericScalarName, readonly [bigint, bigint]>> = {\n safeint: [BigInt(Number.MIN_SAFE_INTEGER), BigInt(Number.MAX_SAFE_INTEGER)],\n int8: [-128n, 127n],\n uint8: [0n, 255n],\n int16: [-32768n, 32767n],\n uint16: [0n, 65535n],\n int32: [-2147483648n, 2147483647n],\n uint32: [0n, 4294967295n],\n int64: [-9223372036854775808n, 9223372036854775807n],\n uint64: [0n, 18446744073709551615n],\n};\n\nfunction inIntegerRange(value: bigint, scalar: NumericScalarName): boolean {\n const range = INTEGER_RANGES[scalar];\n return range ? value >= range[0] && value <= range[1] : true;\n}\n\nfunction requireBooleanString(value: unknown, path: readonly string[]): string {\n if (value !== \"true\" && value !== \"false\") {\n fail(path, `Expected 'true' or 'false', got ${describe(value)}.`);\n }\n return value;\n}\n\nfunction isValidRfc3339(value: string): boolean {\n const match =\n /^(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2})(?:\\.\\d+)?(?:Z|[+-](\\d{2}):(\\d{2}))$/.exec(\n value,\n );\n if (!match) return false;\n const year = Number(match[1]);\n const month = Number(match[2]);\n const day = Number(match[3]);\n if (\n month < 1 ||\n month > 12 ||\n day < 1 ||\n day > new Date(Date.UTC(year, month, 0)).getUTCDate() ||\n Number(match[4]) > 23 ||\n Number(match[5]) > 59 ||\n Number(match[6]) > 59 ||\n Number(match[7] ?? 0) > 23 ||\n Number(match[8] ?? 0) > 59\n ) {\n return false;\n }\n return !Number.isNaN(Date.parse(value));\n}\n\nfunction requireBase64(\n value: unknown,\n format: \"base64\" | \"base64url\",\n path: readonly string[],\n): string {\n if (typeof value !== \"string\") {\n fail(path, `Expected a ${format} string, got ${describe(value)}.`);\n }\n const pattern =\n format === \"base64\"\n ? /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/\n : /^[A-Za-z0-9_-]*$/;\n if (!pattern.test(value)) {\n fail(path, `Expected a valid ${format} string.`);\n }\n if (format === \"base64url\" && value.length % 4 === 1) {\n fail(path, \"Expected a valid base64url string length.\");\n }\n const base64 = format === \"base64url\" ? base64UrlToBase64(value) : value;\n const canonical =\n format === \"base64url\"\n ? base64ToBase64Url(uint8ArrayToBase64(base64ToUint8Array(base64)))\n : uint8ArrayToBase64(base64ToUint8Array(base64));\n if (canonical !== value) {\n fail(path, `Expected a canonical ${format} string.`);\n }\n return value;\n}\n\nfunction uint8ArrayToBase64(value: Uint8Array): string {\n const chunks: string[] = [];\n const chunkSize = 0x8000;\n for (let offset = 0; offset < value.length; offset += chunkSize) {\n chunks.push(String.fromCharCode(...value.subarray(offset, offset + chunkSize)));\n }\n return btoa(chunks.join(\"\"));\n}\n\nfunction base64ToUint8Array(value: string): Uint8Array {\n const binary = atob(value);\n return Uint8Array.from(binary, (character) => character.charCodeAt(0));\n}\n\nfunction base64ToBase64Url(base64: string): string {\n return base64.replace(/\\+/g, \"-\").replace(/\\//g, \"_\").replace(/=+$/, \"\");\n}\n\nfunction base64UrlToBase64(base64url: string): string {\n const padded = base64url + \"=\".repeat((4 - (base64url.length % 4)) % 4);\n return padded.replace(/-/g, \"+\").replace(/_/g, \"/\");\n}\n\nfunction describe(value: unknown): string {\n if (value instanceof Date) return \"Date\";\n if (value instanceof Uint8Array) return \"Uint8Array\";\n return value === null ? \"null\" : typeof value;\n}\n\nfunction fail(path: readonly string[], message: string): never {\n const location = path.length > 0 ? path.join(\".\") : \"<value>\";\n throw new TypeError(`Invalid encoded value at '${location}': ${message}`);\n}\n"]}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { type ExpressionNode as CoreExpressionNode } from "../../expression/ast-nodes.js";
|
|
2
|
-
import { type Expression } from "../../expression/expressions.js";
|
|
3
|
-
import { type LoopedResource, type Resource, type ResourceDeclaration } from "../../constructs/resource/resource.js";
|
|
4
|
-
import type { ExpressionNode } from "../contract/index.js";
|
|
5
|
-
import type { ParameterMetadata } from "../../constructs/parameter.js";
|
|
6
|
-
import type { VariableMetadata } from "../../constructs/variable.js";
|
|
7
|
-
export type SerializableValue = CoreExpressionNode | Expression<unknown> | string | number | boolean | null | readonly SerializableValue[] | {
|
|
8
|
-
readonly [key: string]: SerializableValue | undefined;
|
|
9
|
-
};
|
|
10
|
-
export type SerializationSymbolMap = Map<ResourceDeclaration | CoreExpressionNode | ParameterMetadata | VariableMetadata, string>;
|
|
11
|
-
type SymbolValue = Expression<unknown> | Resource | LoopedResource<Resource>;
|
|
12
|
-
export type DeserializationSymbolMap = Map<string, SymbolValue>;
|
|
13
|
-
/**
|
|
14
|
-
* Expands armPath stamps along a core property-access chain, replacing each
|
|
15
|
-
* stamped property with its ARM path relative to the lowered base. Empty
|
|
16
|
-
* paths fall back to the original property name. Generated accesses carry
|
|
17
|
-
* no stamps; unchanged nodes retain their identity.
|
|
18
|
-
*
|
|
19
|
-
* Recursion stops at non-property-access nodes and leaves their children
|
|
20
|
-
* untouched. serializeExpression traverses those children and invokes this
|
|
21
|
-
* helper as it reaches them; this is not a whole-expression lowering pass.
|
|
22
|
-
*/
|
|
23
|
-
export declare function lowerArmPropertyAccessChain(node: CoreExpressionNode): CoreExpressionNode;
|
|
24
|
-
export declare function serializeDefinedObjectEntries(value: {
|
|
25
|
-
readonly [key: string]: SerializableValue | undefined;
|
|
26
|
-
}, symbolMap: SerializationSymbolMap): Record<string, ExpressionNode>;
|
|
27
|
-
export declare function serializeExpression(value: SerializableValue, symbolMap?: SerializationSymbolMap): ExpressionNode;
|
|
28
|
-
export declare function requireResourceHandle(targetIdentifier: string, symbols: DeserializationSymbolMap, resourceIdentifier: string, field: "parent" | "scope" | "dependsOn"): Resource | LoopedResource<Resource>;
|
|
29
|
-
export declare function deserializeDependsOnExpression(node: ExpressionNode, symbols: DeserializationSymbolMap, resourceIdentifier: string): readonly ResourceDeclaration[];
|
|
30
|
-
export declare function deserializeExpression(node: ExpressionNode, symbols: DeserializationSymbolMap): unknown;
|
|
31
|
-
export {};
|
|
32
|
-
//# sourceMappingURL=expression.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"expression.d.ts","sourceRoot":"","sources":["../../../../src/serialization/json/expression.ts"],"names":[],"mappings":"AAGA,OAAO,EAWL,KAAK,cAAc,IAAI,kBAAkB,EAK1C,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAIL,KAAK,UAAU,EAChB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,QAAQ,EACb,KAAK,mBAAmB,EACzB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAGV,cAAc,EAKf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAErE,MAAM,MAAM,iBAAiB,GACzB,kBAAkB,GAClB,UAAU,CAAC,OAAO,CAAC,GACnB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,SAAS,iBAAiB,EAAE,GAC5B;IACE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAAC;CACvD,CAAC;AAEN,MAAM,MAAM,sBAAsB,GAAG,GAAG,CACtC,mBAAmB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,gBAAgB,EAC/E,MAAM,CACP,CAAC;AAEF,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;AAC7E,MAAM,MAAM,wBAAwB,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAMhE;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,kBAAkB,GAAG,kBAAkB,CAiBxF;AA4FD,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAAA;CAAE,EAChE,SAAS,EAAE,sBAAsB,GAChC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAMhC;AA4GD,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,iBAAiB,EACxB,SAAS,GAAE,sBAAkC,GAC5C,cAAc,CA8HhB;AAMD,wBAAgB,qBAAqB,CACnC,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,wBAAwB,EACjC,kBAAkB,EAAE,MAAM,EAC1B,KAAK,EAAE,QAAQ,GAAG,OAAO,GAAG,WAAW,GACtC,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,CAerC;AAED,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,wBAAwB,EACjC,kBAAkB,EAAE,MAAM,GACzB,SAAS,mBAAmB,EAAE,CAehC;AAMD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,wBAAwB,GAChC,OAAO,CA4MT"}
|