q2-tecton-elements 1.52.2 → 1.53.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/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/q2-file-picker.cjs.entry.js +236 -0
- package/dist/cjs/q2-file-picker.cjs.entry.js.map +1 -0
- package/dist/cjs/q2-item_3.cjs.entry.js +250 -0
- package/dist/cjs/q2-item_3.cjs.entry.js.map +1 -0
- package/dist/cjs/q2-pill.cjs.entry.js +7 -3
- package/dist/cjs/q2-pill.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-select.cjs.entry.js +3 -2
- package/dist/cjs/q2-select.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-tag.cjs.entry.js +3 -1
- package/dist/cjs/q2-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/q2-file-picker/q2-file-picker.css +288 -0
- package/dist/collection/components/q2-file-picker/q2-file-picker.js +426 -0
- package/dist/collection/components/q2-file-picker/q2-file-picker.js.map +1 -0
- package/dist/collection/components/q2-file-picker/test/q2-file-picker-test.e2e.js +11 -0
- package/dist/collection/components/q2-file-picker/test/q2-file-picker-test.e2e.js.map +1 -0
- package/dist/collection/components/q2-file-picker/test/q2-file-picker-test.spec.js +435 -0
- package/dist/collection/components/q2-file-picker/test/q2-file-picker-test.spec.js.map +1 -0
- package/dist/collection/components/q2-item/q2-item.css +3 -0
- package/dist/collection/components/q2-list/q2-list.css +6 -0
- package/dist/collection/components/q2-pill/q2-pill.js +7 -3
- package/dist/collection/components/q2-pill/q2-pill.js.map +1 -1
- package/dist/collection/components/q2-pill/test/q2-pill-test.e2e.js +108 -0
- package/dist/collection/components/q2-pill/test/q2-pill-test.e2e.js.map +1 -1
- package/dist/collection/components/q2-select/q2-select.js +3 -2
- package/dist/collection/components/q2-select/q2-select.js.map +1 -1
- package/dist/collection/components/q2-tag/q2-tag.js +3 -1
- package/dist/collection/components/q2-tag/q2-tag.js.map +1 -1
- package/dist/components/index.js +2 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/q2-file-picker.d.ts +11 -0
- package/dist/components/q2-file-picker.js +301 -0
- package/dist/components/q2-file-picker.js.map +1 -0
- package/dist/components/q2-item.js +1 -130
- package/dist/components/q2-item.js.map +1 -1
- package/dist/{esm/q2-item.entry.js → components/q2-item2.js} +29 -11
- package/dist/components/q2-item2.js.map +1 -0
- package/dist/components/q2-link.js +1 -86
- package/dist/components/q2-link.js.map +1 -1
- package/dist/{esm/q2-link.entry.js → components/q2-link2.js} +39 -9
- package/dist/components/q2-link2.js.map +1 -0
- package/dist/components/q2-list.js +1 -94
- package/dist/components/q2-list.js.map +1 -1
- package/dist/{esm/q2-list.entry.js → components/q2-list2.js} +30 -11
- package/dist/components/q2-list2.js.map +1 -0
- package/dist/components/q2-pill.js +7 -3
- package/dist/components/q2-pill.js.map +1 -1
- package/dist/components/q2-select2.js +3 -2
- package/dist/components/q2-select2.js.map +1 -1
- package/dist/components/q2-tag.js +3 -1
- package/dist/components/q2-tag.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/q2-file-picker.entry.js +232 -0
- package/dist/esm/q2-file-picker.entry.js.map +1 -0
- package/dist/esm/q2-item_3.entry.js +244 -0
- package/dist/esm/q2-item_3.entry.js.map +1 -0
- package/dist/esm/q2-pill.entry.js +7 -3
- package/dist/esm/q2-pill.entry.js.map +1 -1
- package/dist/esm/q2-select.entry.js +3 -2
- package/dist/esm/q2-select.entry.js.map +1 -1
- package/dist/esm/q2-tag.entry.js +3 -1
- package/dist/esm/q2-tag.entry.js.map +1 -1
- package/dist/esm/q2-tecton-elements.js +1 -1
- package/dist/q2-tecton-elements/q2-file-picker.entry.js +338 -0
- package/dist/q2-tecton-elements/q2-file-picker.entry.js.map +1 -0
- package/dist/q2-tecton-elements/q2-item_3.entry.js +331 -0
- package/dist/q2-tecton-elements/q2-item_3.entry.js.map +1 -0
- package/dist/q2-tecton-elements/q2-pill.entry.js +22 -18
- package/dist/q2-tecton-elements/q2-pill.entry.js.map +1 -1
- package/dist/q2-tecton-elements/q2-select.entry.js +6 -5
- package/dist/q2-tecton-elements/q2-select.entry.js.map +1 -1
- package/dist/q2-tecton-elements/q2-tag.entry.js +36 -34
- package/dist/q2-tecton-elements/q2-tag.entry.js.map +1 -1
- package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
- package/dist/q2-tecton-elements/q2-tecton-elements.esm.js.map +1 -1
- package/dist/types/components/q2-file-picker/q2-file-picker.d.ts +98 -0
- package/dist/types/components/q2-pill/q2-pill.d.ts +1 -1
- package/dist/types/components.d.ts +101 -0
- package/package.json +3 -3
- package/dist/cjs/q2-item.cjs.entry.js +0 -120
- package/dist/cjs/q2-item.cjs.entry.js.map +0 -1
- package/dist/cjs/q2-link.cjs.entry.js +0 -64
- package/dist/cjs/q2-link.cjs.entry.js.map +0 -1
- package/dist/cjs/q2-list.cjs.entry.js +0 -83
- package/dist/cjs/q2-list.cjs.entry.js.map +0 -1
- package/dist/esm/q2-item.entry.js.map +0 -1
- package/dist/esm/q2-link.entry.js.map +0 -1
- package/dist/esm/q2-list.entry.js.map +0 -1
- package/dist/q2-tecton-elements/q2-item.entry.js +0 -158
- package/dist/q2-tecton-elements/q2-item.entry.js.map +0 -1
- package/dist/q2-tecton-elements/q2-link.entry.js +0 -83
- package/dist/q2-tecton-elements/q2-link.entry.js.map +0 -1
- package/dist/q2-tecton-elements/q2-list.entry.js +0 -100
- package/dist/q2-tecton-elements/q2-list.entry.js.map +0 -1
|
@@ -1,158 +0,0 @@
|
|
|
1
|
-
import { r as t, h as e, g as o } from "./index-7a5365e2.js";
|
|
2
|
-
|
|
3
|
-
import { o as a, e as i } from "./index-d18e2a20.js";
|
|
4
|
-
|
|
5
|
-
const r = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{display:block}:host([clickable]){cursor:pointer;--comp-background:var(--tct-btn-primary-background, var(--tct-btn-primary-bg, var(--t-a11y-active-gray-color-AA, #404040)))}:host([clickable]) .item{--comp-border-radius:var(--tct-item-border-radius, var(--app-border-radius-1, 4px));--comp-btn-tween:var(--tct-btn-tween, var(--t-btn-tween, var(--tct-tween-1, var(--app-tween-1, 0.2s ease))));--comp-btn-fallback-box-shadow:0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);--comp-hover-box-shadow:var(--tct-btn-primary-box-shadow, var(--comp-btn-fallback-box-shadow));--comp-active-box-shadow:var(--tct-btn-primary-active-background, #0063a0);--comp-font-color:var(--tct-btn-primary-font-color, var(--app-white, #ffffff));--comp-hover-outer-ring-color:var(--tct-btn-primary-hover-outer-ring-color, var(--comp-background));--comp-hover-inner-ring-color:var(--tct-btn-primary-hover-inner-ring-color, var(--comp-font-color));--comp-hover-box-shadow:0 0 0 2px var(--comp-hover-inner-ring-color),\n 0 0 0 4px var(--comp-hover-outer-ring-color)}:host([clickable]) .item:hover{box-shadow:var(--comp-hover-box-shadow)}:host([clickable]) .item:active{box-shadow:var(--comp-active-box-shadow)}:host([clickable]) .item:focus-visible{box-shadow:var(--const-double-focus-ring)}.action{--tct-btn-icon-height:var(--tct-item-action-icon-height, var(--app-scale-6x, 30px));--tct-btn-icon-width:var(--tct-item-action-icon-width, var(--app-scale-6x, 30px));--tct-icon-size:var(--tct-item-action-icon-size, var(--app-scale-6x, 30px));--tct-radio-label-hidden-columns:18px;--tct-radio-label-margin-right:0;--tct-radio-margin:0;align-items:center;display:flex;grid-row:1;justify-content:center}.action-no-bullet{grid-column:2}.body{color:var(--tct-item-body-color, var(--t-textA, #747474));font-size:var(--tct-item-body-font-size, var(--app-font-size, 14px));font-weight:var(--tct-item-body-font-weight, 400)}.bullet{--tct-avatar-fallback-height:var(--tct-item-avatar-height, var(--app-scale-7x, 35px));--tct-avatar-fallback-width:var(--tct-item-avatar-width, var(--app-scale-7x, 35px));--tct-avatar-height:var(--tct-item-avatar-height, var(--app-scale-7x, 35px));--tct-avatar-width:var(--tct-item-avatar-width, var(--app-scale-7x, 35px));grid-column:1;grid-row-start:1;grid-row-end:3;padding-top:var(--tct-item-bullet-padding-top, var(--app-scale-1x, 5px));text-align:center}.bullet-no-footer{grid-row-end:2}.footer{grid-column-start:2;grid-column-end:4;grid-row:2}.footer-no-action-nor-bullet{grid-column-start:1;grid-column-end:2}.footer-no-action{grid-column-start:2;grid-column-end:3}.footer-no-bullet{grid-column-start:1;grid-column-end:3}.header{color:var(--tct-item-header-color, var(--t-text, #4d4d4d));font-size:var(--tct-item-header-font-size, 16px);font-weight:var(--tct-item-header-font-weight, 600);line-height:var(--tct-item-header-line-height, 1.5)}.item{border:var(--tct-item-border);border-radius:var(--comp-border-radius);transition:var(--comp-btn-tween);transition-property:box-shadow;column-gap:var(--tct-item-horizontal-spacing, var(--app-scale-3x, 15px));display:grid;grid-template-columns:minmax(var(--app-scale-7x, 35px), auto) minmax(auto, 1fr) minmax(var(--app-scale-5x, 25px), auto);grid-template-rows:auto auto;padding:var(--tct-item-padding, 0);row-gap:var(--tct-item-vertical-spacing, var(--app-scale-2x, 10px))}.item-no-action-nor-bullet{grid-template-columns:auto}.item-no-action{grid-template-columns:minmax(var(--app-scale-7x, 35px), auto) minmax(auto, 1fr)}.item-no-footer{grid-template-rows:auto}.item-no-bullet{grid-template-columns:minmax(auto, 1fr) minmax(var(--app-scale-5x, 25px), auto)}.main{grid-column:2;grid-row:1}.main-no-action-nor-bullet{grid-column:1}.main-no-bullet{grid-column:1}";
|
|
6
|
-
|
|
7
|
-
const n = r;
|
|
8
|
-
|
|
9
|
-
const c = class {
|
|
10
|
-
constructor(e) {
|
|
11
|
-
t(this, e);
|
|
12
|
-
this.renderTrigger = 0;
|
|
13
|
-
this.clickable = undefined;
|
|
14
|
-
}
|
|
15
|
-
// #endregion
|
|
16
|
-
// #region Component Lifecycle Events
|
|
17
|
-
componentDidLoad() {
|
|
18
|
-
if (typeof MutationObserver !== "undefined") {
|
|
19
|
-
const t = new MutationObserver((() => this.renderTrigger += 1));
|
|
20
|
-
t.observe(this.hostElement, {
|
|
21
|
-
childList: true,
|
|
22
|
-
subtree: true,
|
|
23
|
-
attributes: true
|
|
24
|
-
});
|
|
25
|
-
this.mutationObserver = t;
|
|
26
|
-
}
|
|
27
|
-
a(this.hostElement);
|
|
28
|
-
}
|
|
29
|
-
// #endregion
|
|
30
|
-
// #region Listeners
|
|
31
|
-
delegateFocus(t) {
|
|
32
|
-
var e;
|
|
33
|
-
if (this.clickable) {
|
|
34
|
-
(e = this.itemElement) === null || e === void 0 ? void 0 : e.focus();
|
|
35
|
-
} else {
|
|
36
|
-
t.preventDefault();
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
// #endregion
|
|
40
|
-
// #region Local Methods
|
|
41
|
-
get actionClasses() {
|
|
42
|
-
const t = [ "action" ];
|
|
43
|
-
if (!this.hasBulletSlotContent) {
|
|
44
|
-
t.push(`action-no-bullet`);
|
|
45
|
-
}
|
|
46
|
-
return t.join(" ");
|
|
47
|
-
}
|
|
48
|
-
get bulletClasses() {
|
|
49
|
-
const t = [ "bullet" ];
|
|
50
|
-
if (!this.hasFooterSlotContent) {
|
|
51
|
-
t.push(`bullet-no-footer`);
|
|
52
|
-
}
|
|
53
|
-
return t.join(" ");
|
|
54
|
-
}
|
|
55
|
-
get footerClasses() {
|
|
56
|
-
const t = [ "footer" ];
|
|
57
|
-
if (!this.hasActionSlotContent && !this.hasBulletSlotContent) {
|
|
58
|
-
t.push(`footer-no-action-nor-bullet`);
|
|
59
|
-
} else if (!this.hasActionSlotContent) {
|
|
60
|
-
t.push(`footer-no-action`);
|
|
61
|
-
} else if (!this.hasBulletSlotContent) {
|
|
62
|
-
t.push(`footer-no-bullet`);
|
|
63
|
-
}
|
|
64
|
-
return t.join(" ");
|
|
65
|
-
}
|
|
66
|
-
get hasActionSlotContent() {
|
|
67
|
-
return i(this.hostElement, "action");
|
|
68
|
-
}
|
|
69
|
-
get hasBodySlotContent() {
|
|
70
|
-
return i(this.hostElement, "body");
|
|
71
|
-
}
|
|
72
|
-
get hasBulletSlotContent() {
|
|
73
|
-
return i(this.hostElement, "bullet");
|
|
74
|
-
}
|
|
75
|
-
get hasFooterSlotContent() {
|
|
76
|
-
return i(this.hostElement, "footer");
|
|
77
|
-
}
|
|
78
|
-
get hasHeaderSlotContent() {
|
|
79
|
-
return i(this.hostElement, "header");
|
|
80
|
-
}
|
|
81
|
-
get itemClasses() {
|
|
82
|
-
const t = [ "item" ];
|
|
83
|
-
if (!this.hasActionSlotContent && !this.hasBulletSlotContent) {
|
|
84
|
-
t.push(`item-no-action-nor-bullet`);
|
|
85
|
-
} else if (!this.hasActionSlotContent) {
|
|
86
|
-
t.push(`item-no-action`);
|
|
87
|
-
} else if (!this.hasBulletSlotContent) {
|
|
88
|
-
t.push(`item-no-bullet`);
|
|
89
|
-
}
|
|
90
|
-
if (!this.hasFooterSlotContent) {
|
|
91
|
-
t.push(`item-no-footer`);
|
|
92
|
-
}
|
|
93
|
-
return t.join(" ");
|
|
94
|
-
}
|
|
95
|
-
get mainClasses() {
|
|
96
|
-
const t = [ "main" ];
|
|
97
|
-
if (!this.hasActionSlotContent && !this.hasBulletSlotContent) {
|
|
98
|
-
t.push(`main-no-action-nor-bullet`);
|
|
99
|
-
} else if (!this.hasBulletSlotContent) {
|
|
100
|
-
t.push(`main-no-bullet`);
|
|
101
|
-
}
|
|
102
|
-
return t.join(" ");
|
|
103
|
-
}
|
|
104
|
-
// #endregion
|
|
105
|
-
// #region Render Methods
|
|
106
|
-
render() {
|
|
107
|
-
const {clickable: t} = this;
|
|
108
|
-
return e("div", {
|
|
109
|
-
key: "0829fd5b35d9479ab8a7dae744e8a09e90a1a128",
|
|
110
|
-
"test-id": "itemContainer",
|
|
111
|
-
class: this.itemClasses,
|
|
112
|
-
ref: t => this.itemElement = t,
|
|
113
|
-
role: t ? "button" : undefined,
|
|
114
|
-
tabIndex: t ? 0 : undefined
|
|
115
|
-
}, this.hasBulletSlotContent && e("div", {
|
|
116
|
-
key: "6fba2ecbbe6fe30121f15cda9cc5026a5c5468c2",
|
|
117
|
-
class: this.bulletClasses
|
|
118
|
-
}, e("slot", {
|
|
119
|
-
key: "9bd9880d99124c1102725b5ce6ca49ac1e229cf9",
|
|
120
|
-
name: "bullet"
|
|
121
|
-
})), e("div", {
|
|
122
|
-
key: "0c184236511ba043c91a009c93680858e34de545",
|
|
123
|
-
class: this.mainClasses
|
|
124
|
-
}, this.hasHeaderSlotContent && e("div", {
|
|
125
|
-
key: "2570b5fd60955dbbc97f5f3d941a5d653785fb0e",
|
|
126
|
-
class: "header"
|
|
127
|
-
}, e("slot", {
|
|
128
|
-
key: "a438cafe8aeded03ee814f736ae897852a9f1415",
|
|
129
|
-
name: "header"
|
|
130
|
-
})), this.hasBodySlotContent && e("div", {
|
|
131
|
-
key: "270585a7a4ca111aedd4baeab101c353814aa72c",
|
|
132
|
-
class: "body"
|
|
133
|
-
}, e("slot", {
|
|
134
|
-
key: "cc95afec425e06c0a9edccedb0420207ccab88a0",
|
|
135
|
-
name: "body"
|
|
136
|
-
}))), this.hasActionSlotContent && e("div", {
|
|
137
|
-
key: "c6a32baa731bd79c57a625d615058442a5bc764a",
|
|
138
|
-
class: this.actionClasses
|
|
139
|
-
}, e("slot", {
|
|
140
|
-
key: "2b3104f1e0b4eed5e605c5784468f608240a881b",
|
|
141
|
-
name: "action"
|
|
142
|
-
})), this.hasFooterSlotContent && e("div", {
|
|
143
|
-
key: "0a989b6ec5ca51e55fb44d0e90f57fe792a6bf35",
|
|
144
|
-
class: this.footerClasses
|
|
145
|
-
}, e("slot", {
|
|
146
|
-
key: "76ae62c0b433f78b187853da2cf40394f7ca315e",
|
|
147
|
-
name: "footer"
|
|
148
|
-
})));
|
|
149
|
-
}
|
|
150
|
-
get hostElement() {
|
|
151
|
-
return o(this);
|
|
152
|
-
}
|
|
153
|
-
};
|
|
154
|
-
|
|
155
|
-
c.style = n;
|
|
156
|
-
|
|
157
|
-
export { c as q2_item };
|
|
158
|
-
//# sourceMappingURL=q2-item.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["q2ItemCss","Q2ItemStyle0","Q2Item","componentDidLoad","MutationObserver","observer","this","renderTrigger","observe","hostElement","childList","subtree","attributes","mutationObserver","overrideFocus","delegateFocus","event","clickable","_a","itemElement","focus","preventDefault","actionClasses","classes","hasBulletSlotContent","push","join","bulletClasses","hasFooterSlotContent","footerClasses","hasActionSlotContent","hasSlotContent","hasBodySlotContent","hasHeaderSlotContent","itemClasses","mainClasses","render","h","key","class","ref","el","role","undefined","tabIndex","name"],"sources":["src/components/q2-item/q2-item.scss?tag=q2-item&encapsulation=shadow","src/components/q2-item/q2-item.tsx"],"sourcesContent":["@import '../../styles/host.scss';\n@import '../../styles/functions';\n@import '../q2-btn/q2-btn-mixins';\n\n:host {\n display: block;\n}\n\n:host([clickable]) {\n cursor: pointer;\n --comp-background: #{var-list(\n --tct-btn-primary-background,\n --tct-btn-primary-bg,\n --t-a11y-active-gray-color-AA,\n #404040\n )};\n .item {\n --comp-border-radius: #{var-list(--tct-item-border-radius, --app-border-radius-1, 4px)};\n --comp-btn-tween: #{var-list(var-prefixer(btn-tween), --tct-tween-1, --app-tween-1, unquote('0.2s ease'))};\n --comp-btn-fallback-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);\n --comp-hover-box-shadow: #{var-list(--tct-btn-primary-box-shadow, --comp-btn-fallback-box-shadow)};\n --comp-active-box-shadow: var(--tct-btn-primary-active-background, #0063a0);\n --comp-font-color: #{var-list(--tct-btn-primary-font-color, --app-white, #ffffff)};\n @include btn-ring(primary, hover, --comp-background, --comp-font-color, null);\n &:hover {\n box-shadow: var(--comp-hover-box-shadow);\n }\n &:active {\n box-shadow: var(--comp-active-box-shadow);\n }\n &:focus-visible {\n box-shadow: var(--const-double-focus-ring);\n }\n }\n}\n\n.action {\n --tct-btn-icon-height: #{var-list(--tct-item-action-icon-height, --app-scale-6x, 30px)};\n --tct-btn-icon-width: #{var-list(--tct-item-action-icon-width, --app-scale-6x, 30px)};\n --tct-icon-size: #{var-list(--tct-item-action-icon-size, --app-scale-6x, 30px)};\n --tct-radio-label-hidden-columns: 18px;\n --tct-radio-label-margin-right: 0;\n --tct-radio-margin: 0;\n\n align-items: center;\n display: flex;\n grid-row: 1;\n justify-content: center;\n\n &-no-bullet {\n grid-column: 2;\n }\n}\n\n.body {\n color: var-list(--tct-item-body-color, --t-textA, #747474);\n font-size: var-list(--tct-item-body-font-size, --app-font-size, 14px);\n font-weight: var-list(--tct-item-body-font-weight, 400);\n}\n\n.bullet {\n --tct-avatar-fallback-height: #{var-list(--tct-item-avatar-height, --app-scale-7x, 35px)};\n --tct-avatar-fallback-width: #{var-list(--tct-item-avatar-width, --app-scale-7x, 35px)};\n --tct-avatar-height: #{var-list(--tct-item-avatar-height, --app-scale-7x, 35px)};\n --tct-avatar-width: #{var-list(--tct-item-avatar-width, --app-scale-7x, 35px)};\n\n grid-column: 1;\n grid-row-start: 1;\n grid-row-end: 3;\n padding-top: var-list(--tct-item-bullet-padding-top, --app-scale-1x, 5px);\n text-align: center;\n\n &-no-footer {\n grid-row-end: 2;\n }\n}\n\n.footer {\n grid-column-start: 2;\n grid-column-end: 4;\n grid-row: 2;\n\n &-no-action-nor-bullet {\n grid-column-start: 1;\n grid-column-end: 2;\n }\n\n &-no-action {\n grid-column-start: 2;\n grid-column-end: 3;\n }\n\n &-no-bullet {\n grid-column-start: 1;\n grid-column-end: 3;\n }\n}\n\n.header {\n color: var-list(--tct-item-header-color, --t-text, #4d4d4d);\n font-size: var-list(--tct-item-header-font-size, 16px);\n font-weight: var-list(--tct-item-header-font-weight, 600);\n line-height: var-list(--tct-item-header-line-height, 1.5);\n}\n\n.item {\n border: var(--tct-item-border);\n border-radius: var(--comp-border-radius);\n transition: var(--comp-btn-tween);\n transition-property: box-shadow;\n column-gap: var-list(--tct-item-horizontal-spacing, --app-scale-3x, 15px);\n display: grid;\n grid-template-columns: minmax(var(--app-scale-7x, 35px), auto) minmax(auto, 1fr) minmax(\n var(--app-scale-5x, 25px),\n auto\n );\n grid-template-rows: auto auto;\n padding: var(--tct-item-padding, 0);\n row-gap: var(--tct-item-vertical-spacing, var(--app-scale-2x, 10px));\n\n &-no-action-nor-bullet {\n grid-template-columns: auto;\n }\n\n &-no-action {\n grid-template-columns: minmax(var(--app-scale-7x, 35px), auto) minmax(auto, 1fr);\n }\n\n &-no-footer {\n grid-template-rows: auto;\n }\n\n &-no-bullet {\n grid-template-columns: minmax(auto, 1fr) minmax(var(--app-scale-5x, 25px), auto);\n }\n}\n\n.main {\n grid-column: 2;\n grid-row: 1;\n\n &-no-action-nor-bullet {\n grid-column: 1;\n }\n\n &-no-bullet {\n grid-column: 1;\n }\n}\n","import { Component, Element, Listen, h, State, Prop } from '@stencil/core';\nimport { hasSlotContent, overrideFocus } from 'src/utils';\n\n@Component({\n tag: 'q2-item',\n styleUrl: 'q2-item.scss',\n shadow: true,\n})\nexport class Q2Item {\n // #region Own Properties\n\n itemElement: HTMLDivElement;\n mutationObserver: MutationObserver;\n\n // #endregion\n // #region Host HTML Element\n\n @Element()\n hostElement: HTMLElement;\n\n // #endregion\n // #region State Properties\n\n @State()\n renderTrigger: number = 0;\n\n // #endregion\n // #region Public Property API\n\n /** Makes the item clickable. */\n @Prop({ reflect: true })\n clickable: boolean;\n\n // #endregion\n // #region Component Lifecycle Events\n\n componentDidLoad() {\n if (typeof MutationObserver !== 'undefined') {\n const observer = new MutationObserver(() => (this.renderTrigger += 1));\n observer.observe(this.hostElement, { childList: true, subtree: true, attributes: true });\n this.mutationObserver = observer;\n }\n overrideFocus(this.hostElement);\n }\n\n // #endregion\n // #region Listeners\n\n @Listen('focus')\n delegateFocus(event: FocusEvent) {\n if (this.clickable) {\n this.itemElement?.focus();\n } else {\n event.preventDefault();\n }\n }\n\n // #endregion\n // #region Local Methods\n\n get actionClasses() {\n const classes = ['action'];\n if (!this.hasBulletSlotContent) {\n classes.push(`action-no-bullet`);\n }\n\n return classes.join(' ');\n }\n\n get bulletClasses() {\n const classes = ['bullet'];\n if (!this.hasFooterSlotContent) {\n classes.push(`bullet-no-footer`);\n }\n\n return classes.join(' ');\n }\n\n get footerClasses() {\n const classes = ['footer'];\n if (!this.hasActionSlotContent && !this.hasBulletSlotContent) {\n classes.push(`footer-no-action-nor-bullet`);\n } else if (!this.hasActionSlotContent) {\n classes.push(`footer-no-action`);\n } else if (!this.hasBulletSlotContent) {\n classes.push(`footer-no-bullet`);\n }\n\n return classes.join(' ');\n }\n\n get hasActionSlotContent() {\n return hasSlotContent(this.hostElement, 'action');\n }\n\n get hasBodySlotContent() {\n return hasSlotContent(this.hostElement, 'body');\n }\n\n get hasBulletSlotContent() {\n return hasSlotContent(this.hostElement, 'bullet');\n }\n\n get hasFooterSlotContent() {\n return hasSlotContent(this.hostElement, 'footer');\n }\n\n get hasHeaderSlotContent() {\n return hasSlotContent(this.hostElement, 'header');\n }\n\n get itemClasses() {\n const classes = ['item'];\n if (!this.hasActionSlotContent && !this.hasBulletSlotContent) {\n classes.push(`item-no-action-nor-bullet`);\n } else if (!this.hasActionSlotContent) {\n classes.push(`item-no-action`);\n } else if (!this.hasBulletSlotContent) {\n classes.push(`item-no-bullet`);\n }\n if (!this.hasFooterSlotContent) {\n classes.push(`item-no-footer`);\n }\n\n return classes.join(' ');\n }\n\n get mainClasses() {\n const classes = ['main'];\n if (!this.hasActionSlotContent && !this.hasBulletSlotContent) {\n classes.push(`main-no-action-nor-bullet`);\n } else if (!this.hasBulletSlotContent) {\n classes.push(`main-no-bullet`);\n }\n\n return classes.join(' ');\n }\n\n // #endregion\n // #region Render Methods\n\n render() {\n const { clickable } = this;\n return (\n <div\n test-id=\"itemContainer\"\n class={this.itemClasses}\n ref={el => (this.itemElement = el)}\n role={clickable ? 'button' : undefined}\n tabIndex={clickable ? 0 : undefined}\n >\n {this.hasBulletSlotContent && (\n <div class={this.bulletClasses}>\n <slot name=\"bullet\" />\n </div>\n )}\n <div class={this.mainClasses}>\n {this.hasHeaderSlotContent && (\n <div class=\"header\">\n <slot name=\"header\" />\n </div>\n )}\n {this.hasBodySlotContent && (\n <div class=\"body\">\n <slot name=\"body\" />\n </div>\n )}\n </div>\n {this.hasActionSlotContent && (\n <div class={this.actionClasses}>\n <slot name=\"action\" />\n </div>\n )}\n {this.hasFooterSlotContent && (\n <div class={this.footerClasses}>\n <slot name=\"footer\" />\n </div>\n )}\n </div>\n );\n }\n\n // #endregion\n}\n"],"mappings":";;;;AAAA,MAAMA,IAAY;;AAClB,MAAAC,IAAeD;;MCOFE,IAAM;;;yBAgBS;;;;;EAYxB,gBAAAC;IACI,WAAWC,qBAAqB,aAAa;MACzC,MAAMC,IAAW,IAAID,kBAAiB,MAAOE,KAAKC,iBAAiB;MACnEF,EAASG,QAAQF,KAAKG,aAAa;QAAEC,WAAW;QAAMC,SAAS;QAAMC,YAAY;;MACjFN,KAAKO,mBAAmBR;;IAE5BS,EAAcR,KAAKG;;;;EAOvB,aAAAM,CAAcC;;IACV,IAAIV,KAAKW,WAAW;OAChBC,IAAAZ,KAAKa,iBAAW,QAAAD,WAAA,aAAAA,EAAEE;WACf;MACHJ,EAAMK;;;;;EAOd,iBAAIC;IACA,MAAMC,IAAU,EAAC;IACjB,KAAKjB,KAAKkB,sBAAsB;MAC5BD,EAAQE,KAAK;;IAGjB,OAAOF,EAAQG,KAAK;;EAGxB,iBAAIC;IACA,MAAMJ,IAAU,EAAC;IACjB,KAAKjB,KAAKsB,sBAAsB;MAC5BL,EAAQE,KAAK;;IAGjB,OAAOF,EAAQG,KAAK;;EAGxB,iBAAIG;IACA,MAAMN,IAAU,EAAC;IACjB,KAAKjB,KAAKwB,yBAAyBxB,KAAKkB,sBAAsB;MAC1DD,EAAQE,KAAK;WACV,KAAKnB,KAAKwB,sBAAsB;MACnCP,EAAQE,KAAK;WACV,KAAKnB,KAAKkB,sBAAsB;MACnCD,EAAQE,KAAK;;IAGjB,OAAOF,EAAQG,KAAK;;EAGxB,wBAAII;IACA,OAAOC,EAAezB,KAAKG,aAAa;;EAG5C,sBAAIuB;IACA,OAAOD,EAAezB,KAAKG,aAAa;;EAG5C,wBAAIe;IACA,OAAOO,EAAezB,KAAKG,aAAa;;EAG5C,wBAAImB;IACA,OAAOG,EAAezB,KAAKG,aAAa;;EAG5C,wBAAIwB;IACA,OAAOF,EAAezB,KAAKG,aAAa;;EAG5C,eAAIyB;IACA,MAAMX,IAAU,EAAC;IACjB,KAAKjB,KAAKwB,yBAAyBxB,KAAKkB,sBAAsB;MAC1DD,EAAQE,KAAK;WACV,KAAKnB,KAAKwB,sBAAsB;MACnCP,EAAQE,KAAK;WACV,KAAKnB,KAAKkB,sBAAsB;MACnCD,EAAQE,KAAK;;IAEjB,KAAKnB,KAAKsB,sBAAsB;MAC5BL,EAAQE,KAAK;;IAGjB,OAAOF,EAAQG,KAAK;;EAGxB,eAAIS;IACA,MAAMZ,IAAU,EAAC;IACjB,KAAKjB,KAAKwB,yBAAyBxB,KAAKkB,sBAAsB;MAC1DD,EAAQE,KAAK;WACV,KAAKnB,KAAKkB,sBAAsB;MACnCD,EAAQE,KAAK;;IAGjB,OAAOF,EAAQG,KAAK;;;;EAMxB,MAAAU;IACI,OAAMnB,WAAEA,KAAcX;IACtB,OACI+B,EAAA;MAAAC,KAAA;MAAA,WACY;MACRC,OAAOjC,KAAK4B;MACZM,KAAKC,KAAOnC,KAAKa,cAAcsB;MAC/BC,MAAMzB,IAAY,WAAW0B;MAC7BC,UAAU3B,IAAY,IAAI0B;OAEzBrC,KAAKkB,wBACFa,EAAA;MAAAC,KAAA;MAAKC,OAAOjC,KAAKqB;OACbU,EAAA;MAAAC,KAAA;MAAMO,MAAK;SAGnBR,EAAA;MAAAC,KAAA;MAAKC,OAAOjC,KAAK6B;OACZ7B,KAAK2B,wBACFI,EAAA;MAAAC,KAAA;MAAKC,OAAM;OACPF,EAAA;MAAAC,KAAA;MAAMO,MAAK;SAGlBvC,KAAK0B,sBACFK,EAAA;MAAAC,KAAA;MAAKC,OAAM;OACPF,EAAA;MAAAC,KAAA;MAAMO,MAAK;UAItBvC,KAAKwB,wBACFO,EAAA;MAAAC,KAAA;MAAKC,OAAOjC,KAAKgB;OACbe,EAAA;MAAAC,KAAA;MAAMO,MAAK;SAGlBvC,KAAKsB,wBACFS,EAAA;MAAAC,KAAA;MAAKC,OAAOjC,KAAKuB;OACbQ,EAAA;MAAAC,KAAA;MAAMO,MAAK"}
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import { r as t, c as i, h as n, g as o } from "./index-7a5365e2.js";
|
|
2
|
-
|
|
3
|
-
const e = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{display:inline-block}:host:active{box-shadow:none}.link-container{--comp-link-font-bold-stroke-width:0.5px;background:transparent;border:none;font-size:var(--tct-link-font-size, inherit);font-weight:var(--tct-link-font-weight, inherit)}.link-container.standalone{--comp-icon-stroke:var(--tct-link-icon-stroke-width, 1.5)}.link-container.standalone .link{color:var(--tct-link-color-standalone, var(--t-primary));height:var(--tct-link-height, 24px);display:flex;align-items:center;--tct-icon-size:16px;text-decoration:none}.link-container.standalone .link q2-icon{margin-left:var(--tct-link-label-icon-gap, 6px)}.link-container.standalone:hover{text-decoration:underline;-webkit-text-stroke-width:var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));text-stroke-width:var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));--tct-icon-stroke-width:calc(var(--comp-icon-stroke) + 0.5)}.link-container.standalone:active:hover{text-decoration:underline;-webkit-text-stroke-width:var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));text-stroke-width:var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));--tct-icon-stroke-width:calc(var(--comp-icon-stroke) + 0.5)}.link-container.standalone:active:hover .link{color:var(--tct-link-color-standalone-active, var(--t-primary-d2));box-shadow:none}.link-container.standalone.disabled .link{cursor:not-allowed;color:var(--tct-link-color-standalone-disabled, var(--t-primary));opacity:0.5;text-decoration:none}.link-container.standalone.disabled:hover{text-decoration:none}.link-container.inline{margin:0 var(--tct-link-side-margin, 6px);text-decoration:underline;color:var(--tct-link-color-inline, var(--t-primary))}.link-container.inline:hover{-webkit-text-stroke-width:var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));text-stroke-width:var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width))}.link-container.inline:active:hover{-webkit-text-stroke-width:var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));text-stroke-width:var(--tct-link-font-bold-stroke-width, var(--comp-link-font-bold-stroke-width));color:var(--tct-link-color-inline-active, var(--t-primary-d2));box-shadow:none}.link-container.inline.disabled{cursor:not-allowed;opacity:0.5}.link-container.inline:focus-visible .link-container.inline{box-shadow:var(--const-double-focus-ring)}";
|
|
4
|
-
|
|
5
|
-
const r = e;
|
|
6
|
-
|
|
7
|
-
const l = class {
|
|
8
|
-
constructor(n) {
|
|
9
|
-
t(this, n);
|
|
10
|
-
this.tctClick = i(this, "tctClick", 7);
|
|
11
|
-
this.disabled = false;
|
|
12
|
-
this.href = "#";
|
|
13
|
-
this.label = undefined;
|
|
14
|
-
this.referrerpolicy = undefined;
|
|
15
|
-
this.target = undefined;
|
|
16
|
-
this.tctTitle = undefined;
|
|
17
|
-
this.variant = "inline";
|
|
18
|
-
}
|
|
19
|
-
// #endregion
|
|
20
|
-
// #region Public Methods API
|
|
21
|
-
/**
|
|
22
|
-
* A method for click.
|
|
23
|
-
*
|
|
24
|
-
* @testOnly
|
|
25
|
-
*/
|
|
26
|
-
async clickLink() {
|
|
27
|
-
const t = this.hostElement.shadowRoot.querySelector(`[test-id="linkAnchor"]`);
|
|
28
|
-
t === null || t === void 0 ? void 0 : t.click();
|
|
29
|
-
}
|
|
30
|
-
// #endregion
|
|
31
|
-
// #region Local Methods
|
|
32
|
-
get classes() {
|
|
33
|
-
const t = [ "link-container" ];
|
|
34
|
-
if (this.variant) t.push(this.variant);
|
|
35
|
-
if (!!this.disabled) t.push("disabled");
|
|
36
|
-
return t.join(" ");
|
|
37
|
-
}
|
|
38
|
-
handleClick(t) {
|
|
39
|
-
t.stopPropagation();
|
|
40
|
-
if (this.disabled) return;
|
|
41
|
-
this.tctClick.emit({
|
|
42
|
-
target: this.target,
|
|
43
|
-
referrerpolicy: this.referrerpolicy,
|
|
44
|
-
href: this.href
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
// #endregion
|
|
48
|
-
// #region Render Methods
|
|
49
|
-
render() {
|
|
50
|
-
return this.variant === "standalone" ? n("div", {
|
|
51
|
-
class: this.classes,
|
|
52
|
-
"aria-label": this.label
|
|
53
|
-
}, n("a", {
|
|
54
|
-
class: "link",
|
|
55
|
-
onClick: t => this.handleClick(t),
|
|
56
|
-
href: !!this.disabled ? undefined : this.href,
|
|
57
|
-
target: this.target || "_self",
|
|
58
|
-
referrerPolicy: this.referrerpolicy || undefined,
|
|
59
|
-
title: this.tctTitle || undefined,
|
|
60
|
-
"test-id": "linkAnchor"
|
|
61
|
-
}, n("span", {
|
|
62
|
-
class: "label"
|
|
63
|
-
}, this.label), n("q2-icon", {
|
|
64
|
-
type: "chevron-right"
|
|
65
|
-
}))) : n("a", {
|
|
66
|
-
class: this.classes,
|
|
67
|
-
onClick: t => this.handleClick(t),
|
|
68
|
-
href: !!this.disabled ? undefined : this.href,
|
|
69
|
-
target: this.target || "_self",
|
|
70
|
-
referrerPolicy: this.referrerpolicy || undefined,
|
|
71
|
-
title: this.tctTitle || undefined,
|
|
72
|
-
"test-id": "linkAnchor"
|
|
73
|
-
}, this.label);
|
|
74
|
-
}
|
|
75
|
-
get hostElement() {
|
|
76
|
-
return o(this);
|
|
77
|
-
}
|
|
78
|
-
};
|
|
79
|
-
|
|
80
|
-
l.style = r;
|
|
81
|
-
|
|
82
|
-
export { l as q2_link };
|
|
83
|
-
//# sourceMappingURL=q2-link.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["q2LinkCss","Q2LinkStyle0","Q2Link","clickLink","anchor","this","hostElement","shadowRoot","querySelector","click","classes","list","variant","push","disabled","join","handleClick","event","stopPropagation","tctClick","emit","target","referrerpolicy","href","render","h","class","label","onClick","e","undefined","referrerPolicy","title","tctTitle","type"],"sources":["src/components/q2-link/q2-link.scss?tag=q2-link&encapsulation=shadow","src/components/q2-link/q2-link.tsx"],"sourcesContent":["@import '../../styles/host.scss';\n@import '../../styles/functions';\n\n:host {\n display: inline-block;\n}\n\n:host {\n &:active {\n box-shadow: none;\n }\n}\n\n.link-container {\n --comp-link-font-bold-stroke-width: 0.5px;\n background: transparent;\n border: none;\n font-size: var-list(--tct-link-font-size, inherit);\n font-weight: var-list(--tct-link-font-weight, inherit);\n\n &.standalone {\n --comp-icon-stroke: var(--tct-link-icon-stroke-width, 1.5);\n .link {\n color: var-list(--tct-link-color-standalone, --t-primary);\n height: var(--tct-link-height, 24px);\n display: flex;\n align-items: center;\n --tct-icon-size: 16px;\n text-decoration: none;\n q2-icon {\n margin-left: var(--tct-link-label-icon-gap, 6px);\n }\n }\n &:hover {\n text-decoration: underline;\n -webkit-text-stroke-width: var-list(--tct-link-font-bold-stroke-width, --comp-link-font-bold-stroke-width);\n text-stroke-width: var-list(--tct-link-font-bold-stroke-width, --comp-link-font-bold-stroke-width);\n --tct-icon-stroke-width: calc(var(--comp-icon-stroke) + 0.5);\n }\n &:active:hover {\n text-decoration: underline;\n -webkit-text-stroke-width: var-list(--tct-link-font-bold-stroke-width, --comp-link-font-bold-stroke-width);\n text-stroke-width: var-list(--tct-link-font-bold-stroke-width, --comp-link-font-bold-stroke-width);\n --tct-icon-stroke-width: calc(var(--comp-icon-stroke) + 0.5);\n .link {\n color: var-list(--tct-link-color-standalone-active, --t-primary-d2);\n box-shadow: none;\n }\n }\n &.disabled {\n .link {\n cursor: not-allowed;\n color: var-list(--tct-link-color-standalone-disabled, --t-primary);\n opacity: 0.5;\n text-decoration: none;\n }\n &:hover {\n text-decoration: none;\n }\n }\n }\n\n &.inline {\n margin: 0 var(--tct-link-side-margin, 6px);\n text-decoration: underline;\n color: var-list(--tct-link-color-inline, --t-primary);\n &:hover {\n -webkit-text-stroke-width: var-list(--tct-link-font-bold-stroke-width, --comp-link-font-bold-stroke-width);\n text-stroke-width: var-list(--tct-link-font-bold-stroke-width, --comp-link-font-bold-stroke-width);\n }\n &:active:hover {\n -webkit-text-stroke-width: var-list(--tct-link-font-bold-stroke-width, --comp-link-font-bold-stroke-width);\n text-stroke-width: var-list(--tct-link-font-bold-stroke-width, --comp-link-font-bold-stroke-width);\n color: var-list(--tct-link-color-inline-active, --t-primary-d2);\n box-shadow: none;\n }\n &.disabled {\n cursor: not-allowed;\n opacity: 0.5;\n }\n &:focus-visible & {\n box-shadow: var(--const-double-focus-ring);\n }\n }\n}\n\n","import { Component, Prop, h, ComponentInterface, Element, Event, EventEmitter, Method } from '@stencil/core';\n@Component({ tag: 'q2-link', shadow: true, styleUrl: 'q2-link.scss' })\nexport class Q2Link implements ComponentInterface {\n // #region Host HTML Element\n\n @Element()\n hostElement: HTMLElement;\n\n // #endregion\n // #region Public Property API\n\n /** The disabled. */\n @Prop({ reflect: true })\n disabled: boolean = false;\n\n /** The link when clicked. */\n @Prop({ reflect: true })\n href: string = '#';\n\n /** The label to display. */\n @Prop({ reflect: true })\n label: string;\n\n /** The [referrerpolicy](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#referrerpolicy) */\n @Prop({ reflect: true })\n referrerpolicy: ReferrerPolicy;\n\n /** The target. */\n @Prop({ reflect: true })\n target: string; // _self | _blank\n\n /** The title attribute on a tag in shadowRoot. */\n @Prop({ reflect: true })\n tctTitle: string;\n\n /** The value link to display. */\n @Prop({ reflect: true })\n variant: string = 'inline';\n\n // #endregion\n // #region Events\n\n /**\n * Emitted when the link is clicked.\n * @legacyEvent\n */\n @Event()\n tctClick: EventEmitter<{ target: string; referrerpolicy: string; href: string }>;\n\n // #endregion\n // #region Public Methods API\n\n /**\n * A method for click.\n *\n * @testOnly\n */\n @Method()\n async clickLink() {\n const anchor = this.hostElement.shadowRoot.querySelector(`[test-id=\"linkAnchor\"]`);\n (anchor as HTMLAnchorElement)?.click();\n }\n\n // #endregion\n // #region Local Methods\n\n get classes() {\n const list = ['link-container'];\n if (this.variant) list.push(this.variant);\n if (!!this.disabled) list.push('disabled');\n return list.join(' ');\n }\n\n handleClick(event: MouseEvent) {\n event.stopPropagation();\n if (this.disabled) return;\n this.tctClick.emit({\n target: this.target,\n referrerpolicy: this.referrerpolicy,\n href: this.href,\n });\n }\n\n // #endregion\n // #region Render Methods\n\n render() {\n return this.variant === 'standalone' ? (\n <div\n class={this.classes}\n aria-label={this.label}\n >\n <a\n class=\"link\"\n onClick={e => this.handleClick(e)}\n href={!!this.disabled ? undefined : this.href}\n target={this.target || '_self'}\n referrerPolicy={this.referrerpolicy || undefined}\n title={this.tctTitle || undefined}\n test-id=\"linkAnchor\"\n >\n <span class=\"label\">{this.label}</span>\n <q2-icon type=\"chevron-right\"></q2-icon>\n </a>\n </div>\n ) : (\n <a\n class={this.classes}\n onClick={e => this.handleClick(e)}\n href={!!this.disabled ? undefined : this.href}\n target={this.target || '_self'}\n referrerPolicy={this.referrerpolicy || undefined}\n title={this.tctTitle || undefined}\n test-id=\"linkAnchor\"\n >\n {this.label}\n </a>\n );\n }\n\n // #endregion\n}\n"],"mappings":";;AAAA,MAAMA,IAAY;;AAClB,MAAAC,IAAeD;;MCCFE,IAAM;;;;oBAWK;gBAIL;;;;;mBAoBG;;;;;;;;;EAqBlB,eAAMC;IACF,MAAMC,IAASC,KAAKC,YAAYC,WAAWC,cAAc;IACxDJ,MAA4B,QAA5BA,WAAM,aAANA,EAA8BK;;;;EAMnC,WAAIC;IACA,MAAMC,IAAO,EAAC;IACd,IAAIN,KAAKO,SAASD,EAAKE,KAAKR,KAAKO;IACjC,MAAMP,KAAKS,UAAUH,EAAKE,KAAK;IAC/B,OAAOF,EAAKI,KAAK;;EAGrB,WAAAC,CAAYC;IACRA,EAAMC;IACN,IAAIb,KAAKS,UAAU;IACnBT,KAAKc,SAASC,KAAK;MACfC,QAAQhB,KAAKgB;MACbC,gBAAgBjB,KAAKiB;MACrBC,MAAMlB,KAAKkB;;;;;EAOnB,MAAAC;IACI,OAAOnB,KAAKO,YAAY,eACpBa,EAAA;MACIC,OAAOrB,KAAKK;MAAO,cACPL,KAAKsB;OAEjBF,EAAA;MACIC,OAAM;MACNE,SAASC,KAAKxB,KAAKW,YAAYa;MAC/BN,QAAQlB,KAAKS,WAAWgB,YAAYzB,KAAKkB;MACzCF,QAAQhB,KAAKgB,UAAU;MACvBU,gBAAgB1B,KAAKiB,kBAAkBQ;MACvCE,OAAO3B,KAAK4B,YAAYH;MAAS,WACzB;OAERL,EAAA;MAAMC,OAAM;OAASrB,KAAKsB,QAC1BF,EAAA;MAASS,MAAK;WAItBT,EAAA;MACIC,OAAOrB,KAAKK;MACZkB,SAASC,KAAKxB,KAAKW,YAAYa;MAC/BN,QAAQlB,KAAKS,WAAWgB,YAAYzB,KAAKkB;MACzCF,QAAQhB,KAAKgB,UAAU;MACvBU,gBAAgB1B,KAAKiB,kBAAkBQ;MACvCE,OAAO3B,KAAK4B,YAAYH;MAAS,WACzB;OAEPzB,KAAKsB"}
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
import { r as e, h as t, g as i } from "./index-7a5365e2.js";
|
|
2
|
-
|
|
3
|
-
import { e as s } from "./index-d18e2a20.js";
|
|
4
|
-
|
|
5
|
-
const o = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host([bordered]:not([bordered=false])) ::slotted(q2-item:not(:last-child)),:host([bordered]:not([bordered=false])) .header{border-style:var(--tct-list-item-border-style, solid);border-width:var(--tct-list-item-border-width, 0 0 1px 0);border-color:var(--tct-list-item-border-color, var(--t-gray-12, #d9d9d9))}::slotted(q2-item){--comp-item-padding:var(--tct-list-item-padding, var(--app-scale-2x, 10px) var(--app-scale-4x, 20px));--tct-item-padding:var(--comp-item-padding)}.header{--comp-default-header-padding:0 var(--app-scale-4x, 20px);display:flex;gap:var(--app-scale-3x, 12px);padding:var(--tct-list-header-padding, var(--comp-default-header-padding));min-height:var(--tct-list-header-min-height, var(--t-list-header-min-height, 44px))}.header-spacebetween{justify-content:space-between}.header-start{justify-content:flex-start}.header-end{justify-content:flex-end}.header .label{width:100%;height:var(--tct-list-label-height, 44px);line-height:var(--tct-list-label-line-height, 44px);font-size:var(--tct-list-label-font-size, var(--app-font-size, 14px));font-weight:var(--tct-list-label-font-weight, 600);color:var(--tct-list-label-font-color, var(--t-text, #4d4d4d))}";
|
|
6
|
-
|
|
7
|
-
const r = o;
|
|
8
|
-
|
|
9
|
-
const n = class {
|
|
10
|
-
constructor(t) {
|
|
11
|
-
e(this, t);
|
|
12
|
-
this.scheduledAfterRender = [];
|
|
13
|
-
this.onMutationObserved = () => {
|
|
14
|
-
this.renderTrigger += 1;
|
|
15
|
-
this.scheduledAfterRender.push((() => {
|
|
16
|
-
Array.from(this.hostElement.children).forEach((e => {
|
|
17
|
-
if (e.tagName === "Q2-ITEM") e.role = "listitem";
|
|
18
|
-
}));
|
|
19
|
-
}));
|
|
20
|
-
};
|
|
21
|
-
this.renderTrigger = 0;
|
|
22
|
-
this.bordered = undefined;
|
|
23
|
-
this.label = undefined;
|
|
24
|
-
}
|
|
25
|
-
// #endregion
|
|
26
|
-
// #region Component Lifecycle Events
|
|
27
|
-
disconnectedCallback() {
|
|
28
|
-
var e;
|
|
29
|
-
(e = this.mutationObserver) === null || e === void 0 ? void 0 : e.disconnect();
|
|
30
|
-
this.mutationObserver = null;
|
|
31
|
-
}
|
|
32
|
-
componentDidLoad() {
|
|
33
|
-
if (typeof MutationObserver === "undefined") return;
|
|
34
|
-
const e = new MutationObserver(this.onMutationObserved);
|
|
35
|
-
e.observe(this.hostElement, {
|
|
36
|
-
childList: true,
|
|
37
|
-
subtree: true
|
|
38
|
-
});
|
|
39
|
-
this.mutationObserver = e;
|
|
40
|
-
this.onMutationObserved();
|
|
41
|
-
}
|
|
42
|
-
componentDidRender() {
|
|
43
|
-
this.scheduledAfterRender.forEach((e => e()));
|
|
44
|
-
this.scheduledAfterRender = [];
|
|
45
|
-
}
|
|
46
|
-
// #endregion
|
|
47
|
-
// #region Local Methods
|
|
48
|
-
get hasFilterSlot() {
|
|
49
|
-
return !!this.hostElement.querySelector("q2-pill") || s(this.hostElement, "pill");
|
|
50
|
-
}
|
|
51
|
-
get hasLabelContent() {
|
|
52
|
-
return !!this.label;
|
|
53
|
-
}
|
|
54
|
-
get headerClasses() {
|
|
55
|
-
const e = [ "header" ];
|
|
56
|
-
if (this.hasLabelContent && this.hasFilterSlot) {
|
|
57
|
-
e.push("header-spacebetween");
|
|
58
|
-
} else if (this.hasLabelContent && !this.hasFilterSlot) {
|
|
59
|
-
e.push("header-start");
|
|
60
|
-
} else if (!this.hasLabelContent && this.hasFilterSlot) {
|
|
61
|
-
e.push("header-end");
|
|
62
|
-
}
|
|
63
|
-
return e.join(" ");
|
|
64
|
-
}
|
|
65
|
-
get listClasses() {
|
|
66
|
-
const e = [ "list" ];
|
|
67
|
-
return e.join(" ");
|
|
68
|
-
}
|
|
69
|
-
// #endregion
|
|
70
|
-
// #region Render Methods
|
|
71
|
-
render() {
|
|
72
|
-
return t("div", {
|
|
73
|
-
key: "e4371faae59ae85dee324d6d6783a4b93c23f67f",
|
|
74
|
-
class: this.listClasses,
|
|
75
|
-
ref: e => this.listElement = e
|
|
76
|
-
}, (this.hasFilterSlot || this.hasLabelContent) && t("div", {
|
|
77
|
-
key: "59cc98b62d2581a66a9ed127189fb23364c49bff",
|
|
78
|
-
class: this.headerClasses
|
|
79
|
-
}, t("div", {
|
|
80
|
-
key: "568b6fab57c7552d5a577d19bd31760f6d1aa461",
|
|
81
|
-
class: "label"
|
|
82
|
-
}, this.label), this.hasFilterSlot && t("slot", {
|
|
83
|
-
key: "d27e785788847cf1a422568383bfe5d986764b2b",
|
|
84
|
-
name: "filter"
|
|
85
|
-
})), t("div", {
|
|
86
|
-
key: "7a00add6911167d7a27008f10f5d44cfae5d80b2",
|
|
87
|
-
role: "list"
|
|
88
|
-
}, t("slot", {
|
|
89
|
-
key: "dd5a0290091b0f1cb00a14cde43bab36e87573d2"
|
|
90
|
-
})));
|
|
91
|
-
}
|
|
92
|
-
get hostElement() {
|
|
93
|
-
return i(this);
|
|
94
|
-
}
|
|
95
|
-
};
|
|
96
|
-
|
|
97
|
-
n.style = r;
|
|
98
|
-
|
|
99
|
-
export { n as q2_list };
|
|
100
|
-
//# sourceMappingURL=q2-list.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["q2ListCss","Q2ListStyle0","Q2List","this","scheduledAfterRender","onMutationObserved","renderTrigger","push","Array","from","hostElement","children","forEach","child","tagName","role","disconnectedCallback","_a","mutationObserver","disconnect","componentDidLoad","MutationObserver","observer","observe","childList","subtree","componentDidRender","fn","hasFilterSlot","querySelector","hasSlotContent","hasLabelContent","label","headerClasses","classes","join","listClasses","render","h","key","class","ref","el","listElement","name"],"sources":["src/components/q2-list/q2-list.scss?tag=q2-list&encapsulation=shadow","src/components/q2-list/q2-list.tsx"],"sourcesContent":["@import '../../styles/host.scss';\n@import '../../styles/functions';\n@import '../q2-btn/q2-btn-mixins';\n\n:host([bordered]:not([bordered='false'])) {\n ::slotted(q2-item:not(:last-child)),\n .header {\n border-style: var-list(--tct-list-item-border-style, solid);\n border-width: var-list(--tct-list-item-border-width, unquote('0 0 1px 0'));\n border-color: var-list(--tct-list-item-border-color, --t-gray-12, #d9d9d9);\n }\n}\n\n::slotted(q2-item) {\n --comp-item-padding: #{var-list(\n --tct-list-item-padding,\n unquote('#{var-list(--app-scale-2x, 10px) var-list(--app-scale-4x, 20px)}')\n )};\n --tct-item-padding: var(--comp-item-padding);\n}\n\n.header {\n --comp-default-header-padding: 0 var(--app-scale-4x, 20px);\n display: flex;\n gap: var(--app-scale-3x, 12px);\n padding: var-list(--tct-list-header-padding, --comp-default-header-padding);\n min-height: var-list(var-prefixer(list-header-min-height), 44px);\n &-spacebetween {\n justify-content: space-between;\n }\n &-start {\n justify-content: flex-start;\n }\n &-end {\n justify-content: flex-end;\n }\n .label {\n width: 100%;\n height: var(--tct-list-label-height, 44px);\n line-height: var(--tct-list-label-line-height, 44px);\n font-size: var-list(--tct-list-label-font-size, --app-font-size, 14px);\n font-weight: var(--tct-list-label-font-weight, 600);\n color: var-list(--tct-list-label-font-color, --t-text, #4d4d4d);\n }\n}\n","import { Component, Element, h, State, Prop } from '@stencil/core';\nimport { hasSlotContent } from 'src/utils';\n\n@Component({\n tag: 'q2-list',\n styleUrl: 'q2-list.scss',\n shadow: true,\n})\nexport class Q2List {\n // #region Own Properties\n\n listElement: HTMLDivElement;\n mutationObserver: MutationObserver;\n scheduledAfterRender: (() => void)[] = [];\n\n // #endregion\n // #region Host HTML Element\n\n @Element()\n hostElement: HTMLElement;\n\n // #endregion\n // #region State Properties\n\n @State()\n renderTrigger: number = 0;\n\n // #endregion\n // #region Public Property API\n\n /** Adds a border between each items */\n @Prop({ mutable: true, reflect: true })\n bordered: boolean;\n\n /** label text on header area */\n @Prop({ reflect: true })\n label: string;\n\n // #endregion\n // #region Component Lifecycle Events\n\n disconnectedCallback() {\n this.mutationObserver?.disconnect();\n this.mutationObserver = null;\n }\n\n componentDidLoad() {\n if (typeof MutationObserver === 'undefined') return;\n const observer = new MutationObserver(this.onMutationObserved);\n observer.observe(this.hostElement, { childList: true, subtree: true });\n this.mutationObserver = observer;\n this.onMutationObserved();\n }\n\n componentDidRender() {\n this.scheduledAfterRender.forEach(fn => fn());\n this.scheduledAfterRender = [];\n }\n\n // #endregion\n // #region Local Methods\n\n get hasFilterSlot() {\n return !!this.hostElement.querySelector('q2-pill') || hasSlotContent(this.hostElement, 'pill');\n }\n\n get hasLabelContent() {\n return !!this.label;\n }\n\n get headerClasses() {\n const classes = ['header'];\n if (this.hasLabelContent && this.hasFilterSlot) {\n classes.push('header-spacebetween');\n } else if (this.hasLabelContent && !this.hasFilterSlot) {\n classes.push('header-start');\n } else if (!this.hasLabelContent && this.hasFilterSlot) {\n classes.push('header-end');\n }\n return classes.join(' ');\n }\n\n get listClasses() {\n const classes = ['list'];\n return classes.join(' ');\n }\n\n onMutationObserved = () => {\n this.renderTrigger += 1;\n this.scheduledAfterRender.push(() => {\n Array.from(this.hostElement.children).forEach(child => {\n if (child.tagName === 'Q2-ITEM') child.role = 'listitem';\n });\n });\n };\n\n // #endregion\n // #region Render Methods\n\n render() {\n return (\n <div\n class={this.listClasses}\n ref={el => (this.listElement = el)}\n >\n {(this.hasFilterSlot || this.hasLabelContent) && (\n <div class={this.headerClasses}>\n <div class=\"label\">{this.label}</div>\n {this.hasFilterSlot && <slot name=\"filter\" />}\n </div>\n )}\n <div role=\"list\">\n <slot />\n </div>\n </div>\n );\n }\n\n // #endregion\n}\n"],"mappings":";;;;AAAA,MAAMA,IAAY;;AAClB,MAAAC,IAAeD;;MCOFE,IAAM;;;IAKfC,KAAAC,uBAAuC;IA0EvCD,KAAAE,qBAAqB;MACjBF,KAAKG,iBAAiB;MACtBH,KAAKC,qBAAqBG,MAAK;QAC3BC,MAAMC,KAAKN,KAAKO,YAAYC,UAAUC,SAAQC;UAC1C,IAAIA,EAAMC,YAAY,WAAWD,EAAME,OAAO;AAAU;AAC1D;AACJ;yBApEkB;;;;;;EAgBxB,oBAAAC;;KACIC,IAAAd,KAAKe,sBAAgB,QAAAD,WAAA,aAAAA,EAAEE;IACvBhB,KAAKe,mBAAmB;;EAG5B,gBAAAE;IACI,WAAWC,qBAAqB,aAAa;IAC7C,MAAMC,IAAW,IAAID,iBAAiBlB,KAAKE;IAC3CiB,EAASC,QAAQpB,KAAKO,aAAa;MAAEc,WAAW;MAAMC,SAAS;;IAC/DtB,KAAKe,mBAAmBI;IACxBnB,KAAKE;;EAGT,kBAAAqB;IACIvB,KAAKC,qBAAqBQ,SAAQe,KAAMA;IACxCxB,KAAKC,uBAAuB;;;;EAMhC,iBAAIwB;IACA,SAASzB,KAAKO,YAAYmB,cAAc,cAAcC,EAAe3B,KAAKO,aAAa;;EAG3F,mBAAIqB;IACA,SAAS5B,KAAK6B;;EAGlB,iBAAIC;IACA,MAAMC,IAAU,EAAC;IACjB,IAAI/B,KAAK4B,mBAAmB5B,KAAKyB,eAAe;MAC5CM,EAAQ3B,KAAK;WACV,IAAIJ,KAAK4B,oBAAoB5B,KAAKyB,eAAe;MACpDM,EAAQ3B,KAAK;WACV,KAAKJ,KAAK4B,mBAAmB5B,KAAKyB,eAAe;MACpDM,EAAQ3B,KAAK;;IAEjB,OAAO2B,EAAQC,KAAK;;EAGxB,eAAIC;IACA,MAAMF,IAAU,EAAC;IACjB,OAAOA,EAAQC,KAAK;;;;EAexB,MAAAE;IACI,OACIC,EAAA;MAAAC,KAAA;MACIC,OAAOrC,KAAKiC;MACZK,KAAKC,KAAOvC,KAAKwC,cAAcD;QAE7BvC,KAAKyB,iBAAiBzB,KAAK4B,oBACzBO,EAAA;MAAAC,KAAA;MAAKC,OAAOrC,KAAK8B;OACbK,EAAA;MAAAC,KAAA;MAAKC,OAAM;OAASrC,KAAK6B,QACxB7B,KAAKyB,iBAAiBU,EAAA;MAAAC,KAAA;MAAMK,MAAK;SAG1CN,EAAA;MAAAC,KAAA;MAAKxB,MAAK;OACNuB,EAAA;MAAAC,KAAA"}
|