Skip to content
Merged
52 changes: 50 additions & 2 deletions gulpfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
const argv = yargs(hideBin(process.argv)).parse();

const submodule = "igniteui-live-editing-samples";
const mainPkgDevDeps = JSON.parse(fs.readFileSync(path.join(__dirname, 'package.json'), 'utf8')).devDependencies;

gulp.task("generate-live-editing", async () => {
var appDv = argv.appDv !== undefined && argv.appDv.toLowerCase().trim() === "true";
Expand Down Expand Up @@ -54,6 +55,38 @@
additionalSharedStyles: ["_variables.scss", "_app-layout.scss"]
})
await generateLiveEditing(liveEditingOptions);

const sharedJsonPath = path.resolve(liveEditingOptions.samplesDir, 'shared.json');
if (fs.existsSync(sharedJsonPath)) {
const sharedJson = JSON.parse(fs.readFileSync(sharedJsonPath, 'utf8'));
const stylesFile = sharedJson.files && sharedJson.files.find(f => f.path === 'src/styles.scss');
if (stylesFile) {
const stylesWithTailwind = stylesFile.content.includes('@import "tailwindcss"')
? stylesFile.content
: stylesFile.content.replace(/((?:@use [^\n]+\n)+)/, '$1@import "tailwindcss";\n');
stylesFile.content = stylesFile.content.replace(/@import ["']tailwindcss["'];?\r?\n?/g, '');
fs.writeFileSync(sharedJsonPath, JSON.stringify(sharedJson));
Comment thread Fixed
Comment thread Fixed

const samplesDir = liveEditingOptions.samplesDir;
fs.readdirSync(samplesDir)
.filter(f => f.endsWith('.json') && f !== 'shared.json' && f !== 'meta.json')
.forEach(f => {
const samplePath = path.join(samplesDir, f);
const sample = JSON.parse(fs.readFileSync(samplePath, 'utf8'));
const deps = JSON.parse(sample.sampleDependencies || '{}');
if (deps['tailwindcss']) {
const existing = sample.sampleFiles.findIndex(sf => sf.path === 'src/styles.scss');
const styleEntry = { path: 'src/styles.scss', hasRelativeAssetsUrls: false, content: stylesWithTailwind };
if (existing !== -1) {
sample.sampleFiles[existing] = styleEntry;
} else {
sample.sampleFiles.push(styleEntry);
}
fs.writeFileSync(samplePath, JSON.stringify(sample));
}
});
}
}
});

gulp.task("overwrite-package-json", (done) => {
Expand Down Expand Up @@ -116,8 +149,15 @@
"path": "package.json",
"hasRelativeAssetsUrls": false,
"content": JSON.stringify({
"dependencies": JSON.parse(jsonObj.sampleDependencies),
"devDependencies": sharedJson.devDependencies
"name": "example-app",
"version": "0.0.0",
"scripts": {
"ng": "ng",
"start": "node --max_old_space_size=12192 node_modules/@angular/cli/bin/ng serve",
"build": "node --max_old_space_size=12192 node_modules/@angular/cli/bin/ng build"
},
"dependencies": Object.fromEntries(Object.entries(JSON.parse(jsonObj.sampleDependencies)).map(([pkg, ver]) => [pkg, /^[\^~><=*]/.test(ver) ? ver : '^' + ver])),
"devDependencies": Object.fromEntries(Object.keys(sharedJson.devDependencies).map(pkg => [pkg, mainPkgDevDeps[pkg] || sharedJson.devDependencies[pkg]]))
}, null, 2)
}
additionals.push(packageJson);
Expand Down Expand Up @@ -153,6 +193,14 @@
} else {
sampleContent = sampleFile.content;
}
if (sampleFile.path === 'src/styles.scss') {
const deps = JSON.parse(jsonObj.sampleDependencies);
if (deps['tailwindcss'] && !sampleContent.includes('@import "tailwindcss"')) {
sampleContent = sampleContent.replace(/((?:@use [^\n]+\n)+)/, '$1@import "tailwindcss";\n');
} else if (!deps['tailwindcss']) {
sampleContent = sampleContent.replace(/@import ["']tailwindcss["'];?\r?\n?/g, '');
Comment thread
dobromirts marked this conversation as resolved.
Outdated
}
}
const paths = sampleFile.path.replace("./", "").split("/");
let tempPath = "";
paths.forEach(p => {
Expand Down
8 changes: 4 additions & 4 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@
"igniteui-dockmanager": "^1.17.0",
"igniteui-grid-lite": "^0.6.0",
"igniteui-i18n-resources": "^1.0.2",
"igniteui-live-editing": "^3.4.0",
"igniteui-live-editing": "file:../../igniteui-live-editing-0.0.1.tgz",
"igniteui-webcomponents": "^7.0.0",
"marked": "^17.0.1",
"marked-shiki": "^1.2.1",
Expand Down Expand Up @@ -113,8 +113,8 @@
"@angular/compiler": "^21.0.0"
},
"igniteui-angular-extras": {
"igniteui-angular": "^21.1.0",
"@infragistics/igniteui-angular": "^21.1.0",
"igniteui-angular": "^21.1.1",
"@infragistics/igniteui-angular": "^21.1.1",
"@angular/core": "^21.0.0",
"@angular/common": "^21.0.0",
"@angular/animations": "^21.0.0"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ <h3 igxCardHeaderTitle>Containing badge</h3>
<div class="avatarWrapper" igxListThumbnail>
<igx-avatar
id="avatar"
src="https://www.infragistics.com/angular-demos-lob/assets/images/avatar/10.jpg"
src="assets/images/avatar/10.jpg"
shape="circle"
>
</igx-avatar>
Expand All @@ -89,7 +89,7 @@ <h3 igxCardHeaderTitle>Containing badge</h3>
<div class="avatarWrapper">
<igx-avatar
id="avatar"
src="https://www.infragistics.com/angular-demos-lob/assets/images/avatar/10.jpg"
src="assets/images/avatar/10.jpg"
shape="circle"
>
</igx-avatar>
Expand All @@ -113,7 +113,7 @@ <h3 igxCardHeaderTitle>Containing icon</h3>
<div class="avatarWrapper" igxListThumbnail>
<igx-avatar
id="avatar"
src="https://www.infragistics.com/angular-demos-lob/assets/images/avatar/5.jpg"
src="assets/images/avatar/5.jpg"
shape="circle"
>
</igx-avatar>
Expand Down
Loading