@iamproperty/components 7.7.1--beta18 → 7.7.1--beta19
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.
- package/assets/css/components/carousel.component.css +1 -1
- package/assets/css/components/carousel.component.css.map +1 -1
- package/assets/css/components/carousel.config.css +1 -1
- package/assets/css/components/carousel.config.css.map +1 -1
- package/assets/css/core.min.css +1 -1
- package/assets/css/core.min.css.map +1 -1
- package/assets/css/style.min.css +1 -1
- package/assets/css/style.min.css.map +1 -1
- package/assets/js/components/accordion/accordion.component.min.js +1 -1
- package/assets/js/components/actionbar/actionbar.component.min.js +1 -1
- package/assets/js/components/address-lookup/address-lookup.component.min.js +1 -1
- package/assets/js/components/advanced-select/advanced-select.component.min.js +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.min.js +1 -1
- package/assets/js/components/barchart/barchart.component.min.js +1 -1
- package/assets/js/components/bento-grid/bento-grid.component.min.js +1 -1
- package/assets/js/components/button/button.component.min.js +1 -1
- package/assets/js/components/calendar/calendar.component.min.js +1 -1
- package/assets/js/components/card/card.component.min.js +1 -1
- package/assets/js/components/carousel/carousel.component.js +19 -38
- package/assets/js/components/carousel/carousel.component.min.js +8 -16
- package/assets/js/components/carousel/carousel.component.min.js.map +1 -1
- package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
- package/assets/js/components/config/config.component.min.js +1 -1
- package/assets/js/components/content/content.component.js +2 -0
- package/assets/js/components/content/content.component.min.js +3 -3
- package/assets/js/components/content/content.component.min.js.map +1 -1
- package/assets/js/components/darkmode/darkmode.component.min.js +1 -1
- package/assets/js/components/doughnutchart/doughnutchart.component.min.js +1 -1
- package/assets/js/components/fileupload/fileupload.component.min.js +1 -1
- package/assets/js/components/filter-card/filter-card.component.min.js +1 -1
- package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
- package/assets/js/components/form/form.component.min.js +1 -1
- package/assets/js/components/header/header.component.min.js +1 -1
- package/assets/js/components/inline-edit/inline-edit.component.min.js +1 -1
- package/assets/js/components/input/input.component.min.js +1 -1
- package/assets/js/components/input-range/input-range.component.min.js +1 -1
- package/assets/js/components/marketing/marketing.component.min.js +1 -1
- package/assets/js/components/menu/menu.component.min.js +1 -1
- package/assets/js/components/milestone/milestone.component.min.js +1 -1
- package/assets/js/components/milestone-group/milestone-group.component.min.js +1 -1
- package/assets/js/components/modal/modal.component.min.js +1 -1
- package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
- package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +1 -1
- package/assets/js/components/multiselect/multiselect.component.min.js +1 -1
- package/assets/js/components/nav/nav.component.min.js +1 -1
- package/assets/js/components/notification/notification.component.min.js +1 -1
- package/assets/js/components/pagination/pagination.component.min.js +1 -1
- package/assets/js/components/password/password.component.min.js +1 -1
- package/assets/js/components/popover/popover.component.min.js +1 -1
- package/assets/js/components/rank/rank.component.min.js +1 -1
- package/assets/js/components/rankings/rankings.component.min.js +1 -1
- package/assets/js/components/rating/rating.component.min.js +1 -1
- package/assets/js/components/record-card/record-card.component.min.js +1 -1
- package/assets/js/components/search/search.component.min.js +1 -1
- package/assets/js/components/slider/slider.component.min.js +1 -1
- package/assets/js/components/split-button/split-button.component.min.js +1 -1
- package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +1 -1
- package/assets/js/components/std-nav/std-nav.component.min.js +1 -1
- package/assets/js/components/std-nav-standalone/std-nav-standalone.component.min.js +1 -1
- package/assets/js/components/table/table.component.min.js +1 -1
- package/assets/js/components/table-ajax/table-ajax.component.min.js +1 -1
- package/assets/js/components/table-basic/table-basic.component.min.js +1 -1
- package/assets/js/components/table-no-submit/table-no-submit.component.min.js +1 -1
- package/assets/js/components/table-submit/table-submit.component.min.js +1 -1
- package/assets/js/components/tabs/tabs.component.min.js +1 -1
- package/assets/js/components/tag/tag.component.min.js +1 -1
- package/assets/js/components/tooltip/tooltip.component.min.js +1 -1
- package/assets/js/components/video/video.component.min.js +1 -1
- package/assets/js/components/video-card/video-card.component.min.js +1 -1
- package/assets/js/components/video-modal/video-modal.component.min.js +1 -1
- package/assets/js/components/word-count/word-count.component.min.js +1 -1
- package/assets/js/modules/content.js +11 -0
- package/assets/js/scripts.bundle.js +1 -1
- package/assets/js/scripts.bundle.min.js +1 -1
- package/assets/sass/components/carousel.component.scss +0 -640
- package/assets/sass/components/carousel.config.scss +670 -7
- package/assets/sass/foundations/reboot.scss +1 -0
- package/assets/ts/components/carousel/carousel.component.ts +29 -53
- package/assets/ts/components/content/content.component.ts +4 -0
- package/assets/ts/modules/content.ts +17 -0
- package/dist/components.es.js +24 -24
- package/dist/components.umd.js +90 -98
- package/package.json +1 -1
|
@@ -5,37 +5,6 @@ trackComponentRegistered('iam-carousel');
|
|
|
5
5
|
class iamCarousel extends HTMLElement {
|
|
6
6
|
constructor() {
|
|
7
7
|
super();
|
|
8
|
-
this.attachShadow({ mode: 'open' });
|
|
9
|
-
|
|
10
|
-
const assetLocation = document.body.hasAttribute('data-assets-location')
|
|
11
|
-
? document.body.getAttribute('data-assets-location')
|
|
12
|
-
: '/assets';
|
|
13
|
-
|
|
14
|
-
const loadCSS = `@import "${assetLocation}/css/components/carousel.component.css";`;
|
|
15
|
-
|
|
16
|
-
const template = document.createElement('template');
|
|
17
|
-
template.innerHTML = /* HTML */ `
|
|
18
|
-
<style>
|
|
19
|
-
${loadCSS}
|
|
20
|
-
${this.hasAttribute('css') ? `@import "${this.getAttribute('css')}";` : ``}
|
|
21
|
-
</style>
|
|
22
|
-
<div class="carousel-wrapper">
|
|
23
|
-
<div class="carousel" part="carousel">
|
|
24
|
-
<slot></slot>
|
|
25
|
-
</div>
|
|
26
|
-
<div class="carousel__controls"></div>
|
|
27
|
-
<div id="carousel__progress" class="carousel__progress">
|
|
28
|
-
<input type="range" min="0" max="100" value="0" step="1" />
|
|
29
|
-
</div>
|
|
30
|
-
<div id="carousel__progress-sm" class="carousel__progress">
|
|
31
|
-
<input type="range" min="0" max="100" value="0" step="1" />
|
|
32
|
-
</div>
|
|
33
|
-
<div id="carousel__progress-md" class="carousel__progress">
|
|
34
|
-
<input type="range" min="0" max="100" value="0" step="1" />
|
|
35
|
-
</div>
|
|
36
|
-
</div>
|
|
37
|
-
`;
|
|
38
|
-
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
|
39
8
|
}
|
|
40
9
|
|
|
41
10
|
generateThumbnailList = (carouselComponent): any => {
|
|
@@ -78,12 +47,27 @@ class iamCarousel extends HTMLElement {
|
|
|
78
47
|
|
|
79
48
|
connectedCallback(): void {
|
|
80
49
|
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
50
|
+
this.insertAdjacentHTML('beforeend',`
|
|
51
|
+
<div class="carousel__controls">
|
|
52
|
+
<div class="carousel__pips"></div>
|
|
53
|
+
<div class="carousel__progress carousel__progress-xs">
|
|
54
|
+
<input type="range" min="0" max="100" value="0" step="1" />
|
|
55
|
+
</div>
|
|
56
|
+
<div class="carousel__progress carousel__progress-sm">
|
|
57
|
+
<input type="range" min="0" max="100" value="0" step="1" />
|
|
58
|
+
</div>
|
|
59
|
+
<div class="carousel__progress carousel__progress-md">
|
|
60
|
+
<input type="range" min="0" max="100" value="0" step="1" />
|
|
61
|
+
</div>
|
|
62
|
+
</div>
|
|
63
|
+
`)
|
|
64
|
+
|
|
65
|
+
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
66
|
+
const carouselElement = this;
|
|
67
|
+
const carouselProgress = this.querySelector('.carousel__progress-xs [type="range"]');
|
|
68
|
+
const carouselProgressSM = this.querySelector('.carousel__progress-sm [type="range"]');
|
|
69
|
+
const carouselProgressMD = this.querySelector('.carousel__progress-md [type="range"]');
|
|
70
|
+
const itemCount = this.querySelectorAll(':scope > *:not(.carousel__controls)').length;
|
|
87
71
|
const progressPercent = this.progressPercent;
|
|
88
72
|
|
|
89
73
|
let stepperInterval,
|
|
@@ -95,13 +79,10 @@ class iamCarousel extends HTMLElement {
|
|
|
95
79
|
stepperStart = 'touchstart';
|
|
96
80
|
}
|
|
97
81
|
|
|
98
|
-
|
|
99
|
-
carouselElement?.setAttribute('data-smcols',this.getAttribute('data-smcols'));
|
|
100
|
-
carouselElement?.setAttribute('data-mdcols',this.getAttribute('data-mdcols'));
|
|
101
|
-
|
|
82
|
+
|
|
102
83
|
carouselProgress.setAttribute('max', itemCount);
|
|
103
84
|
carouselProgress.style.setProperty('--percent', progressPercent(carouselProgress.value, itemCount));
|
|
104
|
-
|
|
85
|
+
|
|
105
86
|
carouselProgress.addEventListener(stepperStart, () => {
|
|
106
87
|
clearInterval(stepperInterval);
|
|
107
88
|
stepperInterval = setInterval(function () {
|
|
@@ -126,10 +107,9 @@ class iamCarousel extends HTMLElement {
|
|
|
126
107
|
behavior: 'smooth',
|
|
127
108
|
});
|
|
128
109
|
});
|
|
129
|
-
|
|
130
|
-
|
|
110
|
+
|
|
111
|
+
|
|
131
112
|
// SM Progress bar
|
|
132
|
-
|
|
133
113
|
const smStep = this.getAttribute('data-smcols') ? this.getAttribute('data-smcols') : 1;
|
|
134
114
|
const smItemCount = Math.floor(itemCount / smStep) * smStep;
|
|
135
115
|
|
|
@@ -156,8 +136,6 @@ class iamCarousel extends HTMLElement {
|
|
|
156
136
|
carouselProgressSM.style.setProperty('--percent', progressPercent(carouselProgressSM.value, smItemCount));
|
|
157
137
|
const scrollTo = Math.floor((carouselElement.scrollWidth / smItemCount) * carouselProgressSM.value);
|
|
158
138
|
|
|
159
|
-
console.log(carouselProgressSM.value);
|
|
160
|
-
|
|
161
139
|
carouselElement.scrollTo({
|
|
162
140
|
top: 0,
|
|
163
141
|
left: scrollTo,
|
|
@@ -193,8 +171,6 @@ class iamCarousel extends HTMLElement {
|
|
|
193
171
|
carouselProgressMD.style.setProperty('--percent', progressPercent(carouselProgressMD.value, mdItemCount));
|
|
194
172
|
const scrollTo = Math.floor((carouselElement.scrollWidth / mdItemCount) * carouselProgressMD.value);
|
|
195
173
|
|
|
196
|
-
console.log(carouselProgressMD.value);
|
|
197
|
-
|
|
198
174
|
carouselElement.scrollTo({
|
|
199
175
|
top: 0,
|
|
200
176
|
left: scrollTo,
|
|
@@ -204,17 +180,17 @@ class iamCarousel extends HTMLElement {
|
|
|
204
180
|
|
|
205
181
|
|
|
206
182
|
// Thumbnails
|
|
207
|
-
const
|
|
183
|
+
const carouselPips = this.querySelector('.carousel__pips');
|
|
208
184
|
|
|
209
185
|
if (carouselElement.querySelector('[data-thumbnail]')) {
|
|
210
186
|
const thumbnailImages = this.generateThumbnailList(carouselElement);
|
|
211
187
|
carouselElement.classList.add('thumbnails');
|
|
212
|
-
|
|
188
|
+
carouselPips.innerHTML = this.generatePipsHTML(carouselElement, thumbnailImages);
|
|
213
189
|
}
|
|
214
190
|
|
|
215
|
-
|
|
191
|
+
carouselPips.addEventListener('click', (event) => {
|
|
216
192
|
|
|
217
|
-
|
|
193
|
+
carouselPips?.querySelector('[aria-current]')?.removeAttribute('aria-current');
|
|
218
194
|
if(event.target.closest('button[data-slide]')){
|
|
219
195
|
|
|
220
196
|
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
|
|
2
|
+
import { transformButtons } from '../../modules/content';
|
|
3
|
+
|
|
1
4
|
class iamContent extends HTMLElement {
|
|
2
5
|
constructor() {
|
|
3
6
|
super();
|
|
@@ -136,6 +139,7 @@ class iamContent extends HTMLElement {
|
|
|
136
139
|
|
|
137
140
|
fixContent(component);
|
|
138
141
|
registerComponents(component);
|
|
142
|
+
transformButtons(component);
|
|
139
143
|
}
|
|
140
144
|
};
|
|
141
145
|
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export const transformButtons = (component):void => {
|
|
2
|
+
|
|
3
|
+
Array.from(document.querySelectorAll('.wp-block-buttons')).forEach((buttons) => {
|
|
4
|
+
|
|
5
|
+
const fragment = document.createDocumentFragment();
|
|
6
|
+
|
|
7
|
+
Array.from(buttons.querySelectorAll('.wp-block-button')).forEach((element) => {
|
|
8
|
+
|
|
9
|
+
const link = element.querySelector('a');
|
|
10
|
+
link.setAttribute('class',element.getAttribute('class'));
|
|
11
|
+
|
|
12
|
+
fragment.appendChild(link);
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
buttons.parentNode.replaceChild(fragment, buttons);
|
|
16
|
+
});
|
|
17
|
+
}
|