@progressive-development/pd-content 1.0.3 → 1.1.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/index.d.ts +2 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -4
- package/dist/node_modules/.pnpm/@codemirror_autocomplete@6.20.1/node_modules/@codemirror/autocomplete/dist/index.js +550 -0
- package/dist/node_modules/.pnpm/@codemirror_lang-css@6.3.1/node_modules/@codemirror/lang-css/dist/index.js +264 -0
- package/dist/node_modules/.pnpm/@codemirror_lang-html@6.4.11/node_modules/@codemirror/lang-html/dist/index.js +661 -0
- package/dist/node_modules/.pnpm/@codemirror_lang-java@6.0.2/node_modules/@codemirror/lang-java/dist/index.js +44 -0
- package/dist/node_modules/.pnpm/@codemirror_lang-javascript@6.2.5/node_modules/@codemirror/lang-javascript/dist/index.js +346 -0
- package/dist/node_modules/.pnpm/@codemirror_lang-json@6.0.2/node_modules/@codemirror/lang-json/dist/index.js +32 -0
- package/dist/node_modules/.pnpm/@codemirror_lang-markdown@6.5.0/node_modules/@codemirror/lang-markdown/dist/index.js +492 -0
- package/dist/node_modules/.pnpm/@codemirror_lang-python@6.2.1/node_modules/@codemirror/lang-python/dist/index.js +308 -0
- package/dist/node_modules/.pnpm/@codemirror_language@6.12.3/node_modules/@codemirror/language/dist/index.js +1572 -0
- package/dist/node_modules/.pnpm/@codemirror_state@6.6.0/node_modules/@codemirror/state/dist/index.js +3881 -0
- package/dist/node_modules/.pnpm/@codemirror_view@6.40.0/node_modules/@codemirror/view/dist/index.js +9657 -0
- package/dist/node_modules/.pnpm/@lezer_common@1.5.1/node_modules/@lezer/common/dist/index.js +2196 -0
- package/dist/node_modules/.pnpm/@lezer_css@1.3.3/node_modules/@lezer/css/dist/index.js +147 -0
- package/dist/node_modules/.pnpm/@lezer_highlight@1.2.3/node_modules/@lezer/highlight/dist/index.js +898 -0
- package/dist/node_modules/.pnpm/@lezer_html@1.3.13/node_modules/@lezer/html/dist/index.js +349 -0
- package/dist/node_modules/.pnpm/@lezer_java@1.1.3/node_modules/@lezer/java/dist/index.js +67 -0
- package/dist/node_modules/.pnpm/@lezer_javascript@1.5.4/node_modules/@lezer/javascript/dist/index.js +192 -0
- package/dist/node_modules/.pnpm/@lezer_json@1.0.3/node_modules/@lezer/json/dist/index.js +37 -0
- package/dist/node_modules/.pnpm/@lezer_lr@1.4.8/node_modules/@lezer/lr/dist/index.js +1884 -0
- package/dist/node_modules/.pnpm/@lezer_markdown@1.6.3/node_modules/@lezer/markdown/dist/index.js +2335 -0
- package/dist/node_modules/.pnpm/@lezer_python@1.1.18/node_modules/@lezer/python/dist/index.js +326 -0
- package/dist/node_modules/.pnpm/@marijn_find-cluster-break@1.0.2/node_modules/@marijn/find-cluster-break/src/index.js +82 -0
- package/dist/node_modules/.pnpm/style-mod@4.1.3/node_modules/style-mod/src/style-mod.js +174 -0
- package/dist/node_modules/.pnpm/w3c-keyname@2.2.8/node_modules/w3c-keyname/index.js +121 -0
- package/dist/pd-badge-order/PdBadgeItem.d.ts +11 -0
- package/dist/pd-badge-order/PdBadgeItem.d.ts.map +1 -1
- package/dist/pd-badge-order/PdBadgeItem.js +162 -10
- package/dist/pd-badge-order/PdBadgeOrder.d.ts +56 -17
- package/dist/pd-badge-order/PdBadgeOrder.d.ts.map +1 -1
- package/dist/pd-badge-order/PdBadgeOrder.js +308 -153
- package/dist/pd-badge-order/types.js +3 -1
- package/dist/pd-code-snippet/PdCodeSnippet.d.ts +29 -0
- package/dist/pd-code-snippet/PdCodeSnippet.d.ts.map +1 -1
- package/dist/pd-code-snippet/PdCodeSnippet.js +117 -67
- package/dist/pd-code-snippet/codemirror-setup.d.ts +10 -0
- package/dist/pd-code-snippet/codemirror-setup.d.ts.map +1 -0
- package/dist/pd-code-snippet/codemirror-setup.js +101 -0
- package/dist/pd-loading-state/PdLoadingState.d.ts +4 -1
- package/dist/pd-loading-state/PdLoadingState.d.ts.map +1 -1
- package/dist/pd-loading-state/pd-loading-state.d.ts +1 -1
- package/dist/pd-loading-state/pd-loading-state.d.ts.map +1 -1
- package/dist/pd-loading-state/pd-logo-loader.js +2 -2
- package/dist/pd-more-info/PdMoreInfo.d.ts +52 -4
- package/dist/pd-more-info/PdMoreInfo.d.ts.map +1 -1
- package/dist/pd-more-info/PdMoreInfo.js +146 -24
- package/dist/pd-notice-box/PdNoticeBox.d.ts +8 -1
- package/dist/pd-notice-box/PdNoticeBox.d.ts.map +1 -1
- package/dist/pd-notice-box/PdNoticeBox.js +41 -2
- package/dist/pd-panel-viewer/PdPanel.d.ts +3 -0
- package/dist/pd-panel-viewer/PdPanel.d.ts.map +1 -1
- package/dist/pd-panel-viewer/PdPanel.js +8 -1
- package/dist/pd-panel-viewer/PdPanelViewer.d.ts +3 -0
- package/dist/pd-panel-viewer/PdPanelViewer.d.ts.map +1 -1
- package/dist/pd-panel-viewer/PdPanelViewer.js +59 -26
- package/dist/pd-tab/PdTab.d.ts +8 -5
- package/dist/pd-tab/PdTab.d.ts.map +1 -1
- package/dist/pd-tab/PdTab.js +110 -56
- package/dist/pd-timeline/PdTimeline.d.ts +2 -0
- package/dist/pd-timeline/PdTimeline.d.ts.map +1 -1
- package/dist/pd-timeline/PdTimeline.js +50 -19
- package/dist/types.d.ts +2 -2
- package/dist/types.d.ts.map +1 -1
- package/package.json +16 -8
- package/dist/pd-gallery/PdGallery.d.ts +0 -72
- package/dist/pd-gallery/PdGallery.d.ts.map +0 -1
- package/dist/pd-gallery/PdGallery.js +0 -660
- package/dist/pd-gallery/PdGalleryLightbox.d.ts +0 -53
- package/dist/pd-gallery/PdGalleryLightbox.d.ts.map +0 -1
- package/dist/pd-gallery/PdGalleryLightbox.js +0 -530
- package/dist/pd-gallery/index.d.ts +0 -4
- package/dist/pd-gallery/index.d.ts.map +0 -1
- package/dist/pd-gallery/pd-gallery-lightbox.d.ts +0 -3
- package/dist/pd-gallery/pd-gallery-lightbox.d.ts.map +0 -1
- package/dist/pd-gallery/pd-gallery.d.ts +0 -3
- package/dist/pd-gallery/pd-gallery.d.ts.map +0 -1
- package/dist/pd-gallery/types.d.ts +0 -23
- package/dist/pd-gallery/types.d.ts.map +0 -1
- package/dist/pd-gallery-lightbox.d.ts +0 -2
- package/dist/pd-gallery-lightbox.js +0 -8
- package/dist/pd-gallery.d.ts +0 -2
- package/dist/pd-gallery.js +0 -8
package/dist/pd-tab/PdTab.js
CHANGED
|
@@ -15,6 +15,7 @@ class PdTab extends LitElement {
|
|
|
15
15
|
constructor() {
|
|
16
16
|
super(...arguments);
|
|
17
17
|
this.tabs = [];
|
|
18
|
+
this.orientation = "horizontal";
|
|
18
19
|
this._resizeObserver = null;
|
|
19
20
|
}
|
|
20
21
|
static {
|
|
@@ -32,6 +33,17 @@ class PdTab extends LitElement {
|
|
|
32
33
|
--_icon-size: var(--pd-tab-icon-size, 1.125em);
|
|
33
34
|
}
|
|
34
35
|
|
|
36
|
+
/* --- Wrapper --- */
|
|
37
|
+
.tab-wrapper {
|
|
38
|
+
display: flex;
|
|
39
|
+
flex-direction: column;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
:host([orientation="vertical"]) .tab-wrapper {
|
|
43
|
+
flex-direction: row;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/* --- Header container --- */
|
|
35
47
|
.header-container {
|
|
36
48
|
display: flex;
|
|
37
49
|
flex-wrap: nowrap;
|
|
@@ -39,6 +51,12 @@ class PdTab extends LitElement {
|
|
|
39
51
|
font-size: var(--_font-size);
|
|
40
52
|
}
|
|
41
53
|
|
|
54
|
+
:host([orientation="vertical"]) .header-container {
|
|
55
|
+
flex-direction: column;
|
|
56
|
+
border-bottom: none;
|
|
57
|
+
border-right: 1px solid var(--pd-default-disabled-light-col, #e5e7eb);
|
|
58
|
+
}
|
|
59
|
+
|
|
42
60
|
/* --- Tab header --- */
|
|
43
61
|
.tab-header {
|
|
44
62
|
padding: var(--pd-tab-header-padding, 0.5em 1em);
|
|
@@ -60,6 +78,13 @@ class PdTab extends LitElement {
|
|
|
60
78
|
flex-shrink: 0;
|
|
61
79
|
}
|
|
62
80
|
|
|
81
|
+
:host([orientation="vertical"]) .tab-header {
|
|
82
|
+
border-bottom: none;
|
|
83
|
+
margin-bottom: 0;
|
|
84
|
+
border-left: var(--_active-height) solid transparent;
|
|
85
|
+
margin-left: calc(-1 * var(--_active-height) + 1px);
|
|
86
|
+
}
|
|
87
|
+
|
|
63
88
|
.tab-header:hover {
|
|
64
89
|
background-color: var(--pd-tab-hover-bg-col, rgba(0, 0, 0, 0.04));
|
|
65
90
|
}
|
|
@@ -70,6 +95,11 @@ class PdTab extends LitElement {
|
|
|
70
95
|
font-weight: 500;
|
|
71
96
|
}
|
|
72
97
|
|
|
98
|
+
:host([orientation="vertical"]) .tab-header.active-header {
|
|
99
|
+
border-bottom-color: transparent;
|
|
100
|
+
border-left-color: var(--_active-col);
|
|
101
|
+
}
|
|
102
|
+
|
|
73
103
|
.tab-header.disabled-header {
|
|
74
104
|
pointer-events: none;
|
|
75
105
|
color: var(
|
|
@@ -116,6 +146,13 @@ class PdTab extends LitElement {
|
|
|
116
146
|
flex-shrink: 0;
|
|
117
147
|
}
|
|
118
148
|
|
|
149
|
+
/* --- Panels container --- */
|
|
150
|
+
.panels-container {
|
|
151
|
+
flex: 1;
|
|
152
|
+
min-width: 0;
|
|
153
|
+
min-height: 0;
|
|
154
|
+
}
|
|
155
|
+
|
|
119
156
|
/* --- Content panels --- */
|
|
120
157
|
.slot-container {
|
|
121
158
|
display: none;
|
|
@@ -130,6 +167,14 @@ class PdTab extends LitElement {
|
|
|
130
167
|
);
|
|
131
168
|
border-top: none;
|
|
132
169
|
}
|
|
170
|
+
|
|
171
|
+
:host([orientation="vertical"]) .active-slot {
|
|
172
|
+
border-top: var(
|
|
173
|
+
--pd-tab-content-border,
|
|
174
|
+
1px solid var(--pd-default-disabled-light-col, #e5e7eb)
|
|
175
|
+
);
|
|
176
|
+
border-left: none;
|
|
177
|
+
}
|
|
133
178
|
`
|
|
134
179
|
];
|
|
135
180
|
}
|
|
@@ -155,45 +200,54 @@ class PdTab extends LitElement {
|
|
|
155
200
|
}
|
|
156
201
|
}
|
|
157
202
|
render() {
|
|
203
|
+
const isVertical = this.orientation === "vertical";
|
|
158
204
|
return html`
|
|
159
|
-
<div
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
205
|
+
<div class="tab-wrapper">
|
|
206
|
+
<div
|
|
207
|
+
id="hc"
|
|
208
|
+
class="header-container"
|
|
209
|
+
role="tablist"
|
|
210
|
+
aria-orientation="${isVertical ? "vertical" : "horizontal"}"
|
|
211
|
+
@keydown=${this._onKeyDown}
|
|
212
|
+
>
|
|
213
|
+
${this.tabs.map(
|
|
166
214
|
(t) => html`
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
215
|
+
<div
|
|
216
|
+
class="tab-header ${this._activeTab === t.key ? "active-header" : ""} ${t.disabled ? "disabled-header" : ""}"
|
|
217
|
+
data-key="${t.key}"
|
|
218
|
+
@click="${this._tabSelected}"
|
|
219
|
+
role="tab"
|
|
220
|
+
id="${`tab-${t.key}`}"
|
|
221
|
+
aria-selected="${this._activeTab === t.key}"
|
|
222
|
+
aria-controls="${`panel-${t.key}`}"
|
|
223
|
+
aria-disabled="${t.disabled || false}"
|
|
224
|
+
tabindex="${this._activeTab === t.key && !t.disabled ? 0 : -1}"
|
|
225
|
+
>
|
|
226
|
+
${t.pdIcon ? html`<pd-icon
|
|
227
|
+
class="tab-icon"
|
|
228
|
+
.icon="${t.pdIcon}"
|
|
229
|
+
></pd-icon>` : nothing}
|
|
230
|
+
<span class="full-label">${t.name}</span>
|
|
231
|
+
<span class="short-label">${t.shortLabel ?? t.name}</span>
|
|
232
|
+
</div>
|
|
233
|
+
`
|
|
183
234
|
)}
|
|
184
|
-
|
|
185
|
-
|
|
235
|
+
</div>
|
|
236
|
+
<div class="panels-container">
|
|
237
|
+
${this.tabs.map(
|
|
186
238
|
(t) => html`
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
239
|
+
<div
|
|
240
|
+
id="${`panel-${t.key}`}"
|
|
241
|
+
role="tabpanel"
|
|
242
|
+
aria-labelledby="${`tab-${t.key}`}"
|
|
243
|
+
class="slot-container ${this._activeTab === t.key ? "active-slot" : ""}"
|
|
244
|
+
>
|
|
245
|
+
<slot name="${t.key}"></slot>
|
|
246
|
+
</div>
|
|
247
|
+
`
|
|
196
248
|
)}
|
|
249
|
+
</div>
|
|
250
|
+
</div>
|
|
197
251
|
`;
|
|
198
252
|
}
|
|
199
253
|
reset() {
|
|
@@ -205,7 +259,8 @@ class PdTab extends LitElement {
|
|
|
205
259
|
_checkOverflow() {
|
|
206
260
|
this.removeAttribute("data-compact");
|
|
207
261
|
const c = this._headerContainer;
|
|
208
|
-
|
|
262
|
+
const overflows = this.orientation === "vertical" ? c.scrollHeight > c.clientHeight + 1 : c.scrollWidth > c.clientWidth + 1;
|
|
263
|
+
if (overflows && this.tabs.some((t) => t.shortLabel)) {
|
|
209
264
|
this.setAttribute("data-compact", "");
|
|
210
265
|
}
|
|
211
266
|
}
|
|
@@ -219,27 +274,23 @@ class PdTab extends LitElement {
|
|
|
219
274
|
(t) => t.key === this._activeTab
|
|
220
275
|
);
|
|
221
276
|
let nextIndex = -1;
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
nextIndex = enabledTabs.length - 1;
|
|
240
|
-
break;
|
|
241
|
-
default:
|
|
242
|
-
return;
|
|
277
|
+
const isVertical = this.orientation === "vertical";
|
|
278
|
+
const nextKeys = isVertical ? ["ArrowDown"] : ["ArrowRight"];
|
|
279
|
+
const prevKeys = isVertical ? ["ArrowUp"] : ["ArrowLeft"];
|
|
280
|
+
if (nextKeys.includes(event.key)) {
|
|
281
|
+
event.preventDefault();
|
|
282
|
+
nextIndex = currentIndex < enabledTabs.length - 1 ? currentIndex + 1 : 0;
|
|
283
|
+
} else if (prevKeys.includes(event.key)) {
|
|
284
|
+
event.preventDefault();
|
|
285
|
+
nextIndex = currentIndex > 0 ? currentIndex - 1 : enabledTabs.length - 1;
|
|
286
|
+
} else if (event.key === "Home") {
|
|
287
|
+
event.preventDefault();
|
|
288
|
+
nextIndex = 0;
|
|
289
|
+
} else if (event.key === "End") {
|
|
290
|
+
event.preventDefault();
|
|
291
|
+
nextIndex = enabledTabs.length - 1;
|
|
292
|
+
} else {
|
|
293
|
+
return;
|
|
243
294
|
}
|
|
244
295
|
if (nextIndex >= 0 && nextIndex < enabledTabs.length) {
|
|
245
296
|
const nextTab = enabledTabs[nextIndex];
|
|
@@ -279,6 +330,9 @@ __decorateClass([
|
|
|
279
330
|
__decorateClass([
|
|
280
331
|
property({ type: String })
|
|
281
332
|
], PdTab.prototype, "defaultTab");
|
|
333
|
+
__decorateClass([
|
|
334
|
+
property({ type: String, reflect: true })
|
|
335
|
+
], PdTab.prototype, "orientation");
|
|
282
336
|
__decorateClass([
|
|
283
337
|
state()
|
|
284
338
|
], PdTab.prototype, "_activeTab");
|
|
@@ -25,6 +25,8 @@ import { Orientation, PointItem } from '../types';
|
|
|
25
25
|
* @cssprop --pd-timeline-label-max-width - Maximum label width.
|
|
26
26
|
* @cssprop --pd-timeline-vertical-row-gap - Vertical layout row gap.
|
|
27
27
|
* @cssprop --pd-timeline-vertical-block-size - Vertical layout height.
|
|
28
|
+
* @cssprop --pd-timeline-item-color - Per-item accent color (set via PointItem.color, overrides point-bg and point-border-color).
|
|
29
|
+
* @cssprop --pd-timeline-point-max-text-width - Max text width / circle diameter (default: 10ch).
|
|
28
30
|
* @cssprop --pd-timeline-color-active - Active state color.
|
|
29
31
|
* @cssprop --pd-timeline-color-done - Done state color.
|
|
30
32
|
* @cssprop --pd-timeline-color-error - Error state color.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PdTimeline.d.ts","sourceRoot":"","sources":["../../src/pd-timeline/PdTimeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"PdTimeline.d.ts","sourceRoot":"","sources":["../../src/pd-timeline/PdTimeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAKrD,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAyB,MAAM,UAAU,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,UAAW,SAAQ,UAAU;IACxC,oDAAoD;IAEpD,WAAW,EAAE,WAAW,CAAgB;IAExC,mDAAmD;IAEnD,MAAM,EAAE,SAAS,EAAE,CAAM;IAEzB,0CAA0C;IAE1C,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,oCAAoC;IAEpC,SAAS,UAAS;IAElB,MAAM,CAAC,MAAM,0BA2NX;IAEF,SAAS,CAAC,OAAO,IAAI,IAAI;IAKzB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,QAAQ;IAWhB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,iBAAiB;IAUzB,SAAS,CAAC,MAAM;CAwDjB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { LitElement, css, html, nothing } from 'lit';
|
|
2
2
|
import { property } from 'lit/decorators.js';
|
|
3
3
|
import { ifDefined } from 'lit/directives/if-defined.js';
|
|
4
|
+
import { styleMap } from 'lit/directives/style-map.js';
|
|
4
5
|
|
|
5
6
|
var __defProp = Object.defineProperty;
|
|
6
7
|
var __decorateClass = (decorators, target, key, kind) => {
|
|
@@ -22,22 +23,31 @@ class PdTimeline extends LitElement {
|
|
|
22
23
|
this.styles = css`
|
|
23
24
|
:host {
|
|
24
25
|
display: block;
|
|
26
|
+
|
|
27
|
+
/* Line */
|
|
25
28
|
--pd-timeline-line-color: var(--pd-default-col);
|
|
26
29
|
--pd-timeline-line-width: 2px;
|
|
27
30
|
--pd-timeline-line-style: solid;
|
|
28
31
|
|
|
32
|
+
/* Point (dot) */
|
|
29
33
|
--pd-timeline-point-size: 28px;
|
|
30
34
|
--pd-timeline-point-bg: var(--pd-default-bg-col);
|
|
31
35
|
--pd-timeline-point-color: var(--pd-default-darkest-col);
|
|
32
36
|
--pd-timeline-point-border-color: var(--pd-default-disabled-col);
|
|
33
37
|
--pd-timeline-point-border-width: 2px;
|
|
34
|
-
--pd-timeline-point-font-size:
|
|
38
|
+
--pd-timeline-point-font-size: var(
|
|
39
|
+
--pd-default-font-content-size,
|
|
40
|
+
0.875rem
|
|
41
|
+
);
|
|
35
42
|
|
|
36
|
-
|
|
43
|
+
/* Label */
|
|
44
|
+
--pd-timeline-label-gap: var(--pd-spacing-sm, 0.5rem);
|
|
37
45
|
--pd-timeline-label-max-width: 20ch;
|
|
38
46
|
|
|
39
|
-
|
|
47
|
+
/* Vertical layout */
|
|
48
|
+
--pd-timeline-vertical-row-gap: var(--pd-spacing-lg, 2rem);
|
|
40
49
|
|
|
50
|
+
/* State colors */
|
|
41
51
|
--pd-timeline-color-active: var(--pd-default-info-col);
|
|
42
52
|
--pd-timeline-color-done: var(--pd-default-success-col);
|
|
43
53
|
--pd-timeline-color-error: var(--pd-default-error-col);
|
|
@@ -87,8 +97,8 @@ class PdTimeline extends LitElement {
|
|
|
87
97
|
row-gap: var(--pd-timeline-vertical-row-gap);
|
|
88
98
|
justify-items: start;
|
|
89
99
|
align-content: space-around;
|
|
90
|
-
padding-inline:
|
|
91
|
-
padding-block:
|
|
100
|
+
padding-inline: var(--pd-spacing-md, 1rem);
|
|
101
|
+
padding-block: var(--pd-spacing-xs, 0.25rem);
|
|
92
102
|
}
|
|
93
103
|
|
|
94
104
|
:host([orientation="vertical"]) .rail::before {
|
|
@@ -96,7 +106,9 @@ class PdTimeline extends LitElement {
|
|
|
96
106
|
position: absolute;
|
|
97
107
|
top: 0;
|
|
98
108
|
bottom: 0;
|
|
99
|
-
left: calc(
|
|
109
|
+
left: calc(
|
|
110
|
+
var(--pd-spacing-md, 1rem) + (var(--pd-timeline-point-size) * 0.5)
|
|
111
|
+
);
|
|
100
112
|
transform: translateX(-50%);
|
|
101
113
|
border-left: var(--pd-timeline-line-width) var(--pd-timeline-line-style)
|
|
102
114
|
var(--pd-timeline-line-color);
|
|
@@ -126,18 +138,39 @@ class PdTimeline extends LitElement {
|
|
|
126
138
|
/* === Dot (point) === */
|
|
127
139
|
.dot {
|
|
128
140
|
box-sizing: border-box;
|
|
129
|
-
|
|
130
|
-
|
|
141
|
+
display: block;
|
|
142
|
+
width: fit-content;
|
|
143
|
+
min-width: var(--pd-timeline-point-size);
|
|
144
|
+
max-width: calc(
|
|
145
|
+
var(--pd-timeline-point-max-text-width, 10ch) + 1em +
|
|
146
|
+
var(--pd-timeline-point-border-width) * 2
|
|
147
|
+
);
|
|
148
|
+
aspect-ratio: 1;
|
|
149
|
+
padding: 0.5em;
|
|
131
150
|
border-radius: 999px;
|
|
132
|
-
|
|
151
|
+
overflow: hidden;
|
|
152
|
+
background: var(--pd-timeline-item-color, var(--pd-timeline-point-bg));
|
|
133
153
|
color: var(--pd-timeline-point-color);
|
|
134
154
|
border: var(--pd-timeline-point-border-width) solid
|
|
135
|
-
var(--pd-timeline-point-border-color);
|
|
136
|
-
|
|
137
|
-
place-items: center;
|
|
155
|
+
var(--pd-timeline-item-color, var(--pd-timeline-point-border-color));
|
|
156
|
+
text-align: center;
|
|
138
157
|
font-size: var(--pd-timeline-point-font-size);
|
|
139
158
|
line-height: 1;
|
|
140
159
|
user-select: none;
|
|
160
|
+
flex-shrink: 0;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
.dot-text {
|
|
164
|
+
position: relative;
|
|
165
|
+
top: 50%;
|
|
166
|
+
transform: translateY(-50%);
|
|
167
|
+
max-width: var(--pd-timeline-point-max-text-width, 10ch);
|
|
168
|
+
white-space: normal;
|
|
169
|
+
word-break: break-word;
|
|
170
|
+
display: -webkit-box;
|
|
171
|
+
-webkit-box-orient: vertical;
|
|
172
|
+
-webkit-line-clamp: var(--pd-timeline-point-max-lines, 3);
|
|
173
|
+
overflow: hidden;
|
|
141
174
|
}
|
|
142
175
|
|
|
143
176
|
.dot[aria-current="step"] {
|
|
@@ -181,14 +214,10 @@ class PdTimeline extends LitElement {
|
|
|
181
214
|
|
|
182
215
|
/* Horizontal label placement */
|
|
183
216
|
:host([orientation="horizontal"]) .label.top {
|
|
184
|
-
bottom: calc(
|
|
185
|
-
50% + var(--pd-timeline-point-size) * 0.5 + var(--pd-timeline-label-gap)
|
|
186
|
-
);
|
|
217
|
+
bottom: calc(100% + var(--pd-timeline-label-gap));
|
|
187
218
|
}
|
|
188
219
|
:host([orientation="horizontal"]) .label.back {
|
|
189
|
-
top: calc(
|
|
190
|
-
50% + var(--pd-timeline-point-size) * 0.5 + var(--pd-timeline-label-gap)
|
|
191
|
-
);
|
|
220
|
+
top: calc(100% + var(--pd-timeline-label-gap));
|
|
192
221
|
}
|
|
193
222
|
|
|
194
223
|
/* Vertical label placement */
|
|
@@ -247,7 +276,7 @@ class PdTimeline extends LitElement {
|
|
|
247
276
|
return html`<span aria-hidden="true">${p.icon}</span>`;
|
|
248
277
|
}
|
|
249
278
|
if (p.text) {
|
|
250
|
-
return html
|
|
279
|
+
return html`<span class="dot-text">${p.text}</span>`;
|
|
251
280
|
}
|
|
252
281
|
return nothing;
|
|
253
282
|
}
|
|
@@ -264,9 +293,11 @@ class PdTimeline extends LitElement {
|
|
|
264
293
|
const isActive = this.activeIndex === i;
|
|
265
294
|
const stateClass = this._stateClass(p, i);
|
|
266
295
|
const labelName = `label-${i}`;
|
|
296
|
+
const itemStyles = p.color ? { "--pd-timeline-item-color": p.color } : {};
|
|
267
297
|
return html`
|
|
268
298
|
<div
|
|
269
299
|
class="item"
|
|
300
|
+
style=${styleMap(itemStyles)}
|
|
270
301
|
role="listitem"
|
|
271
302
|
aria-setsize="${this.points.length}"
|
|
272
303
|
aria-posinset="${i + 1}"
|
package/dist/types.d.ts
CHANGED
|
@@ -40,6 +40,7 @@ export interface PointItem {
|
|
|
40
40
|
icon?: string;
|
|
41
41
|
labelSide?: LabelSide;
|
|
42
42
|
state?: PointState;
|
|
43
|
+
color?: string;
|
|
43
44
|
}
|
|
44
45
|
export interface WizardStep {
|
|
45
46
|
id: string;
|
|
@@ -49,7 +50,6 @@ export interface WizardStep {
|
|
|
49
50
|
}
|
|
50
51
|
export type { PdBadge, PdBadgeChangeDetail, PdBadgeReorderDetail, } from './pd-badge-order/types.js';
|
|
51
52
|
export { TEXT_LIMIT_TITLE, TEXT_LIMIT_DESC, DEFAULT_BADGE_COLOR, } from './pd-badge-order/types.js';
|
|
52
|
-
export type { GalleryImage, GalleryMode, GalleryOpenDetail, GalleryCloseDetail, GalleryNavigateDetail, } from './pd-gallery/types.js';
|
|
53
53
|
/**
|
|
54
54
|
* Notice types for different message contexts.
|
|
55
55
|
*/
|
|
@@ -57,5 +57,5 @@ export type NoticeType = "info" | "note" | "success" | "warning" | "error";
|
|
|
57
57
|
/**
|
|
58
58
|
* Visual variants for the notice box.
|
|
59
59
|
*/
|
|
60
|
-
export type NoticeVariant = "box" | "sidebar";
|
|
60
|
+
export type NoticeVariant = "box" | "sidebar" | "compact";
|
|
61
61
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,2BAA2B;IAC1C;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,GAAG,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;CACjB;AAGD,MAAM,MAAM,WAAW,GAAG,YAAY,GAAG,UAAU,CAAC;AACpD,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AACjE,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,MAAM,CAAC;AAEvC,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,KAAK,CAAC,EAAE,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,2BAA2B;IAC1C;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,GAAG,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;CACjB;AAGD,MAAM,MAAM,WAAW,GAAG,YAAY,GAAG,UAAU,CAAC;AACpD,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AACjE,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,MAAM,CAAC;AAEvC,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAGD,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAGD,YAAY,EACV,OAAO,EACP,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AAGnC;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAE3E;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progressive-development/pd-content",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.1",
|
|
4
4
|
"description": "Progressive Development content components. ",
|
|
5
5
|
"author": "PD Progressive Development",
|
|
6
6
|
"license": "MIT",
|
|
@@ -28,8 +28,6 @@
|
|
|
28
28
|
"./pd-notice-box": "./dist/pd-notice-box/pd-notice-box.js",
|
|
29
29
|
"./pd-code-snippet": "./dist/pd-code-snippet/pd-code-snippet.js",
|
|
30
30
|
"./pd-badge-order": "./dist/pd-badge-order.js",
|
|
31
|
-
"./pd-gallery": "./dist/pd-gallery.js",
|
|
32
|
-
"./pd-gallery-lightbox": "./dist/pd-gallery-lightbox.js",
|
|
33
31
|
"./locales/be": "./dist/locales/be.js",
|
|
34
32
|
"./locales/de": "./dist/locales/de.js",
|
|
35
33
|
"./locales/en": "./dist/locales/en.js"
|
|
@@ -41,17 +39,27 @@
|
|
|
41
39
|
"LICENSE"
|
|
42
40
|
],
|
|
43
41
|
"dependencies": {
|
|
42
|
+
"@codemirror/lang-css": "^6.3.1",
|
|
43
|
+
"@codemirror/lang-html": "^6.4.11",
|
|
44
|
+
"@codemirror/lang-java": "^6.0.2",
|
|
45
|
+
"@codemirror/lang-javascript": "^6.2.5",
|
|
46
|
+
"@codemirror/lang-json": "^6.0.2",
|
|
47
|
+
"@codemirror/lang-markdown": "^6.5.0",
|
|
48
|
+
"@codemirror/lang-python": "^6.2.1",
|
|
49
|
+
"@codemirror/language": "^6.12.2",
|
|
50
|
+
"@codemirror/state": "^6.6.0",
|
|
51
|
+
"@codemirror/view": "^6.40.0",
|
|
44
52
|
"@lit/localize": "^0.12.2",
|
|
45
53
|
"@types/prismjs": "^1.26.5",
|
|
46
54
|
"lit": "^3.3.1",
|
|
47
55
|
"prismjs": "^1.30.0",
|
|
48
56
|
"pwa-helpers": "^0.9.1",
|
|
49
57
|
"tslib": "^2.8.1",
|
|
50
|
-
"@progressive-development/pd-dialog": "1.
|
|
51
|
-
"@progressive-development/pd-icon": "1.
|
|
52
|
-
"@progressive-development/pd-
|
|
53
|
-
"@progressive-development/pd-
|
|
54
|
-
"@progressive-development/pd-
|
|
58
|
+
"@progressive-development/pd-dialog": "1.1.1",
|
|
59
|
+
"@progressive-development/pd-icon": "1.1.1",
|
|
60
|
+
"@progressive-development/pd-forms": "1.1.1",
|
|
61
|
+
"@progressive-development/pd-model": "1.2.1",
|
|
62
|
+
"@progressive-development/pd-shared-styles": "0.4.1"
|
|
55
63
|
},
|
|
56
64
|
"customElements": "custom-elements.json",
|
|
57
65
|
"keywords": [
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { LitElement, nothing, CSSResultGroup } from 'lit';
|
|
2
|
-
import { GalleryImage, GalleryMode } from './types.js';
|
|
3
|
-
/**
|
|
4
|
-
* Image gallery with Grid, Carousel, and Featured display modes.
|
|
5
|
-
* Optionally opens a fullscreen lightbox on click.
|
|
6
|
-
*
|
|
7
|
-
* @tagname pd-gallery
|
|
8
|
-
*
|
|
9
|
-
* @event gallery-image-click - Fired when an image is clicked.
|
|
10
|
-
* @event gallery-open - Fired when the lightbox opens.
|
|
11
|
-
* @event gallery-close - Bubbles from lightbox when it closes.
|
|
12
|
-
* @event gallery-navigate - Bubbles from lightbox on prev/next.
|
|
13
|
-
*
|
|
14
|
-
* @cssprop --pd-gallery-columns - Grid columns. Default: `3`.
|
|
15
|
-
* @cssprop --pd-gallery-gap - Gap between items. Default: `0.75rem`.
|
|
16
|
-
* @cssprop --pd-gallery-radius - Image border radius. Default: `8px`.
|
|
17
|
-
* @cssprop --pd-gallery-aspect-ratio - Image aspect ratio. Default: `1/1`.
|
|
18
|
-
* @cssprop --pd-gallery-hover-scale - Hover zoom factor. Default: `1.03`.
|
|
19
|
-
* @cssprop --pd-gallery-caption-bg - Caption overlay background. Default: `rgba(0,0,0,0.6)`.
|
|
20
|
-
* @cssprop --pd-gallery-featured-max-height - Featured image max height. Default: `500px`.
|
|
21
|
-
* @cssprop --pd-gallery-carousel-transition - Carousel snap transition. Default: `smooth`.
|
|
22
|
-
* @cssprop --pd-gallery-dot-size - Carousel dot size. Default: `10px`.
|
|
23
|
-
* @cssprop --pd-gallery-dot-color - Carousel dot inactive color. Default: `rgba(0,0,0,0.25)`.
|
|
24
|
-
* @cssprop --pd-gallery-dot-active-color - Carousel dot active color. Default: `var(--pd-default-col, #333)`.
|
|
25
|
-
*/
|
|
26
|
-
export declare class PdGallery extends LitElement {
|
|
27
|
-
images: GalleryImage[];
|
|
28
|
-
mode: GalleryMode;
|
|
29
|
-
columns: number;
|
|
30
|
-
aspectRatio: string;
|
|
31
|
-
lightbox: boolean;
|
|
32
|
-
showCaptions: boolean;
|
|
33
|
-
maxHeight: string;
|
|
34
|
-
autoplay: boolean;
|
|
35
|
-
autoplayInterval: number;
|
|
36
|
-
loop: boolean;
|
|
37
|
-
showProgress: boolean;
|
|
38
|
-
/** @ignore */
|
|
39
|
-
private _carouselIndex;
|
|
40
|
-
/** @ignore */
|
|
41
|
-
private _lightbox;
|
|
42
|
-
/** @ignore */
|
|
43
|
-
private _carouselTrack;
|
|
44
|
-
/** @ignore */
|
|
45
|
-
private _autoplayTimer?;
|
|
46
|
-
/** @ignore */
|
|
47
|
-
private _observer?;
|
|
48
|
-
/** @ignore */
|
|
49
|
-
private _hovered;
|
|
50
|
-
static styles: CSSResultGroup;
|
|
51
|
-
connectedCallback(): void;
|
|
52
|
-
disconnectedCallback(): void;
|
|
53
|
-
updated(changed: Map<string, unknown>): void;
|
|
54
|
-
render(): import('lit').TemplateResult<1> | typeof nothing;
|
|
55
|
-
private _renderMode;
|
|
56
|
-
private _renderGrid;
|
|
57
|
-
private _renderCarousel;
|
|
58
|
-
private _setupCarouselObserver;
|
|
59
|
-
private _carouselPrev;
|
|
60
|
-
private _carouselNext;
|
|
61
|
-
private _carouselGoTo;
|
|
62
|
-
private _carouselScrollTo;
|
|
63
|
-
private _onCarouselKeyDown;
|
|
64
|
-
private _onCarouselEnter;
|
|
65
|
-
private _onCarouselLeave;
|
|
66
|
-
private _renderFeatured;
|
|
67
|
-
private _onImageClick;
|
|
68
|
-
private _onItemKeyDown;
|
|
69
|
-
private _startAutoplay;
|
|
70
|
-
private _stopAutoplay;
|
|
71
|
-
}
|
|
72
|
-
//# sourceMappingURL=PdGallery.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PdGallery.d.ts","sourceRoot":"","sources":["../../src/pd-gallery/PdGallery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAGrE,OAAO,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAqB,MAAM,YAAY,CAAC;AAG/E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,SAAU,SAAQ,UAAU;IAEvC,MAAM,EAAE,YAAY,EAAE,CAAM;IAG5B,IAAI,EAAE,WAAW,CAAU;IAG3B,OAAO,SAAK;IAGZ,WAAW,SAAS;IAGpB,QAAQ,UAAQ;IAGhB,YAAY,UAAS;IAGrB,SAAS,SAAM;IAGf,QAAQ,UAAS;IAGjB,gBAAgB,SAAQ;IAGxB,IAAI,UAAQ;IAGZ,YAAY,UAAQ;IAEpB,cAAc;IAEd,OAAO,CAAC,cAAc,CAAK;IAE3B,cAAc;IAEd,OAAO,CAAC,SAAS,CAAqB;IAEtC,cAAc;IAEd,OAAO,CAAC,cAAc,CAAe;IAErC,cAAc;IACd,OAAO,CAAC,cAAc,CAAC,CAAiC;IACxD,cAAc;IACd,OAAO,CAAC,SAAS,CAAC,CAAuB;IACzC,cAAc;IACd,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAgB,MAAM,EAAE,cAAc,CAiRpC;IAEO,iBAAiB,IAAI,IAAI;IAKzB,oBAAoB,IAAI,IAAI;IAM5B,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IA4B5C,MAAM;IAaf,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,WAAW;IAqCnB,OAAO,CAAC,eAAe;IAkGvB,OAAO,CAAC,sBAAsB;IA4B9B,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,eAAe;IAqCvB,OAAO,CAAC,aAAa;IAwBrB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,aAAa;CAMtB"}
|