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.
Files changed (79) hide show
  1. package/dist/localize-20081fd1.js +55 -0
  2. package/dist/router-links-26e4a166.js +204 -0
  3. package/dist/style.css +2243 -2
  4. package/dist/wj-animation.js +35 -23
  5. package/dist/wj-aside.js +22 -16
  6. package/dist/wj-avatar.js +49 -30
  7. package/dist/wj-badge.js +22 -18
  8. package/dist/wj-breadcrumb.js +102 -50
  9. package/dist/wj-breadcrumbs.js +36 -19
  10. package/dist/wj-button-group.js +36 -22
  11. package/dist/wj-button.js +104 -39
  12. package/dist/wj-card-content.js +18 -14
  13. package/dist/wj-card-controls.js +18 -14
  14. package/dist/wj-card-header.js +20 -14
  15. package/dist/wj-card-subtitle.js +19 -15
  16. package/dist/wj-card-title.js +18 -14
  17. package/dist/wj-card.js +20 -14
  18. package/dist/wj-carousel-item.js +22 -16
  19. package/dist/wj-carousel.js +169 -92
  20. package/dist/wj-checkbox.js +46 -24
  21. package/dist/wj-chip.js +39 -21
  22. package/dist/wj-col.js +31 -17
  23. package/dist/wj-color-picker.js +877 -509
  24. package/dist/wj-container.js +20 -16
  25. package/dist/wj-copy-button.js +112 -64
  26. package/dist/wj-dialog.js +68 -42
  27. package/dist/wj-divider.js +20 -14
  28. package/dist/wj-dropdown.js +29 -17
  29. package/dist/wj-element.js +415 -241
  30. package/dist/wj-fetchAndParseCSS.js +49 -32
  31. package/dist/wj-file-upload-item.js +64 -38
  32. package/dist/wj-file-upload.js +237 -137
  33. package/dist/wj-footer.js +18 -14
  34. package/dist/wj-form.js +18 -14
  35. package/dist/wj-format-digital.js +40 -25
  36. package/dist/wj-grid.js +20 -16
  37. package/dist/wj-header.js +22 -16
  38. package/dist/wj-icon-picker.js +122 -68
  39. package/dist/wj-icon.js +144 -64
  40. package/dist/wj-img-comparer.js +72 -41
  41. package/dist/wj-img.js +31 -19
  42. package/dist/wj-infinite-scroll.js +90 -52
  43. package/dist/wj-input-file.js +50 -27
  44. package/dist/wj-input.js +169 -70
  45. package/dist/wj-item.js +34 -17
  46. package/dist/wj-label.js +21 -19
  47. package/dist/wj-list.js +20 -15
  48. package/dist/wj-main.js +18 -14
  49. package/dist/wj-masonry.js +140 -83
  50. package/dist/wj-master.js +492 -350
  51. package/dist/wj-menu-button.js +19 -15
  52. package/dist/wj-menu-item.js +150 -64
  53. package/dist/wj-menu-label.js +21 -17
  54. package/dist/wj-menu.js +24 -18
  55. package/dist/wj-popup.js +1140 -712
  56. package/dist/wj-progress-bar.js +100 -40
  57. package/dist/wj-radio-group.js +38 -25
  58. package/dist/wj-radio.js +46 -22
  59. package/dist/wj-rate.js +121 -71
  60. package/dist/wj-relative-time.js +48 -24
  61. package/dist/wj-route.js +11 -8
  62. package/dist/wj-router-link.js +22 -17
  63. package/dist/wj-router-outlet.js +135 -71
  64. package/dist/wj-routerx.js +1124 -641
  65. package/dist/wj-row.js +21 -19
  66. package/dist/wj-slider.js +97 -55
  67. package/dist/wj-split-view.js +81 -43
  68. package/dist/wj-store.js +195 -110
  69. package/dist/wj-textarea.js +86 -37
  70. package/dist/wj-thumbnail.js +19 -15
  71. package/dist/wj-toast.js +87 -34
  72. package/dist/wj-toggle.js +42 -24
  73. package/dist/wj-toolbar-action.js +27 -16
  74. package/dist/wj-toolbar.js +26 -19
  75. package/dist/wj-tooltip.js +40 -24
  76. package/dist/wj-visually-hidden.js +18 -14
  77. package/package.json +1 -1
  78. package/dist/localize-762a9f0f.js +0 -43
  79. package/dist/router-links-e0087f84.js +0 -146
@@ -1,17 +1,19 @@
1
- var s = Object.defineProperty;
2
- var a = (e, t, n) => t in e ? s(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
3
- var o = (e, t, n) => (a(e, typeof t != "symbol" ? t + "" : t, n), n);
4
- import c from "./wj-element.js";
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 d = `:host{--wj-container-indent: 0;display:flex;flex-direction:row;flex:1;flex-basis:auto;box-sizing:border-box;min-width:0}:host([vertical]){flex-direction:column}@media (min-width: 768px){:host([indent]){margin-left:var(--wj-container-indent)}}
7
- `;
8
- class l extends c {
9
+ const styles = "/*\n[ WJ Container ]\n*/\n:host {\n --wj-container-indent: 0;\n display: flex;\n flex-direction: row;\n flex: 1;\n flex-basis: auto;\n box-sizing: border-box;\n min-width: 0;\n}\n\n:host([vertical]) {\n flex-direction: column;\n}\n\n@media (min-width: 768px) {\n :host([indent]) {\n margin-left: var(--wj-container-indent);\n }\n}";
10
+ class Container extends WJElement {
9
11
  constructor() {
10
12
  super();
11
- o(this, "className", "Container");
13
+ __publicField(this, "className", "Container");
12
14
  }
13
15
  static get cssStyleSheet() {
14
- return d;
16
+ return styles;
15
17
  }
16
18
  static get observedAttributes() {
17
19
  return [];
@@ -19,14 +21,16 @@ class l extends c {
19
21
  setupAttributes() {
20
22
  this.isShadowRoot = "open";
21
23
  }
22
- draw(n, m, u) {
23
- let i = document.createDocumentFragment();
24
- this.indent && this.style.setProperty("--wj-container-indent", this.indent);
25
- let r = document.createElement("slot");
26
- return i.appendChild(r), i;
24
+ draw(context, store, params) {
25
+ let fragment = document.createDocumentFragment();
26
+ if (this.indent)
27
+ this.style.setProperty("--wj-container-indent", this.indent);
28
+ let element = document.createElement("slot");
29
+ fragment.appendChild(element);
30
+ return fragment;
27
31
  }
28
32
  }
29
- customElements.get("wj-container") || window.customElements.define("wj-container", l);
33
+ customElements.get("wj-container") || window.customElements.define("wj-container", Container);
30
34
  export {
31
- l as Container
35
+ Container
32
36
  };
@@ -1,69 +1,95 @@
1
- var d = Object.defineProperty;
2
- var p = (o, e, t) => e in o ? d(o, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[e] = t;
3
- var i = (o, e, t) => (p(o, typeof e != "symbol" ? e + "" : e, t), t);
4
- import h, { event as s } from "./wj-element.js";
5
- import { Input as m } from "./wj-input.js";
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 { Input } from "./wj-input.js";
6
9
  import "./wj-store.js";
7
- function f(o) {
8
- const e = document.createElement("pre");
9
- return e.style.width = "1px", e.style.height = "1px", e.style.position = "fixed", e.style.top = "5px", e.textContent = o, e;
10
+ function createNode(text) {
11
+ const node = document.createElement("pre");
12
+ node.style.width = "1px";
13
+ node.style.height = "1px";
14
+ node.style.position = "fixed";
15
+ node.style.top = "5px";
16
+ node.textContent = text;
17
+ return node;
10
18
  }
11
- function l(o) {
12
- if ("clipboard" in navigator)
13
- return navigator.clipboard.writeText(o.textContent || "");
14
- const e = getSelection();
15
- if (e == null)
19
+ function copyNode(node) {
20
+ if ("clipboard" in navigator) {
21
+ return navigator.clipboard.writeText(node.textContent || "");
22
+ }
23
+ const selection = getSelection();
24
+ if (selection == null) {
16
25
  return Promise.reject(new Error());
17
- e.removeAllRanges();
18
- const t = document.createRange();
19
- return t.selectNodeContents(o), e.addRange(t), e.removeAllRanges(), Promise.resolve();
26
+ }
27
+ selection.removeAllRanges();
28
+ const range = document.createRange();
29
+ range.selectNodeContents(node);
30
+ selection.addRange(range);
31
+ selection.removeAllRanges();
32
+ return Promise.resolve();
20
33
  }
21
- function u(o) {
22
- if ("clipboard" in navigator)
23
- return navigator.clipboard.writeText(o);
24
- const e = document.body;
25
- if (!e)
34
+ function copyText(text) {
35
+ if ("clipboard" in navigator) {
36
+ return navigator.clipboard.writeText(text);
37
+ }
38
+ const body = document.body;
39
+ if (!body) {
26
40
  return Promise.reject(new Error());
27
- const t = f(o);
28
- return e.appendChild(t), l(t), e.removeChild(t), Promise.resolve();
41
+ }
42
+ const node = createNode(text);
43
+ body.appendChild(node);
44
+ copyNode(node);
45
+ body.removeChild(node);
46
+ return Promise.resolve();
29
47
  }
30
- const b = `:host{cursor:pointer;padding:.5rem}
31
- `;
32
- class y extends h {
48
+ const styles = "/*\n[ Wj Copy Button ]\n*/\n:host {\n cursor: pointer;\n padding: 0.5rem;\n}";
49
+ class CopyButton extends WJElement {
33
50
  constructor() {
34
51
  super();
35
- i(this, "className", "CopyButton");
36
- i(this, "clicked", (t) => {
37
- const n = t.currentTarget;
38
- n instanceof HTMLElement && this.copy(n);
52
+ __publicField(this, "className", "CopyButton");
53
+ __publicField(this, "clicked", (e) => {
54
+ const button = e.currentTarget;
55
+ if (button instanceof HTMLElement) {
56
+ this.copy(button);
57
+ }
39
58
  });
40
- i(this, "keydown", (t) => {
41
- if (t.key === " " || t.key === "Enter") {
42
- const n = t.currentTarget;
43
- n instanceof HTMLElement && this.copy(n);
59
+ __publicField(this, "keydown", (e) => {
60
+ if (e.key === " " || e.key === "Enter") {
61
+ const button = e.currentTarget;
62
+ if (button instanceof HTMLElement) {
63
+ this.copy(button);
64
+ }
44
65
  }
45
66
  });
46
- i(this, "focused", (t) => {
47
- t.currentTarget.addEventListener("keydown", this.keydown);
67
+ __publicField(this, "focused", (e) => {
68
+ e.currentTarget.addEventListener("keydown", this.keydown);
48
69
  });
49
- i(this, "blurred", (t) => {
50
- t.currentTarget.removeEventListener("keydown", this.keydown);
70
+ __publicField(this, "blurred", (e) => {
71
+ e.currentTarget.removeEventListener("keydown", this.keydown);
51
72
  });
52
- i(this, "copied", (t) => {
53
- this.icon.setAttribute("color", "success"), this.icon.setAttribute("name", "check"), this.tooltip.setAttribute("content", this.labelSuccess || "Copied"), setTimeout(() => {
54
- this.icon.removeAttribute("color"), this.icon.setAttribute("name", "clipboard"), this.tooltip.setAttribute("content", this.label || "Copy");
73
+ __publicField(this, "copied", (e) => {
74
+ this.icon.setAttribute("color", "success");
75
+ this.icon.setAttribute("name", "check");
76
+ this.tooltip.setAttribute("content", this.labelSuccess || "Copied");
77
+ setTimeout(() => {
78
+ this.icon.removeAttribute("color");
79
+ this.icon.setAttribute("name", "clipboard");
80
+ this.tooltip.setAttribute("content", this.label || "Copy");
55
81
  }, this.timeout);
56
82
  });
57
83
  this.timeout = 1e3;
58
84
  }
59
- set value(t) {
60
- this.setAttribute("value", t);
85
+ set value(value) {
86
+ this.setAttribute("value", value);
61
87
  }
62
88
  get value() {
63
89
  return this.getAttribute("value") || "";
64
90
  }
65
91
  static get cssStyleSheet() {
66
- return b;
92
+ return styles;
67
93
  }
68
94
  static get observedAttributes() {
69
95
  return [];
@@ -72,33 +98,55 @@ class y extends h {
72
98
  this.isShadowRoot = "open";
73
99
  }
74
100
  draw() {
75
- let t = document.createDocumentFragment(), n = document.createElement("wj-tooltip");
76
- n.setAttribute("offset", "5"), n.setAttribute("content", this.label || "Copy");
77
- let r = document.createElement("wj-icon");
78
- return r.setAttribute("name", "clipboard"), n.appendChild(r), t.appendChild(n), this.tooltip = n, this.icon = r, t;
101
+ let fragment = document.createDocumentFragment();
102
+ let tooltip = document.createElement("wj-tooltip");
103
+ tooltip.setAttribute("offset", "5");
104
+ tooltip.setAttribute("content", this.label || "Copy");
105
+ let icon = document.createElement("wj-icon");
106
+ icon.setAttribute("name", "clipboard");
107
+ tooltip.appendChild(icon);
108
+ fragment.appendChild(tooltip);
109
+ this.tooltip = tooltip;
110
+ this.icon = icon;
111
+ return fragment;
79
112
  }
80
113
  afterDraw() {
81
- s.addListener(this, "click", null, this.clicked), s.addListener(this, "focus", null, this.focused), s.addListener(this, "blur", null, this.blurred), s.addListener(this, "wj:copy-button", null, this.copied);
114
+ event.addListener(this, "click", null, this.clicked);
115
+ event.addListener(this, "focus", null, this.focused);
116
+ event.addListener(this, "blur", null, this.blurred);
117
+ event.addListener(this, "wj:copy-button", null, this.copied);
82
118
  }
83
- async copy(t) {
84
- const n = this.getAttribute("for"), r = this.getAttribute("value");
85
- if (t.getAttribute("aria-disabled") !== "true") {
86
- if (r)
87
- await u(r), s.dispatchCustomEvent(this, "wj:copy-button");
88
- else if (n) {
89
- const c = "getRootNode" in Element.prototype ? t.getRootNode() : t.ownerDocument;
90
- if (!(c instanceof Document || "ShadowRoot" in window && c instanceof ShadowRoot))
91
- return;
92
- const a = c.getElementById(n);
93
- a && (await this.copyTarget(a), s.dispatchCustomEvent(this, "wj:copy-button"));
119
+ async copy(button) {
120
+ const id = this.getAttribute("for");
121
+ const text = this.getAttribute("value");
122
+ if (button.getAttribute("aria-disabled") === "true") {
123
+ return;
124
+ }
125
+ if (text) {
126
+ await copyText(text);
127
+ event.dispatchCustomEvent(this, "wj:copy-button");
128
+ } else if (id) {
129
+ const root = "getRootNode" in Element.prototype ? button.getRootNode() : button.ownerDocument;
130
+ if (!(root instanceof Document || "ShadowRoot" in window && root instanceof ShadowRoot))
131
+ return;
132
+ const node = root.getElementById(id);
133
+ if (node) {
134
+ await this.copyTarget(node);
135
+ event.dispatchCustomEvent(this, "wj:copy-button");
94
136
  }
95
137
  }
96
138
  }
97
- copyTarget(t) {
98
- return t instanceof HTMLInputElement || t instanceof HTMLTextAreaElement || t instanceof m ? u(t.value) : t instanceof HTMLAnchorElement && t.hasAttribute("href") ? u(t.href) : l(t);
139
+ copyTarget(content) {
140
+ if (content instanceof HTMLInputElement || content instanceof HTMLTextAreaElement || content instanceof Input) {
141
+ return copyText(content.value);
142
+ } else if (content instanceof HTMLAnchorElement && content.hasAttribute("href")) {
143
+ return copyText(content.href);
144
+ } else {
145
+ return copyNode(content);
146
+ }
99
147
  }
100
148
  }
101
- customElements.get("wj-copy-button") || window.customElements.define("wj-copy-button", y);
149
+ customElements.get("wj-copy-button") || window.customElements.define("wj-copy-button", CopyButton);
102
150
  export {
103
- y as CopyButton
151
+ CopyButton
104
152
  };
package/dist/wj-dialog.js CHANGED
@@ -1,63 +1,89 @@
1
- var c = Object.defineProperty;
2
- var b = (e, a, t) => a in e ? c(e, a, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[a] = t;
3
- var h = (e, a, t) => (b(e, typeof a != "symbol" ? a + "" : a, t), t);
4
- import u, { WjElementUtils as f } from "./wj-element.js";
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, { WjElementUtils } from "./wj-element.js";
5
8
  import "./wj-store.js";
6
- const v = `:host{--wj-dialog-width: 600px;--wj-dialog-height: 600px;--wj-dialog-border-radius: var(--wj-border-radius-large);--wj-dialog-border-width: var(--wj-border-width);--wj-dialog-border-style: var(--wj-border-style);--wj-dialog-border-color: var(--wj-border-color);--wj-dialog-margin-top: auto;--wj-dialog-margin-start: auto;--wj-dialog-margin-end: auto;--wj-dialog-margin-bottom: auto}:host .close{margin-left:auto}:host .modal-content{border-radius:3px;box-shadow:none}:host .dialog-header{position:relative;border-bottom:0;padding-inline:var(--wj-dialog-padding, 1rem);padding-top:var(--wj-dialog-padding, 1rem);padding-bottom:var(--wj-dialog-padding, 0);display:flex;align-items:center}:host .dialog-header span{font-family:var(--wj-font-family-secondary);font-size:10.5px;text-transform:uppercase;display:inline-block;letter-spacing:.06em;font-weight:500;margin:0;padding:0;line-height:normal;overflow:hidden;text-overflow:ellipsis;filter:alpha(opacity=40)}:host .dialog-content{box-shadow:none;padding-inline:var(--wj-dialog-padding, 1rem);white-space:normal;z-index:1}:host .dialog-footer{display:flex;justify-content:end;border-top:none;box-shadow:none;margin-top:0;padding-inline:var(--wj-dialog-padding-inline, 1rem);padding-top:var(--wj-dialog-padding-top, 1rem);padding-bottom:var(--wj-dialog-padding-bottom, 1rem)}dialog::backdrop{opacity:var(--wj-backdrop-opacity);background-color:var(--wj-backdrop)}:host(.separator) .dialog-header:after{content:"";height:1px;background:rgba(0,0,0,.08);left:var(--wj-dialog-padding, 1rem);right:var(--wj-dialog-padding, 1rem);position:absolute;bottom:0}:host dialog{box-sizing:border-box;transition:all .2s!important;width:var(--wj-dialog-width);height:var(--wj-dialog-height);box-shadow:0 .5rem 1rem #00000026;border-radius:var(--wj-dialog-border-radius);border-width:var(--wj-dialog-border-width);border-style:var(--wj-dialog-border-style);border-color:var(--wj-dialog-border-color);margin-top:var(--wj-dialog-margin-top);margin-bottom:var(--wj-dialog-margin-bottom);margin-inline:var(--wj-dialog-margin-start) var(--wj-dialog-margin-end);padding:0}:host(.stick-up){--wj-dialog-width: 300px !important;--wj-dialog-height: fit-content;--wj-dialog-border-radius: 0 0 8px 8px;--wj-dialog-border-width: 0 1px 1px 1px;--wj-dialog-margin-top: 0;--wj-dialog-translate-from: translateY(-110%);--wj-dialog-template-to: translateX(0)}:host(.slide-up){--wj-dialog-width: 300px !important;--wj-dialog-height: fit-content;--wj-dialog-border-radius: 8px;--wj-dialog-border-width: 1px;--wj-dialog-opacity-from: 0;--wj-dialog-translate-from: scale(.9);--wj-dialog-translate-to: scale(1)}:host(.fill-in){--wj-dialog-width: 100%;--wj-dialog-height: 100%;--wj-dialog-border-radius: 0 0 0 0 !important;--wj-dialog-border-width: 0;--wj-dialog-margin-top: 0;--wj-dialog-margin-start: 0;--wj-dialog-margin-end: 0;--wj-dialog-margin-bottom: 0;--wj-dialog-translate-from: scale(.95);--wj-dialog-translate-to: scale(1)}:host(.fill-in) dialog{min-width:var(--wj-dialog-width);min-height:var(--wj-dialog-height)}:host(.slide-left){--wj-dialog-width: 300px !important;--wj-dialog-height: 100% !important;--wj-dialog-border-radius: 0;--wj-dialog-border-width: 0 1px 0 0;--wj-dialog-margin-top: 0;--wj-dialog-margin-start: 0;--wj-dialog-margin-end: auto;--wj-dialog-margin-bottom: 0}:host(.slide-left) dialog{min-height:var(--wj-dialog-height);--wj-dialog-translate-from: translateX(-110%);--wj-dialog-template-to: translateX(0)}:host(.slide-right){--wj-dialog-width: 300px !important;--wj-dialog-height: 100% !important;--wj-dialog-border-radius: 0;--wj-dialog-border-width: 0 0 0 1px;--wj-dialog-margin-top: 0;--wj-dialog-margin-start: auto;--wj-dialog-margin-end: 0;--wj-dialog-margin-bottom: 0}:host(.slide-right) dialog{min-height:var(--wj-dialog-height);--wj-dialog-translate-from: translateX(110%);--wj-dialog-template-to: translateX(0)}:host(.small){--wj-dialog-width: 300px !important}:host(.medium){--wj-dialog-width: 500px !important}:host(.large){--wj-dialog-width: 600px !important}:host(.ex-large){--wj-dialog-width: 900px !important}dialog[open]{animation:show .5s ease normal}@keyframes show{0%{opacity:var(--wj-dialog-opacity-from, 1);transform:var(--wj-dialog-translate-from)}to{opacity:1;transform:var(--wj-dialog-translate-to)}}
7
- `;
8
- class x extends u {
9
+ const styles = '/*\n[ WJ Dialog ]\n*/\n:host {\n --wj-dialog-width: 600px;\n --wj-dialog-height: 600px;\n --wj-dialog-border-radius: var(--wj-border-radius-large);\n --wj-dialog-border-width: var(--wj-border-width);\n --wj-dialog-border-style: var(--wj-border-style);\n --wj-dialog-border-color: var(--wj-border-color);\n --wj-dialog-margin-top: auto;\n --wj-dialog-margin-start: auto;\n --wj-dialog-margin-end: auto;\n --wj-dialog-margin-bottom: auto;\n}\n:host .close {\n margin-left: auto;\n}\n:host .modal-content {\n border-radius: 3px;\n box-shadow: none;\n}\n:host .dialog-header {\n position: relative;\n border-bottom: 0;\n padding-inline: var(--wj-dialog-padding, 1rem);\n padding-top: var(--wj-dialog-padding, 1rem);\n padding-bottom: var(--wj-dialog-padding, 0);\n display: flex;\n align-items: center;\n}\n:host .dialog-header span {\n font-family: var(--wj-font-family-secondary);\n font-size: 10.5px;\n text-transform: uppercase;\n display: inline-block;\n letter-spacing: 0.06em;\n font-weight: 500;\n margin: 0;\n padding: 0;\n line-height: normal;\n overflow: hidden;\n text-overflow: ellipsis;\n filter: alpha(opacity=40);\n}\n:host .dialog-content {\n box-shadow: none;\n padding-inline: var(--wj-dialog-padding, 1rem);\n white-space: normal;\n z-index: 1;\n}\n:host .dialog-footer {\n display: flex;\n justify-content: end;\n border-top: none;\n box-shadow: none;\n margin-top: 0;\n padding-inline: var(--wj-dialog-padding-inline, 1rem);\n padding-top: var(--wj-dialog-padding-top, 1rem);\n padding-bottom: var(--wj-dialog-padding-bottom, 1rem);\n}\n\ndialog::backdrop {\n opacity: var(--wj-backdrop-opacity);\n background-color: var(--wj-backdrop);\n}\n\n:host(.separator) .dialog-header:after {\n content: "";\n height: 1px;\n background: rgba(0, 0, 0, 0.08);\n left: var(--wj-dialog-padding, 1rem);\n right: var(--wj-dialog-padding, 1rem);\n position: absolute;\n bottom: 0;\n}\n\n:host dialog {\n box-sizing: border-box;\n transition: all 0.2s !important;\n width: var(--wj-dialog-width);\n height: var(--wj-dialog-height);\n box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);\n border-radius: var(--wj-dialog-border-radius);\n border-width: var(--wj-dialog-border-width);\n border-style: var(--wj-dialog-border-style);\n border-color: var(--wj-dialog-border-color);\n margin-top: var(--wj-dialog-margin-top);\n margin-bottom: var(--wj-dialog-margin-bottom);\n margin-inline: var(--wj-dialog-margin-start) var(--wj-dialog-margin-end);\n padding: 0;\n}\n\n:host(.stick-up) {\n --wj-dialog-width: 300px !important;\n --wj-dialog-height: fit-content;\n --wj-dialog-border-radius: 0 0 8px 8px;\n --wj-dialog-border-width: 0 1px 1px 1px;\n --wj-dialog-margin-top: 0;\n --wj-dialog-translate-from: translateY(-110%);\n --wj-dialog-template-to: translateX(0);\n}\n\n:host(.slide-up) {\n --wj-dialog-width: 300px !important;\n --wj-dialog-height: fit-content;\n --wj-dialog-border-radius: 8px;\n --wj-dialog-border-width: 1px;\n --wj-dialog-opacity-from: 0;\n --wj-dialog-translate-from: scale(.9);\n --wj-dialog-translate-to: scale(1);\n}\n\n:host(.fill-in) {\n --wj-dialog-width: 100%;\n --wj-dialog-height: 100%;\n --wj-dialog-border-radius: 0 0 0 0 !important;\n --wj-dialog-border-width: 0;\n --wj-dialog-margin-top: 0;\n --wj-dialog-margin-start: 0;\n --wj-dialog-margin-end: 0;\n --wj-dialog-margin-bottom: 0;\n --wj-dialog-translate-from: scale(.95);\n --wj-dialog-translate-to: scale(1);\n}\n:host(.fill-in) dialog {\n min-width: var(--wj-dialog-width);\n min-height: var(--wj-dialog-height);\n}\n\n:host(.slide-left) {\n --wj-dialog-width: 300px !important;\n --wj-dialog-height: 100% !important;\n --wj-dialog-border-radius: 0;\n --wj-dialog-border-width: 0 1px 0 0;\n --wj-dialog-margin-top: 0;\n --wj-dialog-margin-start: 0;\n --wj-dialog-margin-end: auto;\n --wj-dialog-margin-bottom: 0;\n}\n:host(.slide-left) dialog {\n min-height: var(--wj-dialog-height);\n --wj-dialog-translate-from: translateX(-110%);\n --wj-dialog-template-to: translateX(0);\n}\n\n:host(.slide-right) {\n --wj-dialog-width: 300px !important;\n --wj-dialog-height: 100% !important;\n --wj-dialog-border-radius: 0;\n --wj-dialog-border-width: 0 0 0 1px;\n --wj-dialog-margin-top: 0;\n --wj-dialog-margin-start: auto;\n --wj-dialog-margin-end: 0;\n --wj-dialog-margin-bottom: 0;\n}\n:host(.slide-right) dialog {\n min-height: var(--wj-dialog-height);\n --wj-dialog-translate-from: translateX(110%);\n --wj-dialog-template-to: translateX(0);\n}\n\n:host(.small) {\n --wj-dialog-width: 300px !important;\n}\n\n:host(.medium) {\n --wj-dialog-width: 500px !important;\n}\n\n:host(.large) {\n --wj-dialog-width: 600px !important;\n}\n\n:host(.ex-large) {\n --wj-dialog-width: 900px !important;\n}\n\ndialog[open] {\n animation: show 0.5s ease normal;\n}\n\n@keyframes show {\n from {\n opacity: var(--wj-dialog-opacity-from, 1);\n transform: var(--wj-dialog-translate-from);\n }\n to {\n opacity: 1;\n transform: var(--wj-dialog-translate-to);\n }\n}';
10
+ class Dialog extends WJElement {
9
11
  constructor() {
10
12
  super();
11
- h(this, "className", "Dialog");
13
+ __publicField(this, "className", "Dialog");
12
14
  }
13
- set placement(t) {
14
- this.setAttribute("placement", t);
15
+ set placement(value) {
16
+ this.setAttribute("placement", value);
15
17
  }
16
18
  get placement() {
17
19
  return this.getAttribute("placement") || "slide-up";
18
20
  }
19
21
  static get cssStyleSheet() {
20
- return v;
22
+ return styles;
21
23
  }
22
24
  static get observedAttributes() {
23
25
  return [];
24
26
  }
25
27
  setupAttributes() {
26
- this.isShadowRoot = "open", f.setAttributesToElement(this, {
27
- test: "test"
28
+ this.isShadowRoot = "open";
29
+ WjElementUtils.setAttributesToElement(this, {
30
+ "test": "test"
28
31
  });
29
32
  }
30
- beforeDraw(t, s, r) {
31
- }
32
- draw(t, s, r) {
33
- let m = document.createDocumentFragment();
34
- this.classList.add("modal", "fade", this.placement, r.size);
35
- let j = document.createElement("slot"), o = document.createElement("dialog");
36
- o.classList.add("modal-dialog");
37
- let g = document.createElement("wj-icon");
38
- g.setAttribute("name", "x"), g.setAttribute("slot", "icon-only");
39
- let i = document.createElement("wj-button");
40
- i.setAttribute("fill", "link"), i.setAttribute("size", "small"), i.classList.add("close"), i.addEventListener("click", () => {
41
- o.close();
42
- }), i.appendChild(g);
43
- let d = document.createElement("div");
44
- d.setAttribute("part", "header"), d.classList.add("dialog-header"), d.innerHTML = `<span>${this.title}</span>`, d.appendChild(i);
45
- let w = document.createElement("slot");
46
- w.setAttribute("name", "header"), d.appendChild(w);
47
- let n = document.createElement("div");
48
- n.setAttribute("part", "body"), n.classList.add("dialog-content"), n.appendChild(j);
49
- let l = document.createElement("div");
50
- l.setAttribute("part", "footer"), l.classList.add("dialog-footer"), l.innerHTML = "";
51
- let p = document.createElement("slot");
52
- return p.setAttribute("name", "footer"), l.appendChild(p), o.appendChild(d), o.appendChild(n), o.appendChild(l), m.appendChild(o), this.dialog = o, m;
53
- }
54
- afterDraw(t, s, r) {
55
- r.trigger && document.addEventListener(r.trigger, () => {
56
- this.dialog.showModal();
33
+ beforeDraw(context, store, params) {
34
+ }
35
+ draw(context, store, params) {
36
+ let fragment = document.createDocumentFragment();
37
+ this.classList.add("modal", "fade", this.placement, params.size);
38
+ let slot = document.createElement("slot");
39
+ let dialog = document.createElement("dialog");
40
+ dialog.classList.add("modal-dialog");
41
+ let icon = document.createElement("wj-icon");
42
+ icon.setAttribute("name", "x");
43
+ icon.setAttribute("slot", "icon-only");
44
+ let close = document.createElement("wj-button");
45
+ close.setAttribute("fill", "link");
46
+ close.setAttribute("size", "small");
47
+ close.classList.add("close");
48
+ close.addEventListener("click", () => {
49
+ dialog.close();
57
50
  });
51
+ close.appendChild(icon);
52
+ let header = document.createElement("div");
53
+ header.setAttribute("part", "header");
54
+ header.classList.add("dialog-header");
55
+ header.innerHTML = `<span>${this.title}</span>`;
56
+ header.appendChild(close);
57
+ let slotHeader = document.createElement("slot");
58
+ slotHeader.setAttribute("name", "header");
59
+ header.appendChild(slotHeader);
60
+ let body = document.createElement("div");
61
+ body.setAttribute("part", "body");
62
+ body.classList.add("dialog-content");
63
+ body.appendChild(slot);
64
+ let footer = document.createElement("div");
65
+ footer.setAttribute("part", "footer");
66
+ footer.classList.add("dialog-footer");
67
+ footer.innerHTML = "";
68
+ let slotFooter = document.createElement("slot");
69
+ slotFooter.setAttribute("name", "footer");
70
+ footer.appendChild(slotFooter);
71
+ dialog.appendChild(header);
72
+ dialog.appendChild(body);
73
+ dialog.appendChild(footer);
74
+ fragment.appendChild(dialog);
75
+ this.dialog = dialog;
76
+ return fragment;
77
+ }
78
+ afterDraw(context, store, params) {
79
+ if (params.trigger) {
80
+ document.addEventListener(params.trigger, () => {
81
+ this.dialog.showModal();
82
+ });
83
+ }
58
84
  }
59
85
  }
60
- customElements.get("wj-dialog") || window.customElements.define("wj-dialog", x);
86
+ customElements.get("wj-dialog") || window.customElements.define("wj-dialog", Dialog);
61
87
  export {
62
- x as Dialog
88
+ Dialog
63
89
  };
@@ -1,17 +1,19 @@
1
- var a = Object.defineProperty;
2
- var n = (r, e, t) => e in r ? a(r, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : r[e] = t;
3
- var o = (r, e, t) => (n(r, typeof e != "symbol" ? e + "" : e, t), t);
4
- import l from "./wj-element.js";
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 c = `:host{--wj-border-size: 1px;--wj-divider-border-color: var(--wj-border-color);--wj-divider-border-width: var(--wj-border-size, 1px);--wj-divider-spacing: 0}:host(:not([vertical])){display:block;border-top:solid var(--wj-divider-border-width) var(--wj-divider-border-color);margin:var(--wj-divider-spacing) 0}:host([vertical]){display:inline-block;height:100%;border-left:solid var(--wj-divider-border-width) var(--wj-divider-border-color);margin:0 var(--wj-divider-spacing)}
7
- `;
8
- class v extends l {
9
+ const styles = "/*\n[ WJ Divider ]\n*/\n:host {\n --wj-border-size: 1px;\n --wj-divider-border-color: var(--wj-border-color);\n --wj-divider-border-width: var(--wj-border-size, 1px);\n --wj-divider-spacing: 0;\n}\n\n:host(:not([vertical])) {\n display: block;\n border-top: solid var(--wj-divider-border-width) var(--wj-divider-border-color);\n margin: var(--wj-divider-spacing) 0;\n}\n\n:host([vertical]) {\n display: inline-block;\n height: 100%;\n border-left: solid var(--wj-divider-border-width) var(--wj-divider-border-color);\n margin: 0 var(--wj-divider-spacing);\n}";
10
+ class Divider extends WJElement {
9
11
  constructor() {
10
12
  super();
11
- o(this, "className", "Divider");
13
+ __publicField(this, "className", "Divider");
12
14
  }
13
15
  static get cssStyleSheet() {
14
- return c;
16
+ return styles;
15
17
  }
16
18
  static get observedAttributes() {
17
19
  return [];
@@ -19,12 +21,16 @@ class v extends l {
19
21
  setupAttributes() {
20
22
  this.isShadowRoot = "open";
21
23
  }
22
- draw(t, w, m) {
23
- let i = document.createDocumentFragment(), d = document.createElement("div"), s = document.createElement("slot");
24
- return d.appendChild(s), i.appendChild(d), i;
24
+ draw(context, store, params) {
25
+ let fragment = document.createDocumentFragment();
26
+ let native = document.createElement("div");
27
+ let slot = document.createElement("slot");
28
+ native.appendChild(slot);
29
+ fragment.appendChild(native);
30
+ return fragment;
25
31
  }
26
32
  }
27
- customElements.get("wj-divider") || window.customElements.define("wj-divider", v);
33
+ customElements.get("wj-divider") || window.customElements.define("wj-divider", Divider);
28
34
  export {
29
- v as Divider
35
+ Divider
30
36
  };
@@ -1,15 +1,18 @@
1
- var a = Object.defineProperty;
2
- var c = (r, t, e) => t in r ? a(r, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : r[t] = e;
3
- var o = (r, t, e) => (c(r, typeof t != "symbol" ? t + "" : t, e), e);
4
- import l from "./wj-element.js";
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
- class p extends l {
9
+ class Dropdown extends WJElement {
7
10
  constructor() {
8
11
  super();
9
- o(this, "className", "Dropdown");
12
+ __publicField(this, "className", "Dropdown");
10
13
  }
11
- set trigger(e) {
12
- this.setAttribute("trigger", e);
14
+ set trigger(value) {
15
+ this.setAttribute("trigger", value);
13
16
  }
14
17
  get trigger() {
15
18
  return this.getAttribute("trigger") || "click";
@@ -23,17 +26,26 @@ class p extends l {
23
26
  setupAttributes() {
24
27
  this.isShadowRoot = "open";
25
28
  }
26
- draw(e, d, u) {
27
- let n = document.createDocumentFragment();
29
+ draw(context, store, params) {
30
+ let fragment = document.createDocumentFragment();
28
31
  this.classList.add("wj-placement", "wj-" + this.placement || "wj-start");
29
- let i = document.createElement("div");
30
- i.setAttribute("part", "native"), i.classList.add("native-dropdown");
31
- let s = document.createElement("wj-popup");
32
- return s.setAttribute("placement", this.placement), s.setAttribute("offset", this.offset), s.setAttribute("manual", ""), s.innerHTML = `<slot name="trigger" slot="anchor"></slot>
33
- <slot></slot>`, this.trigger === "click" && s.setAttribute("manual", ""), i.appendChild(s), n.appendChild(i), n;
32
+ let native = document.createElement("div");
33
+ native.setAttribute("part", "native");
34
+ native.classList.add("native-dropdown");
35
+ let popup = document.createElement("wj-popup");
36
+ popup.setAttribute("placement", this.placement);
37
+ popup.setAttribute("offset", this.offset);
38
+ popup.setAttribute("manual", "");
39
+ popup.innerHTML = `<slot name="trigger" slot="anchor"></slot>
40
+ <slot></slot>`;
41
+ if (this.trigger === "click")
42
+ popup.setAttribute("manual", "");
43
+ native.appendChild(popup);
44
+ fragment.appendChild(native);
45
+ return fragment;
34
46
  }
35
47
  }
36
- customElements.get("wj-dropdown") || window.customElements.define("wj-dropdown", p);
48
+ customElements.get("wj-dropdown") || window.customElements.define("wj-dropdown", Dropdown);
37
49
  export {
38
- p as Dropdown
50
+ Dropdown
39
51
  };