wj-elements 0.0.11 → 0.0.13
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/localize-20081fd1.js +55 -0
- package/dist/router-links-26e4a166.js +204 -0
- package/dist/style.css +2243 -2
- package/dist/wj-animation.js +35 -23
- package/dist/wj-aside.js +22 -16
- package/dist/wj-avatar.js +49 -30
- package/dist/wj-badge.js +22 -18
- package/dist/wj-breadcrumb.js +102 -50
- package/dist/wj-breadcrumbs.js +36 -19
- package/dist/wj-button-group.js +36 -22
- package/dist/wj-button.js +104 -39
- package/dist/wj-card-content.js +18 -14
- package/dist/wj-card-controls.js +18 -14
- package/dist/wj-card-header.js +20 -14
- package/dist/wj-card-subtitle.js +19 -15
- package/dist/wj-card-title.js +18 -14
- package/dist/wj-card.js +20 -14
- package/dist/wj-carousel-item.js +22 -16
- package/dist/wj-carousel.js +169 -92
- package/dist/wj-checkbox.js +46 -24
- package/dist/wj-chip.js +39 -21
- package/dist/wj-col.js +31 -17
- package/dist/wj-color-picker.js +877 -509
- package/dist/wj-container.js +20 -16
- package/dist/wj-copy-button.js +112 -64
- package/dist/wj-dialog.js +68 -42
- package/dist/wj-divider.js +20 -14
- package/dist/wj-dropdown.js +29 -17
- package/dist/wj-element.js +415 -241
- package/dist/wj-fetchAndParseCSS.js +49 -32
- package/dist/wj-file-upload-item.js +64 -38
- package/dist/wj-file-upload.js +237 -137
- package/dist/wj-footer.js +18 -14
- package/dist/wj-form.js +18 -14
- package/dist/wj-format-digital.js +40 -25
- package/dist/wj-grid.js +20 -16
- package/dist/wj-header.js +22 -16
- package/dist/wj-icon-picker.js +122 -68
- package/dist/wj-icon.js +144 -64
- package/dist/wj-img-comparer.js +72 -41
- package/dist/wj-img.js +31 -19
- package/dist/wj-infinite-scroll.js +90 -52
- package/dist/wj-input-file.js +50 -27
- package/dist/wj-input.js +169 -70
- package/dist/wj-item.js +34 -17
- package/dist/wj-label.js +21 -19
- package/dist/wj-list.js +20 -15
- package/dist/wj-main.js +18 -14
- package/dist/wj-masonry.js +140 -83
- package/dist/wj-master.js +492 -350
- package/dist/wj-menu-button.js +19 -15
- package/dist/wj-menu-item.js +150 -64
- package/dist/wj-menu-label.js +21 -17
- package/dist/wj-menu.js +24 -18
- package/dist/wj-popup.js +1140 -712
- package/dist/wj-progress-bar.js +100 -40
- package/dist/wj-radio-group.js +38 -25
- package/dist/wj-radio.js +46 -22
- package/dist/wj-rate.js +121 -71
- package/dist/wj-relative-time.js +48 -24
- package/dist/wj-route.js +11 -8
- package/dist/wj-router-link.js +22 -17
- package/dist/wj-router-outlet.js +135 -71
- package/dist/wj-routerx.js +1124 -641
- package/dist/wj-row.js +21 -19
- package/dist/wj-slider.js +97 -55
- package/dist/wj-split-view.js +81 -43
- package/dist/wj-store.js +195 -110
- package/dist/wj-textarea.js +86 -37
- package/dist/wj-thumbnail.js +19 -15
- package/dist/wj-toast.js +87 -34
- package/dist/wj-toggle.js +42 -24
- package/dist/wj-toolbar-action.js +27 -16
- package/dist/wj-toolbar.js +26 -19
- package/dist/wj-tooltip.js +40 -24
- package/dist/wj-visually-hidden.js +18 -14
- package/package.json +1 -1
- package/dist/localize-762a9f0f.js +0 -43
- package/dist/router-links-e0087f84.js +0 -146
|
@@ -1,22 +1,24 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
+
var __publicField = (obj, key, value) => {
|
|
4
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
|
+
return value;
|
|
6
|
+
};
|
|
7
|
+
import WJElement from "./wj-element.js";
|
|
8
|
+
import { L as Localizer } from "./localize-20081fd1.js";
|
|
6
9
|
import "./wj-store.js";
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
class f extends h {
|
|
10
|
+
const styles = "/*\n[ WJ Format Digital ]\n*/\n.native-format-digital {\n white-space: nowrap;\n}";
|
|
11
|
+
class FormatDigital extends WJElement {
|
|
10
12
|
constructor() {
|
|
11
13
|
super();
|
|
12
|
-
|
|
13
|
-
this.localizer = new
|
|
14
|
+
__publicField(this, "className", "FormatDigital");
|
|
15
|
+
this.localizer = new Localizer(this);
|
|
14
16
|
}
|
|
15
17
|
get unit() {
|
|
16
18
|
return this.hasAttribute("unit") ? this.getAttribute("unit") : "byte";
|
|
17
19
|
}
|
|
18
20
|
static get cssStyleSheet() {
|
|
19
|
-
return
|
|
21
|
+
return styles;
|
|
20
22
|
}
|
|
21
23
|
static get observedAttributes() {
|
|
22
24
|
return ["value"];
|
|
@@ -27,25 +29,38 @@ class f extends h {
|
|
|
27
29
|
beforeDraw() {
|
|
28
30
|
if (this.value < 0)
|
|
29
31
|
return;
|
|
30
|
-
const
|
|
31
|
-
|
|
32
|
+
const bitPrefixes = ["", "kilo", "mega", "giga", "tera"];
|
|
33
|
+
const bytePrefixes = ["", "kilo", "mega", "giga", "tera", "peta"];
|
|
34
|
+
const prefix = this.unit === "bit" ? bitPrefixes : bytePrefixes;
|
|
35
|
+
const index = Math.max(0, Math.min(Math.floor(Math.log10(this.value) / 3), prefix.length - 1));
|
|
36
|
+
const unit = prefix[index] + this.unit;
|
|
37
|
+
const value = parseFloat((this.value / Math.pow(1e3, index)).toPrecision(3));
|
|
38
|
+
this.formattedValue = this.localizer.formatNumber(value, {
|
|
32
39
|
style: "unit",
|
|
33
|
-
unit
|
|
40
|
+
unit,
|
|
34
41
|
unitDisplay: this.unitDisplay || "short"
|
|
35
42
|
});
|
|
36
43
|
}
|
|
37
|
-
draw(
|
|
38
|
-
let
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
let
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
44
|
+
draw(context, store, params) {
|
|
45
|
+
let fragment = document.createDocumentFragment();
|
|
46
|
+
let element = document.createElement("div");
|
|
47
|
+
element.setAttribute("part", "native");
|
|
48
|
+
element.classList.add("native-format-digital");
|
|
49
|
+
let formatted = document.createElement("span");
|
|
50
|
+
formatted.setAttribute("part", "formatted");
|
|
51
|
+
formatted.innerText = this.formattedValue;
|
|
52
|
+
let start = document.createElement("slot");
|
|
53
|
+
start.setAttribute("name", "start");
|
|
54
|
+
let end = document.createElement("slot");
|
|
55
|
+
end.setAttribute("name", "end");
|
|
56
|
+
element.appendChild(start);
|
|
57
|
+
element.appendChild(formatted);
|
|
58
|
+
element.appendChild(end);
|
|
59
|
+
fragment.appendChild(element);
|
|
60
|
+
return fragment;
|
|
46
61
|
}
|
|
47
62
|
}
|
|
48
|
-
customElements.get("wj-format-digital") || window.customElements.define("wj-format-digital",
|
|
63
|
+
customElements.get("wj-format-digital") || window.customElements.define("wj-format-digital", FormatDigital);
|
|
49
64
|
export {
|
|
50
|
-
|
|
65
|
+
FormatDigital
|
|
51
66
|
};
|
package/dist/wj-grid.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
+
var __publicField = (obj, key, value) => {
|
|
4
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
|
+
return value;
|
|
6
|
+
};
|
|
7
|
+
import WJElement from "./wj-element.js";
|
|
5
8
|
import "./wj-store.js";
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
*/:host{width:100%;flex-grow:0}wj-row{display:flex;flex-wrap:wrap}wj-row{--wj-gutter-x: 1.5rem;--wj-gutter-y: 0;display:flex;flex-wrap:wrap;margin-top:calc(var(--wj-gutter-y) * -1);margin-right:calc(var(--wj-gutter-x) * -.5);margin-left:calc(var(--wj-gutter-x) * -.5)}.g-0,.gx-0{--wj-gutter-x: 0}.g-0,.gy-0{--wj-gutter-y: 0}.g-1,.gx-1{--wj-gutter-x: .25rem}.g-1,.gy-1{--wj-gutter-y: .25rem}.g-2,.gx-2{--wj-gutter-x: .5rem}.g-2,.gy-2{--wj-gutter-y: .5rem}.g-3,.gx-3{--wj-gutter-x: 1rem}.g-3,.gy-3{--wj-gutter-y: 1rem}.g-4,.gx-4{--wj-gutter-x: 1.5rem}.g-4,.gy-4{--wj-gutter-y: 1.5rem}.g-5,.gx-5{--wj-gutter-x: 3rem}.g-5,.gy-5{--wj-gutter-y: 3rem}@media (min-width: 576px){.g-sm-0,.gx-sm-0{--wj-gutter-x: 0}.g-sm-0,.gy-sm-0{--wj-gutter-y: 0}.g-sm-1,.gx-sm-1{--wj-gutter-x: .25rem}.g-sm-1,.gy-sm-1{--wj-gutter-y: .25rem}.g-sm-2,.gx-sm-2{--wj-gutter-x: .5rem}.g-sm-2,.gy-sm-2{--wj-gutter-y: .5rem}.g-sm-3,.gx-sm-3{--wj-gutter-x: 1rem}.g-sm-3,.gy-sm-3{--wj-gutter-y: 1rem}.g-sm-4,.gx-sm-4{--wj-gutter-x: 1.5rem}.g-sm-4,.gy-sm-4{--wj-gutter-y: 1.5rem}.g-sm-5,.gx-sm-5{--wj-gutter-x: 3rem}.g-sm-5,.gy-sm-5{--wj-gutter-y: 3rem}}@media (min-width: 768px){.g-md-0,.gx-md-0{--wj-gutter-x: 0}.g-md-0,.gy-md-0{--wj-gutter-y: 0}.g-md-1,.gx-md-1{--wj-gutter-x: .25rem}.g-md-1,.gy-md-1{--wj-gutter-y: .25rem}.g-md-2,.gx-md-2{--wj-gutter-x: .5rem}.g-md-2,.gy-md-2{--wj-gutter-y: .5rem}.g-md-3,.gx-md-3{--wj-gutter-x: 1rem}.g-md-3,.gy-md-3{--wj-gutter-y: 1rem}.g-md-4,.gx-md-4{--wj-gutter-x: 1.5rem}.g-md-4,.gy-md-4{--wj-gutter-y: 1.5rem}.g-md-5,.gx-md-5{--wj-gutter-x: 3rem}.g-md-5,.gy-md-5{--wj-gutter-y: 3rem}}@media (min-width: 992px){.g-lg-0,.gx-lg-0{--wj-gutter-x: 0}.g-lg-0,.gy-lg-0{--wj-gutter-y: 0}.g-lg-1,.gx-lg-1{--wj-gutter-x: .25rem}.g-lg-1,.gy-lg-1{--wj-gutter-y: .25rem}.g-lg-2,.gx-lg-2{--wj-gutter-x: .5rem}.g-lg-2,.gy-lg-2{--wj-gutter-y: .5rem}.g-lg-3,.gx-lg-3{--wj-gutter-x: 1rem}.g-lg-3,.gy-lg-3{--wj-gutter-y: 1rem}.g-lg-4,.gx-lg-4{--wj-gutter-x: 1.5rem}.g-lg-4,.gy-lg-4{--wj-gutter-y: 1.5rem}.g-lg-5,.gx-lg-5{--wj-gutter-x: 3rem}.g-lg-5,.gy-lg-5{--wj-gutter-y: 3rem}}@media (min-width: 1200px){.g-xl-0,.gx-xl-0{--wj-gutter-x: 0}.g-xl-0,.gy-xl-0{--wj-gutter-y: 0}.g-xl-1,.gx-xl-1{--wj-gutter-x: .25rem}.g-xl-1,.gy-xl-1{--wj-gutter-y: .25rem}.g-xl-2,.gx-xl-2{--wj-gutter-x: .5rem}.g-xl-2,.gy-xl-2{--wj-gutter-y: .5rem}.g-xl-3,.gx-xl-3{--wj-gutter-x: 1rem}.g-xl-3,.gy-xl-3{--wj-gutter-y: 1rem}.g-xl-4,.gx-xl-4{--wj-gutter-x: 1.5rem}.g-xl-4,.gy-xl-4{--wj-gutter-y: 1.5rem}.g-xl-5,.gx-xl-5{--wj-gutter-x: 3rem}.g-xl-5,.gy-xl-5{--wj-gutter-y: 3rem}}@media (min-width: 1400px){.g-xxl-0,.gx-xxl-0{--wj-gutter-x: 0}.g-xxl-0,.gy-xxl-0{--wj-gutter-y: 0}.g-xxl-1,.gx-xxl-1{--wj-gutter-x: .25rem}.g-xxl-1,.gy-xxl-1{--wj-gutter-y: .25rem}.g-xxl-2,.gx-xxl-2{--wj-gutter-x: .5rem}.g-xxl-2,.gy-xxl-2{--wj-gutter-y: .5rem}.g-xxl-3,.gx-xxl-3{--wj-gutter-x: 1rem}.g-xxl-3,.gy-xxl-3{--wj-gutter-y: 1rem}.g-xxl-4,.gx-xxl-4{--wj-gutter-x: 1.5rem}.g-xxl-4,.gy-xxl-4{--wj-gutter-y: 1.5rem}.g-xxl-5,.gx-xxl-5{--wj-gutter-x: 3rem}.g-xxl-5,.gy-xxl-5{--wj-gutter-y: 3rem}}
|
|
9
|
-
`;
|
|
10
|
-
class y extends u {
|
|
9
|
+
const styles = "/*!\n* direction.scss\n*/\n/* Skeleton Variables */\n/*\n[ Grid ]\n*/\n:host {\n width: 100%;\n flex-grow: 0;\n}\n/*\n[ Row ]\n*/\nwj-row {\n display: flex;\n flex-wrap: wrap;\n}\nwj-row {\n --wj-gutter-x: 1.5rem;\n --wj-gutter-y: 0;\n display: flex;\n flex-wrap: wrap;\n margin-top: calc(var(--wj-gutter-y) * -1);\n margin-right: calc(var(--wj-gutter-x) * -0.5);\n margin-left: calc(var(--wj-gutter-x) * -0.5);\n}\n.g-0,\n.gx-0 {\n --wj-gutter-x: 0;\n}\n.g-0,\n.gy-0 {\n --wj-gutter-y: 0;\n}\n.g-1,\n.gx-1 {\n --wj-gutter-x: 0.25rem;\n}\n.g-1,\n.gy-1 {\n --wj-gutter-y: 0.25rem;\n}\n.g-2,\n.gx-2 {\n --wj-gutter-x: 0.5rem;\n}\n.g-2,\n.gy-2 {\n --wj-gutter-y: 0.5rem;\n}\n.g-3,\n.gx-3 {\n --wj-gutter-x: 1rem;\n}\n.g-3,\n.gy-3 {\n --wj-gutter-y: 1rem;\n}\n.g-4,\n.gx-4 {\n --wj-gutter-x: 1.5rem;\n}\n.g-4,\n.gy-4 {\n --wj-gutter-y: 1.5rem;\n}\n.g-5,\n.gx-5 {\n --wj-gutter-x: 3rem;\n}\n.g-5,\n.gy-5 {\n --wj-gutter-y: 3rem;\n}\n@media (min-width: 576px) {\n .g-sm-0,\n .gx-sm-0 {\n --wj-gutter-x: 0;\n }\n .g-sm-0,\n .gy-sm-0 {\n --wj-gutter-y: 0;\n }\n .g-sm-1,\n .gx-sm-1 {\n --wj-gutter-x: 0.25rem;\n }\n .g-sm-1,\n .gy-sm-1 {\n --wj-gutter-y: 0.25rem;\n }\n .g-sm-2,\n .gx-sm-2 {\n --wj-gutter-x: 0.5rem;\n }\n .g-sm-2,\n .gy-sm-2 {\n --wj-gutter-y: 0.5rem;\n }\n .g-sm-3,\n .gx-sm-3 {\n --wj-gutter-x: 1rem;\n }\n .g-sm-3,\n .gy-sm-3 {\n --wj-gutter-y: 1rem;\n }\n .g-sm-4,\n .gx-sm-4 {\n --wj-gutter-x: 1.5rem;\n }\n .g-sm-4,\n .gy-sm-4 {\n --wj-gutter-y: 1.5rem;\n }\n .g-sm-5,\n .gx-sm-5 {\n --wj-gutter-x: 3rem;\n }\n .g-sm-5,\n .gy-sm-5 {\n --wj-gutter-y: 3rem;\n }\n}\n@media (min-width: 768px) {\n .g-md-0,\n .gx-md-0 {\n --wj-gutter-x: 0;\n }\n .g-md-0,\n .gy-md-0 {\n --wj-gutter-y: 0;\n }\n .g-md-1,\n .gx-md-1 {\n --wj-gutter-x: 0.25rem;\n }\n .g-md-1,\n .gy-md-1 {\n --wj-gutter-y: 0.25rem;\n }\n .g-md-2,\n .gx-md-2 {\n --wj-gutter-x: 0.5rem;\n }\n .g-md-2,\n .gy-md-2 {\n --wj-gutter-y: 0.5rem;\n }\n .g-md-3,\n .gx-md-3 {\n --wj-gutter-x: 1rem;\n }\n .g-md-3,\n .gy-md-3 {\n --wj-gutter-y: 1rem;\n }\n .g-md-4,\n .gx-md-4 {\n --wj-gutter-x: 1.5rem;\n }\n .g-md-4,\n .gy-md-4 {\n --wj-gutter-y: 1.5rem;\n }\n .g-md-5,\n .gx-md-5 {\n --wj-gutter-x: 3rem;\n }\n .g-md-5,\n .gy-md-5 {\n --wj-gutter-y: 3rem;\n }\n}\n@media (min-width: 992px) {\n .g-lg-0,\n .gx-lg-0 {\n --wj-gutter-x: 0;\n }\n .g-lg-0,\n .gy-lg-0 {\n --wj-gutter-y: 0;\n }\n .g-lg-1,\n .gx-lg-1 {\n --wj-gutter-x: 0.25rem;\n }\n .g-lg-1,\n .gy-lg-1 {\n --wj-gutter-y: 0.25rem;\n }\n .g-lg-2,\n .gx-lg-2 {\n --wj-gutter-x: 0.5rem;\n }\n .g-lg-2,\n .gy-lg-2 {\n --wj-gutter-y: 0.5rem;\n }\n .g-lg-3,\n .gx-lg-3 {\n --wj-gutter-x: 1rem;\n }\n .g-lg-3,\n .gy-lg-3 {\n --wj-gutter-y: 1rem;\n }\n .g-lg-4,\n .gx-lg-4 {\n --wj-gutter-x: 1.5rem;\n }\n .g-lg-4,\n .gy-lg-4 {\n --wj-gutter-y: 1.5rem;\n }\n .g-lg-5,\n .gx-lg-5 {\n --wj-gutter-x: 3rem;\n }\n .g-lg-5,\n .gy-lg-5 {\n --wj-gutter-y: 3rem;\n }\n}\n@media (min-width: 1200px) {\n .g-xl-0,\n .gx-xl-0 {\n --wj-gutter-x: 0;\n }\n .g-xl-0,\n .gy-xl-0 {\n --wj-gutter-y: 0;\n }\n .g-xl-1,\n .gx-xl-1 {\n --wj-gutter-x: 0.25rem;\n }\n .g-xl-1,\n .gy-xl-1 {\n --wj-gutter-y: 0.25rem;\n }\n .g-xl-2,\n .gx-xl-2 {\n --wj-gutter-x: 0.5rem;\n }\n .g-xl-2,\n .gy-xl-2 {\n --wj-gutter-y: 0.5rem;\n }\n .g-xl-3,\n .gx-xl-3 {\n --wj-gutter-x: 1rem;\n }\n .g-xl-3,\n .gy-xl-3 {\n --wj-gutter-y: 1rem;\n }\n .g-xl-4,\n .gx-xl-4 {\n --wj-gutter-x: 1.5rem;\n }\n .g-xl-4,\n .gy-xl-4 {\n --wj-gutter-y: 1.5rem;\n }\n .g-xl-5,\n .gx-xl-5 {\n --wj-gutter-x: 3rem;\n }\n .g-xl-5,\n .gy-xl-5 {\n --wj-gutter-y: 3rem;\n }\n}\n@media (min-width: 1400px) {\n .g-xxl-0,\n .gx-xxl-0 {\n --wj-gutter-x: 0;\n }\n .g-xxl-0,\n .gy-xxl-0 {\n --wj-gutter-y: 0;\n }\n .g-xxl-1,\n .gx-xxl-1 {\n --wj-gutter-x: 0.25rem;\n }\n .g-xxl-1,\n .gy-xxl-1 {\n --wj-gutter-y: 0.25rem;\n }\n .g-xxl-2,\n .gx-xxl-2 {\n --wj-gutter-x: 0.5rem;\n }\n .g-xxl-2,\n .gy-xxl-2 {\n --wj-gutter-y: 0.5rem;\n }\n .g-xxl-3,\n .gx-xxl-3 {\n --wj-gutter-x: 1rem;\n }\n .g-xxl-3,\n .gy-xxl-3 {\n --wj-gutter-y: 1rem;\n }\n .g-xxl-4,\n .gx-xxl-4 {\n --wj-gutter-x: 1.5rem;\n }\n .g-xxl-4,\n .gy-xxl-4 {\n --wj-gutter-y: 1.5rem;\n }\n .g-xxl-5,\n .gx-xxl-5 {\n --wj-gutter-x: 3rem;\n }\n .g-xxl-5,\n .gy-xxl-5 {\n --wj-gutter-y: 3rem;\n }\n}";
|
|
10
|
+
class Grid extends WJElement {
|
|
11
11
|
constructor() {
|
|
12
12
|
super();
|
|
13
|
-
|
|
13
|
+
__publicField(this, "className", "Grid");
|
|
14
14
|
}
|
|
15
15
|
static get cssStyleSheet() {
|
|
16
|
-
return
|
|
16
|
+
return styles;
|
|
17
17
|
}
|
|
18
18
|
static get observedAttributes() {
|
|
19
19
|
return [];
|
|
@@ -21,12 +21,16 @@ class y extends u {
|
|
|
21
21
|
setupAttributes() {
|
|
22
22
|
this.isShadowRoot = "open";
|
|
23
23
|
}
|
|
24
|
-
draw(
|
|
25
|
-
let
|
|
26
|
-
|
|
24
|
+
draw(context, store, params) {
|
|
25
|
+
let fragment = document.createDocumentFragment();
|
|
26
|
+
let element = document.createElement("slot");
|
|
27
|
+
if (this.color)
|
|
28
|
+
this.classList.add("wj-color-" + this.color, "wj-color");
|
|
29
|
+
fragment.appendChild(element);
|
|
30
|
+
return fragment;
|
|
27
31
|
}
|
|
28
32
|
}
|
|
29
|
-
customElements.get("wj-grid") || window.customElements.define("wj-grid",
|
|
33
|
+
customElements.get("wj-grid") || window.customElements.define("wj-grid", Grid);
|
|
30
34
|
export {
|
|
31
|
-
|
|
35
|
+
Grid
|
|
32
36
|
};
|
package/dist/wj-header.js
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
+
var __publicField = (obj, key, value) => {
|
|
4
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
|
+
return value;
|
|
6
|
+
};
|
|
7
|
+
import WJElement from "./wj-element.js";
|
|
5
8
|
import "./wj-store.js";
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
class c extends i {
|
|
9
|
+
const styles = "/*\n[ WJ Header ]\n*/\n:host {\n --wj-header-background: var(--wj-background);\n --wj-header-border-color: var(--wj-border-color);\n --wj-header-border-width: 0 0 1px 0;\n --wj-header-border-style: solid;\n --wj-header-top: 0;\n --wj-header-height: 60px;\n display: block;\n height: var(--wj-header-height);\n width: 100%;\n background: var(--wj-header-background);\n border-width: var(--wj-header-border-width);\n border-style: var(--wj-header-border-style);\n border-color: var(--wj-header-border-color);\n}\n:host .native-header {\n display: flex;\n padding-inline: 1rem;\n}\n\n:host([sticky]) {\n position: sticky;\n top: var(--wj-header-top);\n z-index: 999;\n}";
|
|
10
|
+
class Header extends WJElement {
|
|
9
11
|
constructor() {
|
|
10
12
|
super();
|
|
11
|
-
|
|
13
|
+
__publicField(this, "className", "Header");
|
|
12
14
|
}
|
|
13
15
|
static get cssStyleSheet() {
|
|
14
|
-
return
|
|
16
|
+
return styles;
|
|
15
17
|
}
|
|
16
18
|
static get observedAttributes() {
|
|
17
19
|
return [];
|
|
@@ -19,14 +21,18 @@ class c extends i {
|
|
|
19
21
|
setupAttributes() {
|
|
20
22
|
this.isShadowRoot = "open";
|
|
21
23
|
}
|
|
22
|
-
draw(
|
|
23
|
-
let
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
draw(context, store, params) {
|
|
25
|
+
let fragment = document.createDocumentFragment();
|
|
26
|
+
let element = document.createElement("header");
|
|
27
|
+
element.classList.add("native-header");
|
|
28
|
+
element.setAttribute("part", "native");
|
|
29
|
+
let slot = document.createElement("slot");
|
|
30
|
+
element.appendChild(slot);
|
|
31
|
+
fragment.appendChild(element);
|
|
32
|
+
return fragment;
|
|
27
33
|
}
|
|
28
34
|
}
|
|
29
|
-
customElements.get("wj-header") || window.customElements.define("wj-header",
|
|
35
|
+
customElements.get("wj-header") || window.customElements.define("wj-header", Header);
|
|
30
36
|
export {
|
|
31
|
-
|
|
37
|
+
Header
|
|
32
38
|
};
|
package/dist/wj-icon-picker.js
CHANGED
|
@@ -1,50 +1,56 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
+
var __publicField = (obj, key, value) => {
|
|
4
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
|
+
return value;
|
|
6
|
+
};
|
|
7
|
+
import WJElement, { event } from "./wj-element.js";
|
|
8
|
+
import { InfiniteScroll } from "./wj-infinite-scroll.js";
|
|
6
9
|
import "./wj-tooltip.js";
|
|
7
10
|
import "./wj-store.js";
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
class v extends w {
|
|
11
|
+
const styles = "/*\n[ Wj Icon Picker ]\n*/\n:host {\n --wj-icon-picker-radius: var(--wj-border-radius-small);\n --wj-icon-picker-icon-size: 1.5rem;\n --wj-icon-picker-border-width: 1px;\n --wj-icon-picker-border-style: solid;\n --wj-icon-picker-border-color: var(--wj-border-color);\n --wj-icon-picker-padding: .25rem;\n padding: 0 1rem;\n}\n\n.anchor {\n width: var(--wj-icon-picker-icon-size);\n height: var(--wj-icon-picker-icon-size);\n padding: var(--wj-icon-picker-padding);\n border-width: var(--wj-icon-picker-border-width);\n border-style: var(--wj-icon-picker-border-style);\n border-color: var(--wj-icon-picker-border-color);\n box-sizing: border-box;\n border-radius: var(--wj-icon-picker-radius);\n}\n\n.picker {\n width: 320px;\n height: 271px;\n box-shadow: 0 0 5px rgba(0, 0, 0, 0.05), 0 5px 20px rgba(0, 0, 0, 0.1);\n border-radius: var(--wj-icon-picker-radius);\n border-width: var(--wj-icon-picker-border-width);\n border-style: var(--wj-icon-picker-border-style);\n border-color: var(--wj-icon-picker-border-color);\n overflow: auto;\n padding: 1rem;\n background: var(--wj-background);\n}\n\n.icon-items {\n --icon-min-width: 2rem;\n display: grid;\n grid-gap: 0.5rem;\n grid-template-columns: repeat(auto-fit, minmax(var(--icon-min-width), 1fr));\n}\n\n.icon-item {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n color: inherit;\n padding: 0.25rem;\n min-height: var(--wj-icon-picker-icon-size);\n min-width: var(--wj-icon-picker-icon-size);\n text-decoration: none;\n}\n.icon-item:hover {\n border-radius: 0.25rem;\n background: var(--wj-border-color);\n}\n\n.wj-size {\n --wj-icon-size: 24px !important;\n}\n\nicon-item svg {\n width: var(--wj-icon-picker-icon-size);\n height: var(--wj-icon-picker-icon-size);\n}\n\nwj-input {\n --wj-input-border-radius: 4px;\n --wj-input-margin-bottom: 0;\n}\n\nwj-infinite-scroll {\n margin-top: 1rem;\n}\n\nwj-select {\n --wj-select-border-width: 0 0 1px 0 !important;\n --wj-select-border-radius: 0 !important;\n margin-bottom: 1rem;\n}\n\n.anchor wj-icon {\n --wj-icon-size: 100% !important;\n}";
|
|
12
|
+
class IconPicker extends WJElement {
|
|
11
13
|
constructor() {
|
|
12
14
|
super();
|
|
13
|
-
|
|
15
|
+
__publicField(this, "className", "IconPicker");
|
|
14
16
|
/*
|
|
15
17
|
* @description event handler pre vyhladavanie ikon
|
|
16
18
|
* @param e
|
|
17
19
|
*/
|
|
18
|
-
|
|
19
|
-
this.infiniteScroll.unScrollEvent()
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
__publicField(this, "searchIcon", (e) => {
|
|
21
|
+
this.infiniteScroll.unScrollEvent();
|
|
22
|
+
this.infiniteScroll.setCustomData = (page = 0) => {
|
|
23
|
+
let data = this.tags.filter((i) => i.tags.includes(e.detail.value));
|
|
24
|
+
let result = {
|
|
25
|
+
data,
|
|
26
|
+
page,
|
|
24
27
|
size: this.size,
|
|
25
|
-
totalPages: Math.round(
|
|
28
|
+
totalPages: Math.round(data.length / this.size)
|
|
26
29
|
};
|
|
27
|
-
|
|
30
|
+
return result;
|
|
31
|
+
};
|
|
32
|
+
this.clearIconsContainer();
|
|
33
|
+
this.infiniteScroll.loadPages();
|
|
28
34
|
});
|
|
29
|
-
|
|
35
|
+
__publicField(this, "onClose", () => {
|
|
30
36
|
this.popup.onHide();
|
|
31
37
|
});
|
|
32
38
|
this.size = 48;
|
|
33
39
|
}
|
|
34
|
-
set markerPosition(
|
|
35
|
-
this._markerPosition =
|
|
40
|
+
set markerPosition(value) {
|
|
41
|
+
this._markerPosition = value;
|
|
36
42
|
}
|
|
37
43
|
get markerPosition() {
|
|
38
44
|
return this._markerPosition;
|
|
39
45
|
}
|
|
40
|
-
set swatches(
|
|
41
|
-
this.setAttribute("swatches",
|
|
46
|
+
set swatches(value) {
|
|
47
|
+
this.setAttribute("swatches", value.split(","));
|
|
42
48
|
}
|
|
43
49
|
get swatches() {
|
|
44
50
|
return this._swatches;
|
|
45
51
|
}
|
|
46
52
|
static get cssStyleSheet() {
|
|
47
|
-
return
|
|
53
|
+
return styles;
|
|
48
54
|
}
|
|
49
55
|
static get observedAttributes() {
|
|
50
56
|
return [];
|
|
@@ -53,70 +59,118 @@ class v extends w {
|
|
|
53
59
|
this.isShadowRoot = "open";
|
|
54
60
|
}
|
|
55
61
|
async beforeDraw() {
|
|
56
|
-
this.tags = Object.values(await this.getTags())
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
let
|
|
62
|
-
|
|
63
|
-
let
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
62
|
+
this.tags = Object.values(await this.getTags());
|
|
63
|
+
this.category = this.getCategory(this.tags);
|
|
64
|
+
}
|
|
65
|
+
draw(context, store, params) {
|
|
66
|
+
let fragment = document.createDocumentFragment();
|
|
67
|
+
let native = document.createElement("div");
|
|
68
|
+
native.classList.add("native-color-picker");
|
|
69
|
+
let anchor = document.createElement("div");
|
|
70
|
+
anchor.setAttribute("slot", "anchor");
|
|
71
|
+
anchor.classList.add("anchor");
|
|
72
|
+
let picker = document.createElement("div");
|
|
73
|
+
picker.classList.add("picker");
|
|
74
|
+
let input = document.createElement("wj-input");
|
|
75
|
+
input.classList.add("input");
|
|
76
|
+
input.setAttribute("variant", "standard");
|
|
77
|
+
input.setAttribute("placeholder", "type to filter...");
|
|
78
|
+
input.setAttribute("clearable", "");
|
|
79
|
+
input.addEventListener("wj-input:input", this.searchIcon);
|
|
80
|
+
let infiniteScroll = new InfiniteScroll();
|
|
81
|
+
infiniteScroll.setAttribute("url", "/demo/assets/data/tags.json");
|
|
82
|
+
infiniteScroll.setAttribute("placement", ".icon-items");
|
|
83
|
+
infiniteScroll.setAttribute("size", this.size);
|
|
84
|
+
infiniteScroll.setAttribute("height", "223px");
|
|
85
|
+
infiniteScroll.innerHTML = `<div class="icon-items">
|
|
69
86
|
<div class="icon-item" iterate>
|
|
70
87
|
<wj-tooltip content="{{name}}">
|
|
71
88
|
<wj-icon name="{{name}}" size="large"></wj-icon>
|
|
72
89
|
</wj-tooltip>
|
|
73
90
|
</div>
|
|
74
|
-
</div
|
|
75
|
-
|
|
76
|
-
|
|
91
|
+
</div>`;
|
|
92
|
+
picker.appendChild(input);
|
|
93
|
+
picker.appendChild(infiniteScroll);
|
|
94
|
+
let popup = document.createElement("wj-popup");
|
|
95
|
+
popup.setAttribute("placement", this.placement || "bottom-start");
|
|
96
|
+
popup.setAttribute("offset", this.offset);
|
|
97
|
+
popup.setAttribute("manual", "");
|
|
98
|
+
popup.appendChild(anchor);
|
|
99
|
+
popup.appendChild(picker);
|
|
100
|
+
native.appendChild(popup);
|
|
101
|
+
fragment.appendChild(native);
|
|
102
|
+
this.popup = popup;
|
|
103
|
+
this.input = input;
|
|
104
|
+
this.anchor = anchor;
|
|
105
|
+
this.picker = picker;
|
|
106
|
+
this.infiniteScroll = infiniteScroll;
|
|
107
|
+
return fragment;
|
|
77
108
|
}
|
|
78
109
|
afterDraw() {
|
|
79
|
-
this.setupInfiniteScroll()
|
|
110
|
+
this.setupInfiniteScroll();
|
|
111
|
+
this.addEventListener("wj-popup:show", (e) => {
|
|
80
112
|
this.initial();
|
|
81
|
-
})
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
113
|
+
});
|
|
114
|
+
this.addEventListener("wj-input:clear", (e) => {
|
|
115
|
+
this.setupInfiniteScroll();
|
|
116
|
+
this.clearIconsContainer();
|
|
117
|
+
this.infiniteScroll.scrollEvent();
|
|
118
|
+
this.infiniteScroll.loadPages(0);
|
|
119
|
+
});
|
|
120
|
+
this.addEventListener("wj-infinite-scroll:click-item", (e) => {
|
|
121
|
+
const icon = e.detail.context.querySelector("wj-icon");
|
|
122
|
+
const name = icon.getAttribute("name");
|
|
123
|
+
const object = this.tags.find((i) => i.name === name);
|
|
124
|
+
const iconElement = document.createElement("wj-icon");
|
|
125
|
+
iconElement.setAttribute("name", name);
|
|
126
|
+
object.icon = iconElement;
|
|
127
|
+
this.value = object;
|
|
128
|
+
this.anchor.innerHTML = "";
|
|
129
|
+
this.anchor.appendChild(iconElement);
|
|
130
|
+
event.dispatchCustomEvent(this, "wj-icon-picker:select", object);
|
|
131
|
+
});
|
|
132
|
+
this.init = false;
|
|
87
133
|
}
|
|
88
134
|
initial() {
|
|
89
135
|
this.infiniteScroll.scrollEvent();
|
|
90
136
|
}
|
|
91
137
|
setupInfiniteScroll() {
|
|
92
|
-
this.infiniteScroll.setCustomData = (
|
|
93
|
-
let
|
|
94
|
-
|
|
95
|
-
data:
|
|
96
|
-
page
|
|
138
|
+
this.infiniteScroll.setCustomData = (page = 0) => {
|
|
139
|
+
let data = Object.values(this.tags);
|
|
140
|
+
let result = {
|
|
141
|
+
data: data.slice(page * this.size, page * this.size + this.size),
|
|
142
|
+
page,
|
|
97
143
|
size: this.size,
|
|
98
|
-
totalPages: Math.round(
|
|
144
|
+
totalPages: Math.round(data.length / this.size)
|
|
99
145
|
};
|
|
146
|
+
return result;
|
|
100
147
|
};
|
|
101
148
|
}
|
|
102
|
-
createIconItem(
|
|
103
|
-
let
|
|
104
|
-
|
|
105
|
-
let
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
149
|
+
createIconItem(i) {
|
|
150
|
+
let item = document.createElement("div");
|
|
151
|
+
item.classList.add("icon-item");
|
|
152
|
+
let icon = document.createElement("wj-icon");
|
|
153
|
+
icon.setAttribute("name", i.name);
|
|
154
|
+
icon.classList.add("lazy-loaded-image", "lazy");
|
|
155
|
+
item.appendChild(icon);
|
|
156
|
+
return item;
|
|
157
|
+
}
|
|
158
|
+
createOption(item) {
|
|
159
|
+
let option = document.createElement("wj-option");
|
|
160
|
+
option.setAttribute("value", item);
|
|
161
|
+
option.innerText = item;
|
|
162
|
+
return option;
|
|
163
|
+
}
|
|
164
|
+
getCategory(tags) {
|
|
165
|
+
let category = [...new Set(tags.map((obj) => obj.category))];
|
|
166
|
+
return category;
|
|
114
167
|
}
|
|
115
168
|
async getTags() {
|
|
116
|
-
|
|
169
|
+
const response = await fetch(`/demo/assets/data/tags.json`);
|
|
170
|
+
return response.json();
|
|
117
171
|
}
|
|
118
172
|
disconnectedCallback() {
|
|
119
|
-
this.init =
|
|
173
|
+
this.init = false;
|
|
120
174
|
}
|
|
121
175
|
/*
|
|
122
176
|
* @description vymazanie ikon z kontajnera
|
|
@@ -125,7 +179,7 @@ class v extends w {
|
|
|
125
179
|
this.context.querySelector(".icon-items").innerHTML = "";
|
|
126
180
|
}
|
|
127
181
|
}
|
|
128
|
-
customElements.get("wj-icon-picker") || window.customElements.define("wj-icon-picker",
|
|
182
|
+
customElements.get("wj-icon-picker") || window.customElements.define("wj-icon-picker", IconPicker);
|
|
129
183
|
export {
|
|
130
|
-
|
|
184
|
+
IconPicker
|
|
131
185
|
};
|