@tartaguti/ui-components 0.1.0 → 0.3.0
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/CHANGELOG.md +43 -0
- package/README.md +12 -0
- package/custom-elements.json +2887 -823
- package/dist/accordion/tt-accordion-item.d.ts.map +1 -1
- package/dist/accordion/tt-accordion-item.js +5 -2
- package/dist/accordion/tt-accordion-item.js.map +1 -1
- package/dist/bento/tt-bento-item.d.ts.map +1 -1
- package/dist/bento/tt-bento-item.js +7 -13
- package/dist/bento/tt-bento-item.js.map +1 -1
- package/dist/docs.d.ts +7 -0
- package/dist/docs.d.ts.map +1 -0
- package/dist/docs.js +15 -0
- package/dist/docs.js.map +1 -0
- package/dist/index.d.ts +4 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -7
- package/dist/index.js.map +1 -1
- package/dist/sidebar/tt-menu-group.d.ts.map +1 -1
- package/dist/sidebar/tt-menu-group.js +16 -5
- package/dist/sidebar/tt-menu-group.js.map +1 -1
- package/dist/sidebar/tt-menu-item.d.ts.map +1 -1
- package/dist/sidebar/tt-menu-item.js +24 -11
- package/dist/sidebar/tt-menu-item.js.map +1 -1
- package/dist/sidebar/tt-sidebar-footer.d.ts.map +1 -1
- package/dist/sidebar/tt-sidebar-footer.js +7 -3
- package/dist/sidebar/tt-sidebar-footer.js.map +1 -1
- package/dist/sidebar/tt-sidebar.d.ts +8 -3
- package/dist/sidebar/tt-sidebar.d.ts.map +1 -1
- package/dist/sidebar/tt-sidebar.js +196 -44
- package/dist/sidebar/tt-sidebar.js.map +1 -1
- package/dist/strings.d.ts +64 -0
- package/dist/strings.d.ts.map +1 -0
- package/dist/strings.js +68 -0
- package/dist/strings.js.map +1 -0
- package/dist/tokens.css +30 -6
- package/dist/tt-alert.d.ts.map +1 -1
- package/dist/tt-alert.js +5 -2
- package/dist/tt-alert.js.map +1 -1
- package/dist/tt-auth.d.ts +5 -1
- package/dist/tt-auth.d.ts.map +1 -1
- package/dist/tt-auth.js +72 -10
- package/dist/tt-auth.js.map +1 -1
- package/dist/tt-breadcrumbs.d.ts.map +1 -1
- package/dist/tt-breadcrumbs.js +6 -3
- package/dist/tt-breadcrumbs.js.map +1 -1
- package/dist/tt-button-group.d.ts.map +1 -1
- package/dist/tt-button-group.js +7 -1
- package/dist/tt-button-group.js.map +1 -1
- package/dist/tt-button.d.ts.map +1 -1
- package/dist/tt-button.js +37 -28
- package/dist/tt-button.js.map +1 -1
- package/dist/tt-card.d.ts.map +1 -1
- package/dist/tt-card.js +9 -6
- package/dist/tt-card.js.map +1 -1
- package/dist/tt-chart.d.ts +10 -2
- package/dist/tt-chart.d.ts.map +1 -1
- package/dist/tt-chart.js +167 -29
- package/dist/tt-chart.js.map +1 -1
- package/dist/tt-checkbox.d.ts.map +1 -1
- package/dist/tt-checkbox.js +5 -2
- package/dist/tt-checkbox.js.map +1 -1
- package/dist/tt-code-block.d.ts +4 -5
- package/dist/tt-code-block.d.ts.map +1 -1
- package/dist/tt-code-block.js +53 -17
- package/dist/tt-code-block.js.map +1 -1
- package/dist/tt-combobox.d.ts +14 -0
- package/dist/tt-combobox.d.ts.map +1 -1
- package/dist/tt-combobox.js +234 -31
- package/dist/tt-combobox.js.map +1 -1
- package/dist/tt-company-card.d.ts +18 -0
- package/dist/tt-company-card.d.ts.map +1 -1
- package/dist/tt-company-card.js +73 -4
- package/dist/tt-company-card.js.map +1 -1
- package/dist/tt-comparison-table.d.ts.map +1 -1
- package/dist/tt-comparison-table.js +6 -3
- package/dist/tt-comparison-table.js.map +1 -1
- package/dist/tt-component-doc.d.ts.map +1 -1
- package/dist/tt-component-doc.js +6 -3
- package/dist/tt-component-doc.js.map +1 -1
- package/dist/tt-contact-list.d.ts +17 -2
- package/dist/tt-contact-list.d.ts.map +1 -1
- package/dist/tt-contact-list.js +68 -10
- package/dist/tt-contact-list.js.map +1 -1
- package/dist/tt-copy-button.d.ts.map +1 -1
- package/dist/tt-copy-button.js +6 -3
- package/dist/tt-copy-button.js.map +1 -1
- package/dist/tt-data-table.d.ts +32 -1
- package/dist/tt-data-table.d.ts.map +1 -1
- package/dist/tt-data-table.js +302 -16
- package/dist/tt-data-table.js.map +1 -1
- package/dist/tt-dock-item.d.ts +53 -0
- package/dist/tt-dock-item.d.ts.map +1 -0
- package/dist/tt-dock-item.js +270 -0
- package/dist/tt-dock-item.js.map +1 -0
- package/dist/tt-dock.d.ts +59 -0
- package/dist/tt-dock.d.ts.map +1 -0
- package/dist/tt-dock.js +337 -0
- package/dist/tt-dock.js.map +1 -0
- package/dist/tt-drawer.d.ts +4 -0
- package/dist/tt-drawer.d.ts.map +1 -1
- package/dist/tt-drawer.js +14 -4
- package/dist/tt-drawer.js.map +1 -1
- package/dist/tt-dropdown-menu.d.ts +5 -0
- package/dist/tt-dropdown-menu.d.ts.map +1 -1
- package/dist/tt-dropdown-menu.js +34 -8
- package/dist/tt-dropdown-menu.js.map +1 -1
- package/dist/tt-file-upload.d.ts +35 -0
- package/dist/tt-file-upload.d.ts.map +1 -1
- package/dist/tt-file-upload.js +210 -21
- package/dist/tt-file-upload.js.map +1 -1
- package/dist/tt-filter.d.ts.map +1 -1
- package/dist/tt-filter.js +10 -5
- package/dist/tt-filter.js.map +1 -1
- package/dist/tt-form.d.ts +25 -1
- package/dist/tt-form.d.ts.map +1 -1
- package/dist/tt-form.js +151 -12
- package/dist/tt-form.js.map +1 -1
- package/dist/tt-grid.d.ts +10 -1
- package/dist/tt-grid.d.ts.map +1 -1
- package/dist/tt-grid.js +38 -9
- package/dist/tt-grid.js.map +1 -1
- package/dist/tt-icon.d.ts.map +1 -1
- package/dist/tt-icon.js +5 -0
- package/dist/tt-icon.js.map +1 -1
- package/dist/tt-inbox.d.ts +4 -0
- package/dist/tt-inbox.d.ts.map +1 -1
- package/dist/tt-inbox.js +13 -3
- package/dist/tt-inbox.js.map +1 -1
- package/dist/tt-input.d.ts.map +1 -1
- package/dist/tt-input.js +15 -5
- package/dist/tt-input.js.map +1 -1
- package/dist/tt-key-values.d.ts +2 -0
- package/dist/tt-key-values.d.ts.map +1 -1
- package/dist/tt-key-values.js +45 -2
- package/dist/tt-key-values.js.map +1 -1
- package/dist/tt-layout.d.ts +53 -2
- package/dist/tt-layout.d.ts.map +1 -1
- package/dist/tt-layout.js +233 -27
- package/dist/tt-layout.js.map +1 -1
- package/dist/tt-modal.d.ts +4 -0
- package/dist/tt-modal.d.ts.map +1 -1
- package/dist/tt-modal.js +14 -4
- package/dist/tt-modal.js.map +1 -1
- package/dist/tt-navbar.d.ts +4 -0
- package/dist/tt-navbar.d.ts.map +1 -1
- package/dist/tt-navbar.js +42 -7
- package/dist/tt-navbar.js.map +1 -1
- package/dist/tt-pagination.d.ts +4 -0
- package/dist/tt-pagination.d.ts.map +1 -1
- package/dist/tt-pagination.js +8 -1
- package/dist/tt-pagination.js.map +1 -1
- package/dist/tt-product.d.ts +67 -15
- package/dist/tt-product.d.ts.map +1 -1
- package/dist/tt-product.js +447 -366
- package/dist/tt-product.js.map +1 -1
- package/dist/tt-progress.d.ts +1 -0
- package/dist/tt-progress.d.ts.map +1 -1
- package/dist/tt-progress.js +26 -7
- package/dist/tt-progress.js.map +1 -1
- package/dist/tt-quantity.d.ts.map +1 -1
- package/dist/tt-quantity.js +5 -2
- package/dist/tt-quantity.js.map +1 -1
- package/dist/tt-radio-group.d.ts.map +1 -1
- package/dist/tt-radio-group.js +5 -2
- package/dist/tt-radio-group.js.map +1 -1
- package/dist/tt-scroller.d.ts +76 -0
- package/dist/tt-scroller.d.ts.map +1 -0
- package/dist/tt-scroller.js +525 -0
- package/dist/tt-scroller.js.map +1 -0
- package/dist/tt-search.d.ts.map +1 -1
- package/dist/tt-search.js +10 -5
- package/dist/tt-search.js.map +1 -1
- package/dist/tt-select.d.ts +9 -0
- package/dist/tt-select.d.ts.map +1 -1
- package/dist/tt-select.js +99 -14
- package/dist/tt-select.js.map +1 -1
- package/dist/tt-slider.d.ts.map +1 -1
- package/dist/tt-slider.js +13 -2
- package/dist/tt-slider.js.map +1 -1
- package/dist/tt-social-links.d.ts.map +1 -1
- package/dist/tt-social-links.js +7 -4
- package/dist/tt-social-links.js.map +1 -1
- package/dist/tt-switcher.d.ts +2 -0
- package/dist/tt-switcher.d.ts.map +1 -1
- package/dist/tt-switcher.js +24 -76
- package/dist/tt-switcher.js.map +1 -1
- package/dist/tt-table-row.d.ts.map +1 -1
- package/dist/tt-table-row.js +5 -2
- package/dist/tt-table-row.js.map +1 -1
- package/dist/tt-table.d.ts.map +1 -1
- package/dist/tt-table.js +5 -2
- package/dist/tt-table.js.map +1 -1
- package/dist/tt-tabs.d.ts.map +1 -1
- package/dist/tt-tabs.js +5 -2
- package/dist/tt-tabs.js.map +1 -1
- package/dist/tt-tag-list.d.ts.map +1 -1
- package/dist/tt-tag-list.js +6 -3
- package/dist/tt-tag-list.js.map +1 -1
- package/dist/tt-textarea.d.ts.map +1 -1
- package/dist/tt-textarea.js +5 -2
- package/dist/tt-textarea.js.map +1 -1
- package/dist/tt-toast.d.ts +4 -1
- package/dist/tt-toast.d.ts.map +1 -1
- package/dist/tt-toast.js +40 -6
- package/dist/tt-toast.js.map +1 -1
- package/dist/tt-toggle-group.d.ts.map +1 -1
- package/dist/tt-toggle-group.js +7 -1
- package/dist/tt-toggle-group.js.map +1 -1
- package/dist/tt-toggle.d.ts.map +1 -1
- package/dist/tt-toggle.js +14 -9
- package/dist/tt-toggle.js.map +1 -1
- package/package.json +1 -1
- package/vscode.html-custom-data.json +241 -66
package/dist/tt-navbar.d.ts
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { LitElement } from "lit";
|
|
2
2
|
import "./tt-button.js";
|
|
3
3
|
import "./tt-icon.js";
|
|
4
|
+
import type { TTStrings } from "./strings.js";
|
|
4
5
|
export type NavbarSize = "small" | "medium" | "large";
|
|
5
6
|
export declare class TTNavbar extends LitElement {
|
|
7
|
+
/** This component's own text, over setStrings() (see strings.ts). */
|
|
8
|
+
strings: Partial<TTStrings>;
|
|
9
|
+
private text;
|
|
6
10
|
sticky: boolean;
|
|
7
11
|
bordered: boolean;
|
|
8
12
|
size: NavbarSize;
|
package/dist/tt-navbar.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tt-navbar.d.ts","sourceRoot":"","sources":["../src/tt-navbar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAGrD,OAAO,gBAAgB,CAAC;AACxB,OAAO,cAAc,CAAC;AAEtB,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEtD,qBACa,QAAS,SAAQ,UAAU;
|
|
1
|
+
{"version":3,"file":"tt-navbar.d.ts","sourceRoot":"","sources":["../src/tt-navbar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAGrD,OAAO,gBAAgB,CAAC;AACxB,OAAO,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEtD,qBACa,QAAS,SAAQ,UAAU;IACtC,qEAAqE;IACrC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAM;IAEjE,OAAO,CAAC,IAAI,CAA+B;IAW3C,MAAM,UAAS;IAKf,QAAQ,UAAS;IAKjB,IAAI,EAAE,UAAU,CAAY;IAG5B,cAAc,UAAS;IAEvB;;;;;;;;;;;;OAYG;IAEH,UAAU,UAAS;IAEnB,OAAO,CAAC,gBAAgB;IAcxB,MAAM,CAAC,MAAM,0BAmSX;IAEF,MAAM;CAmDP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,WAAW,EAAE,QAAQ,CAAC;KACvB;CACF"}
|
package/dist/tt-navbar.js
CHANGED
|
@@ -8,9 +8,13 @@ import { LitElement, html, css, nothing } from "lit";
|
|
|
8
8
|
import { property, customElement } from "lit/decorators.js";
|
|
9
9
|
import "./tt-button.js";
|
|
10
10
|
import "./tt-icon.js";
|
|
11
|
+
import { StringsController } from "./strings.js";
|
|
11
12
|
let TTNavbar = class TTNavbar extends LitElement {
|
|
12
13
|
constructor() {
|
|
13
14
|
super(...arguments);
|
|
15
|
+
/** This component's own text, over setStrings() (see strings.ts). */
|
|
16
|
+
this.strings = {};
|
|
17
|
+
this.text = new StringsController(this);
|
|
14
18
|
// Reflected so :host([sticky]) can match. The stickiness has to live on
|
|
15
19
|
// the HOST: position:sticky is constrained to its containing block, and
|
|
16
20
|
// for the inner <header> that block is this element, all 60px of it, so
|
|
@@ -284,11 +288,22 @@ let TTNavbar = class TTNavbar extends LitElement {
|
|
|
284
288
|
background var(--tt-duration-normal) var(--tt-ease);
|
|
285
289
|
}
|
|
286
290
|
|
|
287
|
-
|
|
288
|
-
|
|
291
|
+
/* Only where there is a real pointer, so a tapped link does not stay
|
|
292
|
+
lit on a touch screen. */
|
|
293
|
+
@media (hover: hover) {
|
|
294
|
+
::slotted(a:hover) {
|
|
295
|
+
color: var(--_link-hover);
|
|
296
|
+
}
|
|
289
297
|
}
|
|
290
298
|
|
|
291
|
-
/* Mobile
|
|
299
|
+
/* Mobile
|
|
300
|
+
|
|
301
|
+
Two questions, one answer. On its own the bar asks the window. In
|
|
302
|
+
tt-layout's navbar slot it asks the layout, with the same container
|
|
303
|
+
query the layout uses for its drawer, because the menu button and
|
|
304
|
+
the drawer it opens have to appear together: in the component
|
|
305
|
+
builder a phone is drawn inside a desktop-wide window, where the
|
|
306
|
+
window says "desktop" and the layout says "phone". */
|
|
292
307
|
|
|
293
308
|
@media (max-width: 768px) {
|
|
294
309
|
/*
|
|
@@ -297,20 +312,37 @@ let TTNavbar = class TTNavbar extends LitElement {
|
|
|
297
312
|
takes the slack rather than the sides, because there is nothing
|
|
298
313
|
left to centre and a phone wants the name hard against the button.
|
|
299
314
|
*/
|
|
300
|
-
header {
|
|
315
|
+
:host(:not([slot="navbar"])) header {
|
|
301
316
|
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
302
317
|
|
|
303
318
|
gap: var(--tt-space-2);
|
|
304
319
|
padding: 0 var(--tt-space-3);
|
|
305
320
|
}
|
|
306
321
|
|
|
307
|
-
.mobile-menu {
|
|
322
|
+
:host(:not([slot="navbar"])) .mobile-menu {
|
|
308
323
|
display: inline-flex;
|
|
309
324
|
}
|
|
310
325
|
|
|
311
326
|
/* display:none removes it from the grid entirely, so it takes no
|
|
312
327
|
track and the three above line up with what is left. */
|
|
313
|
-
.center {
|
|
328
|
+
:host(:not([slot="navbar"])) .center {
|
|
329
|
+
display: none;
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
@container (width < 768px) {
|
|
334
|
+
:host([slot="navbar"]) header {
|
|
335
|
+
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
336
|
+
|
|
337
|
+
gap: var(--tt-space-2);
|
|
338
|
+
padding: 0 var(--tt-space-3);
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
:host([slot="navbar"]) .mobile-menu {
|
|
342
|
+
display: inline-flex;
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
:host([slot="navbar"]) .center {
|
|
314
346
|
display: none;
|
|
315
347
|
}
|
|
316
348
|
}
|
|
@@ -337,7 +369,7 @@ let TTNavbar = class TTNavbar extends LitElement {
|
|
|
337
369
|
class="mobile-menu"
|
|
338
370
|
variant="secondary"
|
|
339
371
|
size="small"
|
|
340
|
-
label=${this.mobileMenuOpen ? "
|
|
372
|
+
label=${this.text.get(this.mobileMenuOpen ? "closeMenu" : "openMenu")}
|
|
341
373
|
expanded=${this.mobileMenuOpen ? "true" : "false"}
|
|
342
374
|
@tt-button-click=${this.handleMenuToggle}
|
|
343
375
|
>
|
|
@@ -368,6 +400,9 @@ let TTNavbar = class TTNavbar extends LitElement {
|
|
|
368
400
|
`;
|
|
369
401
|
}
|
|
370
402
|
};
|
|
403
|
+
__decorate([
|
|
404
|
+
property({ attribute: false })
|
|
405
|
+
], TTNavbar.prototype, "strings", void 0);
|
|
371
406
|
__decorate([
|
|
372
407
|
property({ type: Boolean, reflect: true })
|
|
373
408
|
], TTNavbar.prototype, "sticky", void 0);
|
package/dist/tt-navbar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tt-navbar.js","sourceRoot":"","sources":["../src/tt-navbar.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,gBAAgB,CAAC;AACxB,OAAO,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"tt-navbar.js","sourceRoot":"","sources":["../src/tt-navbar.ts"],"names":[],"mappings":"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"}
|
package/dist/tt-pagination.d.ts
CHANGED
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import { LitElement } from "lit";
|
|
2
2
|
import "./tt-button.js";
|
|
3
3
|
import "./tt-icon.js";
|
|
4
|
+
import type { TTStrings } from "./strings.js";
|
|
4
5
|
/**
|
|
5
6
|
* Page navigation. Owns nothing: the current page comes in, and a click
|
|
6
7
|
* emits the page you asked for. The parent decides what that means and
|
|
7
8
|
* passes the new page back down.
|
|
8
9
|
*/
|
|
9
10
|
export declare class TTPagination extends LitElement {
|
|
11
|
+
/** This component's own text, over setStrings() (see strings.ts). */
|
|
12
|
+
strings: Partial<TTStrings>;
|
|
13
|
+
private text;
|
|
10
14
|
page: number;
|
|
11
15
|
total: number;
|
|
12
16
|
pageSize: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tt-pagination.d.ts","sourceRoot":"","sources":["../src/tt-pagination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAG5C,OAAO,gBAAgB,CAAC;AACxB,OAAO,cAAc,CAAC;AAEtB;;;;GAIG;AACH,qBACa,YAAa,SAAQ,UAAU;
|
|
1
|
+
{"version":3,"file":"tt-pagination.d.ts","sourceRoot":"","sources":["../src/tt-pagination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAG5C,OAAO,gBAAgB,CAAC;AACxB,OAAO,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C;;;;GAIG;AACH,qBACa,YAAa,SAAQ,UAAU;IAC1C,qEAAqE;IACrC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAM;IAEjE,OAAO,CAAC,IAAI,CAA+B;IAEf,IAAI,SAAK;IAET,KAAK,SAAK;IAEc,QAAQ,SAAM;IAItC,QAAQ,SAAK;IAIzC,OAAO,KAAK,SAAS,GAEpB;IAED,OAAO,KAAK,OAAO,GAIlB;IAQD,OAAO,KAAK,KAAK,GAwBhB;IAED,OAAO,CAAC,EAAE;IAYV,OAAO,KAAK,KAAK,GAIhB;IAED,MAAM,CAAC,MAAM,0BAkDX;IAEF,MAAM;CAqDP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,eAAe,EAAE,YAAY,CAAC;KAC/B;CACF"}
|
package/dist/tt-pagination.js
CHANGED
|
@@ -8,6 +8,7 @@ import { LitElement, html, css } from "lit";
|
|
|
8
8
|
import { customElement, property } from "lit/decorators.js";
|
|
9
9
|
import "./tt-button.js";
|
|
10
10
|
import "./tt-icon.js";
|
|
11
|
+
import { StringsController } from "./strings.js";
|
|
11
12
|
/**
|
|
12
13
|
* Page navigation. Owns nothing: the current page comes in, and a click
|
|
13
14
|
* emits the page you asked for. The parent decides what that means and
|
|
@@ -16,6 +17,9 @@ import "./tt-icon.js";
|
|
|
16
17
|
let TTPagination = class TTPagination extends LitElement {
|
|
17
18
|
constructor() {
|
|
18
19
|
super(...arguments);
|
|
20
|
+
/** This component's own text, over setStrings() (see strings.ts). */
|
|
21
|
+
this.strings = {};
|
|
22
|
+
this.text = new StringsController(this);
|
|
19
23
|
this.page = 1;
|
|
20
24
|
this.total = 0;
|
|
21
25
|
this.pageSize = 10;
|
|
@@ -131,7 +135,7 @@ let TTPagination = class TTPagination extends LitElement {
|
|
|
131
135
|
const current = this.current;
|
|
132
136
|
const { from, to } = this.range;
|
|
133
137
|
return html `
|
|
134
|
-
<nav class="bar" part="bar" aria-label
|
|
138
|
+
<nav class="bar" part="bar" aria-label=${this.text.get("pagination")}>
|
|
135
139
|
<span class="summary">
|
|
136
140
|
${from}-${to} of ${this.total}
|
|
137
141
|
</span>
|
|
@@ -175,6 +179,9 @@ let TTPagination = class TTPagination extends LitElement {
|
|
|
175
179
|
`;
|
|
176
180
|
}
|
|
177
181
|
};
|
|
182
|
+
__decorate([
|
|
183
|
+
property({ attribute: false })
|
|
184
|
+
], TTPagination.prototype, "strings", void 0);
|
|
178
185
|
__decorate([
|
|
179
186
|
property({ type: Number })
|
|
180
187
|
], TTPagination.prototype, "page", void 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tt-pagination.js","sourceRoot":"","sources":["../src/tt-pagination.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,gBAAgB,CAAC;AACxB,OAAO,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"tt-pagination.js","sourceRoot":"","sources":["../src/tt-pagination.ts"],"names":[],"mappings":"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"}
|
package/dist/tt-product.d.ts
CHANGED
|
@@ -1,35 +1,87 @@
|
|
|
1
1
|
import { LitElement } from "lit";
|
|
2
|
-
import "./tt-card.js";
|
|
3
2
|
import "./tt-image.js";
|
|
4
3
|
import "./tt-button.js";
|
|
5
4
|
import "./tt-icon.js";
|
|
6
5
|
export type ProductOrientation = "vertical" | "horizontal";
|
|
7
|
-
export type
|
|
8
|
-
|
|
6
|
+
export type ProductSize = "medium" | "small";
|
|
7
|
+
/**
|
|
8
|
+
* A product in a shop: photo, name, price and a button.
|
|
9
|
+
*
|
|
10
|
+
* TWO CHOICES, FOUR RESULTS. `orientation` (a tile for a grid, or a row
|
|
11
|
+
* for a list) and `size` (medium, or small for two across on a phone).
|
|
12
|
+
* Every pairing of the two is designed, so there is no combination that
|
|
13
|
+
* breaks. It had four variants and three layouts, twenty-four pairings,
|
|
14
|
+
* and several of them did: text on a pale photo, a white band under the
|
|
15
|
+
* photo of a tall row, a layout that did nothing in a row.
|
|
16
|
+
*
|
|
17
|
+
* PROPS GIVE THE DEFAULTS, SLOTS ADD TO THEM. `src` draws the photo,
|
|
18
|
+
* `rating` the star, `button-label` the button. The `media`, `meta` and
|
|
19
|
+
* `actions` slots add your own beside them (or over the photo), and
|
|
20
|
+
* clearing the prop drops its default. One rule, so nothing disappears
|
|
21
|
+
* when something is added.
|
|
22
|
+
*
|
|
23
|
+
* ONE TARGET. With `href` the name is a link, or with `clickable` a
|
|
24
|
+
* button, and either one is stretched over the whole card by a
|
|
25
|
+
* pseudo-element, so the card is clickable while the accessibility tree
|
|
26
|
+
* holds ONE link named by the product, not a card-sized link wrapping a
|
|
27
|
+
* button (interactive content inside a link is invalid and announced
|
|
28
|
+
* twice). The action row sits above the stretched link, so its buttons
|
|
29
|
+
* stay separate targets.
|
|
30
|
+
*
|
|
31
|
+
* The card draws its own surface with tt-card's tokens rather than
|
|
32
|
+
* composing tt-card, because the stretched link needs the surface as its
|
|
33
|
+
* positioned box and the focus ring has to go round the whole card.
|
|
34
|
+
*
|
|
35
|
+
* @fires tt-product-action - { value, heading } when the built-in button is pressed.
|
|
36
|
+
* @fires tt-product-open - { value, heading } when a `clickable` card is opened.
|
|
37
|
+
*
|
|
38
|
+
* @slot media - Your own media instead of the photo (a carousel, a video), filling the ratio box. Leave `src` empty.
|
|
39
|
+
* @slot badge - Over the top-left of the photo: Sale, New, Sold out.
|
|
40
|
+
* @slot meta - Beside the rating: tags, stock, delivery.
|
|
41
|
+
* @slot actions - After the built-in button: a wishlist icon, a quantity, your own buttons.
|
|
42
|
+
*/
|
|
9
43
|
export declare class TTProduct extends LitElement {
|
|
10
|
-
src: string;
|
|
11
|
-
ratio: string;
|
|
12
|
-
orientation: ProductOrientation;
|
|
13
|
-
variant: ProductVariant;
|
|
14
|
-
layout: ProductLayout;
|
|
15
44
|
heading: string;
|
|
45
|
+
/** Its place in the page outline, as on tt-card. */
|
|
46
|
+
headingLevel: number;
|
|
16
47
|
description: string;
|
|
17
48
|
descriptionLines: number;
|
|
18
49
|
price: string;
|
|
19
50
|
wasPrice: string;
|
|
20
51
|
rating: string;
|
|
52
|
+
src: string;
|
|
53
|
+
ratio: string;
|
|
54
|
+
/** Identifies the product in its events. */
|
|
21
55
|
value: string;
|
|
22
|
-
|
|
56
|
+
/** The product's page. The name becomes a link over the whole card. */
|
|
57
|
+
href: string;
|
|
58
|
+
/** Without href: the whole card is a button that emits tt-product-open. */
|
|
59
|
+
clickable: boolean;
|
|
60
|
+
/** The built-in button's text. Empty for no built-in button. */
|
|
23
61
|
buttonLabel: string;
|
|
62
|
+
orientation: ProductOrientation;
|
|
63
|
+
size: ProductSize;
|
|
64
|
+
/** Cannot be bought (sold out): the button is off and the photo greys. Still a link. */
|
|
24
65
|
disabled: boolean;
|
|
25
|
-
private
|
|
66
|
+
private hasMedia;
|
|
67
|
+
private hasMeta;
|
|
68
|
+
private hasActions;
|
|
69
|
+
private filled;
|
|
70
|
+
private onMedia;
|
|
71
|
+
private onMeta;
|
|
72
|
+
private onActions;
|
|
73
|
+
private get detail();
|
|
74
|
+
private handleAction;
|
|
75
|
+
private handleOpen;
|
|
76
|
+
/** The link's address, when it is one a browser may follow. */
|
|
77
|
+
private get url();
|
|
78
|
+
/** A link or a button covers the card: it has a name to carry. */
|
|
79
|
+
private get interactive();
|
|
26
80
|
static styles: import("lit").CSSResult[];
|
|
27
|
-
private renderMedia;
|
|
28
|
-
private renderRating;
|
|
29
|
-
private renderBody;
|
|
30
81
|
private get actionName();
|
|
31
|
-
private
|
|
32
|
-
private
|
|
82
|
+
private renderAction;
|
|
83
|
+
private renderHeading;
|
|
84
|
+
private renderPrice;
|
|
33
85
|
render(): import("lit-html").TemplateResult<1>;
|
|
34
86
|
}
|
|
35
87
|
declare global {
|
package/dist/tt-product.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tt-product.d.ts","sourceRoot":"","sources":["../src/tt-product.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"tt-product.d.ts","sourceRoot":"","sources":["../src/tt-product.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAMrD,OAAO,eAAe,CAAC;AACvB,OAAO,gBAAgB,CAAC;AACxB,OAAO,cAAc,CAAC;AAEtB,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,YAAY,CAAC;AAC3D,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;AAK7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBACa,SAAU,SAAQ,UAAU;IACX,OAAO,SAAM;IAEzC,oDAAoD;IACI,YAAY,SAAK;IAE7C,WAAW,SAAM;IACe,gBAAgB,SAAK;IAErD,KAAK,SAAM;IACa,QAAQ,SAAM;IACtC,MAAM,SAAM;IAEZ,GAAG,SAAM;IACT,KAAK,SAAO;IAExC,4CAA4C;IAChB,KAAK,SAAM;IAEvC,uEAAuE;IAC3C,IAAI,SAAM;IAEtC,2EAA2E;IAC/B,SAAS,UAAS;IAE9D,gEAAgE;IACT,WAAW,SAAmB;IAE1C,WAAW,EAAE,kBAAkB,CAAc;IAC7C,IAAI,EAAE,WAAW,CAAY;IAExE,wFAAwF;IAC5C,QAAQ,UAAS;IAGpD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAS;IAEpC,OAAO,CAAC,MAAM;IAOd,OAAO,CAAC,OAAO,CAA0D;IACzE,OAAO,CAAC,MAAM,CAAyD;IACvE,OAAO,CAAC,SAAS,CAA4D;IAE7E,OAAO,KAAK,MAAM,GAEjB;IAKD,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,UAAU;IAMlB,+DAA+D;IAC/D,OAAO,KAAK,GAAG,GAEd;IAED,kEAAkE;IAClE,OAAO,KAAK,WAAW,GAEtB;IAED,MAAM,CAAC,MAAM,4BAsXV;IAQH,OAAO,KAAK,UAAU,GAErB;IAED,OAAO,CAAC,YAAY;IAkCpB,OAAO,CAAC,aAAa;IAuBrB,OAAO,CAAC,WAAW;IAanB,MAAM;CA8CP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,SAAS,CAAC;KACzB;CACF"}
|