refactor(components): update to use shadow DOM and work with css variables

- updates components to use shadow DOM or scoped if they require css variables
- moves global styles to an external stylesheet that needs to be imported
- adds support for additional colors and removes the Sass loops to generate colors for each component
- several property renames, bug fixes, and test updates

Co-authored-by: Manu Mtz.-Almeida <manu.mtza@gmail.com>
Co-authored-by: Adam Bradley <adambradley25@gmail.com>
Co-authored-by: Cam Wiegert <cam@camwiegert.com>
This commit is contained in:
Brandy Carney
2018-07-09 12:57:21 -04:00
parent a4659f03b4
commit a7f1f4daa7
710 changed files with 20999 additions and 20853 deletions

View File

@ -6,43 +6,25 @@ const stencilPath = path.join(__dirname, '..', '..', 'core', 'node_modules', '.b
function buildIonicAngular() {
const cmd = 'stencil';
const args = [
'build',
'--config',
path.join(__dirname, '..', 'stencil.config.js'),
...process.argv.slice(2)
];
return new Promise((resolve, reject) => {
console.log(cmd, args.join(' '));
const cmd = 'stencil';
const args = [
'build',
'--config',
path.join(__dirname, '..', 'stencil.config.js'),
...process.argv.slice(2)
];
const p = spawn('./stencil', args, { cwd: stencilPath, stdio: 'inherit' });
p.on('close', (code) => {
if (code > 0) {
console.log(`@ionic/angular build exited with ${code}`);
}
});
}
function buildIonicCore() {
const cmd = 'stencil';
const args = [
'build',
'--config',
path.join(__dirname, '..', '..', 'core', 'stencil.config.js'),
...process.argv.slice(2)
];
console.log(cmd, args.join(' '));
const p = spawn('./stencil', args, { cwd: stencilPath, stdio: 'inherit' });
p.on('close', (code) => {
if (code > 0) {
console.log(`@ionic/core build exited with ${code}`);
} else {
copyIonicCore();
copyIonicons();
}
const p = spawn('./stencil', args, { cwd: stencilPath, stdio: 'inherit' });
p.on('close', (code) => {
if (code > 0) {
console.log(`@ionic/angular build exited with ${code}`);
reject();
} else {
resolve();
}
});
});
}
@ -50,25 +32,18 @@ function copyIonicons() {
const src = path.join(__dirname, '..', '..', 'core', 'node_modules', 'ionicons');
const dst = path.join(__dirname, '..', 'node_modules', 'ionicons');
fs.emptyDirSync(dst);
fs.removeSync(dst);
fs.copySync(src, dst);
}
function copyIonicCore() {
const srcDir = path.join(__dirname, '..', '..', 'core');
const dstDir = path.join(__dirname, '..', 'node_modules', '@ionic', 'core');
function copyCSS() {
const src = path.join(__dirname, '..', '..', 'core', 'css');
const dst = path.join(__dirname, '..', 'css');
fs.emptyDirSync(dstDir);
const srcPkg = path.join(srcDir, 'package.json');
const dstPkg = path.join(dstDir, 'package.json');
fs.copySync(srcPkg, dstPkg);
const srcDist = path.join(srcDir, 'dist');
const dstDist = path.join(dstDir, 'dist');
fs.emptyDirSync(dstDist);
fs.copySync(srcDist, dstDist);
fs.removeSync(dst);
fs.copySync(src, dst);
}
buildIonicCore();
copyIonicons();
copyCSS();
buildIonicAngular();