@cdktn/provider-generator 0.24.0-pre.1 → 0.24.0-pre.12

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 (38) hide show
  1. package/build/get/__tests__/constructs-maker.test.js +2 -2
  2. package/build/get/__tests__/generator/complex-computed-types.test.js +4 -3
  3. package/build/get/__tests__/generator/deep-nested-attributes.test.js +5 -4
  4. package/build/get/__tests__/generator/description-escaping.test.js +6 -5
  5. package/build/get/__tests__/generator/empty-provider-resources.test.js +4 -3
  6. package/build/get/__tests__/generator/export-sharding.test.js +5 -4
  7. package/build/get/__tests__/generator/import-style.test.d.ts +2 -0
  8. package/build/get/__tests__/generator/import-style.test.js +101 -0
  9. package/build/get/__tests__/generator/module-generator.test.js +18 -17
  10. package/build/get/__tests__/generator/nested-types.test.js +5 -4
  11. package/build/get/__tests__/generator/provider.test.js +5 -4
  12. package/build/get/__tests__/generator/resource-types.test.js +8 -7
  13. package/build/get/__tests__/generator/skipped-attributes.test.js +5 -4
  14. package/build/get/__tests__/generator/types.test.js +51 -28
  15. package/build/get/__tests__/generator/versions-file.test.js +4 -3
  16. package/build/get/__tests__/util.d.ts +9 -0
  17. package/build/get/__tests__/util.js +24 -2
  18. package/build/get/constructs-maker.d.ts +5 -1
  19. package/build/get/constructs-maker.js +5 -2
  20. package/build/get/generator/emitter/struct-emitter.d.ts +2 -1
  21. package/build/get/generator/emitter/struct-emitter.js +12 -9
  22. package/build/get/generator/module-generator.js +3 -3
  23. package/build/get/generator/provider-generator.d.ts +9 -1
  24. package/build/get/generator/provider-generator.js +9 -6
  25. package/build/get/generator/resource-parser.d.ts +1 -0
  26. package/build/get/generator/resource-parser.js +29 -3
  27. package/eslint.config.mjs +13 -0
  28. package/package.json +3 -3
  29. package/src/__tests__/__snapshots__/edge-provider-schema.test.ts.snap +8 -8
  30. package/src/__tests__/__snapshots__/provider.test.ts.snap +617 -617
  31. package/src/get/__tests__/generator/__snapshots__/complex-computed-types.test.ts.snap +1 -1
  32. package/src/get/__tests__/generator/__snapshots__/export-sharding.test.ts.snap +268 -268
  33. package/src/get/__tests__/generator/__snapshots__/module-generator.test.ts.snap +355 -355
  34. package/src/get/__tests__/generator/__snapshots__/nested-types.test.ts.snap +2 -2
  35. package/src/get/__tests__/generator/__snapshots__/resource-types.test.ts.snap +20 -20
  36. package/src/get/__tests__/generator/__snapshots__/skipped-attributes.test.ts.snap +3 -3
  37. package/src/get/__tests__/generator/__snapshots__/types.test.ts.snap +633 -25
  38. package/src/get/__tests__/generator/fixtures/case-insensitive-base-name-collision.test.fixture.json +82 -0
@@ -60,7 +60,7 @@ describe("constructsMaker", () => {
60
60
  await fs.writeFile(path.join(invalidSubdir, "go.mod"), invalid);
61
61
  });
62
62
  afterAll(async () => {
63
- // await fs.remove(tmpDir);
63
+ await fs.remove(tmpDir);
64
64
  });
65
65
  it("works in root directory", async () => {
66
66
  const moduleName = await (0, constructs_maker_1.determineGoModuleName)(tmpDir);
@@ -110,4 +110,4 @@ describe("constructsMaker", () => {
110
110
  });
111
111
  });
112
112
  });
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RydWN0cy1tYWtlci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2dldC9fX3Rlc3RzX18vY29uc3RydWN0cy1tYWtlci50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrQkFBK0I7QUFDL0IsbUNBQW1DO0FBQ25DLDZDQUErQjtBQUMvQix1Q0FBeUI7QUFDekIsMkNBQTZCO0FBQzdCLDRDQUl3QjtBQUN4QiwwREFBNEQ7QUFFNUQsUUFBUSxDQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRTtJQUMvQixRQUFRLENBQUMsdUJBQXVCLEVBQUUsR0FBRyxFQUFFO1FBQ3JDLElBQUksTUFBYyxDQUFDO1FBQ25CLElBQUksV0FBbUIsRUFBRSxXQUFtQixFQUFFLGFBQXFCLENBQUM7UUFFcEUsU0FBUyxDQUFDLEtBQUssSUFBSSxFQUFFO1lBQ25CLE1BQU0sR0FBRyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztZQUNoRTs7Ozs7Ozs7O2VBU0c7WUFDSCxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ25ELFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDbkQsYUFBYSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUV2RCxNQUFNLEVBQUUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDN0IsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQzdCLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQyxh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TSxNQUFNLEdBQUcsSUFBSSx1Q0FBNkIsQ0FDOUM7Z0JBQ0UsSUFBSSxFQUFFLGFBQWE7Z0JBQ25CLEdBQUcsRUFBRSxhQUFhO2dCQUNsQixNQUFNLEVBQUUsYUFBYTtnQkFDckIsT0FBTyxFQUFFLFFBQVE7YUFDbEIsRUFDRCxrQkFBUSxDQUFDLEVBQUUsQ0FDWixDQUFDO1lBQ0YsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDbkQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUNILFFBQVEsQ0FBQyw2QkFBNkIsRUFBRSxHQUFHLEVBQUU7UUFDM0MsRUFBRSxDQUFDLG1DQUFtQyxFQUFFLEdBQUcsRUFBRTtZQUMzQyxNQUFNLE1BQU0sR0FBRyxJQUFJLHFDQUEyQixDQUM1QztnQkFDRSxJQUFJLEVBQUUsZ0JBQWdCO2dCQUN0QixNQUFNLEVBQUUsMENBQTBDO2dCQUNsRCxHQUFHLEVBQUUsMENBQTBDO2dCQUMvQyxPQUFPLEVBQUUsT0FBTztnQkFDaEIsU0FBUyxFQUFFLDJCQUEyQjthQUN2QyxFQUNELGtCQUFRLENBQUMsRUFBRSxDQUNaLENBQUM7WUFDRixNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3RELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgSGFzaGlDb3JwLCBJbmNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNUEwtMi4wXG5pbXBvcnQgKiBhcyBmcyBmcm9tIFwiZnMtZXh0cmFcIjtcbmltcG9ydCAqIGFzIG9zIGZyb20gXCJvc1wiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHtcbiAgTGFuZ3VhZ2UsXG4gIENvbnN0cnVjdHNNYWtlck1vZHVsZVRhcmdldCxcbiAgQ29uc3RydWN0c01ha2VyUHJvdmlkZXJUYXJnZXQsXG59IGZyb20gXCJAY2RrdG4vY29tbW9uc1wiO1xuaW1wb3J0IHsgZGV0ZXJtaW5lR29Nb2R1bGVOYW1lIH0gZnJvbSBcIi4uL2NvbnN0cnVjdHMtbWFrZXJcIjtcblxuZGVzY3JpYmUoXCJjb25zdHJ1Y3RzTWFrZXJcIiwgKCkgPT4ge1xuICBkZXNjcmliZShcImRldGVybWluZUdvTW9kdWxlTmFtZVwiLCAoKSA9PiB7XG4gICAgbGV0IHRtcERpcjogc3RyaW5nO1xuICAgIGxldCBlbXB0eVN1YkRpcjogc3RyaW5nLCB2YWxpZFN1YmRpcjogc3RyaW5nLCBpbnZhbGlkU3ViZGlyOiBzdHJpbmc7XG5cbiAgICBiZWZvcmVBbGwoYXN5bmMgKCkgPT4ge1xuICAgICAgdG1wRGlyID0gYXdhaXQgZnMubWtkdGVtcChwYXRoLmpvaW4ob3MudG1wZGlyKCksIFwiY2RrdGYudGVzdFwiKSk7XG4gICAgICAvKiB0ZXN0IGRpcmVjdG9yeSBsYXlvdXRcbiAgICAgICAqIDx0bXBEaXI+XG4gICAgICAgKiDilJzilIDilIAgZ28ubW9kXG4gICAgICAgKiDilJTilIDilIAgc3ViZGlyXG4gICAgICAgKiAgICAg4pSc4pSA4pSAIGVtcHR5XG4gICAgICAgKiAgICAg4pSc4pSA4pSAIHZhbGlkXG4gICAgICAgKiAgICAg4pSCICAg4pSU4pSA4pSAIGdvLm1vZFxuICAgICAgICogICAgIOKUlOKUgOKUgCBpbnZhbGlkXG4gICAgICAgKiAgICAgICAgIOKUlOKUgOKUgCBnby5tb2RcbiAgICAgICAqL1xuICAgICAgZW1wdHlTdWJEaXIgPSBwYXRoLmpvaW4odG1wRGlyLCBcInN1YmRpclwiLCBcImVtcHR5XCIpO1xuICAgICAgdmFsaWRTdWJkaXIgPSBwYXRoLmpvaW4odG1wRGlyLCBcInN1YmRpclwiLCBcInZhbGlkXCIpO1xuICAgICAgaW52YWxpZFN1YmRpciA9IHBhdGguam9pbih0bXBEaXIsIFwic3ViZGlyXCIsIFwiaW52YWxpZFwiKTtcblxuICAgICAgYXdhaXQgZnMubWtkaXJzKGVtcHR5U3ViRGlyKTtcbiAgICAgIGF3YWl0IGZzLm1rZGlycyh2YWxpZFN1YmRpcik7XG4gICAgICBhd2FpdCBmcy5ta2RpcnMoaW52YWxpZFN1YmRpcik7XG5cbiAgICAgIGNvbnN0IHJvb3QgPSBgbW9kdWxlIGNkay50Zi90ZXN0L2dvYDtcbiAgICAgIGNvbnN0IHZhbGlkID0gYG1vZHVsZSBjZGsudGYvdGVzdC9nby12YWxpZC1zdWJkaXJgO1xuICAgICAgY29uc3QgaW52YWxpZCA9IGBtYWxmb3JtZWQgZ28gbW9kYDtcblxuICAgICAgYXdhaXQgZnMud3JpdGVGaWxlKHBhdGguam9pbih0bXBEaXIsIFwiZ28ubW9kXCIpLCByb290KTtcbiAgICAgIGF3YWl0IGZzLndyaXRlRmlsZShwYXRoLmpvaW4odmFsaWRTdWJkaXIsIFwiZ28ubW9kXCIpLCB2YWxpZCk7XG4gICAgICBhd2FpdCBmcy53cml0ZUZpbGUocGF0aC5qb2luKGludmFsaWRTdWJkaXIsIFwiZ28ubW9kXCIpLCBpbnZhbGlkKTtcbiAgICB9KTtcblxuICAgIGFmdGVyQWxsKGFzeW5jICgpID0+IHtcbiAgICAgIC8vIGF3YWl0IGZzLnJlbW92ZSh0bXBEaXIpO1xuICAgIH0pO1xuXG4gICAgaXQoXCJ3b3JrcyBpbiByb290IGRpcmVjdG9yeVwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBtb2R1bGVOYW1lID0gYXdhaXQgZGV0ZXJtaW5lR29Nb2R1bGVOYW1lKHRtcERpcik7XG4gICAgICBleHBlY3QobW9kdWxlTmFtZSkudG9CZShcImNkay50Zi90ZXN0L2dvXCIpO1xuICAgIH0pO1xuXG4gICAgaXQoXCJjYW4gd2FsayB1cHdhcmRzIGZyb20gZW1wdHkgZGlyZWN0b3J5XCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IG1vZHVsZU5hbWUgPSBhd2FpdCBkZXRlcm1pbmVHb01vZHVsZU5hbWUoZW1wdHlTdWJEaXIpO1xuICAgICAgZXhwZWN0KG1vZHVsZU5hbWUpLnRvQmUoXCJjZGsudGYvdGVzdC9nby9zdWJkaXIvZW1wdHlcIik7XG4gICAgfSk7XG5cbiAgICBpdChcIndvcmtzIGluIHN1YmRpcmVjdG9yeSB3aXRoIGdvLm1vZFwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBtb2R1bGVOYW1lID0gYXdhaXQgZGV0ZXJtaW5lR29Nb2R1bGVOYW1lKHZhbGlkU3ViZGlyKTtcbiAgICAgIGV4cGVjdChtb2R1bGVOYW1lKS50b0JlKFwiY2RrLnRmL3Rlc3QvZ28tdmFsaWQtc3ViZGlyXCIpO1xuICAgIH0pO1xuXG4gICAgaXQoXCJ0aHJvd3MgaWYgZ28ubW9kIGlzIGludmFsaWRcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgYXdhaXQgZXhwZWN0KGRldGVybWluZUdvTW9kdWxlTmFtZShpbnZhbGlkU3ViZGlyKSkucmVqZWN0cy50b1Rocm93KFxuICAgICAgICBgQ291bGQgbm90IGRldGVybWluZSB0aGUgcm9vdCBHbyBtb2R1bGUgbmFtZS4gRm91bmQgJHtwYXRoLmpvaW4oXG4gICAgICAgICAgaW52YWxpZFN1YmRpcixcbiAgICAgICAgICBcImdvLm1vZFwiLFxuICAgICAgICApfSBidXQgZmFpbGVkIHRvIHJlZ2V4IG1hdGNoIHRoZSBtb2R1bGUgbmFtZSBkaXJlY3RpdmVgLFxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIGl0KFwid29ya3MgZnJvbSBzdWJkaXJlY3RvcnkgdGhhdCBkb2VzIG5vdCBleGlzdCB5ZXRcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgbW9kdWxlTmFtZSA9IGF3YWl0IGRldGVybWluZUdvTW9kdWxlTmFtZShcbiAgICAgICAgcGF0aC5qb2luKHRtcERpciwgXCJzdWJkaXJcIiwgXCJ0aGF0XCIsIFwiZG9lc1wiLCBcIm5vdFwiLCBcImV4aXN0XCIsIFwieWV0XCIpLFxuICAgICAgKTtcbiAgICAgIGV4cGVjdChtb2R1bGVOYW1lKS50b0JlKFwiY2RrLnRmL3Rlc3QvZ28vc3ViZGlyL3RoYXQvZG9lcy9ub3QvZXhpc3QveWV0XCIpO1xuICAgIH0pO1xuXG4gICAgaXQoXCJ0aHJvd3MgaWYgbm90aGluZyBjb3VsZCBiZSBmb3VuZFwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBkaXIgPSBcIi9jZGt0Zi10ZXN0L3RoaXMvZGlyL2RvZXMvbm90L2V4aXN0XCI7IC8vLi4uIGFuZCBoYXMgbm8gZ28ubW9kIGluIGFueSBwYXJlbnQgZGlyXG4gICAgICBhd2FpdCBleHBlY3QoZGV0ZXJtaW5lR29Nb2R1bGVOYW1lKGRpcikpLnJlamVjdHMudG9UaHJvdyhcbiAgICAgICAgYENvdWxkIG5vdCBkZXRlcm1pbmUgdGhlIHJvb3QgR28gbW9kdWxlIG5hbWUuIE5vIGdvLm1vZCBmb3VuZCBpbiAke2Rpcn0gYW5kIGFueSBwYXJlbnQgZGlyZWN0b3JpZXNgLFxuICAgICAgKTtcbiAgICB9KTtcbiAgfSk7XG4gIGRlc2NyaWJlKFwiQ29uc3RydWN0c01ha2VyUHJvdmlkZXJUYXJnZXRcIiwgKCkgPT4ge1xuICAgIGl0KFwicmV0dXJucyB2YWxpZCBwYWNrYWdlIG5hbWUgZm9yIEdvXCIsICgpID0+IHtcbiAgICAgIGNvbnN0IHRhcmdldCA9IG5ldyBDb25zdHJ1Y3RzTWFrZXJQcm92aWRlclRhcmdldChcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwiZ29vZ2xlLWJldGFcIixcbiAgICAgICAgICBmcW46IFwiZ29vZ2xlLWJldGFcIixcbiAgICAgICAgICBzb3VyY2U6IFwiZ29vZ2xlLWJldGFcIixcbiAgICAgICAgICB2ZXJzaW9uOiBcIn4+IDQuMFwiLFxuICAgICAgICB9LFxuICAgICAgICBMYW5ndWFnZS5HTyxcbiAgICAgICk7XG4gICAgICBleHBlY3QodGFyZ2V0LnNyY01ha05hbWUpLnRvRXF1YWwoXCJnb29nbGVfYmV0YVwiKTtcbiAgICB9KTtcbiAgfSk7XG4gIGRlc2NyaWJlKFwiQ29uc3RydWN0c01ha2VyTW9kdWxlVGFyZ2V0XCIsICgpID0+IHtcbiAgICBpdChcInJldHVybnMgdmFsaWQgcGFja2FnZSBuYW1lIGZvciBHb1wiLCAoKSA9PiB7XG4gICAgICBjb25zdCB0YXJnZXQgPSBuZXcgQ29uc3RydWN0c01ha2VyTW9kdWxlVGFyZ2V0KFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogXCJzZWN1cml0eS1ncm91cFwiLFxuICAgICAgICAgIHNvdXJjZTogXCJ0ZXJyYWZvcm0tYXdzLW1vZHVsZXMvc2VjdXJpdHktZ3JvdXAvYXdzXCIsXG4gICAgICAgICAgZnFuOiBcInRlcnJhZm9ybS1hd3MtbW9kdWxlcy9zZWN1cml0eS1ncm91cC9hd3NcIixcbiAgICAgICAgICB2ZXJzaW9uOiBcIjQuOS4wXCIsXG4gICAgICAgICAgbmFtZXNwYWNlOiBcInRlcnJhZm9ybS1hd3MtbW9kdWxlcy9hd3NcIixcbiAgICAgICAgfSxcbiAgICAgICAgTGFuZ3VhZ2UuR08sXG4gICAgICApO1xuICAgICAgZXhwZWN0KHRhcmdldC5zcmNNYWtOYW1lKS50b0VxdWFsKFwic2VjdXJpdHlfZ3JvdXBcIik7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RydWN0cy1tYWtlci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2dldC9fX3Rlc3RzX18vY29uc3RydWN0cy1tYWtlci50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrQkFBK0I7QUFDL0IsbUNBQW1DO0FBQ25DLDZDQUErQjtBQUMvQix1Q0FBeUI7QUFDekIsMkNBQTZCO0FBQzdCLDRDQUl3QjtBQUN4QiwwREFBNEQ7QUFFNUQsUUFBUSxDQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRTtJQUMvQixRQUFRLENBQUMsdUJBQXVCLEVBQUUsR0FBRyxFQUFFO1FBQ3JDLElBQUksTUFBYyxDQUFDO1FBQ25CLElBQUksV0FBbUIsRUFBRSxXQUFtQixFQUFFLGFBQXFCLENBQUM7UUFFcEUsU0FBUyxDQUFDLEtBQUssSUFBSSxFQUFFO1lBQ25CLE1BQU0sR0FBRyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztZQUNoRTs7Ozs7Ozs7O2VBU0c7WUFDSCxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ25ELFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDbkQsYUFBYSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUV2RCxNQUFNLEVBQUUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDN0IsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQzdCLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQyxh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QyxtQ0FBbUMsRUFBRSxHQUFHLEVBQUU7WUFDM0MsTUFBTSxNQUFNLEdBQUcsSUFBSSx1Q0FBNkIsQ0FDOUM7Z0JBQ0UsSUFBSSxFQUFFLGFBQWE7Z0JBQ25CLEdBQUcsRUFBRSxhQUFhO2dCQUNsQixNQUFNLEVBQUUsYUFBYTtnQkFDckIsT0FBTyxFQUFFLFFBQVE7YUFDbEIsRUFDRCxrQkFBUSxDQUFDLEVBQUUsQ0FDWixDQUFDO1lBQ0YsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDbkQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUNILFFBQVEsQ0FBQyw2QkFBNkIsRUFBRSxHQUFHLEVBQUU7UUFDM0MsRUFBRSxDQUFDLG1DQUFtQyxFQUFFLEdBQUcsRUFBRTtZQUMzQyxNQUFNLE1BQU0sR0FBRyxJQUFJLHFDQUEyQixDQUM1QztnQkFDRSxJQUFJLEVBQUUsZ0JBQWdCO2dCQUN0QixNQUFNLEVBQUUsMENBQTBDO2dCQUNsRCxHQUFHLEVBQUUsMENBQTBDO2dCQUMvQyxPQUFPLEVBQUUsT0FBTztnQkFDaEIsU0FBUyxFQUFFLDJCQUEyQjthQUN2QyxFQUNELGtCQUFRLENBQUMsRUFBRSxDQUNaLENBQUM7WUFDRixNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3RELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgSGFzaGlDb3JwLCBJbmNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNUEwtMi4wXG5pbXBvcnQgKiBhcyBmcyBmcm9tIFwiZnMtZXh0cmFcIjtcbmltcG9ydCAqIGFzIG9zIGZyb20gXCJvc1wiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHtcbiAgTGFuZ3VhZ2UsXG4gIENvbnN0cnVjdHNNYWtlck1vZHVsZVRhcmdldCxcbiAgQ29uc3RydWN0c01ha2VyUHJvdmlkZXJUYXJnZXQsXG59IGZyb20gXCJAY2RrdG4vY29tbW9uc1wiO1xuaW1wb3J0IHsgZGV0ZXJtaW5lR29Nb2R1bGVOYW1lIH0gZnJvbSBcIi4uL2NvbnN0cnVjdHMtbWFrZXJcIjtcblxuZGVzY3JpYmUoXCJjb25zdHJ1Y3RzTWFrZXJcIiwgKCkgPT4ge1xuICBkZXNjcmliZShcImRldGVybWluZUdvTW9kdWxlTmFtZVwiLCAoKSA9PiB7XG4gICAgbGV0IHRtcERpcjogc3RyaW5nO1xuICAgIGxldCBlbXB0eVN1YkRpcjogc3RyaW5nLCB2YWxpZFN1YmRpcjogc3RyaW5nLCBpbnZhbGlkU3ViZGlyOiBzdHJpbmc7XG5cbiAgICBiZWZvcmVBbGwoYXN5bmMgKCkgPT4ge1xuICAgICAgdG1wRGlyID0gYXdhaXQgZnMubWtkdGVtcChwYXRoLmpvaW4ob3MudG1wZGlyKCksIFwiY2RrdGYudGVzdFwiKSk7XG4gICAgICAvKiB0ZXN0IGRpcmVjdG9yeSBsYXlvdXRcbiAgICAgICAqIDx0bXBEaXI+XG4gICAgICAgKiDilJzilIDilIAgZ28ubW9kXG4gICAgICAgKiDilJTilIDilIAgc3ViZGlyXG4gICAgICAgKiAgICAg4pSc4pSA4pSAIGVtcHR5XG4gICAgICAgKiAgICAg4pSc4pSA4pSAIHZhbGlkXG4gICAgICAgKiAgICAg4pSCICAg4pSU4pSA4pSAIGdvLm1vZFxuICAgICAgICogICAgIOKUlOKUgOKUgCBpbnZhbGlkXG4gICAgICAgKiAgICAgICAgIOKUlOKUgOKUgCBnby5tb2RcbiAgICAgICAqL1xuICAgICAgZW1wdHlTdWJEaXIgPSBwYXRoLmpvaW4odG1wRGlyLCBcInN1YmRpclwiLCBcImVtcHR5XCIpO1xuICAgICAgdmFsaWRTdWJkaXIgPSBwYXRoLmpvaW4odG1wRGlyLCBcInN1YmRpclwiLCBcInZhbGlkXCIpO1xuICAgICAgaW52YWxpZFN1YmRpciA9IHBhdGguam9pbih0bXBEaXIsIFwic3ViZGlyXCIsIFwiaW52YWxpZFwiKTtcblxuICAgICAgYXdhaXQgZnMubWtkaXJzKGVtcHR5U3ViRGlyKTtcbiAgICAgIGF3YWl0IGZzLm1rZGlycyh2YWxpZFN1YmRpcik7XG4gICAgICBhd2FpdCBmcy5ta2RpcnMoaW52YWxpZFN1YmRpcik7XG5cbiAgICAgIGNvbnN0IHJvb3QgPSBgbW9kdWxlIGNkay50Zi90ZXN0L2dvYDtcbiAgICAgIGNvbnN0IHZhbGlkID0gYG1vZHVsZSBjZGsudGYvdGVzdC9nby12YWxpZC1zdWJkaXJgO1xuICAgICAgY29uc3QgaW52YWxpZCA9IGBtYWxmb3JtZWQgZ28gbW9kYDtcblxuICAgICAgYXdhaXQgZnMud3JpdGVGaWxlKHBhdGguam9pbih0bXBEaXIsIFwiZ28ubW9kXCIpLCByb290KTtcbiAgICAgIGF3YWl0IGZzLndyaXRlRmlsZShwYXRoLmpvaW4odmFsaWRTdWJkaXIsIFwiZ28ubW9kXCIpLCB2YWxpZCk7XG4gICAgICBhd2FpdCBmcy53cml0ZUZpbGUocGF0aC5qb2luKGludmFsaWRTdWJkaXIsIFwiZ28ubW9kXCIpLCBpbnZhbGlkKTtcbiAgICB9KTtcblxuICAgIGFmdGVyQWxsKGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IGZzLnJlbW92ZSh0bXBEaXIpO1xuICAgIH0pO1xuXG4gICAgaXQoXCJ3b3JrcyBpbiByb290IGRpcmVjdG9yeVwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBtb2R1bGVOYW1lID0gYXdhaXQgZGV0ZXJtaW5lR29Nb2R1bGVOYW1lKHRtcERpcik7XG4gICAgICBleHBlY3QobW9kdWxlTmFtZSkudG9CZShcImNkay50Zi90ZXN0L2dvXCIpO1xuICAgIH0pO1xuXG4gICAgaXQoXCJjYW4gd2FsayB1cHdhcmRzIGZyb20gZW1wdHkgZGlyZWN0b3J5XCIsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IG1vZHVsZU5hbWUgPSBhd2FpdCBkZXRlcm1pbmVHb01vZHVsZU5hbWUoZW1wdHlTdWJEaXIpO1xuICAgICAgZXhwZWN0KG1vZHVsZU5hbWUpLnRvQmUoXCJjZGsudGYvdGVzdC9nby9zdWJkaXIvZW1wdHlcIik7XG4gICAgfSk7XG5cbiAgICBpdChcIndvcmtzIGluIHN1YmRpcmVjdG9yeSB3aXRoIGdvLm1vZFwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBtb2R1bGVOYW1lID0gYXdhaXQgZGV0ZXJtaW5lR29Nb2R1bGVOYW1lKHZhbGlkU3ViZGlyKTtcbiAgICAgIGV4cGVjdChtb2R1bGVOYW1lKS50b0JlKFwiY2RrLnRmL3Rlc3QvZ28tdmFsaWQtc3ViZGlyXCIpO1xuICAgIH0pO1xuXG4gICAgaXQoXCJ0aHJvd3MgaWYgZ28ubW9kIGlzIGludmFsaWRcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgYXdhaXQgZXhwZWN0KGRldGVybWluZUdvTW9kdWxlTmFtZShpbnZhbGlkU3ViZGlyKSkucmVqZWN0cy50b1Rocm93KFxuICAgICAgICBgQ291bGQgbm90IGRldGVybWluZSB0aGUgcm9vdCBHbyBtb2R1bGUgbmFtZS4gRm91bmQgJHtwYXRoLmpvaW4oXG4gICAgICAgICAgaW52YWxpZFN1YmRpcixcbiAgICAgICAgICBcImdvLm1vZFwiLFxuICAgICAgICApfSBidXQgZmFpbGVkIHRvIHJlZ2V4IG1hdGNoIHRoZSBtb2R1bGUgbmFtZSBkaXJlY3RpdmVgLFxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIGl0KFwid29ya3MgZnJvbSBzdWJkaXJlY3RvcnkgdGhhdCBkb2VzIG5vdCBleGlzdCB5ZXRcIiwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgbW9kdWxlTmFtZSA9IGF3YWl0IGRldGVybWluZUdvTW9kdWxlTmFtZShcbiAgICAgICAgcGF0aC5qb2luKHRtcERpciwgXCJzdWJkaXJcIiwgXCJ0aGF0XCIsIFwiZG9lc1wiLCBcIm5vdFwiLCBcImV4aXN0XCIsIFwieWV0XCIpLFxuICAgICAgKTtcbiAgICAgIGV4cGVjdChtb2R1bGVOYW1lKS50b0JlKFwiY2RrLnRmL3Rlc3QvZ28vc3ViZGlyL3RoYXQvZG9lcy9ub3QvZXhpc3QveWV0XCIpO1xuICAgIH0pO1xuXG4gICAgaXQoXCJ0aHJvd3MgaWYgbm90aGluZyBjb3VsZCBiZSBmb3VuZFwiLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBkaXIgPSBcIi9jZGt0Zi10ZXN0L3RoaXMvZGlyL2RvZXMvbm90L2V4aXN0XCI7IC8vLi4uIGFuZCBoYXMgbm8gZ28ubW9kIGluIGFueSBwYXJlbnQgZGlyXG4gICAgICBhd2FpdCBleHBlY3QoZGV0ZXJtaW5lR29Nb2R1bGVOYW1lKGRpcikpLnJlamVjdHMudG9UaHJvdyhcbiAgICAgICAgYENvdWxkIG5vdCBkZXRlcm1pbmUgdGhlIHJvb3QgR28gbW9kdWxlIG5hbWUuIE5vIGdvLm1vZCBmb3VuZCBpbiAke2Rpcn0gYW5kIGFueSBwYXJlbnQgZGlyZWN0b3JpZXNgLFxuICAgICAgKTtcbiAgICB9KTtcbiAgfSk7XG4gIGRlc2NyaWJlKFwiQ29uc3RydWN0c01ha2VyUHJvdmlkZXJUYXJnZXRcIiwgKCkgPT4ge1xuICAgIGl0KFwicmV0dXJucyB2YWxpZCBwYWNrYWdlIG5hbWUgZm9yIEdvXCIsICgpID0+IHtcbiAgICAgIGNvbnN0IHRhcmdldCA9IG5ldyBDb25zdHJ1Y3RzTWFrZXJQcm92aWRlclRhcmdldChcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwiZ29vZ2xlLWJldGFcIixcbiAgICAgICAgICBmcW46IFwiZ29vZ2xlLWJldGFcIixcbiAgICAgICAgICBzb3VyY2U6IFwiZ29vZ2xlLWJldGFcIixcbiAgICAgICAgICB2ZXJzaW9uOiBcIn4+IDQuMFwiLFxuICAgICAgICB9LFxuICAgICAgICBMYW5ndWFnZS5HTyxcbiAgICAgICk7XG4gICAgICBleHBlY3QodGFyZ2V0LnNyY01ha05hbWUpLnRvRXF1YWwoXCJnb29nbGVfYmV0YVwiKTtcbiAgICB9KTtcbiAgfSk7XG4gIGRlc2NyaWJlKFwiQ29uc3RydWN0c01ha2VyTW9kdWxlVGFyZ2V0XCIsICgpID0+IHtcbiAgICBpdChcInJldHVybnMgdmFsaWQgcGFja2FnZSBuYW1lIGZvciBHb1wiLCAoKSA9PiB7XG4gICAgICBjb25zdCB0YXJnZXQgPSBuZXcgQ29uc3RydWN0c01ha2VyTW9kdWxlVGFyZ2V0KFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogXCJzZWN1cml0eS1ncm91cFwiLFxuICAgICAgICAgIHNvdXJjZTogXCJ0ZXJyYWZvcm0tYXdzLW1vZHVsZXMvc2VjdXJpdHktZ3JvdXAvYXdzXCIsXG4gICAgICAgICAgZnFuOiBcInRlcnJhZm9ybS1hd3MtbW9kdWxlcy9zZWN1cml0eS1ncm91cC9hd3NcIixcbiAgICAgICAgICB2ZXJzaW9uOiBcIjQuOS4wXCIsXG4gICAgICAgICAgbmFtZXNwYWNlOiBcInRlcnJhZm9ybS1hd3MtbW9kdWxlcy9hd3NcIixcbiAgICAgICAgfSxcbiAgICAgICAgTGFuZ3VhZ2UuR08sXG4gICAgICApO1xuICAgICAgZXhwZWN0KHRhcmdldC5zcmNNYWtOYW1lKS50b0VxdWFsKFwic2VjdXJpdHlfZ3JvdXBcIik7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
@@ -26,17 +26,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
26
26
  // Copyright (c) HashiCorp, Inc
27
27
  // SPDX-License-Identifier: MPL-2.0
28
28
  const fs = __importStar(require("fs"));
29
- const os = __importStar(require("os"));
30
29
  const path = __importStar(require("path"));
31
30
  const provider_generator_1 = require("../../generator/provider-generator");
32
31
  const codemaker_1 = require("codemaker");
32
+ const util_1 = require("../util");
33
+ const tmp = (0, util_1.createTmpHelper)();
33
34
  test("generate an acm certifacte resource with complex computed types", async () => {
34
35
  const code = new codemaker_1.CodeMaker();
35
- const workdir = fs.mkdtempSync(path.join(os.tmpdir(), "complex-computed-types.test"));
36
+ const workdir = tmp("complex-computed-types.test");
36
37
  const spec = JSON.parse(fs.readFileSync(path.join(__dirname, "fixtures", "aws_acm_certificate.test.fixture.json"), "utf-8"));
37
38
  new provider_generator_1.TerraformProviderGenerator(code, spec).generateAll();
38
39
  await code.save(workdir);
39
40
  const output = fs.readFileSync(path.join(workdir, "providers/aws/acm-certificate/index.ts"), "utf-8");
40
41
  expect(output).toMatchSnapshot(`acm-certificate`);
41
42
  });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGxleC1jb21wdXRlZC10eXBlcy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2dldC9fX3Rlc3RzX18vZ2VuZXJhdG9yL2NvbXBsZXgtY29tcHV0ZWQtdHlwZXMudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0JBQStCO0FBQy9CLG1DQUFtQztBQUNuQyx1Q0FBeUI7QUFDekIsdUNBQXlCO0FBQ3pCLDJDQUE2QjtBQUM3QiwyRUFBZ0Y7QUFDaEYseUNBQXNDO0FBRXRDLElBQUksQ0FBQyxpRUFBaUUsRUFBRSxLQUFLLElBQUksRUFBRTtJQUNqRixNQUFNLElBQUksR0FBRyxJQUFJLHFCQUFTLEVBQUUsQ0FBQztJQUM3QixNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUMsV0FBVyxDQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRSw2QkFBNkIsQ0FBQyxDQUN0RCxDQUFDO0lBQ0YsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FDckIsRUFBRSxDQUFDLFlBQVksQ0FDYixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsdUNBQXVDLENBQUMsRUFDekUsT0FBTyxDQUNSLENBQ0YsQ0FBQztJQUNGLElBQUksK0NBQTBCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3pELE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV6QixNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUMsWUFBWSxDQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSx3Q0FBd0MsQ0FBQyxFQUM1RCxPQUFPLENBQ1IsQ0FBQztJQUNGLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUMsQ0FBQztBQUNwRCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgSGFzaGlDb3JwLCBJbmNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNUEwtMi4wXG5pbXBvcnQgKiBhcyBmcyBmcm9tIFwiZnNcIjtcbmltcG9ydCAqIGFzIG9zIGZyb20gXCJvc1wiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgVGVycmFmb3JtUHJvdmlkZXJHZW5lcmF0b3IgfSBmcm9tIFwiLi4vLi4vZ2VuZXJhdG9yL3Byb3ZpZGVyLWdlbmVyYXRvclwiO1xuaW1wb3J0IHsgQ29kZU1ha2VyIH0gZnJvbSBcImNvZGVtYWtlclwiO1xuXG50ZXN0KFwiZ2VuZXJhdGUgYW4gYWNtIGNlcnRpZmFjdGUgcmVzb3VyY2Ugd2l0aCBjb21wbGV4IGNvbXB1dGVkIHR5cGVzXCIsIGFzeW5jICgpID0+IHtcbiAgY29uc3QgY29kZSA9IG5ldyBDb2RlTWFrZXIoKTtcbiAgY29uc3Qgd29ya2RpciA9IGZzLm1rZHRlbXBTeW5jKFxuICAgIHBhdGguam9pbihvcy50bXBkaXIoKSwgXCJjb21wbGV4LWNvbXB1dGVkLXR5cGVzLnRlc3RcIiksXG4gICk7XG4gIGNvbnN0IHNwZWMgPSBKU09OLnBhcnNlKFxuICAgIGZzLnJlYWRGaWxlU3luYyhcbiAgICAgIHBhdGguam9pbihfX2Rpcm5hbWUsIFwiZml4dHVyZXNcIiwgXCJhd3NfYWNtX2NlcnRpZmljYXRlLnRlc3QuZml4dHVyZS5qc29uXCIpLFxuICAgICAgXCJ1dGYtOFwiLFxuICAgICksXG4gICk7XG4gIG5ldyBUZXJyYWZvcm1Qcm92aWRlckdlbmVyYXRvcihjb2RlLCBzcGVjKS5nZW5lcmF0ZUFsbCgpO1xuICBhd2FpdCBjb2RlLnNhdmUod29ya2Rpcik7XG5cbiAgY29uc3Qgb3V0cHV0ID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbih3b3JrZGlyLCBcInByb3ZpZGVycy9hd3MvYWNtLWNlcnRpZmljYXRlL2luZGV4LnRzXCIpLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dCkudG9NYXRjaFNuYXBzaG90KGBhY20tY2VydGlmaWNhdGVgKTtcbn0pO1xuIl19
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGxleC1jb21wdXRlZC10eXBlcy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2dldC9fX3Rlc3RzX18vZ2VuZXJhdG9yL2NvbXBsZXgtY29tcHV0ZWQtdHlwZXMudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0JBQStCO0FBQy9CLG1DQUFtQztBQUNuQyx1Q0FBeUI7QUFDekIsMkNBQTZCO0FBQzdCLDJFQUFnRjtBQUNoRix5Q0FBc0M7QUFDdEMsa0NBQTBDO0FBRTFDLE1BQU0sR0FBRyxHQUFHLElBQUEsc0JBQWUsR0FBRSxDQUFDO0FBRTlCLElBQUksQ0FBQyxpRUFBaUUsRUFBRSxLQUFLLElBQUksRUFBRTtJQUNqRixNQUFNLElBQUksR0FBRyxJQUFJLHFCQUFTLEVBQUUsQ0FBQztJQUM3QixNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUNuRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUNyQixFQUFFLENBQUMsWUFBWSxDQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSx1Q0FBdUMsQ0FBQyxFQUN6RSxPQUFPLENBQ1IsQ0FDRixDQUFDO0lBQ0YsSUFBSSwrQ0FBMEIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDekQsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXpCLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLHdDQUF3QyxDQUFDLEVBQzVELE9BQU8sQ0FDUixDQUFDO0lBQ0YsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0FBQ3BELENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSBIYXNoaUNvcnAsIEluY1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1QTC0yLjBcbmltcG9ydCAqIGFzIGZzIGZyb20gXCJmc1wiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgVGVycmFmb3JtUHJvdmlkZXJHZW5lcmF0b3IgfSBmcm9tIFwiLi4vLi4vZ2VuZXJhdG9yL3Byb3ZpZGVyLWdlbmVyYXRvclwiO1xuaW1wb3J0IHsgQ29kZU1ha2VyIH0gZnJvbSBcImNvZGVtYWtlclwiO1xuaW1wb3J0IHsgY3JlYXRlVG1wSGVscGVyIH0gZnJvbSBcIi4uL3V0aWxcIjtcblxuY29uc3QgdG1wID0gY3JlYXRlVG1wSGVscGVyKCk7XG5cbnRlc3QoXCJnZW5lcmF0ZSBhbiBhY20gY2VydGlmYWN0ZSByZXNvdXJjZSB3aXRoIGNvbXBsZXggY29tcHV0ZWQgdHlwZXNcIiwgYXN5bmMgKCkgPT4ge1xuICBjb25zdCBjb2RlID0gbmV3IENvZGVNYWtlcigpO1xuICBjb25zdCB3b3JrZGlyID0gdG1wKFwiY29tcGxleC1jb21wdXRlZC10eXBlcy50ZXN0XCIpO1xuICBjb25zdCBzcGVjID0gSlNPTi5wYXJzZShcbiAgICBmcy5yZWFkRmlsZVN5bmMoXG4gICAgICBwYXRoLmpvaW4oX19kaXJuYW1lLCBcImZpeHR1cmVzXCIsIFwiYXdzX2FjbV9jZXJ0aWZpY2F0ZS50ZXN0LmZpeHR1cmUuanNvblwiKSxcbiAgICAgIFwidXRmLThcIixcbiAgICApLFxuICApO1xuICBuZXcgVGVycmFmb3JtUHJvdmlkZXJHZW5lcmF0b3IoY29kZSwgc3BlYykuZ2VuZXJhdGVBbGwoKTtcbiAgYXdhaXQgY29kZS5zYXZlKHdvcmtkaXIpO1xuXG4gIGNvbnN0IG91dHB1dCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4od29ya2RpciwgXCJwcm92aWRlcnMvYXdzL2FjbS1jZXJ0aWZpY2F0ZS9pbmRleC50c1wiKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChvdXRwdXQpLnRvTWF0Y2hTbmFwc2hvdChgYWNtLWNlcnRpZmljYXRlYCk7XG59KTtcbiJdfQ==
@@ -25,13 +25,14 @@ var __importStar = (this && this.__importStar) || function (mod) {
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  // Copyright (c) HashiCorp, Inc // SPDX-License-Identifier: MPL-2.0
27
27
  const fs = __importStar(require("fs"));
28
- const os = __importStar(require("os"));
29
28
  const path = __importStar(require("path"));
30
29
  const provider_generator_1 = require("../../generator/provider-generator");
31
30
  const codemaker_1 = require("codemaker");
31
+ const util_1 = require("../util");
32
+ const tmp = (0, util_1.createTmpHelper)();
32
33
  test("generate a resource with attribute that's a list of a map of an object", async () => {
33
34
  const code = new codemaker_1.CodeMaker();
34
- const workdir = fs.mkdtempSync(path.join(os.tmpdir(), "deep-nested-attributes.test"));
35
+ const workdir = tmp("deep-nested-attributes.test");
35
36
  const spec = JSON.parse(fs.readFileSync(path.join(__dirname, "fixtures", "stripe-schema.test.fixture.json"), "utf-8"));
36
37
  new provider_generator_1.TerraformProviderGenerator(code, spec).generateAll();
37
38
  await code.save(workdir);
@@ -40,11 +41,11 @@ test("generate a resource with attribute that's a list of a map of an object", a
40
41
  });
41
42
  test("generate a resource with attribute that's a map of a list of an object", async () => {
42
43
  const code = new codemaker_1.CodeMaker();
43
- const workdir = fs.mkdtempSync(path.join(os.tmpdir(), "deep-nested-attributes-list.test"));
44
+ const workdir = tmp("deep-nested-attributes-list.test");
44
45
  const spec = JSON.parse(fs.readFileSync(path.join(__dirname, "fixtures", "deep-attributes.test.fixture.json"), "utf-8"));
45
46
  new provider_generator_1.TerraformProviderGenerator(code, spec).generateAll();
46
47
  await code.save(workdir);
47
48
  const output = fs.readFileSync(path.join(workdir, "providers/stripe/invoiceitems/index.ts"), "utf-8");
48
49
  expect(output).toEqual(expect.stringContaining(`export class InvoiceitemsDiscountsListMap extends cdktn.ComplexMap {`));
49
50
  });
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVlcC1uZXN0ZWQtYXR0cmlidXRlcy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2dldC9fX3Rlc3RzX18vZ2VuZXJhdG9yL2RlZXAtbmVzdGVkLWF0dHJpYnV0ZXMudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsbUVBQW1FO0FBQ25FLHVDQUF5QjtBQUN6Qix1Q0FBeUI7QUFDekIsMkNBQTZCO0FBQzdCLDJFQUFnRjtBQUNoRix5Q0FBc0M7QUFFdEMsSUFBSSxDQUFDLHdFQUF3RSxFQUFFLEtBQUssSUFBSSxFQUFFO0lBQ3hGLE1BQU0sSUFBSSxHQUFHLElBQUkscUJBQVMsRUFBRSxDQUFDO0lBQzdCLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFLDZCQUE2QixDQUFDLENBQ3RELENBQUM7SUFDRixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUNyQixFQUFFLENBQUMsWUFBWSxDQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxpQ0FBaUMsQ0FBQyxFQUNuRSxPQUFPLENBQ1IsQ0FDRixDQUFDO0lBQ0YsSUFBSSwrQ0FBMEIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDekQsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXpCLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLHdDQUF3QyxDQUFDLEVBQzVELE9BQU8sQ0FDUixDQUFDO0lBRUYsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FDcEIsTUFBTSxDQUFDLGdCQUFnQixDQUNyQixtRUFBbUUsQ0FDcEUsQ0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFJLENBQUMsd0VBQXdFLEVBQUUsS0FBSyxJQUFJLEVBQUU7SUFDeEYsTUFBTSxJQUFJLEdBQUcsSUFBSSxxQkFBUyxFQUFFLENBQUM7SUFDN0IsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsa0NBQWtDLENBQUMsQ0FDM0QsQ0FBQztJQUNGLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQ3JCLEVBQUUsQ0FBQyxZQUFZLENBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLG1DQUFtQyxDQUFDLEVBQ3JFLE9BQU8sQ0FDUixDQUNGLENBQUM7SUFDRixJQUFJLCtDQUEwQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN6RCxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFekIsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsd0NBQXdDLENBQUMsRUFDNUQsT0FBTyxDQUNSLENBQUM7SUFFRixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUNwQixNQUFNLENBQUMsZ0JBQWdCLENBQ3JCLHNFQUFzRSxDQUN2RSxDQUNGLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgSGFzaGlDb3JwLCBJbmMgLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1QTC0yLjBcbmltcG9ydCAqIGFzIGZzIGZyb20gXCJmc1wiO1xuaW1wb3J0ICogYXMgb3MgZnJvbSBcIm9zXCI7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBUZXJyYWZvcm1Qcm92aWRlckdlbmVyYXRvciB9IGZyb20gXCIuLi8uLi9nZW5lcmF0b3IvcHJvdmlkZXItZ2VuZXJhdG9yXCI7XG5pbXBvcnQgeyBDb2RlTWFrZXIgfSBmcm9tIFwiY29kZW1ha2VyXCI7XG5cbnRlc3QoXCJnZW5lcmF0ZSBhIHJlc291cmNlIHdpdGggYXR0cmlidXRlIHRoYXQncyBhIGxpc3Qgb2YgYSBtYXAgb2YgYW4gb2JqZWN0XCIsIGFzeW5jICgpID0+IHtcbiAgY29uc3QgY29kZSA9IG5ldyBDb2RlTWFrZXIoKTtcbiAgY29uc3Qgd29ya2RpciA9IGZzLm1rZHRlbXBTeW5jKFxuICAgIHBhdGguam9pbihvcy50bXBkaXIoKSwgXCJkZWVwLW5lc3RlZC1hdHRyaWJ1dGVzLnRlc3RcIiksXG4gICk7XG4gIGNvbnN0IHNwZWMgPSBKU09OLnBhcnNlKFxuICAgIGZzLnJlYWRGaWxlU3luYyhcbiAgICAgIHBhdGguam9pbihfX2Rpcm5hbWUsIFwiZml4dHVyZXNcIiwgXCJzdHJpcGUtc2NoZW1hLnRlc3QuZml4dHVyZS5qc29uXCIpLFxuICAgICAgXCJ1dGYtOFwiLFxuICAgICksXG4gICk7XG4gIG5ldyBUZXJyYWZvcm1Qcm92aWRlckdlbmVyYXRvcihjb2RlLCBzcGVjKS5nZW5lcmF0ZUFsbCgpO1xuICBhd2FpdCBjb2RlLnNhdmUod29ya2Rpcik7XG5cbiAgY29uc3Qgb3V0cHV0ID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbih3b3JrZGlyLCBcInByb3ZpZGVycy9zdHJpcGUvaW52b2ljZWl0ZW1zL2luZGV4LnRzXCIpLFxuICAgIFwidXRmLThcIixcbiAgKTtcblxuICBleHBlY3Qob3V0cHV0KS50b0VxdWFsKFxuICAgIGV4cGVjdC5zdHJpbmdDb250YWluaW5nKFxuICAgICAgYGV4cG9ydCBjbGFzcyBJbnZvaWNlaXRlbXNEaXNjb3VudHNNYXBMaXN0IGV4dGVuZHMgY2RrdG4uTWFwTGlzdCB7YCxcbiAgICApLFxuICApO1xufSk7XG5cbnRlc3QoXCJnZW5lcmF0ZSBhIHJlc291cmNlIHdpdGggYXR0cmlidXRlIHRoYXQncyBhIG1hcCBvZiBhIGxpc3Qgb2YgYW4gb2JqZWN0XCIsIGFzeW5jICgpID0+IHtcbiAgY29uc3QgY29kZSA9IG5ldyBDb2RlTWFrZXIoKTtcbiAgY29uc3Qgd29ya2RpciA9IGZzLm1rZHRlbXBTeW5jKFxuICAgIHBhdGguam9pbihvcy50bXBkaXIoKSwgXCJkZWVwLW5lc3RlZC1hdHRyaWJ1dGVzLWxpc3QudGVzdFwiKSxcbiAgKTtcbiAgY29uc3Qgc3BlYyA9IEpTT04ucGFyc2UoXG4gICAgZnMucmVhZEZpbGVTeW5jKFxuICAgICAgcGF0aC5qb2luKF9fZGlybmFtZSwgXCJmaXh0dXJlc1wiLCBcImRlZXAtYXR0cmlidXRlcy50ZXN0LmZpeHR1cmUuanNvblwiKSxcbiAgICAgIFwidXRmLThcIixcbiAgICApLFxuICApO1xuICBuZXcgVGVycmFmb3JtUHJvdmlkZXJHZW5lcmF0b3IoY29kZSwgc3BlYykuZ2VuZXJhdGVBbGwoKTtcbiAgYXdhaXQgY29kZS5zYXZlKHdvcmtkaXIpO1xuXG4gIGNvbnN0IG91dHB1dCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4od29ya2RpciwgXCJwcm92aWRlcnMvc3RyaXBlL2ludm9pY2VpdGVtcy9pbmRleC50c1wiKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG5cbiAgZXhwZWN0KG91dHB1dCkudG9FcXVhbChcbiAgICBleHBlY3Quc3RyaW5nQ29udGFpbmluZyhcbiAgICAgIGBleHBvcnQgY2xhc3MgSW52b2ljZWl0ZW1zRGlzY291bnRzTGlzdE1hcCBleHRlbmRzIGNka3RuLkNvbXBsZXhNYXAge2AsXG4gICAgKSxcbiAgKTtcbn0pO1xuIl19
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVlcC1uZXN0ZWQtYXR0cmlidXRlcy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2dldC9fX3Rlc3RzX18vZ2VuZXJhdG9yL2RlZXAtbmVzdGVkLWF0dHJpYnV0ZXMudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsbUVBQW1FO0FBQ25FLHVDQUF5QjtBQUN6QiwyQ0FBNkI7QUFDN0IsMkVBQWdGO0FBQ2hGLHlDQUFzQztBQUN0QyxrQ0FBMEM7QUFFMUMsTUFBTSxHQUFHLEdBQUcsSUFBQSxzQkFBZSxHQUFFLENBQUM7QUFFOUIsSUFBSSxDQUFDLHdFQUF3RSxFQUFFLEtBQUssSUFBSSxFQUFFO0lBQ3hGLE1BQU0sSUFBSSxHQUFHLElBQUkscUJBQVMsRUFBRSxDQUFDO0lBQzdCLE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0lBQ25ELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQ3JCLEVBQUUsQ0FBQyxZQUFZLENBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLGlDQUFpQyxDQUFDLEVBQ25FLE9BQU8sQ0FDUixDQUNGLENBQUM7SUFDRixJQUFJLCtDQUEwQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN6RCxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFekIsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsd0NBQXdDLENBQUMsRUFDNUQsT0FBTyxDQUNSLENBQUM7SUFFRixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUNwQixNQUFNLENBQUMsZ0JBQWdCLENBQ3JCLG1FQUFtRSxDQUNwRSxDQUNGLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQyx3RUFBd0UsRUFBRSxLQUFLLElBQUksRUFBRTtJQUN4RixNQUFNLElBQUksR0FBRyxJQUFJLHFCQUFTLEVBQUUsQ0FBQztJQUM3QixNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsa0NBQWtDLENBQUMsQ0FBQztJQUN4RCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUNyQixFQUFFLENBQUMsWUFBWSxDQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxtQ0FBbUMsQ0FBQyxFQUNyRSxPQUFPLENBQ1IsQ0FDRixDQUFDO0lBQ0YsSUFBSSwrQ0FBMEIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDekQsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXpCLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLHdDQUF3QyxDQUFDLEVBQzVELE9BQU8sQ0FDUixDQUFDO0lBRUYsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FDcEIsTUFBTSxDQUFDLGdCQUFnQixDQUNyQixzRUFBc0UsQ0FDdkUsQ0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIEhhc2hpQ29ycCwgSW5jIC8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNUEwtMi4wXG5pbXBvcnQgKiBhcyBmcyBmcm9tIFwiZnNcIjtcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7IFRlcnJhZm9ybVByb3ZpZGVyR2VuZXJhdG9yIH0gZnJvbSBcIi4uLy4uL2dlbmVyYXRvci9wcm92aWRlci1nZW5lcmF0b3JcIjtcbmltcG9ydCB7IENvZGVNYWtlciB9IGZyb20gXCJjb2RlbWFrZXJcIjtcbmltcG9ydCB7IGNyZWF0ZVRtcEhlbHBlciB9IGZyb20gXCIuLi91dGlsXCI7XG5cbmNvbnN0IHRtcCA9IGNyZWF0ZVRtcEhlbHBlcigpO1xuXG50ZXN0KFwiZ2VuZXJhdGUgYSByZXNvdXJjZSB3aXRoIGF0dHJpYnV0ZSB0aGF0J3MgYSBsaXN0IG9mIGEgbWFwIG9mIGFuIG9iamVjdFwiLCBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IGNvZGUgPSBuZXcgQ29kZU1ha2VyKCk7XG4gIGNvbnN0IHdvcmtkaXIgPSB0bXAoXCJkZWVwLW5lc3RlZC1hdHRyaWJ1dGVzLnRlc3RcIik7XG4gIGNvbnN0IHNwZWMgPSBKU09OLnBhcnNlKFxuICAgIGZzLnJlYWRGaWxlU3luYyhcbiAgICAgIHBhdGguam9pbihfX2Rpcm5hbWUsIFwiZml4dHVyZXNcIiwgXCJzdHJpcGUtc2NoZW1hLnRlc3QuZml4dHVyZS5qc29uXCIpLFxuICAgICAgXCJ1dGYtOFwiLFxuICAgICksXG4gICk7XG4gIG5ldyBUZXJyYWZvcm1Qcm92aWRlckdlbmVyYXRvcihjb2RlLCBzcGVjKS5nZW5lcmF0ZUFsbCgpO1xuICBhd2FpdCBjb2RlLnNhdmUod29ya2Rpcik7XG5cbiAgY29uc3Qgb3V0cHV0ID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbih3b3JrZGlyLCBcInByb3ZpZGVycy9zdHJpcGUvaW52b2ljZWl0ZW1zL2luZGV4LnRzXCIpLFxuICAgIFwidXRmLThcIixcbiAgKTtcblxuICBleHBlY3Qob3V0cHV0KS50b0VxdWFsKFxuICAgIGV4cGVjdC5zdHJpbmdDb250YWluaW5nKFxuICAgICAgYGV4cG9ydCBjbGFzcyBJbnZvaWNlaXRlbXNEaXNjb3VudHNNYXBMaXN0IGV4dGVuZHMgY2RrdG4uTWFwTGlzdCB7YCxcbiAgICApLFxuICApO1xufSk7XG5cbnRlc3QoXCJnZW5lcmF0ZSBhIHJlc291cmNlIHdpdGggYXR0cmlidXRlIHRoYXQncyBhIG1hcCBvZiBhIGxpc3Qgb2YgYW4gb2JqZWN0XCIsIGFzeW5jICgpID0+IHtcbiAgY29uc3QgY29kZSA9IG5ldyBDb2RlTWFrZXIoKTtcbiAgY29uc3Qgd29ya2RpciA9IHRtcChcImRlZXAtbmVzdGVkLWF0dHJpYnV0ZXMtbGlzdC50ZXN0XCIpO1xuICBjb25zdCBzcGVjID0gSlNPTi5wYXJzZShcbiAgICBmcy5yZWFkRmlsZVN5bmMoXG4gICAgICBwYXRoLmpvaW4oX19kaXJuYW1lLCBcImZpeHR1cmVzXCIsIFwiZGVlcC1hdHRyaWJ1dGVzLnRlc3QuZml4dHVyZS5qc29uXCIpLFxuICAgICAgXCJ1dGYtOFwiLFxuICAgICksXG4gICk7XG4gIG5ldyBUZXJyYWZvcm1Qcm92aWRlckdlbmVyYXRvcihjb2RlLCBzcGVjKS5nZW5lcmF0ZUFsbCgpO1xuICBhd2FpdCBjb2RlLnNhdmUod29ya2Rpcik7XG5cbiAgY29uc3Qgb3V0cHV0ID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbih3b3JrZGlyLCBcInByb3ZpZGVycy9zdHJpcGUvaW52b2ljZWl0ZW1zL2luZGV4LnRzXCIpLFxuICAgIFwidXRmLThcIixcbiAgKTtcblxuICBleHBlY3Qob3V0cHV0KS50b0VxdWFsKFxuICAgIGV4cGVjdC5zdHJpbmdDb250YWluaW5nKFxuICAgICAgYGV4cG9ydCBjbGFzcyBJbnZvaWNlaXRlbXNEaXNjb3VudHNMaXN0TWFwIGV4dGVuZHMgY2RrdG4uQ29tcGxleE1hcCB7YCxcbiAgICApLFxuICApO1xufSk7XG4iXX0=
@@ -26,13 +26,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
26
26
  // Copyright (c) HashiCorp, Inc
27
27
  // SPDX-License-Identifier: MPL-2.0
28
28
  const fs = __importStar(require("fs"));
29
- const os = __importStar(require("os"));
30
29
  const path = __importStar(require("path"));
31
30
  const provider_generator_1 = require("../../generator/provider-generator");
32
31
  const codemaker_1 = require("codemaker");
32
+ const util_1 = require("../util");
33
+ const tmp = (0, util_1.createTmpHelper)();
33
34
  test("broken attribute description comments", async () => {
34
35
  const code = new codemaker_1.CodeMaker();
35
- const workdir = fs.mkdtempSync(path.join(os.tmpdir(), "description-escaping.test"));
36
+ const workdir = tmp("description-escaping.test");
36
37
  const spec = JSON.parse(fs.readFileSync(path.join(__dirname, "fixtures", "description-escaping.test.fixture.json"), "utf-8"));
37
38
  new provider_generator_1.TerraformProviderGenerator(code, spec).generateAll();
38
39
  await code.save(workdir);
@@ -46,7 +47,7 @@ test("broken attribute description comments", async () => {
46
47
  // - https://github.com/hashicorp/terraform-provider-google-beta/blob/4094e3bdd530ca853a046a6d938807f8a131c7c7/google-beta/resource_iam_beta_workload_identity_pool_provider.go
47
48
  test("malformed code blocks which break in python rst", async () => {
48
49
  const code = new codemaker_1.CodeMaker();
49
- const workdir = fs.mkdtempSync(path.join(os.tmpdir(), "markdown-description-with-code-blocks.test"));
50
+ const workdir = tmp("markdown-description-with-code-blocks.test");
50
51
  const spec = JSON.parse(fs.readFileSync(path.join(__dirname, "fixtures", "markdown-description-with-code-blocks.test.fixture.json"), "utf-8"));
51
52
  new provider_generator_1.TerraformProviderGenerator(code, spec).generateAll();
52
53
  await code.save(workdir);
@@ -55,11 +56,11 @@ test("malformed code blocks which break in python rst", async () => {
55
56
  });
56
57
  test("comment ending sequence in comment", async () => {
57
58
  const code = new codemaker_1.CodeMaker();
58
- const workdir = fs.mkdtempSync(path.join(os.tmpdir(), "comment-ending-sequence.test"));
59
+ const workdir = tmp("comment-ending-sequence.test");
59
60
  const spec = JSON.parse(fs.readFileSync(path.join(__dirname, "fixtures", "comment-ending-sequence.test.fixture.json"), "utf-8"));
60
61
  new provider_generator_1.TerraformProviderGenerator(code, spec).generateAll();
61
62
  await code.save(workdir);
62
63
  const output = fs.readFileSync(path.join(workdir, "providers/aws/code-blocks/index.ts"), "utf-8");
63
64
  expect(output).toMatchSnapshot();
64
65
  });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRpb24tZXNjYXBpbmcudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9nZXQvX190ZXN0c19fL2dlbmVyYXRvci9kZXNjcmlwdGlvbi1lc2NhcGluZy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrQkFBK0I7QUFDL0IsbUNBQW1DO0FBQ25DLHVDQUF5QjtBQUN6Qix1Q0FBeUI7QUFDekIsMkNBQTZCO0FBQzdCLDJFQUFnRjtBQUNoRix5Q0FBc0M7QUFFdEMsSUFBSSxDQUFDLHVDQUF1QyxFQUFFLEtBQUssSUFBSSxFQUFFO0lBQ3ZELE1BQU0sSUFBSSxHQUFHLElBQUkscUJBQVMsRUFBRSxDQUFDO0lBQzdCLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFLDJCQUEyQixDQUFDLENBQ3BELENBQUM7SUFDRixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUNyQixFQUFFLENBQUMsWUFBWSxDQUNiLElBQUksQ0FBQyxJQUFJLENBQ1AsU0FBUyxFQUNULFVBQVUsRUFDVix3Q0FBd0MsQ0FDekMsRUFDRCxPQUFPLENBQ1IsQ0FDRixDQUFDO0lBQ0YsSUFBSSwrQ0FBMEIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDekQsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXpCLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLGdEQUFnRCxDQUFDLEVBQ3BFLE9BQU8sQ0FDUixDQUFDO0lBQ0YsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO0FBQ25DLENBQUMsQ0FBQyxDQUFDO0FBRUgsOEVBQThFO0FBQzlFLGdGQUFnRjtBQUNoRixNQUFNO0FBQ04sMExBQTBMO0FBQzFMLGdMQUFnTDtBQUVoTCxJQUFJLENBQUMsaURBQWlELEVBQUUsS0FBSyxJQUFJLEVBQUU7SUFDakUsTUFBTSxJQUFJLEdBQUcsSUFBSSxxQkFBUyxFQUFFLENBQUM7SUFDN0IsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsNENBQTRDLENBQUMsQ0FDckUsQ0FBQztJQUNGLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQ3JCLEVBQUUsQ0FBQyxZQUFZLENBQ2IsSUFBSSxDQUFDLElBQUksQ0FDUCxTQUFTLEVBQ1QsVUFBVSxFQUNWLHlEQUF5RCxDQUMxRCxFQUNELE9BQU8sQ0FDUixDQUNGLENBQUM7SUFDRixJQUFJLCtDQUEwQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN6RCxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFekIsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsb0NBQW9DLENBQUMsRUFDeEQsT0FBTyxDQUNSLENBQUM7SUFDRixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7QUFDbkMsQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFJLENBQUMsb0NBQW9DLEVBQUUsS0FBSyxJQUFJLEVBQUU7SUFDcEQsTUFBTSxJQUFJLEdBQUcsSUFBSSxxQkFBUyxFQUFFLENBQUM7SUFDN0IsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsOEJBQThCLENBQUMsQ0FDdkQsQ0FBQztJQUNGLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQ3JCLEVBQUUsQ0FBQyxZQUFZLENBQ2IsSUFBSSxDQUFDLElBQUksQ0FDUCxTQUFTLEVBQ1QsVUFBVSxFQUNWLDJDQUEyQyxDQUM1QyxFQUNELE9BQU8sQ0FDUixDQUNGLENBQUM7SUFDRixJQUFJLCtDQUEwQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN6RCxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFekIsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsb0NBQW9DLENBQUMsRUFDeEQsT0FBTyxDQUNSLENBQUM7SUFDRixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7QUFDbkMsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIEhhc2hpQ29ycCwgSW5jXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTVBMLTIuMFxuaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzXCI7XG5pbXBvcnQgKiBhcyBvcyBmcm9tIFwib3NcIjtcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7IFRlcnJhZm9ybVByb3ZpZGVyR2VuZXJhdG9yIH0gZnJvbSBcIi4uLy4uL2dlbmVyYXRvci9wcm92aWRlci1nZW5lcmF0b3JcIjtcbmltcG9ydCB7IENvZGVNYWtlciB9IGZyb20gXCJjb2RlbWFrZXJcIjtcblxudGVzdChcImJyb2tlbiBhdHRyaWJ1dGUgZGVzY3JpcHRpb24gY29tbWVudHNcIiwgYXN5bmMgKCkgPT4ge1xuICBjb25zdCBjb2RlID0gbmV3IENvZGVNYWtlcigpO1xuICBjb25zdCB3b3JrZGlyID0gZnMubWtkdGVtcFN5bmMoXG4gICAgcGF0aC5qb2luKG9zLnRtcGRpcigpLCBcImRlc2NyaXB0aW9uLWVzY2FwaW5nLnRlc3RcIiksXG4gICk7XG4gIGNvbnN0IHNwZWMgPSBKU09OLnBhcnNlKFxuICAgIGZzLnJlYWRGaWxlU3luYyhcbiAgICAgIHBhdGguam9pbihcbiAgICAgICAgX19kaXJuYW1lLFxuICAgICAgICBcImZpeHR1cmVzXCIsXG4gICAgICAgIFwiZGVzY3JpcHRpb24tZXNjYXBpbmcudGVzdC5maXh0dXJlLmpzb25cIixcbiAgICAgICksXG4gICAgICBcInV0Zi04XCIsXG4gICAgKSxcbiAgKTtcbiAgbmV3IFRlcnJhZm9ybVByb3ZpZGVyR2VuZXJhdG9yKGNvZGUsIHNwZWMpLmdlbmVyYXRlQWxsKCk7XG4gIGF3YWl0IGNvZGUuc2F2ZSh3b3JrZGlyKTtcblxuICBjb25zdCBvdXRwdXQgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKHdvcmtkaXIsIFwicHJvdmlkZXJzL2dvb2dsZS9kZXNjcmlwdGlvbi1lc2NhcGluZy9pbmRleC50c1wiKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChvdXRwdXQpLnRvTWF0Y2hTbmFwc2hvdCgpO1xufSk7XG5cbi8vIFRoYXQgcG9wcGVkIHVwIGluIHRoZSBnb29nbGUtYmV0YSBwcm92aWRlciB3aGljaCB0cmFuc2Zvcm1zIG1hcmtkb3duIGZlbmNlZFxuLy8gY29kZSBibG9ja3MgZnJvbSB0aGUgYWN0dWFsIG1hcmtkb3duIGRvY3MgdG8gdGhlIHByb3ZpZGVyIHNjaGVtYSAoYGBgID0+ICcnJylcbi8vIHNlZVxuLy8gIC0gaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2hhc2hpY29ycC90ZXJyYWZvcm0tcHJvdmlkZXItZ29vZ2xlLWJldGEvNDA5NGUzYmRkNTMwY2E4NTNhMDQ2YTZkOTM4ODA3ZjhhMTMxYzdjNy93ZWJzaXRlL2RvY3Mvci9pYW1fd29ya2xvYWRfaWRlbnRpdHlfcG9vbF9wcm92aWRlci5odG1sLm1hcmtkb3duXG4vLyAgLSBodHRwczovL2dpdGh1Yi5jb20vaGFzaGljb3JwL3RlcnJhZm9ybS1wcm92aWRlci1nb29nbGUtYmV0YS9ibG9iLzQwOTRlM2JkZDUzMGNhODUzYTA0NmE2ZDkzODgwN2Y4YTEzMWM3YzcvZ29vZ2xlLWJldGEvcmVzb3VyY2VfaWFtX2JldGFfd29ya2xvYWRfaWRlbnRpdHlfcG9vbF9wcm92aWRlci5nb1xuXG50ZXN0KFwibWFsZm9ybWVkIGNvZGUgYmxvY2tzIHdoaWNoIGJyZWFrIGluIHB5dGhvbiByc3RcIiwgYXN5bmMgKCkgPT4ge1xuICBjb25zdCBjb2RlID0gbmV3IENvZGVNYWtlcigpO1xuICBjb25zdCB3b3JrZGlyID0gZnMubWtkdGVtcFN5bmMoXG4gICAgcGF0aC5qb2luKG9zLnRtcGRpcigpLCBcIm1hcmtkb3duLWRlc2NyaXB0aW9uLXdpdGgtY29kZS1ibG9ja3MudGVzdFwiKSxcbiAgKTtcbiAgY29uc3Qgc3BlYyA9IEpTT04ucGFyc2UoXG4gICAgZnMucmVhZEZpbGVTeW5jKFxuICAgICAgcGF0aC5qb2luKFxuICAgICAgICBfX2Rpcm5hbWUsXG4gICAgICAgIFwiZml4dHVyZXNcIixcbiAgICAgICAgXCJtYXJrZG93bi1kZXNjcmlwdGlvbi13aXRoLWNvZGUtYmxvY2tzLnRlc3QuZml4dHVyZS5qc29uXCIsXG4gICAgICApLFxuICAgICAgXCJ1dGYtOFwiLFxuICAgICksXG4gICk7XG4gIG5ldyBUZXJyYWZvcm1Qcm92aWRlckdlbmVyYXRvcihjb2RlLCBzcGVjKS5nZW5lcmF0ZUFsbCgpO1xuICBhd2FpdCBjb2RlLnNhdmUod29ya2Rpcik7XG5cbiAgY29uc3Qgb3V0cHV0ID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbih3b3JrZGlyLCBcInByb3ZpZGVycy9hd3MvY29kZS1ibG9ja3MvaW5kZXgudHNcIiksXG4gICAgXCJ1dGYtOFwiLFxuICApO1xuICBleHBlY3Qob3V0cHV0KS50b01hdGNoU25hcHNob3QoKTtcbn0pO1xuXG50ZXN0KFwiY29tbWVudCBlbmRpbmcgc2VxdWVuY2UgaW4gY29tbWVudFwiLCBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IGNvZGUgPSBuZXcgQ29kZU1ha2VyKCk7XG4gIGNvbnN0IHdvcmtkaXIgPSBmcy5ta2R0ZW1wU3luYyhcbiAgICBwYXRoLmpvaW4ob3MudG1wZGlyKCksIFwiY29tbWVudC1lbmRpbmctc2VxdWVuY2UudGVzdFwiKSxcbiAgKTtcbiAgY29uc3Qgc3BlYyA9IEpTT04ucGFyc2UoXG4gICAgZnMucmVhZEZpbGVTeW5jKFxuICAgICAgcGF0aC5qb2luKFxuICAgICAgICBfX2Rpcm5hbWUsXG4gICAgICAgIFwiZml4dHVyZXNcIixcbiAgICAgICAgXCJjb21tZW50LWVuZGluZy1zZXF1ZW5jZS50ZXN0LmZpeHR1cmUuanNvblwiLFxuICAgICAgKSxcbiAgICAgIFwidXRmLThcIixcbiAgICApLFxuICApO1xuICBuZXcgVGVycmFmb3JtUHJvdmlkZXJHZW5lcmF0b3IoY29kZSwgc3BlYykuZ2VuZXJhdGVBbGwoKTtcbiAgYXdhaXQgY29kZS5zYXZlKHdvcmtkaXIpO1xuXG4gIGNvbnN0IG91dHB1dCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4od29ya2RpciwgXCJwcm92aWRlcnMvYXdzL2NvZGUtYmxvY2tzL2luZGV4LnRzXCIpLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dCkudG9NYXRjaFNuYXBzaG90KCk7XG59KTtcbiJdfQ==
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRpb24tZXNjYXBpbmcudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9nZXQvX190ZXN0c19fL2dlbmVyYXRvci9kZXNjcmlwdGlvbi1lc2NhcGluZy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrQkFBK0I7QUFDL0IsbUNBQW1DO0FBQ25DLHVDQUF5QjtBQUN6QiwyQ0FBNkI7QUFDN0IsMkVBQWdGO0FBQ2hGLHlDQUFzQztBQUN0QyxrQ0FBMEM7QUFFMUMsTUFBTSxHQUFHLEdBQUcsSUFBQSxzQkFBZSxHQUFFLENBQUM7QUFFOUIsSUFBSSxDQUFDLHVDQUF1QyxFQUFFLEtBQUssSUFBSSxFQUFFO0lBQ3ZELE1BQU0sSUFBSSxHQUFHLElBQUkscUJBQVMsRUFBRSxDQUFDO0lBQzdCLE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0lBQ2pELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQ3JCLEVBQUUsQ0FBQyxZQUFZLENBQ2IsSUFBSSxDQUFDLElBQUksQ0FDUCxTQUFTLEVBQ1QsVUFBVSxFQUNWLHdDQUF3QyxDQUN6QyxFQUNELE9BQU8sQ0FDUixDQUNGLENBQUM7SUFDRixJQUFJLCtDQUEwQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN6RCxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFekIsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsZ0RBQWdELENBQUMsRUFDcEUsT0FBTyxDQUNSLENBQUM7SUFDRixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7QUFDbkMsQ0FBQyxDQUFDLENBQUM7QUFFSCw4RUFBOEU7QUFDOUUsZ0ZBQWdGO0FBQ2hGLE1BQU07QUFDTiwwTEFBMEw7QUFDMUwsZ0xBQWdMO0FBRWhMLElBQUksQ0FBQyxpREFBaUQsRUFBRSxLQUFLLElBQUksRUFBRTtJQUNqRSxNQUFNLElBQUksR0FBRyxJQUFJLHFCQUFTLEVBQUUsQ0FBQztJQUM3QixNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsNENBQTRDLENBQUMsQ0FBQztJQUNsRSxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUNyQixFQUFFLENBQUMsWUFBWSxDQUNiLElBQUksQ0FBQyxJQUFJLENBQ1AsU0FBUyxFQUNULFVBQVUsRUFDVix5REFBeUQsQ0FDMUQsRUFDRCxPQUFPLENBQ1IsQ0FDRixDQUFDO0lBQ0YsSUFBSSwrQ0FBMEIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDekQsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXpCLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLG9DQUFvQyxDQUFDLEVBQ3hELE9BQU8sQ0FDUixDQUFDO0lBQ0YsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO0FBQ25DLENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLG9DQUFvQyxFQUFFLEtBQUssSUFBSSxFQUFFO0lBQ3BELE1BQU0sSUFBSSxHQUFHLElBQUkscUJBQVMsRUFBRSxDQUFDO0lBQzdCLE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO0lBQ3BELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQ3JCLEVBQUUsQ0FBQyxZQUFZLENBQ2IsSUFBSSxDQUFDLElBQUksQ0FDUCxTQUFTLEVBQ1QsVUFBVSxFQUNWLDJDQUEyQyxDQUM1QyxFQUNELE9BQU8sQ0FDUixDQUNGLENBQUM7SUFDRixJQUFJLCtDQUEwQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN6RCxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFekIsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsb0NBQW9DLENBQUMsRUFDeEQsT0FBTyxDQUNSLENBQUM7SUFDRixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7QUFDbkMsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIEhhc2hpQ29ycCwgSW5jXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTVBMLTIuMFxuaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzXCI7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBUZXJyYWZvcm1Qcm92aWRlckdlbmVyYXRvciB9IGZyb20gXCIuLi8uLi9nZW5lcmF0b3IvcHJvdmlkZXItZ2VuZXJhdG9yXCI7XG5pbXBvcnQgeyBDb2RlTWFrZXIgfSBmcm9tIFwiY29kZW1ha2VyXCI7XG5pbXBvcnQgeyBjcmVhdGVUbXBIZWxwZXIgfSBmcm9tIFwiLi4vdXRpbFwiO1xuXG5jb25zdCB0bXAgPSBjcmVhdGVUbXBIZWxwZXIoKTtcblxudGVzdChcImJyb2tlbiBhdHRyaWJ1dGUgZGVzY3JpcHRpb24gY29tbWVudHNcIiwgYXN5bmMgKCkgPT4ge1xuICBjb25zdCBjb2RlID0gbmV3IENvZGVNYWtlcigpO1xuICBjb25zdCB3b3JrZGlyID0gdG1wKFwiZGVzY3JpcHRpb24tZXNjYXBpbmcudGVzdFwiKTtcbiAgY29uc3Qgc3BlYyA9IEpTT04ucGFyc2UoXG4gICAgZnMucmVhZEZpbGVTeW5jKFxuICAgICAgcGF0aC5qb2luKFxuICAgICAgICBfX2Rpcm5hbWUsXG4gICAgICAgIFwiZml4dHVyZXNcIixcbiAgICAgICAgXCJkZXNjcmlwdGlvbi1lc2NhcGluZy50ZXN0LmZpeHR1cmUuanNvblwiLFxuICAgICAgKSxcbiAgICAgIFwidXRmLThcIixcbiAgICApLFxuICApO1xuICBuZXcgVGVycmFmb3JtUHJvdmlkZXJHZW5lcmF0b3IoY29kZSwgc3BlYykuZ2VuZXJhdGVBbGwoKTtcbiAgYXdhaXQgY29kZS5zYXZlKHdvcmtkaXIpO1xuXG4gIGNvbnN0IG91dHB1dCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4od29ya2RpciwgXCJwcm92aWRlcnMvZ29vZ2xlL2Rlc2NyaXB0aW9uLWVzY2FwaW5nL2luZGV4LnRzXCIpLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dCkudG9NYXRjaFNuYXBzaG90KCk7XG59KTtcblxuLy8gVGhhdCBwb3BwZWQgdXAgaW4gdGhlIGdvb2dsZS1iZXRhIHByb3ZpZGVyIHdoaWNoIHRyYW5zZm9ybXMgbWFya2Rvd24gZmVuY2VkXG4vLyBjb2RlIGJsb2NrcyBmcm9tIHRoZSBhY3R1YWwgbWFya2Rvd24gZG9jcyB0byB0aGUgcHJvdmlkZXIgc2NoZW1hIChgYGAgPT4gJycnKVxuLy8gc2VlXG4vLyAgLSBodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vaGFzaGljb3JwL3RlcnJhZm9ybS1wcm92aWRlci1nb29nbGUtYmV0YS80MDk0ZTNiZGQ1MzBjYTg1M2EwNDZhNmQ5Mzg4MDdmOGExMzFjN2M3L3dlYnNpdGUvZG9jcy9yL2lhbV93b3JrbG9hZF9pZGVudGl0eV9wb29sX3Byb3ZpZGVyLmh0bWwubWFya2Rvd25cbi8vICAtIGh0dHBzOi8vZ2l0aHViLmNvbS9oYXNoaWNvcnAvdGVycmFmb3JtLXByb3ZpZGVyLWdvb2dsZS1iZXRhL2Jsb2IvNDA5NGUzYmRkNTMwY2E4NTNhMDQ2YTZkOTM4ODA3ZjhhMTMxYzdjNy9nb29nbGUtYmV0YS9yZXNvdXJjZV9pYW1fYmV0YV93b3JrbG9hZF9pZGVudGl0eV9wb29sX3Byb3ZpZGVyLmdvXG5cbnRlc3QoXCJtYWxmb3JtZWQgY29kZSBibG9ja3Mgd2hpY2ggYnJlYWsgaW4gcHl0aG9uIHJzdFwiLCBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IGNvZGUgPSBuZXcgQ29kZU1ha2VyKCk7XG4gIGNvbnN0IHdvcmtkaXIgPSB0bXAoXCJtYXJrZG93bi1kZXNjcmlwdGlvbi13aXRoLWNvZGUtYmxvY2tzLnRlc3RcIik7XG4gIGNvbnN0IHNwZWMgPSBKU09OLnBhcnNlKFxuICAgIGZzLnJlYWRGaWxlU3luYyhcbiAgICAgIHBhdGguam9pbihcbiAgICAgICAgX19kaXJuYW1lLFxuICAgICAgICBcImZpeHR1cmVzXCIsXG4gICAgICAgIFwibWFya2Rvd24tZGVzY3JpcHRpb24td2l0aC1jb2RlLWJsb2Nrcy50ZXN0LmZpeHR1cmUuanNvblwiLFxuICAgICAgKSxcbiAgICAgIFwidXRmLThcIixcbiAgICApLFxuICApO1xuICBuZXcgVGVycmFmb3JtUHJvdmlkZXJHZW5lcmF0b3IoY29kZSwgc3BlYykuZ2VuZXJhdGVBbGwoKTtcbiAgYXdhaXQgY29kZS5zYXZlKHdvcmtkaXIpO1xuXG4gIGNvbnN0IG91dHB1dCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4od29ya2RpciwgXCJwcm92aWRlcnMvYXdzL2NvZGUtYmxvY2tzL2luZGV4LnRzXCIpLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dCkudG9NYXRjaFNuYXBzaG90KCk7XG59KTtcblxudGVzdChcImNvbW1lbnQgZW5kaW5nIHNlcXVlbmNlIGluIGNvbW1lbnRcIiwgYXN5bmMgKCkgPT4ge1xuICBjb25zdCBjb2RlID0gbmV3IENvZGVNYWtlcigpO1xuICBjb25zdCB3b3JrZGlyID0gdG1wKFwiY29tbWVudC1lbmRpbmctc2VxdWVuY2UudGVzdFwiKTtcbiAgY29uc3Qgc3BlYyA9IEpTT04ucGFyc2UoXG4gICAgZnMucmVhZEZpbGVTeW5jKFxuICAgICAgcGF0aC5qb2luKFxuICAgICAgICBfX2Rpcm5hbWUsXG4gICAgICAgIFwiZml4dHVyZXNcIixcbiAgICAgICAgXCJjb21tZW50LWVuZGluZy1zZXF1ZW5jZS50ZXN0LmZpeHR1cmUuanNvblwiLFxuICAgICAgKSxcbiAgICAgIFwidXRmLThcIixcbiAgICApLFxuICApO1xuICBuZXcgVGVycmFmb3JtUHJvdmlkZXJHZW5lcmF0b3IoY29kZSwgc3BlYykuZ2VuZXJhdGVBbGwoKTtcbiAgYXdhaXQgY29kZS5zYXZlKHdvcmtkaXIpO1xuXG4gIGNvbnN0IG91dHB1dCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4od29ya2RpciwgXCJwcm92aWRlcnMvYXdzL2NvZGUtYmxvY2tzL2luZGV4LnRzXCIpLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dCkudG9NYXRjaFNuYXBzaG90KCk7XG59KTtcbiJdfQ==
@@ -26,15 +26,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
26
26
  // Copyright (c) HashiCorp, Inc
27
27
  // SPDX-License-Identifier: MPL-2.0
28
28
  const fs = __importStar(require("fs"));
29
- const os = __importStar(require("os"));
30
29
  const path = __importStar(require("path"));
31
30
  const provider_generator_1 = require("../../generator/provider-generator");
32
31
  const codemaker_1 = require("codemaker");
32
+ const util_1 = require("../util");
33
+ const tmp = (0, util_1.createTmpHelper)();
33
34
  test("provider with no resources", async () => {
34
35
  const code = new codemaker_1.CodeMaker();
35
- const workdir = fs.mkdtempSync(path.join(os.tmpdir(), "empty-provider-resources.test"));
36
+ const workdir = tmp("empty-provider-resources.test");
36
37
  const spec = JSON.parse(fs.readFileSync(path.join(__dirname, "fixtures", "empty-provider-resources.test.fixture.json"), "utf-8"));
37
38
  new provider_generator_1.TerraformProviderGenerator(code, spec).generateAll();
38
39
  await code.save(workdir);
39
40
  });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHktcHJvdmlkZXItcmVzb3VyY2VzLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZ2V0L19fdGVzdHNfXy9nZW5lcmF0b3IvZW1wdHktcHJvdmlkZXItcmVzb3VyY2VzLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtCQUErQjtBQUMvQixtQ0FBbUM7QUFDbkMsdUNBQXlCO0FBQ3pCLHVDQUF5QjtBQUN6QiwyQ0FBNkI7QUFDN0IsMkVBQWdGO0FBQ2hGLHlDQUFzQztBQUV0QyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsS0FBSyxJQUFJLEVBQUU7SUFDNUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxxQkFBUyxFQUFFLENBQUM7SUFDN0IsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsK0JBQStCLENBQUMsQ0FDeEQsQ0FBQztJQUNGLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQ3JCLEVBQUUsQ0FBQyxZQUFZLENBQ2IsSUFBSSxDQUFDLElBQUksQ0FDUCxTQUFTLEVBQ1QsVUFBVSxFQUNWLDRDQUE0QyxDQUM3QyxFQUNELE9BQU8sQ0FDUixDQUNGLENBQUM7SUFDRixJQUFJLCtDQUEwQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN6RCxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDM0IsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIEhhc2hpQ29ycCwgSW5jXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTVBMLTIuMFxuaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzXCI7XG5pbXBvcnQgKiBhcyBvcyBmcm9tIFwib3NcIjtcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7IFRlcnJhZm9ybVByb3ZpZGVyR2VuZXJhdG9yIH0gZnJvbSBcIi4uLy4uL2dlbmVyYXRvci9wcm92aWRlci1nZW5lcmF0b3JcIjtcbmltcG9ydCB7IENvZGVNYWtlciB9IGZyb20gXCJjb2RlbWFrZXJcIjtcblxudGVzdChcInByb3ZpZGVyIHdpdGggbm8gcmVzb3VyY2VzXCIsIGFzeW5jICgpID0+IHtcbiAgY29uc3QgY29kZSA9IG5ldyBDb2RlTWFrZXIoKTtcbiAgY29uc3Qgd29ya2RpciA9IGZzLm1rZHRlbXBTeW5jKFxuICAgIHBhdGguam9pbihvcy50bXBkaXIoKSwgXCJlbXB0eS1wcm92aWRlci1yZXNvdXJjZXMudGVzdFwiKSxcbiAgKTtcbiAgY29uc3Qgc3BlYyA9IEpTT04ucGFyc2UoXG4gICAgZnMucmVhZEZpbGVTeW5jKFxuICAgICAgcGF0aC5qb2luKFxuICAgICAgICBfX2Rpcm5hbWUsXG4gICAgICAgIFwiZml4dHVyZXNcIixcbiAgICAgICAgXCJlbXB0eS1wcm92aWRlci1yZXNvdXJjZXMudGVzdC5maXh0dXJlLmpzb25cIixcbiAgICAgICksXG4gICAgICBcInV0Zi04XCIsXG4gICAgKSxcbiAgKTtcbiAgbmV3IFRlcnJhZm9ybVByb3ZpZGVyR2VuZXJhdG9yKGNvZGUsIHNwZWMpLmdlbmVyYXRlQWxsKCk7XG4gIGF3YWl0IGNvZGUuc2F2ZSh3b3JrZGlyKTtcbn0pO1xuIl19
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHktcHJvdmlkZXItcmVzb3VyY2VzLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZ2V0L19fdGVzdHNfXy9nZW5lcmF0b3IvZW1wdHktcHJvdmlkZXItcmVzb3VyY2VzLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtCQUErQjtBQUMvQixtQ0FBbUM7QUFDbkMsdUNBQXlCO0FBQ3pCLDJDQUE2QjtBQUM3QiwyRUFBZ0Y7QUFDaEYseUNBQXNDO0FBQ3RDLGtDQUEwQztBQUUxQyxNQUFNLEdBQUcsR0FBRyxJQUFBLHNCQUFlLEdBQUUsQ0FBQztBQUU5QixJQUFJLENBQUMsNEJBQTRCLEVBQUUsS0FBSyxJQUFJLEVBQUU7SUFDNUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxxQkFBUyxFQUFFLENBQUM7SUFDN0IsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLCtCQUErQixDQUFDLENBQUM7SUFDckQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FDckIsRUFBRSxDQUFDLFlBQVksQ0FDYixJQUFJLENBQUMsSUFBSSxDQUNQLFNBQVMsRUFDVCxVQUFVLEVBQ1YsNENBQTRDLENBQzdDLEVBQ0QsT0FBTyxDQUNSLENBQ0YsQ0FBQztJQUNGLElBQUksK0NBQTBCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3pELE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUMzQixDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgSGFzaGlDb3JwLCBJbmNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNUEwtMi4wXG5pbXBvcnQgKiBhcyBmcyBmcm9tIFwiZnNcIjtcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7IFRlcnJhZm9ybVByb3ZpZGVyR2VuZXJhdG9yIH0gZnJvbSBcIi4uLy4uL2dlbmVyYXRvci9wcm92aWRlci1nZW5lcmF0b3JcIjtcbmltcG9ydCB7IENvZGVNYWtlciB9IGZyb20gXCJjb2RlbWFrZXJcIjtcbmltcG9ydCB7IGNyZWF0ZVRtcEhlbHBlciB9IGZyb20gXCIuLi91dGlsXCI7XG5cbmNvbnN0IHRtcCA9IGNyZWF0ZVRtcEhlbHBlcigpO1xuXG50ZXN0KFwicHJvdmlkZXIgd2l0aCBubyByZXNvdXJjZXNcIiwgYXN5bmMgKCkgPT4ge1xuICBjb25zdCBjb2RlID0gbmV3IENvZGVNYWtlcigpO1xuICBjb25zdCB3b3JrZGlyID0gdG1wKFwiZW1wdHktcHJvdmlkZXItcmVzb3VyY2VzLnRlc3RcIik7XG4gIGNvbnN0IHNwZWMgPSBKU09OLnBhcnNlKFxuICAgIGZzLnJlYWRGaWxlU3luYyhcbiAgICAgIHBhdGguam9pbihcbiAgICAgICAgX19kaXJuYW1lLFxuICAgICAgICBcImZpeHR1cmVzXCIsXG4gICAgICAgIFwiZW1wdHktcHJvdmlkZXItcmVzb3VyY2VzLnRlc3QuZml4dHVyZS5qc29uXCIsXG4gICAgICApLFxuICAgICAgXCJ1dGYtOFwiLFxuICAgICksXG4gICk7XG4gIG5ldyBUZXJyYWZvcm1Qcm92aWRlckdlbmVyYXRvcihjb2RlLCBzcGVjKS5nZW5lcmF0ZUFsbCgpO1xuICBhd2FpdCBjb2RlLnNhdmUod29ya2Rpcik7XG59KTtcbiJdfQ==
@@ -26,16 +26,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
26
26
  // Copyright (c) HashiCorp, Inc
27
27
  // SPDX-License-Identifier: MPL-2.0
28
28
  const fs = __importStar(require("fs"));
29
- const os = __importStar(require("os"));
30
29
  const path = __importStar(require("path"));
31
30
  const provider_generator_1 = require("../../generator/provider-generator");
32
31
  const codemaker_1 = require("codemaker");
32
+ const util_1 = require("../util");
33
+ const tmp = (0, util_1.createTmpHelper)();
33
34
  // this is a workaround for a bug introduced in TS 3.9.x and seems to be unlikely to get fixed.
34
35
  // Since jsii relies on TS < 4 at the moment we can't use newer TS versions which have this fixed (^4.1).
35
36
  // see https://github.com/hashicorp/terraform-cdk/pull/1248 for more context
36
37
  test("shard exports across multiple files to avoid generating files with more than a 1000 exports", async () => {
37
38
  const code = new codemaker_1.CodeMaker();
38
- const workdir = fs.mkdtempSync(path.join(os.tmpdir(), "export-sharding.test"));
39
+ const workdir = tmp("export-sharding.test");
39
40
  const spec = JSON.parse(fs.readFileSync(path.join(__dirname, "fixtures", "aws_wafv2_web_acl.test.fixture.json"), "utf-8"));
40
41
  new provider_generator_1.TerraformProviderGenerator(code, spec).generateAll();
41
42
  await code.save(workdir);
@@ -66,7 +67,7 @@ test("shard exports across multiple files to avoid generating files with more th
66
67
  });
67
68
  test("shard exports across multiple files to avoid generating files with more than a 1000 exports in a provider without namespaces", async () => {
68
69
  const code = new codemaker_1.CodeMaker();
69
- const workdir = fs.mkdtempSync(path.join(os.tmpdir(), "export-sharding-no-namespace.test"));
70
+ const workdir = tmp("export-sharding-no-namespace.test");
70
71
  const spec = JSON.parse(fs.readFileSync(path.join(__dirname, "fixtures", "datadog_dashboard.test.fixture.json"), "utf-8"));
71
72
  new provider_generator_1.TerraformProviderGenerator(code, spec).generateAll();
72
73
  await code.save(workdir);
@@ -79,4 +80,4 @@ test("shard exports across multiple files to avoid generating files with more th
79
80
  const outputStructs400 = fs.readFileSync(path.join(workdir, "providers/datadog/dashboard/index-structs/structs400.ts"), "utf-8");
80
81
  expect(outputStructs400).toMatchSnapshot(`structs400`);
81
82
  });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LXNoYXJkaW5nLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZ2V0L19fdGVzdHNfXy9nZW5lcmF0b3IvZXhwb3J0LXNoYXJkaW5nLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtCQUErQjtBQUMvQixtQ0FBbUM7QUFDbkMsdUNBQXlCO0FBQ3pCLHVDQUF5QjtBQUN6QiwyQ0FBNkI7QUFDN0IsMkVBQWdGO0FBQ2hGLHlDQUFzQztBQUV0QywrRkFBK0Y7QUFDL0YseUdBQXlHO0FBQ3pHLDRFQUE0RTtBQUM1RSxJQUFJLENBQUMsNkZBQTZGLEVBQUUsS0FBSyxJQUFJLEVBQUU7SUFDN0csTUFBTSxJQUFJLEdBQUcsSUFBSSxxQkFBUyxFQUFFLENBQUM7SUFDN0IsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsc0JBQXNCLENBQUMsQ0FDL0MsQ0FBQztJQUVGLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQ3JCLEVBQUUsQ0FBQyxZQUFZLENBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLHFDQUFxQyxDQUFDLEVBQ3ZFLE9BQU8sQ0FDUixDQUNGLENBQUM7SUFDRixJQUFJLCtDQUEwQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN6RCxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFekIsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsdUNBQXVDLENBQUMsRUFDM0QsT0FBTyxDQUNSLENBQUM7SUFDRixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsZUFBZSxD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QUFPLENBQ1IsQ0FBQztJQUNGLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFbkQsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUN0QyxJQUFJLENBQUMsSUFBSSxDQUNQLE9BQU8sRUFDUCx5REFBeUQsQ0FDMUQsRUFDRCxPQUFPLENBQ1IsQ0FBQztJQUNGLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUN6RCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgSGFzaGlDb3JwLCBJbmNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNUEwtMi4wXG5pbXBvcnQgKiBhcyBmcyBmcm9tIFwiZnNcIjtcbmltcG9ydCAqIGFzIG9zIGZyb20gXCJvc1wiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgVGVycmFmb3JtUHJvdmlkZXJHZW5lcmF0b3IgfSBmcm9tIFwiLi4vLi4vZ2VuZXJhdG9yL3Byb3ZpZGVyLWdlbmVyYXRvclwiO1xuaW1wb3J0IHsgQ29kZU1ha2VyIH0gZnJvbSBcImNvZGVtYWtlclwiO1xuXG4vLyB0aGlzIGlzIGEgd29ya2Fyb3VuZCBmb3IgYSBidWcgaW50cm9kdWNlZCBpbiBUUyAzLjkueCBhbmQgc2VlbXMgdG8gYmUgdW5saWtlbHkgdG8gZ2V0IGZpeGVkLlxuLy8gU2luY2UganNpaSByZWxpZXMgb24gVFMgPCA0IGF0IHRoZSBtb21lbnQgd2UgY2FuJ3QgdXNlIG5ld2VyIFRTIHZlcnNpb25zIHdoaWNoIGhhdmUgdGhpcyBmaXhlZCAoXjQuMSkuXG4vLyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2hhc2hpY29ycC90ZXJyYWZvcm0tY2RrL3B1bGwvMTI0OCBmb3IgbW9yZSBjb250ZXh0XG50ZXN0KFwic2hhcmQgZXhwb3J0cyBhY3Jvc3MgbXVsdGlwbGUgZmlsZXMgdG8gYXZvaWQgZ2VuZXJhdGluZyBmaWxlcyB3aXRoIG1vcmUgdGhhbiBhIDEwMDAgZXhwb3J0c1wiLCBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IGNvZGUgPSBuZXcgQ29kZU1ha2VyKCk7XG4gIGNvbnN0IHdvcmtkaXIgPSBmcy5ta2R0ZW1wU3luYyhcbiAgICBwYXRoLmpvaW4ob3MudG1wZGlyKCksIFwiZXhwb3J0LXNoYXJkaW5nLnRlc3RcIiksXG4gICk7XG5cbiAgY29uc3Qgc3BlYyA9IEpTT04ucGFyc2UoXG4gICAgZnMucmVhZEZpbGVTeW5jKFxuICAgICAgcGF0aC5qb2luKF9fZGlybmFtZSwgXCJmaXh0dXJlc1wiLCBcImF3c193YWZ2Ml93ZWJfYWNsLnRlc3QuZml4dHVyZS5qc29uXCIpLFxuICAgICAgXCJ1dGYtOFwiLFxuICAgICksXG4gICk7XG4gIG5ldyBUZXJyYWZvcm1Qcm92aWRlckdlbmVyYXRvcihjb2RlLCBzcGVjKS5nZW5lcmF0ZUFsbCgpO1xuICBhd2FpdCBjb2RlLnNhdmUod29ya2Rpcik7XG5cbiAgY29uc3Qgb3V0cHV0ID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbih3b3JrZGlyLCBcInByb3ZpZGVycy90ZXN0L3dhZnYyLXdlYi1hY2wvaW5kZXgudHNcIiksXG4gICAgXCJ1dGYtOFwiLFxuICApO1xuICBleHBlY3Qob3V0cHV0KS50b01hdGNoU25hcHNob3QoYHdhZnYyLXdlYi1hY2wtcmVzb3VyY2VgKTtcblxuICBjb25zdCBvdXRwdXRTdHJ1Y3RzSW5kZXggPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKHdvcmtkaXIsIFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC1zdHJ1Y3RzL2luZGV4LnRzXCIpLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dFN0cnVjdHNJbmRleCkudG9NYXRjaFNuYXBzaG90KGBzdHJ1Y3RzLWluZGV4YCk7XG5cbiAgY29uc3Qgb3V0cHV0U3RydWN0czAgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKFxuICAgICAgd29ya2RpcixcbiAgICAgIFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC1zdHJ1Y3RzL3N0cnVjdHMwLnRzXCIsXG4gICAgKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChvdXRwdXRTdHJ1Y3RzMCkudG9NYXRjaFNuYXBzaG90KGBzdHJ1Y3RzMGApO1xuXG4gIGNvbnN0IG91dHB1dFN0cnVjdHM0MDAgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKFxuICAgICAgd29ya2RpcixcbiAgICAgIFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC1zdHJ1Y3RzL3N0cnVjdHM0MDAudHNcIixcbiAgICApLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dFN0cnVjdHM0MDApLnRvTWF0Y2hTbmFwc2hvdChgc3RydWN0czQwMGApO1xuXG4gIGNvbnN0IG91dHB1dFN0cnVjdHM4MDAgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKFxuICAgICAgd29ya2RpcixcbiAgICAgIFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC1zdHJ1Y3RzL3N0cnVjdHM4MDAudHNcIixcbiAgICApLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dFN0cnVjdHM4MDApLnRvTWF0Y2hTbmFwc2hvdChgc3RydWN0czgwMGApO1xuXG4gIGNvbnN0IG91dHB1dFN0cnVjdHMxMjAwID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbihcbiAgICAgIHdvcmtkaXIsXG4gICAgICBcInByb3ZpZGVycy90ZXN0L3dhZnYyLXdlYi1hY2wvaW5kZXgtc3RydWN0cy9zdHJ1Y3RzMTIwMC50c1wiLFxuICAgICksXG4gICAgXCJ1dGYtOFwiLFxuICApO1xuICBleHBlY3Qob3V0cHV0U3RydWN0czEyMDApLnRvTWF0Y2hTbmFwc2hvdChgc3RydWN0czEyMDBgKTtcblxuICBjb25zdCBvdXRwdXRTdHJ1Y3RzMTYwMCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4oXG4gICAgICB3b3JrZGlyLFxuICAgICAgXCJwcm92aWRlcnMvdGVzdC93YWZ2Mi13ZWItYWNsL2luZGV4LXN0cnVjdHMvc3RydWN0czE2MDAudHNcIixcbiAgICApLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dFN0cnVjdHMxNjAwKS50b01hdGNoU25hcHNob3QoYHN0cnVjdHMxNjAwYCk7XG5cbiAgY29uc3Qgb3V0cHV0U3RydWN0czIwMDAgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKFxuICAgICAgd29ya2RpcixcbiAgICAgIFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC1zdHJ1Y3RzL3N0cnVjdHMyMDAwLnRzXCIsXG4gICAgKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChvdXRwdXRTdHJ1Y3RzMjAwMCkudG9NYXRjaFNuYXBzaG90KGBzdHJ1Y3RzMjAwMGApO1xuXG4gIGNvbnN0IG91dHB1dFN0cnVjdHMyNDAwID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbihcbiAgICAgIHdvcmtkaXIsXG4gICAgICBcInByb3ZpZGVycy90ZXN0L3dhZnYyLXdlYi1hY2wvaW5kZXgtc3RydWN0cy9zdHJ1Y3RzMjQwMC50c1wiLFxuICAgICksXG4gICAgXCJ1dGYtOFwiLFxuICApO1xuICBleHBlY3Qob3V0cHV0U3RydWN0czI0MDApLnRvTWF0Y2hTbmFwc2hvdChgc3RydWN0czI0MDBgKTtcblxuICBjb25zdCBvdXRwdXRTdHJ1Y3RzMjgwMCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4oXG4gICAgICB3b3JrZGlyLFxuICAgICAgXCJwcm92aWRlcnMvdGVzdC93YWZ2Mi13ZWItYWNsL2luZGV4LXN0cnVjdHMvc3RydWN0czI4MDAudHNcIixcbiAgICApLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dFN0cnVjdHMyODAwKS50b01hdGNoU25hcHNob3QoYHN0cnVjdHMyODAwYCk7XG5cbiAgY29uc3Qgb3V0cHV0U3RydWN0czMyMDAgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKFxuICAgICAgd29ya2RpcixcbiAgICAgIFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC1zdHJ1Y3RzL3N0cnVjdHMzMjAwLnRzXCIsXG4gICAgKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChvdXRwdXRTdHJ1Y3RzMzIwMCkudG9NYXRjaFNuYXBzaG90KGBzdHJ1Y3RzMzIwMGApO1xuXG4gIGNvbnN0IG91dHB1dFN0cnVjdHMzNjAwID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbihcbiAgICAgIHdvcmtkaXIsXG4gICAgICBcInByb3ZpZGVycy90ZXN0L3dhZnYyLXdlYi1hY2wvaW5kZXgtc3RydWN0cy9zdHJ1Y3RzMzYwMC50c1wiLFxuICAgICksXG4gICAgXCJ1dGYtOFwiLFxuICApO1xuICBleHBlY3Qob3V0cHV0U3RydWN0czM2MDApLnRvTWF0Y2hTbmFwc2hvdChgc3RydWN0czM2MDBgKTtcbn0pO1xuXG50ZXN0KFwic2hhcmQgZXhwb3J0cyBhY3Jvc3MgbXVsdGlwbGUgZmlsZXMgdG8gYXZvaWQgZ2VuZXJhdGluZyBmaWxlcyB3aXRoIG1vcmUgdGhhbiBhIDEwMDAgZXhwb3J0cyBpbiBhIHByb3ZpZGVyIHdpdGhvdXQgbmFtZXNwYWNlc1wiLCBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IGNvZGUgPSBuZXcgQ29kZU1ha2VyKCk7XG4gIGNvbnN0IHdvcmtkaXIgPSBmcy5ta2R0ZW1wU3luYyhcbiAgICBwYXRoLmpvaW4ob3MudG1wZGlyKCksIFwiZXhwb3J0LXNoYXJkaW5nLW5vLW5hbWVzcGFjZS50ZXN0XCIpLFxuICApO1xuXG4gIGNvbnN0IHNwZWMgPSBKU09OLnBhcnNlKFxuICAgIGZzLnJlYWRGaWxlU3luYyhcbiAgICAgIHBhdGguam9pbihfX2Rpcm5hbWUsIFwiZml4dHVyZXNcIiwgXCJkYXRhZG9nX2Rhc2hib2FyZC50ZXN0LmZpeHR1cmUuanNvblwiKSxcbiAgICAgIFwidXRmLThcIixcbiAgICApLFxuICApO1xuICBuZXcgVGVycmFmb3JtUHJvdmlkZXJHZW5lcmF0b3IoY29kZSwgc3BlYykuZ2VuZXJhdGVBbGwoKTtcbiAgYXdhaXQgY29kZS5zYXZlKHdvcmtkaXIpO1xuXG4gIGNvbnN0IG91dHB1dCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4od29ya2RpciwgXCJwcm92aWRlcnMvZGF0YWRvZy9kYXNoYm9hcmQvaW5kZXgudHNcIiksXG4gICAgXCJ1dGYtOFwiLFxuICApO1xuICBleHBlY3Qob3V0cHV0KS50b01hdGNoU25hcHNob3QoYGRhc2hib2FyZC1yZXNvdXJjZWApO1xuXG4gIGNvbnN0IG91dHB1dFN0cnVjdHNJbmRleCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4od29ya2RpciwgXCJwcm92aWRlcnMvZGF0YWRvZy9kYXNoYm9hcmQvaW5kZXgtc3RydWN0cy9pbmRleC50c1wiKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChvdXRwdXRTdHJ1Y3RzSW5kZXgpLnRvTWF0Y2hTbmFwc2hvdChgc3RydWN0cy1pbmRleGApO1xuXG4gIGNvbnN0IG91dHB1dFN0cnVjdHMwID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbih3b3JrZGlyLCBcInByb3ZpZGVycy9kYXRhZG9nL2Rhc2hib2FyZC9pbmRleC1zdHJ1Y3RzL3N0cnVjdHMwLnRzXCIpLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dFN0cnVjdHMwKS50b01hdGNoU25hcHNob3QoYHN0cnVjdHMwYCk7XG5cbiAgY29uc3Qgb3V0cHV0U3RydWN0czQwMCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4oXG4gICAgICB3b3JrZGlyLFxuICAgICAgXCJwcm92aWRlcnMvZGF0YWRvZy9kYXNoYm9hcmQvaW5kZXgtc3RydWN0cy9zdHJ1Y3RzNDAwLnRzXCIsXG4gICAgKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChvdXRwdXRTdHJ1Y3RzNDAwKS50b01hdGNoU25hcHNob3QoYHN0cnVjdHM0MDBgKTtcbn0pO1xuIl19
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LXNoYXJkaW5nLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZ2V0L19fdGVzdHNfXy9nZW5lcmF0b3IvZXhwb3J0LXNoYXJkaW5nLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtCQUErQjtBQUMvQixtQ0FBbUM7QUFDbkMsdUNBQXlCO0FBQ3pCLDJDQUE2QjtBQUM3QiwyRUFBZ0Y7QUFDaEYseUNBQXNDO0FBQ3RDLGtDQUEwQztBQUUxQyxNQUFNLEdBQUcsR0FBRyxJQUFBLHNCQUFlLEdBQUUsQ0FBQztBQUU5QiwrRkFBK0Y7QUFDL0YseUdBQXlHO0FBQ3pHLDRFQUE0RTtBQUM1RSxJQUFJLENBQUMsNkZBQTZGLEVBQUUsS0FBSyxJQUFJLEVBQUU7SUFDN0csTUFBTSxJQUFJLEdBQUcsSUFBSSxxQkFBUyxFQUFFLENBQUM7SUFDN0IsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFFNUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FDckIsRUFBRSxDQUFDLFlBQVksQ0FDYixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUscUNBQXFDLENBQUMsRUFDdkUsT0FBTyxDQUNSLENBQ0YsQ0FBQztJQUNGLElBQUksK0NBQTBCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3pELE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV6QixNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUMsWUFBWSxDQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSx1Q0FBdUMsQ0FBQyxFQUMzRCxPQUFPLENBQ1IsQ0FBQztJQUNGLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUFlLENBQUMsd0JBQXdCLENBQUMsQ0FB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Z0JBQWdCLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FDdEMsSUFBSSxDQUFDLElBQUksQ0FDUCxPQUFPLEVBQ1AseURBQXlELENBQzFELEVBQ0QsT0FBTyxDQUNSLENBQUM7SUFDRixNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDekQsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIEhhc2hpQ29ycCwgSW5jXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTVBMLTIuMFxuaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzXCI7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBUZXJyYWZvcm1Qcm92aWRlckdlbmVyYXRvciB9IGZyb20gXCIuLi8uLi9nZW5lcmF0b3IvcHJvdmlkZXItZ2VuZXJhdG9yXCI7XG5pbXBvcnQgeyBDb2RlTWFrZXIgfSBmcm9tIFwiY29kZW1ha2VyXCI7XG5pbXBvcnQgeyBjcmVhdGVUbXBIZWxwZXIgfSBmcm9tIFwiLi4vdXRpbFwiO1xuXG5jb25zdCB0bXAgPSBjcmVhdGVUbXBIZWxwZXIoKTtcblxuLy8gdGhpcyBpcyBhIHdvcmthcm91bmQgZm9yIGEgYnVnIGludHJvZHVjZWQgaW4gVFMgMy45LnggYW5kIHNlZW1zIHRvIGJlIHVubGlrZWx5IHRvIGdldCBmaXhlZC5cbi8vIFNpbmNlIGpzaWkgcmVsaWVzIG9uIFRTIDwgNCBhdCB0aGUgbW9tZW50IHdlIGNhbid0IHVzZSBuZXdlciBUUyB2ZXJzaW9ucyB3aGljaCBoYXZlIHRoaXMgZml4ZWQgKF40LjEpLlxuLy8gc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9oYXNoaWNvcnAvdGVycmFmb3JtLWNkay9wdWxsLzEyNDggZm9yIG1vcmUgY29udGV4dFxudGVzdChcInNoYXJkIGV4cG9ydHMgYWNyb3NzIG11bHRpcGxlIGZpbGVzIHRvIGF2b2lkIGdlbmVyYXRpbmcgZmlsZXMgd2l0aCBtb3JlIHRoYW4gYSAxMDAwIGV4cG9ydHNcIiwgYXN5bmMgKCkgPT4ge1xuICBjb25zdCBjb2RlID0gbmV3IENvZGVNYWtlcigpO1xuICBjb25zdCB3b3JrZGlyID0gdG1wKFwiZXhwb3J0LXNoYXJkaW5nLnRlc3RcIik7XG5cbiAgY29uc3Qgc3BlYyA9IEpTT04ucGFyc2UoXG4gICAgZnMucmVhZEZpbGVTeW5jKFxuICAgICAgcGF0aC5qb2luKF9fZGlybmFtZSwgXCJmaXh0dXJlc1wiLCBcImF3c193YWZ2Ml93ZWJfYWNsLnRlc3QuZml4dHVyZS5qc29uXCIpLFxuICAgICAgXCJ1dGYtOFwiLFxuICAgICksXG4gICk7XG4gIG5ldyBUZXJyYWZvcm1Qcm92aWRlckdlbmVyYXRvcihjb2RlLCBzcGVjKS5nZW5lcmF0ZUFsbCgpO1xuICBhd2FpdCBjb2RlLnNhdmUod29ya2Rpcik7XG5cbiAgY29uc3Qgb3V0cHV0ID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbih3b3JrZGlyLCBcInByb3ZpZGVycy90ZXN0L3dhZnYyLXdlYi1hY2wvaW5kZXgudHNcIiksXG4gICAgXCJ1dGYtOFwiLFxuICApO1xuICBleHBlY3Qob3V0cHV0KS50b01hdGNoU25hcHNob3QoYHdhZnYyLXdlYi1hY2wtcmVzb3VyY2VgKTtcblxuICBjb25zdCBvdXRwdXRTdHJ1Y3RzSW5kZXggPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKHdvcmtkaXIsIFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC1zdHJ1Y3RzL2luZGV4LnRzXCIpLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dFN0cnVjdHNJbmRleCkudG9NYXRjaFNuYXBzaG90KGBzdHJ1Y3RzLWluZGV4YCk7XG5cbiAgY29uc3Qgb3V0cHV0U3RydWN0czAgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKFxuICAgICAgd29ya2RpcixcbiAgICAgIFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC1zdHJ1Y3RzL3N0cnVjdHMwLnRzXCIsXG4gICAgKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChvdXRwdXRTdHJ1Y3RzMCkudG9NYXRjaFNuYXBzaG90KGBzdHJ1Y3RzMGApO1xuXG4gIGNvbnN0IG91dHB1dFN0cnVjdHM0MDAgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKFxuICAgICAgd29ya2RpcixcbiAgICAgIFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC1zdHJ1Y3RzL3N0cnVjdHM0MDAudHNcIixcbiAgICApLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dFN0cnVjdHM0MDApLnRvTWF0Y2hTbmFwc2hvdChgc3RydWN0czQwMGApO1xuXG4gIGNvbnN0IG91dHB1dFN0cnVjdHM4MDAgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKFxuICAgICAgd29ya2RpcixcbiAgICAgIFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC1zdHJ1Y3RzL3N0cnVjdHM4MDAudHNcIixcbiAgICApLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dFN0cnVjdHM4MDApLnRvTWF0Y2hTbmFwc2hvdChgc3RydWN0czgwMGApO1xuXG4gIGNvbnN0IG91dHB1dFN0cnVjdHMxMjAwID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbihcbiAgICAgIHdvcmtkaXIsXG4gICAgICBcInByb3ZpZGVycy90ZXN0L3dhZnYyLXdlYi1hY2wvaW5kZXgtc3RydWN0cy9zdHJ1Y3RzMTIwMC50c1wiLFxuICAgICksXG4gICAgXCJ1dGYtOFwiLFxuICApO1xuICBleHBlY3Qob3V0cHV0U3RydWN0czEyMDApLnRvTWF0Y2hTbmFwc2hvdChgc3RydWN0czEyMDBgKTtcblxuICBjb25zdCBvdXRwdXRTdHJ1Y3RzMTYwMCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4oXG4gICAgICB3b3JrZGlyLFxuICAgICAgXCJwcm92aWRlcnMvdGVzdC93YWZ2Mi13ZWItYWNsL2luZGV4LXN0cnVjdHMvc3RydWN0czE2MDAudHNcIixcbiAgICApLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dFN0cnVjdHMxNjAwKS50b01hdGNoU25hcHNob3QoYHN0cnVjdHMxNjAwYCk7XG5cbiAgY29uc3Qgb3V0cHV0U3RydWN0czIwMDAgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKFxuICAgICAgd29ya2RpcixcbiAgICAgIFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC1zdHJ1Y3RzL3N0cnVjdHMyMDAwLnRzXCIsXG4gICAgKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChvdXRwdXRTdHJ1Y3RzMjAwMCkudG9NYXRjaFNuYXBzaG90KGBzdHJ1Y3RzMjAwMGApO1xuXG4gIGNvbnN0IG91dHB1dFN0cnVjdHMyNDAwID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbihcbiAgICAgIHdvcmtkaXIsXG4gICAgICBcInByb3ZpZGVycy90ZXN0L3dhZnYyLXdlYi1hY2wvaW5kZXgtc3RydWN0cy9zdHJ1Y3RzMjQwMC50c1wiLFxuICAgICksXG4gICAgXCJ1dGYtOFwiLFxuICApO1xuICBleHBlY3Qob3V0cHV0U3RydWN0czI0MDApLnRvTWF0Y2hTbmFwc2hvdChgc3RydWN0czI0MDBgKTtcblxuICBjb25zdCBvdXRwdXRTdHJ1Y3RzMjgwMCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4oXG4gICAgICB3b3JrZGlyLFxuICAgICAgXCJwcm92aWRlcnMvdGVzdC93YWZ2Mi13ZWItYWNsL2luZGV4LXN0cnVjdHMvc3RydWN0czI4MDAudHNcIixcbiAgICApLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dFN0cnVjdHMyODAwKS50b01hdGNoU25hcHNob3QoYHN0cnVjdHMyODAwYCk7XG5cbiAgY29uc3Qgb3V0cHV0U3RydWN0czMyMDAgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKFxuICAgICAgd29ya2RpcixcbiAgICAgIFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC1zdHJ1Y3RzL3N0cnVjdHMzMjAwLnRzXCIsXG4gICAgKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChvdXRwdXRTdHJ1Y3RzMzIwMCkudG9NYXRjaFNuYXBzaG90KGBzdHJ1Y3RzMzIwMGApO1xuXG4gIGNvbnN0IG91dHB1dFN0cnVjdHMzNjAwID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbihcbiAgICAgIHdvcmtkaXIsXG4gICAgICBcInByb3ZpZGVycy90ZXN0L3dhZnYyLXdlYi1hY2wvaW5kZXgtc3RydWN0cy9zdHJ1Y3RzMzYwMC50c1wiLFxuICAgICksXG4gICAgXCJ1dGYtOFwiLFxuICApO1xuICBleHBlY3Qob3V0cHV0U3RydWN0czM2MDApLnRvTWF0Y2hTbmFwc2hvdChgc3RydWN0czM2MDBgKTtcbn0pO1xuXG50ZXN0KFwic2hhcmQgZXhwb3J0cyBhY3Jvc3MgbXVsdGlwbGUgZmlsZXMgdG8gYXZvaWQgZ2VuZXJhdGluZyBmaWxlcyB3aXRoIG1vcmUgdGhhbiBhIDEwMDAgZXhwb3J0cyBpbiBhIHByb3ZpZGVyIHdpdGhvdXQgbmFtZXNwYWNlc1wiLCBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IGNvZGUgPSBuZXcgQ29kZU1ha2VyKCk7XG4gIGNvbnN0IHdvcmtkaXIgPSB0bXAoXCJleHBvcnQtc2hhcmRpbmctbm8tbmFtZXNwYWNlLnRlc3RcIik7XG5cbiAgY29uc3Qgc3BlYyA9IEpTT04ucGFyc2UoXG4gICAgZnMucmVhZEZpbGVTeW5jKFxuICAgICAgcGF0aC5qb2luKF9fZGlybmFtZSwgXCJmaXh0dXJlc1wiLCBcImRhdGFkb2dfZGFzaGJvYXJkLnRlc3QuZml4dHVyZS5qc29uXCIpLFxuICAgICAgXCJ1dGYtOFwiLFxuICAgICksXG4gICk7XG4gIG5ldyBUZXJyYWZvcm1Qcm92aWRlckdlbmVyYXRvcihjb2RlLCBzcGVjKS5nZW5lcmF0ZUFsbCgpO1xuICBhd2FpdCBjb2RlLnNhdmUod29ya2Rpcik7XG5cbiAgY29uc3Qgb3V0cHV0ID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbih3b3JrZGlyLCBcInByb3ZpZGVycy9kYXRhZG9nL2Rhc2hib2FyZC9pbmRleC50c1wiKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChvdXRwdXQpLnRvTWF0Y2hTbmFwc2hvdChgZGFzaGJvYXJkLXJlc291cmNlYCk7XG5cbiAgY29uc3Qgb3V0cHV0U3RydWN0c0luZGV4ID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbih3b3JrZGlyLCBcInByb3ZpZGVycy9kYXRhZG9nL2Rhc2hib2FyZC9pbmRleC1zdHJ1Y3RzL2luZGV4LnRzXCIpLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dFN0cnVjdHNJbmRleCkudG9NYXRjaFNuYXBzaG90KGBzdHJ1Y3RzLWluZGV4YCk7XG5cbiAgY29uc3Qgb3V0cHV0U3RydWN0czAgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKHdvcmtkaXIsIFwicHJvdmlkZXJzL2RhdGFkb2cvZGFzaGJvYXJkL2luZGV4LXN0cnVjdHMvc3RydWN0czAudHNcIiksXG4gICAgXCJ1dGYtOFwiLFxuICApO1xuICBleHBlY3Qob3V0cHV0U3RydWN0czApLnRvTWF0Y2hTbmFwc2hvdChgc3RydWN0czBgKTtcblxuICBjb25zdCBvdXRwdXRTdHJ1Y3RzNDAwID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbihcbiAgICAgIHdvcmtkaXIsXG4gICAgICBcInByb3ZpZGVycy9kYXRhZG9nL2Rhc2hib2FyZC9pbmRleC1zdHJ1Y3RzL3N0cnVjdHM0MDAudHNcIixcbiAgICApLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KG91dHB1dFN0cnVjdHM0MDApLnRvTWF0Y2hTbmFwc2hvdChgc3RydWN0czQwMGApO1xufSk7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=import-style.test.d.ts.map
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ // Copyright (c) HashiCorp, Inc
27
+ // SPDX-License-Identifier: MPL-2.0
28
+ const fs = __importStar(require("fs"));
29
+ const os = __importStar(require("os"));
30
+ const path = __importStar(require("path"));
31
+ const codemaker_1 = require("codemaker");
32
+ const provider_generator_1 = require("../../generator/provider-generator");
33
+ const fixture = JSON.parse(fs.readFileSync(path.join(__dirname, "fixtures", "aws_wafv2_web_acl.test.fixture.json"), "utf-8"));
34
+ async function generate(options = {}) {
35
+ const code = new codemaker_1.CodeMaker();
36
+ const workdir = fs.mkdtempSync(path.join(os.tmpdir(), "import-style.test"));
37
+ new provider_generator_1.TerraformProviderGenerator(code, fixture, options).generateAll();
38
+ await code.save(workdir);
39
+ return workdir;
40
+ }
41
+ const RESOURCE_INDEX = "providers/test/wafv2-web-acl/index.ts";
42
+ const STRUCTS_INDEX = "providers/test/wafv2-web-acl/index-structs/index.ts";
43
+ const STRUCTS_DIR = "providers/test/wafv2-web-acl/index-structs";
44
+ const PROVIDER_INDEX = "providers/test/index.ts";
45
+ function readAllShards(workdir) {
46
+ return fs
47
+ .readdirSync(path.join(workdir, STRUCTS_DIR))
48
+ .filter((f) => /^structs\d+\.ts$/.test(f))
49
+ .map((f) => fs.readFileSync(path.join(workdir, STRUCTS_DIR, f), "utf-8"))
50
+ .join("\n");
51
+ }
52
+ test("default (no importExtension): emits explicit /index for folders, bare for files", async () => {
53
+ const workdir = await generate();
54
+ const resource = fs.readFileSync(path.join(workdir, RESOURCE_INDEX), "utf-8");
55
+ expect(resource).toContain(`} from './index-structs/index'`);
56
+ expect(resource).toContain(`export * from './index-structs/index'`);
57
+ expect(resource).not.toMatch(/from '\.\/[^']*\.(js|ts)'/);
58
+ const structsIndex = fs.readFileSync(path.join(workdir, STRUCTS_INDEX), "utf-8");
59
+ expect(structsIndex).toContain(`export * from './structs0'`);
60
+ expect(structsIndex).not.toMatch(/from '\.\/[^']*\.(js|ts)'/);
61
+ const providerIndex = fs.readFileSync(path.join(workdir, PROVIDER_INDEX), "utf-8");
62
+ expect(providerIndex).toMatch(/from '\.\/[^']+\/index';/);
63
+ });
64
+ test("importExtension '.js': emits fully-qualified ./<folder>/index.js and ./<file>.js", async () => {
65
+ const workdir = await generate({ importExtension: ".js" });
66
+ const resource = fs.readFileSync(path.join(workdir, RESOURCE_INDEX), "utf-8");
67
+ expect(resource).toContain(`} from './index-structs/index.js'`);
68
+ expect(resource).toContain(`export * from './index-structs/index.js'`);
69
+ const structsIndex = fs.readFileSync(path.join(workdir, STRUCTS_INDEX), "utf-8");
70
+ expect(structsIndex).toContain(`export * from './structs0.js'`);
71
+ const allShards = readAllShards(workdir);
72
+ expect(allShards).toMatch(/from '\.\/structs\d+\.js'/);
73
+ const providerIndex = fs.readFileSync(path.join(workdir, PROVIDER_INDEX), "utf-8");
74
+ expect(providerIndex).toMatch(/from '\.\/[^']+\/index\.js';/);
75
+ });
76
+ test("importExtension '.ts': emits fully-qualified ./<folder>/index.ts and ./<file>.ts", async () => {
77
+ const workdir = await generate({ importExtension: ".ts" });
78
+ const resource = fs.readFileSync(path.join(workdir, RESOURCE_INDEX), "utf-8");
79
+ expect(resource).toContain(`} from './index-structs/index.ts'`);
80
+ expect(resource).toContain(`export * from './index-structs/index.ts'`);
81
+ const structsIndex = fs.readFileSync(path.join(workdir, STRUCTS_INDEX), "utf-8");
82
+ expect(structsIndex).toContain(`export * from './structs0.ts'`);
83
+ const allShards = readAllShards(workdir);
84
+ expect(allShards).toMatch(/from '\.\/structs\d+\.ts'/);
85
+ const providerIndex = fs.readFileSync(path.join(workdir, PROVIDER_INDEX), "utf-8");
86
+ expect(providerIndex).toMatch(/from '\.\/[^']+\/index\.ts';/);
87
+ });
88
+ test("importExtension '': emits explicit /index for folders, bare for files", async () => {
89
+ const workdir = await generate({ importExtension: "" });
90
+ const resource = fs.readFileSync(path.join(workdir, RESOURCE_INDEX), "utf-8");
91
+ expect(resource).toContain(`} from './index-structs/index'`);
92
+ expect(resource).toContain(`export * from './index-structs/index'`);
93
+ expect(resource).not.toMatch(/from '\.\/[^']*\.(js|ts)'/);
94
+ const structsIndex = fs.readFileSync(path.join(workdir, STRUCTS_INDEX), "utf-8");
95
+ // file targets get the (empty) extension, so they stay bare
96
+ expect(structsIndex).toContain(`export * from './structs0'`);
97
+ expect(structsIndex).not.toMatch(/from '\.\/[^']*\.(js|ts)'/);
98
+ const providerIndex = fs.readFileSync(path.join(workdir, PROVIDER_INDEX), "utf-8");
99
+ expect(providerIndex).toMatch(/from '\.\/[^']+\/index';/);
100
+ });
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LXN0eWxlLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZ2V0L19fdGVzdHNfXy9nZW5lcmF0b3IvaW1wb3J0LXN0eWxlLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtCQUErQjtBQUMvQixtQ0FBbUM7QUFDbkMsdUNBQXlCO0FBQ3pCLHVDQUF5QjtBQUN6QiwyQ0FBNkI7QUFDN0IseUNBQXNDO0FBQ3RDLDJFQUc0QztBQUU1QyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUN4QixFQUFFLENBQUMsWUFBWSxDQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxxQ0FBcUMsQ0FBQyxFQUN2RSxPQUFPLENBQ1IsQ0FDRixDQUFDO0FBRUYsS0FBSyxVQUFVLFFBQVEsQ0FBQyxVQUE2QyxFQUFFO0lBQ3JFLE1BQU0sSUFBSSxHQUFHLElBQUkscUJBQVMsRUFBRSxDQUFDO0lBQzdCLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsbUJBQW1CLENBQUMsQ0FBQyxDQUFDO0lBQzVFLElBQUksK0NBQTBCLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyRSxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekIsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQztBQUVELE1BQU0sY0FBYyxHQUFHLHVDQUF1QyxDQUFDO0FBQy9ELE1BQU0sYUFBYSxHQUFHLHFEQUFxRCxDQUFDO0FBQzVFLE1BQU0sV0FBVyxHQUFHLDRDQUE0QyxDQUFDO0FBQ2pFLE1BQU0sY0FBYyxHQUFHLHlCQUF5QixDQUFDO0FBRWpELFNBQVMsYUFBYSxDQUFD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RTtJQUN2RixNQUFNLE9BQU8sR0FBRyxNQUFNLFFBQVEsQ0FBQyxFQUFFLGVBQWUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRXhELE1BQU0sUUFBUSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDOUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO0lBQzdELE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxTQUFTLENBQUMsdUNBQXVDLENBQUMsQ0FBQztJQUNwRSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0lBRTFELE1BQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQ2xDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxFQUNqQyxPQUFPLENBQ1IsQ0FBQztJQUNGLDREQUE0RDtJQUM1RCxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsU0FBUyxDQUFDLDRCQUE0QixDQUFDLENBQUM7SUFDN0QsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUU5RCxNQUFNLGFBQWEsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsRUFDbEMsT0FBTyxDQUNSLENBQUM7SUFDRixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUMsT0FBTyxDQUFDLDBCQUEwQixDQUFDLENBQUM7QUFDNUQsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIEhhc2hpQ29ycCwgSW5jXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTVBMLTIuMFxuaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzXCI7XG5pbXBvcnQgKiBhcyBvcyBmcm9tIFwib3NcIjtcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7IENvZGVNYWtlciB9IGZyb20gXCJjb2RlbWFrZXJcIjtcbmltcG9ydCB7XG4gIFRlcnJhZm9ybVByb3ZpZGVyR2VuZXJhdG9yLFxuICB0eXBlIFRlcnJhZm9ybVByb3ZpZGVyR2VuZXJhdG9yT3B0aW9ucyxcbn0gZnJvbSBcIi4uLy4uL2dlbmVyYXRvci9wcm92aWRlci1nZW5lcmF0b3JcIjtcblxuY29uc3QgZml4dHVyZSA9IEpTT04ucGFyc2UoXG4gIGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4oX19kaXJuYW1lLCBcImZpeHR1cmVzXCIsIFwiYXdzX3dhZnYyX3dlYl9hY2wudGVzdC5maXh0dXJlLmpzb25cIiksXG4gICAgXCJ1dGYtOFwiLFxuICApLFxuKTtcblxuYXN5bmMgZnVuY3Rpb24gZ2VuZXJhdGUob3B0aW9uczogVGVycmFmb3JtUHJvdmlkZXJHZW5lcmF0b3JPcHRpb25zID0ge30pIHtcbiAgY29uc3QgY29kZSA9IG5ldyBDb2RlTWFrZXIoKTtcbiAgY29uc3Qgd29ya2RpciA9IGZzLm1rZHRlbXBTeW5jKHBhdGguam9pbihvcy50bXBkaXIoKSwgXCJpbXBvcnQtc3R5bGUudGVzdFwiKSk7XG4gIG5ldyBUZXJyYWZvcm1Qcm92aWRlckdlbmVyYXRvcihjb2RlLCBmaXh0dXJlLCBvcHRpb25zKS5nZW5lcmF0ZUFsbCgpO1xuICBhd2FpdCBjb2RlLnNhdmUod29ya2Rpcik7XG4gIHJldHVybiB3b3JrZGlyO1xufVxuXG5jb25zdCBSRVNPVVJDRV9JTkRFWCA9IFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC50c1wiO1xuY29uc3QgU1RSVUNUU19JTkRFWCA9IFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC1zdHJ1Y3RzL2luZGV4LnRzXCI7XG5jb25zdCBTVFJVQ1RTX0RJUiA9IFwicHJvdmlkZXJzL3Rlc3Qvd2FmdjItd2ViLWFjbC9pbmRleC1zdHJ1Y3RzXCI7XG5jb25zdCBQUk9WSURFUl9JTkRFWCA9IFwicHJvdmlkZXJzL3Rlc3QvaW5kZXgudHNcIjtcblxuZnVuY3Rpb24gcmVhZEFsbFNoYXJkcyh3b3JrZGlyOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gZnNcbiAgICAucmVhZGRpclN5bmMocGF0aC5qb2luKHdvcmtkaXIsIFNUUlVDVFNfRElSKSlcbiAgICAuZmlsdGVyKChmKSA9PiAvXnN0cnVjdHNcXGQrXFwudHMkLy50ZXN0KGYpKVxuICAgIC5tYXAoKGYpID0+IGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4od29ya2RpciwgU1RSVUNUU19ESVIsIGYpLCBcInV0Zi04XCIpKVxuICAgIC5qb2luKFwiXFxuXCIpO1xufVxuXG50ZXN0KFwiZGVmYXVsdCAobm8gaW1wb3J0RXh0ZW5zaW9uKTogZW1pdHMgZXhwbGljaXQgL2luZGV4IGZvciBmb2xkZXJzLCBiYXJlIGZvciBmaWxlc1wiLCBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IHdvcmtkaXIgPSBhd2FpdCBnZW5lcmF0ZSgpO1xuXG4gIGNvbnN0IHJlc291cmNlID0gZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbih3b3JrZGlyLCBSRVNPVVJDRV9JTkRFWCksIFwidXRmLThcIik7XG4gIGV4cGVjdChyZXNvdXJjZSkudG9Db250YWluKGB9IGZyb20gJy4vaW5kZXgtc3RydWN0cy9pbmRleCdgKTtcbiAgZXhwZWN0KHJlc291cmNlKS50b0NvbnRhaW4oYGV4cG9ydCAqIGZyb20gJy4vaW5kZXgtc3RydWN0cy9pbmRleCdgKTtcbiAgZXhwZWN0KHJlc291cmNlKS5ub3QudG9NYXRjaCgvZnJvbSAnXFwuXFwvW14nXSpcXC4oanN8dHMpJy8pO1xuXG4gIGNvbnN0IHN0cnVjdHNJbmRleCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4od29ya2RpciwgU1RSVUNUU19JTkRFWCksXG4gICAgXCJ1dGYtOFwiLFxuICApO1xuICBleHBlY3Qoc3RydWN0c0luZGV4KS50b0NvbnRhaW4oYGV4cG9ydCAqIGZyb20gJy4vc3RydWN0czAnYCk7XG4gIGV4cGVjdChzdHJ1Y3RzSW5kZXgpLm5vdC50b01hdGNoKC9mcm9tICdcXC5cXC9bXiddKlxcLihqc3x0cyknLyk7XG5cbiAgY29uc3QgcHJvdmlkZXJJbmRleCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4od29ya2RpciwgUFJPVklERVJfSU5ERVgpLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KHByb3ZpZGVySW5kZXgpLnRvTWF0Y2goL2Zyb20gJ1xcLlxcL1teJ10rXFwvaW5kZXgnOy8pO1xufSk7XG5cbnRlc3QoXCJpbXBvcnRFeHRlbnNpb24gJy5qcyc6IGVtaXRzIGZ1bGx5LXF1YWxpZmllZCAuLzxmb2xkZXI+L2luZGV4LmpzIGFuZCAuLzxmaWxlPi5qc1wiLCBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IHdvcmtkaXIgPSBhd2FpdCBnZW5lcmF0ZSh7IGltcG9ydEV4dGVuc2lvbjogXCIuanNcIiB9KTtcblxuICBjb25zdCByZXNvdXJjZSA9IGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4od29ya2RpciwgUkVTT1VSQ0VfSU5ERVgpLCBcInV0Zi04XCIpO1xuICBleHBlY3QocmVzb3VyY2UpLnRvQ29udGFpbihgfSBmcm9tICcuL2luZGV4LXN0cnVjdHMvaW5kZXguanMnYCk7XG4gIGV4cGVjdChyZXNvdXJjZSkudG9Db250YWluKGBleHBvcnQgKiBmcm9tICcuL2luZGV4LXN0cnVjdHMvaW5kZXguanMnYCk7XG5cbiAgY29uc3Qgc3RydWN0c0luZGV4ID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbih3b3JrZGlyLCBTVFJVQ1RTX0lOREVYKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChzdHJ1Y3RzSW5kZXgpLnRvQ29udGFpbihgZXhwb3J0ICogZnJvbSAnLi9zdHJ1Y3RzMC5qcydgKTtcblxuICBjb25zdCBhbGxTaGFyZHMgPSByZWFkQWxsU2hhcmRzKHdvcmtkaXIpO1xuICBleHBlY3QoYWxsU2hhcmRzKS50b01hdGNoKC9mcm9tICdcXC5cXC9zdHJ1Y3RzXFxkK1xcLmpzJy8pO1xuXG4gIGNvbnN0IHByb3ZpZGVySW5kZXggPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKHdvcmtkaXIsIFBST1ZJREVSX0lOREVYKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChwcm92aWRlckluZGV4KS50b01hdGNoKC9mcm9tICdcXC5cXC9bXiddK1xcL2luZGV4XFwuanMnOy8pO1xufSk7XG5cbnRlc3QoXCJpbXBvcnRFeHRlbnNpb24gJy50cyc6IGVtaXRzIGZ1bGx5LXF1YWxpZmllZCAuLzxmb2xkZXI+L2luZGV4LnRzIGFuZCAuLzxmaWxlPi50c1wiLCBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IHdvcmtkaXIgPSBhd2FpdCBnZW5lcmF0ZSh7IGltcG9ydEV4dGVuc2lvbjogXCIudHNcIiB9KTtcblxuICBjb25zdCByZXNvdXJjZSA9IGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4od29ya2RpciwgUkVTT1VSQ0VfSU5ERVgpLCBcInV0Zi04XCIpO1xuICBleHBlY3QocmVzb3VyY2UpLnRvQ29udGFpbihgfSBmcm9tICcuL2luZGV4LXN0cnVjdHMvaW5kZXgudHMnYCk7XG4gIGV4cGVjdChyZXNvdXJjZSkudG9Db250YWluKGBleHBvcnQgKiBmcm9tICcuL2luZGV4LXN0cnVjdHMvaW5kZXgudHMnYCk7XG5cbiAgY29uc3Qgc3RydWN0c0luZGV4ID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbih3b3JrZGlyLCBTVFJVQ1RTX0lOREVYKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChzdHJ1Y3RzSW5kZXgpLnRvQ29udGFpbihgZXhwb3J0ICogZnJvbSAnLi9zdHJ1Y3RzMC50cydgKTtcblxuICBjb25zdCBhbGxTaGFyZHMgPSByZWFkQWxsU2hhcmRzKHdvcmtkaXIpO1xuICBleHBlY3QoYWxsU2hhcmRzKS50b01hdGNoKC9mcm9tICdcXC5cXC9zdHJ1Y3RzXFxkK1xcLnRzJy8pO1xuXG4gIGNvbnN0IHByb3ZpZGVySW5kZXggPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgcGF0aC5qb2luKHdvcmtkaXIsIFBST1ZJREVSX0lOREVYKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIGV4cGVjdChwcm92aWRlckluZGV4KS50b01hdGNoKC9mcm9tICdcXC5cXC9bXiddK1xcL2luZGV4XFwudHMnOy8pO1xufSk7XG5cbnRlc3QoXCJpbXBvcnRFeHRlbnNpb24gJyc6IGVtaXRzIGV4cGxpY2l0IC9pbmRleCBmb3IgZm9sZGVycywgYmFyZSBmb3IgZmlsZXNcIiwgYXN5bmMgKCkgPT4ge1xuICBjb25zdCB3b3JrZGlyID0gYXdhaXQgZ2VuZXJhdGUoeyBpbXBvcnRFeHRlbnNpb246IFwiXCIgfSk7XG5cbiAgY29uc3QgcmVzb3VyY2UgPSBmcy5yZWFkRmlsZVN5bmMocGF0aC5qb2luKHdvcmtkaXIsIFJFU09VUkNFX0lOREVYKSwgXCJ1dGYtOFwiKTtcbiAgZXhwZWN0KHJlc291cmNlKS50b0NvbnRhaW4oYH0gZnJvbSAnLi9pbmRleC1zdHJ1Y3RzL2luZGV4J2ApO1xuICBleHBlY3QocmVzb3VyY2UpLnRvQ29udGFpbihgZXhwb3J0ICogZnJvbSAnLi9pbmRleC1zdHJ1Y3RzL2luZGV4J2ApO1xuICBleHBlY3QocmVzb3VyY2UpLm5vdC50b01hdGNoKC9mcm9tICdcXC5cXC9bXiddKlxcLihqc3x0cyknLyk7XG5cbiAgY29uc3Qgc3RydWN0c0luZGV4ID0gZnMucmVhZEZpbGVTeW5jKFxuICAgIHBhdGguam9pbih3b3JrZGlyLCBTVFJVQ1RTX0lOREVYKSxcbiAgICBcInV0Zi04XCIsXG4gICk7XG4gIC8vIGZpbGUgdGFyZ2V0cyBnZXQgdGhlIChlbXB0eSkgZXh0ZW5zaW9uLCBzbyB0aGV5IHN0YXkgYmFyZVxuICBleHBlY3Qoc3RydWN0c0luZGV4KS50b0NvbnRhaW4oYGV4cG9ydCAqIGZyb20gJy4vc3RydWN0czAnYCk7XG4gIGV4cGVjdChzdHJ1Y3RzSW5kZXgpLm5vdC50b01hdGNoKC9mcm9tICdcXC5cXC9bXiddKlxcLihqc3x0cyknLyk7XG5cbiAgY29uc3QgcHJvdmlkZXJJbmRleCA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICBwYXRoLmpvaW4od29ya2RpciwgUFJPVklERVJfSU5ERVgpLFxuICAgIFwidXRmLThcIixcbiAgKTtcbiAgZXhwZWN0KHByb3ZpZGVySW5kZXgpLnRvTWF0Y2goL2Zyb20gJ1xcLlxcL1teJ10rXFwvaW5kZXgnOy8pO1xufSk7XG4iXX0=