diff --git a/LICENSE b/LICENSE
new file mode 100644
index 000000000..37fd0198e
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,6 @@
+Essential JS 2 library is available under the Syncfusion Essential Studio program, and can be licensed either under the Syncfusion Community License Program or the Syncfusion commercial license.
+To be qualified for the Syncfusion Community License Program you must have a gross revenue of less than one (1) million U.S. dollars ($1,000,000.00 USD) per year and have less than five (5) developers in your organization, and agree to be bound by Syncfusion’s terms and conditions.
+Customers who do not qualify for the community license can contact sales@syncfusion.com for commercial licensing options.
+Under no circumstances can you use this product without (1) either a Community License or a commercial license and (2) without agreeing and abiding by Syncfusion’s license containing all terms and conditions.
+The Syncfusion license that contains the terms and conditions can be found at
+https://www.syncfusion.com/content/downloads/syncfusion_license.pdf
diff --git a/README.md b/README.md
index d80b14b98..e5b206131 100644
--- a/README.md
+++ b/README.md
@@ -1 +1 @@
-# ej2-vue-ui-components
+Repository for vue github-source
\ No newline at end of file
diff --git a/src/buttons/CHANGELOG.md b/src/buttons/CHANGELOG.md
new file mode 100644
index 000000000..b31fdb31f
--- /dev/null
+++ b/src/buttons/CHANGELOG.md
@@ -0,0 +1,194 @@
+# Changelog
+
+## [Unreleased]
+
+## 16.2.49 (2018-08-21)
+
+### Common
+
+#### Bug Fixes
+
+- Provided renderer support.
+
+## 16.2.41 (2018-06-25)
+
+### Button
+
+#### Breaking Changes
+
+- Default color changed for the flat button.
+
+undefinedButton is a graphical user interface element that triggers an event on its click action.
+
+
+- **Types** - Provided with different types of Button.
+- **Predefined Styles** - Provided with predefined styles of Button.
+- **Sizes** - Provided with different sizes of Button.
+- **Icons** - Supports text and icon on the Button.
+
+### RadioButton
+
+#### Bug Fixes
+
+- Wrapped text of a RadioButton label overlaps with next RadioButton label issue fixed.
+
+undefinedRadioButton is a graphical user interface element that allows to select one option from the choices.
+
+
+- **States** - Provided with different states of RadioButton.
+- **Label** - Supports label and its positioning.
+- **Sizes** - Provided with different sizes of RadioButton.
+
+### Switch
+
+Switch is a graphical user interface element that allows you to toggle between checked and unchecked states.
+
+
+- **Text** - Supports text.
+- **Sizes** - Provided with different sizes of Switch.
+
+Switch is a graphical user interface element that allows you to toggle between checked and unchecked states.
+
+
+- **Text** - Supports text.
+- **Sizes** - Provided with different sizes of Switch.
+
+
+### CheckBox
+
+CheckBox is a graphical user interface element that allows to select one or more options from the choices.
+
+
+- **States** - Provided with different states of CheckBox.
+- **Label** - Supports label and its positioning.
+- **Sizes** - Provided with different sizes of CheckBox.
+
+## 16.1.28 (2018-03-09)
+
+### CheckBox
+
+#### Bug Fixes
+
+- Style compatibility issue fixed.
+
+## 16.1.24 (2018-02-22)
+
+### Common
+
+#### Breaking Changes
+
+Pascal casing changes in Button Component.
+
+
+| Enum Name | Old Property Value | New Property Value |
+|: ---------:| ---------:| ---------:|
+| `IconPosition` | left | Left |
+| `IconPosition` | right | Right |
+
+Pascal casing changes in CheckBox Component.
+
+
+| Enum Name | Old Property Value | New Property Value |
+|: ---------:| ---------:| ---------:|
+| `LabelPosition` | after | After |
+| `LabelPosition` | before | Before |
+
+Pascal casing changes in RadioButton Component.
+
+
+| Enum Name | Old Property Value | New Property Value |
+|: ---------:| ---------:| ---------:|
+| `RadioLabelPosition` | after | After |
+| `RadioLabelPosition` | before | Before |
+
+## 15.4.30-preview (2018-02-14)
+
+### CheckBox
+
+#### Bug Fixes
+
+- Label text responsive issue fixed.
+
+## 15.4.27-preview (2018-01-30)
+
+### CheckBox
+
+#### Bug Fixes
+
+- Wrapped text overlaps frame icon issue fixed.
+
+## 15.4.26-preview (2018-01-23)
+
+### CheckBox
+
+#### Bug Fixes
+
+- Theme compatibility issue resolved for CSS components.
+
+## 15.4.23-preview (2017-12-27)
+
+### Common
+
+#### New Features
+
+- Added typing file for ES5 global scripts (dist/global/index.d.ts).
+
+#### Breaking Changes
+
+- Modified the module bundle file name for ES6 bundling.
+
+## 15.4.22-preview (2017-12-14)
+
+### RadioButton
+
+#### Bug Fixes
+
+- RadioButton not working properly with ngModel issue fixed.
+
+## 15.4.21-preview (2017-12-08)
+
+### RadioButton
+
+#### Bug Fixes
+
+- Custom material theme issue fixed.
+
+## 15.4.20-preview (2017-12-01)
+
+### Common
+
+#### New Features
+
+- Upgraded TypeScript version to 2.6.2
+
+## 15.4.17-preview (2017-11-13)
+
+### Button
+
+Button is a graphical user interface element that triggers an event on its click action.
+
+
+- **Types** - Provided with different types of Button.
+- **Predefined Styles** - Provided with predefined styles of Button.
+- **Sizes** - Provided with different sizes of Button.
+- **Icons** - Supports text and icon on the Button.
+
+### CheckBox
+
+CheckBox is a graphical user interface element that allows to select one or more options from the choices.
+
+
+- **States** - Provided with different states of CheckBox.
+- **Label** - Supports label and its positioning.
+- **Sizes** - Provided with different sizes of CheckBox.
+
+### RadioButton
+
+RadioButton is a graphical user interface element that allows to select one option from the choices.
+
+
+- **States** - Provided with different states of RadioButton.
+- **Label** - Supports label and its positioning.
+- **Sizes** - Provided with different sizes of RadioButton.
+
+
diff --git a/src/buttons/ReadMe.md b/src/buttons/ReadMe.md
new file mode 100644
index 000000000..156290b96
--- /dev/null
+++ b/src/buttons/ReadMe.md
@@ -0,0 +1,102 @@
+# ej2-vue-buttons
+
+A package of Essential JS 2 Button, CheckBox, RadioButton and Switch components.
+
+
+
+> This is a commercial product and requires a paid license for possession or use. Syncfusion’s licensed software, including this component, is subject to the terms and conditions of Syncfusion's EULA (https://www.syncfusion.com/eula/es/). To acquire a license, you can purchase one at https://www.syncfusion.com/sales/products or start a free 30-day trial here (https://www.syncfusion.com/account/manage-trials/start-trials).
+
+> A free community license (https://www.syncfusion.com/products/communitylicense) is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue and five or fewer developers.
+
+## Setup
+
+To install `Button` and its dependent packages, use the following command
+
+```sh
+npm install @syncfusion/ej2-vue-buttons
+```
+
+## Components included
+
+Following list of components are available in the package.
+
+* Button - `Button` is a graphical user interface element that triggers an event on its click action.
+ * [Getting Started](https://ej2.syncfusion.com/vue/documentation/button/getting-started.html?utm_source=npm&utm_campaign=button)
+ * [View Online Demos](https://ej2.syncfusion.com/vue/demos/?utm_source=npm&utm_campaign=button#/material/button/default.html)
+ * [Product Page](https://www.syncfusion.com/products/vue/button)
+
+* CheckBox - `CheckBox` is a graphical user interface element that allows to select one or more options from the choices.
+ * [Getting Started](https://ej2.syncfusion.com/vue/documentation/check-box/getting-started.html?utm_source=npm&utm_campaign=check-box)
+ * [View Online Demos](https://ej2.syncfusion.com/vue/demos/?utm_source=npm&utm_campaign=check-box#/material/button/check-box.html)
+ * [Product Page](https://www.syncfusion.com/products/vue/checkbox)
+
+* RadioButton - `RadioButton` is a graphical user interface element that allows to select one option from the choices.
+ * [Getting Started](https://ej2.syncfusion.com/vue/documentation/radio-button/getting-started.html?utm_source=npm&utm_campaign=radio-button)
+ * [View Online Demos](https://ej2.syncfusion.com/vue/demos/?utm_source=npm&utm_campaign=radio-button#/material/button/radio-button.html)
+ * [Product Page](https://www.syncfusion.com/products/vue/radio-button)
+
+* Switch - `Switch` is a graphical user interface element that allows you to toggle between checked and unchecked states.
+ * [Getting Started](https://ej2.syncfusion.com/vue/documentation/switch/getting-started.html?utm_source=npm&utm_campaign=switch)
+ * [View Online Demos](https://ej2.syncfusion.com/vue/demos/?utm_source=npm&utm_campaign=switch#/material/button/switch.html)
+ * [Product Page](https://www.syncfusion.com/products/vue/switch)
+
+## Supported Frameworks
+
+These components are available in following list of frameworks.
+
+1. [Angular](https://github.com/syncfusion/ej2-ng-buttons?utm_source=npm&utm_campaign=button)
+2. [React](https://github.com/syncfusion/ej2-react-buttons?utm_source=npm&utm_campaign=button)
+3. [JavaScript (ES5)](https://www.syncfusion.com/products/javascript)
+4. [ASP.NET Core](https://www.syncfusion.com/products/aspnetcore)
+5. [ASP.NET MVC](https://www.syncfusion.com/products/aspnetmvc)
+
+## Key Features
+
+### Button
+
+* [**Types**](https://ej2.syncfusion.com/vue/documentation/button/types-and-styles.html#button-types) - Provided with different types of Button.
+
+* [**Predefined Styles**](https://ej2.syncfusion.com/vue/documentation/button/types-and-styles.html#button-styles) - Provided with predefined styles of Button.
+
+* [**Sizes**](https://ej2.syncfusion.com/vue/documentation/button/types-and-styles.html#button-size) - Provided with different sizes of Button.
+
+* [**Icons**](https://ej2.syncfusion.com/vue/documentation/button/types-and-styles.html#icons) - Supports text and icon on the Button.
+
+### CheckBox
+
+* [**States**](https://ej2.syncfusion.com/vue/documentation/check-box/getting-started.html#change-the-checkbox-state) - Provided with different states of CheckBox.
+
+* [**Label**](https://ej2.syncfusion.com/vue/documentation/check-box/label-and-size.html#label) - Supports label and its positioning.
+
+* [**Sizes**](https://ej2.syncfusion.com/vue/documentation/check-box/label-and-size.html#size) - Provided with different sizes of CheckBox.
+
+### RadioButton
+
+* [**States**](https://ej2.syncfusion.com/vue/documentation/radio-button/getting-started.html#change-the-radiobutton-state) - Provided with different states of RadioButton.
+
+* [**Label**](https://ej2.syncfusion.com/vue/documentation/radio-button/label-and-size.html#label) - Supports label and its positioning.
+
+* [**Sizes**](https://ej2.syncfusion.com/vue/documentation/radio-button/label-and-size.html#size) - Provided with different sizes of RadioButton.
+
+### Switch
+
+* [**Text**](https://ej2.syncfusion.com/vue/documentation/switch/getting-started.html#set-text-on-switch) - Supports text.
+* [**Sizes**](https://ej2.syncfusion.com/vue/documentation/switch/how-to.html#change-size) - Provided with different sizes of Switch.
+
+## Support
+
+Product support is available for through following mediums.
+
+* Creating incident in Syncfusion [Direct-trac](https://www.syncfusion.com/support/directtrac/incidents?utm_source=npm&utm_campaign=button) support system or [Community forum](https://www.syncfusion.com/forums?utm_source=npm&utm_campaign=button).
+* New [GitHub issue](https://github.com/syncfusion/ej2-vue-buttons/issues/new).
+* Ask your query in [Stack Overflow](https://stackoverflow.com/?utm_source=npm&utm_campaign=button) with tag `syncfusion`, `ej2`.
+
+## License
+
+Check the license detail [here](https://github.com/syncfusion/ej2/blob/master/license).
+
+## Changelog
+
+Check the changelog [here](https://github.com/syncfusion/ej2-vue-buttons/blob/master/CHANGELOG.md)
+
+© Copyright 2018 Syncfusion, Inc. All Rights Reserved. The Syncfusion Essential Studio license and copyright applies to this distribution.
diff --git a/src/buttons/dist/ej2-vue-buttons.umd.min.js b/src/buttons/dist/ej2-vue-buttons.umd.min.js
new file mode 100644
index 000000000..11d100343
--- /dev/null
+++ b/src/buttons/dist/ej2-vue-buttons.umd.min.js
@@ -0,0 +1,12 @@
+/*!
+* filename: ej2-vue-buttons.umd.min.js
+* version : 16.3.25
+* Copyright Syncfusion Inc. 2001 - 2018. All rights reserved.
+* Use of this code is subject to the terms of our license.
+* A copy of the current license can be obtained at any time by e-mailing
+* licensing@syncfusion.com. Any infringement will be prosecuted under
+* applicable laws.
+*/
+
+!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@syncfusion/ej2-buttons"),require("@syncfusion/ej2-vue-base"),require("@syncfusion/ej2-base")):"function"==typeof define&&define.amd?define(["exports","@syncfusion/ej2-buttons","@syncfusion/ej2-vue-base","@syncfusion/ej2-base"],t):t(e.ej={},e.ej2Buttons,e.ej2VueBase,e.ej2Base)}(this,function(e,t,n,o){"use strict";var r=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function o(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(o.prototype=n.prototype,new o)}}(),s=function(e,t,n,o){var r,s=arguments.length,i=s<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,n,o);else for(var c=e.length-1;c>=0;c--)(r=e[c])&&(i=(s<3?r(i):s>3?r(t,n,i):r(t,n))||i);return s>3&&i&&Object.defineProperty(t,n,i),i},i=["content","cssClass","disabled","enablePersistence","enableRtl","iconCss","iconPosition","isPrimary","isToggle","locale","created"],c=[],a=function(e){function o(){var n=e.call(this)||this;return n.propKeys=i,n.models=c,n.hasChildDirective=!1,n.hasInjectedModules=!1,n.tagMapper={},n.tagNameMapper={},n.ej2Instances=new t.Button({}),n.bindProperties(),n}return r(o,e),o.prototype.render=function(e){return e("button",this.$slots.default)},o=s([n.EJComponentDecorator({props:i})],o)}(n.ComponentBase),p={name:"ejs-button",install:function(e){e.component(p.name,a)}},u=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function o(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(o.prototype=n.prototype,new o)}}(),l=function(e,t,n,o){var r,s=arguments.length,i=s<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,n,o);else for(var c=e.length-1;c>=0;c--)(r=e[c])&&(i=(s<3?r(i):s>3?r(t,n,i):r(t,n))||i);return s>3&&i&&Object.defineProperty(t,n,i),i},f=["checked","cssClass","disabled","enablePersistence","enableRtl","indeterminate","label","labelPosition","locale","name","value","change","created"],h=["checked","indeterminate"],d=function(e){function r(){var n=e.call(this)||this;return n.propKeys=f,n.models=h,n.hasChildDirective=!1,n.hasInjectedModules=!1,n.tagMapper={},n.tagNameMapper={},n.ej2Instances=new t.CheckBox({}),n.ej2Instances._trigger=n.ej2Instances.trigger,n.ej2Instances.trigger=n.trigger,n.bindProperties(),n}return u(r,e),r.prototype.trigger=function(e,t){if("change"===e&&this.models&&0!==this.models.length){var n=this.models.toString().match(/checked|value/)||[],r=n[0];t&&n&&!o.isUndefined(t[r])&&this.$emit("modelchanged",t[r])}this.ej2Instances&&this.ej2Instances._trigger&&this.ej2Instances._trigger(e,t)},r.prototype.setProperties=function(e,t){var n=this;if(this.ej2Instances&&this.ej2Instances._setProperties&&this.ej2Instances._setProperties(e,t),e&&this.models&&0!==this.models.length){var o=[],r=!1;Object.keys(e).map(function(e){n.models.map(function(t){e!==t||/datasource/i.test(e)||(o.push(e),r=!0)})}),r&&o.map(function(t){n.$emit("update:"+t,e[t])})}},r.prototype.render=function(e){return e("input",this.$slots.default)},r=l([n.EJComponentDecorator({props:f,model:{event:"modelchanged"}})],r)}(n.ComponentBase),g={name:"ejs-checkbox",install:function(e){e.component(g.name,d)}},m=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function o(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(o.prototype=n.prototype,new o)}}(),j=function(e,t,n,o){var r,s=arguments.length,i=s<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,n,o);else for(var c=e.length-1;c>=0;c--)(r=e[c])&&(i=(s<3?r(i):s>3?r(t,n,i):r(t,n))||i);return s>3&&i&&Object.defineProperty(t,n,i),i},y=["checked","cssClass","disabled","enablePersistence","enableRtl","label","labelPosition","locale","name","value","change","created"],b=["checked"],_=function(e){function r(){var n=e.call(this)||this;return n.propKeys=y,n.models=b,n.hasChildDirective=!1,n.hasInjectedModules=!1,n.tagMapper={},n.tagNameMapper={},n.ej2Instances=new t.RadioButton({}),n.ej2Instances._trigger=n.ej2Instances.trigger,n.ej2Instances.trigger=n.trigger,n.bindProperties(),n}return m(r,e),r.prototype.trigger=function(e,t){if("change"===e&&this.models&&0!==this.models.length){var n=this.models.toString().match(/checked|value/)||[],r=n[0];t&&n&&!o.isUndefined(t[r])&&this.$emit("modelchanged",t[r])}this.ej2Instances&&this.ej2Instances._trigger&&this.ej2Instances._trigger(e,t)},r.prototype.setProperties=function(e,t){var n=this;if(this.ej2Instances&&this.ej2Instances._setProperties&&this.ej2Instances._setProperties(e,t),e&&this.models&&0!==this.models.length){var o=[],r=!1;Object.keys(e).map(function(e){n.models.map(function(t){e!==t||/datasource/i.test(e)||(o.push(e),r=!0)})}),r&&o.map(function(t){n.$emit("update:"+t,e[t])})}},r.prototype.render=function(e){return e("input",this.$slots.default)},r=j([n.EJComponentDecorator({props:y,model:{event:"modelchanged"}})],r)}(n.ComponentBase),v={name:"ejs-radiobutton",install:function(e){e.component(v.name,_)}},P=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function o(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(o.prototype=n.prototype,new o)}}(),I=function(e,t,n,o){var r,s=arguments.length,i=s<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,n,o);else for(var c=e.length-1;c>=0;c--)(r=e[c])&&(i=(s<3?r(i):s>3?r(t,n,i):r(t,n))||i);return s>3&&i&&Object.defineProperty(t,n,i),i},O=["checked","cssClass","disabled","enablePersistence","enableRtl","locale","name","offLabel","onLabel","value","change","created"],C=["checked"],w=function(e){function r(){var n=e.call(this)||this;return n.propKeys=O,n.models=C,n.hasChildDirective=!1,n.hasInjectedModules=!1,n.tagMapper={},n.tagNameMapper={},n.ej2Instances=new t.Switch({}),n.ej2Instances._trigger=n.ej2Instances.trigger,n.ej2Instances.trigger=n.trigger,n.bindProperties(),n}return P(r,e),r.prototype.trigger=function(e,t){if("change"===e&&this.models&&0!==this.models.length){var n=this.models.toString().match(/checked|value/)||[],r=n[0];t&&n&&!o.isUndefined(t[r])&&this.$emit("modelchanged",t[r])}this.ej2Instances&&this.ej2Instances._trigger&&this.ej2Instances._trigger(e,t)},r.prototype.setProperties=function(e,t){var n=this;if(this.ej2Instances&&this.ej2Instances._setProperties&&this.ej2Instances._setProperties(e,t),e&&this.models&&0!==this.models.length){var o=[],r=!1;Object.keys(e).map(function(e){n.models.map(function(t){e!==t||/datasource/i.test(e)||(o.push(e),r=!0)})}),r&&o.map(function(t){n.$emit("update:"+t,e[t])})}},r.prototype.render=function(e){return e("input",this.$slots.default)},r.prototype.toggle=function(){return this.ej2Instances.toggle()},r=I([n.EJComponentDecorator({props:O,model:{event:"modelchanged"}})],r)}(n.ComponentBase),R={name:"ejs-switch",install:function(e){e.component(R.name,w)}};e.ButtonComponent=a,e.ButtonPlugin=p,e.CheckBoxComponent=d,e.CheckBoxPlugin=g,e.RadioButtonComponent=_,e.RadioButtonPlugin=v,e.SwitchComponent=w,e.SwitchPlugin=R,Object.keys(t).forEach(function(n){e[n]=t[n]}),Object.defineProperty(e,"__esModule",{value:!0})});
+//# sourceMappingURL=ej2-vue-buttons.umd.min.js.map
diff --git a/src/buttons/dist/ej2-vue-buttons.umd.min.js.map b/src/buttons/dist/ej2-vue-buttons.umd.min.js.map
new file mode 100644
index 000000000..8cc7f3345
--- /dev/null
+++ b/src/buttons/dist/ej2-vue-buttons.umd.min.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"ej2-vue-buttons.umd.min.js","sources":["../src/button/button.component.js","../src/check-box/checkbox.component.js","../src/radio-button/radiobutton.component.js","../src/switch/switch.component.js"],"sourcesContent":["var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n }\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';\nimport { Button } from '@syncfusion/ej2-buttons';\nexport var properties = ['content', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'iconCss', 'iconPosition', 'isPrimary', 'isToggle', 'locale', 'created'];\nexport var modelProps = [];\n/**\n * Represents the Essential JS 2 VueJS Button Component\n * ```html\n * Button\n * ```\n */\nvar ButtonComponent = /** @class */ (function (_super) {\n __extends(ButtonComponent, _super);\n function ButtonComponent() {\n var _this = _super.call(this) || this;\n _this.propKeys = properties;\n _this.models = modelProps;\n _this.hasChildDirective = false;\n _this.hasInjectedModules = false;\n _this.tagMapper = {};\n _this.tagNameMapper = {};\n _this.ej2Instances = new Button({});\n _this.bindProperties();\n return _this;\n }\n ButtonComponent.prototype.render = function (createElement) {\n return createElement('button', this.$slots.default);\n };\n ButtonComponent = __decorate([\n EJComponentDecorator({\n props: properties\n })\n ], ButtonComponent);\n return ButtonComponent;\n}(ComponentBase));\nexport { ButtonComponent };\nexport var ButtonPlugin = {\n name: 'ejs-button',\n install: function (Vue) {\n Vue.component(ButtonPlugin.name, ButtonComponent);\n }\n};\n","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n }\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { isUndefined } from '@syncfusion/ej2-base';\nimport { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';\nimport { CheckBox } from '@syncfusion/ej2-buttons';\nexport var properties = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'indeterminate', 'label', 'labelPosition', 'locale', 'name', 'value', 'change', 'created'];\nexport var modelProps = ['checked', 'indeterminate'];\n/**\n * Represents the Essential JS 2 VueJS CheckBox Component\n * ```html\n * \n * ```\n */\nvar CheckBoxComponent = /** @class */ (function (_super) {\n __extends(CheckBoxComponent, _super);\n function CheckBoxComponent() {\n var _this = _super.call(this) || this;\n _this.propKeys = properties;\n _this.models = modelProps;\n _this.hasChildDirective = false;\n _this.hasInjectedModules = false;\n _this.tagMapper = {};\n _this.tagNameMapper = {};\n _this.ej2Instances = new CheckBox({});\n _this.ej2Instances._trigger = _this.ej2Instances.trigger;\n _this.ej2Instances.trigger = _this.trigger;\n //this.ej2Instances._setProperties = this.ej2Instances.setProperties;\n //this.ej2Instances.setProperties = this.setProperties;\n _this.bindProperties();\n return _this;\n }\n CheckBoxComponent.prototype.trigger = function (eventName, eventProp) {\n if (eventName === 'change' && this.models && (this.models.length !== 0)) {\n var key = this.models.toString().match(/checked|value/) || [];\n var propKey = key[0];\n if (eventProp && key && !isUndefined(eventProp[propKey])) {\n this.$emit('modelchanged', eventProp[propKey]);\n }\n }\n if (this.ej2Instances && this.ej2Instances._trigger) {\n this.ej2Instances._trigger(eventName, eventProp);\n }\n };\n CheckBoxComponent.prototype.setProperties = function (prop, muteOnChange) {\n var _this = this;\n if (this.ej2Instances && this.ej2Instances._setProperties) {\n this.ej2Instances._setProperties(prop, muteOnChange);\n }\n if (prop && this.models && (this.models.length !== 0)) {\n var keys = Object.keys(prop);\n var emitKeys_1 = [];\n var emitFlag_1 = false;\n keys.map(function (key) {\n _this.models.map(function (model) {\n if ((key === model) && !(/datasource/i.test(key))) {\n emitKeys_1.push(key);\n emitFlag_1 = true;\n }\n });\n });\n if (emitFlag_1) {\n emitKeys_1.map(function (propKey) {\n _this.$emit('update:' + propKey, prop[propKey]);\n });\n }\n }\n };\n CheckBoxComponent.prototype.render = function (createElement) {\n return createElement('input', this.$slots.default);\n };\n CheckBoxComponent = __decorate([\n EJComponentDecorator({\n props: properties,\n model: {\n event: 'modelchanged'\n }\n })\n ], CheckBoxComponent);\n return CheckBoxComponent;\n}(ComponentBase));\nexport { CheckBoxComponent };\nexport var CheckBoxPlugin = {\n name: 'ejs-checkbox',\n install: function (Vue) {\n Vue.component(CheckBoxPlugin.name, CheckBoxComponent);\n }\n};\n","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n }\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { isUndefined } from '@syncfusion/ej2-base';\nimport { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';\nimport { RadioButton } from '@syncfusion/ej2-buttons';\nexport var properties = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'label', 'labelPosition', 'locale', 'name', 'value', 'change', 'created'];\nexport var modelProps = ['checked'];\n/**\n * Represents the Essential JS 2 VueJS RadioButton Component\n * ```html\n * \n * ```\n */\nvar RadioButtonComponent = /** @class */ (function (_super) {\n __extends(RadioButtonComponent, _super);\n function RadioButtonComponent() {\n var _this = _super.call(this) || this;\n _this.propKeys = properties;\n _this.models = modelProps;\n _this.hasChildDirective = false;\n _this.hasInjectedModules = false;\n _this.tagMapper = {};\n _this.tagNameMapper = {};\n _this.ej2Instances = new RadioButton({});\n _this.ej2Instances._trigger = _this.ej2Instances.trigger;\n _this.ej2Instances.trigger = _this.trigger;\n //this.ej2Instances._setProperties = this.ej2Instances.setProperties;\n //this.ej2Instances.setProperties = this.setProperties;\n _this.bindProperties();\n return _this;\n }\n RadioButtonComponent.prototype.trigger = function (eventName, eventProp) {\n if (eventName === 'change' && this.models && (this.models.length !== 0)) {\n var key = this.models.toString().match(/checked|value/) || [];\n var propKey = key[0];\n if (eventProp && key && !isUndefined(eventProp[propKey])) {\n this.$emit('modelchanged', eventProp[propKey]);\n }\n }\n if (this.ej2Instances && this.ej2Instances._trigger) {\n this.ej2Instances._trigger(eventName, eventProp);\n }\n };\n RadioButtonComponent.prototype.setProperties = function (prop, muteOnChange) {\n var _this = this;\n if (this.ej2Instances && this.ej2Instances._setProperties) {\n this.ej2Instances._setProperties(prop, muteOnChange);\n }\n if (prop && this.models && (this.models.length !== 0)) {\n var keys = Object.keys(prop);\n var emitKeys_1 = [];\n var emitFlag_1 = false;\n keys.map(function (key) {\n _this.models.map(function (model) {\n if ((key === model) && !(/datasource/i.test(key))) {\n emitKeys_1.push(key);\n emitFlag_1 = true;\n }\n });\n });\n if (emitFlag_1) {\n emitKeys_1.map(function (propKey) {\n _this.$emit('update:' + propKey, prop[propKey]);\n });\n }\n }\n };\n RadioButtonComponent.prototype.render = function (createElement) {\n return createElement('input', this.$slots.default);\n };\n RadioButtonComponent = __decorate([\n EJComponentDecorator({\n props: properties,\n model: {\n event: 'modelchanged'\n }\n })\n ], RadioButtonComponent);\n return RadioButtonComponent;\n}(ComponentBase));\nexport { RadioButtonComponent };\nexport var RadioButtonPlugin = {\n name: 'ejs-radiobutton',\n install: function (Vue) {\n Vue.component(RadioButtonPlugin.name, RadioButtonComponent);\n }\n};\n","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n }\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { isUndefined } from '@syncfusion/ej2-base';\nimport { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';\nimport { Switch } from '@syncfusion/ej2-buttons';\nexport var properties = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'locale', 'name', 'offLabel', 'onLabel', 'value', 'change', 'created'];\nexport var modelProps = ['checked'];\n/**\n * Represents the Essential JS 2 VueJS Switch Component.\n * ```html\n * \n * ```\n */\nvar SwitchComponent = /** @class */ (function (_super) {\n __extends(SwitchComponent, _super);\n function SwitchComponent() {\n var _this = _super.call(this) || this;\n _this.propKeys = properties;\n _this.models = modelProps;\n _this.hasChildDirective = false;\n _this.hasInjectedModules = false;\n _this.tagMapper = {};\n _this.tagNameMapper = {};\n _this.ej2Instances = new Switch({});\n _this.ej2Instances._trigger = _this.ej2Instances.trigger;\n _this.ej2Instances.trigger = _this.trigger;\n //this.ej2Instances._setProperties = this.ej2Instances.setProperties;\n //this.ej2Instances.setProperties = this.setProperties;\n _this.bindProperties();\n return _this;\n }\n SwitchComponent.prototype.trigger = function (eventName, eventProp) {\n if (eventName === 'change' && this.models && (this.models.length !== 0)) {\n var key = this.models.toString().match(/checked|value/) || [];\n var propKey = key[0];\n if (eventProp && key && !isUndefined(eventProp[propKey])) {\n this.$emit('modelchanged', eventProp[propKey]);\n }\n }\n if (this.ej2Instances && this.ej2Instances._trigger) {\n this.ej2Instances._trigger(eventName, eventProp);\n }\n };\n SwitchComponent.prototype.setProperties = function (prop, muteOnChange) {\n var _this = this;\n if (this.ej2Instances && this.ej2Instances._setProperties) {\n this.ej2Instances._setProperties(prop, muteOnChange);\n }\n if (prop && this.models && (this.models.length !== 0)) {\n var keys = Object.keys(prop);\n var emitKeys_1 = [];\n var emitFlag_1 = false;\n keys.map(function (key) {\n _this.models.map(function (model) {\n if ((key === model) && !(/datasource/i.test(key))) {\n emitKeys_1.push(key);\n emitFlag_1 = true;\n }\n });\n });\n if (emitFlag_1) {\n emitKeys_1.map(function (propKey) {\n _this.$emit('update:' + propKey, prop[propKey]);\n });\n }\n }\n };\n SwitchComponent.prototype.render = function (createElement) {\n return createElement('input', this.$slots.default);\n };\n SwitchComponent.prototype.toggle = function () {\n return this.ej2Instances.toggle();\n };\n SwitchComponent = __decorate([\n EJComponentDecorator({\n props: properties,\n model: {\n event: 'modelchanged'\n }\n })\n ], SwitchComponent);\n return SwitchComponent;\n}(ComponentBase));\nexport { SwitchComponent };\nexport var SwitchPlugin = {\n name: 'ejs-switch',\n install: function (Vue) {\n Vue.component(SwitchPlugin.name, SwitchComponent);\n }\n};\n"],"names":["__extends","extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__","this","constructor","prototype","create","__decorate","decorators","target","key","desc","c","arguments","length","r","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","properties","modelProps","ButtonComponent","_super","_this","call","propKeys","models","hasChildDirective","hasInjectedModules","tagMapper","tagNameMapper","ej2Instances","Button","bindProperties","render","createElement","$slots","default","EJComponentDecorator","props","ComponentBase","ButtonPlugin","name","install","Vue","component","CheckBoxComponent","CheckBox","_trigger","trigger","eventName","eventProp","toString","match","propKey","isUndefined","$emit","setProperties","prop","muteOnChange","_setProperties","emitKeys_1","emitFlag_1","keys","map","model","test","push","event","CheckBoxPlugin","RadioButtonComponent","RadioButton","RadioButtonPlugin","SwitchComponent","Switch","toggle","SwitchPlugin"],"mappings":"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"}
\ No newline at end of file
diff --git a/src/buttons/dist/es6/ej2-vue-buttons.es2015.js b/src/buttons/dist/es6/ej2-vue-buttons.es2015.js
new file mode 100644
index 000000000..b7f1dcb5f
--- /dev/null
+++ b/src/buttons/dist/es6/ej2-vue-buttons.es2015.js
@@ -0,0 +1,304 @@
+import { Button, CheckBox, RadioButton, Switch } from '@syncfusion/ej2-buttons';
+import { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';
+import { isUndefined } from '@syncfusion/ej2-base';
+
+var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
+};
+const properties = ['content', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'iconCss', 'iconPosition', 'isPrimary', 'isToggle', 'locale', 'created'];
+const modelProps = [];
+/**
+ * Represents the Essential JS 2 VueJS Button Component
+ * ```html
+ * Button
+ * ```
+ */
+let ButtonComponent = class ButtonComponent extends ComponentBase {
+ constructor() {
+ super();
+ this.propKeys = properties;
+ this.models = modelProps;
+ this.hasChildDirective = false;
+ this.hasInjectedModules = false;
+ this.tagMapper = {};
+ this.tagNameMapper = {};
+ this.ej2Instances = new Button({});
+ this.bindProperties();
+ }
+ render(createElement) {
+ return createElement('button', this.$slots.default);
+ }
+};
+ButtonComponent = __decorate([
+ EJComponentDecorator({
+ props: properties
+ })
+], ButtonComponent);
+const ButtonPlugin = {
+ name: 'ejs-button',
+ install(Vue) {
+ Vue.component(ButtonPlugin.name, ButtonComponent);
+ }
+};
+
+var __decorate$1 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
+};
+const properties$1 = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'indeterminate', 'label', 'labelPosition', 'locale', 'name', 'value', 'change', 'created'];
+const modelProps$1 = ['checked', 'indeterminate'];
+/**
+ * Represents the Essential JS 2 VueJS CheckBox Component
+ * ```html
+ *
+ * ```
+ */
+let CheckBoxComponent = class CheckBoxComponent extends ComponentBase {
+ constructor() {
+ super();
+ this.propKeys = properties$1;
+ this.models = modelProps$1;
+ this.hasChildDirective = false;
+ this.hasInjectedModules = false;
+ this.tagMapper = {};
+ this.tagNameMapper = {};
+ this.ej2Instances = new CheckBox({});
+ this.ej2Instances._trigger = this.ej2Instances.trigger;
+ this.ej2Instances.trigger = this.trigger;
+ //this.ej2Instances._setProperties = this.ej2Instances.setProperties;
+ //this.ej2Instances.setProperties = this.setProperties;
+ this.bindProperties();
+ }
+ trigger(eventName, eventProp) {
+ if (eventName === 'change' && this.models && (this.models.length !== 0)) {
+ let key = this.models.toString().match(/checked|value/) || [];
+ let propKey = key[0];
+ if (eventProp && key && !isUndefined(eventProp[propKey])) {
+ this.$emit('modelchanged', eventProp[propKey]);
+ }
+ }
+ if (this.ej2Instances && this.ej2Instances._trigger) {
+ this.ej2Instances._trigger(eventName, eventProp);
+ }
+ }
+ setProperties(prop, muteOnChange) {
+ if (this.ej2Instances && this.ej2Instances._setProperties) {
+ this.ej2Instances._setProperties(prop, muteOnChange);
+ }
+ if (prop && this.models && (this.models.length !== 0)) {
+ let keys = Object.keys(prop);
+ let emitKeys = [];
+ let emitFlag = false;
+ keys.map((key) => {
+ this.models.map((model) => {
+ if ((key === model) && !(/datasource/i.test(key))) {
+ emitKeys.push(key);
+ emitFlag = true;
+ }
+ });
+ });
+ if (emitFlag) {
+ emitKeys.map((propKey) => {
+ this.$emit('update:' + propKey, prop[propKey]);
+ });
+ }
+ }
+ }
+ render(createElement) {
+ return createElement('input', this.$slots.default);
+ }
+};
+CheckBoxComponent = __decorate$1([
+ EJComponentDecorator({
+ props: properties$1,
+ model: {
+ event: 'modelchanged'
+ }
+ })
+], CheckBoxComponent);
+const CheckBoxPlugin = {
+ name: 'ejs-checkbox',
+ install(Vue) {
+ Vue.component(CheckBoxPlugin.name, CheckBoxComponent);
+ }
+};
+
+var __decorate$2 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
+};
+const properties$2 = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'label', 'labelPosition', 'locale', 'name', 'value', 'change', 'created'];
+const modelProps$2 = ['checked'];
+/**
+ * Represents the Essential JS 2 VueJS RadioButton Component
+ * ```html
+ *
+ * ```
+ */
+let RadioButtonComponent = class RadioButtonComponent extends ComponentBase {
+ constructor() {
+ super();
+ this.propKeys = properties$2;
+ this.models = modelProps$2;
+ this.hasChildDirective = false;
+ this.hasInjectedModules = false;
+ this.tagMapper = {};
+ this.tagNameMapper = {};
+ this.ej2Instances = new RadioButton({});
+ this.ej2Instances._trigger = this.ej2Instances.trigger;
+ this.ej2Instances.trigger = this.trigger;
+ //this.ej2Instances._setProperties = this.ej2Instances.setProperties;
+ //this.ej2Instances.setProperties = this.setProperties;
+ this.bindProperties();
+ }
+ trigger(eventName, eventProp) {
+ if (eventName === 'change' && this.models && (this.models.length !== 0)) {
+ let key = this.models.toString().match(/checked|value/) || [];
+ let propKey = key[0];
+ if (eventProp && key && !isUndefined(eventProp[propKey])) {
+ this.$emit('modelchanged', eventProp[propKey]);
+ }
+ }
+ if (this.ej2Instances && this.ej2Instances._trigger) {
+ this.ej2Instances._trigger(eventName, eventProp);
+ }
+ }
+ setProperties(prop, muteOnChange) {
+ if (this.ej2Instances && this.ej2Instances._setProperties) {
+ this.ej2Instances._setProperties(prop, muteOnChange);
+ }
+ if (prop && this.models && (this.models.length !== 0)) {
+ let keys = Object.keys(prop);
+ let emitKeys = [];
+ let emitFlag = false;
+ keys.map((key) => {
+ this.models.map((model) => {
+ if ((key === model) && !(/datasource/i.test(key))) {
+ emitKeys.push(key);
+ emitFlag = true;
+ }
+ });
+ });
+ if (emitFlag) {
+ emitKeys.map((propKey) => {
+ this.$emit('update:' + propKey, prop[propKey]);
+ });
+ }
+ }
+ }
+ render(createElement) {
+ return createElement('input', this.$slots.default);
+ }
+};
+RadioButtonComponent = __decorate$2([
+ EJComponentDecorator({
+ props: properties$2,
+ model: {
+ event: 'modelchanged'
+ }
+ })
+], RadioButtonComponent);
+const RadioButtonPlugin = {
+ name: 'ejs-radiobutton',
+ install(Vue) {
+ Vue.component(RadioButtonPlugin.name, RadioButtonComponent);
+ }
+};
+
+var __decorate$3 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
+};
+const properties$3 = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'locale', 'name', 'offLabel', 'onLabel', 'value', 'change', 'created'];
+const modelProps$3 = ['checked'];
+/**
+ * Represents the Essential JS 2 VueJS Switch Component.
+ * ```html
+ *
+ * ```
+ */
+let SwitchComponent = class SwitchComponent extends ComponentBase {
+ constructor() {
+ super();
+ this.propKeys = properties$3;
+ this.models = modelProps$3;
+ this.hasChildDirective = false;
+ this.hasInjectedModules = false;
+ this.tagMapper = {};
+ this.tagNameMapper = {};
+ this.ej2Instances = new Switch({});
+ this.ej2Instances._trigger = this.ej2Instances.trigger;
+ this.ej2Instances.trigger = this.trigger;
+ //this.ej2Instances._setProperties = this.ej2Instances.setProperties;
+ //this.ej2Instances.setProperties = this.setProperties;
+ this.bindProperties();
+ }
+ trigger(eventName, eventProp) {
+ if (eventName === 'change' && this.models && (this.models.length !== 0)) {
+ let key = this.models.toString().match(/checked|value/) || [];
+ let propKey = key[0];
+ if (eventProp && key && !isUndefined(eventProp[propKey])) {
+ this.$emit('modelchanged', eventProp[propKey]);
+ }
+ }
+ if (this.ej2Instances && this.ej2Instances._trigger) {
+ this.ej2Instances._trigger(eventName, eventProp);
+ }
+ }
+ setProperties(prop, muteOnChange) {
+ if (this.ej2Instances && this.ej2Instances._setProperties) {
+ this.ej2Instances._setProperties(prop, muteOnChange);
+ }
+ if (prop && this.models && (this.models.length !== 0)) {
+ let keys = Object.keys(prop);
+ let emitKeys = [];
+ let emitFlag = false;
+ keys.map((key) => {
+ this.models.map((model) => {
+ if ((key === model) && !(/datasource/i.test(key))) {
+ emitKeys.push(key);
+ emitFlag = true;
+ }
+ });
+ });
+ if (emitFlag) {
+ emitKeys.map((propKey) => {
+ this.$emit('update:' + propKey, prop[propKey]);
+ });
+ }
+ }
+ }
+ render(createElement) {
+ return createElement('input', this.$slots.default);
+ }
+ toggle() {
+ return this.ej2Instances.toggle();
+ }
+};
+SwitchComponent = __decorate$3([
+ EJComponentDecorator({
+ props: properties$3,
+ model: {
+ event: 'modelchanged'
+ }
+ })
+], SwitchComponent);
+const SwitchPlugin = {
+ name: 'ejs-switch',
+ install(Vue) {
+ Vue.component(SwitchPlugin.name, SwitchComponent);
+ }
+};
+
+export { ButtonComponent, ButtonPlugin, CheckBoxComponent, CheckBoxPlugin, RadioButtonComponent, RadioButtonPlugin, SwitchComponent, SwitchPlugin };
+export * from '@syncfusion/ej2-buttons';
+//# sourceMappingURL=ej2-vue-buttons.es2015.js.map
diff --git a/src/buttons/dist/es6/ej2-vue-buttons.es2015.js.map b/src/buttons/dist/es6/ej2-vue-buttons.es2015.js.map
new file mode 100644
index 000000000..1607136d9
--- /dev/null
+++ b/src/buttons/dist/es6/ej2-vue-buttons.es2015.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"ej2-vue-buttons.es2015.js","sources":["../src/es6/button/button.component.js","../src/es6/check-box/checkbox.component.js","../src/es6/radio-button/radiobutton.component.js","../src/es6/switch/switch.component.js"],"sourcesContent":["var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';\nimport { Button } from '@syncfusion/ej2-buttons';\nexport const properties = ['content', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'iconCss', 'iconPosition', 'isPrimary', 'isToggle', 'locale', 'created'];\nexport const modelProps = [];\n/**\n * Represents the Essential JS 2 VueJS Button Component\n * ```html\n * Button\n * ```\n */\nlet ButtonComponent = class ButtonComponent extends ComponentBase {\n constructor() {\n super();\n this.propKeys = properties;\n this.models = modelProps;\n this.hasChildDirective = false;\n this.hasInjectedModules = false;\n this.tagMapper = {};\n this.tagNameMapper = {};\n this.ej2Instances = new Button({});\n this.bindProperties();\n }\n render(createElement) {\n return createElement('button', this.$slots.default);\n }\n};\nButtonComponent = __decorate([\n EJComponentDecorator({\n props: properties\n })\n], ButtonComponent);\nexport { ButtonComponent };\nexport const ButtonPlugin = {\n name: 'ejs-button',\n install(Vue) {\n Vue.component(ButtonPlugin.name, ButtonComponent);\n }\n};\n","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { isUndefined } from '@syncfusion/ej2-base';\nimport { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';\nimport { CheckBox } from '@syncfusion/ej2-buttons';\nexport const properties = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'indeterminate', 'label', 'labelPosition', 'locale', 'name', 'value', 'change', 'created'];\nexport const modelProps = ['checked', 'indeterminate'];\n/**\n * Represents the Essential JS 2 VueJS CheckBox Component\n * ```html\n * \n * ```\n */\nlet CheckBoxComponent = class CheckBoxComponent extends ComponentBase {\n constructor() {\n super();\n this.propKeys = properties;\n this.models = modelProps;\n this.hasChildDirective = false;\n this.hasInjectedModules = false;\n this.tagMapper = {};\n this.tagNameMapper = {};\n this.ej2Instances = new CheckBox({});\n this.ej2Instances._trigger = this.ej2Instances.trigger;\n this.ej2Instances.trigger = this.trigger;\n //this.ej2Instances._setProperties = this.ej2Instances.setProperties;\n //this.ej2Instances.setProperties = this.setProperties;\n this.bindProperties();\n }\n trigger(eventName, eventProp) {\n if (eventName === 'change' && this.models && (this.models.length !== 0)) {\n let key = this.models.toString().match(/checked|value/) || [];\n let propKey = key[0];\n if (eventProp && key && !isUndefined(eventProp[propKey])) {\n this.$emit('modelchanged', eventProp[propKey]);\n }\n }\n if (this.ej2Instances && this.ej2Instances._trigger) {\n this.ej2Instances._trigger(eventName, eventProp);\n }\n }\n setProperties(prop, muteOnChange) {\n if (this.ej2Instances && this.ej2Instances._setProperties) {\n this.ej2Instances._setProperties(prop, muteOnChange);\n }\n if (prop && this.models && (this.models.length !== 0)) {\n let keys = Object.keys(prop);\n let emitKeys = [];\n let emitFlag = false;\n keys.map((key) => {\n this.models.map((model) => {\n if ((key === model) && !(/datasource/i.test(key))) {\n emitKeys.push(key);\n emitFlag = true;\n }\n });\n });\n if (emitFlag) {\n emitKeys.map((propKey) => {\n this.$emit('update:' + propKey, prop[propKey]);\n });\n }\n }\n }\n render(createElement) {\n return createElement('input', this.$slots.default);\n }\n};\nCheckBoxComponent = __decorate([\n EJComponentDecorator({\n props: properties,\n model: {\n event: 'modelchanged'\n }\n })\n], CheckBoxComponent);\nexport { CheckBoxComponent };\nexport const CheckBoxPlugin = {\n name: 'ejs-checkbox',\n install(Vue) {\n Vue.component(CheckBoxPlugin.name, CheckBoxComponent);\n }\n};\n","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { isUndefined } from '@syncfusion/ej2-base';\nimport { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';\nimport { RadioButton } from '@syncfusion/ej2-buttons';\nexport const properties = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'label', 'labelPosition', 'locale', 'name', 'value', 'change', 'created'];\nexport const modelProps = ['checked'];\n/**\n * Represents the Essential JS 2 VueJS RadioButton Component\n * ```html\n * \n * ```\n */\nlet RadioButtonComponent = class RadioButtonComponent extends ComponentBase {\n constructor() {\n super();\n this.propKeys = properties;\n this.models = modelProps;\n this.hasChildDirective = false;\n this.hasInjectedModules = false;\n this.tagMapper = {};\n this.tagNameMapper = {};\n this.ej2Instances = new RadioButton({});\n this.ej2Instances._trigger = this.ej2Instances.trigger;\n this.ej2Instances.trigger = this.trigger;\n //this.ej2Instances._setProperties = this.ej2Instances.setProperties;\n //this.ej2Instances.setProperties = this.setProperties;\n this.bindProperties();\n }\n trigger(eventName, eventProp) {\n if (eventName === 'change' && this.models && (this.models.length !== 0)) {\n let key = this.models.toString().match(/checked|value/) || [];\n let propKey = key[0];\n if (eventProp && key && !isUndefined(eventProp[propKey])) {\n this.$emit('modelchanged', eventProp[propKey]);\n }\n }\n if (this.ej2Instances && this.ej2Instances._trigger) {\n this.ej2Instances._trigger(eventName, eventProp);\n }\n }\n setProperties(prop, muteOnChange) {\n if (this.ej2Instances && this.ej2Instances._setProperties) {\n this.ej2Instances._setProperties(prop, muteOnChange);\n }\n if (prop && this.models && (this.models.length !== 0)) {\n let keys = Object.keys(prop);\n let emitKeys = [];\n let emitFlag = false;\n keys.map((key) => {\n this.models.map((model) => {\n if ((key === model) && !(/datasource/i.test(key))) {\n emitKeys.push(key);\n emitFlag = true;\n }\n });\n });\n if (emitFlag) {\n emitKeys.map((propKey) => {\n this.$emit('update:' + propKey, prop[propKey]);\n });\n }\n }\n }\n render(createElement) {\n return createElement('input', this.$slots.default);\n }\n};\nRadioButtonComponent = __decorate([\n EJComponentDecorator({\n props: properties,\n model: {\n event: 'modelchanged'\n }\n })\n], RadioButtonComponent);\nexport { RadioButtonComponent };\nexport const RadioButtonPlugin = {\n name: 'ejs-radiobutton',\n install(Vue) {\n Vue.component(RadioButtonPlugin.name, RadioButtonComponent);\n }\n};\n","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { isUndefined } from '@syncfusion/ej2-base';\nimport { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';\nimport { Switch } from '@syncfusion/ej2-buttons';\nexport const properties = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'locale', 'name', 'offLabel', 'onLabel', 'value', 'change', 'created'];\nexport const modelProps = ['checked'];\n/**\n * Represents the Essential JS 2 VueJS Switch Component.\n * ```html\n * \n * ```\n */\nlet SwitchComponent = class SwitchComponent extends ComponentBase {\n constructor() {\n super();\n this.propKeys = properties;\n this.models = modelProps;\n this.hasChildDirective = false;\n this.hasInjectedModules = false;\n this.tagMapper = {};\n this.tagNameMapper = {};\n this.ej2Instances = new Switch({});\n this.ej2Instances._trigger = this.ej2Instances.trigger;\n this.ej2Instances.trigger = this.trigger;\n //this.ej2Instances._setProperties = this.ej2Instances.setProperties;\n //this.ej2Instances.setProperties = this.setProperties;\n this.bindProperties();\n }\n trigger(eventName, eventProp) {\n if (eventName === 'change' && this.models && (this.models.length !== 0)) {\n let key = this.models.toString().match(/checked|value/) || [];\n let propKey = key[0];\n if (eventProp && key && !isUndefined(eventProp[propKey])) {\n this.$emit('modelchanged', eventProp[propKey]);\n }\n }\n if (this.ej2Instances && this.ej2Instances._trigger) {\n this.ej2Instances._trigger(eventName, eventProp);\n }\n }\n setProperties(prop, muteOnChange) {\n if (this.ej2Instances && this.ej2Instances._setProperties) {\n this.ej2Instances._setProperties(prop, muteOnChange);\n }\n if (prop && this.models && (this.models.length !== 0)) {\n let keys = Object.keys(prop);\n let emitKeys = [];\n let emitFlag = false;\n keys.map((key) => {\n this.models.map((model) => {\n if ((key === model) && !(/datasource/i.test(key))) {\n emitKeys.push(key);\n emitFlag = true;\n }\n });\n });\n if (emitFlag) {\n emitKeys.map((propKey) => {\n this.$emit('update:' + propKey, prop[propKey]);\n });\n }\n }\n }\n render(createElement) {\n return createElement('input', this.$slots.default);\n }\n toggle() {\n return this.ej2Instances.toggle();\n }\n};\nSwitchComponent = __decorate([\n EJComponentDecorator({\n props: properties,\n model: {\n event: 'modelchanged'\n }\n })\n], SwitchComponent);\nexport { SwitchComponent };\nexport const SwitchPlugin = {\n name: 'ejs-switch',\n install(Vue) {\n Vue.component(SwitchPlugin.name, SwitchComponent);\n }\n};\n"],"names":["this","__decorate","properties","modelProps"],"mappings":";;;;AAAA,IAAI,UAAU,GAAG,CAACA,SAAI,IAAIA,SAAI,CAAC,UAAU,KAAK,UAAU,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE;IACnF,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;SAC1H,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAClJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;CACjE,CAAC;AACF,AAEO,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AACzK,AAAO,MAAM,UAAU,GAAG,EAAE,CAAC;;;;;;;AAO7B,IAAI,eAAe,GAAG,MAAM,eAAe,SAAS,aAAa,CAAC;IAC9D,WAAW,GAAG;QACV,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC;QACzB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,cAAc,EAAE,CAAC;KACzB;IACD,MAAM,CAAC,aAAa,EAAE;QAClB,OAAO,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;KACvD;CACJ,CAAC;AACF,eAAe,GAAG,UAAU,CAAC;IACzB,oBAAoB,CAAC;QACjB,KAAK,EAAE,UAAU;KACpB,CAAC;CACL,EAAE,eAAe,CAAC,CAAC;AACpB,AACO,MAAM,YAAY,GAAG;IACxB,IAAI,EAAE,YAAY;IAClB,OAAO,CAAC,GAAG,EAAE;QACT,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;KACrD;CACJ;;AC3CD,IAAIC,YAAU,GAAG,CAACD,SAAI,IAAIA,SAAI,CAAC,UAAU,KAAK,UAAU,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE;IACnF,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;SAC1H,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAClJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;CACjE,CAAC;AACF,AAGO,MAAME,YAAU,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAC3L,AAAO,MAAMC,YAAU,GAAG,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;;;;;;;AAOvD,IAAI,iBAAiB,GAAG,MAAM,iBAAiB,SAAS,aAAa,CAAC;IAClE,WAAW,GAAG;QACV,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,QAAQ,GAAGD,YAAU,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAGC,YAAU,CAAC;QACzB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,IAAI,QAAQ,CAAC,EAAE,CAAC,CAAC;QACrC,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;;;QAGzC,IAAI,CAAC,cAAc,EAAE,CAAC;KACzB;IACD,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE;QAC1B,IAAI,SAAS,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE;YACrE,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;YAC9D,IAAI,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACrB,IAAI,SAAS,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE;gBACtD,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;aAClD;SACJ;QACD,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;YACjD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;SACpD;KACJ;IACD,aAAa,CAAC,IAAI,EAAE,YAAY,EAAE;QAC9B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE;YACvD,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;SACxD;QACD,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE;YACnD,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClB,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK;gBACd,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK;oBACvB,IAAI,CAAC,GAAG,KAAK,KAAK,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;wBAC/C,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBACnB,QAAQ,GAAG,IAAI,CAAC;qBACnB;iBACJ,CAAC,CAAC;aACN,CAAC,CAAC;YACH,IAAI,QAAQ,EAAE;gBACV,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,KAAK;oBACtB,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;iBAClD,CAAC,CAAC;aACN;SACJ;KACJ;IACD,MAAM,CAAC,aAAa,EAAE;QAClB,OAAO,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;KACtD;CACJ,CAAC;AACF,iBAAiB,GAAGF,YAAU,CAAC;IAC3B,oBAAoB,CAAC;QACjB,KAAK,EAAEC,YAAU;QACjB,KAAK,EAAE;YACH,KAAK,EAAE,cAAc;SACxB;KACJ,CAAC;CACL,EAAE,iBAAiB,CAAC,CAAC;AACtB,AACO,MAAM,cAAc,GAAG;IAC1B,IAAI,EAAE,cAAc;IACpB,OAAO,CAAC,GAAG,EAAE;QACT,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;KACzD;CACJ;;ACtFD,IAAID,YAAU,GAAG,CAACD,SAAI,IAAIA,SAAI,CAAC,UAAU,KAAK,UAAU,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE;IACnF,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;SAC1H,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAClJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;CACjE,CAAC;AACF,AAGO,MAAME,YAAU,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAC1K,AAAO,MAAMC,YAAU,GAAG,CAAC,SAAS,CAAC,CAAC;;;;;;;AAOtC,IAAI,oBAAoB,GAAG,MAAM,oBAAoB,SAAS,aAAa,CAAC;IACxE,WAAW,GAAG;QACV,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,QAAQ,GAAGD,YAAU,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAGC,YAAU,CAAC;QACzB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;;;QAGzC,IAAI,CAAC,cAAc,EAAE,CAAC;KACzB;IACD,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE;QAC1B,IAAI,SAAS,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE;YACrE,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;YAC9D,IAAI,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACrB,IAAI,SAAS,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE;gBACtD,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;aAClD;SACJ;QACD,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;YACjD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;SACpD;KACJ;IACD,aAAa,CAAC,IAAI,EAAE,YAAY,EAAE;QAC9B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE;YACvD,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;SACxD;QACD,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE;YACnD,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClB,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK;gBACd,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK;oBACvB,IAAI,CAAC,GAAG,KAAK,KAAK,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;wBAC/C,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBACnB,QAAQ,GAAG,IAAI,CAAC;qBACnB;iBACJ,CAAC,CAAC;aACN,CAAC,CAAC;YACH,IAAI,QAAQ,EAAE;gBACV,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,KAAK;oBACtB,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;iBAClD,CAAC,CAAC;aACN;SACJ;KACJ;IACD,MAAM,CAAC,aAAa,EAAE;QAClB,OAAO,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;KACtD;CACJ,CAAC;AACF,oBAAoB,GAAGF,YAAU,CAAC;IAC9B,oBAAoB,CAAC;QACjB,KAAK,EAAEC,YAAU;QACjB,KAAK,EAAE;YACH,KAAK,EAAE,cAAc;SACxB;KACJ,CAAC;CACL,EAAE,oBAAoB,CAAC,CAAC;AACzB,AACO,MAAM,iBAAiB,GAAG;IAC7B,IAAI,EAAE,iBAAiB;IACvB,OAAO,CAAC,GAAG,EAAE;QACT,GAAG,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;KAC/D;CACJ;;ACtFD,IAAID,YAAU,GAAG,CAACD,SAAI,IAAIA,SAAI,CAAC,UAAU,KAAK,UAAU,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE;IACnF,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;SAC1H,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAClJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;CACjE,CAAC;AACF,AAGO,MAAME,YAAU,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AACvK,AAAO,MAAMC,YAAU,GAAG,CAAC,SAAS,CAAC,CAAC;;;;;;;AAOtC,IAAI,eAAe,GAAG,MAAM,eAAe,SAAS,aAAa,CAAC;IAC9D,WAAW,GAAG;QACV,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,QAAQ,GAAGD,YAAU,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAGC,YAAU,CAAC;QACzB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;;;QAGzC,IAAI,CAAC,cAAc,EAAE,CAAC;KACzB;IACD,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE;QAC1B,IAAI,SAAS,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE;YACrE,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;YAC9D,IAAI,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACrB,IAAI,SAAS,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE;gBACtD,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;aAClD;SACJ;QACD,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;YACjD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;SACpD;KACJ;IACD,aAAa,CAAC,IAAI,EAAE,YAAY,EAAE;QAC9B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE;YACvD,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;SACxD;QACD,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE;YACnD,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClB,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK;gBACd,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK;oBACvB,IAAI,CAAC,GAAG,KAAK,KAAK,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;wBAC/C,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBACnB,QAAQ,GAAG,IAAI,CAAC;qBACnB;iBACJ,CAAC,CAAC;aACN,CAAC,CAAC;YACH,IAAI,QAAQ,EAAE;gBACV,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,KAAK;oBACtB,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;iBAClD,CAAC,CAAC;aACN;SACJ;KACJ;IACD,MAAM,CAAC,aAAa,EAAE;QAClB,OAAO,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;KACtD;IACD,MAAM,GAAG;QACL,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;KACrC;CACJ,CAAC;AACF,eAAe,GAAGF,YAAU,CAAC;IACzB,oBAAoB,CAAC;QACjB,KAAK,EAAEC,YAAU;QACjB,KAAK,EAAE;YACH,KAAK,EAAE,cAAc;SACxB;KACJ,CAAC;CACL,EAAE,eAAe,CAAC,CAAC;AACpB,AACO,MAAM,YAAY,GAAG;IACxB,IAAI,EAAE,YAAY;IAClB,OAAO,CAAC,GAAG,EAAE;QACT,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;KACrD;CACJ;;;;;"}
\ No newline at end of file
diff --git a/src/buttons/dist/es6/ej2-vue-buttons.es5.js b/src/buttons/dist/es6/ej2-vue-buttons.es5.js
new file mode 100644
index 000000000..13811fc07
--- /dev/null
+++ b/src/buttons/dist/es6/ej2-vue-buttons.es5.js
@@ -0,0 +1,371 @@
+import { Button, CheckBox, RadioButton, Switch } from '@syncfusion/ej2-buttons';
+import { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';
+import { isUndefined } from '@syncfusion/ej2-base';
+
+var __extends = (undefined && undefined.__extends) || (function () {
+ var extendStatics = function (d, b) {
+ extendStatics = Object.setPrototypeOf ||
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
+ return extendStatics(d, b);
+ };
+ return function (d, b) {
+ extendStatics(d, b);
+ function __() { this.constructor = d; }
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
+ };
+})();
+var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
+};
+var properties = ['content', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'iconCss', 'iconPosition', 'isPrimary', 'isToggle', 'locale', 'created'];
+var modelProps = [];
+/**
+ * Represents the Essential JS 2 VueJS Button Component
+ * ```html
+ * Button
+ * ```
+ */
+var ButtonComponent = /** @__PURE__ @class */ (function (_super) {
+ __extends(ButtonComponent, _super);
+ function ButtonComponent() {
+ var _this = _super.call(this) || this;
+ _this.propKeys = properties;
+ _this.models = modelProps;
+ _this.hasChildDirective = false;
+ _this.hasInjectedModules = false;
+ _this.tagMapper = {};
+ _this.tagNameMapper = {};
+ _this.ej2Instances = new Button({});
+ _this.bindProperties();
+ return _this;
+ }
+ ButtonComponent.prototype.render = function (createElement) {
+ return createElement('button', this.$slots.default);
+ };
+ ButtonComponent = __decorate([
+ EJComponentDecorator({
+ props: properties
+ })
+ ], ButtonComponent);
+ return ButtonComponent;
+}(ComponentBase));
+var ButtonPlugin = {
+ name: 'ejs-button',
+ install: function (Vue) {
+ Vue.component(ButtonPlugin.name, ButtonComponent);
+ }
+};
+
+var __extends$1 = (undefined && undefined.__extends) || (function () {
+ var extendStatics = function (d, b) {
+ extendStatics = Object.setPrototypeOf ||
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
+ return extendStatics(d, b);
+ };
+ return function (d, b) {
+ extendStatics(d, b);
+ function __() { this.constructor = d; }
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
+ };
+})();
+var __decorate$1 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
+};
+var properties$1 = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'indeterminate', 'label', 'labelPosition', 'locale', 'name', 'value', 'change', 'created'];
+var modelProps$1 = ['checked', 'indeterminate'];
+/**
+ * Represents the Essential JS 2 VueJS CheckBox Component
+ * ```html
+ *
+ * ```
+ */
+var CheckBoxComponent = /** @__PURE__ @class */ (function (_super) {
+ __extends$1(CheckBoxComponent, _super);
+ function CheckBoxComponent() {
+ var _this = _super.call(this) || this;
+ _this.propKeys = properties$1;
+ _this.models = modelProps$1;
+ _this.hasChildDirective = false;
+ _this.hasInjectedModules = false;
+ _this.tagMapper = {};
+ _this.tagNameMapper = {};
+ _this.ej2Instances = new CheckBox({});
+ _this.ej2Instances._trigger = _this.ej2Instances.trigger;
+ _this.ej2Instances.trigger = _this.trigger;
+ //this.ej2Instances._setProperties = this.ej2Instances.setProperties;
+ //this.ej2Instances.setProperties = this.setProperties;
+ _this.bindProperties();
+ return _this;
+ }
+ CheckBoxComponent.prototype.trigger = function (eventName, eventProp) {
+ if (eventName === 'change' && this.models && (this.models.length !== 0)) {
+ var key = this.models.toString().match(/checked|value/) || [];
+ var propKey = key[0];
+ if (eventProp && key && !isUndefined(eventProp[propKey])) {
+ this.$emit('modelchanged', eventProp[propKey]);
+ }
+ }
+ if (this.ej2Instances && this.ej2Instances._trigger) {
+ this.ej2Instances._trigger(eventName, eventProp);
+ }
+ };
+ CheckBoxComponent.prototype.setProperties = function (prop, muteOnChange) {
+ var _this = this;
+ if (this.ej2Instances && this.ej2Instances._setProperties) {
+ this.ej2Instances._setProperties(prop, muteOnChange);
+ }
+ if (prop && this.models && (this.models.length !== 0)) {
+ var keys = Object.keys(prop);
+ var emitKeys_1 = [];
+ var emitFlag_1 = false;
+ keys.map(function (key) {
+ _this.models.map(function (model) {
+ if ((key === model) && !(/datasource/i.test(key))) {
+ emitKeys_1.push(key);
+ emitFlag_1 = true;
+ }
+ });
+ });
+ if (emitFlag_1) {
+ emitKeys_1.map(function (propKey) {
+ _this.$emit('update:' + propKey, prop[propKey]);
+ });
+ }
+ }
+ };
+ CheckBoxComponent.prototype.render = function (createElement) {
+ return createElement('input', this.$slots.default);
+ };
+ CheckBoxComponent = __decorate$1([
+ EJComponentDecorator({
+ props: properties$1,
+ model: {
+ event: 'modelchanged'
+ }
+ })
+ ], CheckBoxComponent);
+ return CheckBoxComponent;
+}(ComponentBase));
+var CheckBoxPlugin = {
+ name: 'ejs-checkbox',
+ install: function (Vue) {
+ Vue.component(CheckBoxPlugin.name, CheckBoxComponent);
+ }
+};
+
+var __extends$2 = (undefined && undefined.__extends) || (function () {
+ var extendStatics = function (d, b) {
+ extendStatics = Object.setPrototypeOf ||
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
+ return extendStatics(d, b);
+ };
+ return function (d, b) {
+ extendStatics(d, b);
+ function __() { this.constructor = d; }
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
+ };
+})();
+var __decorate$2 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
+};
+var properties$2 = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'label', 'labelPosition', 'locale', 'name', 'value', 'change', 'created'];
+var modelProps$2 = ['checked'];
+/**
+ * Represents the Essential JS 2 VueJS RadioButton Component
+ * ```html
+ *
+ * ```
+ */
+var RadioButtonComponent = /** @__PURE__ @class */ (function (_super) {
+ __extends$2(RadioButtonComponent, _super);
+ function RadioButtonComponent() {
+ var _this = _super.call(this) || this;
+ _this.propKeys = properties$2;
+ _this.models = modelProps$2;
+ _this.hasChildDirective = false;
+ _this.hasInjectedModules = false;
+ _this.tagMapper = {};
+ _this.tagNameMapper = {};
+ _this.ej2Instances = new RadioButton({});
+ _this.ej2Instances._trigger = _this.ej2Instances.trigger;
+ _this.ej2Instances.trigger = _this.trigger;
+ //this.ej2Instances._setProperties = this.ej2Instances.setProperties;
+ //this.ej2Instances.setProperties = this.setProperties;
+ _this.bindProperties();
+ return _this;
+ }
+ RadioButtonComponent.prototype.trigger = function (eventName, eventProp) {
+ if (eventName === 'change' && this.models && (this.models.length !== 0)) {
+ var key = this.models.toString().match(/checked|value/) || [];
+ var propKey = key[0];
+ if (eventProp && key && !isUndefined(eventProp[propKey])) {
+ this.$emit('modelchanged', eventProp[propKey]);
+ }
+ }
+ if (this.ej2Instances && this.ej2Instances._trigger) {
+ this.ej2Instances._trigger(eventName, eventProp);
+ }
+ };
+ RadioButtonComponent.prototype.setProperties = function (prop, muteOnChange) {
+ var _this = this;
+ if (this.ej2Instances && this.ej2Instances._setProperties) {
+ this.ej2Instances._setProperties(prop, muteOnChange);
+ }
+ if (prop && this.models && (this.models.length !== 0)) {
+ var keys = Object.keys(prop);
+ var emitKeys_1 = [];
+ var emitFlag_1 = false;
+ keys.map(function (key) {
+ _this.models.map(function (model) {
+ if ((key === model) && !(/datasource/i.test(key))) {
+ emitKeys_1.push(key);
+ emitFlag_1 = true;
+ }
+ });
+ });
+ if (emitFlag_1) {
+ emitKeys_1.map(function (propKey) {
+ _this.$emit('update:' + propKey, prop[propKey]);
+ });
+ }
+ }
+ };
+ RadioButtonComponent.prototype.render = function (createElement) {
+ return createElement('input', this.$slots.default);
+ };
+ RadioButtonComponent = __decorate$2([
+ EJComponentDecorator({
+ props: properties$2,
+ model: {
+ event: 'modelchanged'
+ }
+ })
+ ], RadioButtonComponent);
+ return RadioButtonComponent;
+}(ComponentBase));
+var RadioButtonPlugin = {
+ name: 'ejs-radiobutton',
+ install: function (Vue) {
+ Vue.component(RadioButtonPlugin.name, RadioButtonComponent);
+ }
+};
+
+var __extends$3 = (undefined && undefined.__extends) || (function () {
+ var extendStatics = function (d, b) {
+ extendStatics = Object.setPrototypeOf ||
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
+ return extendStatics(d, b);
+ };
+ return function (d, b) {
+ extendStatics(d, b);
+ function __() { this.constructor = d; }
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
+ };
+})();
+var __decorate$3 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
+};
+var properties$3 = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'locale', 'name', 'offLabel', 'onLabel', 'value', 'change', 'created'];
+var modelProps$3 = ['checked'];
+/**
+ * Represents the Essential JS 2 VueJS Switch Component.
+ * ```html
+ *
+ * ```
+ */
+var SwitchComponent = /** @__PURE__ @class */ (function (_super) {
+ __extends$3(SwitchComponent, _super);
+ function SwitchComponent() {
+ var _this = _super.call(this) || this;
+ _this.propKeys = properties$3;
+ _this.models = modelProps$3;
+ _this.hasChildDirective = false;
+ _this.hasInjectedModules = false;
+ _this.tagMapper = {};
+ _this.tagNameMapper = {};
+ _this.ej2Instances = new Switch({});
+ _this.ej2Instances._trigger = _this.ej2Instances.trigger;
+ _this.ej2Instances.trigger = _this.trigger;
+ //this.ej2Instances._setProperties = this.ej2Instances.setProperties;
+ //this.ej2Instances.setProperties = this.setProperties;
+ _this.bindProperties();
+ return _this;
+ }
+ SwitchComponent.prototype.trigger = function (eventName, eventProp) {
+ if (eventName === 'change' && this.models && (this.models.length !== 0)) {
+ var key = this.models.toString().match(/checked|value/) || [];
+ var propKey = key[0];
+ if (eventProp && key && !isUndefined(eventProp[propKey])) {
+ this.$emit('modelchanged', eventProp[propKey]);
+ }
+ }
+ if (this.ej2Instances && this.ej2Instances._trigger) {
+ this.ej2Instances._trigger(eventName, eventProp);
+ }
+ };
+ SwitchComponent.prototype.setProperties = function (prop, muteOnChange) {
+ var _this = this;
+ if (this.ej2Instances && this.ej2Instances._setProperties) {
+ this.ej2Instances._setProperties(prop, muteOnChange);
+ }
+ if (prop && this.models && (this.models.length !== 0)) {
+ var keys = Object.keys(prop);
+ var emitKeys_1 = [];
+ var emitFlag_1 = false;
+ keys.map(function (key) {
+ _this.models.map(function (model) {
+ if ((key === model) && !(/datasource/i.test(key))) {
+ emitKeys_1.push(key);
+ emitFlag_1 = true;
+ }
+ });
+ });
+ if (emitFlag_1) {
+ emitKeys_1.map(function (propKey) {
+ _this.$emit('update:' + propKey, prop[propKey]);
+ });
+ }
+ }
+ };
+ SwitchComponent.prototype.render = function (createElement) {
+ return createElement('input', this.$slots.default);
+ };
+ SwitchComponent.prototype.toggle = function () {
+ return this.ej2Instances.toggle();
+ };
+ SwitchComponent = __decorate$3([
+ EJComponentDecorator({
+ props: properties$3,
+ model: {
+ event: 'modelchanged'
+ }
+ })
+ ], SwitchComponent);
+ return SwitchComponent;
+}(ComponentBase));
+var SwitchPlugin = {
+ name: 'ejs-switch',
+ install: function (Vue) {
+ Vue.component(SwitchPlugin.name, SwitchComponent);
+ }
+};
+
+export { ButtonComponent, ButtonPlugin, CheckBoxComponent, CheckBoxPlugin, RadioButtonComponent, RadioButtonPlugin, SwitchComponent, SwitchPlugin };
+export * from '@syncfusion/ej2-buttons';
+//# sourceMappingURL=ej2-vue-buttons.es5.js.map
diff --git a/src/buttons/dist/es6/ej2-vue-buttons.es5.js.map b/src/buttons/dist/es6/ej2-vue-buttons.es5.js.map
new file mode 100644
index 000000000..d1db6fd07
--- /dev/null
+++ b/src/buttons/dist/es6/ej2-vue-buttons.es5.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"ej2-vue-buttons.es5.js","sources":["../../src/button/button.component.js","../../src/check-box/checkbox.component.js","../../src/radio-button/radiobutton.component.js","../../src/switch/switch.component.js"],"sourcesContent":["var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n }\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';\nimport { Button } from '@syncfusion/ej2-buttons';\nexport var properties = ['content', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'iconCss', 'iconPosition', 'isPrimary', 'isToggle', 'locale', 'created'];\nexport var modelProps = [];\n/**\n * Represents the Essential JS 2 VueJS Button Component\n * ```html\n * Button\n * ```\n */\nvar ButtonComponent = /** @class */ (function (_super) {\n __extends(ButtonComponent, _super);\n function ButtonComponent() {\n var _this = _super.call(this) || this;\n _this.propKeys = properties;\n _this.models = modelProps;\n _this.hasChildDirective = false;\n _this.hasInjectedModules = false;\n _this.tagMapper = {};\n _this.tagNameMapper = {};\n _this.ej2Instances = new Button({});\n _this.bindProperties();\n return _this;\n }\n ButtonComponent.prototype.render = function (createElement) {\n return createElement('button', this.$slots.default);\n };\n ButtonComponent = __decorate([\n EJComponentDecorator({\n props: properties\n })\n ], ButtonComponent);\n return ButtonComponent;\n}(ComponentBase));\nexport { ButtonComponent };\nexport var ButtonPlugin = {\n name: 'ejs-button',\n install: function (Vue) {\n Vue.component(ButtonPlugin.name, ButtonComponent);\n }\n};\n","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n }\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { isUndefined } from '@syncfusion/ej2-base';\nimport { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';\nimport { CheckBox } from '@syncfusion/ej2-buttons';\nexport var properties = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'indeterminate', 'label', 'labelPosition', 'locale', 'name', 'value', 'change', 'created'];\nexport var modelProps = ['checked', 'indeterminate'];\n/**\n * Represents the Essential JS 2 VueJS CheckBox Component\n * ```html\n * \n * ```\n */\nvar CheckBoxComponent = /** @class */ (function (_super) {\n __extends(CheckBoxComponent, _super);\n function CheckBoxComponent() {\n var _this = _super.call(this) || this;\n _this.propKeys = properties;\n _this.models = modelProps;\n _this.hasChildDirective = false;\n _this.hasInjectedModules = false;\n _this.tagMapper = {};\n _this.tagNameMapper = {};\n _this.ej2Instances = new CheckBox({});\n _this.ej2Instances._trigger = _this.ej2Instances.trigger;\n _this.ej2Instances.trigger = _this.trigger;\n //this.ej2Instances._setProperties = this.ej2Instances.setProperties;\n //this.ej2Instances.setProperties = this.setProperties;\n _this.bindProperties();\n return _this;\n }\n CheckBoxComponent.prototype.trigger = function (eventName, eventProp) {\n if (eventName === 'change' && this.models && (this.models.length !== 0)) {\n var key = this.models.toString().match(/checked|value/) || [];\n var propKey = key[0];\n if (eventProp && key && !isUndefined(eventProp[propKey])) {\n this.$emit('modelchanged', eventProp[propKey]);\n }\n }\n if (this.ej2Instances && this.ej2Instances._trigger) {\n this.ej2Instances._trigger(eventName, eventProp);\n }\n };\n CheckBoxComponent.prototype.setProperties = function (prop, muteOnChange) {\n var _this = this;\n if (this.ej2Instances && this.ej2Instances._setProperties) {\n this.ej2Instances._setProperties(prop, muteOnChange);\n }\n if (prop && this.models && (this.models.length !== 0)) {\n var keys = Object.keys(prop);\n var emitKeys_1 = [];\n var emitFlag_1 = false;\n keys.map(function (key) {\n _this.models.map(function (model) {\n if ((key === model) && !(/datasource/i.test(key))) {\n emitKeys_1.push(key);\n emitFlag_1 = true;\n }\n });\n });\n if (emitFlag_1) {\n emitKeys_1.map(function (propKey) {\n _this.$emit('update:' + propKey, prop[propKey]);\n });\n }\n }\n };\n CheckBoxComponent.prototype.render = function (createElement) {\n return createElement('input', this.$slots.default);\n };\n CheckBoxComponent = __decorate([\n EJComponentDecorator({\n props: properties,\n model: {\n event: 'modelchanged'\n }\n })\n ], CheckBoxComponent);\n return CheckBoxComponent;\n}(ComponentBase));\nexport { CheckBoxComponent };\nexport var CheckBoxPlugin = {\n name: 'ejs-checkbox',\n install: function (Vue) {\n Vue.component(CheckBoxPlugin.name, CheckBoxComponent);\n }\n};\n","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n }\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { isUndefined } from '@syncfusion/ej2-base';\nimport { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';\nimport { RadioButton } from '@syncfusion/ej2-buttons';\nexport var properties = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'label', 'labelPosition', 'locale', 'name', 'value', 'change', 'created'];\nexport var modelProps = ['checked'];\n/**\n * Represents the Essential JS 2 VueJS RadioButton Component\n * ```html\n * \n * ```\n */\nvar RadioButtonComponent = /** @class */ (function (_super) {\n __extends(RadioButtonComponent, _super);\n function RadioButtonComponent() {\n var _this = _super.call(this) || this;\n _this.propKeys = properties;\n _this.models = modelProps;\n _this.hasChildDirective = false;\n _this.hasInjectedModules = false;\n _this.tagMapper = {};\n _this.tagNameMapper = {};\n _this.ej2Instances = new RadioButton({});\n _this.ej2Instances._trigger = _this.ej2Instances.trigger;\n _this.ej2Instances.trigger = _this.trigger;\n //this.ej2Instances._setProperties = this.ej2Instances.setProperties;\n //this.ej2Instances.setProperties = this.setProperties;\n _this.bindProperties();\n return _this;\n }\n RadioButtonComponent.prototype.trigger = function (eventName, eventProp) {\n if (eventName === 'change' && this.models && (this.models.length !== 0)) {\n var key = this.models.toString().match(/checked|value/) || [];\n var propKey = key[0];\n if (eventProp && key && !isUndefined(eventProp[propKey])) {\n this.$emit('modelchanged', eventProp[propKey]);\n }\n }\n if (this.ej2Instances && this.ej2Instances._trigger) {\n this.ej2Instances._trigger(eventName, eventProp);\n }\n };\n RadioButtonComponent.prototype.setProperties = function (prop, muteOnChange) {\n var _this = this;\n if (this.ej2Instances && this.ej2Instances._setProperties) {\n this.ej2Instances._setProperties(prop, muteOnChange);\n }\n if (prop && this.models && (this.models.length !== 0)) {\n var keys = Object.keys(prop);\n var emitKeys_1 = [];\n var emitFlag_1 = false;\n keys.map(function (key) {\n _this.models.map(function (model) {\n if ((key === model) && !(/datasource/i.test(key))) {\n emitKeys_1.push(key);\n emitFlag_1 = true;\n }\n });\n });\n if (emitFlag_1) {\n emitKeys_1.map(function (propKey) {\n _this.$emit('update:' + propKey, prop[propKey]);\n });\n }\n }\n };\n RadioButtonComponent.prototype.render = function (createElement) {\n return createElement('input', this.$slots.default);\n };\n RadioButtonComponent = __decorate([\n EJComponentDecorator({\n props: properties,\n model: {\n event: 'modelchanged'\n }\n })\n ], RadioButtonComponent);\n return RadioButtonComponent;\n}(ComponentBase));\nexport { RadioButtonComponent };\nexport var RadioButtonPlugin = {\n name: 'ejs-radiobutton',\n install: function (Vue) {\n Vue.component(RadioButtonPlugin.name, RadioButtonComponent);\n }\n};\n","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n }\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { isUndefined } from '@syncfusion/ej2-base';\nimport { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';\nimport { Switch } from '@syncfusion/ej2-buttons';\nexport var properties = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'locale', 'name', 'offLabel', 'onLabel', 'value', 'change', 'created'];\nexport var modelProps = ['checked'];\n/**\n * Represents the Essential JS 2 VueJS Switch Component.\n * ```html\n * \n * ```\n */\nvar SwitchComponent = /** @class */ (function (_super) {\n __extends(SwitchComponent, _super);\n function SwitchComponent() {\n var _this = _super.call(this) || this;\n _this.propKeys = properties;\n _this.models = modelProps;\n _this.hasChildDirective = false;\n _this.hasInjectedModules = false;\n _this.tagMapper = {};\n _this.tagNameMapper = {};\n _this.ej2Instances = new Switch({});\n _this.ej2Instances._trigger = _this.ej2Instances.trigger;\n _this.ej2Instances.trigger = _this.trigger;\n //this.ej2Instances._setProperties = this.ej2Instances.setProperties;\n //this.ej2Instances.setProperties = this.setProperties;\n _this.bindProperties();\n return _this;\n }\n SwitchComponent.prototype.trigger = function (eventName, eventProp) {\n if (eventName === 'change' && this.models && (this.models.length !== 0)) {\n var key = this.models.toString().match(/checked|value/) || [];\n var propKey = key[0];\n if (eventProp && key && !isUndefined(eventProp[propKey])) {\n this.$emit('modelchanged', eventProp[propKey]);\n }\n }\n if (this.ej2Instances && this.ej2Instances._trigger) {\n this.ej2Instances._trigger(eventName, eventProp);\n }\n };\n SwitchComponent.prototype.setProperties = function (prop, muteOnChange) {\n var _this = this;\n if (this.ej2Instances && this.ej2Instances._setProperties) {\n this.ej2Instances._setProperties(prop, muteOnChange);\n }\n if (prop && this.models && (this.models.length !== 0)) {\n var keys = Object.keys(prop);\n var emitKeys_1 = [];\n var emitFlag_1 = false;\n keys.map(function (key) {\n _this.models.map(function (model) {\n if ((key === model) && !(/datasource/i.test(key))) {\n emitKeys_1.push(key);\n emitFlag_1 = true;\n }\n });\n });\n if (emitFlag_1) {\n emitKeys_1.map(function (propKey) {\n _this.$emit('update:' + propKey, prop[propKey]);\n });\n }\n }\n };\n SwitchComponent.prototype.render = function (createElement) {\n return createElement('input', this.$slots.default);\n };\n SwitchComponent.prototype.toggle = function () {\n return this.ej2Instances.toggle();\n };\n SwitchComponent = __decorate([\n EJComponentDecorator({\n props: properties,\n model: {\n event: 'modelchanged'\n }\n })\n ], SwitchComponent);\n return SwitchComponent;\n}(ComponentBase));\nexport { SwitchComponent };\nexport var SwitchPlugin = {\n name: 'ejs-switch',\n install: function (Vue) {\n Vue.component(SwitchPlugin.name, SwitchComponent);\n }\n};\n"],"names":["this","__extends","__decorate","properties","modelProps"],"mappings":"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"}
\ No newline at end of file
diff --git a/src/buttons/gulpfile.js b/src/buttons/gulpfile.js
new file mode 100644
index 000000000..0876f90c6
--- /dev/null
+++ b/src/buttons/gulpfile.js
@@ -0,0 +1,36 @@
+'use strict';
+
+var gulp = require('gulp');
+
+/**
+ * Build ts and scss files
+ */
+gulp.task('build', ['scripts', 'styles']);
+
+/**
+ * Compile ts files
+ */
+gulp.task('scripts', function(done) {
+ var ts = require('gulp-typescript');
+ var tsProject = ts.createProject('tsconfig.json', { typescript: require('typescript') });
+
+ var tsResult = gulp.src(['./**/*.ts','./**/*.tsx', '!./node_modules/**/*.ts','!./node_modules/**/*.tsx'], { base: '.' })
+ .pipe(tsProject());
+ tsResult.js.pipe(gulp.dest('./'))
+ .on('end', function() {
+ done();
+ });
+});
+
+/**
+ * Compile styles
+ */
+gulp.task('styles', function() {
+ var sass = require('gulp-sass');
+ return gulp.src(['./**/*.scss', '!./node_modules/**/*.scss'], { base: './' })
+ .pipe(sass({
+ outputStyle: 'expanded',
+ includePaths: './node_modules/@syncfusion/'
+ }))
+ .pipe(gulp.dest('.'));
+});
\ No newline at end of file
diff --git a/src/buttons/license b/src/buttons/license
new file mode 100644
index 000000000..37fd0198e
--- /dev/null
+++ b/src/buttons/license
@@ -0,0 +1,6 @@
+Essential JS 2 library is available under the Syncfusion Essential Studio program, and can be licensed either under the Syncfusion Community License Program or the Syncfusion commercial license.
+To be qualified for the Syncfusion Community License Program you must have a gross revenue of less than one (1) million U.S. dollars ($1,000,000.00 USD) per year and have less than five (5) developers in your organization, and agree to be bound by Syncfusion’s terms and conditions.
+Customers who do not qualify for the community license can contact sales@syncfusion.com for commercial licensing options.
+Under no circumstances can you use this product without (1) either a Community License or a commercial license and (2) without agreeing and abiding by Syncfusion’s license containing all terms and conditions.
+The Syncfusion license that contains the terms and conditions can be found at
+https://www.syncfusion.com/content/downloads/syncfusion_license.pdf
diff --git a/src/buttons/package.json b/src/buttons/package.json
new file mode 100644
index 000000000..652635957
--- /dev/null
+++ b/src/buttons/package.json
@@ -0,0 +1,70 @@
+{
+ "name": "@syncfusion/ej2-vue-buttons",
+ "version": "16.3.25",
+ "description": "A package of feature-rich Essential JS 2 components such as Button, CheckBox, RadioButton and Switch. for Vue",
+ "author": "Syncfusion Inc.",
+ "license": "SEE LICENSE IN license",
+ "keywords": [
+ "ej2",
+ "syncfusion",
+ "ej2-buttons",
+ "button",
+ "ej2 button",
+ "checkbox",
+ "ej2 checkbox",
+ "checkboxes",
+ "radio button",
+ "radiobutton",
+ "radiobuttons",
+ "ej2 radiobutton",
+ "switch",
+ "ej2 switch",
+ "primary button",
+ "flat button",
+ "round button",
+ "icon button",
+ "togglebutton",
+ "toggle button",
+ "form control",
+ "form controls",
+ "input",
+ "vue",
+ "vuejs",
+ "ej2-vue-buttons",
+ "vue-button",
+ "vue-checkbox",
+ "vue-radiobutton",
+ "vue-switch"
+ ],
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/syncfusion/ej2-vue-buttons.git"
+ },
+ "main": "./dist/ej2-vue-buttons.umd.min.js",
+ "module": "./index.js",
+ "es2015": "dist/es6/ej2-vue-buttons.es2015.js",
+ "readme": "ReadMe.md",
+ "dependencies": {
+ "@syncfusion/ej2-base": "*",
+ "@syncfusion/ej2-vue-base": "*",
+ "@syncfusion/ej2-buttons": "*"
+ },
+ "devDependencies": {
+ "awesome-typescript-loader": "^3.1.3",
+ "source-map-loader": "^0.2.1",
+ "@types/chai": "^3.4.28",
+ "@types/es6-promise": "0.0.28",
+ "@types/jasmine": "^2.2.29",
+ "@types/jasmine-ajax": "^3.1.27",
+ "@types/requirejs": "^2.1.26",
+ "es6-promise": "^3.2.1",
+ "gulp": "^3.9.1",
+ "gulp-sass": "^3.1.0",
+ "gulp-typescript": "^3.1.6",
+ "requirejs": "^2.3.3",
+ "typescript": "2.3.4"
+ },
+ "scripts": {
+ "build": "gulp build"
+ }
+}
\ No newline at end of file
diff --git a/src/buttons/src/button/button.component.ts b/src/buttons/src/button/button.component.ts
new file mode 100644
index 000000000..bb5fcf4e9
--- /dev/null
+++ b/src/buttons/src/button/button.component.ts
@@ -0,0 +1,46 @@
+import Vue from 'vue';
+import { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';
+import { Button } from '@syncfusion/ej2-buttons';
+
+
+export const properties: string[] = ['content', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'iconCss', 'iconPosition', 'isPrimary', 'isToggle', 'locale', 'created'];
+export const modelProps: string[] = [];
+
+/**
+ * Represents the Essential JS 2 VueJS Button Component
+ * ```html
+ * Button
+ * ```
+ */
+@EJComponentDecorator({
+ props: properties
+})
+export class ButtonComponent extends ComponentBase {
+
+ public ej2Instances: any;
+ public propKeys: string[] = properties;
+ public models: string[] = modelProps;
+ public hasChildDirective: boolean = false;
+ protected hasInjectedModules: boolean = false;
+ public tagMapper: { [key: string]: Object } = {};
+ public tagNameMapper: Object = {};
+
+ constructor() {
+ super();
+ this.ej2Instances = new Button({});
+ this.bindProperties();
+ }
+
+ public render(createElement: any) {
+ return createElement('button', (this as any).$slots.default);
+ }
+
+}
+
+export const ButtonPlugin = {
+ name: 'ejs-button',
+ install(Vue: any) {
+ Vue.component(ButtonPlugin.name, ButtonComponent);
+
+ }
+}
diff --git a/src/buttons/src/button/index.ts b/src/buttons/src/button/index.ts
new file mode 100644
index 000000000..d62be90c0
--- /dev/null
+++ b/src/buttons/src/button/index.ts
@@ -0,0 +1 @@
+export { ButtonComponent, ButtonPlugin } from './button.component';
\ No newline at end of file
diff --git a/src/buttons/src/check-box/checkbox.component.ts b/src/buttons/src/check-box/checkbox.component.ts
new file mode 100644
index 000000000..d48ad9bea
--- /dev/null
+++ b/src/buttons/src/check-box/checkbox.component.ts
@@ -0,0 +1,90 @@
+import Vue from 'vue';
+import { isUndefined } from '@syncfusion/ej2-base';
+import { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';
+import { CheckBox } from '@syncfusion/ej2-buttons';
+
+
+export const properties: string[] = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'indeterminate', 'label', 'labelPosition', 'locale', 'name', 'value', 'change', 'created'];
+export const modelProps: string[] = ['checked', 'indeterminate'];
+
+/**
+ * Represents the Essential JS 2 VueJS CheckBox Component
+ * ```html
+ *
+ * ```
+ */
+@EJComponentDecorator({
+ props: properties,
+ model: {
+ event: 'modelchanged'
+ }
+})
+export class CheckBoxComponent extends ComponentBase {
+
+ public ej2Instances: any;
+ public propKeys: string[] = properties;
+ public models: string[] = modelProps;
+ public hasChildDirective: boolean = false;
+ protected hasInjectedModules: boolean = false;
+ public tagMapper: { [key: string]: Object } = {};
+ public tagNameMapper: Object = {};
+
+ constructor() {
+ super();
+ this.ej2Instances = new CheckBox({}); this.ej2Instances._trigger = this.ej2Instances.trigger;
+ this.ej2Instances.trigger = this.trigger;
+ //this.ej2Instances._setProperties = this.ej2Instances.setProperties;
+ //this.ej2Instances.setProperties = this.setProperties;
+
+ this.bindProperties();
+ }
+ public trigger(eventName: string, eventProp: {[key:string]:Object}): void {
+ if (eventName === 'change' && this.models && (this.models.length !== 0)) {
+ let key: string[] = this.models.toString().match(/checked|value/) || [];
+ let propKey: string = key[0];
+ if (eventProp && key && !isUndefined(eventProp[propKey])) {
+ (this as any).$emit('modelchanged', eventProp[propKey]);
+ }
+ }
+ if (this.ej2Instances && this.ej2Instances._trigger) {
+ this.ej2Instances._trigger(eventName, eventProp);
+ }
+ }
+
+ public setProperties(prop: any, muteOnChange: boolean): void {
+ if (this.ej2Instances && this.ej2Instances._setProperties) {
+ this.ej2Instances._setProperties(prop, muteOnChange);
+ }
+ if (prop && this.models && (this.models.length !== 0)) {
+ let keys: string[] = Object.keys(prop);
+ let emitKeys: string[] = [];
+ let emitFlag: boolean = false;
+ keys.map((key: string): void => {
+ this.models.map((model: string): void => {
+ if ((key === model) && !(/datasource/i.test(key))) {
+ emitKeys.push(key);
+ emitFlag = true;
+ }
+ });
+ });
+ if (emitFlag) {
+ emitKeys.map((propKey: string): void => {
+ this.$emit('update:' + propKey, prop[propKey]);
+ })
+ }
+ }
+ }
+
+ public render(createElement: any) {
+ return createElement('input', (this as any).$slots.default);
+ }
+
+}
+
+export const CheckBoxPlugin = {
+ name: 'ejs-checkbox',
+ install(Vue: any) {
+ Vue.component(CheckBoxPlugin.name, CheckBoxComponent);
+
+ }
+}
diff --git a/src/buttons/src/check-box/index.ts b/src/buttons/src/check-box/index.ts
new file mode 100644
index 000000000..ade443c65
--- /dev/null
+++ b/src/buttons/src/check-box/index.ts
@@ -0,0 +1 @@
+export { CheckBoxComponent, CheckBoxPlugin } from './checkbox.component';
\ No newline at end of file
diff --git a/src/buttons/src/global.ts b/src/buttons/src/global.ts
new file mode 100644
index 000000000..ea465c2a3
--- /dev/null
+++ b/src/buttons/src/global.ts
@@ -0,0 +1 @@
+export * from './index';
diff --git a/src/buttons/src/index.ts b/src/buttons/src/index.ts
new file mode 100644
index 000000000..89aa8eadb
--- /dev/null
+++ b/src/buttons/src/index.ts
@@ -0,0 +1,5 @@
+export * from '@syncfusion/ej2-buttons';
+export { ButtonComponent, ButtonPlugin } from './button/button.component';
+export { CheckBoxComponent, CheckBoxPlugin } from './check-box/checkbox.component';
+export { RadioButtonComponent, RadioButtonPlugin } from './radio-button/radiobutton.component';
+export { SwitchComponent, SwitchPlugin } from './switch/switch.component';
\ No newline at end of file
diff --git a/src/buttons/src/radio-button/index.ts b/src/buttons/src/radio-button/index.ts
new file mode 100644
index 000000000..d93eab411
--- /dev/null
+++ b/src/buttons/src/radio-button/index.ts
@@ -0,0 +1 @@
+export { RadioButtonComponent, RadioButtonPlugin } from './radiobutton.component';
\ No newline at end of file
diff --git a/src/buttons/src/radio-button/radiobutton.component.ts b/src/buttons/src/radio-button/radiobutton.component.ts
new file mode 100644
index 000000000..c5bfc80b1
--- /dev/null
+++ b/src/buttons/src/radio-button/radiobutton.component.ts
@@ -0,0 +1,90 @@
+import Vue from 'vue';
+import { isUndefined } from '@syncfusion/ej2-base';
+import { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';
+import { RadioButton } from '@syncfusion/ej2-buttons';
+
+
+export const properties: string[] = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'label', 'labelPosition', 'locale', 'name', 'value', 'change', 'created'];
+export const modelProps: string[] = ['checked'];
+
+/**
+ * Represents the Essential JS 2 VueJS RadioButton Component
+ * ```html
+ *
+ * ```
+ */
+@EJComponentDecorator({
+ props: properties,
+ model: {
+ event: 'modelchanged'
+ }
+})
+export class RadioButtonComponent extends ComponentBase {
+
+ public ej2Instances: any;
+ public propKeys: string[] = properties;
+ public models: string[] = modelProps;
+ public hasChildDirective: boolean = false;
+ protected hasInjectedModules: boolean = false;
+ public tagMapper: { [key: string]: Object } = {};
+ public tagNameMapper: Object = {};
+
+ constructor() {
+ super();
+ this.ej2Instances = new RadioButton({}); this.ej2Instances._trigger = this.ej2Instances.trigger;
+ this.ej2Instances.trigger = this.trigger;
+ //this.ej2Instances._setProperties = this.ej2Instances.setProperties;
+ //this.ej2Instances.setProperties = this.setProperties;
+
+ this.bindProperties();
+ }
+ public trigger(eventName: string, eventProp: {[key:string]:Object}): void {
+ if (eventName === 'change' && this.models && (this.models.length !== 0)) {
+ let key: string[] = this.models.toString().match(/checked|value/) || [];
+ let propKey: string = key[0];
+ if (eventProp && key && !isUndefined(eventProp[propKey])) {
+ (this as any).$emit('modelchanged', eventProp[propKey]);
+ }
+ }
+ if (this.ej2Instances && this.ej2Instances._trigger) {
+ this.ej2Instances._trigger(eventName, eventProp);
+ }
+ }
+
+ public setProperties(prop: any, muteOnChange: boolean): void {
+ if (this.ej2Instances && this.ej2Instances._setProperties) {
+ this.ej2Instances._setProperties(prop, muteOnChange);
+ }
+ if (prop && this.models && (this.models.length !== 0)) {
+ let keys: string[] = Object.keys(prop);
+ let emitKeys: string[] = [];
+ let emitFlag: boolean = false;
+ keys.map((key: string): void => {
+ this.models.map((model: string): void => {
+ if ((key === model) && !(/datasource/i.test(key))) {
+ emitKeys.push(key);
+ emitFlag = true;
+ }
+ });
+ });
+ if (emitFlag) {
+ emitKeys.map((propKey: string): void => {
+ this.$emit('update:' + propKey, prop[propKey]);
+ })
+ }
+ }
+ }
+
+ public render(createElement: any) {
+ return createElement('input', (this as any).$slots.default);
+ }
+
+}
+
+export const RadioButtonPlugin = {
+ name: 'ejs-radiobutton',
+ install(Vue: any) {
+ Vue.component(RadioButtonPlugin.name, RadioButtonComponent);
+
+ }
+}
diff --git a/src/buttons/src/switch/index.ts b/src/buttons/src/switch/index.ts
new file mode 100644
index 000000000..eda369167
--- /dev/null
+++ b/src/buttons/src/switch/index.ts
@@ -0,0 +1 @@
+export { SwitchComponent, SwitchPlugin } from './switch.component';
\ No newline at end of file
diff --git a/src/buttons/src/switch/switch.component.ts b/src/buttons/src/switch/switch.component.ts
new file mode 100644
index 000000000..0440fae22
--- /dev/null
+++ b/src/buttons/src/switch/switch.component.ts
@@ -0,0 +1,93 @@
+import Vue from 'vue';
+import { isUndefined } from '@syncfusion/ej2-base';
+import { ComponentBase, EJComponentDecorator } from '@syncfusion/ej2-vue-base';
+import { Switch } from '@syncfusion/ej2-buttons';
+
+
+export const properties: string[] = ['checked', 'cssClass', 'disabled', 'enablePersistence', 'enableRtl', 'locale', 'name', 'offLabel', 'onLabel', 'value', 'change', 'created'];
+export const modelProps: string[] = ['checked'];
+
+/**
+ * Represents the Essential JS 2 VueJS Switch Component.
+ * ```html
+ *
+ * ```
+ */
+@EJComponentDecorator({
+ props: properties,
+ model: {
+ event: 'modelchanged'
+ }
+})
+export class SwitchComponent extends ComponentBase {
+
+ public ej2Instances: any;
+ public propKeys: string[] = properties;
+ public models: string[] = modelProps;
+ public hasChildDirective: boolean = false;
+ protected hasInjectedModules: boolean = false;
+ public tagMapper: { [key: string]: Object } = {};
+ public tagNameMapper: Object = {};
+
+ constructor() {
+ super();
+ this.ej2Instances = new Switch({}); this.ej2Instances._trigger = this.ej2Instances.trigger;
+ this.ej2Instances.trigger = this.trigger;
+ //this.ej2Instances._setProperties = this.ej2Instances.setProperties;
+ //this.ej2Instances.setProperties = this.setProperties;
+
+ this.bindProperties();
+ }
+ public trigger(eventName: string, eventProp: {[key:string]:Object}): void {
+ if (eventName === 'change' && this.models && (this.models.length !== 0)) {
+ let key: string[] = this.models.toString().match(/checked|value/) || [];
+ let propKey: string = key[0];
+ if (eventProp && key && !isUndefined(eventProp[propKey])) {
+ (this as any).$emit('modelchanged', eventProp[propKey]);
+ }
+ }
+ if (this.ej2Instances && this.ej2Instances._trigger) {
+ this.ej2Instances._trigger(eventName, eventProp);
+ }
+ }
+
+ public setProperties(prop: any, muteOnChange: boolean): void {
+ if (this.ej2Instances && this.ej2Instances._setProperties) {
+ this.ej2Instances._setProperties(prop, muteOnChange);
+ }
+ if (prop && this.models && (this.models.length !== 0)) {
+ let keys: string[] = Object.keys(prop);
+ let emitKeys: string[] = [];
+ let emitFlag: boolean = false;
+ keys.map((key: string): void => {
+ this.models.map((model: string): void => {
+ if ((key === model) && !(/datasource/i.test(key))) {
+ emitKeys.push(key);
+ emitFlag = true;
+ }
+ });
+ });
+ if (emitFlag) {
+ emitKeys.map((propKey: string): void => {
+ this.$emit('update:' + propKey, prop[propKey]);
+ })
+ }
+ }
+ }
+
+ public render(createElement: any) {
+ return createElement('input', (this as any).$slots.default);
+ }
+
+ public toggle(): void {
+ return this.ej2Instances.toggle();
+ }
+}
+
+export const SwitchPlugin = {
+ name: 'ejs-switch',
+ install(Vue: any) {
+ Vue.component(SwitchPlugin.name, SwitchComponent);
+
+ }
+}
diff --git a/src/buttons/styles/bootstrap.scss b/src/buttons/styles/bootstrap.scss
new file mode 100644
index 000000000..2ccada7ad
--- /dev/null
+++ b/src/buttons/styles/bootstrap.scss
@@ -0,0 +1,4 @@
+@import 'button/bootstrap.scss';
+@import 'check-box/bootstrap.scss';
+@import 'radio-button/bootstrap.scss';
+@import 'switch/bootstrap.scss';
diff --git a/src/buttons/styles/button/bootstrap.scss b/src/buttons/styles/button/bootstrap.scss
new file mode 100644
index 000000000..cf093bdd3
--- /dev/null
+++ b/src/buttons/styles/button/bootstrap.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/button/bootstrap.scss';
diff --git a/src/buttons/styles/button/fabric.scss b/src/buttons/styles/button/fabric.scss
new file mode 100644
index 000000000..0a02669fe
--- /dev/null
+++ b/src/buttons/styles/button/fabric.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/button/fabric.scss';
diff --git a/src/buttons/styles/button/highcontrast.scss b/src/buttons/styles/button/highcontrast.scss
new file mode 100644
index 000000000..86569479e
--- /dev/null
+++ b/src/buttons/styles/button/highcontrast.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/button/highcontrast.scss';
diff --git a/src/buttons/styles/button/material.scss b/src/buttons/styles/button/material.scss
new file mode 100644
index 000000000..a316cc466
--- /dev/null
+++ b/src/buttons/styles/button/material.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/button/material.scss';
diff --git a/src/buttons/styles/check-box/bootstrap.scss b/src/buttons/styles/check-box/bootstrap.scss
new file mode 100644
index 000000000..a09dc2e89
--- /dev/null
+++ b/src/buttons/styles/check-box/bootstrap.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/check-box/bootstrap.scss';
diff --git a/src/buttons/styles/check-box/fabric.scss b/src/buttons/styles/check-box/fabric.scss
new file mode 100644
index 000000000..738c09598
--- /dev/null
+++ b/src/buttons/styles/check-box/fabric.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/check-box/fabric.scss';
diff --git a/src/buttons/styles/check-box/highcontrast.scss b/src/buttons/styles/check-box/highcontrast.scss
new file mode 100644
index 000000000..9d3daab57
--- /dev/null
+++ b/src/buttons/styles/check-box/highcontrast.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/check-box/highcontrast.scss';
diff --git a/src/buttons/styles/check-box/material.scss b/src/buttons/styles/check-box/material.scss
new file mode 100644
index 000000000..fcf9d3245
--- /dev/null
+++ b/src/buttons/styles/check-box/material.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/check-box/material.scss';
diff --git a/src/buttons/styles/fabric.scss b/src/buttons/styles/fabric.scss
new file mode 100644
index 000000000..78380af85
--- /dev/null
+++ b/src/buttons/styles/fabric.scss
@@ -0,0 +1,4 @@
+@import 'button/fabric.scss';
+@import 'check-box/fabric.scss';
+@import 'radio-button/fabric.scss';
+@import 'switch/fabric.scss';
diff --git a/src/buttons/styles/highcontrast.scss b/src/buttons/styles/highcontrast.scss
new file mode 100644
index 000000000..8566d6f2b
--- /dev/null
+++ b/src/buttons/styles/highcontrast.scss
@@ -0,0 +1,4 @@
+@import 'button/highcontrast.scss';
+@import 'check-box/highcontrast.scss';
+@import 'radio-button/highcontrast.scss';
+@import 'switch/highcontrast.scss';
diff --git a/src/buttons/styles/material.scss b/src/buttons/styles/material.scss
new file mode 100644
index 000000000..f6adc7bca
--- /dev/null
+++ b/src/buttons/styles/material.scss
@@ -0,0 +1,4 @@
+@import 'button/material.scss';
+@import 'check-box/material.scss';
+@import 'radio-button/material.scss';
+@import 'switch/material.scss';
diff --git a/src/buttons/styles/radio-button/bootstrap.scss b/src/buttons/styles/radio-button/bootstrap.scss
new file mode 100644
index 000000000..435d4cc2d
--- /dev/null
+++ b/src/buttons/styles/radio-button/bootstrap.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/radio-button/bootstrap.scss';
diff --git a/src/buttons/styles/radio-button/fabric.scss b/src/buttons/styles/radio-button/fabric.scss
new file mode 100644
index 000000000..57c835144
--- /dev/null
+++ b/src/buttons/styles/radio-button/fabric.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/radio-button/fabric.scss';
diff --git a/src/buttons/styles/radio-button/highcontrast.scss b/src/buttons/styles/radio-button/highcontrast.scss
new file mode 100644
index 000000000..9470619ee
--- /dev/null
+++ b/src/buttons/styles/radio-button/highcontrast.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/radio-button/highcontrast.scss';
diff --git a/src/buttons/styles/radio-button/material.scss b/src/buttons/styles/radio-button/material.scss
new file mode 100644
index 000000000..eaa8147c9
--- /dev/null
+++ b/src/buttons/styles/radio-button/material.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/radio-button/material.scss';
diff --git a/src/buttons/styles/switch/bootstrap.scss b/src/buttons/styles/switch/bootstrap.scss
new file mode 100644
index 000000000..d39279686
--- /dev/null
+++ b/src/buttons/styles/switch/bootstrap.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/switch/bootstrap.scss';
diff --git a/src/buttons/styles/switch/fabric.scss b/src/buttons/styles/switch/fabric.scss
new file mode 100644
index 000000000..6a5fc3606
--- /dev/null
+++ b/src/buttons/styles/switch/fabric.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/switch/fabric.scss';
diff --git a/src/buttons/styles/switch/highcontrast.scss b/src/buttons/styles/switch/highcontrast.scss
new file mode 100644
index 000000000..8db9db171
--- /dev/null
+++ b/src/buttons/styles/switch/highcontrast.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/switch/highcontrast.scss';
diff --git a/src/buttons/styles/switch/material.scss b/src/buttons/styles/switch/material.scss
new file mode 100644
index 000000000..629ac79a2
--- /dev/null
+++ b/src/buttons/styles/switch/material.scss
@@ -0,0 +1 @@
+@import 'ej2-buttons/styles/switch/material.scss';
diff --git a/src/buttons/tsconfig.json b/src/buttons/tsconfig.json
new file mode 100644
index 000000000..f81b4a027
--- /dev/null
+++ b/src/buttons/tsconfig.json
@@ -0,0 +1,31 @@
+{
+ "compilerOptions": {
+ "target": "es5",
+ "module": "amd",
+ "declaration": true,
+ "removeComments": true,
+ "noLib": false,
+ "experimentalDecorators": true,
+ "sourceMap": true,
+ "skipLibCheck": true,
+ "pretty": true,
+ "allowUnreachableCode": false,
+ "allowUnusedLabels": false,
+ "noImplicitAny": true,
+ "noImplicitReturns": true,
+ "noImplicitUseStrict": false,
+ "noFallthroughCasesInSwitch": true,
+ "allowJs": false,
+ "noEmitOnError": true,
+ "forceConsistentCasingInFileNames": true,
+ "moduleResolution": "node"
+ },
+ "exclude": [
+ "node_modules",
+ "dist",
+ "public",
+ "coverage",
+ "test-report"
+ ],
+ "compileOnSave": false
+}
\ No newline at end of file
diff --git a/src/calendars/CHANGELOG.md b/src/calendars/CHANGELOG.md
new file mode 100644
index 000000000..0d4a532f5
--- /dev/null
+++ b/src/calendars/CHANGELOG.md
@@ -0,0 +1,572 @@
+# Changelog
+
+## [Unreleased]
+
+## 16.3.29 (2018-10-31)
+
+### DatePicker
+
+#### Bug Fixes
+
+- Added multiple class name support for the `cssClass` property.
+
+### DateRangePicker
+
+#### Bug Fixes
+
+- Added multiple class name support for the `cssClass` property.
+
+### TimePicker
+
+#### Bug Fixes
+
+- Added multiple class name support for the `cssClass` property.
+
+## 16.3.27 (2018-10-23)
+
+### DateRangePicker
+
+#### Bug Fixes
+
+- Fixed the form rest handler issue while destroying the component.
+
+## 16.3.25 (2018-10-15)
+
+### DateRangePicker
+
+#### Bug Fixes
+
+- Fixed the `strictMode` issue.
+
+## 16.3.17 (2018-09-12)
+
+### Calendar
+
+#### New Features
+
+- Multiple date selection support has been included.
+
+### DateTimePicker
+
+#### Bug Fixes
+
+- Now, the pop-up element can be append to the target element by using the `AppendTo` argument in open event.
+
+### DateRangePicker
+
+#### Bug Fixes
+
+- Now, the pop-up element can be append to the target element by using the `AppendTo` argument in open event.
+
+### TimePicker
+
+#### Bug Fixes
+
+- Now, the pop-up element can be append to the target element by using the `AppendTo` argument in open event.
+
+## 16.2.52 (2018-09-04)
+
+### DateTimePicker
+
+#### Bug Fixes
+
+- DateTimePicker value will now accept the date values (without time) while entering value in the input element.
+
+## 16.2.50 (2018-08-28)
+
+### DatePicker
+
+#### Bug Fixes
+
+- Added `AppendTo` argument in the open event to specifies which node to be appended on the pop-up element.
+- Fixed the validation issue in mobile devices.
+
+### DateRangePicker
+
+#### Bug Fixes
+
+- The Value can be obtained in the code-behind, while posting the selected value from the DateRangePicker control.
+- Now, the entire properties of pop-up element of DateRangePicker can be customized in the `open` event.
+
+## 16.2.47 (2018-08-07)
+
+### DateRangePicker
+
+#### Bug Fixes
+
+- Now the `firstDayOfWeek` property will be updated based on the culture specific. Also, to get the firstday related information, then it is mandatory to load the `weekData.json` file from the `CLDR` data.
+- Angular form rest for the invalid value in the textbox issue has been fixed.
+
+### DatePicker
+
+#### Bug Fixes
+
+- Now the `firstDayOfWeek` property will be updated based on the culture specific. Also, to get the firstday related information, then it is mandatory to load the `weekData.json` file from the `CLDR` data.
+
+### DateTimePicker
+
+#### Bug Fixes
+
+- Now the `firstDayOfWeek` property will be updated based on the culture specific. Also, to get the firstday related information, then it is mandatory to load the `weekData.json` file from the `CLDR` data.
+
+### Calendar
+
+#### Bug Fixes
+
+- Now the `firstDayOfWeek` property will be updated based on the culture specific. Also, to get the firstday related information, then it is mandatory to load the `weekData.json` file from the `CLDR` data.
+
+## 16.2.46 (2018-07-30)
+
+### DatePicker
+
+#### New Features
+
+- Support for `allowEdit` property has been provided for DatePicker component that allows to edit the value in the input element.
+
+#### Bug Fixes
+
+- Float label state are not restored after resetting the form issue has been fixed.
+
+### DateRangePicker
+
+#### New Features
+
+- Support for `allowEdit` property has been provided for DateRangePicker component that allows to edit the value in the input element.
+
+### DateTimePicker
+
+#### New Features
+
+- Support for `allowEdit` property has been provided for DateTimePicker component that allows to edit the value in the input element.
+
+#### Bug Fixes
+
+- Float label state are not restored after resetting the form issue has been fixed.
+
+### TimePicker
+
+#### New Features
+
+- Support for `allowEdit` property has been provided for TimePicker component that allows to edit the value in the input element.
+
+#### Bug Fixes
+
+- Float label state are not restored after resetting the form issue has been fixed.
+
+## 16.2.45 (2018-07-17)
+
+### DateRangePicker
+
+#### New Features
+
+- Added the custom object support for the value property with the start and end keys.
+
+## 16.2.44 (2018-07-10)
+
+### DateRangePicker
+
+#### Bug Fixes
+
+- Float label state are not restored after resetting the form issue has been fixed.
+
+## 16.2.43 (2018-07-03)
+
+### DateRangePicker
+
+#### Bug Fixes
+
+- Invalid value are not cleared in the textbox after resetting the form issue has been fixed.
+
+## 16.2.41 (2018-06-25)
+
+### Calendars
+
+#### Breaking Changes
+
+- Newly added `ColorPicker` component in input package requires `SplitButton` dependency, So now it's mandatory to include the `ej2-splitbuttons.umd.min.js` in system.js configuration if your using system.js module loader.
+- Update the `system.js` configuration while going with this version and above.
+- Today button will act as a primary button in high contrast, bootstrap and fabric themes.
+
+#### New Features
+
+- Event arguments for all Calendar components has been streamlined.
+
+### DateRangePicker
+
+#### Breaking Changes
+
+- `Value` parameter obtained in change event argument has been changed from `string type to array of date object` and the `string` value from the input element can be obtained from the `text` parameter of the argument.
+
+undefinedDateRangePicker component that allows user to select the date range from the calendar or entering the range through the input element.
+
+
+- **Presets** - Allows to define the customized predefined set of ranges.
+- **Day Span** - Select the data span between the ranges to avoid excess or less date selection.
+- **Range Restriction** - Control the date range selection within a specified range.
+- **Format** - Formatting the value displayed in a textbox.
+- **Customization** - Allows to customize the each day cell of the calendar.
+- **StrictMode** - Allows to entering the only valid date in a textbox.
+- **Accessibility** - Provided with built-in accessibility support which helps to access all the DateRangePicker component features through the keyboard, screen readers, or other assistive technology devices.
+
+### TimePicker
+
+#### Breaking Changes
+
+- In change event, the parameter `e` has been changed to `event`.
+
+undefinedTimePicker component is the pre-filled dropdown list with the time values 12/24 hours format, that allows to select a time from the list.
+
+
+- **Range Restriction** - Allows to select a time within a specified time range.
+- **Format** - Formatting the value displayed in a textbox.
+- **Step** - Provides the option to increment/decrement time value in a popup list.
+- **StrictMode** - Allows to entering the only valid time in a textbox.
+- **Accessibility** - Provided with built-in accessibility support which helps to access all the TimePicker component features through the keyboard, screen readers, or other assistive technology devices.
+
+
+### Calendar
+
+Calendar interface for selecting dates with options for disabling dates, restricting selection and showing custom events.
+
+
+- **Range Restriction** - Allows to select a date within a specified date range.
+- **Start and Depth View** - Allows to change the initial view and navigation depth of the Calendar.
+- **Customization** - Allows to customize the each day cell of the calendar.
+- **Accessibility** - Provided with built-in accessibility support which helps to access all the Calendar component features through the keyboard, screen readers, or other assistive technology devices.
+
+### DatePicker
+
+DatePicker component for selecting or entering a date with options for disabling dates, restricting selection and showing custom events.
+
+
+- **Range Restriction** - Allows to select a date within a specified date range.
+- **Format** - Formatting the value displayed in a textbox.
+- **Start and Depth View** - Allows to change the initial view and navigation depth of the Calendar.
+- **Customization** - Allows to customize the each day cell of the calendar.
+- **StrictMode** - Allows to entering the only valid date in a textbox.
+- **Accessibility** - Provided with built-in accessibility support which helps to access all the DatePicker component features through the keyboard, screen readers, or other assistive technology devices.
+
+### DateTimePicker
+
+DateTimePicker component for selecting or entering a date and time with options for disabling dates, restricting selection and showing custom events.
+
+
+- **Range Restriction** – Allows to select a date and time within a specified range.
+- **Format** – Formatting the value displayed in a textbox.
+- **Customization** – Allows to customize each day and time cell of the Calendar and time popup list.
+- **Strict Mode** - Allows to enter the only valid date and time in a textbox.
+- **Accessibility** - Provided with built-in accessibility support which helps to access all the DateTimePicker component features through the keyboard, screen readers, or other assistive technology devices.
+
+## 16.1.49 (2018-06-20)
+
+### DateTimePicker
+
+- TimePicker popup is not closing while clicking outside of the window issue has been fixed.
+
+## 16.1.48 (2018-06-13)
+
+### DateRangePicker
+
+#### Bug Fixes
+
+- Selection is not maintained in the month with start date in the left calendar, while performing drill down in the right calendar has been fixed.
+
+## 16.1.45 (2018-05-23)
+
+### DateRangePicker
+
+#### New Features
+
+- `DrillDown` support has been provided for DateRangePicker component that allows to quick navigate back and forth from month and year views to select a range easier.
+- `Value` property support has been provided for DateRangePicker component to set a date range.
+
+## 16.1.42 (2018-05-15)
+
+### DateTimePicker
+
+#### Bug Fixes
+
+- `ngOnDestroy` related issues with destroying DateTimePicker component has been fixed.
+
+## 16.1.38 (2018-05-02)
+
+### Common
+
+#### Bug Fixes
+
+- Now, Date parser will return the `null` value while parsing invalid date string.
+
+## 16.1.35 (2018-04-17)
+
+### DateRangePicker
+
+#### Bug Fixes
+
+- `focusIn` and `focusOut` methods has been included.
+- `focus` and `blur` events has been included.
+
+## 16.1.34 (2018-04-10)
+
+### Common
+
+#### Bug Fixes
+
+- Issue with Calendar date generation in `UTC+00:00` time zone has been fixed.
+
+## 16.1.33 (2018-04-03)
+
+### Common
+
+#### Bug Fixes
+
+- Rendering issue on going with `UTC+00:00` time zone has been fixed.
+
+## 16.1.32 (2018-03-29)
+
+### DateRangePicker
+
+#### Bug Fixes
+
+- DateRangePicker popup will not open while enabling the `readOnly` property.
+
+### DateTimePicker
+
+#### Bug Fixes
+
+- Focus and blur events triggers multiple times in DateTimePicker control has been fixed.
+- DateTimePicker throws script error while clicking today button in IE browser has been fixed.
+
+#### Breaking Changes
+
+- The out of range value will be the value of the component and highlighted with error class.
+
+### Calendar
+
+#### Bug Fixes
+
+- Calendar throws script error while clicking today button in IE browser has been fixed.
+
+### DatePicker
+
+#### Bug Fixes
+
+- DatePicker throws script error while clicking today button in IE browser has been fixed.
+
+### TimePicker
+
+#### Breaking Changes
+
+- The out of range value will be the value of the component and highlighted with error class.
+
+## 16.1.29 (2018-03-13)
+
+### Common
+
+#### Bug Fixes
+
+- `Width` property with string type value issue has been fixed.
+
+## 16.1.28 (2018-03-09)
+
+### DatePicker
+
+#### Breaking Changes
+
+- DatePicker maintains null value, while entering the out of range(min/max) issue has been fixed.
+
+## 16.1.24 (2018-02-22)
+
+### Common
+
+#### Breaking Changes
+
+- Changed the Angular component selector, component name prefix with `ejs` e.g: `ejs-calendar`.
+- Event arguments and it's parameter values are same.
+- Popup open in read-only mode issue has been fixed.
+
+#### New Features
+
+- High contrast theme support.
+
+### DateRangePicker
+
+#### New Features
+
+- DateRangePicker rendered based on the screen resolution.
+- `DateTime` support has been provided for DateRangePicker.
+- Input type `date` has been handled in DateRangePicker.
+
+### DatePicker
+
+#### Breaking Changes
+
+- Pascal casing change to `start` and `depth` property values (`Month`, `Year`, `Decade`).
+- Focus the input when select the value from the DatePicker popup.
+
+#### New Features
+
+- `Today` button support has been provided for DatePicker.
+- Input type `date` has been handled in DatePicker.
+
+### TimePicker
+
+#### Breaking Changes
+
+- Pascal casing change to `start` and `depth` property values (`Month`, `Year`, `Decade`).
+
+#### New Features
+
+- Added `itemRender` support for the TimePicker which allows to customize each time values in a popup list.
+- Input type `time` has been handled in TimePicker.
+- Added `scrollTo` support for the TimePicker which is used to set the scroll position to the given time value when no value is selected in the popup list or the given value is not present in the popup list.
+
+### Calendar
+
+#### Breaking Changes
+
+- Pascal casing change to `start` and `depth` property values (`Month`, `Year`, `Decade`).
+
+#### New Features
+
+- `Today` button support has been provided for Calendar.
+
+### DateTimePicker
+
+DateTimePicker component for selecting or entering a date and time with options for disabling dates, restricting selection and showing custom events.
+
+
+- **Range Restriction** – Allows to select a date and time within a specified range.
+- **Format** – Formatting the value displayed in a textbox.
+- **Customization** – Allows to customize each day and time cell of the Calendar and time popup list.
+- **Strict Mode** - Allows to enter the only valid date and time in a textbox.
+- **Accessibility** - Provided with built-in accessibility support which helps to access all the DateTimePicker component features through the keyboard, screen readers, or other assistive technology devices.
+
+## 15.4.26-preview (2018-01-23)
+
+### DateRangePicker
+
+#### Bug Fixes
+
+- Select event will be triggered when selecting the start and end date.
+
+## 15.4.25-preview (2018-01-09)
+
+### DatePicker
+
+#### Bug Fixes
+
+- Width and form validation related issues has been fixed.
+
+## 15.4.23-preview (2017-12-27)
+
+### Common
+
+#### New Features
+
+- Added typing file for ES5 global scripts (`dist/global/index.d.ts`).
+
+#### Breaking Changes
+
+- Modified the module bundle file name for ES6 bundling.
+
+### DatePicker, DateRangePicker and TimePicker
+
+#### Bug Fixes
+
+- Popup repositions will not work while scrolling on the fixed element, this has been fixed.
+
+## 15.4.21-preview (2017-12-08)
+
+### DatePicker
+
+#### Bug Fixes
+
+- Popup position issue in mobile layout has been fixed.
+
+## 15.4.20-preview (2017-12-01)
+
+### Common
+
+#### New Features
+
+- Upgraded TypeScript version to 2.6.2
+
+### Calendar
+
+#### Bug Fixes
+
+- issue on rendering the current month in European Time zone has been fixed.
+
+### DatePicker
+
+#### Bug Fixes
+
+- issue on rendering the current month in European Time zone has been fixed.
+- **showClearButton** - Allows to clear the textbox and model values.
+- **zIndex** - allows to set the z-index value to the popup element.
+
+### DateRangePicker
+
+#### Bug Fixes
+
+- **showClearButton** - Allows to clear the textbox and model values.
+- **zIndex** - allows to set the z-index value to the popup element.
+
+### TimePicker
+
+#### Bug Fixes
+
+- **showClearButton** - Allows to clear the textbox and model values.
+- **zIndex** - allows to set the z-index value to the popup element.
+
+## 15.4.17-preview (2017-11-13)
+
+### Calendar
+
+Calendar interface for selecting dates with options for disabling dates, restricting selection and showing custom events.
+
+
+- **Range Restriction** - Allows to select a date within a specified date range.
+- **Start and Depth View** - Allows to change the initial view and navigation depth of the Calendar.
+- **Customization** - Allows to customize the each day cell of the calendar.
+- **Accessibility** - Provided with built-in accessibility support which helps to access all the Calendar component features through the keyboard, screen readers, or other assistive technology devices.
+
+### DatePicker
+
+DatePicker component for selecting or entering a date with options for disabling dates,
+restricting selection and showing custom events.
+
+
+- **Range Restriction** - Allows to select a date within a specified date range.
+- **Format** - Formatting the value displayed in a textbox.
+- **Start and Depth View** - Allows to change the initial view and navigation depth of the Calendar.
+- **Customization** - Allows to customize the each day cell of the calendar.
+- **StrictMode** - Allows to entering the only valid date in a textbox.
+- **Accessibility** - Provided with built-in accessibility support which helps to access all the DatePicker component features through the keyboard, screen readers, or other assistive technology devices.
+
+### DateRangePicker
+
+DateRangePicker component that allows user to select the date range from the calendar
+or entering the range through the input element.
+
+
+- **Presets** - Allows to define the customized predefined set of ranges.
+- **Day Span** - Select the data span between the ranges to avoid excess or less date selection.
+- **Range Restriction** - Control the date range selection within a specified range.
+- **Format** - Formatting the value displayed in a textbox.
+- **Customization** - Allows to customize the each day cell of the calendar.
+- **StrictMode** - Allows to entering the only valid date in a textbox.
+- **Accessibility** - Provided with built-in accessibility support which helps to access all the DateRangePicker component features through the keyboard, screen readers, or other assistive technology devices.
+
+### TimePicker
+
+TimePicker component is the pre-filled dropdown list with the time values 12/24 hours format, that allows to select a time from the list.
+
+
+- **Range Restriction** - Allows to select a time within a specified time range.
+- **Format** - Formatting the value displayed in a textbox.
+- **Step** - Provides the option to increment/decrement time value in a popup list.
+- **StrictMode** - Allows to entering the only valid time in a textbox.
+- **Accessibility** - Provided with built-in accessibility support which helps to access all the TimePicker component features through the keyboard, screen readers, or other assistive technology devices.
+
+
diff --git a/src/calendars/ReadMe.md b/src/calendars/ReadMe.md
new file mode 100644
index 000000000..82795bd14
--- /dev/null
+++ b/src/calendars/ReadMe.md
@@ -0,0 +1,160 @@
+# ej2-vue-calendars
+
+The calendar package contains date and time components such as calendar, date picker, date range picker, date time picker, and time picker. These components come with options to disable dates, restrict selection, and show custom events. It also has documentation and support available under commercial and community licenses. Please visit [www.syncfusion.com](https://www.syncfusion.com/) to get started.
+
+