wj-elements 0.0.4 → 0.0.6

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.
Files changed (71) hide show
  1. package/dist/animation-2266bd6e.js +103 -0
  2. package/dist/localize-762a9f0f.js +43 -0
  3. package/dist/wj-animation.js +6 -0
  4. package/dist/wj-aside.js +8 -10
  5. package/dist/wj-avatar.js +19 -21
  6. package/dist/wj-badge.js +16 -16
  7. package/dist/wj-breadcrumb.js +7 -11
  8. package/dist/wj-breadcrumbs.js +5 -7
  9. package/dist/wj-button-group.js +11 -13
  10. package/dist/wj-button.js +36 -39
  11. package/dist/wj-card-content.js +11 -13
  12. package/dist/wj-card-controls.js +6 -8
  13. package/dist/wj-card-header.js +11 -13
  14. package/dist/wj-card-subtitle.js +9 -11
  15. package/dist/wj-card-title.js +7 -9
  16. package/dist/wj-card.js +13 -15
  17. package/dist/wj-carousel-item.js +32 -0
  18. package/dist/wj-carousel.js +178 -0
  19. package/dist/wj-checkbox.js +11 -11
  20. package/dist/wj-chip.js +17 -17
  21. package/dist/wj-col.js +11 -12
  22. package/dist/wj-color-picker.js +192 -179
  23. package/dist/wj-container.js +7 -9
  24. package/dist/wj-copy-button.js +1 -3
  25. package/dist/wj-dialog.js +20 -22
  26. package/dist/wj-divider.js +7 -9
  27. package/dist/wj-dropdown.js +10 -14
  28. package/dist/wj-element.js +9 -9
  29. package/dist/wj-file-upload-item.js +63 -0
  30. package/dist/wj-file-upload.js +221 -0
  31. package/dist/wj-footer.js +9 -11
  32. package/dist/wj-form.js +6 -8
  33. package/dist/wj-format-digital.js +51 -0
  34. package/dist/wj-grid.js +9 -10
  35. package/dist/wj-header.js +9 -11
  36. package/dist/wj-icon-picker.js +78 -58
  37. package/dist/wj-icon.js +45 -48
  38. package/dist/wj-img-comparer.js +12 -14
  39. package/dist/wj-img.js +14 -16
  40. package/dist/wj-infinite-scroll.js +27 -22
  41. package/dist/wj-input-file.js +47 -0
  42. package/dist/wj-input.js +30 -23
  43. package/dist/wj-item.js +1 -3
  44. package/dist/wj-label.js +10 -10
  45. package/dist/wj-list.js +1 -3
  46. package/dist/wj-main.js +1 -3
  47. package/dist/wj-masonry.js +71518 -0
  48. package/dist/wj-master.js +287 -253
  49. package/dist/wj-menu-button.js +10 -12
  50. package/dist/wj-menu-item.js +49 -46
  51. package/dist/wj-menu-label.js +2 -2
  52. package/dist/wj-menu.js +8 -10
  53. package/dist/wj-popup.js +89 -88
  54. package/dist/wj-progress-bar.js +14 -16
  55. package/dist/wj-radio-group.js +5 -7
  56. package/dist/wj-radio.js +13 -15
  57. package/dist/wj-rate.js +127 -0
  58. package/dist/wj-relative-time.js +50 -0
  59. package/dist/wj-router-link.js +11 -13
  60. package/dist/wj-row.js +11 -12
  61. package/dist/wj-slider.js +6 -6
  62. package/dist/wj-split-view.js +1 -3
  63. package/dist/wj-textarea.js +17 -19
  64. package/dist/wj-thumbnail.js +12 -14
  65. package/dist/wj-toast.js +1 -1
  66. package/dist/wj-toggle.js +9 -9
  67. package/dist/wj-toolbar.js +13 -15
  68. package/dist/wj-tooltip.js +16 -18
  69. package/dist/wj-visually-hidden.js +6 -8
  70. package/package.json +1 -1
  71. package/dist/style.css +0 -3
@@ -1,19 +1,20 @@
1
- var d = Object.defineProperty;
2
- var u = (a, r, t) => r in a ? d(a, r, { enumerable: !0, configurable: !0, writable: !0, value: t }) : a[r] = t;
3
- var h = (a, r, t) => (u(a, typeof r != "symbol" ? r + "" : r, t), t);
4
- import g from "./wj-element.js";
1
+ var u = Object.defineProperty;
2
+ var m = (l, r, t) => r in l ? u(l, r, { enumerable: !0, configurable: !0, writable: !0, value: t }) : l[r] = t;
3
+ var h = (l, r, t) => (m(l, typeof r != "symbol" ? r + "" : r, t), t);
4
+ import g, { event as p } from "./wj-element.js";
5
5
  import "./wj-store.js";
6
- const m = `/*!
7
- * direction.scss
8
- */:host{--wj-infinite-scroll-width: 100%;--wj-infinite-scroll-height: 300px;overflow-x:auto;width:var(--wj-infinite-scroll-width);height:var(--wj-infinite-scroll-height);display:block}
6
+ const f = `:host{--wj-infinite-scroll-width: 100%;--wj-infinite-scroll-height: 300px;overflow-x:auto;width:var(--wj-infinite-scroll-width);height:var(--wj-infinite-scroll-height);display:block}
9
7
  `;
10
- class p extends g {
8
+ class w extends g {
11
9
  constructor(t = {}) {
12
10
  super();
13
11
  h(this, "className", "InfiniteScroll");
14
12
  h(this, "scrollEvent", () => {
15
13
  this.addEventListener("scroll", this.onScroll);
16
14
  });
15
+ h(this, "unScrollEvent", () => {
16
+ this.removeEventListener("scroll", this.onScroll);
17
+ });
17
18
  h(this, "onScroll", (t) => {
18
19
  const { scrollTop: s, scrollHeight: e, clientHeight: i } = t.target;
19
20
  s + i >= e - 300 && this.currentPage <= this.totalPages && this.isLoading.includes(this.currentPage) && (this.currentPage++, this.loadPages(this.currentPage));
@@ -21,17 +22,17 @@ class p extends g {
21
22
  this.totalPages = 0, this.isLoading = [], String.prototype.interpolate = function(s) {
22
23
  let e = this, i = e.match(/\{{.*?\}}/g);
23
24
  if (i)
24
- for (let o of i) {
25
- let l = o.replace("{{", "").replace("}}", ""), n = "";
26
- l.split(".").forEach((c) => {
25
+ for (let a of i) {
26
+ let o = a.replace("{{", "").replace("}}", ""), n = "";
27
+ o.split(".").forEach((c) => {
27
28
  n = n == "" ? s[c] : n[c];
28
- }), e = e.replace(o, n);
29
+ }), e = e.replace(a, n);
29
30
  }
30
31
  return e;
31
32
  };
32
33
  }
33
34
  static get cssStyleSheet() {
34
- return m;
35
+ return f;
35
36
  }
36
37
  static get observedAttributes() {
37
38
  return [];
@@ -43,11 +44,11 @@ class p extends g {
43
44
  this.iterate = this.querySelector("[iterate]"), this.infiniteScrollTemplate = this.iterate.outerHTML, this.iterate.remove(), this.setAttribute("style", "height: " + this.height);
44
45
  }
45
46
  draw(t, s, e) {
46
- let i = document.createDocumentFragment(), o = document.createElement("slot"), l = document.createElement("div");
47
- return l.classList.add("loader"), i.appendChild(l), i.appendChild(o), this.loaderEl = l, i;
47
+ let i = document.createDocumentFragment(), a = document.createElement("slot"), o = document.createElement("div");
48
+ return o.classList.add("loader"), i.appendChild(o), i.appendChild(a), this.loaderEl = o, i;
48
49
  }
49
50
  async afterDraw() {
50
- this.queryParams = this.queryParams || "", this.size = +this.size || 10, this.currentPage = 0, await this.loadPages(this.currentPage);
51
+ this.queryParams = this.queryParams || "", this.size = +this.size || 10, this.currentPage = 0, this.scrollEvent(), await this.loadPages(this.currentPage);
51
52
  }
52
53
  /** @function getPages
53
54
  * @description nacitanie dalsej stranky
@@ -76,11 +77,15 @@ class p extends g {
76
77
  async loadPages(t) {
77
78
  this.showLoader();
78
79
  try {
79
- if (this.hasMorePages(t)) {
80
+ if (this.hasMorePages(t) || typeof this.setCustomData == "function") {
80
81
  let s, e;
81
- typeof this.setCustomData == "function" ? e = await this.setCustomData(t) : e = await this.getPages(t), this.totalPages = e.totalPages, this.currentPage = t, s = e.data.map((o) => this.infiniteScrollTemplate.interpolate(o));
82
- let i = this;
83
- this.hasAttribute("placement") && (i = this.querySelector(this.placement)), i.insertAdjacentHTML("beforeend", s.join("")), this.isLoading.push(t);
82
+ typeof this.setCustomData == "function" ? e = await this.setCustomData(t) : e = await this.getPages(t), this.totalPages = e.totalPages, this.currentPage = t;
83
+ const i = new DOMParser();
84
+ let a = this;
85
+ this.hasAttribute("placement") && (a = this.querySelector(this.placement)), e.data.forEach((o) => {
86
+ const n = this.infiniteScrollTemplate.interpolate(o), d = i.parseFromString(n, "text/html").querySelector(this.iterate.tagName.toLowerCase());
87
+ p.addListener(d, "click", "wj-infinite-scroll:click-item", null, { stopPropagation: !0 }), a.insertAdjacentElement("beforeend", d);
88
+ }), this.isLoading.push(t);
84
89
  }
85
90
  } catch (s) {
86
91
  console.log(s.message);
@@ -89,7 +94,7 @@ class p extends g {
89
94
  }
90
95
  }
91
96
  }
92
- customElements.get("wj-infinite-scroll") || window.customElements.define("wj-infinite-scroll", p);
97
+ customElements.get("wj-infinite-scroll") || window.customElements.define("wj-infinite-scroll", w);
93
98
  export {
94
- p as InfiniteScroll
99
+ w as InfiniteScroll
95
100
  };
@@ -0,0 +1,47 @@
1
+ var c = Object.defineProperty;
2
+ var b = (i, r, t) => r in i ? c(i, r, { enumerable: !0, configurable: !0, writable: !0, value: t }) : i[r] = t;
3
+ var u = (i, r, t) => (b(i, typeof r != "symbol" ? r + "" : r, t), t);
4
+ import m from "./wj-element.js";
5
+ import "./wj-store.js";
6
+ const h = `:host{--wj-input-font-family: var(--wj-font-family);--wj-input-background-color: var(--wj-background);--wj-input-color: var(--wj-color);--wj-input-color-invalid: var(--wj-color-danger);--wj-input-border-color: var(--wj-border-color);--wj-input-border-color-focus: var(--wj-color-primary);--wj-input-border-width: 1px;--wj-input-border-style: solid;--wj-input-border-radius: 4px;--wj-input-margin-bottom: .5rem;--wj-input-line-height: 20px;--wj-input-slot-padding-inline: .5rem;width:100%;margin-bottom:var(--wj-input-margin-bottom);display:block}:host .wrapper{display:flex;width:100%}:host .native-input .input-wrapper{width:100%;position:relative}:host .native-input.default{background-color:var(--wj-input-background-color);font-family:var(--wj-input-font-family);position:relative;border-radius:var(--wj-input-border-radius);border-width:var(--wj-input-border-width);border-style:var(--wj-input-border-style);border-color:var(--wj-input-border-color);padding-inline:0;padding-top:.25rem;padding-bottom:.25rem;transition:background-color .2s ease;cursor:text}:host .native-input.default .input-wrapper{margin-inline:.5rem}:host .native-input.default.focused{border-color:var(--wj-input-border-color-focus)!important}:host .native-input.default.focused label{opacity:.67;font-size:12px;letter-spacing:normal}:host .native-input.default input{border:none;height:25px;min-height:25px;padding:0;margin-top:-4px;background:none;box-shadow:none;width:100%}:host .native-input.default label{margin:0;display:block;opacity:1;cursor:text;transition:opacity .2s ease;line-height:var(--wj-input-line-height)}:host .native-input.default label.fade{opacity:.5;font-size:12px;letter-spacing:normal}:host .native-input.default ::slotted([slot=start]){border-left:none;border-top:none;border-bottom:none}:host .native-input.default ::slotted([slot=end]){border-right:none;border-top:none;border-bottom:none}:host .native-input.standard{background-color:var(--wj-input-background-color);font-family:var(--wj-input-font-family);position:relative;border-radius:var(--wj-input-border-radius);padding-inline:0;padding-top:0;padding-bottom:0;transition:background-color .2s ease;cursor:text}:host .native-input.standard.focused input{border-color:var(--wj-input-border-color-focus)!important}:host .native-input.standard input{display:block;min-height:32px;padding-inline:.5rem;padding-top:0;padding-bottom:0;background:none;box-shadow:none;width:100%;box-sizing:border-box;border-radius:var(--wj-input-border-radius);border-width:var(--wj-input-border-width);border-style:var(--wj-input-border-style);border-color:var(--wj-input-border-color)}:host .native-input.standard label{margin:0;display:inline-block;opacity:1;cursor:text;transition:opacity .2s ease;line-height:var(--wj-input-line-height)}:host .native-input.standard .input-wrapper:hover .clear{visibility:visible}:host .native-input.standard ::slotted([slot=start]){border-right:none;border-radius:var(--wj-input-border-radius) 0 0 var(--wj-input-border-radius)}:host .native-input.standard ::slotted([slot=end]){border-left:none;border-radius:0 var(--wj-input-border-radius) var(--wj-input-border-radius) 0}:host .native-input.standard.has-start input{border-top-left-radius:0;border-bottom-left-radius:0}:host .native-input.standard.has-end input{border-top-right-radius:0;border-bottom-right-radius:0}:host .native-input.standard .error-message{position:static;background:transparent;padding:.25rem 0;left:auto;transform:none;color:var(--wj-input-color-invalid);font-size:12px;line-height:normal}.clear{visibility:hidden;position:absolute;right:0;top:3px;--wj-padding-top: .25rem;--wj-padding-start: .25rem;--wj-padding-end: .25rem;--wj-padding-bottom: .25rem;--wj-button-margin-inline: 0 .25rem}:host([required]) .input-wrapper:after{color:var(--wj-input-color-invalid);content:"*";font-family:var(--wj-force-mac-font-family);font-size:20px;position:absolute;right:10px;top:2px}:host([required]) .standard .input-wrapper:after{top:0}:host([invalid]) .error-message{display:block}:host([invalid]) .default label{opacity:1!important;color:var(--wj-input-color-invalid)!important;animation-name:shake;animation-duration:.4s;animation-iteration-count:1}::slotted([slot=start]),::slotted([slot=end]){display:flex;align-items:center;border-width:var(--wj-input-border-width);border-style:var(--wj-input-border-style);border-color:var(--wj-input-border-color);padding-inline:var(--wj-input-slot-padding-inline)}slot[name=start],slot[name=end]{display:flex}input{background-color:var(--wj-input-background-color);border-width:var(--wj-input-border-width);border-style:var(--wj-input-border-style);border-color:var(--wj-input-border-color);font-family:var(--wjinput-font-family);color:var(--wj-input-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:0;padding:.25rem .5rem;line-height:var(--wj-input-line-height);font-size:14px;font-weight:400;vertical-align:middle;min-height:32px}.error-message{display:none;position:absolute;width:auto;max-width:100%;min-width:auto;border-radius:50px;background:black;padding:.25rem .5rem;top:0;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:12px;line-height:normal}@keyframes shake{8%,41%{transform:translate(-4px)}25%,58%{transform:translate(4px)}75%{transform:translate(-2px)}92%{transform:translate(2px)}0%,to{transform:translate(0)}}
7
+ `;
8
+ class w extends m {
9
+ constructor(t = {}) {
10
+ super();
11
+ u(this, "className", "Input");
12
+ }
13
+ static get cssStyleSheet() {
14
+ return h;
15
+ }
16
+ static get observedAttributes() {
17
+ return [];
18
+ }
19
+ setupAttributes() {
20
+ this.isShadowRoot = "open";
21
+ }
22
+ draw(t, d, s) {
23
+ let o = document.createDocumentFragment(), n = document.createElement("div");
24
+ n.setAttribute("part", "native"), n.classList.add("native-input-file", this.variant || "default");
25
+ let a = document.createElement("input");
26
+ a.setAttribute("type", "file"), a.setAttribute("multiple", ""), a.setAttribute("hidden", "");
27
+ let e = document.createElement("wj-input");
28
+ e.setAttribute("variant", "standard"), e.setAttribute("type", "text"), e.setAttribute("placeholder", "Click to upload"), e.setAttribute("readonly", "");
29
+ let p = document.createElement("span");
30
+ p.setAttribute("slot", "start");
31
+ let l = document.createElement("wj-icon");
32
+ return l.setAttribute("slot", "icon-only"), l.setAttribute("name", "cloud-upload"), p.appendChild(l), e.appendChild(p), n.appendChild(e), n.appendChild(a), o.appendChild(n), this.native = n, this.input = e, this.fileInput = a, o;
33
+ }
34
+ afterDraw() {
35
+ this.input.addEventListener("click", () => {
36
+ this.fileInput.click();
37
+ }), this.fileInput.addEventListener("change", (t) => {
38
+ for (var d = t.target.files, s = [], o = 0; o < d.length; o++)
39
+ s.push(d[o].name);
40
+ this.input.value = s.join(", ");
41
+ });
42
+ }
43
+ }
44
+ customElements.get("wj-input-file") || window.customElements.define("wj-input-file", w);
45
+ export {
46
+ w as InputFile
47
+ };
package/dist/wj-input.js CHANGED
@@ -1,13 +1,11 @@
1
- var g = Object.defineProperty;
2
- var w = (n, a, t) => a in n ? g(n, a, { enumerable: !0, configurable: !0, writable: !0, value: t }) : n[a] = t;
3
- var b = (n, a, t) => (w(n, typeof a != "symbol" ? a + "" : a, t), t);
4
- import y from "./wj-element.js";
1
+ var j = Object.defineProperty;
2
+ var y = (n, a, t) => a in n ? j(n, a, { enumerable: !0, configurable: !0, writable: !0, value: t }) : n[a] = t;
3
+ var b = (n, a, t) => (y(n, typeof a != "symbol" ? a + "" : a, t), t);
4
+ import x, { event as g } from "./wj-element.js";
5
5
  import "./wj-store.js";
6
- const j = `/*!
7
- * direction.scss
8
- */:host{--wj-input-font-family: Inter UI, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;--wj-input-background-color: #fff;--wj-input-color: #212121;--wj-input-color-invalid: #b91e1e;--wj-input-border-color: rgba(33, 33, 33, .14);--wj-input-border-color-focus: #7252D3;--wj-input-border-width: 1px;--wj-input-border-style: solid;--wj-input-border-radius: 4px;--wj-input-margin-bottom: .5rem;--wj-input-line-height: 20px;--wj-input-slot-padding-inline: .5rem;width:100%;margin-bottom:var(--wj-input-margin-bottom);display:block}:host .wrapper{display:flex;width:100%}:host .native-input .input-wrapper{width:100%}:host .native-input.default{background-color:var(--wj-input-background-color);font-family:var(--wj-input-font-family);position:relative;border-radius:var(--wj-input-border-radius);border-width:var(--wj-input-border-width);border-style:var(--wj-input-border-style);border-color:var(--wj-input-border-color);border-top-color:#08080824;padding-inline:0;padding-top:.25rem;padding-bottom:.25rem;transition:background-color .2s ease;cursor:text}:host .native-input.default .input-wrapper{margin-inline:.5rem}:host .native-input.default.focused{border-color:var(--wj-input-border-color-focus)!important}:host .native-input.default.focused label{opacity:.67;font-size:12px;letter-spacing:normal}:host .native-input.default input{border:none;height:25px;min-height:25px;padding:0;margin-top:-4px;background:none;box-shadow:none;width:100%}:host .native-input.default label{margin:0;display:block;opacity:1;cursor:text;transition:opacity .2s ease;line-height:var(--wj-input-line-height)}:host .native-input.default label.fade{opacity:.5;font-size:12px;letter-spacing:normal}:host .native-input.default ::slotted([slot=start]){border-left:none;border-top:none;border-bottom:none}:host .native-input.default ::slotted([slot=end]){border-right:none;border-top:none;border-bottom:none}:host .native-input.standard{background-color:var(--wj-input-background-color);font-family:var(--wj-input-font-family);position:relative;border-radius:var(--wj-input-border-radius);padding-inline:0;padding-top:0;padding-bottom:0;transition:background-color .2s ease;cursor:text}:host .native-input.standard.focused input{border-color:var(--wj-input-border-color-focus)!important}:host .native-input.standard input{display:block;min-height:32px;padding-inline:.5rem;padding-top:0;padding-bottom:0;background:none;box-shadow:none;width:100%;box-sizing:border-box;border-radius:var(--wj-input-border-radius);border-width:var(--wj-input-border-width);border-style:var(--wj-input-border-style);border-color:var(--wj-input-border-color)}:host .native-input.standard label{margin:0;display:inline-block;opacity:1;cursor:text;transition:opacity .2s ease;line-height:var(--wj-input-line-height)}:host .native-input.standard ::slotted([slot=start]){border-right:none;border-radius:var(--wj-input-border-radius) 0 0 var(--wj-input-border-radius)}:host .native-input.standard ::slotted([slot=end]){border-left:none;border-radius:0 var(--wj-input-border-radius) var(--wj-input-border-radius) 0}:host .native-input.standard.has-start input{border-top-left-radius:0;border-bottom-left-radius:0}:host .native-input.standard.has-end input{border-top-right-radius:0;border-bottom-right-radius:0}:host .native-input.standard .error-message{position:static;background:transparent;padding:.25rem 0;left:auto;transform:none;color:var(--wj-input-color-invalid);font-size:12px;line-height:normal}:host([required]) .input-wrapper:after{color:var(--wj-input-color-invalid);content:"*";font-family:-apple-system,BlinkMacSystemFont,Inter UI,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:20px;position:absolute;right:10px;top:2px}:host([required]) .standard .input-wrapper:after{top:0}:host([invalid]) .error-message{display:block}:host([invalid]) .default label{opacity:1!important;color:var(--wj-input-color-invalid)!important;animation-name:shake;animation-duration:.4s;animation-iteration-count:1}::slotted([slot=start]),::slotted([slot=end]){display:flex;align-items:center;border-width:var(--wj-input-border-width);border-style:var(--wj-input-border-style);border-color:var(--wj-input-border-color);padding-inline:var(--wj-input-slot-padding-inline)}slot[name=start],slot[name=end]{display:flex}input{background-color:var(--wj-input-background-color);border-width:var(--wj-input-border-width);border-style:var(--wj-input-border-style);border-color:var(--wj-input-border-color);font-family:var(--wjinput-font-family);color:var(--wj-input-color);border-top-color:#21212136;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:0;padding:.25rem .5rem;line-height:var(--wj-input-line-height);font-size:14px;font-weight:400;vertical-align:middle;min-height:32px}.error-message{display:none;position:absolute;width:auto;max-width:100%;min-width:auto;border-radius:50px;background:black;padding:.25rem .5rem;top:0;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:12px;line-height:normal}@keyframes shake{8%,41%{transform:translate(-4px)}25%,58%{transform:translate(4px)}75%{transform:translate(-2px)}92%{transform:translate(2px)}0%,to{transform:translate(0)}}
6
+ const A = `:host{--wj-input-font-family: var(--wj-font-family);--wj-input-background-color: var(--wj-background);--wj-input-color: var(--wj-color);--wj-input-color-invalid: var(--wj-color-danger);--wj-input-border-color: var(--wj-border-color);--wj-input-border-color-focus: var(--wj-color-primary);--wj-input-border-width: 1px;--wj-input-border-style: solid;--wj-input-border-radius: 4px;--wj-input-margin-bottom: .5rem;--wj-input-line-height: 20px;--wj-input-slot-padding-inline: .5rem;width:100%;margin-bottom:var(--wj-input-margin-bottom);display:block}:host .wrapper{display:flex;width:100%}:host .native-input .input-wrapper{width:100%;position:relative}:host .native-input.default{background-color:var(--wj-input-background-color);font-family:var(--wj-input-font-family);position:relative;border-radius:var(--wj-input-border-radius);border-width:var(--wj-input-border-width);border-style:var(--wj-input-border-style);border-color:var(--wj-input-border-color);padding-inline:0;padding-top:.25rem;padding-bottom:.25rem;transition:background-color .2s ease;cursor:text}:host .native-input.default .input-wrapper{margin-inline:.5rem}:host .native-input.default.focused{border-color:var(--wj-input-border-color-focus)!important}:host .native-input.default.focused label{opacity:.67;font-size:12px;letter-spacing:normal}:host .native-input.default input{border:none;height:25px;min-height:25px;padding:0;margin-top:-4px;background:none;box-shadow:none;width:100%}:host .native-input.default label{margin:0;display:block;opacity:1;cursor:text;transition:opacity .2s ease;line-height:var(--wj-input-line-height)}:host .native-input.default label.fade{opacity:.5;font-size:12px;letter-spacing:normal}:host .native-input.default ::slotted([slot=start]){border-left:none;border-top:none;border-bottom:none}:host .native-input.default ::slotted([slot=end]){border-right:none;border-top:none;border-bottom:none}:host .native-input.standard{background-color:var(--wj-input-background-color);font-family:var(--wj-input-font-family);position:relative;border-radius:var(--wj-input-border-radius);padding-inline:0;padding-top:0;padding-bottom:0;transition:background-color .2s ease;cursor:text}:host .native-input.standard.focused input{border-color:var(--wj-input-border-color-focus)!important}:host .native-input.standard input{display:block;min-height:32px;padding-inline:.5rem;padding-top:0;padding-bottom:0;background:none;box-shadow:none;width:100%;box-sizing:border-box;border-radius:var(--wj-input-border-radius);border-width:var(--wj-input-border-width);border-style:var(--wj-input-border-style);border-color:var(--wj-input-border-color)}:host .native-input.standard label{margin:0;display:inline-block;opacity:1;cursor:text;transition:opacity .2s ease;line-height:var(--wj-input-line-height)}:host .native-input.standard .input-wrapper:hover .clear{visibility:visible}:host .native-input.standard ::slotted([slot=start]){border-right:none;border-radius:var(--wj-input-border-radius) 0 0 var(--wj-input-border-radius)}:host .native-input.standard ::slotted([slot=end]){border-left:none;border-radius:0 var(--wj-input-border-radius) var(--wj-input-border-radius) 0}:host .native-input.standard.has-start input{border-top-left-radius:0;border-bottom-left-radius:0}:host .native-input.standard.has-end input{border-top-right-radius:0;border-bottom-right-radius:0}:host .native-input.standard .error-message{position:static;background:transparent;padding:.25rem 0;left:auto;transform:none;color:var(--wj-input-color-invalid);font-size:12px;line-height:normal}.clear{visibility:hidden;position:absolute;right:0;top:3px;--wj-padding-top: .25rem;--wj-padding-start: .25rem;--wj-padding-end: .25rem;--wj-padding-bottom: .25rem;--wj-button-margin-inline: 0 .25rem}:host([required]) .input-wrapper:after{color:var(--wj-input-color-invalid);content:"*";font-family:var(--wj-force-mac-font-family);font-size:20px;position:absolute;right:10px;top:2px}:host([required]) .standard .input-wrapper:after{top:0}:host([invalid]) .error-message{display:block}:host([invalid]) .default label{opacity:1!important;color:var(--wj-input-color-invalid)!important;animation-name:shake;animation-duration:.4s;animation-iteration-count:1}::slotted([slot=start]),::slotted([slot=end]){display:flex;align-items:center;border-width:var(--wj-input-border-width);border-style:var(--wj-input-border-style);border-color:var(--wj-input-border-color);padding-inline:var(--wj-input-slot-padding-inline)}slot[name=start],slot[name=end]{display:flex}input{background-color:var(--wj-input-background-color);border-width:var(--wj-input-border-width);border-style:var(--wj-input-border-style);border-color:var(--wj-input-border-color);font-family:var(--wjinput-font-family);color:var(--wj-input-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:0;padding:.25rem .5rem;line-height:var(--wj-input-line-height);font-size:14px;font-weight:400;vertical-align:middle;min-height:32px}.error-message{display:none;position:absolute;width:auto;max-width:100%;min-width:auto;border-radius:50px;background:black;padding:.25rem .5rem;top:0;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:12px;line-height:normal}@keyframes shake{8%,41%{transform:translate(-4px)}25%,58%{transform:translate(4px)}75%{transform:translate(-2px)}92%{transform:translate(2px)}0%,to{transform:translate(0)}}
9
7
  `;
10
- class f extends y {
8
+ class w extends x {
11
9
  constructor(t = {}) {
12
10
  super();
13
11
  b(this, "className", "Input");
@@ -56,7 +54,7 @@ class f extends y {
56
54
  return this.internals.reportValidity();
57
55
  }
58
56
  static get cssStyleSheet() {
59
- return j;
57
+ return A;
60
58
  }
61
59
  static get observedAttributes() {
62
60
  return ["value"];
@@ -65,22 +63,27 @@ class f extends y {
65
63
  this.isShadowRoot = "open";
66
64
  }
67
65
  draw(t, e, s) {
68
- let o = this.hasSlot(this, "start"), v = this.hasSlot(this, "end"), m = document.createDocumentFragment(), i = document.createElement("div");
69
- i.setAttribute("part", "native"), i.classList.add("native-input", this.variant || "default"), this.hasAttribute("invalid") && i.classList.add("has-error");
66
+ let o = this.hasSlot(this, "start"), m = this.hasSlot(this, "end"), v = document.createDocumentFragment(), r = document.createElement("div");
67
+ r.setAttribute("part", "native"), r.classList.add("native-input", this.variant || "default"), this.hasAttribute("invalid") && r.classList.add("has-error");
70
68
  let l = document.createElement("div");
71
69
  l.classList.add("wrapper");
72
- let u = document.createElement("div");
73
- u.classList.add("input-wrapper");
74
- let d = document.createElement("label");
75
- d.innerText = this.label, this.value && !this.hasAttribute("error") && d.classList.add("fade");
76
- let r = document.createElement("input");
77
- r.setAttribute("type", "text"), r.setAttribute("part", "input"), r.setAttribute("value", this.value || ""), r.classList.add("form-control"), this.hasAttribute("placeholder") && r.setAttribute("placeholder", this.placeholder), this.hasAttribute("disabled") && r.setAttribute("disabled", ""), this.hasAttribute("readonly") && r.setAttribute("readonly", "");
70
+ let d = document.createElement("div");
71
+ d.classList.add("input-wrapper");
72
+ let u = document.createElement("label");
73
+ u.innerText = this.label, this.value && !this.hasAttribute("error") && u.classList.add("fade");
74
+ let i = document.createElement("input");
75
+ i.setAttribute("type", "text"), i.setAttribute("part", "input"), i.setAttribute("value", this.value || ""), i.classList.add("form-control"), this.hasAttribute("placeholder") && i.setAttribute("placeholder", this.placeholder), this.hasAttribute("multiple") && i.setAttribute("multiple", this.multiple), this.hasAttribute("disabled") && i.setAttribute("disabled", ""), this.hasAttribute("readonly") && i.setAttribute("readonly", ""), this.hasAttribute("maxlength") && i.setAttribute("maxlength", this.maxlength), this.hasAttribute("max") && i.setAttribute("max", this.max), this.hasAttribute("min") && i.setAttribute("min", this.min);
78
76
  let p = document.createElement("div");
79
77
  p.classList.add("error-message");
80
78
  let h = null;
81
79
  o && (h = document.createElement("slot"), h.setAttribute("name", "start"));
82
80
  let c = null;
83
- return v && (c = document.createElement("slot"), c.setAttribute("name", "end")), o && (l.appendChild(h), i.classList.add("has-start")), this.variant === "standard" ? this.label && i.appendChild(d) : u.appendChild(d), u.appendChild(r), l.appendChild(u), i.appendChild(l), v && (l.appendChild(c), i.classList.add("has-end")), i.appendChild(p), m.appendChild(i), this.native = i, this.labelElement = d, this.input = r, this.errorMessage = p, m;
81
+ if (m && (c = document.createElement("slot"), c.setAttribute("name", "end")), o && (l.appendChild(h), r.classList.add("has-start")), this.variant === "standard" ? this.label && r.appendChild(u) : d.appendChild(u), d.appendChild(i), l.appendChild(d), r.appendChild(l), this.hasAttribute("clearable")) {
82
+ this.clear = document.createElement("wj-button"), this.clear.classList.add("clear"), this.clear.setAttribute("fill", "link"), this.clear.setAttribute("part", "clear");
83
+ let f = document.createElement("wj-icon");
84
+ f.setAttribute("name", "x"), this.clear.appendChild(f), d.appendChild(this.clear);
85
+ }
86
+ return m && (l.appendChild(c), r.classList.add("has-end")), r.appendChild(p), v.appendChild(r), this.native = r, this.labelElement = u, this.input = i, this.errorMessage = p, v;
84
87
  }
85
88
  afterDraw() {
86
89
  [
@@ -103,10 +106,14 @@ class f extends y {
103
106
  }), this.input.addEventListener("input", (t) => {
104
107
  this.validateOnChange && (this.pristine = !1), this.input.classList.remove("pristine"), this.labelElement.classList.add("fade");
105
108
  const e = new t.constructor(t.type, t);
106
- this.dispatchEvent(e), this.validateInput();
109
+ this.dispatchEvent(e), this.validateInput(), g.dispatchCustomEvent(this, "wj-input:input", {
110
+ value: this.input.value
111
+ });
107
112
  }), this.addEventListener("invalid", (t) => {
108
113
  this.invalid = !0, this.pristine = !1, this.errorMessage.textContent = this.internals.validationMessage, this.customErrorDisplay && t.preventDefault();
109
- }), this.addEventListener("focus", () => this.input.focus());
114
+ }), this.addEventListener("focus", () => this.input.focus()), this.clear && this.clear.addEventListener("wj:button-click", (t) => {
115
+ this.input.value = "", g.dispatchCustomEvent(this.clear, "wj-input:clear");
116
+ });
110
117
  }
111
118
  validateInput() {
112
119
  const t = this.input.validity;
@@ -130,8 +137,8 @@ class f extends y {
130
137
  return t.querySelectorAll(s).length > 0;
131
138
  }
132
139
  }
133
- b(f, "formAssociated", !0);
134
- customElements.get("wj-input") || window.customElements.define("wj-input", f);
140
+ b(w, "formAssociated", !0);
141
+ customElements.get("wj-input") || window.customElements.define("wj-input", w);
135
142
  export {
136
- f as Input
143
+ w as Input
137
144
  };
package/dist/wj-item.js CHANGED
@@ -3,9 +3,7 @@ var d = (i, e, t) => e in i ? s(i, e, { enumerable: !0, configurable: !0, writab
3
3
  var o = (i, e, t) => (d(i, typeof e != "symbol" ? e + "" : e, t), t);
4
4
  import l from "./wj-element.js";
5
5
  import "./wj-store.js";
6
- const m = `/*!
7
- * direction.scss
8
- */:host{--wj-item-color: $color-contrast-higher;--wj-border-width: 0 0 1px 0;--wj-item-background: transparent;--wj-item-background-hover: #f4f4f4;--wj-item-padding-top: 0px;--wj-item-padding-bottom: 0px;--wj-item-padding-end: 0px;--wj-item-padding-start: 0px;--wj-item-inner-border-width: 0 0 1px 0;--wj-item-inner-padding-top: 0px;--wj-item-inner-padding-bottom: 0px;--wj-item-inner-padding-start: 0px;--wj-item-inner-padding-end: 0px;--wj-item-inner-box-shadow: none;--wj-item-min-height: 40px;--wj-item-transition: opacity 15ms linear, background-color 15ms linear;display:block;position:relative;align-items:center;justify-content:space-between;outline:none;color:var(--wj-item-color);text-align:initial;text-decoration:none;overflow:hidden;box-sizing:border-box;width:100%}.item-native{border-radius:var(--wj-item-border-radius);padding-top:var(--wj-item-padding-top);padding-bottom:var(--wj-item-padding-bottom);padding-left:var(--wj-item-padding-start);padding-right:var(--wj-item-padding-end);margin:0;display:flex;position:relative;align-items:inherit;justify-content:inherit;width:100%;min-height:var(--wj-item-min-height);transition:var(--wj-item-transition);outline:none;background:var(--wj-item-background);overflow:inherit;box-sizing:border-box;z-index:1;text-decoration:none;color:var(--wj-item-color)}.item-native .item-inner{margin:0;padding:var(--wj-item-inner-padding-top) var(--wj-item-inner-padding-end) var(--wj-item-inner-padding-bottom) var(--wj-item-inner-padding-start);display:flex;position:relative;flex:1 1 0;flex-direction:inherit;align-items:inherit;align-self:stretch;min-height:inherit;border-width:var(--wj-border-width);border-style:var(--wj-border-style);border-color:var(--wj-border-color);box-shadow:var(--wj-item-inner-box-shadow);overflow:inherit;box-sizing:border-box}.item-native .item-inner .input-wrapper{display:flex;flex:1 1 0;flex-direction:inherit;align-items:inherit;align-self:stretch;text-overflow:ellipsis;overflow:inherit;box-sizing:border-box}.item-native .item-bottom{padding:0 var(--wj-item-inner-padding-end) 0 var(--wj-item-padding-start);display:flex;justify-content:space-between}@media (any-hover: hover){:host(:hover) .item-native{color:var(--wj-item-color)}:host(:hover) .item-native :after{transition:var(--wj-item-transition);z-index:-1;top:0;right:0;bottom:0;left:0;position:absolute;content:"";background:var(--wj-item-background-hover);opacity:.7}}button,a{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}::slotted([slot=start]){margin-inline:0 1rem}::slotted(wj-label){margin:10px 8px 10px 0}::slotted(wj-label:not([slot=end])){flex:1 1 0}
6
+ const m = `:host{--wj-border-width: 0 0 1px 0;--wj-item-background: transparent;--wj-item-background-hover: var(--wj-color-contrast-3);--wj-item-padding-top: 0px;--wj-item-padding-bottom: 0px;--wj-item-padding-end: 0px;--wj-item-padding-start: 0px;--wj-item-inner-border-width: 0 0 1px 0;--wj-item-inner-padding-top: 0px;--wj-item-inner-padding-bottom: 0px;--wj-item-inner-padding-start: 0px;--wj-item-inner-padding-end: 0px;--wj-item-inner-box-shadow: none;--wj-item-min-height: 40px;--wj-item-transition: opacity 15ms linear, background-color 15ms linear;display:block;position:relative;align-items:center;justify-content:space-between;outline:none;color:var(--wj-item-color);text-align:initial;text-decoration:none;overflow:hidden;box-sizing:border-box;width:100%}.item-native{border-radius:var(--wj-item-border-radius);padding-top:var(--wj-item-padding-top);padding-bottom:var(--wj-item-padding-bottom);padding-inline:var(--wj-item-padding-start) var(--wj-item-padding-end);margin:0;display:flex;position:relative;align-items:inherit;justify-content:inherit;width:100%;min-height:var(--wj-item-min-height);transition:var(--wj-item-transition);outline:none;background:var(--wj-item-background);overflow:inherit;box-sizing:border-box;z-index:1;text-decoration:none;color:var(--wj-item-color)}.item-native .item-inner{margin:0;padding:var(--wj-item-inner-padding-top) var(--wj-item-inner-padding-end) var(--wj-item-inner-padding-bottom) var(--wj-item-inner-padding-start);display:flex;position:relative;flex:1 1 0;flex-direction:inherit;align-items:inherit;align-self:stretch;min-height:inherit;border-width:var(--wj-border-width);border-style:var(--wj-border-style);border-color:var(--wj-border-color);box-shadow:var(--wj-item-inner-box-shadow);overflow:inherit;box-sizing:border-box}.item-native .item-inner .input-wrapper{display:flex;flex:1 1 0;flex-direction:inherit;align-items:inherit;align-self:stretch;text-overflow:ellipsis;overflow:inherit;box-sizing:border-box}.item-native .item-bottom{padding:0 var(--wj-item-inner-padding-end) 0 var(--wj-item-padding-start);display:flex;justify-content:space-between}@media (any-hover: hover){:host(:hover) .item-native{color:var(--wj-item-color)}:host(:hover) .item-native :after{transition:var(--wj-item-transition);z-index:-1;top:0;right:0;bottom:0;left:0;position:absolute;content:"";background:var(--wj-item-background-hover);opacity:.7}}button,a{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}::slotted([slot=start]){margin-inline:0 1rem}::slotted(wj-label:not([slot=end])){flex:1 1 0}
9
7
  `;
10
8
  class p extends l {
11
9
  constructor() {
package/dist/wj-label.js CHANGED
@@ -1,19 +1,19 @@
1
- var n = Object.defineProperty;
2
- var c = (e, t, o) => t in e ? n(e, t, { enumerable: !0, configurable: !0, writable: !0, value: o }) : e[t] = o;
1
+ var i = Object.defineProperty;
2
+ var c = (e, t, o) => t in e ? i(e, t, { enumerable: !0, configurable: !0, writable: !0, value: o }) : e[t] = o;
3
3
  var s = (e, t, o) => (c(e, typeof t != "symbol" ? t + "" : t, o), o);
4
4
  import w from "./wj-element.js";
5
5
  import "./wj-store.js";
6
- const h = `/*!
6
+ const m = `/*!
7
7
  * direction.scss
8
- */:host(.wj-color-primary){--wj-color: #7252D3 !important}:host(.wj-color-complete){--wj-color: #0072EC !important}:host(.wj-color-success){--wj-color-base: #19AD79 !important;--wj-color-contrast: #fff !important}:host(.wj-color-warning){--wj-color-base: #FFd945 !important;--wj-color-contrast: #4b4b4b !important}:host(.wj-color-danger){--wj-color-base: #D83C31 !important;--wj-color-contrast: #fff !important}:host(.wj-color-info){--wj-color-base: #3B4752 !important;--wj-color-contrast: #fff !important}:host(.wj-color-menu){--wj-color-base: #2b303b !important;--wj-color-contrast: #fff !important}:host{--wj-label-text-wrap-font-size: 13px;--wj-label-text-wrap-line-height: 1.4}:host{--wj-color: initial;display:block;font-size:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;box-sizing:border-box}:host(.wj-color){color:var(--wj-color-base)}:host(.wj-text-wrap),:host([text-wrap]){white-space:normal!important;font-size:var(--wj-label-text-wrap-font-size);line-height:var(--wj-label-text-wrap-line-height)}:host(.label-fixed){flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.label-stacked),:host(.label-floating){margin:0;align-self:stretch;width:auto;max-width:100%}:host(.label-no-animate.label-floating){transition:none}::slotted(*) h1,::slotted(*) h2,::slotted(*) h3,::slotted(*) h4,::slotted(*) h5,::slotted(*) h6{text-overflow:inherit;overflow:inherit}:host(.wj-color){color:var(--wj-color)}::slotted(*:first-child){margin-top:0!important}::slotted(*:last-child){margin-bottom:0!important}
8
+ */:host(.wj-color-primary){--wj-color: #7252D3 !important}:host(.wj-color-complete){--wj-color: #0072EC !important}:host(.wj-color-success){--wj-color-base: #19AD79 !important;--wj-color-contrast: #fff !important}:host(.wj-color-warning){--wj-color-base: #FFd945 !important;--wj-color-contrast: #4b4b4b !important}:host(.wj-color-danger){--wj-color-base: #D83C31 !important;--wj-color-contrast: #fff !important}:host(.wj-color-info){--wj-color-base: #3B4752 !important;--wj-color-contrast: #fff !important}:host(.wj-color-menu){--wj-color-base: #2b303b !important;--wj-color-contrast: #fff !important}:host{--wj-color: initial;display:block;font-size:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;box-sizing:border-box}:host(.wj-color){color:var(--wj-color-base)}:host(.wj-text-wrap),:host([text-wrap]){white-space:normal!important}:host(.label-fixed){flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.label-stacked),:host(.label-floating){margin:0;align-self:stretch;width:auto;max-width:100%}:host(.label-no-animate.label-floating){transition:none}::slotted(*) h1,::slotted(*) h2,::slotted(*) h3,::slotted(*) h4,::slotted(*) h5,::slotted(*) h6{text-overflow:inherit;overflow:inherit}:host(.wj-color){color:var(--wj-color)}::slotted(*:first-child){margin-top:0!important}::slotted(*:last-child){margin-bottom:0!important}
9
9
  `;
10
- class m extends w {
10
+ class h extends w {
11
11
  constructor() {
12
12
  super();
13
13
  s(this, "className", "Label");
14
14
  }
15
15
  static get cssStyleSheet() {
16
- return h;
16
+ return m;
17
17
  }
18
18
  static get observedAttributes() {
19
19
  return [];
@@ -26,11 +26,11 @@ class m extends w {
26
26
  draw(o, a, r) {
27
27
  let l = document.createDocumentFragment();
28
28
  this.color && this.classList.add("wj-color-" + r.color, "wj-color");
29
- let i = document.createElement("slot");
30
- return l.appendChild(i), l;
29
+ let n = document.createElement("slot");
30
+ return l.appendChild(n), l;
31
31
  }
32
32
  }
33
- customElements.get("wj-label") || window.customElements.define("wj-label", m);
33
+ customElements.get("wj-label") || window.customElements.define("wj-label", h);
34
34
  export {
35
- m as Label
35
+ h as Label
36
36
  };
package/dist/wj-list.js CHANGED
@@ -3,9 +3,7 @@ var a = (e, t, s) => t in e ? o(e, t, { enumerable: !0, configurable: !0, writab
3
3
  var n = (e, t, s) => (a(e, typeof t != "symbol" ? t + "" : t, s), s);
4
4
  import l from "./wj-element.js";
5
5
  import "./wj-store.js";
6
- const d = `/*!
7
- * direction.scss
8
- */:host{--wj-list-inset-padding: 1rem;--wj-list-border-radius: 8px;--wj-list-background: #fff;margin:0;padding:0;display:block;contain:content;list-style-type:none}:host(.wj-inset){background:var(--wj-list-background);transform:translateZ(0);overflow:hidden;padding:var(--wj-list-inset-padding);border-radius:var(--wj-list-border-radius)}:host(.wj-lines-none) ::slotted(wj-item){--wj-border-width: 0 !important}
6
+ const d = `:host{--wj-list-inset-padding: 1rem;--wj-list-border-radius: 8px;--wj-list-background: var(--wj-background);margin:0;padding:0;display:block;contain:content;list-style-type:none}:host(.wj-inset){background:var(--wj-list-background);transform:translateZ(0);overflow:hidden;padding:var(--wj-list-inset-padding);border-radius:var(--wj-list-border-radius)}:host(.wj-lines-none) ::slotted(wj-item){--wj-border-width: 0 !important}
9
7
  `;
10
8
  class c extends l {
11
9
  constructor() {
package/dist/wj-main.js CHANGED
@@ -3,9 +3,7 @@ var i = (t, e, s) => e in t ? a(t, e, { enumerable: !0, configurable: !0, writab
3
3
  var o = (t, e, s) => (i(t, typeof e != "symbol" ? e + "" : e, s), s);
4
4
  import m from "./wj-element.js";
5
5
  import "./wj-store.js";
6
- const c = `/*!
7
- * direction.scss
8
- */:host{display:block;flex:1;flex-basis:auto;padding:1.5rem;box-sizing:border-box}
6
+ const c = `:host{display:block;flex:1;flex-basis:auto;padding:1.5rem;box-sizing:border-box}
9
7
  `;
10
8
  class l extends m {
11
9
  constructor() {