New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

terraform-generator

Package Overview
Dependencies
Maintainers
1
Versions
106
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

terraform-generator - npm Package Compare versions

Comparing version 4.5.0 to 4.6.0

12

dist/arguments/Argument.d.ts

@@ -10,2 +10,14 @@ export default class Argument {

/**
* Get argument's attribute.
*
* @param name attribute name
*/
attr(name: string): Argument;
/**
* Get list argument's element.
*
* @param idx element index
*/
element(idx: number): Argument;
/**
* To Terraform representation.

@@ -12,0 +24,0 @@ * Use this function when argument is used as an interpolation in another Terraform argument or code.

@@ -21,2 +21,25 @@ "use strict";

/**
* Get argument's attribute.
*
* @param name attribute name
*/
attr(name) {
name = name.trim();
if (this.argument instanceof Argument) {
return this.argument.attr(name);
}
return new Argument(`${this.argument}.${name}`);
}
/**
* Get list argument's element.
*
* @param idx element index
*/
element(idx) {
if (this.argument instanceof Argument) {
return this.argument.element(idx);
}
return new Argument(`${this.argument}[${idx}]`);
}
/**
* To Terraform representation.

@@ -23,0 +46,0 @@ * Use this function when argument is used as an interpolation in another Terraform argument or code.

3

dist/index.d.ts

@@ -19,5 +19,2 @@ import { default as TerraformGenerator } from './TerraformGenerator';

export { default as Map, map } from './types/Map';
export { default as Object, map as object } from './types/Map';
export { default as List, list } from './types/List';
export { default as Set, list as set } from './types/List';
export { default as Tuple, list as tuple } from './types/List';

@@ -43,13 +43,4 @@ "use strict";

Object.defineProperty(exports, "map", { enumerable: true, get: function () { return Map_1.map; } });
var Map_2 = require("./types/Map");
Object.defineProperty(exports, "Object", { enumerable: true, get: function () { return Map_2.default; } });
Object.defineProperty(exports, "object", { enumerable: true, get: function () { return Map_2.map; } });
var List_1 = require("./types/List");
Object.defineProperty(exports, "List", { enumerable: true, get: function () { return List_1.default; } });
Object.defineProperty(exports, "list", { enumerable: true, get: function () { return List_1.list; } });
var List_2 = require("./types/List");
Object.defineProperty(exports, "Set", { enumerable: true, get: function () { return List_2.default; } });
Object.defineProperty(exports, "set", { enumerable: true, get: function () { return List_2.list; } });
var List_3 = require("./types/List");
Object.defineProperty(exports, "Tuple", { enumerable: true, get: function () { return List_3.default; } });
Object.defineProperty(exports, "tuple", { enumerable: true, get: function () { return List_3.list; } });

@@ -6,8 +6,8 @@ "use strict";

Object.defineProperty(exports, "__esModule", { value: true });
const shelljs_1 = __importDefault(require("shelljs"));
const child_process_1 = __importDefault(require("child_process"));
const fs_1 = __importDefault(require("fs"));
const path_1 = __importDefault(require("path"));
const shelljs_1 = __importDefault(require("shelljs"));
const TerraformGeneratorUtils_1 = __importDefault(require("./TerraformGeneratorUtils"));
const _1 = require(".");
const TerraformGeneratorUtils_1 = __importDefault(require("./TerraformGeneratorUtils"));
class TerraformGenerator {

@@ -14,0 +14,0 @@ /**

{
"name": "terraform-generator",
"version": "4.5.0",
"version": "4.6.0",
"author": "Chang Zhe Jiet",

@@ -43,11 +43,11 @@ "description": "Generate Terraform configurations with Node.js.",

"devDependencies": {
"@types/jest": "^26.0.10",
"@types/jest": "^26.0.14",
"@types/shelljs": "^0.8.8",
"@typescript-eslint/eslint-plugin": "^3.9.1",
"@typescript-eslint/parser": "^3.9.1",
"@typescript-eslint/eslint-plugin": "^3.10.1",
"@typescript-eslint/parser": "^3.10.1",
"del-cli": "^3.0.1",
"eslint": "^7.7.0",
"eslint": "^7.9.0",
"eslint-plugin-import": "^2.22.0",
"jest": "^26.4.1",
"ts-jest": "^26.2.0",
"jest": "^26.4.2",
"ts-jest": "^26.4.0",
"ts-node": "^8.10.2",

@@ -54,0 +54,0 @@ "typescript": "^3.9.7"

@@ -1,2 +0,2 @@

# **terraform-generator**
# **terraform-generator**

@@ -22,3 +22,3 @@ [![npm package](https://img.shields.io/npm/v/terraform-generator)](https://www.npmjs.com/package/terraform-generator)

You don't need to use Terraform variables, you can use your own Javascript/JSON variables or use dot env.
You don't need to use Terraform variables, you can use your own Javascript/JSON variables or use dot env.

@@ -43,2 +43,7 @@ You don't need to use Terraform modules for reusable resource creations, you can make use of Javascript functions.

```
or
```javascript
const TFG = require('terraform-generator');
const { default: TerraformGenerator, map } = TFG;
```

@@ -88,7 +93,2 @@ ### **Initialize TerraformGenerator**

},
objectForVariable: object({
arg1: 'str',
arg2: 123,
arg3: true
}), // it's actually same as map, they are interchangeable
objectList: [

@@ -109,3 +109,3 @@ {

}
), // set & tuple works the same, they are interchangeable
),
map: map({

@@ -128,2 +128,3 @@ arg1: 'str',

function2: fn('sort', 'a', block.attr('attrName'), 'c'),
functionElement: fn('tolist', ['a', 'b', 'c']).element(0),
custom: arg('max(5, 12, 9)'),

@@ -136,7 +137,9 @@ interpolation: `str-${block.attr('attrName')}`

```javascript
block.attr('id') // block id, string
block.id // convenience getter function, same as attr('id')
block.attr('subnets') // subnet objects, object list
block.attr('subnets.*.id') // subnet ids, string list
block.attr('subnets.*.id[0]') // first subnet id, string
block.attr('id') // block id, string
block.id // convenience getter function, same as attr('id')
block.attr('subnets') // subnet objects, object list
block.attr('subnets.*.id') // subnet ids, string list
block.attr('subnets').attr('*').attr('id') // same as above
block.attr('subnets.*.id[0]') // first subnet id, string
block.attr('subnets').attr('*').attr('id').element(0) // same as above
```

@@ -166,5 +169,5 @@

// Write Terraform configuration to a file
tfg.write({
tfg.write({
dir: 'outputDir',
format: true
format: true
});

@@ -272,2 +275,2 @@ ```

tfg.write({ dir: outputDir, format: true });
```
```
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc