Skip to content

Commit b9d8a12

Browse files
authored
Merge pull request #2308 from contentstack/feat/DX-3870-2
Feat: Converted Clone to TS module
2 parents ca5fb69 + f828cc4 commit b9d8a12

39 files changed

Lines changed: 5173 additions & 1167 deletions

.github/workflows/unit-test.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,10 @@ jobs:
7171
- name: Run tests for Contentstack Branches
7272
working-directory: ./packages/contentstack-branches
7373
run: npm run test:unit
74+
75+
- name: Run tests for Contentstack Clone
76+
working-directory: ./packages/contentstack-clone
77+
run: npm run test:unit
7478

7579
# - name: Fetch latest references
7680
# run: |

.talismanrc

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
fileignoreconfig:
22
- filename: package-lock.json
3-
checksum: b031fa3df1ca49f1c0c207e8849cdfe81665f726a1ea690cba83a7c85009199e
3+
checksum: 48479bae69c08b32d71c6f749328e14d903a578061271d67edcb96617b8b0e3b
44
- filename: pnpm-lock.yaml
5-
checksum: 3a10f0695152204e2e5d3738793e66a4bf86855d442356056dcb961414219059
5+
checksum: d0d9f53b699a4def858a869f2237b73543e3e4d3085e6a05266b882a4027ec5b
66
- filename: packages/contentstack-import-setup/test/unit/backup-handler.test.ts
77
checksum: 0582d62b88834554cf12951c8690a73ef3ddbb78b82d2804d994cf4148e1ef93
88
- filename: packages/contentstack-import-setup/test/config.json
@@ -66,7 +66,7 @@ fileignoreconfig:
6666
- filename: packages/contentstack-bulk-publish/src/producer/publish-unpublished-env.js
6767
checksum: 44dbc966df086f835fdca11cb305d0a5f448ca0be811c14b894e0024f9491385
6868
- filename: packages/contentstack-import/src/import/modules/entries.ts
69-
checksum: 290730774c61220645ec211b85b9e218cdbd8addc2d8fd8f061dfa5ede5b5c75
69+
checksum: bdf26bd2b71c1b7a0d5540ba98c53bf917d8d7d3813447073a89439fb789970b
7070
- filename: packages/contentstack-utilities/src/logger/logger.ts
7171
checksum: 76429bc87e279624b386f00e7eb3f4ec25621ace7056289f812b9a076d6e184e
7272
- filename: packages/contentstack-bootstrap/src/bootstrap/utils.ts
@@ -75,10 +75,6 @@ fileignoreconfig:
7575
checksum: c435ceaa709a7504da303a6ea674e07a89030d8ad4152e7917cd17e7f3e58052
7676
- filename: packages/contentstack-bootstrap/src/config.ts
7777
checksum: cc3270acd9d37479b24792f45a108e0f1c99265f92d59c35c0ec3ee2d1cc390d
78-
- filename: packages/contentstack-clone/src/commands/cm/stacks/clone.js
79-
checksum: 433a84a882ea3f12b27127d47d289dfc64dda6b6fc956369f5851daaa57ae493
80-
- filename: packages/contentstack-clone/src/lib/util/clone-handler.js
81-
checksum: f901c84eac8545b328952332216de516697da2de098298496ba6ff1e75a0a659
8278
- filename: packages/contentstack-bulk-publish/src/util/generate-bulk-publish-url.js
8379
checksum: 5f7c1e2fac3e7fab21e861d609c54ca7191ee09fd076dd0adc66604043bf7a43
8480
- filename: packages/contentstack-import/src/utils/interactive.ts
@@ -267,6 +263,14 @@ fileignoreconfig:
267263
checksum: e8714ef41940f3a9be782dfaa43a15df57bd1eb4c3f0e4d5f305e68681c1bd93
268264
- filename: packages/contentstack-import/src/import/modules-js/environments.js
269265
checksum: d484342c25462a7052c8aae6cad0baed9a01e1eaa67d6a09f175981c53092301
266+
- filename: packages/contentstack-clone/.eslintrc
267+
checksum: a7230ffa600c58047ac73f2dec7a23ca5862e36e68f04f2671379496739bd818
268+
- filename: packages/contentstack-clone/test/commands/cm/stacks/clone.test.ts
269+
checksum: b30adfbbd25aa76fe41b0ffebdb3bc61eb4981063c3a38b890c3cb3a6660ecca
270+
- filename: packages/contentstack-clone/test/lib/util/clone-handler.execution.test.ts
271+
checksum: 7ed8fa62d9aba7135a142134c36535e3722471cabc81d2ea3437cd67b2e87d58
272+
- filename: packages/contentstack-clone/test/lib/util/clone-handler.commands.test.ts
273+
checksum: d0427ddfa6d338e6b5c4e6f8d94f32332e3e9858626356d07e5690471e062f49
270274
- filename: packages/contentstack-audit/test/unit/mock/contents/composable_studio/environments/environments.json
271275
checksum: 0402604e5919a7e38ecb5ff0916d6ae5ab7d98fe78ff6ac9eba8a9b8130af34d
272276
- filename: packages/contentstack-audit/test/unit/mock/contents/composable_studio/composable_studio.json
@@ -277,4 +281,13 @@ fileignoreconfig:
277281
checksum: 1e6c1fba1172512401038d5454c8d218201ec62262449c5c878609592e0124c4
278282
- filename: packages/contentstack-audit/src/modules/composable-studio.ts
279283
checksum: 4fc97ff582d6dff9a54b3a50dfa3cbb5febd38a55aeb8737034b97188ad543ba
284+
- filename: packages/contentstack-config/src/utils/interactive.ts
285+
checksum: 09ebc9918e5161e423238df8879b782daf673e52a5ca97e000a9618517a40b96
286+
- filename: packages/contentstack-config/src/commands/config/set/proxy.ts
287+
checksum: 058c98f96a2de7e75a65536933e5fcd88f0fb7e8a487d9c172f4daacd0d05bea
288+
- filename: packages/contentstack-utilities/src/proxy-helper.ts
289+
checksum: 2a8379d7a34acb3c14093599fb4ba7307c94b0f280ea70d6d862ecb2448fe924
290+
- filename: packages/contentstack-config/src/commands/config/get/proxy.ts
291+
checksum: 9c49c2e6246ecdc5a4141c7e5f413d34f1fc799e25b3bbf60b61372c7a9a6f36
280292
version: '1.0'
293+

package-lock.json

Lines changed: 27 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 52 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,54 @@
11
{
2-
"extends": "oclif"
2+
"env": {
3+
"node": true,
4+
"es2021": true
5+
},
6+
"parser": "@typescript-eslint/parser",
7+
"parserOptions": {
8+
"project": "tsconfig.json",
9+
"sourceType": "module"
10+
},
11+
"plugins": [
12+
"@typescript-eslint"
13+
],
14+
"extends": [
15+
"plugin:@typescript-eslint/recommended",
16+
"plugin:@typescript-eslint/recommended-requiring-type-checking"
17+
],
18+
"ignorePatterns": [
19+
"lib/**/*",
20+
"test/**/*",
21+
"node_modules/**/*",
22+
"*.js"
23+
],
24+
"rules": {
25+
"@typescript-eslint/no-unused-vars": [
26+
"error",
27+
{
28+
"args": "none",
29+
"argsIgnorePattern": "^_",
30+
"varsIgnorePattern": "^_"
31+
}
32+
],
33+
"@typescript-eslint/prefer-namespace-keyword": "error",
34+
"@typescript-eslint/no-floating-promises": "error",
35+
"@typescript-eslint/no-misused-promises": "error",
36+
"@typescript-eslint/await-thenable": "error",
37+
"quotes": ["error", "single", { "avoidEscape": true, "allowTemplateLiterals": true }],
38+
"semi": "off",
39+
"@typescript-eslint/no-redeclare": "off",
40+
"eqeqeq": ["error", "smart"],
41+
"id-match": "error",
42+
"no-eval": "error",
43+
"no-var": "error",
44+
"@typescript-eslint/no-explicit-any": "warn",
45+
"@typescript-eslint/no-require-imports": "off",
46+
"prefer-const": "error",
47+
"@typescript-eslint/no-unsafe-call": "off",
48+
"@typescript-eslint/no-unsafe-member-access": "off",
49+
"@typescript-eslint/no-unsafe-assignment": "off",
50+
"@typescript-eslint/no-unsafe-return": "off",
51+
"@typescript-eslint/no-unsafe-argument": "off",
52+
"@typescript-eslint/require-await": "off"
53+
}
354
}

packages/contentstack-clone/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,4 @@
66
/yarn.lock
77
node_modules
88
coverage
9+
/lib
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"require": ["test/helpers/init.js", "ts-node/register", "source-map-support/register"],
3+
"watch-extensions": [
4+
"ts"
5+
],
6+
"recursive": true,
7+
"timeout": 5000
8+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
{
2+
"include": [
3+
"lib/**/*.js",
4+
"src/**/*.ts"
5+
],
6+
"exclude": [
7+
"**/*.test.ts",
8+
"**/test/**",
9+
"**/node_modules/**"
10+
],
11+
"reporter": [
12+
"text",
13+
"text-summary",
14+
"lcov",
15+
"html"
16+
],
17+
"check-coverage": false,
18+
"statements": 90,
19+
"branches": 90,
20+
"functions": 90,
21+
"lines": 90,
22+
"extension": [
23+
".ts",
24+
".js"
25+
],
26+
"sourceMap": true,
27+
"instrument": true
28+
}

packages/contentstack-clone/package.json

Lines changed: 24 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@contentstack/cli-cm-clone",
33
"description": "Contentstack stack clone plugin",
4-
"version": "1.19.1",
4+
"version": "1.20.0",
55
"author": "Contentstack",
66
"bugs": "https://github.com/rohitmishra209/cli-cm-clone/issues",
77
"dependencies": {
@@ -22,21 +22,29 @@
2222
},
2323
"devDependencies": {
2424
"@oclif/test": "^4.1.13",
25+
"@types/chai": "^4.3.0",
26+
"@types/mocha": "^10.0.0",
27+
"@types/node": "^14.18.63",
28+
"@types/sinon": "^10.0.0",
29+
"@typescript-eslint/eslint-plugin": "^5.62.0",
2530
"chai": "^4.5.0",
2631
"eslint": "^8.57.1",
2732
"eslint-config-oclif": "^6.0.62",
2833
"mocha": "^10.8.2",
2934
"nyc": "^15.1.0",
3035
"oclif": "^4.17.46",
31-
"sinon": "^21.0.1"
36+
"sinon": "^21.0.1",
37+
"ts-node": "^10.9.2",
38+
"typescript": "^4.9.5"
3239
},
3340
"engines": {
3441
"node": ">=14.0.0"
3542
},
3643
"files": [
44+
"/bin",
45+
"/lib",
3746
"/npm-shrinkwrap.json",
38-
"/oclif.manifest.json",
39-
"/src"
47+
"/oclif.manifest.json"
4048
],
4149
"homepage": "https://github.com/rohitmishra209/cli-cm-clone",
4250
"keywords": [
@@ -45,19 +53,25 @@
4553
"plugin"
4654
],
4755
"license": "MIT",
56+
"main": "./lib/commands/cm/stacks/clone.js",
4857
"oclif": {
49-
"commands": "./src/commands",
58+
"commands": "./lib/commands",
5059
"bin": "csdx",
5160
"repositoryPrefix": "<%- repo %>/blob/main/packages/contentstack-clone/<%- commandPath %>"
5261
},
5362
"repository": "https://github.com/contentstack/cli",
5463
"scripts": {
64+
"build": "npm run clean && npm run compile",
65+
"clean": "rm -rf ./lib ./node_modules tsconfig.build.tsbuildinfo",
66+
"compile": "tsc -b tsconfig.json",
5567
"postpack": "rm -f oclif.manifest.json",
56-
"prepack": "oclif manifest && oclif readme",
57-
"test": "nyc --reporter=html mocha --forbid-only \"test/**/*.test.js\"",
58-
"posttest": "eslint .",
59-
"version": "oclif readme && git add README.md",
60-
"clean": "rm -rf ./node_modules tsconfig.build.tsbuildinfo"
68+
"prepack": "pnpm compile && oclif manifest && oclif readme",
69+
"test:report": "tsc -p test && nyc --reporter=lcov --extension .ts mocha --forbid-only \"test/**/*.test.ts\" 2>&1 | grep -v 'ERR_INVALID_ARG_TYPE' ; npx nyc report --reporter=text-summary --reporter=text || true",
70+
"pretest": "tsc -p test",
71+
"test:unit": "nyc --extension .ts mocha --forbid-only \"test/**/*.test.ts\" 2>&1 | grep -v 'ERR_INVALID_ARG_TYPE' ; npx nyc report --reporter=text-summary --reporter=text || true",
72+
"lint": "eslint src/**/*.ts",
73+
"format": "eslint src/**/*.ts --fix",
74+
"test:unit:report": "nyc --reporter=text --reporter=text-summary --extension .ts mocha --forbid-only \"test/**/*.test.ts\""
6175
},
6276
"csdxConfig": {
6377
"expiredCommands": {

0 commit comments

Comments
 (0)