diff --git a/packages/core/package.json b/packages/core/package.json index 9cb2382fd5..a0ed5e3f31 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -9,10 +9,13 @@ "dist/" ], "devDependencies": { - "@stencil/core": "0.5.2", + "@stencil/core": "0.6.0", "@stencil/dev-server": "latest", + "@stencil/postcss": "0.0.2", + "@stencil/sass": "0.0.2", "@stencil/utils": "latest", "@types/jest": "^21.1.6", + "autoprefixer": "^8.0.0", "chai": "^4.1.2", "chromedriver": "^2.33.2", "glob": "^7.1.2", diff --git a/packages/core/src/components.d.ts b/packages/core/src/components.d.ts index 9a96a6072d..7640f1cb5e 100644 --- a/packages/core/src/components.d.ts +++ b/packages/core/src/components.d.ts @@ -4,8 +4,6 @@ * and imports for stencil collections that might be configured in your stencil.config.js file */ -import 'ionicons'; - import { ActionSheetButton, } from './components/action-sheet/action-sheet'; diff --git a/packages/core/src/global/ionic-global.ts b/packages/core/src/global/ionic-global.ts index 0727e4adc9..d4719701e6 100644 --- a/packages/core/src/global/ionic-global.ts +++ b/packages/core/src/global/ionic-global.ts @@ -1,3 +1,4 @@ +import 'ionicons'; import { createConfigController } from './config-controller'; import { PLATFORM_CONFIGS, detectPlatforms } from './platform-configs'; import { createDomControllerClient } from './dom-controller'; diff --git a/packages/core/stencil.config.js b/packages/core/stencil.config.js index 522396c264..e566f972ac 100644 --- a/packages/core/stencil.config.js +++ b/packages/core/stencil.config.js @@ -1,5 +1,8 @@ +const sass = require('@stencil/sass'); +const postcss = require('@stencil/postcss'); +const autoprefixer = require('autoprefixer'); + exports.config = { - enableCache: false, namespace: 'Ionic', generateDistribution: true, generateWWW: false, @@ -46,12 +49,24 @@ exports.config = { { components: ['ion-cordova-platform'] }, { components: ['ion-nav-pop'] }, ], - collections: [ - 'ionicons' - ], - copy: [ - { src: '**/*.scss' } + plugins: [ + sass(), + postcss({ + plugins: [ + autoprefixer({ + browsers: [ + 'last 2 versions', + 'iOS >= 8', + 'Android >= 4.4', + 'Explorer >= 11', + 'ExplorerMobile >= 11' + ], + cascade: false + }) + ] + }) ], + copy: [{ src: '**/*.scss' }], preamble: '(C) Ionic http://ionicframework.com - MIT License', globalScript: 'src/global/ionic-global.ts', buildStats: true diff --git a/packages/core/tslint.json b/packages/core/tslint.json index b10afaf672..248085993b 100644 --- a/packages/core/tslint.json +++ b/packages/core/tslint.json @@ -3,6 +3,7 @@ "rules": { "no-conditional-assignment": false, "no-unnecessary-type-assertion": false, - "prefer-for-of": false + "prefer-for-of": false, + "no-import-side-effect": false, } }