diff --git a/.gitignore b/.gitignore
index d778de3..df1af72 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,9 +8,9 @@ coverage/
/reports
/test-report.xml
jest_0
-lib
-dist
+/lib
+/dist
/public
/docs/cli
/docs/declinations
-package-lock.json
\ No newline at end of file
+package-lock.json
diff --git a/.npmignore b/.npmignore
index 002ae5b..e2b709a 100644
--- a/.npmignore
+++ b/.npmignore
@@ -3,9 +3,18 @@ sonar-project.properties
.gitlab-ci.yml
.travis.yml
.npmrc
+.babelrc
CONTRIBUTING.md
CODE_OF_CONDUCT.md
CHANGELOG.md
internals
babel.config.js
-babel.ext.json
\ No newline at end of file
+babel.ext.json
+README.md
+text-report.xml
+.idea
+coverage
+docs/
+reports/
+/styleguide
+bundle-stats.html
diff --git a/.travis.yml b/.travis.yml
index ae790e4..b8865da 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -53,7 +53,7 @@ jobs:
organization: $(echo $TRAVIS_REPO_SLUG | awk -F '/' '{print $1}')
script:
- npm run test
- - sonar-scanner -Dsonar.projectVersion=${SONAR_VERSION}
+ - if [[ "$TRAVIS_BRANCH" != greenkeeper* ]]; then sonar-scanner -Dsonar.projectVersion=${SONAR_VERSION}; fi
# Job: Release
- stage: release
diff --git a/README.md b/README.md
index ac410ab..0025cda 100644
--- a/README.md
+++ b/README.md
@@ -2,6 +2,8 @@
[![Build Status](https://travis-ci.org/bootstrap-styled/toggle.svg?branch=master)](https://travis-ci.org/bootstrap-styled/toggle) [![npm Version](https://img.shields.io/npm/v/@bootstrap-styled/toggle.svg?style=flat)](https://www.npmjs.com/package/@bootstrap-styled/toggle) [![License](https://img.shields.io/npm/l/@bootstrap-styled/toggle.svg?style=flat)](https://www.npmjs.com/package/@bootstrap-styled/toggle) [![NPM monthly downloads](https://img.shields.io/npm/dm/@bootstrap-styled/toggle.svg?style=flat)](https://npmjs.org/package/@bootstrap-styled/toggle) [![NPM total downloads](https://img.shields.io/npm/dt/@bootstrap-styled/toggle.svg?style=flat)](https://npmjs.org/package/@bootstrap-styled/toggle) [![npm Version](https://img.shields.io/node/v/@bootstrap-styled/toggle.svg?style=flat)](https://www.npmjs.com/package/@bootstrap-styled/toggle) [![Module formats](https://img.shields.io/badge/module%20formats-umd%2C%20cjs%2C%20esm-green.svg?style=flat)](https://www.npmjs.com/package/@bootstrap-styled/toggle)
[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=com.github.bootstrap-styled.toggle&metric=coverage)](https://sonarcloud.io/dashboard?id=com.github.bootstrap-styled.toggle) [![Quality gate status](https://sonarcloud.io/api/project_badges/measure?project=com.github.bootstrap-styled.toggle&metric=alert_status)](https://sonarcloud.io/dashboard?id=com.github.bootstrap-styled.toggle)
+[![gitter](https://badges.gitter.im/bootstrap-styled/bootstrap-styled.svg)](https://gitter.im/bootstrap-styled)
+[![Greenkeeper badge](https://badges.greenkeeper.io/bootstrap-styled/toggle.svg)](https://greenkeeper.io/)
Toggle option made with bootstrap and optionaly use react-intl or any other ui component
@@ -29,7 +31,7 @@ Please also note that all repositories under the bootstrap-styled organization f
The MIT License
-Copyright (c) 2017-2018 Yeutech Company Limited. https://bootstrap-styled.github.io
+Copyright (c) 2017-2018 Yeutech Company Limited. https://bootstrap-styled.github.io/bootstrap-styled
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/lib/components/Toggle/ToggleOption.js b/lib/components/Toggle/ToggleOption.js
deleted file mode 100644
index 447ec56..0000000
--- a/lib/components/Toggle/ToggleOption.js
+++ /dev/null
@@ -1,87 +0,0 @@
-"use strict";
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-
-var _react = _interopRequireDefault(require("react"));
-
-var _propTypes = _interopRequireDefault(require("prop-types"));
-
-var _Option = _interopRequireDefault(require("@bootstrap-styled/v4/lib/Option"));
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
-
-function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
-
-function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
-
-var injectIntl;
-var intlShape; // this make react-intl optional to our component and our module
-
-try {
- var _require = require('react-intl'),
- injectIntlDefault = _require.injectIntl,
- intlShapeDefault = _require.intlShape; // eslint-disable-line
-
-
- injectIntl = injectIntlDefault; // eslint-disable-line
-
- intlShape = intlShapeDefault; // eslint-disable-line
-} catch (er) {
- injectIntl = null;
- intlShape = null;
-}
-/**
- * This component is automatically used when using ``
- * If you need a different option tag, instead just pass the prop `optionTag` to the `` component.
- */
-
-
-var ToggleOption = function ToggleOption(_ref) {
- var Tag = _ref.tag,
- value = _ref.value,
- message = _ref.message,
- intl = _ref.intl,
- rest = _objectWithoutProperties(_ref, ["tag", "value", "message", "intl"]);
-
- return _react.default.createElement(Tag, _extends({
- value: value
- }, rest), message && intl ? intl.formatMessage(message) : value);
-};
-
-ToggleOption.defaultProps = {
- tag: _Option.default
-};
-/* eslint-disable react/require-default-props */
-
-ToggleOption.propTypes = {
- /**
- * Replace the default component tag by the one specified. Can be:
- */
- tag: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.element, _propTypes.default.func, _propTypes.default.object]),
-
- /**
- * The value
- */
- value: _propTypes.default.string.isRequired,
-
- /**
- * react-intl messages (optional)
- */
- message: _propTypes.default.object
-};
-var exported = ToggleOption; // eslint-disable-line import/no-mutable-exports
-
-if (intlShape) {
- /** @ignore */
- ToggleOption.propTypes.intl = intlShape.isRequired;
- exported = injectIntl(ToggleOption);
-}
-
-var _default = exported;
-exports.default = _default;
-module.exports = exports["default"];
\ No newline at end of file
diff --git a/lib/components/Toggle/index.js b/lib/components/Toggle/index.js
deleted file mode 100644
index 577fb55..0000000
--- a/lib/components/Toggle/index.js
+++ /dev/null
@@ -1,106 +0,0 @@
-"use strict";
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-
-var _react = _interopRequireDefault(require("react"));
-
-var _propTypes = _interopRequireDefault(require("prop-types"));
-
-var _Option = _interopRequireDefault(require("@bootstrap-styled/v4/lib/Option"));
-
-var _Input = _interopRequireDefault(require("@bootstrap-styled/v4/lib/Input"));
-
-var _ToggleOption = _interopRequireDefault(require("./ToggleOption"));
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
-
-function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
-
-function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
-
-function Toggle(props) {
- var Tag = props.tag,
- OptionTag = props.optionTag,
- defaultLabel = props.defaultLabel,
- className = props.className,
- onToggle = props.onToggle,
- value = props.value,
- values = props.values,
- messages = props.messages,
- rest = _objectWithoutProperties(props, ["tag", "optionTag", "defaultLabel", "className", "onToggle", "value", "values", "messages"]); // If we have items, render them
-
-
- var content = !values.length ? _react.default.createElement(_Option.default, null, defaultLabel) : values.map(function (v) {
- return _react.default.createElement(OptionTag, {
- key: v,
- value: v,
- message: messages[v]
- });
- });
- return _react.default.createElement(Tag, _extends({
- type: "select",
- name: "select",
- value: value,
- onChange: onToggle,
- className: className
- }, rest), content);
-}
-
-Toggle.defaultProps = {
- tag: _Input.default,
- optionTag: _ToggleOption.default,
- defaultLabel: '--',
- messages: {},
- value: '',
- values: [],
- onToggle: function onToggle() {}
-};
-/* eslint-disable react/require-default-props */
-
-Toggle.propTypes = {
- /**
- * Replace the default component tag by the one specified. Can be:
- */
- tag: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.element, _propTypes.default.object, _propTypes.default.func]),
-
- /**
- * Replace the option component tag by the one specified. Can be:
- */
- optionTag: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.element, _propTypes.default.object, _propTypes.default.func]),
-
- /**
- * Trigger when toggle
- */
- onToggle: _propTypes.default.func,
-
- /**
- * Label used by default when no selection
- */
- defaultLabel: _propTypes.default.string,
-
- /**
- * List of all possible values
- */
- values: _propTypes.default.array,
-
- /**
- * Current value
- */
- value: _propTypes.default.string,
-
- /** @ignore */
- className: _propTypes.default.string,
-
- /** react-intl messages (optional) */
- messages: _propTypes.default.object
-};
-/* eslint-enable react/require-default-props */
-
-var _default = Toggle;
-exports.default = _default;
-module.exports = exports["default"];
\ No newline at end of file
diff --git a/lib/components/Toggle/tests/ToggleOption.test.js b/lib/components/Toggle/tests/ToggleOption.test.js
deleted file mode 100644
index 2f3619d..0000000
--- a/lib/components/Toggle/tests/ToggleOption.test.js
+++ /dev/null
@@ -1,42 +0,0 @@
-"use strict";
-
-var _react = _interopRequireDefault(require("react"));
-
-var _enzyme = require("enzyme");
-
-var _reactIntl = require("react-intl");
-
-var _ToggleOption = _interopRequireDefault(require("../ToggleOption"));
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-/* eslint-disable function-paren-newline */
-describe('', function () {
- it('should render default language messages', function () {
- var defaultEnMessage = 'someContent';
- var message = (0, _reactIntl.defineMessages)({
- enMessage: {
- id: 'boilerplate.containers.LocaleToggle.en',
- defaultMessage: defaultEnMessage
- }
- });
- var renderedComponent = (0, _enzyme.shallow)(_react.default.createElement(_reactIntl.IntlProvider, {
- locale: "en"
- }, _react.default.createElement(_ToggleOption.default, {
- value: "en",
- message: message.enMessage
- })));
- expect(renderedComponent.contains(_react.default.createElement(_ToggleOption.default, {
- value: "en",
- message: message.enMessage
- }))).toBe(true);
- });
- it('should display `value`(two letter language code) when `message` is absent', function () {
- var renderedComponent = (0, _enzyme.mount)(_react.default.createElement(_reactIntl.IntlProvider, {
- locale: "de"
- }, _react.default.createElement(_ToggleOption.default, {
- value: "de"
- })));
- expect(renderedComponent.text()).toBe('de');
- });
-});
\ No newline at end of file
diff --git a/lib/components/Toggle/tests/index.test.js b/lib/components/Toggle/tests/index.test.js
deleted file mode 100644
index 64130a4..0000000
--- a/lib/components/Toggle/tests/index.test.js
+++ /dev/null
@@ -1,54 +0,0 @@
-"use strict";
-
-var _react = _interopRequireDefault(require("react"));
-
-var _enzyme = require("enzyme");
-
-var _reactIntl = require("react-intl");
-
-var _Option = _interopRequireDefault(require("@bootstrap-styled/v4/lib/Option"));
-
-var _index = _interopRequireDefault(require("../index"));
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-/* eslint-disable function-paren-newline */
-describe('', function () {
- it('should contain default text', function () {
- var defaultEnMessage = 'someContent';
- var defaultDeMessage = 'someOtherContent';
- var messages = (0, _reactIntl.defineMessages)({
- en: {
- id: 'boilerplate.containers.LocaleToggle.en',
- defaultMessage: defaultEnMessage
- },
- de: {
- id: 'boilerplate.containers.LocaleToggle.en',
- defaultMessage: defaultDeMessage
- }
- });
- var renderedComponent = (0, _enzyme.shallow)(_react.default.createElement(_reactIntl.IntlProvider, {
- locale: "en"
- }, _react.default.createElement(_index.default, {
- values: ['en', 'de'],
- messages: messages
- })));
- expect(renderedComponent.contains(_react.default.createElement(_index.default, {
- values: ['en', 'de'],
- messages: messages
- }))).toBe(true);
- expect(renderedComponent.find('option').length).toBe(0);
- });
- it('should not have ToggleOptions if props.values is not defined', function () {
- var renderedComponent = (0, _enzyme.shallow)(_react.default.createElement(_index.default, null));
- expect(renderedComponent.contains(_react.default.createElement(_Option.default, null, "--"))).toBe(true);
- expect(renderedComponent.find('Option').length).toBe(1);
- });
- it('should have ToggleOptions if props.values is defined', function () {
- var renderedComponent = (0, _enzyme.shallow)(_react.default.createElement(_index.default, {
- value: "a",
- values: ['a', 'b']
- }));
- expect(renderedComponent.find('InjectIntl(ToggleOption)').length).toBe(2);
- });
-});
\ No newline at end of file
diff --git a/lib/index.js b/lib/index.js
deleted file mode 100644
index b88c53b..0000000
--- a/lib/index.js
+++ /dev/null
@@ -1,23 +0,0 @@
-"use strict";
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-Object.defineProperty(exports, "default", {
- enumerable: true,
- get: function get() {
- return _Toggle.default;
- }
-});
-Object.defineProperty(exports, "ToggleOption", {
- enumerable: true,
- get: function get() {
- return _ToggleOption.default;
- }
-});
-
-var _Toggle = _interopRequireDefault(require("./components/Toggle"));
-
-var _ToggleOption = _interopRequireDefault(require("./components/Toggle/ToggleOption"));
-
-function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
\ No newline at end of file
diff --git a/lib/tests/index.test.js b/lib/tests/index.test.js
deleted file mode 100644
index 9fa42cb..0000000
--- a/lib/tests/index.test.js
+++ /dev/null
@@ -1,11 +0,0 @@
-"use strict";
-
-var exported = require('../index');
-
-describe('should export', function () {
- Object.keys(exported).forEach(function (key) {
- it("".concat(key, " should be defined"), function () {
- expect(exported[key]).toBeDefined();
- });
- });
-});
\ No newline at end of file
diff --git a/package.json b/package.json
index 50fef36..10e3825 100644
--- a/package.json
+++ b/package.json
@@ -6,6 +6,9 @@
"jsnext:main": "dist/@bootstrap-styled/toggle.es.js",
"module": "dist/@bootstrap-styled/toggle.es.js",
"homepage": "https://bootstrap-styled.github.io/toggle",
+ "engines": {
+ "node": ">=8"
+ },
"browserslist": [
"IE >= 9",
"last 2 versions"
@@ -22,7 +25,7 @@
"build:dist:watch": "rollup -c --watch",
"build:lib:watch": "npm run build:lib -- --watch",
"test": "npm run lint && npm run test:web",
- "test:web": "NODE_ENV=test TEST_REPORT_PATH=reports jest --coverage",
+ "test:web": "NODE_ENV=test jest --coverage",
"test:clean": "rimraf ./coverage",
"test:watch": "npm run test -- --watch",
"lint": "eslint src",
@@ -40,12 +43,6 @@
"bugs": {
"url": "https://github.com/bootstrap-styled/toggle/issues"
},
- "files": [
- "LICENSE.md",
- "dist",
- "lib",
- "bin"
- ],
"keywords": [
"bootstrap",
"bootstrap-styled",
@@ -135,76 +132,77 @@
]
},
"devDependencies": {
- "@babel/cli": "^7.0.0",
- "@babel/core": "^7.0.0",
- "@babel/plugin-external-helpers": "^7.0.0",
- "@babel/plugin-proposal-class-properties": "^7.0.0",
- "@babel/plugin-proposal-decorators": "^7.0.0",
- "@babel/plugin-proposal-json-strings": "^7.0.0",
- "@babel/plugin-proposal-object-rest-spread": "^7.0.0",
- "@babel/plugin-syntax-dynamic-import": "^7.0.0",
- "@babel/plugin-syntax-import-meta": "^7.0.0",
- "@babel/plugin-transform-modules-commonjs": "^7.0.0",
- "@babel/plugin-transform-react-constant-elements": "^7.0.0",
- "@babel/plugin-transform-react-inline-elements": "^7.0.0",
- "@babel/preset-env": "^7.0.0",
+ "@babel/cli": "^7.2.0",
+ "@babel/core": "^7.2.2",
+ "@babel/plugin-external-helpers": "^7.2.0",
+ "@babel/plugin-proposal-class-properties": "^7.2.1",
+ "@babel/plugin-proposal-decorators": "^7.2.2",
+ "@babel/plugin-proposal-json-strings": "^7.2.0",
+ "@babel/plugin-proposal-object-rest-spread": "^7.2.0",
+ "@babel/plugin-syntax-dynamic-import": "^7.2.0",
+ "@babel/plugin-syntax-import-meta": "^7.2.0",
+ "@babel/plugin-transform-modules-commonjs": "^7.2.0",
+ "@babel/plugin-transform-react-constant-elements": "^7.2.0",
+ "@babel/plugin-transform-react-inline-elements": "^7.2.0",
+ "@babel/preset-env": "^7.2.0",
"@babel/preset-react": "^7.0.0",
+ "@bootstrap-styled/documentation": "^1.2.0",
+ "@rollup-umd/documentation": "^1.3.0",
"@semantic-release/changelog": "^3.0.1",
- "@semantic-release/exec": "^3.3.0",
+ "@semantic-release/exec": "^3.3.1",
"@semantic-release/git": "^7.0.5",
- "@semantic-release/github": "^5.2.1",
- "@semantic-release/npm": "^5.1.1",
- "@yeutech-lab/rollup-umd-documentation": "^2.4.5",
+ "@semantic-release/github": "^5.2.6",
+ "@semantic-release/npm": "^5.1.2",
"babel-core": "^7.0.0-bridge.0",
- "babel-eslint": "^9.0.0",
- "babel-jest": "^23.4.2",
- "babel-loader": "^8.0.0",
- "babel-plugin-add-module-exports": "^0.2.1",
- "babel-plugin-dynamic-import-node": "^1.1.0",
- "babel-plugin-react-intl": "^2.4.0",
+ "babel-eslint": "^10.0.1",
+ "babel-jest": "^23.6.0",
+ "babel-loader": "^8.0.4",
+ "babel-plugin-add-module-exports": "^1.0.0",
+ "babel-plugin-dynamic-import-node": "^2.2.0",
+ "babel-plugin-react-intl": "^3.0.1",
"babel-plugin-react-transform": "^3.0.0",
- "babel-plugin-styled-components": "^1.5.1",
- "babel-plugin-transform-react-remove-prop-types": "^0.4.13",
+ "babel-plugin-styled-components": "^1.9.4",
+ "babel-plugin-transform-react-remove-prop-types": "^0.4.21",
"cz-conventional-changelog": "^2.1.0",
- "enzyme": "^3.3.0",
- "enzyme-adapter-react-16": "^1.1.1",
- "eslint": "^4.18.2",
- "eslint-config-airbnb": "^16.1.0",
- "eslint-plugin-import": "^2.9.0",
- "eslint-plugin-jsx-a11y": "^6.0.3",
- "eslint-plugin-react": "^7.7.0",
+ "enzyme": "^3.8.0",
+ "enzyme-adapter-react-16": "^1.7.1",
+ "eslint": "^5.10.0",
+ "eslint-config-airbnb": "^17.1.0",
+ "eslint-plugin-import": "^2.14.0",
+ "eslint-plugin-jsx-a11y": "^6.1.2",
+ "eslint-plugin-react": "^7.11.1",
"exports-loader": "^0.7.0",
- "gulp": "^3.9.1",
- "istanbul-api": "1.2.2",
- "istanbul-reports": "1.1.4",
- "jest-cli": "^22.4.2",
- "jest-sonar-reporter": "^1.3.0",
- "lint-staged": "^4.1.3",
+ "gulp": "^4.0.0",
+ "istanbul-api": "^2.0.6",
+ "istanbul-reports": "^2.0.1",
+ "jest-cli": "^23.6.0",
+ "jest-sonar-reporter": "^2.0.0",
+ "lint-staged": "^8.1.0",
"pre-commit": "^1.2.2",
- "raf": "^3.4.0",
- "react": "^16.3.2",
+ "raf": "^3.4.1",
+ "react": "^16.6.3",
"react-intl": "^2.7.2",
- "react-redux": "^5.1.1",
- "react-styleguidist": "^8.0.4",
- "react-test-renderer": "^16.3.2",
+ "react-redux": "^6.0.0",
+ "react-styleguidist": "^8.0.6",
+ "react-test-renderer": "^16.6.3",
"redux": "^4.0.1",
- "rollup": "^0.57.1",
- "rollup-plugin-babel": "^4.0.1",
- "rollup-plugin-cleanup": "^2.0.0",
- "rollup-plugin-commonjs": "^9.1.0",
- "rollup-plugin-inject": "^2.0.0",
- "rollup-plugin-json": "^2.3.0",
+ "rollup": "^0.68.0",
+ "rollup-plugin-babel": "^4.1.0",
+ "rollup-plugin-cleanup": "^3.0.0",
+ "rollup-plugin-commonjs": "^9.2.0",
+ "rollup-plugin-inject": "^2.2.0",
+ "rollup-plugin-json": "^3.1.0",
"rollup-plugin-node-builtins": "^2.1.2",
- "rollup-plugin-node-resolve": "^3.3.0",
- "rollup-plugin-replace": "^2.0.0",
- "rollup-plugin-uglify": "^3.0.0",
- "rollup-plugin-visualizer": "^0.5.0",
+ "rollup-plugin-node-resolve": "^4.0.0",
+ "rollup-plugin-replace": "^2.1.0",
+ "rollup-plugin-terser": "^3.0.0",
+ "rollup-plugin-visualizer": "^0.9.2",
"rollup-watch": "^4.3.1",
- "semantic-release": "^15.12.1",
- "sinon": "^2.3.2",
- "styled-components": "^4.1.1",
+ "semantic-release": "^15.13.0",
+ "sinon": "^7.2.2",
+ "styled-components": "^4.1.2",
"toctoc": "^0.3.2",
- "webpack": "^4.16.1"
+ "webpack": "^4.27.1"
},
"lint-staged": {
"*.js": [
@@ -219,14 +217,14 @@
"extract-intl:doc"
],
"dependencies": {
- "@bootstrap-styled/v4": "^1.2.6",
- "prop-types": "^15.6.1"
+ "@bootstrap-styled/v4": "^1.3.0",
+ "prop-types": "^15.6.2"
},
"peerDependencies": {
- "react": "^16.3.2",
- "styled-components": "^4.1.1",
+ "react": "^16.6.3",
+ "styled-components": "^4.1.2",
"redux": "^4.0.1",
- "react-redux": "^5.1.1"
+ "react-redux": "^6.0.0"
},
"jest": {
"testURL": "http://localhost",
@@ -260,6 +258,11 @@
],
"setupTestFrameworkScriptFile": "/internals/testing/test-bundler.js"
},
+ "jestSonar": {
+ "reportPath": "reports",
+ "reportFile": "test-report.xml",
+ "indent": 2
+ },
"translation": {
"locale": "en",
"locales": [
diff --git a/rollup.config.js b/rollup.config.js
index c9bf0ac..224b0a5 100644
--- a/rollup.config.js
+++ b/rollup.config.js
@@ -5,7 +5,7 @@ import commonjs from 'rollup-plugin-commonjs';
import inject from 'rollup-plugin-inject';
import babel from 'rollup-plugin-babel';
import json from 'rollup-plugin-json';
-import uglify from 'rollup-plugin-uglify';
+import { terser } from 'rollup-plugin-terser';
import cleanup from 'rollup-plugin-cleanup';
import visualizer from 'rollup-plugin-visualizer';
import builtins from 'rollup-plugin-node-builtins';
@@ -66,11 +66,9 @@ const plugins = [
cleanup(),
];
-if (prod) plugins.push(uglify(), visualizer({ filename: './bundle-stats.html' }));
-
-export default {
+export default output.map((o) => ({
input: 'src/index.js',
external,
- output,
- plugins,
-};
+ output: o,
+ plugins: prod ? plugins.concat([terser(), visualizer({ filename: './bundle-stats.html' })]) : plugins,
+}));
diff --git a/styleguide.config.js b/styleguide.config.js
index 81cece4..10381ba 100644
--- a/styleguide.config.js
+++ b/styleguide.config.js
@@ -1,3 +1,3 @@
-const { config } = require('@yeutech-lab/rollup-umd-documentation/lib/styleguide.config.js');
+const { createConfig } = require('@rollup-umd/documentation');
-module.exports = config;
+module.exports = createConfig();