mekari_ui_toolkit 1.0.6 → 1.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. checksums.yaml +4 -4
  2. data/lib/assets/javascripts/bootstrap/mekari-ui-alert.js +1 -1
  3. data/lib/assets/javascripts/bootstrap/mekari-ui-alert.min.js +2 -2
  4. data/lib/assets/javascripts/bootstrap/mekari-ui-button.js +1 -1
  5. data/lib/assets/javascripts/bootstrap/mekari-ui-button.min.js +2 -2
  6. data/lib/assets/javascripts/bootstrap/mekari-ui-collapse.js +1 -1
  7. data/lib/assets/javascripts/bootstrap/mekari-ui-collapse.min.js +2 -2
  8. data/lib/assets/javascripts/bootstrap/mekari-ui-dropdown.js +1 -1
  9. data/lib/assets/javascripts/bootstrap/mekari-ui-dropdown.min.js +2 -2
  10. data/lib/assets/javascripts/bootstrap/mekari-ui-modal.js +1 -1
  11. data/lib/assets/javascripts/bootstrap/mekari-ui-modal.min.js +2 -2
  12. data/lib/assets/javascripts/bootstrap/mekari-ui-popover.js +1 -1
  13. data/lib/assets/javascripts/bootstrap/mekari-ui-popover.min.js +2 -2
  14. data/lib/assets/javascripts/bootstrap/mekari-ui-scrollspy.js +1 -1
  15. data/lib/assets/javascripts/bootstrap/mekari-ui-scrollspy.min.js +2 -2
  16. data/lib/assets/javascripts/bootstrap/mekari-ui-tab.js +1 -1
  17. data/lib/assets/javascripts/bootstrap/mekari-ui-tab.min.js +2 -2
  18. data/lib/assets/javascripts/bootstrap/mekari-ui-tooltip.js +1 -1
  19. data/lib/assets/javascripts/bootstrap/mekari-ui-tooltip.min.js +2 -2
  20. data/lib/assets/javascripts/bootstrap/mekari-ui-util.js +1 -1
  21. data/lib/assets/javascripts/bootstrap/mekari-ui-util.min.js +1 -1
  22. data/lib/assets/javascripts/components/mekari-ui-index.js +1 -2
  23. data/lib/assets/javascripts/components/mekari-ui-index.js.map +1 -1
  24. data/lib/assets/javascripts/components/mekari-ui-index.min.js +1 -1
  25. data/lib/assets/javascripts/components/mekari-ui-index.min.js.map +1 -1
  26. data/lib/assets/javascripts/mekari-ui.bundle.js +218 -813
  27. data/lib/assets/javascripts/mekari-ui.bundle.js.map +1 -1
  28. data/lib/assets/javascripts/mekari-ui.bundle.min.js +2 -2
  29. data/lib/assets/javascripts/mekari-ui.bundle.min.js.map +1 -1
  30. data/lib/assets/javascripts/mekari-ui.js +218 -813
  31. data/lib/assets/javascripts/mekari-ui.js.map +1 -1
  32. data/lib/assets/javascripts/mekari-ui.min.js +2 -2
  33. data/lib/assets/javascripts/mekari-ui.min.js.map +1 -1
  34. data/lib/assets/stylesheets/css/components/mekari-ui-alert-min.css +1 -1
  35. data/lib/assets/stylesheets/css/components/mekari-ui-alert-min.css.map +1 -1
  36. data/lib/assets/stylesheets/css/components/mekari-ui-alert.css +11 -5
  37. data/lib/assets/stylesheets/css/components/mekari-ui-alert.css.map +1 -1
  38. data/lib/assets/stylesheets/css/components/mekari-ui-avatar-min.css +1 -1
  39. data/lib/assets/stylesheets/css/components/mekari-ui-avatar-min.css.map +1 -1
  40. data/lib/assets/stylesheets/css/components/mekari-ui-avatar.css +24 -0
  41. data/lib/assets/stylesheets/css/components/mekari-ui-avatar.css.map +1 -1
  42. data/lib/assets/stylesheets/css/components/mekari-ui-badge-min.css +1 -1
  43. data/lib/assets/stylesheets/css/components/mekari-ui-badge-min.css.map +1 -1
  44. data/lib/assets/stylesheets/css/components/mekari-ui-badge.css +4 -6
  45. data/lib/assets/stylesheets/css/components/mekari-ui-badge.css.map +1 -1
  46. data/lib/assets/stylesheets/css/components/mekari-ui-button-min.css +1 -1
  47. data/lib/assets/stylesheets/css/components/mekari-ui-button-min.css.map +1 -1
  48. data/lib/assets/stylesheets/css/components/mekari-ui-button.css +12 -12
  49. data/lib/assets/stylesheets/css/components/mekari-ui-button.css.map +1 -1
  50. data/lib/assets/stylesheets/css/components/mekari-ui-dropdown-min.css.map +1 -1
  51. data/lib/assets/stylesheets/css/components/mekari-ui-dropdown.css.map +1 -1
  52. data/lib/assets/stylesheets/css/components/mekari-ui-form-min.css +1 -1
  53. data/lib/assets/stylesheets/css/components/mekari-ui-form-min.css.map +1 -1
  54. data/lib/assets/stylesheets/css/components/mekari-ui-form.css +8 -0
  55. data/lib/assets/stylesheets/css/components/mekari-ui-form.css.map +1 -1
  56. data/lib/assets/stylesheets/css/components/mekari-ui-icons-min.css +1 -1
  57. data/lib/assets/stylesheets/css/components/mekari-ui-icons-min.css.map +1 -1
  58. data/lib/assets/stylesheets/css/components/mekari-ui-icons.css +36 -1
  59. data/lib/assets/stylesheets/css/components/mekari-ui-icons.css.map +1 -1
  60. data/lib/assets/stylesheets/css/components/mekari-ui-modal-min.css.map +1 -1
  61. data/lib/assets/stylesheets/css/components/mekari-ui-modal.css.map +1 -1
  62. data/lib/assets/stylesheets/css/components/mekari-ui-navbar-min.css +1 -1
  63. data/lib/assets/stylesheets/css/components/mekari-ui-navbar-min.css.map +1 -1
  64. data/lib/assets/stylesheets/css/components/mekari-ui-navbar.css +2 -2
  65. data/lib/assets/stylesheets/css/components/mekari-ui-navbar.css.map +1 -1
  66. data/lib/assets/stylesheets/css/components/mekari-ui-reboot-bootstrap-min.css.map +1 -1
  67. data/lib/assets/stylesheets/css/components/mekari-ui-reboot-bootstrap.css.map +1 -1
  68. data/lib/assets/stylesheets/css/components/mekari-ui-shimmer-min.css +2 -0
  69. data/lib/assets/stylesheets/css/components/mekari-ui-shimmer-min.css.map +1 -0
  70. data/lib/assets/stylesheets/css/components/mekari-ui-shimmer.css +28 -0
  71. data/lib/assets/stylesheets/css/components/mekari-ui-shimmer.css.map +1 -0
  72. data/lib/assets/stylesheets/css/components/mekari-ui-tabs-min.css +1 -1
  73. data/lib/assets/stylesheets/css/components/mekari-ui-tabs-min.css.map +1 -1
  74. data/lib/assets/stylesheets/css/components/mekari-ui-tabs.css +68 -0
  75. data/lib/assets/stylesheets/css/components/mekari-ui-tabs.css.map +1 -1
  76. data/lib/assets/stylesheets/css/components/mekari-ui-tooltip-min.css.map +1 -1
  77. data/lib/assets/stylesheets/css/components/mekari-ui-tooltip.css.map +1 -1
  78. data/lib/assets/stylesheets/css/full-bundle/mekari-ui.css +193 -26
  79. data/lib/assets/stylesheets/css/full-bundle/mekari-ui.css.map +1 -1
  80. data/lib/assets/stylesheets/css/full-bundle/mekari-ui.min.css +1 -1
  81. data/lib/assets/stylesheets/css/full-bundle/mekari-ui.min.css.map +1 -1
  82. data/lib/assets/stylesheets/scss/_settings.scss +1 -0
  83. data/lib/assets/stylesheets/scss/base/_fonts.scss +4 -1
  84. data/lib/assets/stylesheets/scss/components/config/_alert.scss +10 -5
  85. data/lib/assets/stylesheets/scss/components/config/_avatar.scss +5 -0
  86. data/lib/assets/stylesheets/scss/components/config/_badge.scss +5 -7
  87. data/lib/assets/stylesheets/scss/components/config/_button.scss +11 -12
  88. data/lib/assets/stylesheets/scss/components/config/_form.scss +6 -0
  89. data/lib/assets/stylesheets/scss/components/config/_icons.scss +15 -2
  90. data/lib/assets/stylesheets/scss/components/config/_shimmer.scss +16 -0
  91. data/lib/assets/stylesheets/scss/components/config/_tabs.scss +10 -0
  92. data/lib/assets/stylesheets/scss/components/shimmer.scss +3 -0
  93. data/lib/assets/stylesheets/scss/main.scss +2 -0
  94. data/lib/assets/stylesheets/scss/vendor-extensions/_navbar.scss +2 -2
  95. data/lib/assets/stylesheets/scss/vendors/_button-group.scss +1 -1
  96. data/lib/assets/stylesheets/scss/vendors/_dropdown.scss +1 -1
  97. data/lib/assets/stylesheets/scss/vendors/_modal.scss +4 -4
  98. data/lib/assets/stylesheets/scss/vendors/_nav.scss +2 -2
  99. data/lib/assets/stylesheets/scss/vendors/_navbar.scss +4 -4
  100. data/lib/assets/stylesheets/scss/vendors/_tooltip.scss +1 -1
  101. data/lib/assets/stylesheets/scss/vendors/_transitions.scss +5 -5
  102. data/lib/assets/stylesheets/scss/vendors/mixins/_buttons.scss +2 -2
  103. data/lib/assets/stylesheets/webfonts/Mekari-Icon-Regular.eot +0 -0
  104. data/lib/assets/stylesheets/webfonts/Mekari-Icon-Regular.svg +130 -127
  105. data/lib/assets/stylesheets/webfonts/Mekari-Icon-Regular.ttf +0 -0
  106. data/lib/assets/stylesheets/webfonts/Mekari-Icon-Regular.woff +0 -0
  107. data/lib/mekari_ui_toolkit/version.rb +1 -1
  108. metadata +9 -7
  109. data/lib/assets/javascripts/bootstrap/mekari-ui-carousel.js +0 -624
  110. data/lib/assets/javascripts/bootstrap/mekari-ui-carousel.js.map +0 -1
  111. data/lib/assets/javascripts/bootstrap/mekari-ui-carousel.min.js +0 -13
  112. data/lib/assets/javascripts/bootstrap/mekari-ui-carousel.min.js.map +0 -1
@@ -1,3 +1,3 @@
1
1
  module MekariUiToolkit
2
- VERSION = "1.0.6"
2
+ VERSION = "1.0.11"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mekari_ui_toolkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.6
4
+ version: 1.0.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rezky Pangestu Gunarso
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-08-19 00:00:00.000000000 Z
11
+ date: 2020-10-02 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Mekari ui toolkit is a base styling repository of general components
14
14
  in Mekari
@@ -25,10 +25,6 @@ files:
25
25
  - lib/assets/javascripts/bootstrap/mekari-ui-button.js.map
26
26
  - lib/assets/javascripts/bootstrap/mekari-ui-button.min.js
27
27
  - lib/assets/javascripts/bootstrap/mekari-ui-button.min.js.map
28
- - lib/assets/javascripts/bootstrap/mekari-ui-carousel.js
29
- - lib/assets/javascripts/bootstrap/mekari-ui-carousel.js.map
30
- - lib/assets/javascripts/bootstrap/mekari-ui-carousel.min.js
31
- - lib/assets/javascripts/bootstrap/mekari-ui-carousel.min.js.map
32
28
  - lib/assets/javascripts/bootstrap/mekari-ui-collapse.js
33
29
  - lib/assets/javascripts/bootstrap/mekari-ui-collapse.js.map
34
30
  - lib/assets/javascripts/bootstrap/mekari-ui-collapse.min.js
@@ -161,6 +157,10 @@ files:
161
157
  - lib/assets/stylesheets/css/components/mekari-ui-reboot-bootstrap-min.css.map
162
158
  - lib/assets/stylesheets/css/components/mekari-ui-reboot-bootstrap.css
163
159
  - lib/assets/stylesheets/css/components/mekari-ui-reboot-bootstrap.css.map
160
+ - lib/assets/stylesheets/css/components/mekari-ui-shimmer-min.css
161
+ - lib/assets/stylesheets/css/components/mekari-ui-shimmer-min.css.map
162
+ - lib/assets/stylesheets/css/components/mekari-ui-shimmer.css
163
+ - lib/assets/stylesheets/css/components/mekari-ui-shimmer.css.map
164
164
  - lib/assets/stylesheets/css/components/mekari-ui-spinners-min.css
165
165
  - lib/assets/stylesheets/css/components/mekari-ui-spinners-min.css.map
166
166
  - lib/assets/stylesheets/css/components/mekari-ui-spinners.css
@@ -226,6 +226,7 @@ files:
226
226
  - lib/assets/stylesheets/scss/components/config/_images.scss
227
227
  - lib/assets/stylesheets/scss/components/config/_modal.scss
228
228
  - lib/assets/stylesheets/scss/components/config/_pagination.scss
229
+ - lib/assets/stylesheets/scss/components/config/_shimmer.scss
229
230
  - lib/assets/stylesheets/scss/components/config/_tables.scss
230
231
  - lib/assets/stylesheets/scss/components/config/_tabs.scss
231
232
  - lib/assets/stylesheets/scss/components/config/_tooltip.scss
@@ -241,6 +242,7 @@ files:
241
242
  - lib/assets/stylesheets/scss/components/popover.scss
242
243
  - lib/assets/stylesheets/scss/components/progress.scss
243
244
  - lib/assets/stylesheets/scss/components/reboot-bootstrap.scss
245
+ - lib/assets/stylesheets/scss/components/shimmer.scss
244
246
  - lib/assets/stylesheets/scss/components/spinners.scss
245
247
  - lib/assets/stylesheets/scss/components/tables.scss
246
248
  - lib/assets/stylesheets/scss/components/tabs.scss
@@ -393,7 +395,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
393
395
  requirements:
394
396
  - - ">="
395
397
  - !ruby/object:Gem::Version
396
- version: '0'
398
+ version: 2.0.0
397
399
  required_rubygems_version: !ruby/object:Gem::Requirement
398
400
  requirements:
399
401
  - - ">="
@@ -1,624 +0,0 @@
1
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
2
-
3
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
4
-
5
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
-
7
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
8
-
9
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
10
-
11
- /*!
12
- * Mekari UI carousel.js v1.0.6 (https://bitbucket.org/mekariuitoolkit/mekari-ui-toolkit#readme)
13
- * Copyright 2011-2020 Mekari
14
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
15
- */
16
- (function (global, factory) {
17
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery'), require('./util.js')) : typeof define === 'function' && define.amd ? define(['jquery', './util.js'], factory) : (global = global || self, global.Carousel = factory(global.jQuery, global.Util));
18
- })(this, function ($, Util) {
19
- 'use strict';
20
-
21
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
22
- Util = Util && Util.hasOwnProperty('default') ? Util['default'] : Util;
23
- /**
24
- * --------------------------------------------------------------------------
25
- * Bootstrap (v4.5.2): carousel.js
26
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
27
- * --------------------------------------------------------------------------
28
- */
29
-
30
- /**
31
- * ------------------------------------------------------------------------
32
- * Constants
33
- * ------------------------------------------------------------------------
34
- */
35
-
36
- var NAME = 'carousel';
37
- var VERSION = '4.5.2';
38
- var DATA_KEY = 'bs.carousel';
39
- var EVENT_KEY = "." + DATA_KEY;
40
- var DATA_API_KEY = '.data-api';
41
- var JQUERY_NO_CONFLICT = $.fn[NAME];
42
- var ARROW_LEFT_KEYCODE = 37; // KeyboardEvent.which value for left arrow key
43
-
44
- var ARROW_RIGHT_KEYCODE = 39; // KeyboardEvent.which value for right arrow key
45
-
46
- var TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch
47
-
48
- var SWIPE_THRESHOLD = 40;
49
- var Default = {
50
- interval: 5000,
51
- keyboard: true,
52
- slide: false,
53
- pause: 'hover',
54
- wrap: true,
55
- touch: true
56
- };
57
- var DefaultType = {
58
- interval: '(number|boolean)',
59
- keyboard: 'boolean',
60
- slide: '(boolean|string)',
61
- pause: '(string|boolean)',
62
- wrap: 'boolean',
63
- touch: 'boolean'
64
- };
65
- var DIRECTION_NEXT = 'next';
66
- var DIRECTION_PREV = 'prev';
67
- var DIRECTION_LEFT = 'left';
68
- var DIRECTION_RIGHT = 'right';
69
- var EVENT_SLIDE = "slide" + EVENT_KEY;
70
- var EVENT_SLID = "slid" + EVENT_KEY;
71
- var EVENT_KEYDOWN = "keydown" + EVENT_KEY;
72
- var EVENT_MOUSEENTER = "mouseenter" + EVENT_KEY;
73
- var EVENT_MOUSELEAVE = "mouseleave" + EVENT_KEY;
74
- var EVENT_TOUCHSTART = "touchstart" + EVENT_KEY;
75
- var EVENT_TOUCHMOVE = "touchmove" + EVENT_KEY;
76
- var EVENT_TOUCHEND = "touchend" + EVENT_KEY;
77
- var EVENT_POINTERDOWN = "pointerdown" + EVENT_KEY;
78
- var EVENT_POINTERUP = "pointerup" + EVENT_KEY;
79
- var EVENT_DRAG_START = "dragstart" + EVENT_KEY;
80
- var EVENT_LOAD_DATA_API = "load" + EVENT_KEY + DATA_API_KEY;
81
- var EVENT_CLICK_DATA_API = "click" + EVENT_KEY + DATA_API_KEY;
82
- var CLASS_NAME_CAROUSEL = 'carousel';
83
- var CLASS_NAME_ACTIVE = 'active';
84
- var CLASS_NAME_SLIDE = 'slide';
85
- var CLASS_NAME_RIGHT = 'carousel-item-right';
86
- var CLASS_NAME_LEFT = 'carousel-item-left';
87
- var CLASS_NAME_NEXT = 'carousel-item-next';
88
- var CLASS_NAME_PREV = 'carousel-item-prev';
89
- var CLASS_NAME_POINTER_EVENT = 'pointer-event';
90
- var SELECTOR_ACTIVE = '.active';
91
- var SELECTOR_ACTIVE_ITEM = '.active.carousel-item';
92
- var SELECTOR_ITEM = '.carousel-item';
93
- var SELECTOR_ITEM_IMG = '.carousel-item img';
94
- var SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev';
95
- var SELECTOR_INDICATORS = '.carousel-indicators';
96
- var SELECTOR_DATA_SLIDE = '[data-slide], [data-slide-to]';
97
- var SELECTOR_DATA_RIDE = '[data-ride="carousel"]';
98
- var PointerType = {
99
- TOUCH: 'touch',
100
- PEN: 'pen'
101
- };
102
- /**
103
- * ------------------------------------------------------------------------
104
- * Class Definition
105
- * ------------------------------------------------------------------------
106
- */
107
-
108
- var Carousel =
109
- /*#__PURE__*/
110
- function () {
111
- function Carousel(element, config) {
112
- this._items = null;
113
- this._interval = null;
114
- this._activeElement = null;
115
- this._isPaused = false;
116
- this._isSliding = false;
117
- this.touchTimeout = null;
118
- this.touchStartX = 0;
119
- this.touchDeltaX = 0;
120
- this._config = this._getConfig(config);
121
- this._element = element;
122
- this._indicatorsElement = this._element.querySelector(SELECTOR_INDICATORS);
123
- this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0;
124
- this._pointerEvent = Boolean(window.PointerEvent || window.MSPointerEvent);
125
-
126
- this._addEventListeners();
127
- } // Getters
128
-
129
-
130
- var _proto = Carousel.prototype;
131
-
132
- // Public
133
- _proto.next = function next() {
134
- if (!this._isSliding) {
135
- this._slide(DIRECTION_NEXT);
136
- }
137
- };
138
-
139
- _proto.nextWhenVisible = function nextWhenVisible() {
140
- // Don't call next when the page isn't visible
141
- // or the carousel or its parent isn't visible
142
- if (!document.hidden && $(this._element).is(':visible') && $(this._element).css('visibility') !== 'hidden') {
143
- this.next();
144
- }
145
- };
146
-
147
- _proto.prev = function prev() {
148
- if (!this._isSliding) {
149
- this._slide(DIRECTION_PREV);
150
- }
151
- };
152
-
153
- _proto.pause = function pause(event) {
154
- if (!event) {
155
- this._isPaused = true;
156
- }
157
-
158
- if (this._element.querySelector(SELECTOR_NEXT_PREV)) {
159
- Util.triggerTransitionEnd(this._element);
160
- this.cycle(true);
161
- }
162
-
163
- clearInterval(this._interval);
164
- this._interval = null;
165
- };
166
-
167
- _proto.cycle = function cycle(event) {
168
- if (!event) {
169
- this._isPaused = false;
170
- }
171
-
172
- if (this._interval) {
173
- clearInterval(this._interval);
174
- this._interval = null;
175
- }
176
-
177
- if (this._config.interval && !this._isPaused) {
178
- this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval);
179
- }
180
- };
181
-
182
- _proto.to = function to(index) {
183
- var _this = this;
184
-
185
- this._activeElement = this._element.querySelector(SELECTOR_ACTIVE_ITEM);
186
-
187
- var activeIndex = this._getItemIndex(this._activeElement);
188
-
189
- if (index > this._items.length - 1 || index < 0) {
190
- return;
191
- }
192
-
193
- if (this._isSliding) {
194
- $(this._element).one(EVENT_SLID, function () {
195
- return _this.to(index);
196
- });
197
- return;
198
- }
199
-
200
- if (activeIndex === index) {
201
- this.pause();
202
- this.cycle();
203
- return;
204
- }
205
-
206
- var direction = index > activeIndex ? DIRECTION_NEXT : DIRECTION_PREV;
207
-
208
- this._slide(direction, this._items[index]);
209
- };
210
-
211
- _proto.dispose = function dispose() {
212
- $(this._element).off(EVENT_KEY);
213
- $.removeData(this._element, DATA_KEY);
214
- this._items = null;
215
- this._config = null;
216
- this._element = null;
217
- this._interval = null;
218
- this._isPaused = null;
219
- this._isSliding = null;
220
- this._activeElement = null;
221
- this._indicatorsElement = null;
222
- } // Private
223
- ;
224
-
225
- _proto._getConfig = function _getConfig(config) {
226
- config = _objectSpread({}, Default, {}, config);
227
- Util.typeCheckConfig(NAME, config, DefaultType);
228
- return config;
229
- };
230
-
231
- _proto._handleSwipe = function _handleSwipe() {
232
- var absDeltax = Math.abs(this.touchDeltaX);
233
-
234
- if (absDeltax <= SWIPE_THRESHOLD) {
235
- return;
236
- }
237
-
238
- var direction = absDeltax / this.touchDeltaX;
239
- this.touchDeltaX = 0; // swipe left
240
-
241
- if (direction > 0) {
242
- this.prev();
243
- } // swipe right
244
-
245
-
246
- if (direction < 0) {
247
- this.next();
248
- }
249
- };
250
-
251
- _proto._addEventListeners = function _addEventListeners() {
252
- var _this2 = this;
253
-
254
- if (this._config.keyboard) {
255
- $(this._element).on(EVENT_KEYDOWN, function (event) {
256
- return _this2._keydown(event);
257
- });
258
- }
259
-
260
- if (this._config.pause === 'hover') {
261
- $(this._element).on(EVENT_MOUSEENTER, function (event) {
262
- return _this2.pause(event);
263
- }).on(EVENT_MOUSELEAVE, function (event) {
264
- return _this2.cycle(event);
265
- });
266
- }
267
-
268
- if (this._config.touch) {
269
- this._addTouchEventListeners();
270
- }
271
- };
272
-
273
- _proto._addTouchEventListeners = function _addTouchEventListeners() {
274
- var _this3 = this;
275
-
276
- if (!this._touchSupported) {
277
- return;
278
- }
279
-
280
- var start = function start(event) {
281
- if (_this3._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) {
282
- _this3.touchStartX = event.originalEvent.clientX;
283
- } else if (!_this3._pointerEvent) {
284
- _this3.touchStartX = event.originalEvent.touches[0].clientX;
285
- }
286
- };
287
-
288
- var move = function move(event) {
289
- // ensure swiping with one touch and not pinching
290
- if (event.originalEvent.touches && event.originalEvent.touches.length > 1) {
291
- _this3.touchDeltaX = 0;
292
- } else {
293
- _this3.touchDeltaX = event.originalEvent.touches[0].clientX - _this3.touchStartX;
294
- }
295
- };
296
-
297
- var end = function end(event) {
298
- if (_this3._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) {
299
- _this3.touchDeltaX = event.originalEvent.clientX - _this3.touchStartX;
300
- }
301
-
302
- _this3._handleSwipe();
303
-
304
- if (_this3._config.pause === 'hover') {
305
- // If it's a touch-enabled device, mouseenter/leave are fired as
306
- // part of the mouse compatibility events on first tap - the carousel
307
- // would stop cycling until user tapped out of it;
308
- // here, we listen for touchend, explicitly pause the carousel
309
- // (as if it's the second time we tap on it, mouseenter compat event
310
- // is NOT fired) and after a timeout (to allow for mouse compatibility
311
- // events to fire) we explicitly restart cycling
312
- _this3.pause();
313
-
314
- if (_this3.touchTimeout) {
315
- clearTimeout(_this3.touchTimeout);
316
- }
317
-
318
- _this3.touchTimeout = setTimeout(function (event) {
319
- return _this3.cycle(event);
320
- }, TOUCHEVENT_COMPAT_WAIT + _this3._config.interval);
321
- }
322
- };
323
-
324
- $(this._element.querySelectorAll(SELECTOR_ITEM_IMG)).on(EVENT_DRAG_START, function (e) {
325
- return e.preventDefault();
326
- });
327
-
328
- if (this._pointerEvent) {
329
- $(this._element).on(EVENT_POINTERDOWN, function (event) {
330
- return start(event);
331
- });
332
- $(this._element).on(EVENT_POINTERUP, function (event) {
333
- return end(event);
334
- });
335
-
336
- this._element.classList.add(CLASS_NAME_POINTER_EVENT);
337
- } else {
338
- $(this._element).on(EVENT_TOUCHSTART, function (event) {
339
- return start(event);
340
- });
341
- $(this._element).on(EVENT_TOUCHMOVE, function (event) {
342
- return move(event);
343
- });
344
- $(this._element).on(EVENT_TOUCHEND, function (event) {
345
- return end(event);
346
- });
347
- }
348
- };
349
-
350
- _proto._keydown = function _keydown(event) {
351
- if (/input|textarea/i.test(event.target.tagName)) {
352
- return;
353
- }
354
-
355
- switch (event.which) {
356
- case ARROW_LEFT_KEYCODE:
357
- event.preventDefault();
358
- this.prev();
359
- break;
360
-
361
- case ARROW_RIGHT_KEYCODE:
362
- event.preventDefault();
363
- this.next();
364
- break;
365
-
366
- default:
367
- }
368
- };
369
-
370
- _proto._getItemIndex = function _getItemIndex(element) {
371
- this._items = element && element.parentNode ? [].slice.call(element.parentNode.querySelectorAll(SELECTOR_ITEM)) : [];
372
- return this._items.indexOf(element);
373
- };
374
-
375
- _proto._getItemByDirection = function _getItemByDirection(direction, activeElement) {
376
- var isNextDirection = direction === DIRECTION_NEXT;
377
- var isPrevDirection = direction === DIRECTION_PREV;
378
-
379
- var activeIndex = this._getItemIndex(activeElement);
380
-
381
- var lastItemIndex = this._items.length - 1;
382
- var isGoingToWrap = isPrevDirection && activeIndex === 0 || isNextDirection && activeIndex === lastItemIndex;
383
-
384
- if (isGoingToWrap && !this._config.wrap) {
385
- return activeElement;
386
- }
387
-
388
- var delta = direction === DIRECTION_PREV ? -1 : 1;
389
- var itemIndex = (activeIndex + delta) % this._items.length;
390
- return itemIndex === -1 ? this._items[this._items.length - 1] : this._items[itemIndex];
391
- };
392
-
393
- _proto._triggerSlideEvent = function _triggerSlideEvent(relatedTarget, eventDirectionName) {
394
- var targetIndex = this._getItemIndex(relatedTarget);
395
-
396
- var fromIndex = this._getItemIndex(this._element.querySelector(SELECTOR_ACTIVE_ITEM));
397
-
398
- var slideEvent = $.Event(EVENT_SLIDE, {
399
- relatedTarget: relatedTarget,
400
- direction: eventDirectionName,
401
- from: fromIndex,
402
- to: targetIndex
403
- });
404
- $(this._element).trigger(slideEvent);
405
- return slideEvent;
406
- };
407
-
408
- _proto._setActiveIndicatorElement = function _setActiveIndicatorElement(element) {
409
- if (this._indicatorsElement) {
410
- var indicators = [].slice.call(this._indicatorsElement.querySelectorAll(SELECTOR_ACTIVE));
411
- $(indicators).removeClass(CLASS_NAME_ACTIVE);
412
-
413
- var nextIndicator = this._indicatorsElement.children[this._getItemIndex(element)];
414
-
415
- if (nextIndicator) {
416
- $(nextIndicator).addClass(CLASS_NAME_ACTIVE);
417
- }
418
- }
419
- };
420
-
421
- _proto._slide = function _slide(direction, element) {
422
- var _this4 = this;
423
-
424
- var activeElement = this._element.querySelector(SELECTOR_ACTIVE_ITEM);
425
-
426
- var activeElementIndex = this._getItemIndex(activeElement);
427
-
428
- var nextElement = element || activeElement && this._getItemByDirection(direction, activeElement);
429
-
430
- var nextElementIndex = this._getItemIndex(nextElement);
431
-
432
- var isCycling = Boolean(this._interval);
433
- var directionalClassName;
434
- var orderClassName;
435
- var eventDirectionName;
436
-
437
- if (direction === DIRECTION_NEXT) {
438
- directionalClassName = CLASS_NAME_LEFT;
439
- orderClassName = CLASS_NAME_NEXT;
440
- eventDirectionName = DIRECTION_LEFT;
441
- } else {
442
- directionalClassName = CLASS_NAME_RIGHT;
443
- orderClassName = CLASS_NAME_PREV;
444
- eventDirectionName = DIRECTION_RIGHT;
445
- }
446
-
447
- if (nextElement && $(nextElement).hasClass(CLASS_NAME_ACTIVE)) {
448
- this._isSliding = false;
449
- return;
450
- }
451
-
452
- var slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName);
453
-
454
- if (slideEvent.isDefaultPrevented()) {
455
- return;
456
- }
457
-
458
- if (!activeElement || !nextElement) {
459
- // Some weirdness is happening, so we bail
460
- return;
461
- }
462
-
463
- this._isSliding = true;
464
-
465
- if (isCycling) {
466
- this.pause();
467
- }
468
-
469
- this._setActiveIndicatorElement(nextElement);
470
-
471
- var slidEvent = $.Event(EVENT_SLID, {
472
- relatedTarget: nextElement,
473
- direction: eventDirectionName,
474
- from: activeElementIndex,
475
- to: nextElementIndex
476
- });
477
-
478
- if ($(this._element).hasClass(CLASS_NAME_SLIDE)) {
479
- $(nextElement).addClass(orderClassName);
480
- Util.reflow(nextElement);
481
- $(activeElement).addClass(directionalClassName);
482
- $(nextElement).addClass(directionalClassName);
483
- var nextElementInterval = parseInt(nextElement.getAttribute('data-interval'), 10);
484
-
485
- if (nextElementInterval) {
486
- this._config.defaultInterval = this._config.defaultInterval || this._config.interval;
487
- this._config.interval = nextElementInterval;
488
- } else {
489
- this._config.interval = this._config.defaultInterval || this._config.interval;
490
- }
491
-
492
- var transitionDuration = Util.getTransitionDurationFromElement(activeElement);
493
- $(activeElement).one(Util.TRANSITION_END, function () {
494
- $(nextElement).removeClass(directionalClassName + " " + orderClassName).addClass(CLASS_NAME_ACTIVE);
495
- $(activeElement).removeClass(CLASS_NAME_ACTIVE + " " + orderClassName + " " + directionalClassName);
496
- _this4._isSliding = false;
497
- setTimeout(function () {
498
- return $(_this4._element).trigger(slidEvent);
499
- }, 0);
500
- }).emulateTransitionEnd(transitionDuration);
501
- } else {
502
- $(activeElement).removeClass(CLASS_NAME_ACTIVE);
503
- $(nextElement).addClass(CLASS_NAME_ACTIVE);
504
- this._isSliding = false;
505
- $(this._element).trigger(slidEvent);
506
- }
507
-
508
- if (isCycling) {
509
- this.cycle();
510
- }
511
- } // Static
512
- ;
513
-
514
- Carousel._jQueryInterface = function _jQueryInterface(config) {
515
- return this.each(function () {
516
- var data = $(this).data(DATA_KEY);
517
-
518
- var _config = _objectSpread({}, Default, {}, $(this).data());
519
-
520
- if (typeof config === 'object') {
521
- _config = _objectSpread({}, _config, {}, config);
522
- }
523
-
524
- var action = typeof config === 'string' ? config : _config.slide;
525
-
526
- if (!data) {
527
- data = new Carousel(this, _config);
528
- $(this).data(DATA_KEY, data);
529
- }
530
-
531
- if (typeof config === 'number') {
532
- data.to(config);
533
- } else if (typeof action === 'string') {
534
- if (typeof data[action] === 'undefined') {
535
- throw new TypeError("No method named \"" + action + "\"");
536
- }
537
-
538
- data[action]();
539
- } else if (_config.interval && _config.ride) {
540
- data.pause();
541
- data.cycle();
542
- }
543
- });
544
- };
545
-
546
- Carousel._dataApiClickHandler = function _dataApiClickHandler(event) {
547
- var selector = Util.getSelectorFromElement(this);
548
-
549
- if (!selector) {
550
- return;
551
- }
552
-
553
- var target = $(selector)[0];
554
-
555
- if (!target || !$(target).hasClass(CLASS_NAME_CAROUSEL)) {
556
- return;
557
- }
558
-
559
- var config = _objectSpread({}, $(target).data(), {}, $(this).data());
560
-
561
- var slideIndex = this.getAttribute('data-slide-to');
562
-
563
- if (slideIndex) {
564
- config.interval = false;
565
- }
566
-
567
- Carousel._jQueryInterface.call($(target), config);
568
-
569
- if (slideIndex) {
570
- $(target).data(DATA_KEY).to(slideIndex);
571
- }
572
-
573
- event.preventDefault();
574
- };
575
-
576
- _createClass(Carousel, null, [{
577
- key: "VERSION",
578
- get: function get() {
579
- return VERSION;
580
- }
581
- }, {
582
- key: "Default",
583
- get: function get() {
584
- return Default;
585
- }
586
- }]);
587
-
588
- return Carousel;
589
- }();
590
- /**
591
- * ------------------------------------------------------------------------
592
- * Data Api implementation
593
- * ------------------------------------------------------------------------
594
- */
595
-
596
-
597
- $(document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel._dataApiClickHandler);
598
- $(window).on(EVENT_LOAD_DATA_API, function () {
599
- var carousels = [].slice.call(document.querySelectorAll(SELECTOR_DATA_RIDE));
600
-
601
- for (var i = 0, len = carousels.length; i < len; i++) {
602
- var $carousel = $(carousels[i]);
603
-
604
- Carousel._jQueryInterface.call($carousel, $carousel.data());
605
- }
606
- });
607
- /**
608
- * ------------------------------------------------------------------------
609
- * jQuery
610
- * ------------------------------------------------------------------------
611
- */
612
-
613
- $.fn[NAME] = Carousel._jQueryInterface;
614
- $.fn[NAME].Constructor = Carousel;
615
-
616
- $.fn[NAME].noConflict = function () {
617
- $.fn[NAME] = JQUERY_NO_CONFLICT;
618
- return Carousel._jQueryInterface;
619
- };
620
-
621
- return Carousel;
622
- });
623
-
624
- //# sourceMappingURL=mekari-ui-carousel.js.map