@ptcwebops/ptcw-design 2.1.9 → 2.2.1
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/dist/cjs/author-listing-example.cjs.entry.js +242 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/ptc-background-video.cjs.entry.js +68 -0
- package/dist/cjs/ptc-button.cjs.entry.js +4 -2
- package/dist/cjs/ptc-dynamic-card.cjs.entry.js +2 -2
- package/dist/cjs/{ptc-background-video_2.cjs.entry.js → ptc-img.cjs.entry.js} +0 -62
- package/dist/cjs/ptc-overlay.cjs.entry.js +1 -1
- package/dist/cjs/ptc-span.cjs.entry.js +1 -1
- package/dist/cjs/ptcw-design.cjs.js +1 -1
- package/dist/cjs/sequential-bundle-example.cjs.entry.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/icon-asset/media/designer.svg +5 -0
- package/dist/collection/components/organism-bundles/author-listing-example/author-listing-example.css +69 -0
- package/dist/collection/components/organism-bundles/author-listing-example/author-listing-example.js +281 -0
- package/dist/collection/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.css +2 -2
- package/dist/collection/components/ptc-button/ptc-button.css +25 -0
- package/dist/collection/components/ptc-button/ptc-button.js +7 -5
- package/dist/collection/components/ptc-dynamic-card/ptc-dynamic-card.css +3 -1
- package/dist/collection/components/ptc-dynamic-card/ptc-dynamic-card.js +1 -1
- package/dist/collection/components/ptc-overlay/ptc-overlay.css +8 -0
- package/dist/collection/components/ptc-overlay/ptc-overlay.js +1 -1
- package/dist/collection/components/ptc-span/ptc-span.css +10 -1
- package/dist/collection/stories/Button.stories.js +33 -0
- package/dist/custom-elements/index.d.ts +6 -0
- package/dist/custom-elements/index.js +250 -9
- package/dist/esm/author-listing-example.entry.js +238 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/ptc-background-video.entry.js +64 -0
- package/dist/esm/ptc-button.entry.js +4 -2
- package/dist/esm/ptc-dynamic-card.entry.js +2 -2
- package/dist/esm/{ptc-background-video_2.entry.js → ptc-img.entry.js} +1 -62
- package/dist/esm/ptc-overlay.entry.js +1 -1
- package/dist/esm/ptc-span.entry.js +1 -1
- package/dist/esm/ptcw-design.js +1 -1
- package/dist/esm/sequential-bundle-example.entry.js +1 -1
- package/dist/ptcw-design/media/designer.svg +5 -0
- package/dist/ptcw-design/p-01a83110.entry.js +1 -0
- package/dist/ptcw-design/{p-582022a5.entry.js → p-1fc3d43a.entry.js} +1 -1
- package/dist/ptcw-design/{p-c1c229f8.entry.js → p-56da9ecd.entry.js} +1 -1
- package/dist/ptcw-design/p-85145672.entry.js +1 -0
- package/dist/ptcw-design/p-c4e1b619.entry.js +1 -0
- package/dist/ptcw-design/p-cef9cf82.entry.js +1 -0
- package/dist/ptcw-design/p-cf7dc448.entry.js +1 -0
- package/dist/ptcw-design/p-e8d9a19f.entry.js +1 -0
- package/dist/ptcw-design/ptcw-design.esm.js +1 -1
- package/dist/types/components/organism-bundles/author-listing-example/author-listing-example.d.ts +12 -0
- package/dist/types/components/ptc-button/ptc-button.d.ts +2 -2
- package/dist/types/components/ptc-overlay/ptc-overlay.d.ts +1 -1
- package/dist/types/components.d.ts +23 -4
- package/package.json +1 -1
- package/readme.md +1 -1
- package/dist/ptcw-design/p-000ed892.entry.js +0 -1
- package/dist/ptcw-design/p-4e13bc2e.entry.js +0 -1
- package/dist/ptcw-design/p-81253f39.entry.js +0 -1
- package/dist/ptcw-design/p-d6d25fa7.entry.js +0 -1
package/dist/collection/components/organism-bundles/author-listing-example/author-listing-example.js
ADDED
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
import { h } from '@stencil/core';
|
|
2
|
+
export class AuthorListingExample {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.defaultAuthorImage = undefined;
|
|
5
|
+
this.isLoading = false;
|
|
6
|
+
this.loadedCardCount = 0;
|
|
7
|
+
this.cardsPerLoad = 9;
|
|
8
|
+
this.cardData = [
|
|
9
|
+
{
|
|
10
|
+
id: 1,
|
|
11
|
+
authorName: "Aaron Shaw",
|
|
12
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/Blog_AaronShaw_2.jpg",
|
|
13
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Aaron-Shaw",
|
|
14
|
+
description: "Aaron Shaw joined PTC in 2013, currently he is the Senior Manager, CAD Demand Generation. He is responsible for"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
id: 2,
|
|
18
|
+
authorName: "Abby Eon",
|
|
19
|
+
imageUrl: "https://www.ptc.com/-/media/Images/new-org/399x200/abby-eon-400x200.jpg",
|
|
20
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Abby-Eon",
|
|
21
|
+
description: "Abby Eon is Senior Vice President and General Manager, Kepware. As part of her role, Abby looks after "
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
id: 3,
|
|
25
|
+
authorName: "Catherine Kniker",
|
|
26
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/catherine-kniker.jpg",
|
|
27
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Catherine-Kniker",
|
|
28
|
+
description: "Catherine is EVP and Chief Strategy and Marketing Officer at PTC, responsible for positioning the company for success"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
id: 4,
|
|
32
|
+
authorName: "Maria Lowry, Manager, Kalypso",
|
|
33
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/blog-Maria-Lowry.jpg",
|
|
34
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Maria-Lowry",
|
|
35
|
+
description: "Maria brings seven years of professional experience to her clients. She is committed to improving product quality, safety, sustainability"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
id: 5,
|
|
39
|
+
authorName: "Author name",
|
|
40
|
+
imageUrl: "",
|
|
41
|
+
DetailPagelink: "#",
|
|
42
|
+
description: "Author description text goes here Author description text goes here Author description text goes here Author description text goes here Author description text goes here"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
id: 1,
|
|
46
|
+
authorName: "Aaron Shaw",
|
|
47
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/Blog_AaronShaw_2.jpg",
|
|
48
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Aaron-Shaw",
|
|
49
|
+
description: "Aaron Shaw joined PTC in 2013, currently he is the Senior Manager, CAD Demand Generation. He is responsible for"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
id: 2,
|
|
53
|
+
authorName: "Abby Eon",
|
|
54
|
+
imageUrl: "https://www.ptc.com/-/media/Images/new-org/399x200/abby-eon-400x200.jpg",
|
|
55
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Abby-Eon",
|
|
56
|
+
description: "Abby Eon is Senior Vice President and General Manager, Kepware. As part of her role, Abby looks after "
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
id: 3,
|
|
60
|
+
authorName: "Catherine Kniker",
|
|
61
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/catherine-kniker.jpg",
|
|
62
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Catherine-Kniker",
|
|
63
|
+
description: "Catherine is EVP and Chief Strategy and Marketing Officer at PTC, responsible for positioning the company for success"
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
id: 4,
|
|
67
|
+
authorName: "Maria Lowry, Manager, Kalypso",
|
|
68
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/blog-Maria-Lowry.jpg",
|
|
69
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Maria-Lowry",
|
|
70
|
+
description: "Maria brings seven years of professional experience to her clients. She is committed to improving product quality, safety, sustainability"
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
id: 5,
|
|
74
|
+
authorName: "Author name",
|
|
75
|
+
imageUrl: "",
|
|
76
|
+
DetailPagelink: "#",
|
|
77
|
+
description: "Author description text goes here Author description text goes here Author description text goes here Author description text goes here Author description text goes here"
|
|
78
|
+
}, {
|
|
79
|
+
id: 6,
|
|
80
|
+
authorName: "Aaron Shaw",
|
|
81
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/Blog_AaronShaw_2.jpg",
|
|
82
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Aaron-Shaw",
|
|
83
|
+
description: "Aaron Shaw joined PTC in 2013, currently he is the Senior Manager, CAD Demand Generation. He is responsible for"
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
id: 7,
|
|
87
|
+
authorName: "Abby Eon",
|
|
88
|
+
imageUrl: "https://www.ptc.com/-/media/Images/new-org/399x200/abby-eon-400x200.jpg",
|
|
89
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Abby-Eon",
|
|
90
|
+
description: "Abby Eon is Senior Vice President and General Manager, Kepware. As part of her role, Abby looks after "
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
id: 8,
|
|
94
|
+
authorName: "Catherine Kniker",
|
|
95
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/catherine-kniker.jpg",
|
|
96
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Catherine-Kniker",
|
|
97
|
+
description: "Catherine is EVP and Chief Strategy and Marketing Officer at PTC, responsible for positioning the company for success"
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
id: 9,
|
|
101
|
+
authorName: "Maria Lowry, Manager, Kalypso",
|
|
102
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/blog-Maria-Lowry.jpg",
|
|
103
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Maria-Lowry",
|
|
104
|
+
description: "Maria brings seven years of professional experience to her clients. She is committed to improving product quality, safety, sustainability"
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
id: 10,
|
|
108
|
+
authorName: "Author name",
|
|
109
|
+
imageUrl: "",
|
|
110
|
+
DetailPagelink: "#",
|
|
111
|
+
description: "Author description text goes here Author description text goes here Author description text goes here Author description text goes here Author description text goes here"
|
|
112
|
+
}, {
|
|
113
|
+
id: 11,
|
|
114
|
+
authorName: "Aaron Shaw",
|
|
115
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/Blog_AaronShaw_2.jpg",
|
|
116
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Aaron-Shaw",
|
|
117
|
+
description: "Aaron Shaw joined PTC in 2013, currently he is the Senior Manager, CAD Demand Generation. He is responsible for"
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
id: 12,
|
|
121
|
+
authorName: "Abby Eon",
|
|
122
|
+
imageUrl: "https://www.ptc.com/-/media/Images/new-org/399x200/abby-eon-400x200.jpg",
|
|
123
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Abby-Eon",
|
|
124
|
+
description: "Abby Eon is Senior Vice President and General Manager, Kepware. As part of her role, Abby looks after "
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
id: 13,
|
|
128
|
+
authorName: "Catherine Kniker",
|
|
129
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/catherine-kniker.jpg",
|
|
130
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Catherine-Kniker",
|
|
131
|
+
description: "Catherine is EVP and Chief Strategy and Marketing Officer at PTC, responsible for positioning the company for success"
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
id: 14,
|
|
135
|
+
authorName: "Maria Lowry, Manager, Kalypso",
|
|
136
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/blog-Maria-Lowry.jpg",
|
|
137
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Maria-Lowry",
|
|
138
|
+
description: "Maria brings seven years of professional experience to her clients. She is committed to improving product quality, safety, sustainability"
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
id: 15,
|
|
142
|
+
authorName: "Author name",
|
|
143
|
+
imageUrl: "",
|
|
144
|
+
DetailPagelink: "#",
|
|
145
|
+
description: "Author description text goes here Author description text goes here Author description text goes here Author description text goes here Author description text goes here"
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
id: 16,
|
|
149
|
+
authorName: "Aaron Shaw",
|
|
150
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/Blog_AaronShaw_2.jpg",
|
|
151
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Aaron-Shaw",
|
|
152
|
+
description: "Aaron Shaw joined PTC in 2013, currently he is the Senior Manager, CAD Demand Generation. He is responsible for"
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
id: 17,
|
|
156
|
+
authorName: "Abby Eon",
|
|
157
|
+
imageUrl: "https://www.ptc.com/-/media/Images/new-org/399x200/abby-eon-400x200.jpg",
|
|
158
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Abby-Eon",
|
|
159
|
+
description: "Abby Eon is Senior Vice President and General Manager, Kepware. As part of her role, Abby looks after "
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
id: 18,
|
|
163
|
+
authorName: "Catherine Kniker",
|
|
164
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/catherine-kniker.jpg",
|
|
165
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Catherine-Kniker",
|
|
166
|
+
description: "Catherine is EVP and Chief Strategy and Marketing Officer at PTC, responsible for positioning the company for success"
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
id: 19,
|
|
170
|
+
authorName: "Maria Lowry, Manager, Kalypso",
|
|
171
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/blog-Maria-Lowry.jpg",
|
|
172
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Maria-Lowry",
|
|
173
|
+
description: "Maria brings seven years of professional experience to her clients. She is committed to improving product quality, safety, sustainability"
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
id: 20,
|
|
177
|
+
authorName: "Author name",
|
|
178
|
+
imageUrl: "",
|
|
179
|
+
DetailPagelink: "#",
|
|
180
|
+
description: "Author description text goes here Author description text goes here Author description text goes here Author description text goes here Author description text goes here"
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
id: 21,
|
|
184
|
+
authorName: "Catherine Kniker",
|
|
185
|
+
imageUrl: "https://www.ptc.com/-/media/Images/blog/Authors/catherine-kniker.jpg",
|
|
186
|
+
DetailPagelink: "https://www.ptc.com/en/blog-authors/Catherine-Kniker",
|
|
187
|
+
description: "Catherine is EVP and Chief Strategy and Marketing Officer at PTC, responsible for positioning the company for success"
|
|
188
|
+
},
|
|
189
|
+
];
|
|
190
|
+
}
|
|
191
|
+
componentDidLoad() {
|
|
192
|
+
this.loadMoreCards();
|
|
193
|
+
}
|
|
194
|
+
handleScroll() {
|
|
195
|
+
const windowHeight = window.innerHeight;
|
|
196
|
+
const documentHeight = document.documentElement.scrollHeight;
|
|
197
|
+
const scrollTop = window.pageYOffset || document.documentElement.scrollTop;
|
|
198
|
+
const scrollBottom = scrollTop + windowHeight;
|
|
199
|
+
if (!this.isLoading && scrollBottom >= documentHeight) {
|
|
200
|
+
this.loadMoreCards();
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
async loadMoreCards() {
|
|
204
|
+
if (this.loadedCardCount < this.cardData.length) {
|
|
205
|
+
this.isLoading = true;
|
|
206
|
+
const visibleCardData = this.cardData.slice(this.loadedCardCount, this.loadedCardCount + this.cardsPerLoad);
|
|
207
|
+
const promises = visibleCardData.map((card) => {
|
|
208
|
+
return new Promise((resolve) => {
|
|
209
|
+
const image = new Image();
|
|
210
|
+
image.src = card.imageUrl;
|
|
211
|
+
image.onload = () => {
|
|
212
|
+
resolve();
|
|
213
|
+
};
|
|
214
|
+
image.onerror = () => {
|
|
215
|
+
// Load a dummy image in case of error
|
|
216
|
+
card.imageUrl = this.defaultAuthorImage;
|
|
217
|
+
resolve();
|
|
218
|
+
};
|
|
219
|
+
});
|
|
220
|
+
});
|
|
221
|
+
await Promise.all(promises);
|
|
222
|
+
this.loadedCardCount += this.cardsPerLoad;
|
|
223
|
+
this.isLoading = false;
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
render() {
|
|
227
|
+
const visibleCards = this.cardData.slice(0, this.loadedCardCount);
|
|
228
|
+
return (h("div", null, h("div", { class: "author-grid" }, visibleCards.map((card, index) => (h("div", { class: "author-col", key: index }, h("ptc-card", { "has-image": "true", "card-type": "related-card", "card-href": card.DetailPagelink, heading: card.authorName }, h("ptc-img", { slot: "slot-image", "img-url": card.imageUrl, "image-type": "smart-img", "load-mode": "lazy-bg" }), h("div", { slot: "slot-description" }, h("ptc-para", { "font-size": "x-small", "font-weight": "w-4", "para-line-h": "line-height-densest", "para-margin": "margin-flush", "para-z-index": "z-auto" }, h("ptc-tooltip", { description: card.description, "text-lines": "4", "z-index": "z-auto" })))))))), this.isLoading && h("div", { class: "loader" }, h("svg", { preserveAspectRatio: "xMinYMin meet", fill: "#3CC73D", x: "0px", y: "0px", version: "1.1", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 182.1 210.2" }, h("title", null, "list-loading"), h("path", { d: "M91,21.2l72.6,41.9v83.9L91,189l-72.6-41.9V63.2L91,21.2 M91,0L0,52.6v105.1l91,52.6l91-52.6V52.6L91,0L91,0z" }), h("g", null, h("polygon", { points: "67.5,105.5 67.5,163.1 67.5,165.4 43.9,151.8 43.9,149.4 43.9,100" }), h("polygon", { opacity: "0.7", points: "43.6,100.1 43.8,100 43.9,100 43.9,149.4 43.9,149.4 43.9,151.8 30.3,144 30.3,141.6 30.3,106.6" }), h("animate", { attributeName: "fill-opacity", begin: "100ms", dur: "1s", values: "1;.2;1", calcMode: "linear", repeatCount: "indefinite" })), h("g", null, h("polygon", { points: "109.6,88.6 109.6,166.2 109.6,168.3 91,179 81.1,173.3 81.1,170.9 81.1,84.2" }), h("polygon", { opacity: "0.7", points: "81.1,84.2 81.1,170.9 81.1,173.3 67.5,165.4 67.5,163.1 67.5,105.5" }), h("animate", { attributeName: "fill-opacity", begin: "300ms", dur: "1s", values: "1;.2;1", calcMode: "linear", repeatCount: "indefinite" })), h("g", null, h("polygon", { points: "154,70.2 154,70.2 154,142.7 122.9,160.5 122.9,158.5 122.9,65.8" }), h("polygon", { opacity: "0.7", points: "122.9,65.8 122.9,158.5 122.9,160.5 109.6,168.3 109.6,168.3 109.6,166.2 109.6,88.6" }), h("animate", { attributeName: "fill-opacity", begin: "500ms", dur: "1s", values: "1;.2;1", calcMode: "linear", repeatCount: "indefinite" }))))));
|
|
229
|
+
}
|
|
230
|
+
static get is() { return "author-listing-example"; }
|
|
231
|
+
static get encapsulation() { return "shadow"; }
|
|
232
|
+
static get originalStyleUrls() {
|
|
233
|
+
return {
|
|
234
|
+
"$": ["author-listing-example.css"]
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
static get styleUrls() {
|
|
238
|
+
return {
|
|
239
|
+
"$": ["author-listing-example.css"]
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
static get properties() {
|
|
243
|
+
return {
|
|
244
|
+
"defaultAuthorImage": {
|
|
245
|
+
"type": "string",
|
|
246
|
+
"mutable": false,
|
|
247
|
+
"complexType": {
|
|
248
|
+
"original": "string",
|
|
249
|
+
"resolved": "string",
|
|
250
|
+
"references": {}
|
|
251
|
+
},
|
|
252
|
+
"required": false,
|
|
253
|
+
"optional": false,
|
|
254
|
+
"docs": {
|
|
255
|
+
"tags": [],
|
|
256
|
+
"text": ""
|
|
257
|
+
},
|
|
258
|
+
"attribute": "default-author-image",
|
|
259
|
+
"reflect": false
|
|
260
|
+
}
|
|
261
|
+
};
|
|
262
|
+
}
|
|
263
|
+
static get states() {
|
|
264
|
+
return {
|
|
265
|
+
"isLoading": {},
|
|
266
|
+
"loadedCardCount": {},
|
|
267
|
+
"cardsPerLoad": {},
|
|
268
|
+
"cardData": {}
|
|
269
|
+
};
|
|
270
|
+
}
|
|
271
|
+
static get elementRef() { return "el"; }
|
|
272
|
+
static get listeners() {
|
|
273
|
+
return [{
|
|
274
|
+
"name": "scroll",
|
|
275
|
+
"method": "handleScroll",
|
|
276
|
+
"target": "window",
|
|
277
|
+
"capture": false,
|
|
278
|
+
"passive": true
|
|
279
|
+
}];
|
|
280
|
+
}
|
|
281
|
+
}
|
|
@@ -19,6 +19,31 @@ button {
|
|
|
19
19
|
padding: 9.4px 17.5px;
|
|
20
20
|
border-radius: var(--ptc-border-radius-standard);
|
|
21
21
|
}
|
|
22
|
+
button.reveal-down .content {
|
|
23
|
+
transition: opacity var(--ptc-transition-medium) var(--ptc-ease-out);
|
|
24
|
+
opacity: 0;
|
|
25
|
+
font-size: var(--ptc-font-size-xx-small);
|
|
26
|
+
}
|
|
27
|
+
button.reveal-down .icon-wrapper {
|
|
28
|
+
position: relative;
|
|
29
|
+
display: flex;
|
|
30
|
+
align-items: center;
|
|
31
|
+
justify-content: center;
|
|
32
|
+
align-content: center;
|
|
33
|
+
height: 16px;
|
|
34
|
+
}
|
|
35
|
+
button.reveal-down .icon-wrapper .icon {
|
|
36
|
+
transition: top var(--ptc-transition-fast) var(--ptc-ease-out);
|
|
37
|
+
position: absolute;
|
|
38
|
+
display: inline-block;
|
|
39
|
+
top: -12px;
|
|
40
|
+
}
|
|
41
|
+
button:hover.reveal-down .content {
|
|
42
|
+
opacity: 1;
|
|
43
|
+
}
|
|
44
|
+
button:hover.reveal-down .icon-wrapper .icon {
|
|
45
|
+
top: 4px;
|
|
46
|
+
}
|
|
22
47
|
button.animation-right ::slotted([slot=slot-after-text]),
|
|
23
48
|
button.animation-right ::slotted([slot=slot-before-text]), button.animation-down ::slotted([slot=slot-after-text]),
|
|
24
49
|
button.animation-down ::slotted([slot=slot-before-text]) {
|
|
@@ -21,7 +21,9 @@ export class PtcButton {
|
|
|
21
21
|
render() {
|
|
22
22
|
const classMap = this.getCssClassMap();
|
|
23
23
|
const Tag = !!this.linkHref ? 'a' : 'button';
|
|
24
|
-
return (h(Host, null, this.styles && h("style", null, this.styles), h(Tag, Object.assign({ class: classMap, onClick: this.clickEventHandler.bind(this) }, (!!this.linkHref ? { href: this.linkHref } : {}), (!this.linkHref ? { type: this.type } : {}), (!!this.target && !!this.linkHref ? { target: this.target } : {}), (!!this.rel && !!this.linkHref ? { rel: this.rel } : {}), (!!this.linkHref ? { title: this.linkTitle ? this.linkTitle : this.linkHref } : {}), (!!this.tabNav ? { tabindex: -1 } : { tabindex: 0 })),
|
|
24
|
+
return (h(Host, null, this.styles && h("style", null, this.styles), h(Tag, Object.assign({ class: classMap, onClick: this.clickEventHandler.bind(this) }, (!!this.linkHref ? { href: this.linkHref } : {}), (!this.linkHref ? { type: this.type } : {}), (!!this.target && !!this.linkHref ? { target: this.target } : {}), (!!this.rel && !!this.linkHref ? { rel: this.rel } : {}), (!!this.linkHref ? { title: this.linkTitle ? this.linkTitle : this.linkHref } : {}), (!!this.tabNav ? { tabindex: -1 } : { tabindex: 0 })), this.iconAnimation == 'reveal-down' ?
|
|
25
|
+
h("span", null, h("div", { class: "content" }, h("slot", null)), h("div", { class: "icon-wrapper" }, h("div", { class: "icon" }, h("slot", { name: "slot-after-text" })))) :
|
|
26
|
+
h("span", null, h("slot", { name: "slot-before-text" }), h("slot", null), h("slot", { name: "slot-after-text" })))));
|
|
25
27
|
}
|
|
26
28
|
getCssClassMap() {
|
|
27
29
|
return {
|
|
@@ -123,8 +125,8 @@ export class PtcButton {
|
|
|
123
125
|
"type": "string",
|
|
124
126
|
"mutable": false,
|
|
125
127
|
"complexType": {
|
|
126
|
-
"original": "'animation-right' | 'animation-down' | ''",
|
|
127
|
-
"resolved": "\"\" | \"animation-down\" | \"animation-right\"",
|
|
128
|
+
"original": "'animation-right' | 'animation-down' | 'reveal-down' | ''",
|
|
129
|
+
"resolved": "\"\" | \"animation-down\" | \"animation-right\" | \"reveal-down\"",
|
|
128
130
|
"references": {}
|
|
129
131
|
},
|
|
130
132
|
"required": false,
|
|
@@ -141,8 +143,8 @@ export class PtcButton {
|
|
|
141
143
|
"type": "string",
|
|
142
144
|
"mutable": false,
|
|
143
145
|
"complexType": {
|
|
144
|
-
"original": "'icon-left' | 'icon-right'",
|
|
145
|
-
"resolved": "\"icon-left\" | \"icon-right\"",
|
|
146
|
+
"original": "'icon-left' | 'icon-right' | 'none'",
|
|
147
|
+
"resolved": "\"icon-left\" | \"icon-right\" | \"none\"",
|
|
146
148
|
"references": {}
|
|
147
149
|
},
|
|
148
150
|
"required": false,
|
|
@@ -16,14 +16,16 @@
|
|
|
16
16
|
:host(.sequential) .card-mobile ptc-card-content, :host(.sequential) .card-dt-open ptc-card-content {
|
|
17
17
|
display: flex;
|
|
18
18
|
flex-basis: 38%;
|
|
19
|
-
justify-content:
|
|
19
|
+
justify-content: flex-start;
|
|
20
20
|
align-items: center;
|
|
21
21
|
padding: var(--ptc-element-spacing-06) var(--ptc-element-spacing-06) var(--ptc-element-spacing-07) var(--ptc-element-spacing-06);
|
|
22
|
+
height: unset;
|
|
22
23
|
}
|
|
23
24
|
@media only screen and (min-width: 1440px) {
|
|
24
25
|
:host(.sequential) .card-mobile ptc-card-content, :host(.sequential) .card-dt-open ptc-card-content {
|
|
25
26
|
padding-left: var(--ptc-element-spacing-08);
|
|
26
27
|
padding-right: var(--ptc-element-spacing-08);
|
|
28
|
+
padding-top: var(--ptc-element-spacing-07);
|
|
27
29
|
}
|
|
28
30
|
}
|
|
29
31
|
:host(.sequential) .card-mobile ptc-picture, :host(.sequential) .card-dt-open ptc-picture {
|
|
@@ -22,7 +22,7 @@ export class PtcDynamicCard {
|
|
|
22
22
|
}
|
|
23
23
|
else if (this.cardScreen === 'desktop' && !this.isExpanded) {
|
|
24
24
|
return [
|
|
25
|
-
h("div", { class: "card card-dt-closed" }, h("ptc-picture", { alt: this.cardImgAlt, src: this.cardImgSrc, "image-position": "relative", "is-full-width": true, height: "424" }, this.overlayExists ? h("ptc-overlay", { "filter-color": "black-
|
|
25
|
+
h("div", { class: "card card-dt-closed" }, h("ptc-picture", { alt: this.cardImgAlt, src: this.cardImgSrc, "image-position": "relative", "is-full-width": true, height: "424" }, this.overlayExists ? h("ptc-overlay", { "filter-color": "solid-black-1" }) : h("ptc-overlay", { "filter-color": "solid-black-2" })), h("div", { class: "closed-content", "card-type": "card-dynamic" }, h("div", { class: "card-title" }, h("h2", null, this.cardTitle)))),
|
|
26
26
|
];
|
|
27
27
|
}
|
|
28
28
|
else {
|
|
@@ -77,6 +77,14 @@
|
|
|
77
77
|
background: linear-gradient(180deg, rgba(97, 116, 128, 0.72) 0%, rgba(97, 116, 128, 0.85) 69.27%, rgba(97, 116, 128, 0.4) 100%);
|
|
78
78
|
}
|
|
79
79
|
|
|
80
|
+
:host(.solid-black-1) {
|
|
81
|
+
background: rgba(16, 19, 20, 0.85);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
:host(.solid-black-2) {
|
|
85
|
+
background: rgba(16, 19, 20, 0.7);
|
|
86
|
+
}
|
|
87
|
+
|
|
80
88
|
:host(.radius-standard) {
|
|
81
89
|
border-radius: var(--ptc-border-radius-standard);
|
|
82
90
|
}
|
|
@@ -38,7 +38,7 @@ export class PtcOverlay {
|
|
|
38
38
|
"type": "string",
|
|
39
39
|
"mutable": false,
|
|
40
40
|
"complexType": {
|
|
41
|
-
"original": "| 'blue'\r\n | 'red'\r\n | 'orange'\r\n | 'green'\r\n | 'black-1'\r\n | 'black-2'\r\n | 'black-3'\r\n | 'black-4'\r\n | 'black-5'\r\n | 'slate-grey'\r\n | 'bright-blue'\r\n | 'bright-red'\r\n | 'bright-orange'\r\n | 'bright-green'\r\n | 'bright-slate-grey'\r\n | string",
|
|
41
|
+
"original": "| 'blue'\r\n | 'red'\r\n | 'orange'\r\n | 'green'\r\n | 'black-1'\r\n | 'black-2'\r\n | 'black-3'\r\n | 'black-4'\r\n | 'black-5'\r\n | 'slate-grey'\r\n | 'bright-blue'\r\n | 'bright-red'\r\n | 'bright-orange'\r\n | 'bright-green'\r\n | 'bright-slate-grey'\r\n | 'solid-black-1'\r\n | 'solid-black-2'\r\n | string",
|
|
42
42
|
"resolved": "string",
|
|
43
43
|
"references": {}
|
|
44
44
|
},
|
|
@@ -48,7 +48,8 @@
|
|
|
48
48
|
}
|
|
49
49
|
|
|
50
50
|
:host(.three-column-report) span {
|
|
51
|
-
font-size: var(--ptc-font-size-
|
|
51
|
+
font-size: var(--ptc-font-size-medium);
|
|
52
|
+
line-height: var(--ptc-line-height-densest);
|
|
52
53
|
}
|
|
53
54
|
|
|
54
55
|
:host(.blog-tag) span {
|
|
@@ -106,12 +107,20 @@
|
|
|
106
107
|
}
|
|
107
108
|
|
|
108
109
|
@media only screen and (min-width: 360px) {
|
|
110
|
+
:host(.three-column-report) span {
|
|
111
|
+
font-size: var(--ptc-font-size-large);
|
|
112
|
+
line-height: var(--ptc-line-height-densest);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
@media only screen and (min-width: 480px) {
|
|
109
116
|
:host(.three-column-report) span {
|
|
110
117
|
font-size: var(--ptc-font-size-x-large);
|
|
118
|
+
line-height: var(--ptc-line-height-densest);
|
|
111
119
|
}
|
|
112
120
|
}
|
|
113
121
|
@media only screen and (min-width: 768px) {
|
|
114
122
|
:host(.three-column-report) span {
|
|
115
123
|
font-size: var(--ptc-font-size-xx-large);
|
|
124
|
+
line-height: var(--ptc-line-height-densest);
|
|
116
125
|
}
|
|
117
126
|
}
|
|
@@ -56,6 +56,18 @@ export default {
|
|
|
56
56
|
description: 'Button type',
|
|
57
57
|
defaultValue: { summary: 'button' },
|
|
58
58
|
options: [ 'button', 'link', 'reset', 'submit' ]
|
|
59
|
+
},
|
|
60
|
+
iconAnimation: {
|
|
61
|
+
control: 'select',
|
|
62
|
+
description: "Icon animation on hover type, requires a icon-asset element to be slotted to the 'slot-after-text' or 'slot-before-text' slots",
|
|
63
|
+
defaultValue: { summary: 'reveal-down' },
|
|
64
|
+
options: [ 'animation-right', 'animation-down', 'reveal-down' ]
|
|
65
|
+
},
|
|
66
|
+
iconPosition: {
|
|
67
|
+
control: 'select',
|
|
68
|
+
description: "Icon position on hover type, requires a icon-asset element to be slotted to the 'slot-after-text' or 'slot-before-text' slots",
|
|
69
|
+
defaultValue: { summary: 'none' },
|
|
70
|
+
options: [ 'icon-right', 'icon-left', 'none' ]
|
|
59
71
|
}
|
|
60
72
|
}
|
|
61
73
|
};
|
|
@@ -84,4 +96,25 @@ Example.args = {
|
|
|
84
96
|
target: '_self',
|
|
85
97
|
textAlign: 'undefined',
|
|
86
98
|
type: 'button'
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
const IconTemplate = args => { return html `<ptc-button
|
|
102
|
+
color=${args.color}
|
|
103
|
+
disabled=${args.disabled}
|
|
104
|
+
tab-nav=${args.tabNav}
|
|
105
|
+
text-align=${args.textAlign}
|
|
106
|
+
type=${args.type}
|
|
107
|
+
icon-animation=${args.iconAnimation}
|
|
108
|
+
icon-position=${args.iconPosition}
|
|
109
|
+
>Download<icon-asset slot="slot-after-text" class="is-centered" size="medium" type="ptc" name="download-arrow-2" color="white"></icon-asset></ptc-button>`;}
|
|
110
|
+
|
|
111
|
+
export const IconExample = IconTemplate.bind({});
|
|
112
|
+
|
|
113
|
+
IconExample.args = {
|
|
114
|
+
color: 'ptc-quaternary',
|
|
115
|
+
disabled: 'false',
|
|
116
|
+
tabNav: '0',
|
|
117
|
+
textAlign: 'undefined',
|
|
118
|
+
type: 'button',
|
|
119
|
+
iconAnimation: 'reveal-down',
|
|
87
120
|
}
|
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
import type { Components, JSX } from "../types/global";
|
|
4
4
|
|
|
5
|
+
interface AuthorListingExample extends Components.AuthorListingExample, HTMLElement {}
|
|
6
|
+
export const AuthorListingExample: {
|
|
7
|
+
prototype: AuthorListingExample;
|
|
8
|
+
new (): AuthorListingExample;
|
|
9
|
+
};
|
|
10
|
+
|
|
5
11
|
interface BundleExample extends Components.BundleExample, HTMLElement {}
|
|
6
12
|
export const BundleExample: {
|
|
7
13
|
prototype: BundleExample;
|