diff --git a/.babelrc b/.babelrc new file mode 100644 index 0000000..2eeb1a4 --- /dev/null +++ b/.babelrc @@ -0,0 +1,10 @@ +{ + "presets": [ + [ + "@babel/preset-env", + { + "useBuiltIns": "entry" + } + ] + ] +} diff --git a/.gitignore b/.gitignore index 504afef..320c107 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ node_modules/ +dist/ package-lock.json diff --git a/package.json b/package.json index 1b55f75..fa9e481 100644 --- a/package.json +++ b/package.json @@ -7,6 +7,7 @@ "email": "contact@bitovi.com", "url": "http://bitovi.com" }, + "browserslist": "ie 11", "bugs": { "url": "https://github.com/canjs/can-stache-define-element/issues" }, @@ -18,6 +19,9 @@ "can-symbol": "^1.6.4" }, "devDependencies": { + "@babel/cli": "^7.4.4", + "@babel/core": "^7.4.5", + "@babel/preset-env": "^7.4.5", "detect-cyclic-packages": "^1.1.0", "fixpack": "^2.3.1", "http-server": "^0.11.1", @@ -32,18 +36,20 @@ "CanJS" ], "license": "MIT", - "main": "can-stache-define-element.js", + "main": "dist/can-stache-define-element.js", "repository": { "type": "git", "url": "git://github.com/canjs/can-stache-define-element.git" }, "scripts": { "ci": "npm run test && node test/test-saucelabs.js", + "compile-to-es5": "babel src --out-dir dist", "detect-cycle": "detect-cyclic-packages", "http-server": "http-server -p 3000 --silent", - "jshint": "jshint ./*.js src/*.js test/*.js --config", + "jshint": "jshint src/*.js test/*.js --config", "lint": "fixpack && npm run jshint", "postversion": "git push --follow-tags", + "prepublishOnly": "npm run compile-to-es5", "preversion": "npm test", "test": "npm run detect-cycle && npm run lint && npm run testee", "testee": "testee test/test.html --browsers firefox" diff --git a/can-stache-define-element-test.js b/src/can-stache-define-element-test.js similarity index 97% rename from can-stache-define-element-test.js rename to src/can-stache-define-element-test.js index 77a8323..d0ca3ed 100644 --- a/can-stache-define-element-test.js +++ b/src/can-stache-define-element-test.js @@ -1,6 +1,6 @@ const QUnit = require("steal-qunit"); const StacheDefineElement = require("./can-stache-define-element"); -const browserSupports = require("./test/browser-supports"); +const browserSupports = require("../test/browser-supports"); QUnit.module("can-stache-define-element"); diff --git a/can-stache-define-element.js b/src/can-stache-define-element.js similarity index 68% rename from can-stache-define-element.js rename to src/can-stache-define-element.js index 1b9e34d..0b11dad 100644 --- a/can-stache-define-element.js +++ b/src/can-stache-define-element.js @@ -1,9 +1,9 @@ "use strict"; -const mixinLifecycleMethods = require("./src/mixin-lifecycle-methods"); -const mixinDefine = require("./src/mixin-define"); -const mixinStacheView = require("./src/mixin-stache-view"); -const mixinViewModelSymbol = require("./src/mixin-viewmodel-symbol"); +const mixinLifecycleMethods = require("./mixin-lifecycle-methods"); +const mixinDefine = require("./mixin-define"); +const mixinStacheView = require("./mixin-stache-view"); +const mixinViewModelSymbol = require("./mixin-viewmodel-symbol"); function DeriveElement(BaseElement = HTMLElement) { return class StacheDefineElement extends diff --git a/test/test.js b/test/test.js index 8870faa..d05e81c 100644 --- a/test/test.js +++ b/test/test.js @@ -1,4 +1,4 @@ -import "../can-stache-define-element-test"; +import "../src/can-stache-define-element-test"; import "../src/mixin-define-test"; import "../src/mixin-lifecycle-methods-test"; import "../src/mixin-stache-view-test";