ku4web-components 6.4.85 → 6.4.87

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 (194) hide show
  1. package/dist/cjs/ku4-carousel-controls.cjs.entry.js +2 -2
  2. package/dist/cjs/ku4-carousel-slide.cjs.entry.js +1 -1
  3. package/dist/cjs/ku4-carousel.cjs.entry.js +3 -3
  4. package/dist/cjs/ku4-col.cjs.entry.js +1 -1
  5. package/dist/cjs/ku4-drawer.cjs.entry.js +1 -1
  6. package/dist/cjs/ku4-feature.cjs.entry.js +2 -2
  7. package/dist/cjs/ku4-focus-trap.cjs.entry.js +26 -26
  8. package/dist/cjs/ku4-form.cjs.entry.js +3 -3
  9. package/dist/cjs/ku4-grid.cjs.entry.js +1 -1
  10. package/dist/cjs/ku4-label.cjs.entry.js +2 -2
  11. package/dist/cjs/ku4-mask.cjs.entry.js +3 -3
  12. package/dist/cjs/ku4-modal.cjs.entry.js +9 -4
  13. package/dist/cjs/ku4-panel.cjs.entry.js +1 -1
  14. package/dist/cjs/ku4-preview.cjs.entry.js +14 -43
  15. package/dist/cjs/ku4-tab-list.cjs.entry.js +4 -4
  16. package/dist/cjs/ku4-tab-panel.cjs.entry.js +3 -3
  17. package/dist/cjs/ku4-tab.cjs.entry.js +3 -3
  18. package/dist/cjs/ku4-table.cjs.entry.js +1 -1
  19. package/dist/cjs/ku4-tooltip.cjs.entry.js +2 -2
  20. package/dist/cjs/ku4-validation.cjs.entry.js +2 -2
  21. package/dist/cjs/ku4web-components.cjs.js +7 -102
  22. package/dist/cjs/loader.cjs.js +2 -18
  23. package/dist/esm/ku4-carousel-controls.entry.js +2 -2
  24. package/dist/esm/ku4-carousel-slide.entry.js +1 -1
  25. package/dist/esm/ku4-carousel.entry.js +3 -3
  26. package/dist/esm/ku4-col.entry.js +1 -1
  27. package/dist/esm/ku4-drawer.entry.js +1 -1
  28. package/dist/esm/ku4-feature.entry.js +2 -2
  29. package/dist/esm/ku4-focus-trap.entry.js +3 -3
  30. package/dist/esm/ku4-form.entry.js +3 -3
  31. package/dist/esm/ku4-grid.entry.js +1 -1
  32. package/dist/esm/ku4-label.entry.js +2 -2
  33. package/dist/esm/ku4-mask.entry.js +3 -3
  34. package/dist/esm/ku4-modal.entry.js +9 -4
  35. package/dist/esm/ku4-panel.entry.js +1 -1
  36. package/dist/esm/ku4-preview.entry.js +5 -34
  37. package/dist/esm/ku4-tab-list.entry.js +4 -4
  38. package/dist/esm/ku4-tab-panel.entry.js +3 -3
  39. package/dist/esm/ku4-tab.entry.js +3 -3
  40. package/dist/esm/ku4-table.entry.js +1 -1
  41. package/dist/esm/ku4-tooltip.entry.js +2 -2
  42. package/dist/esm/ku4-validation.entry.js +2 -2
  43. package/dist/esm/ku4web-components.js +7 -102
  44. package/dist/esm/loader.js +2 -18
  45. package/dist/esm-es5/ku4-mask.entry.js +1 -1
  46. package/dist/esm-es5/ku4-modal.entry.js +1 -1
  47. package/dist/esm-es5/ku4web-components.js +1 -1
  48. package/dist/esm-es5/loader.js +1 -1
  49. package/dist/index.js +1 -1
  50. package/dist/ku4web-components/index.esm.js +0 -1
  51. package/dist/ku4web-components/ku4web-components.css +1 -299
  52. package/dist/ku4web-components/ku4web-components.esm.js +1 -129
  53. package/dist/ku4web-components/ku4web-components.js +1 -1
  54. package/dist/ku4web-components/p-479f3ff2.entry.js +1 -0
  55. package/dist/ku4web-components/{p-5a60b1d4.system.entry.js → p-cf860f7a.system.entry.js} +1 -1
  56. package/dist/ku4web-components/p-d66b1c43.system.js +1 -1
  57. package/dist/ku4web-components/p-eace33d2.system.entry.js +1 -0
  58. package/dist/ku4web-components/p-f6b9d36e.entry.js +1 -0
  59. package/dist/types/components/ku4-modal/ku4-modal.d.ts +5 -0
  60. package/dist/types/components.d.ts +10 -2
  61. package/package.json +1 -1
  62. package/dist/cjs/app-globals-3a1e7e63.js +0 -5
  63. package/dist/cjs/css-shim-af499675.js +0 -6
  64. package/dist/cjs/dom-0e8e7262.js +0 -75
  65. package/dist/cjs/index-31267995.js +0 -3093
  66. package/dist/cjs/index-517c4086.js +0 -14
  67. package/dist/cjs/index-d6fca091.js +0 -10
  68. package/dist/cjs/uid-8ec2f63e.js +0 -11
  69. package/dist/collection/capabilities/a11y/aria.js +0 -26
  70. package/dist/collection/capabilities/angular/index.js +0 -24
  71. package/dist/collection/capabilities/decorators/deprecated.js +0 -20
  72. package/dist/collection/capabilities/decorators/index.js +0 -3
  73. package/dist/collection/capabilities/decorators/memoize.js +0 -7
  74. package/dist/collection/capabilities/dom/isFocusable.js +0 -7
  75. package/dist/collection/capabilities/dom/queryFocusable.js +0 -2
  76. package/dist/collection/capabilities/identity/uid.js +0 -6
  77. package/dist/collection/capabilities/mask/index.js +0 -5
  78. package/dist/collection/capabilities/mask/patterns/date.js +0 -40
  79. package/dist/collection/capabilities/mask/patterns/index.js +0 -7
  80. package/dist/collection/capabilities/react/index.js +0 -25
  81. package/dist/collection/capabilities/testing/html.js +0 -14
  82. package/dist/collection/capabilities/testing/styles.js +0 -14
  83. package/dist/collection/capabilities/vue/index.js +0 -28
  84. package/dist/collection/capabilities/vue3/index.js +0 -26
  85. package/dist/collection/collection-manifest.json +0 -31
  86. package/dist/collection/components/ku4-carousel/ku4-carousel.css +0 -221
  87. package/dist/collection/components/ku4-carousel/ku4-carousel.js +0 -369
  88. package/dist/collection/components/ku4-carousel-controls/ku4-carousel-controls.css +0 -32
  89. package/dist/collection/components/ku4-carousel-controls/ku4-carousel-controls.js +0 -112
  90. package/dist/collection/components/ku4-carousel-slide/ku4-carousel-slide.css +0 -3
  91. package/dist/collection/components/ku4-carousel-slide/ku4-carousel-slide.js +0 -159
  92. package/dist/collection/components/ku4-col/ku4-col.css +0 -601
  93. package/dist/collection/components/ku4-col/ku4-col.js +0 -288
  94. package/dist/collection/components/ku4-drawer/ku4-drawer.css +0 -56
  95. package/dist/collection/components/ku4-drawer/ku4-drawer.js +0 -163
  96. package/dist/collection/components/ku4-feature/ku4-feature.js +0 -70
  97. package/dist/collection/components/ku4-focus-trap/ku4-focus-trap.css +0 -3
  98. package/dist/collection/components/ku4-focus-trap/ku4-focus-trap.js +0 -441
  99. package/dist/collection/components/ku4-form/ku4-form.js +0 -225
  100. package/dist/collection/components/ku4-grid/ku4-grid.css +0 -751
  101. package/dist/collection/components/ku4-grid/ku4-grid.js +0 -408
  102. package/dist/collection/components/ku4-label/ku4-label.css +0 -36
  103. package/dist/collection/components/ku4-label/ku4-label.js +0 -115
  104. package/dist/collection/components/ku4-mask/ku4-mask.css +0 -3
  105. package/dist/collection/components/ku4-mask/ku4-mask.js +0 -458
  106. package/dist/collection/components/ku4-modal/ku4-modal.css +0 -85
  107. package/dist/collection/components/ku4-modal/ku4-modal.js +0 -208
  108. package/dist/collection/components/ku4-panel/ku4-panel.css +0 -14
  109. package/dist/collection/components/ku4-panel/ku4-panel.js +0 -119
  110. package/dist/collection/components/ku4-preview/ku4-preview.css +0 -23
  111. package/dist/collection/components/ku4-preview/ku4-preview.js +0 -266
  112. package/dist/collection/components/ku4-tab/ku4-tab.css +0 -82
  113. package/dist/collection/components/ku4-tab/ku4-tab.js +0 -191
  114. package/dist/collection/components/ku4-tab-list/ku4-tab-list.css +0 -6
  115. package/dist/collection/components/ku4-tab-list/ku4-tab-list.js +0 -118
  116. package/dist/collection/components/ku4-tab-panel/ku4-tab-panel.css +0 -26
  117. package/dist/collection/components/ku4-tab-panel/ku4-tab-panel.js +0 -166
  118. package/dist/collection/components/ku4-table/ku4-table.css +0 -116
  119. package/dist/collection/components/ku4-table/ku4-table.js +0 -120
  120. package/dist/collection/components/ku4-tooltip/ku4-tooltip.css +0 -56
  121. package/dist/collection/components/ku4-tooltip/ku4-tooltip.js +0 -274
  122. package/dist/collection/components/ku4-validation/ku4-validation.css +0 -19
  123. package/dist/collection/components/ku4-validation/ku4-validation.js +0 -364
  124. package/dist/collection/components/ku4-validation/validate.js +0 -14
  125. package/dist/collection/index.js +0 -1
  126. package/dist/collection/security.js +0 -27
  127. package/dist/esm/app-globals-0f993ce5.js +0 -3
  128. package/dist/esm/css-shim-5697df59.js +0 -4
  129. package/dist/esm/dom-1d32cb7b.js +0 -73
  130. package/dist/esm/index-135dacad.js +0 -3
  131. package/dist/esm/index-52b04dce.js +0 -3057
  132. package/dist/esm/index-f13d1b41.js +0 -3
  133. package/dist/esm/uid-a7ff854d.js +0 -9
  134. package/dist/ku4web-components/app-globals-0f993ce5.js +0 -3
  135. package/dist/ku4web-components/app-globals-497eb362.system.js +0 -1
  136. package/dist/ku4web-components/css-shim-2eb8ce1f.system.js +0 -1
  137. package/dist/ku4web-components/css-shim-5697df59.js +0 -4
  138. package/dist/ku4web-components/dom-1d32cb7b.js +0 -73
  139. package/dist/ku4web-components/dom-e6a9d306.system.js +0 -21
  140. package/dist/ku4web-components/index-135dacad.js +0 -3
  141. package/dist/ku4web-components/index-4036ffa2.system.js +0 -1
  142. package/dist/ku4web-components/index-52b04dce.js +0 -3057
  143. package/dist/ku4web-components/index-9bb2580f.system.js +0 -1
  144. package/dist/ku4web-components/index-dcd9a8a7.system.js +0 -1
  145. package/dist/ku4web-components/index-f13d1b41.js +0 -3
  146. package/dist/ku4web-components/index.system.js +0 -1
  147. package/dist/ku4web-components/ku4-carousel-controls.entry.js +0 -89
  148. package/dist/ku4web-components/ku4-carousel-controls.system.entry.js +0 -1
  149. package/dist/ku4web-components/ku4-carousel-slide.entry.js +0 -47
  150. package/dist/ku4web-components/ku4-carousel-slide.system.entry.js +0 -1
  151. package/dist/ku4web-components/ku4-carousel.entry.js +0 -175
  152. package/dist/ku4web-components/ku4-carousel.system.entry.js +0 -1
  153. package/dist/ku4web-components/ku4-col.entry.js +0 -75
  154. package/dist/ku4web-components/ku4-col.system.entry.js +0 -1
  155. package/dist/ku4web-components/ku4-drawer.entry.js +0 -35
  156. package/dist/ku4web-components/ku4-drawer.system.entry.js +0 -1
  157. package/dist/ku4web-components/ku4-feature.entry.js +0 -29
  158. package/dist/ku4web-components/ku4-feature.system.entry.js +0 -1
  159. package/dist/ku4web-components/ku4-focus-trap.entry.js +0 -323
  160. package/dist/ku4web-components/ku4-focus-trap.system.entry.js +0 -1
  161. package/dist/ku4web-components/ku4-form.entry.js +0 -112
  162. package/dist/ku4web-components/ku4-form.system.entry.js +0 -1
  163. package/dist/ku4web-components/ku4-grid.entry.js +0 -108
  164. package/dist/ku4web-components/ku4-grid.system.entry.js +0 -1
  165. package/dist/ku4web-components/ku4-label.entry.js +0 -70
  166. package/dist/ku4web-components/ku4-label.system.entry.js +0 -1
  167. package/dist/ku4web-components/ku4-mask.entry.js +0 -342
  168. package/dist/ku4web-components/ku4-mask.system.entry.js +0 -1
  169. package/dist/ku4web-components/ku4-modal.entry.js +0 -75
  170. package/dist/ku4web-components/ku4-modal.system.entry.js +0 -1
  171. package/dist/ku4web-components/ku4-panel.entry.js +0 -49
  172. package/dist/ku4web-components/ku4-panel.system.entry.js +0 -1
  173. package/dist/ku4web-components/ku4-preview.entry.js +0 -128
  174. package/dist/ku4web-components/ku4-preview.system.entry.js +0 -1
  175. package/dist/ku4web-components/ku4-tab-list.entry.js +0 -76
  176. package/dist/ku4web-components/ku4-tab-list.system.entry.js +0 -1
  177. package/dist/ku4web-components/ku4-tab-panel.entry.js +0 -72
  178. package/dist/ku4web-components/ku4-tab-panel.system.entry.js +0 -1
  179. package/dist/ku4web-components/ku4-tab.entry.js +0 -63
  180. package/dist/ku4web-components/ku4-tab.system.entry.js +0 -1
  181. package/dist/ku4web-components/ku4-table.entry.js +0 -79
  182. package/dist/ku4web-components/ku4-table.system.entry.js +0 -1
  183. package/dist/ku4web-components/ku4-tooltip.entry.js +0 -120
  184. package/dist/ku4web-components/ku4-tooltip.system.entry.js +0 -1
  185. package/dist/ku4web-components/ku4-validation.entry.js +0 -162
  186. package/dist/ku4web-components/ku4-validation.system.entry.js +0 -1
  187. package/dist/ku4web-components/ku4web-components.system.js +0 -1
  188. package/dist/ku4web-components/p-138904dc.system.entry.js +0 -1
  189. package/dist/ku4web-components/p-dd0d306b.entry.js +0 -1
  190. package/dist/ku4web-components/p-ef0b529f.entry.js +0 -1
  191. package/dist/ku4web-components/shadow-css-6a0a96e7.system.js +0 -13
  192. package/dist/ku4web-components/shadow-css-dfa0587f.js +0 -388
  193. package/dist/ku4web-components/uid-3373ce49.system.js +0 -1
  194. package/dist/ku4web-components/uid-a7ff854d.js +0 -9
@@ -1,221 +0,0 @@
1
- @keyframes ku4-carousel-enter-left {
2
- 0% {
3
- top: 0;
4
- transform: translate3d(-100%, 0, 0);
5
- opacity: 0;
6
- }
7
- 100% {
8
- top: 0;
9
- transform: translate3d(0, 0, 0);
10
- opacity: 1;
11
- }
12
- }
13
- @keyframes ku4-carousel-enter-right {
14
- 0% {
15
- top: 0;
16
- transform: translate3d(100%, 0, 0);
17
- opacity: 0;
18
- }
19
- 100% {
20
- top: 0;
21
- transform: translate3d(0, 0, 0);
22
- opacity: 1;
23
- }
24
- }
25
- @keyframes ku4-carousel-exit-left {
26
- 0% {
27
- top: 0;
28
- transform: translate3d(0, 0, 0);
29
- opacity: 1;
30
- }
31
- 100% {
32
- top: 0;
33
- transform: translate3d(-100%, 0, 0);
34
- opacity: 0;
35
- }
36
- }
37
- @keyframes ku4-carousel-exit-right {
38
- 0% {
39
- top: 0;
40
- transform: translate3d(0, 0, 0);
41
- opacity: 1;
42
- }
43
- 100% {
44
- top: 0;
45
- transform: translate3d(100%, 0, 0);
46
- opacity: 0;
47
- }
48
- }
49
- :host {
50
- position: relative;
51
- display: flex;
52
- flex-direction: column;
53
- align-items: center;
54
- overflow: hidden;
55
- background-color: var(--ku4-carousel-background-color, #fff);
56
- }
57
-
58
- .slide-container {
59
- position: relative;
60
- width: 100%;
61
- height: 100%;
62
- overflow: hidden;
63
- }
64
-
65
- .controls .next,
66
- .controls .prev {
67
- position: absolute;
68
- display: var(--ku4-carousel-controls-display, block);
69
- top: var(--ku4-carousel-controls-top, 0);
70
- border: var(--ku4-carousel-controls-border, none);
71
- background-color: var(--ku4-carousel-controls-background-color, #fff);
72
- font-family: var(--ku4-carousel-controls-font-family, Helvetica, Arial, sans-serif);
73
- font-weight: var(--ku4-carousel-controls-font-weight, 400);
74
- font-size: var(--ku4-carousel-controls-font-size, 8px);
75
- line-height: var(--ku4-carousel-controls-line-height, 12px);
76
- opacity: var(--ku4-carousel-controls-opacity, 0.2);
77
- z-index: var(--ku4-carousel-controls-z-index, 2);
78
- }
79
- .controls .next:focus,
80
- .controls .prev:focus {
81
- background-color: var(--ku4-carousel-controls-focus-background-color, transparent);
82
- outline: var(--ku4-carousel-controls-focus-outline, none);
83
- opacity: var(--ku4-carousel-controls-focus-opacity, 0.2);
84
- }
85
- .controls .next:hover,
86
- .controls .prev:hover {
87
- background-color: var(--ku4-carousel-controls-hover-background-color, transparent);
88
- opacity: var(--ku4-carousel-controls-hover-opacity, 1);
89
- }
90
-
91
- .controls .next {
92
- right: 0;
93
- width: var(--ku4-carousel-controls-next-width, 40px);
94
- height: var(--ku4-carousel-controls-next-height, 100%);
95
- background-image: var(--ku4-carousel-controls-next-background-image);
96
- background-repeat: var(--ku4-carousel-controls-next-background-repeat, no-repeat);
97
- background-position-x: var(--ku4-carousel-controls-next-background-position-x, 0);
98
- background-position-y: var(--ku4-carousel-controls-next-background-position-y, 50%);
99
- background-size: var(--ku4-carousel-controls-next-background-size, 100% 100%);
100
- }
101
- .controls .next:focus {
102
- background-image: var(--ku4-carousel-controls-next-focus-background-image);
103
- background-repeat: var(--ku4-carousel-controls-next-focus-background-repeat, no-repeat);
104
- background-position-x: var(--ku4-carousel-controls-next-focus-background-position-x, 0);
105
- background-position-y: var(--ku4-carousel-controls-next-focus-background-position-y, 50%);
106
- background-size: var(--ku4-carousel-controls-next-focus-background-size, 100% 100%);
107
- }
108
- .controls .next:hover {
109
- background-image: var(--ku4-carousel-controls-next-hover-background-image);
110
- background-repeat: var(--ku4-carousel-controls-next-hover-background-repeat, no-repeat);
111
- background-position-x: var(--ku4-carousel-controls-next-hover-background-position-x, 0);
112
- background-position-y: var(--ku4-carousel-controls-next-hover-background-position-y, 50%);
113
- background-size: var(--ku4-carousel-controls-next-hover-background-size, 100% 100%);
114
- }
115
-
116
- .controls .prev {
117
- left: 0;
118
- width: var(--ku4-carousel-controls-next-width, 40px);
119
- height: var(--ku4-carousel-controls-next-height, 100%);
120
- background-image: var(--ku4-carousel-controls-previous-background-image);
121
- background-repeat: var(--ku4-carousel-controls-previous-background-repeat, no-repeat);
122
- background-position-x: var(--ku4-carousel-controls-previous-background-position-x, 0);
123
- background-position-y: var(--ku4-carousel-controls-previous-background-position-y, 50%);
124
- background-size: var(--ku4-carousel-controls-previous-background-size, 100% 100%);
125
- }
126
- .controls .prev:focus {
127
- background-image: var(--ku4-carousel-controls-previous-focus-background-image);
128
- background-repeat: var(--ku4-carousel-controls-previous-focus-background-repeat, no-repeat);
129
- background-position-x: var(--ku4-carousel-controls-previous-focus-background-position-x, 0);
130
- background-position-y: var(--ku4-carousel-controls-previous-focus-background-position-y, 50%);
131
- background-size: var(--ku4-carousel-controls-previous-focus-background-size, 100% 100%);
132
- }
133
- .controls .prev:hover {
134
- background-image: var(--ku4-carousel-controls-previous-hover-background-image);
135
- background-repeat: var(--ku4-carousel-controls-previous-hover-background-repeat, no-repeat);
136
- background-position-x: var(--ku4-carousel-controls-previous-hover-background-position-x, 0);
137
- background-position-y: var(--ku4-carousel-controls-previous-hover-background-position-y, 50%);
138
- background-size: var(--ku4-carousel-controls-previous-hover-background-size, 100% 100%);
139
- }
140
-
141
- .pages {
142
- position: absolute;
143
- display: var(--ku4-carousel-pages-display, block);
144
- top: var(--ku4-carousel-pages-top, auto);
145
- bottom: var(--ku4-carousel-pages-bottom, 4px);
146
- width: var(--ku4-carousel-pages-width, auto);
147
- height: var(--ku4-carousel-pages-height, 20px);
148
- background-color: var(--ku4-carousel-pages-background-color, transparent);
149
- opacity: var(--ku4-carousel-pages-opacity, 0.5);
150
- text-align: center;
151
- z-index: 3;
152
- }
153
-
154
- .pages-text {
155
- display: inline-block;
156
- padding: var(--ku4-carousel-pages-text-padding, 4px);
157
- font-family: var(--ku4-carousel-pages-text-font-family, Helvetica, Arial, sans-serif);
158
- font-weight: var(--ku4-carousel-pages-text-font-weight, 600);
159
- font-size: var(--ku4-carousel-pages-text-font-size, 14px);
160
- line-height: var(--ku4-carousel-pages-text-line-height, 16px);
161
- color: var(--ku4-carousel-pages-text-color, #aaa);
162
- }
163
-
164
- ::slotted(*) {
165
- position: absolute;
166
- display: flex;
167
- flex-direction: column;
168
- top: 0;
169
- left: -100%;
170
- width: 100%;
171
- box-sizing: border-box;
172
- }
173
-
174
- ::slotted(.inactive) {
175
- position: absolute;
176
- height: 100%;
177
- left: 0;
178
- }
179
-
180
- ::slotted(.inactive.prev) {
181
- animation-name: var(--ku4-carousel-animation-inactive-previous-name, ku4-carousel-exit-right);
182
- animation-duration: var(--ku4-carousel-animation-duration, 0.4s);
183
- animation-timing-function: var(--ku4-carousel-animation-timing-function);
184
- animation-fill-mode: forwards;
185
- }
186
-
187
- ::slotted(.inactive.next) {
188
- animation-name: var(--ku4-carousel-animation-inactive-next-name, ku4-carousel-exit-left);
189
- animation-duration: var(--ku4-carousel-animation-duration, 0.4s);
190
- animation-timing-function: var(--ku4-carousel-animation-timing-function);
191
- animation-fill-mode: forwards;
192
- }
193
-
194
- ::slotted(.active) {
195
- position: relative;
196
- top: 0;
197
- left: 0;
198
- width: auto;
199
- height: 100%;
200
- z-index: 1;
201
- }
202
-
203
- ::slotted(.active.prev) {
204
- animation-name: var(--ku4-carousel-animation-active-previous-name, ku4-carousel-enter-left);
205
- animation-duration: var(--ku4-carousel-animation-duration, 0.4s);
206
- animation-timing-function: var(--ku4-carousel-animation-timing-function, ease);
207
- animation-fill-mode: forwards;
208
- }
209
-
210
- ::slotted(.active.next) {
211
- animation-name: var(--ku4-carousel-animation-active-next-name, ku4-carousel-enter-right);
212
- animation-duration: var(--ku4-carousel-animation-duration, 0.4s);
213
- animation-timing-function: var(--ku4-carousel-animation-timing-function, ease);
214
- animation-fill-mode: forwards;
215
- }
216
-
217
- @media (hover: hover) {
218
- .controls:hover {
219
- background-color: var(--ku4-carousel-controls-focus-background-color, #fff);
220
- }
221
- }
@@ -1,369 +0,0 @@
1
- import { Component, Host, Prop, State, Method, Element, h, Event } from '@stencil/core';
2
- import { Rolodex, Interval, wait } from 'ku4es-kernel';
3
- import { Swipe } from 'ku4es-ui-kernel';
4
- /**
5
- * @description ku4-carousel
6
- */
7
- export class Ku4Carousel {
8
- constructor() {
9
- /**
10
- * Sets the distance, in pixels, a touch must travel
11
- * before activating a swipe.
12
- */
13
- this.swipeTolerance = 44;
14
- /**
15
- * Will start this carousel in auto scroll mode
16
- */
17
- this.auto = false;
18
- /**
19
- * Prevents touch swiping
20
- */
21
- this.noSwipe = false;
22
- /**
23
- * Delay in millisecond between slide changes
24
- * when running in auto
25
- */
26
- this.delay = 8000;
27
- this.interval = new Interval(this.delay).onInterval(() => {
28
- if (this.host.isConnected) {
29
- this.display('next');
30
- }
31
- else {
32
- this.disconnectedCallback();
33
- }
34
- });
35
- this.handleMouse = this.handleMouse.bind(this);
36
- }
37
- /**
38
- * Display the next ku4-carousel-slide
39
- */
40
- async next() {
41
- if (!this.hasSlides) {
42
- return this;
43
- }
44
- await this.pause();
45
- return this.display('next');
46
- }
47
- /**
48
- * Display the previous ku4-carousel-slide
49
- */
50
- async previous() {
51
- if (!this.hasSlides) {
52
- return this;
53
- }
54
- await this.pause();
55
- return this.display('prev');
56
- }
57
- /**
58
- * Slide to the slide number specified.
59
- * @param {number|string} slide - Slide number or slide name to slide to.
60
- */
61
- async slideTo(slide) {
62
- await this.pause();
63
- const { slides } = this;
64
- const value = isNaN(slide)
65
- ? slides.findIndex(s => s.getAttribute('name') === slide) + 1
66
- : parseInt(slide);
67
- if (!(value === this.currentSlideNumber || value < 1 || this.rolodex.length < value)) {
68
- const move = value - this.currentSlideNumber;
69
- const slide = move < 0 ? 'prev' : 'next';
70
- let count = Math.abs(move);
71
- while (0 < --count) {
72
- await wait(10).then(() => this.rolodex[slide]);
73
- }
74
- this.display(slide);
75
- }
76
- }
77
- /**
78
- * Pause auto slide change
79
- */
80
- async pause() {
81
- this.interval.clear();
82
- }
83
- /**
84
- * Start auto slide change
85
- */
86
- async play() {
87
- const { auto, interval } = this;
88
- auto && interval.start();
89
- }
90
- get slides() {
91
- return [].slice.call(this.host.children);
92
- }
93
- get hasSlides() {
94
- return this.rolodex && (this.rolodex.length > 1);
95
- }
96
- get currentSlideNumber() {
97
- const { rolodex } = this;
98
- return rolodex && (rolodex.isEmpty ? 0 : rolodex.index + 1);
99
- }
100
- display(slide) {
101
- window.requestAnimationFrame(() => {
102
- const { previous, current } = this.slideState;
103
- const next = this.rolodex[slide];
104
- if (previous) {
105
- previous.deactivate();
106
- }
107
- current.slideOut(slide);
108
- next.slideIn(slide);
109
- this.slideState = {
110
- previous: current,
111
- current: next,
112
- };
113
- this.didSlide.emit(this.currentSlideNumber);
114
- });
115
- return this;
116
- }
117
- handleMouse(e) {
118
- if (!this.host.contains(e.relatedTarget)) {
119
- this.play();
120
- }
121
- }
122
- componentWillLoad() {
123
- if (!this.noSwipe) {
124
- this.swipe = new Swipe(this.host, this.swipeTolerance)
125
- .onLeft(() => this.next())
126
- .onRight(() => this.previous());
127
- }
128
- let slides;
129
- try {
130
- slides = this.host.querySelectorAll(':scope > ku4-carousel-slide');
131
- }
132
- catch (e) {
133
- slides = [].slice.call(this.host.querySelectorAll('ku4-carousel-slide'))
134
- .reduce((acc, item) => {
135
- if (item.parentNode === this.host) {
136
- acc.push(item);
137
- }
138
- return acc;
139
- }, []);
140
- }
141
- this.rolodex = new Rolodex(slides);
142
- (this.rolodex.current &&
143
- this.rolodex.current.activate) &&
144
- this.rolodex.current.activate();
145
- this.slideState = { current: this.rolodex.current };
146
- if (this.auto) {
147
- this.host.addEventListener('mouseout', this.handleMouse);
148
- this.play();
149
- }
150
- }
151
- connectedCallback() {
152
- if (this.swipe) {
153
- this.swipe.destroy();
154
- }
155
- this.host.removeEventListener('mouseout', this.handleMouse);
156
- this.interval.clear();
157
- }
158
- disconnectedCallback() {
159
- if (this.swipe) {
160
- this.swipe.destroy();
161
- }
162
- this.host.removeEventListener('mouseout', this.handleMouse);
163
- this.interval.clear();
164
- }
165
- render() {
166
- const { hasSlides, currentSlideNumber = 1 } = this;
167
- return (h(Host, { "aria-roledescription": "carousel", current: currentSlideNumber },
168
- hasSlides && (h("section", { class: "controls" },
169
- h("button", { type: "button", class: "prev", onClick: () => this.previous(), "aria-label": "previous slide" }),
170
- h("button", { type: "button", class: "next", onClick: () => this.next(), "aria-label": "next slide" }))),
171
- h("section", { class: "slide-container", "aria-live": "polite" },
172
- h("slot", null)),
173
- hasSlides && (h("section", { class: "pages" },
174
- h("span", { class: "pages-text" }, `${currentSlideNumber} of ${this.rolodex.length}`)))));
175
- }
176
- static get is() { return "ku4-carousel"; }
177
- static get encapsulation() { return "shadow"; }
178
- static get originalStyleUrls() { return {
179
- "$": ["ku4-carousel.scss"]
180
- }; }
181
- static get styleUrls() { return {
182
- "$": ["ku4-carousel.css"]
183
- }; }
184
- static get properties() { return {
185
- "swipeTolerance": {
186
- "type": "number",
187
- "mutable": false,
188
- "complexType": {
189
- "original": "number",
190
- "resolved": "number",
191
- "references": {}
192
- },
193
- "required": false,
194
- "optional": false,
195
- "docs": {
196
- "tags": [],
197
- "text": "Sets the distance, in pixels, a touch must travel\nbefore activating a swipe."
198
- },
199
- "attribute": "swipe-tolerance",
200
- "reflect": false,
201
- "defaultValue": "44"
202
- },
203
- "auto": {
204
- "type": "boolean",
205
- "mutable": false,
206
- "complexType": {
207
- "original": "boolean",
208
- "resolved": "boolean",
209
- "references": {}
210
- },
211
- "required": false,
212
- "optional": false,
213
- "docs": {
214
- "tags": [],
215
- "text": "Will start this carousel in auto scroll mode"
216
- },
217
- "attribute": "auto",
218
- "reflect": false,
219
- "defaultValue": "false"
220
- },
221
- "noSwipe": {
222
- "type": "boolean",
223
- "mutable": false,
224
- "complexType": {
225
- "original": "boolean",
226
- "resolved": "boolean",
227
- "references": {}
228
- },
229
- "required": false,
230
- "optional": false,
231
- "docs": {
232
- "tags": [],
233
- "text": "Prevents touch swiping"
234
- },
235
- "attribute": "no-swipe",
236
- "reflect": false,
237
- "defaultValue": "false"
238
- },
239
- "delay": {
240
- "type": "number",
241
- "mutable": false,
242
- "complexType": {
243
- "original": "number",
244
- "resolved": "number",
245
- "references": {}
246
- },
247
- "required": false,
248
- "optional": false,
249
- "docs": {
250
- "tags": [],
251
- "text": "Delay in millisecond between slide changes\nwhen running in auto"
252
- },
253
- "attribute": "delay",
254
- "reflect": false,
255
- "defaultValue": "8000"
256
- }
257
- }; }
258
- static get states() { return {
259
- "slideState": {}
260
- }; }
261
- static get events() { return [{
262
- "method": "didSlide",
263
- "name": "slide",
264
- "bubbles": true,
265
- "cancelable": true,
266
- "composed": true,
267
- "docs": {
268
- "tags": [],
269
- "text": "Event fired when slide changes"
270
- },
271
- "complexType": {
272
- "original": "any",
273
- "resolved": "any",
274
- "references": {}
275
- }
276
- }]; }
277
- static get methods() { return {
278
- "next": {
279
- "complexType": {
280
- "signature": "() => Promise<this>",
281
- "parameters": [],
282
- "references": {
283
- "Promise": {
284
- "location": "global"
285
- }
286
- },
287
- "return": "Promise<this>"
288
- },
289
- "docs": {
290
- "text": "Display the next ku4-carousel-slide",
291
- "tags": []
292
- }
293
- },
294
- "previous": {
295
- "complexType": {
296
- "signature": "() => Promise<this>",
297
- "parameters": [],
298
- "references": {
299
- "Promise": {
300
- "location": "global"
301
- }
302
- },
303
- "return": "Promise<this>"
304
- },
305
- "docs": {
306
- "text": "Display the previous ku4-carousel-slide",
307
- "tags": []
308
- }
309
- },
310
- "slideTo": {
311
- "complexType": {
312
- "signature": "(slide: any) => Promise<void>",
313
- "parameters": [{
314
- "tags": [{
315
- "name": "param",
316
- "text": "slide - Slide number or slide name to slide to."
317
- }],
318
- "text": "- Slide number or slide name to slide to."
319
- }],
320
- "references": {
321
- "Promise": {
322
- "location": "global"
323
- }
324
- },
325
- "return": "Promise<void>"
326
- },
327
- "docs": {
328
- "text": "Slide to the slide number specified.",
329
- "tags": [{
330
- "name": "param",
331
- "text": "slide - Slide number or slide name to slide to."
332
- }]
333
- }
334
- },
335
- "pause": {
336
- "complexType": {
337
- "signature": "() => Promise<void>",
338
- "parameters": [],
339
- "references": {
340
- "Promise": {
341
- "location": "global"
342
- }
343
- },
344
- "return": "Promise<void>"
345
- },
346
- "docs": {
347
- "text": "Pause auto slide change",
348
- "tags": []
349
- }
350
- },
351
- "play": {
352
- "complexType": {
353
- "signature": "() => Promise<void>",
354
- "parameters": [],
355
- "references": {
356
- "Promise": {
357
- "location": "global"
358
- }
359
- },
360
- "return": "Promise<void>"
361
- },
362
- "docs": {
363
- "text": "Start auto slide change",
364
- "tags": []
365
- }
366
- }
367
- }; }
368
- static get elementRef() { return "host"; }
369
- }
@@ -1,32 +0,0 @@
1
- :host {
2
- position: relative;
3
- display: block;
4
- }
5
-
6
- input[type=radio] {
7
- appearance: none;
8
- position: relative;
9
- width: 20px;
10
- height: 20px;
11
- margin: 0;
12
- padding: 0;
13
- border: solid 1px #888;
14
- border-radius: 50%;
15
- box-sizing: border-box;
16
- vertical-align: middle;
17
- }
18
- input[type=radio]:checked:after {
19
- content: "";
20
- position: absolute;
21
- top: 2px;
22
- left: 2px;
23
- width: 14px;
24
- height: 14px;
25
- margin: 0;
26
- padding: 0;
27
- border: solid 1px #888;
28
- border-radius: 50%;
29
- box-sizing: border-box;
30
- text-align: center;
31
- background-color: #333;
32
- }