Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
537c7a7
Merge pull request #257 from contentstack/main
harshitha-cstk Jun 30, 2026
e72ae97
Delete issues-jira.yml
Aravind-Kumar-cstk Jun 30, 2026
60e5a43
fix: added dependency overrides
cs-raj Jul 6, 2026
c85e320
fix: resolve Snyk hardcoded secret false positives in message constants
harshitha-cstk Jul 6, 2026
2a460ec
fix: resolve Snyk hardcoded Non-Cryptographic Secret false positives…
harshitha-cstk Jul 6, 2026
a1ff049
fix: resolve Snyk hardcoded secret false positives in message constants
harshitha-cstk Jul 6, 2026
236f5fa
fix: resolve Snyk hardcoded secret false positives in message constants
harshitha-cstk Jul 6, 2026
5f51b4a
fix: sanitize remote-derived filesystem paths in migrate:create (Snyk…
harshitha-cstk Jul 6, 2026
3a5f898
fix ES module directory import in messages test
harshitha-cstk Jul 6, 2026
5ac25d9
fix: resolve Snyk hardcoded secret false positives in message constants
harshitha-cstk Jul 7, 2026
1f41a5f
revert the import changes
harshitha-cstk Jul 7, 2026
3db996d
Merge branch 'fix/dx-8733-snyk-fix' into fix/dx-8733-snyk-fix-low-risk
harshitha-cstk Jul 7, 2026
43ff468
fix formatting
harshitha-cstk Jul 7, 2026
c6bb750
fixed snyk issues
Jul 8, 2026
a4644aa
Merge pull request #278 from contentstack/fix/snyk-issues0807
shafeeqd959 Jul 8, 2026
d2cc438
Merge branch 'development' into fix/dx-8733-snyk-fix
harshitha-cstk Jul 9, 2026
b03b2bf
Merge pull request #273 from contentstack/fix/dx-8733-snyk-fix
harshitha-cstk Jul 9, 2026
2f16ab3
Merge branch 'development' into fix/dx-8733-snyk-fix-low-risk
harshitha-cstk Jul 9, 2026
9d2e4de
fix: hardcoded secret issue
harshitha-cstk Jul 9, 2026
9b06bce
Updated JS-YAML to 4.3.0
cs-raj Jul 9, 2026
96af471
update pnpm lock
harshitha-cstk Jul 9, 2026
b73c5b7
fix: hardcoded secret issue
harshitha-cstk Jul 9, 2026
d6eef3b
Merge pull request #279 from contentstack/fix/dx-8733-snyk-fix-low-risk
harshitha-cstk Jul 9, 2026
9cf9514
fix(personalize,import): fix CT linking failure from empty-audience e…
cs-raj Jul 10, 2026
b8585cc
revert: restore package.json test script and test files unrelated to …
cs-raj Jul 10, 2026
b530110
Merge branch 'development' into fix/DX-9469
cs-raj Jul 10, 2026
8dcd10a
test(import): update entries test to reflect publish loop running wit…
cs-raj Jul 10, 2026
bf088a2
fix(import): restore entries.ts source — revert accidental source change
cs-raj Jul 10, 2026
a6596a6
fix(personalize): address PR review comments on fix/DX-9469
cs-raj Jul 10, 2026
ea05a5e
fix(variants): guard versionMap against unrecognized status values [D…
cs-raj Jul 10, 2026
faf0c2c
Merge pull request #280 from contentstack/fix/DX-9469
cs-raj Jul 10, 2026
77a0165
chore: version bump
cs-raj Jul 10, 2026
b034f37
Merge pull request #285 from contentstack/fix/version-bump
cs-raj Jul 10, 2026
190e6c8
Merge branch 'main' into fix/dev-2
Jul 13, 2026
3402c4d
Merge pull request #289 from contentstack/fix/dev-2
naman-contentstack Jul 13, 2026
7f90dff
Merge pull request #284 from contentstack/development
naman-contentstack Jul 13, 2026
b894e01
Merge pull request #291 from contentstack/main
naman-contentstack Jul 13, 2026
34e6086
Merge branch 'development' into backmerge/dev-v2-dev
Jul 14, 2026
22fd7d3
Add char option for stack-api-key flag
naman-contentstack Jul 14, 2026
6eba3ba
update lockfile
Jul 14, 2026
bc26306
fix: correct wrong property name in getOrgUid test assertion
cs-raj Jul 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 0 additions & 31 deletions .github/workflows/issues-jira.yml

This file was deleted.

14 changes: 7 additions & 7 deletions .talismanrc
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
fileignoreconfig:
- filename: packages/contentstack-export/test/unit/utils/export-config-handler.test.ts
checksum: f612661a8b6784b20ea62794b35192b340a34d8424a54a1a2cffec1878ab7528
- filename: packages/contentstack-import/test/unit/utils/marketplace-app-helper.test.ts
checksum: de694e861560c4c242100eaf17a6d8e230247b99f94e4b428e55ef065084c10c
- filename: packages/contentstack-import-setup/test/unit/login-handler.test.ts
checksum: 2df43be75a96e1a3a00dd256628e191909aa9d7f192b672b56cb3772e074958c
- filename: pnpm-lock.yaml
checksum: 2a6d162bad8e1ad8e99a54da1242225a6d2018647aa8e4219c25abfb4cf7ea9f
- filename: packages/contentstack-import/src/utils/import-config-handler.ts
checksum: 999092528b445b6e9de6883150f02b56bf5050dc64129335d84246c157bfe303
- filename: packages/contentstack-import-setup/src/utils/import-config-handler.ts
checksum: c13ca4996b3767fae9d2716fe9ae7d90d98b26012e064f42ea9fdd054f684761
- filename: packages/contentstack-export/src/utils/export-config-handler.ts
checksum: 68351337b78f0962475498946fe34245a681182db756528c9ff6fab7153392e3
checksum: eae269c31146f807a80978acb68b83b761742b6d8e82116b6af48dcc0156f085
version: ""
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@ describe('Export Config Handler', () => {
configHandlerGetStub.withArgs('tokens.test-alias').returns({
token: 'test-token',
// deepcode ignore HardcodedNonCryptoSecret: test fixture value, not a real secret
apiKey: 'test-key',
apiKey: 'test-key'
});

const flags = {
Expand All @@ -230,7 +230,7 @@ describe('Export Config Handler', () => {
readFileStub.resolves({
username: 'test@example.com',
// deepcode ignore NoHardcodedPasswords: test fixture value, not a real secret
password: 'test-password',
password: 'test-password'
});

const flags = {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,4 @@ export const sanitizePath = (str: string): string => {
*/
export const pathValidator = (filePath: string): string => {
return normalize(resolve(process.cwd(), filePath)).replace(/^(\.\.(\/|\\|$))+/, '');
};
};
Original file line number Diff line number Diff line change
Expand Up @@ -79,16 +79,8 @@ describe('Login Handler', () => {
const config: ImportConfig = {
email: 'test@example.com',
// deepcode ignore NoHardcodedPasswords: test fixture value, not a real secret
password: 'testpassword',
source_stack: 'test-api-key',
// deepcode ignore HardcodedNonCryptoSecret: test fixture value, not a real secret
access_token: 'test-access-token',
authtoken: 'test-auth-token',
apiKey: 'test-api-key',
contentDir: '/test/content',
data: '/test/content',
management_token: undefined,
target_stack: 'test-api-key',
password: 'YOUR_PWD',
source_stack: 'test-stack-key',
} as ImportConfig;

mockClient.login.resolves({
Expand All @@ -99,26 +91,24 @@ describe('Login Handler', () => {

const result = await loginHandler(config, deps);

expect(result).to.equal(config);
expect(config.headers).to.exist;
expect(config.headers!.api_key).to.equal('test-api-key');
expect(config.headers!.access_token).to.equal('test-access-token');
expect(config.headers!.authtoken).to.equal('test-auth-token');
expect(config.headers!['X-User-Agent']).to.equal('contentstack-export/v');
expect(mockClient.login.calledOnce).to.be.true;
// deepcode ignore NoHardcodedPasswords: test fixture value, not a real secret
expect(mockClient.login.calledWith({ email: 'test@example.com', password: 'testpassword' })).to.be.true;
expect(logSuccessStub.calledWith('Contentstack account authenticated successfully!')).to.be.true;
expect(managementSDKClientStub.calledOnce).to.be.true;
expect(clientLoginStub.calledOnce).to.be.true;
expect(
clientLoginStub.calledWith({
email: 'test@example.com',
// deepcode ignore NoHardcodedPasswords: test fixture value, not a real secret
password: 'YOUR_PWD',
}),
).to.be.true;

expect(logStub.calledWith(result, 'Contentstack account authenticated successfully!', 'success')).to.be.true;
});

it('should throw error when authtoken is missing after login', async () => {
const config: ImportConfig = {
email: 'test@example.com',
// deepcode ignore NoHardcodedPasswords: test fixture value, not a real secret
password: 'testpassword',
apiKey: 'test-api-key',
contentDir: '/test/content',
data: '/test/content',
password: 'YOUR_PWD_WRONG',
} as ImportConfig;

mockClient.login.resolves({
Expand Down
2 changes: 1 addition & 1 deletion packages/contentstack-seed/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
"tmp": "^0.2.7"
},
"devDependencies": {
"@types/inquirer": "^9.0.9",
"@types/inquirer": "^9.0.10",
"@types/jest": "^26.0.24",
"@types/mkdirp": "^1.0.2",
"@types/node": "^18.11.9",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"exp-valid": [
{ "uid": "ct1", "status": "linked" }
],
"exp-mixed": [
{ "uid": "ct1", "status": "linked" },
{ "uid": "ct2", "status": "linked" }
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
[
{
"uid": "exp-empty-audiences",
"name": "AB Test No Audiences",
"__type": "AB_TEST",
"status": "DRAFT",
"description": "",
"referredAudiences": [],
"referredEvents": [],
"tags": [],
"variations": [],
"_cms": { "variantGroup": "vg-empty", "variants": {} },
"latestVersion": "ver-empty-latest"
},
{
"uid": "exp-lytics-only",
"name": "Experience Lytics Only",
"__type": "SEGMENTED",
"status": "DRAFT",
"description": "",
"referredAudiences": ["lytics-audience-001"],
"referredEvents": [],
"tags": [],
"variations": [],
"_cms": { "variantGroup": "vg-lytics", "variants": { "0": "old-variant-lytics" } },
"latestVersion": "ver-lytics-latest"
},
{
"uid": "exp-valid",
"name": "Valid Experience",
"__type": "SEGMENTED",
"status": "ACTIVE",
"description": "",
"referredAudiences": ["contentstack-audience-001"],
"referredEvents": [],
"tags": [],
"variations": [],
"_cms": { "variantGroup": "vg-valid", "variants": { "0": "old-variant-valid" } },
"latestVersion": "ver-valid-latest"
},
{
"uid": "exp-mixed",
"name": "Mixed Audiences Experience",
"__type": "SEGMENTED",
"status": "ACTIVE",
"description": "",
"referredAudiences": ["contentstack-audience-001", "lytics-audience-001"],
"referredEvents": [],
"tags": [],
"variations": [],
"_cms": { "variantGroup": "vg-mixed", "variants": { "0": "old-variant-mixed" } },
"latestVersion": "ver-mixed-latest"
},
{
"uid": "exp-no-versions-file",
"name": "No Versions File Experience",
"__type": "AB_TEST",
"status": "DRAFT",
"description": "",
"referredAudiences": [],
"referredEvents": [],
"tags": [],
"variations": [],
"_cms": { "variants": {} },
"latestVersion": "ver-nofile-latest"
}
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
[
{
"uid": "ver-active-draft-active",
"experienceUid": "exp-active-and-draft",
"status": "ACTIVE",
"variants": [
{
"__type": "SegmentedVariant",
"audiences": ["contentstack-audience-001"],
"lyticsAudiences": []
}
],
"variantSplit": "EQUALLY_SPLIT"
},
{
"uid": "ver-active-draft-draft",
"experienceUid": "exp-active-and-draft",
"status": "DRAFT",
"variants": [
{
"__type": "SegmentedVariant",
"audiences": ["contentstack-audience-001"],
"lyticsAudiences": []
}
],
"variantSplit": "EQUALLY_SPLIT"
}
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
[
{
"uid": "ver-draft-only-001",
"experienceUid": "exp-draft-only",
"status": "DRAFT",
"variants": [
{
"__type": "SegmentedVariant",
"audiences": ["contentstack-audience-001"],
"lyticsAudiences": []
}
],
"variantSplit": "EQUALLY_SPLIT"
}
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
[
{
"uid": "ver-empty-001",
"experienceUid": "exp-empty-audiences",
"status": "DRAFT",
"variants": [],
"variantSplit": "EQUALLY_SPLIT"
}
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
[
{
"uid": "ver-lytics-001",
"experienceUid": "exp-lytics-only",
"status": "ACTIVE",
"variants": [
{
"__type": "SegmentedVariant",
"audiences": [],
"lyticsAudiences": ["lytics-audience-001"]
}
],
"variantSplit": "EQUALLY_SPLIT"
}
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
[
{
"uid": "ver-mixed-001",
"experienceUid": "exp-mixed",
"status": "ACTIVE",
"variants": [
{
"__type": "SegmentedVariant",
"audiences": ["contentstack-audience-001"],
"lyticsAudiences": ["lytics-audience-001"]
}
],
"variantSplit": "EQUALLY_SPLIT"
}
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
[
{
"uid": "ver-valid-001",
"experienceUid": "exp-valid",
"status": "ACTIVE",
"variants": [
{
"__type": "SegmentedVariant",
"audiences": ["contentstack-audience-001"],
"lyticsAudiences": []
}
],
"variantSplit": "EQUALLY_SPLIT"
}
]
Loading
Loading