smoothly 0.1.102 → 0.1.105

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 (58) hide show
  1. package/dist/cjs/{App-ffc56e72.js → App-08e717a8.js} +2 -2
  2. package/dist/cjs/{Notice-9120d311.js → Notice-2496bc28.js} +2 -2
  3. package/dist/cjs/index.cjs.js +1 -1
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/smoothly-accordion_48.cjs.entry.js +34 -22
  6. package/dist/cjs/smoothly-app-demo.cjs.entry.js +3 -3
  7. package/dist/cjs/smoothly-app.cjs.entry.js +1 -1
  8. package/dist/cjs/smoothly-display-demo.cjs.entry.js +1 -1
  9. package/dist/cjs/smoothly-menu-options.cjs.entry.js +2 -2
  10. package/dist/cjs/smoothly-option.cjs.entry.js +3 -2
  11. package/dist/cjs/smoothly-picker.cjs.entry.js +17 -11
  12. package/dist/cjs/smoothly-spinner.cjs.entry.js +7 -2
  13. package/dist/cjs/smoothly.cjs.js +1 -1
  14. package/dist/collection/components/App.js +2 -2
  15. package/dist/collection/components/app/style.css +111 -41
  16. package/dist/collection/components/app-demo/index.js +17 -17
  17. package/dist/collection/components/display-demo/index.js +10 -1
  18. package/dist/collection/components/menu-options/index.js +1 -1
  19. package/dist/collection/components/menu-options/style.css +10 -2
  20. package/dist/collection/components/option/index.js +23 -2
  21. package/dist/collection/components/option/style.css +33 -10
  22. package/dist/collection/components/picker/index.js +40 -12
  23. package/dist/collection/components/picker/style.css +46 -15
  24. package/dist/collection/components/spinner/index.js +30 -3
  25. package/dist/collection/components/spinner/style.css +48 -60
  26. package/dist/custom-elements/index.js +38 -26
  27. package/dist/{smoothly/App-c5f6000f.js → esm/App-33847333.js} +2 -2
  28. package/dist/esm/{Notice-d87d90f7.js → Notice-819c6f49.js} +2 -2
  29. package/dist/esm/index.js +1 -1
  30. package/dist/esm/loader.js +1 -1
  31. package/dist/esm/smoothly-accordion_48.entry.js +34 -22
  32. package/dist/esm/smoothly-app-demo.entry.js +3 -3
  33. package/dist/esm/smoothly-app.entry.js +1 -1
  34. package/dist/esm/smoothly-display-demo.entry.js +1 -1
  35. package/dist/esm/smoothly-menu-options.entry.js +2 -2
  36. package/dist/esm/smoothly-option.entry.js +3 -2
  37. package/dist/esm/smoothly-picker.entry.js +17 -11
  38. package/dist/esm/smoothly-spinner.entry.js +8 -3
  39. package/dist/esm/smoothly.js +1 -1
  40. package/dist/{esm/App-c5f6000f.js → smoothly/App-33847333.js} +2 -2
  41. package/dist/smoothly/index.esm.js +1 -1
  42. package/dist/smoothly/{p-1e768876.js → p-14c6de14.js} +1 -1
  43. package/dist/smoothly/p-e14898a9.entry.js +1 -0
  44. package/dist/smoothly/smoothly-app-demo.entry.js +3 -3
  45. package/dist/smoothly/smoothly-app.entry.js +1 -1
  46. package/dist/smoothly/smoothly-display-demo.entry.js +1 -1
  47. package/dist/smoothly/smoothly-menu-options.entry.js +2 -2
  48. package/dist/smoothly/smoothly-option.entry.js +3 -2
  49. package/dist/smoothly/smoothly-picker.entry.js +17 -11
  50. package/dist/smoothly/smoothly-spinner.entry.js +8 -3
  51. package/dist/smoothly/smoothly.esm.js +1 -1
  52. package/dist/types/components/option/index.d.ts +1 -0
  53. package/dist/types/components/picker/index.d.ts +3 -2
  54. package/dist/types/components/spinner/index.d.ts +1 -0
  55. package/dist/types/components.d.ts +6 -0
  56. package/dist/types/model/OptionType.d.ts +1 -0
  57. package/package.json +1 -1
  58. package/dist/smoothly/p-d4139486.entry.js +0 -1
@@ -1,7 +1,7 @@
1
1
  :host {
2
- --background-color: var(--smoothly-secondary-tint), 1;
2
+ --background-color: var(--smoothly-default-color), 1;
3
3
  --color: var(--smoothly-secondary-contrast);
4
- --border-color: var(--smoothly-secondary-contrast), 1;
4
+ --border-color: var(--smoothly-default-shade), 1;
5
5
  --border-highlight-color: var(--smoothly-secondary-contrast), 1;
6
6
  --label-color: var(--smoothly-secondary-contrast), 0.8;
7
7
  --selected-item-border-radius: 0.25rem;
@@ -12,17 +12,29 @@
12
12
  :host {
13
13
  display: block;
14
14
  position: relative;
15
+ background-color: rgba(var(--background-color));
15
16
  width: 100%;
16
17
  cursor: pointer;
17
- --intergiro-transition: all 200ms cubic-bezier(0.645, 0.045, 0.355, 1);
18
+ --intergiro-transition: border-color 200ms cubic-bezier(0.645, 0.045, 0.355, 1);
18
19
  transition: var(--intergiro-transition);
20
+ border: 1px solid rgb(var(--border-color));
21
+ margin: 1px;
22
+ height: 40px;
23
+ border-radius: 0.25rem;
24
+ }
25
+
26
+ :host(:focus-within) {
27
+ border-color: rgb(var(--smoothly-primary-shade));
28
+ border-width: 2px;
29
+ margin: 0px;
19
30
  }
20
31
 
21
32
  :host > div {
22
33
  display: flex;
23
- min-height: 3em;
24
- background-color: rgba(var(--background-color));
34
+ background-color: transparent;
35
+ min-height: 40px;
25
36
  align-items: center;
37
+ align-self: center;
26
38
  border: none;
27
39
  max-height: var(--max-height);
28
40
  }
@@ -46,7 +58,7 @@
46
58
  border: none;
47
59
  cursor: pointer;
48
60
  color: rgb(var(--color));
49
- padding: 0 1em;
61
+ padding: 0 0.6em;
50
62
  font-family: var(--smoothly-font-family);
51
63
  font-size: 1.05em;
52
64
  }
@@ -55,6 +67,10 @@
55
67
  text-overflow: ellipsis;
56
68
  }
57
69
 
70
+ :host([is-open]) > div input {
71
+ color: rgb(var(--smoothly-medium-color));
72
+ }
73
+
58
74
  :host(:not(:focus-within)[multiple]) ul > li:last-child {
59
75
  /* Remove Input out of the CSS flow Layout. This way input takes up no extra space */
60
76
  position: absolute;
@@ -70,9 +86,8 @@
70
86
  }
71
87
 
72
88
  label {
73
- position: absolute;
74
- top: 1em;
75
- left: 1em;
89
+ padding-left: 0.6em;
90
+ white-space: nowrap;
76
91
  color: rgba(var(--label-color));
77
92
  transition: var(--intergiro-transition);
78
93
  font-family: var(--smoothly-font-family);
@@ -86,7 +101,7 @@ label {
86
101
 
87
102
  :host([has-selection]) label,
88
103
  :host(:focus-within) label {
89
- transform: translateY(-1.2em) scale(0.7);
104
+ display: none;
90
105
  }
91
106
 
92
107
  :host(:hover) smoothly-icon[data-arrow],
@@ -98,19 +113,35 @@ label {
98
113
  pointer-events: none;
99
114
  }
100
115
 
101
- :host(:not([is-open])) smoothly-icon[data-arrow=up] {
102
- display: none;
116
+ :host smoothly-icon {
117
+ flex-shrink: 0;
118
+ width: 1em;
119
+ height: 1em;
103
120
  }
104
121
 
105
- :host([is-open]) smoothly-icon[data-arrow=down] {
122
+ :host(:not([is-open])) smoothly-icon.up,
123
+ :host([is-open]) smoothly-icon.down {
106
124
  display: none;
107
125
  }
108
126
 
109
- :host(:not([has-selection])) smoothly-icon:not([data-arrow]) {
110
- display: none;
127
+ smoothly-icon.search {
128
+ display: flex;
129
+ align-self: center;
130
+ padding-left: 0.8em;
131
+ }
132
+
133
+ smoothly-icon.up,
134
+ smoothly-icon.down {
135
+ display: flex;
136
+ align-self: center;
137
+ padding-right: 0.8em;
138
+ stroke: rgb(var(--smoothly-primary-shade));
111
139
  }
112
140
 
113
141
  :host smoothly-menu-options {
142
+ margin-top: 0.5em;
143
+ padding-top: 0.5em;
144
+ padding-bottom: 0.5em;
114
145
  position: absolute;
115
146
  z-index: 1;
116
147
  }
@@ -1,12 +1,21 @@
1
- import { Component, h, Prop } from "@stencil/core";
1
+ import { Component, h, Host, Prop } from "@stencil/core";
2
2
  export class SmoothlySpinner {
3
+ constructor() {
4
+ this.size = "large";
5
+ }
3
6
  render() {
4
- return h("div", null, "Loading...");
7
+ const strokeWidth = this.size == "large" ? 6 : this.size == "medium" ? 8 : 12;
8
+ return (h(Host, { style: {
9
+ "--color": `var(--spinner-color)`,
10
+ "--size": this.size == "large" ? "5em" : this.size == "medium" ? "3em" : "1.2em",
11
+ } },
12
+ h("svg", { class: "spinner", viewBox: `0 0 ${60 + strokeWidth} ${60 + strokeWidth}`, xmlns: "http://www.w3.org/2000/svg" },
13
+ h("circle", { class: "path", fill: "none", "stroke-width": strokeWidth, "stroke-linecap": "round", cx: `${30 + strokeWidth / 2}`, cy: `${30 + strokeWidth / 2}`, r: "30" }))));
5
14
  }
6
15
  static get is() { return "smoothly-spinner"; }
7
16
  static get encapsulation() { return "scoped"; }
8
17
  static get originalStyleUrls() { return {
9
- "$": ["style.css"]
18
+ "$": ["style.scss"]
10
19
  }; }
11
20
  static get styleUrls() { return {
12
21
  "$": ["style.css"]
@@ -28,6 +37,24 @@ export class SmoothlySpinner {
28
37
  },
29
38
  "attribute": "active",
30
39
  "reflect": true
40
+ },
41
+ "size": {
42
+ "type": "string",
43
+ "mutable": false,
44
+ "complexType": {
45
+ "original": "\"small\" | \"medium\" | \"large\"",
46
+ "resolved": "\"large\" | \"medium\" | \"small\"",
47
+ "references": {}
48
+ },
49
+ "required": false,
50
+ "optional": false,
51
+ "docs": {
52
+ "tags": [],
53
+ "text": ""
54
+ },
55
+ "attribute": "size",
56
+ "reflect": true,
57
+ "defaultValue": "\"large\""
31
58
  }
32
59
  }; }
33
60
  }
@@ -1,64 +1,52 @@
1
- :host {
2
- display: block;
3
- position: relative;
1
+ :host:not([active]) {
2
+ display: none;
4
3
  }
4
+
5
5
  :host[hidden] {
6
- display: none;
7
- }
8
- :host:not([active]) {
9
- display: none;
6
+ display: none;
10
7
  }
8
+
11
9
  :host {
12
- position: absolute;
13
- left: 0;
14
- top: 0;
15
- width: 100%;
16
- height: 100%;
17
- background: rgba(var(--smoothly-default-color), var(--smoothly-semitransparent));
18
- }
19
- :host > div {
20
- opacity: 1;
21
- position: absolute;
22
- left: calc(50% - 5em + 1.1em);
23
- top: calc(50% - 5em + 1.1em);
24
- }
25
- :host > div,
26
- :host > div::after {
27
- border-radius: 50%;
28
- width: 5em;
29
- height: 5em;
30
- }
31
- :host > div {
32
- content: "";
33
- color: transparent;
34
- position: relative;
35
- border-top: 1.1em solid rgb(var(--smoothly-primary-tint));
36
- border-right: 1.1em solid rgb(var(--smoothly-primary-tint));
37
- border-bottom: 1.1em solid rgb(var(--smoothly-primary-tint));
38
- border-left: 1.1em solid rgb(var(--smoothly-primary-color));
39
- -webkit-transform: translateZ(0);
40
- -ms-transform: translateZ(0);
41
- transform: translateZ(0);
42
- -webkit-animation: load8 1.1s infinite linear;
43
- animation: load8 1.1s infinite linear;
44
- }
45
- @-webkit-keyframes load8 {
46
- 0% {
47
- -webkit-transform: rotate(0deg);
48
- transform: rotate(0deg);
49
- }
50
- 100% {
51
- -webkit-transform: rotate(360deg);
52
- transform: rotate(360deg);
53
- }
54
- }
55
- @keyframes load8 {
56
- 0% {
57
- -webkit-transform: rotate(0deg);
58
- transform: rotate(0deg);
59
- }
60
- 100% {
61
- -webkit-transform: rotate(360deg);
62
- transform: rotate(360deg);
63
- }
64
- }
10
+ display: block;
11
+ stroke: rgb(var(--spinner-color, var(--smoothly-primary-tint)));
12
+ position: absolute;
13
+ inset: 0;
14
+ width: 100%;
15
+ height: 100%;
16
+ background-color: rgba(var(--background-color, var(--smoothly-default-color)), var(--background-opacity, var(--smoothly-semitransparent, 0.8)));
17
+ }
18
+ :host svg {
19
+ position: absolute;
20
+ left: calc(50% - var(--size) / 2);
21
+ top: calc(50% - var(--size) / 2);
22
+ width: var(--size);
23
+ animation: SPIN-SVG 1.4s linear infinite;
24
+ }
25
+ :host svg circle {
26
+ transform-origin: center;
27
+ animation: SPIN-CIRCLE 1.4s ease-in-out infinite;
28
+ stroke-dasharray: 187;
29
+ stroke-dashoffset: 0;
30
+ }
31
+
32
+ @keyframes SPIN-SVG {
33
+ 0% {
34
+ transform: rotate(0deg);
35
+ }
36
+ 100% {
37
+ transform: rotate(270deg);
38
+ }
39
+ }
40
+ @keyframes SPIN-CIRCLE {
41
+ 0% {
42
+ stroke-dashoffset: 187;
43
+ }
44
+ 50% {
45
+ stroke-dashoffset: 46.75;
46
+ transform: rotate(135deg);
47
+ }
48
+ 100% {
49
+ stroke-dashoffset: 187;
50
+ transform: rotate(450deg);
51
+ }
52
+ }
@@ -592,7 +592,6 @@ const App = (attributes, nodes, utils) => {
592
592
  h("header", null,
593
593
  h("h1", null,
594
594
  h("a", Object.assign({}, href((_a = resolve("")) !== null && _a !== void 0 ? _a : "/")), attributes.label)),
595
- children.filter(child => { var _a; return ((_a = child.vattrs) === null || _a === void 0 ? void 0 : _a.slot) == "header"; }).map(child => child.node),
596
595
  h("nav", null,
597
596
  h("ul", null, utils
598
597
  .map([
@@ -625,7 +624,8 @@ const App = (attributes, nodes, utils) => {
625
624
  const child = nodeToChild(node);
626
625
  return child.vtag == "a" && !((_a = child.vattrs) === null || _a === void 0 ? void 0 : _a.target) ? (h("a", Object.assign({}, child.vattrs, href((_b = child.vattrs) === null || _b === void 0 ? void 0 : _b.href)), child.vchildren)) : (node);
627
626
  })
628
- .map(child => (h("li", null, child)))))),
627
+ .map(child => (h("li", null, child))))),
628
+ children.filter(child => { var _a; return ((_a = child.vattrs) === null || _a === void 0 ? void 0 : _a.slot) == "header"; }).map(child => child.node)),
629
629
  h("content", null,
630
630
  h(Router.Switch, null, children
631
631
  .filter(child => { var _a; return ((_a = child.vattrs) === null || _a === void 0 ? void 0 : _a.path) != undefined; })
@@ -2478,7 +2478,7 @@ let SmoothlyAccordionItem$1 = class extends HTMLElement {
2478
2478
  static get style() { return styleCss$H; }
2479
2479
  };
2480
2480
 
2481
- const styleCss$G = "smoothly-app{display:block;scrollbar-width:none}smoothly-app[hidden]{display:none}smoothly-app[color=default],smoothly-app:not([color]){--smoothly-app-background:var(--smoothly-default-shade);--smoothly-app-color:var(--smoothly-default-contrast);--smoothly-app-hover-background:var(--smoothly-primary-color);--smoothly-app-hover-color:var(--smoothly-primary-contrast);--smoothly-app-shadow:var(--smoothly-default-shadow)}smoothly-app[color=primary]{--smoothly-app-background:var(--smoothly-primary-shade);--smoothly-app-color:var(--smoothly-primary-contrast);--smoothly-app-hover-background:var(--smoothly-secondary-color);--smoothly-app-hover-color:var(--smoothly-secondary-contrast);--smoothly-app-shadow:var(--smoothly-primary-shadow)}smoothly-app[color=secondary]{--smoothly-app-background:var(--smoothly-secondary-shade);--smoothly-app-color:var(--smoothly-secondary-contrast);--smoothly-app-hover-background:var(--smoothly-primary-color);--smoothly-app-hover-color:var(--smoothly-primary-contrast);--smoothly-app-shadow:var(--smoothly-secondary-shadow)}smoothly-app[color=tertiary],smoothly-app[color=success],smoothly-app[color=warning],smoothly-app[color=danger]{--smoothly-app-background:var(--smoothly-color-shade);--smoothly-app-color:var(--smoothly-color-contrast);--smoothly-app-hover-background:var(--smoothly-default-shade);--smoothly-app-hover-color:var(--smoothly-default-contrast);--smoothly-app-shadow:var(--smoothly-color-shadow)}smoothly-app>smoothly-notifier>header{position:fixed;top:0;left:0;width:100%;z-index:5;height:1.6cm;background-color:rgb(var(--smoothly-app-background));color:rgb(var(--smoothly-app-color));fill:rgb(var(--smoothly-app-color));stroke:rgb(var(--smoothly-app-color));display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 5px 0 rgba(var(--smoothly-app-shadow))}smoothly-app>smoothly-notifier>header a{color:inherit;text-decoration:inherit}smoothly-app>smoothly-notifier>header>nav{flex-shrink:0}smoothly-app>smoothly-notifier>header>h1,smoothly-app>smoothly-notifier>header>nav,smoothly-app>smoothly-notifier>header>nav>ul,smoothly-app>smoothly-notifier>header>nav>ul>li,smoothly-app>smoothly-notifier>header>nav>ul>li>*:not(a){display:inline-block;height:100%;margin:0}smoothly-app>smoothly-notifier>header>h1 a{overflow:hidden;user-select:none}smoothly-app>smoothly-notifier>header>nav>ul>li a{line-height:1.6cm}smoothly-app>smoothly-notifier>header>h1 a,smoothly-app>smoothly-notifier>header>nav>ul>li a{display:inline-block;height:100%;padding:0 0.4cm;text-decoration:none;font-weight:bold}smoothly-app>smoothly-notifier>header>nav>ul>li smoothly-trigger.sc-smoothly-trigger-h{border:0}smoothly-app>smoothly-notifier>header>nav>ul>li a>smoothly-icon{position:relative;top:0.2cm}smoothly-app>smoothly-notifier>header>nav>ul>li>a:hover>smoothly-icon,smoothly-app>smoothly-notifier>header>nav>ul>li>a.active>smoothly-icon,smoothly-app>smoothly-notifier>header>nav>ul>li>smoothly-trigger.active a>smoothly-icon,smoothly-app>smoothly-notifier>header>nav>ul>li>smoothly-trigger:hover a>smoothly-icon,smoothly-app>smoothly-notifier>header>nav>ul>li a:hover,smoothly-app>smoothly-notifier>header>nav>ul>li a.active{background-color:rgb(var(--smoothly-app-hover-background));color:rgb(var(--smoothly-app-hover-color));stroke:rgb(var(--smoothly-app-hover-color));fill:rgb(var(--smoothly-app-hover-color))}smoothly-app>smoothly-notifier>content{position:relative;top:1.6cm}";
2481
+ const styleCss$G = "smoothly-app{display:block;scrollbar-width:none}smoothly-app[hidden]{display:none}smoothly-app[color=default],smoothly-app:not([color]){--smoothly-app-background:var(--smoothly-default-color);--smoothly-app-color:var(--smoothly-default-contrast);--smoothly-app-hover-background:var(--smoothly-primary-color);--smoothly-app-hover-color:var(--smoothly-primary-contrast);--smoothly-app-shadow:var(--smoothly-default-shadow)}smoothly-app[color=primary]{--smoothly-app-background:var(--smoothly-primary-shade);--smoothly-app-color:var(--smoothly-primary-contrast);--smoothly-app-hover-background:var(--smoothly-secondary-color);--smoothly-app-hover-color:var(--smoothly-secondary-contrast);--smoothly-app-shadow:var(--smoothly-primary-shadow)}smoothly-app[color=secondary]{--smoothly-app-background:var(--smoothly-secondary-shade);--smoothly-app-color:var(--smoothly-secondary-contrast);--smoothly-app-hover-background:var(--smoothly-primary-color);--smoothly-app-hover-color:var(--smoothly-primary-contrast);--smoothly-app-shadow:var(--smoothly-secondary-shadow)}smoothly-app[color=tertiary],smoothly-app[color=success],smoothly-app[color=warning],smoothly-app[color=danger]{--smoothly-app-background:var(--smoothly-color-shade);--smoothly-app-color:var(--smoothly-color-contrast);--smoothly-app-hover-background:var(--smoothly-default-shade);--smoothly-app-hover-color:var(--smoothly-default-contrast);--smoothly-app-shadow:var(--smoothly-color-shadow)}smoothly-app>smoothly-notifier>header{position:fixed;top:0;left:0;width:100%;z-index:5;height:90px;background-color:rgb(var(--smoothly-app-background));color:rgba(var(--smoothly-medium-color));fill:rgb(var(--smoothly-medium-color));stroke:rgb(var(--smoothly-medium-color));display:flex;font-size:18px;justify-content:space-between;align-items:center;box-shadow:0 2px 5px 0 rgba(var(--smoothly-app-shadow));border-bottom:1px solid rgba(var(--smoothly-dark-color))}smoothly-app>smoothly-notifier>header a{color:inherit;text-decoration:inherit}smoothly-app>smoothly-notifier>header>nav{flex-shrink:0;width:100%;flex-shrink:2}smoothly-app>smoothly-notifier>header>h1,smoothly-app>smoothly-notifier>header>nav,smoothly-app>smoothly-notifier>header>nav>ul,smoothly-app>smoothly-notifier>header>nav>ul>li,smoothly-app>smoothly-notifier>header>nav>ul>li>*:not(a){display:flex;height:100%;margin:0}smoothly-app>smoothly-notifier>header>h1{margin-left:60px}smoothly-app>smoothly-notifier>header>h1>a{overflow:hidden;user-select:none;height:200%;display:flex;align-self:center;size:100%;background-position-y:center}smoothly-app>smoothly-notifier>header>nav>ul>li a{line-height:1.6cm}smoothly-app>smoothly-notifier>header>nav>ul{width:100%}smoothly-app>smoothly-notifier>header>[slot=\"header\"]{display:flex;margin-right:34.25px;justify-content:flex-end;border:0}smoothly-app>smoothly-notifier>header>[slot=\"header\"]>a{display:flex;align-self:center;border-width:0;align-items:center;margin-right:62.25px}smoothly-app>smoothly-notifier>header>[slot=\"header\"]>a>smoothly-icon{fill:rgb(var(--smoothly-primary-shade));stroke:rgb(var(--smoothly-primary-shade));color:rgb(var(--smoothly-primary-shade))}smoothly-app>smoothly-notifier>header>nav>ul>li a{display:flex;height:36px;margin:0 0.4cm;text-decoration:none}smoothly-app>smoothly-notifier>header>nav>ul>li>a{display:flex;align-items:center;align-self:center;margin-bottom:2px}smoothly-app>smoothly-notifier>header>nav>ul>li smoothly-trigger.sc-smoothly-trigger-h{border:0}smoothly-app>smoothly-notifier>header>nav>ul>li>a>smoothly-icon>svg{fill:rgb(var(--smoothly-medium-color));stroke:rgb(var(--smoothly-medium-color));color:rgb(var(--smoothly-medium-color));align-items:center;display:flex}smoothly-app>smoothly-notifier>header>nav>ul>li>a:hover>smoothly-icon>svg,smoothly-app>smoothly-notifier>header>nav>ul>li>a.active>smoothly-icon>svg{color:rgb(var(--smoothly-app-color));stroke:rgb(var(--smoothly-app-color));fill:rgb(var(--smoothly-app-color))}smoothly-app>smoothly-notifier>header>nav>ul>li>smoothly-trigger.active a>smoothly-icon,smoothly-app>smoothly-notifier>header>nav>ul>li>smoothly-trigger:hover a>smoothly-icon,smoothly-app>smoothly-notifier>header>nav>ul>li a:hover,smoothly-app>smoothly-notifier>header>nav>ul>li a.active{border-bottom:2px solid rgb(var(--smoothly-app-color));margin-bottom:0px;border-bottom-width:2px;color:rgb(var(--smoothly-app-color));stroke:rgb(var(--smoothly-app-color));fill:rgb(var(--smoothly-app-color))}smoothly-app>smoothly-notifier>content{position:relative;top:90px}";
2482
2482
 
2483
2483
  let SmoothlyApp$1 = class extends HTMLElement {
2484
2484
  constructor() {
@@ -2497,7 +2497,7 @@ let SmoothlyAppDemo$1 = class extends HTMLElement {
2497
2497
  this.__registerHost();
2498
2498
  }
2499
2499
  render() {
2500
- return (h(App, { label: "Smoothly Demo" }, h("a", { slot: "nav-start", href: "display" }, "Display"), h("a", { slot: "nav-start", href: "https://google.com" }, "External"), h("span", { slot: "header", style: { width: "100%", maxWidth: "500px" } }, h("smoothly-picker", { label: "All Animals Selected", style: { minWidth: "100px" }, labelSetting: "hide", "empty-menu-label": "Sorry, we're out of options.", "max-height": "58px", multiple: true, "select-none-name": "Select All", options: [
2500
+ return (h(App, { label: "Smoothly Demo" }, h("a", { slot: "nav-start", href: "display" }, "Display"), h("a", { slot: "nav-start", href: "https://google.com" }, "External"), h("smoothly-room", { path: "" }, h("smoothly-input", { type: "text" }, "Default")), h("smoothly-room", { path: "input", label: "Input" }, h("smoothly-input-demo", null)), h("smoothly-room", { path: "dialog", label: "Dialog" }, h("smoothly-dialog-demo", null)), h("smoothly-room", { path: "display", label: "Display", icon: "eye-outline" }, h("smoothly-display-demo", null)), h("smoothly-room", { path: "table", label: "Table" }, h("smoothly-table-demo", null)), h("smoothly-room", { path: "select", label: "Select" }, h("smoothly-select-demo", null)), h("smoothly-room", { path: "icon", label: "Icon" }, h("smoothly-icon-demo", null)), h("smoothly-room", { path: "old", label: "Old", to: "select" }), h("span", { slot: "header", style: { width: "100%", maxWidth: "500px" } }, h("smoothly-picker", { label: "All Animals Selected", style: { minWidth: "100px" }, labelSetting: "hide", "empty-menu-label": "Sorry, we're out of options.", "max-height": "58px", multiple: true, "select-none-name": "Select All", options: [
2501
2501
  { name: "Big Dog", value: "dog", aliases: ["WOFF"] },
2502
2502
  { name: "Cat Stevens", value: "cat", aliases: ["moew"] },
2503
2503
  { name: "Noble Pig", value: "pig" },
@@ -2509,7 +2509,7 @@ let SmoothlyAppDemo$1 = class extends HTMLElement {
2509
2509
  { name: "Talking Parrot Parrot", value: "parrot" },
2510
2510
  { name: "Hidden Dragon", value: "dragon" },
2511
2511
  { name: "Scary Kraken", value: "kraken" },
2512
- ] })), h("smoothly-trigger", { slot: "nav-end", type: "link", name: "logout" }, h("smoothly-icon", { toolTip: "Log out", name: "log-out", size: "medium" })), h("smoothly-room", { path: "" }, h("smoothly-input", { type: "text" }, "Default")), h("smoothly-room", { path: "input", label: "Input" }, h("smoothly-input-demo", null)), h("smoothly-room", { path: "dialog", label: "Dialog" }, h("smoothly-dialog-demo", null)), h("smoothly-room", { path: "display", label: "Display", icon: "eye-outline" }, h("smoothly-display-demo", null)), h("smoothly-room", { path: "table", label: "Table" }, h("smoothly-table-demo", null)), h("smoothly-room", { path: "select", label: "Select" }, h("smoothly-select-demo", null)), h("smoothly-room", { path: "icon", label: "Icon" }, h("smoothly-icon-demo", null)), h("smoothly-room", { path: "old", label: "Old", to: "select" })));
2512
+ ] })), h("smoothly-trigger", { slot: "header", type: "link", name: "logout" }, h("smoothly-icon", { toolTip: "Log out", name: "log-out", size: "medium" }))));
2513
2513
  }
2514
2514
  };
2515
2515
 
@@ -42055,7 +42055,7 @@ let SmoothlyDisplayDemo$1 = class extends HTMLElement {
42055
42055
  }
42056
42056
  render() {
42057
42057
  return [
42058
- h("main", null, h("smoothly-popup", null, h("div", null, "Popup, click me"), h("div", { color: "dark", slot: "popup" }, "1 line popup")), h("smoothly-display-date-time", { datetime: "2019-08-15T08:08:17.65Z" }), h("dl", null, h("dt", null, "text"), h("dd", null, h("smoothly-display", { type: "text", value: "text" })), h("dt", null, "postal code"), h("dd", null, h("smoothly-display", { type: "postal-code", value: "752 31" })), h("dt", null, "password"), h("dd", null, h("smoothly-display", { type: "password", value: "password" })), h("dt", null, "email"), h("dd", null, h("smoothly-display", { type: "email", value: "test@example.com" })), h("dt", null, "price"), h("dd", null, h("smoothly-display", { type: "price", value: "13.37", currency: "SEK" })), h("dt", null, "percent"), h("dd", null, h("smoothly-display", { type: "percent", value: "42" })), h("dt", null, "phone"), h("dd", null, h("smoothly-display", { type: "phone", value: "0101881108" })), h("dt", null, "card number"), h("dd", null, h("smoothly-display", { type: "card-number", value: "4111111111111111" })), h("dt", null, "card expires"), h("dd", null, h("smoothly-display", { type: "card-expires", value: "7/22" })), h("dt", null, "card csc"), h("dd", null, h("smoothly-display", { type: "card-csc", value: "987" })), h("dt", null, "Quiet"), h("dd", null, h("smoothly-quiet", { color: "dark" }, "-"))), h("smoothly-urlencoded", { data: "hej=hopp&tjena=moss" }), h("div", { style: { display: "flex", justifyContent: "space-between" } }, h("smoothly-popup", { direction: "down" }, "Click for popup", h("span", { slot: "popup", color: "dark", style: { whiteSpace: "nowrap" } }, "Some popup stuff that has a lot of text")), h("smoothly-popup", { direction: "down" }, "Click for popup", h("span", { slot: "popup", color: "dark", style: { whiteSpace: "nowrap" } }, "Some popup with a bunch of text."))), h("p", null, "Test of diffrent kinds of notifier:"), h("button", { onClick: () => this.noticeWarning(Notice.warn("This is a test warning notice.")) }, "warning"), h("button", { onClick: () => this.noticeWarning(Notice.succeded("This is a test success notice.")) }, "success"), h("button", { onClick: () => this.noticeWarning(Notice.failed("This is a test danger notice.")) }, "danger"), h("button", { onClick: () => this.noticeWarning(Notice.execute("This is a test execute notice.", () => new Promise(resolve => window.setTimeout(() => resolve([true, "This went great"]), 3000)))) }, "execute"), h("button", { onClick: () => this.noticeWarning(Notice.delay("This is a test delay notice.", () => new Promise(resolve => window.setTimeout(() => resolve([true, "This went great"]), 3000)))) }, "delay")),
42058
+ h("main", null, h("smoothly-popup", null, h("div", null, "Popup, click me"), h("div", { color: "dark", slot: "popup" }, "1 line popup")), h("smoothly-display-date-time", { datetime: "2019-08-15T08:08:17.65Z" }), h("dl", null, h("dt", null, "text"), h("dd", null, h("smoothly-display", { type: "text", value: "text" })), h("dt", null, "postal code"), h("dd", null, h("smoothly-display", { type: "postal-code", value: "752 31" })), h("dt", null, "password"), h("dd", null, h("smoothly-display", { type: "password", value: "password" })), h("dt", null, "email"), h("dd", null, h("smoothly-display", { type: "email", value: "test@example.com" })), h("dt", null, "price"), h("dd", null, h("smoothly-display", { type: "price", value: "13.37", currency: "SEK" })), h("dt", null, "percent"), h("dd", null, h("smoothly-display", { type: "percent", value: "42" })), h("dt", null, "phone"), h("dd", null, h("smoothly-display", { type: "phone", value: "0101881108" })), h("dt", null, "card number"), h("dd", null, h("smoothly-display", { type: "card-number", value: "4111111111111111" })), h("dt", null, "card expires"), h("dd", null, h("smoothly-display", { type: "card-expires", value: "7/22" })), h("dt", null, "card csc"), h("dd", null, h("smoothly-display", { type: "card-csc", value: "987" })), h("dt", null, "Quiet"), h("dd", null, h("smoothly-quiet", { color: "dark" }, "-"))), h("smoothly-urlencoded", { data: "hej=hopp&tjena=moss" }), h("div", { style: { display: "flex", justifyContent: "space-between" } }, h("smoothly-popup", { direction: "down" }, "Click for popup", h("span", { slot: "popup", color: "dark", style: { whiteSpace: "nowrap" } }, "Some popup stuff that has a lot of text")), h("smoothly-popup", { direction: "down" }, "Click for popup", h("span", { slot: "popup", color: "dark", style: { whiteSpace: "nowrap" } }, "Some popup with a bunch of text."))), h("p", null, "Test of diffrent kinds of notifier:"), h("button", { onClick: () => this.noticeWarning(Notice.warn("This is a test warning notice.")) }, "warning"), h("button", { onClick: () => this.noticeWarning(Notice.succeded("This is a test success notice.")) }, "success"), h("button", { onClick: () => this.noticeWarning(Notice.failed("This is a test danger notice.")) }, "danger"), h("button", { onClick: () => this.noticeWarning(Notice.execute("This is a test execute notice.", () => new Promise(resolve => window.setTimeout(() => resolve([true, "This went great"]), 3000)))) }, "execute"), h("button", { onClick: () => this.noticeWarning(Notice.delay("This is a test delay notice.", () => new Promise(resolve => window.setTimeout(() => resolve([true, "This went great"]), 3000)))) }, "delay"), h("div", { style: { position: "relative", height: "10em" } }, "Large Spinner", h("smoothly-spinner", { active: true, size: "large", style: { "--background-color": "255,255,255", "--background-opacity": "0.2", "--spinner-color": "0,130,0", } })), h("div", { style: { position: "relative", height: "10em" } }, "Medium Spinner", h("smoothly-spinner", { active: true, size: "medium" })), h("div", { style: { position: "relative", height: "10em" } }, "Small Spinner", h("smoothly-spinner", { active: true, size: "small" }))),
42059
42059
  ];
42060
42060
  }
42061
42061
  };
@@ -42992,7 +42992,7 @@ let Item = class extends HTMLElement {
42992
42992
  static get style() { return styleCss$r; }
42993
42993
  };
42994
42994
 
42995
- const styleCss$q = ":host{max-height:300px;width:85%;max-height:var(--max-menu-height);border:1px solid black;box-sizing:border-box;background-color:rgb(var(--smoothly-default-shade));overflow-y:auto;cursor:pointer}div:last-child:not(:empty){padding:0.5em 1em;font-style:italic}";
42995
+ const styleCss$q = ":host{max-height:300px;width:85%;max-height:var(--max-menu-height);box-sizing:border-box;background-color:rgb(var(--smoothly-default-color));border-radius:0.25em;color:rgb(var(--smoothly-primary-color));stroke:rgb(var(--smoothly-primary-color));fill:rgb(var(--smoothly-primary-color));box-shadow:0px 2px 24px rgba(64, 60, 57, 0.08), inset 0px 0px 1px rgba(64, 60, 57, 0.4);overflow-y:auto;cursor:pointer}div:last-child:not(:empty){padding:0.5em 1em;font-style:italic}:host:first-child{margin:10em}";
42996
42996
 
42997
42997
  let SmoothlyMenuOptions$1 = class extends HTMLElement {
42998
42998
  constructor() {
@@ -43086,7 +43086,7 @@ let SmoothlyMenuOptions$1 = class extends HTMLElement {
43086
43086
  }
43087
43087
  }
43088
43088
  render() {
43089
- return (h(Host, { style: { "--max-menu-height": this.maxMenuHeight } }, this.filteredOptions.length > 0 ? (this.filteredOptions.map((option, index) => (h("smoothly-option", { style: this.optionStyle, ref: el => index == 0 && (this.firstOptionsElement = el !== null && el !== void 0 ? el : this.firstOptionsElement), value: option.value, name: option.name, "data-highlight": this.highlightIndex == index }, option.description)))) : (h("div", null, this.emptyMenuLabel))));
43089
+ return (h(Host, { style: { "--max-menu-height": this.maxMenuHeight } }, this.filteredOptions.length > 0 ? (this.filteredOptions.map((option, index) => (h("smoothly-option", { style: this.optionStyle, ref: el => index == 0 && (this.firstOptionsElement = el !== null && el !== void 0 ? el : this.firstOptionsElement), value: option.value, name: option.name, divider: option.divider, "data-highlight": this.highlightIndex == index }, option.description)))) : (h("div", null, this.emptyMenuLabel))));
43090
43090
  }
43091
43091
  get element() { return this; }
43092
43092
  static get watchers() { return {
@@ -43179,7 +43179,7 @@ let Notifier = class extends HTMLElement {
43179
43179
  static get style() { return styleCss$o; }
43180
43180
  };
43181
43181
 
43182
- const styleCss$n = ":host{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:0.5em 1em}:host([data-highlight]){background-color:rgb(var(--smoothly-primary-color));color:rgb(var(--smoothly-primary-contrast));stroke:rgb(var(--smoothly-primary-contrast));fill:rgb(var(--smoothly-primary-contrast))}:host([data-highlight]) div:last-child{color:rgba(var(--smoothly-primary-contrast), 0.8)}:host div:last-child{color:rgba(var(--smoothly-default-contrast), 0.8);font-style:italic}";
43182
+ const styleCss$n = ":host{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;padding:0.7em 1em;margin-left:1px;margin-right:1px;background-color:transparent;position:relative}:host([data-highlight]){background-color:rgb(var(--smoothly-default-shade))}:host>div.middle{padding-left:0.5em;flex-shrink:1;width:100%}:host div:last-child :host div:first-child{color:rgba(var(--smoothly-primary-color), 0.8);font-style:italic}:host([divider]){margin-bottom:0.5em}:host>div[slot=right]{margin-right:100%;color:rgba(var(--smoothly-primary-color), 0.8)}:host([divider])::after{position:absolute;height:1px;width:100%;left:0;bottom:-0.25em;content:\"\";background-color:rgba(var(--smoothly-dark-color))}";
43183
43183
 
43184
43184
  let SmoothlyOption$1 = class extends HTMLElement {
43185
43185
  constructor() {
@@ -43189,6 +43189,7 @@ let SmoothlyOption$1 = class extends HTMLElement {
43189
43189
  this.optionHover = createEvent(this, "optionHover", 7);
43190
43190
  this.optionSelect = createEvent(this, "optionSelect", 7);
43191
43191
  this.dataHighlight = false;
43192
+ this.divider = false;
43192
43193
  }
43193
43194
  onHover(event) {
43194
43195
  this.optionHover.emit({ name: this.name, value: this.value });
@@ -43200,13 +43201,13 @@ let SmoothlyOption$1 = class extends HTMLElement {
43200
43201
  throw `smoothly-option ${this.element.innerHTML} lacks value-property and can therefore not be selected`;
43201
43202
  }
43202
43203
  render() {
43203
- return (h(Host, { onMouseDown: (e) => this.onSelect(e), onMouseOver: (e) => this.onHover(e) }, h("div", null, this.name), h("div", null, h("slot", null))));
43204
+ return (h(Host, { onMouseDown: (e) => this.onSelect(e), onMouseOver: (e) => this.onHover(e) }, h("div", null, h("slot", { name: "left" })), h("div", { class: "middle" }, this.name), h("div", null, h("slot", { name: "right" }))));
43204
43205
  }
43205
43206
  get element() { return this; }
43206
43207
  static get style() { return styleCss$n; }
43207
43208
  };
43208
43209
 
43209
- const styleCss$m = ":host{--background-color:var(--smoothly-secondary-tint), 1;--color:var(--smoothly-secondary-contrast);--border-color:var(--smoothly-secondary-contrast), 1;--border-highlight-color:var(--smoothly-secondary-contrast), 1;--label-color:var(--smoothly-secondary-contrast), 0.8;--selected-item-border-radius:0.25rem;--selected-item-background-color:var(--smoothly-secondary-color), 1;--selected-item-color:255, 255, 255, 1}:host{display:block;position:relative;width:100%;cursor:pointer;--intergiro-transition:all 200ms cubic-bezier(0.645, 0.045, 0.355, 1);transition:var(--intergiro-transition)}:host>div{display:flex;min-height:3em;background-color:rgba(var(--background-color));align-items:center;border:none;max-height:var(--max-height)}:host>div .icons>smoothly-icon{flex-shrink:0;padding-left:0.6em;stroke:rgba(var(--color), 0.4);fill:rgba(var(--color), 0.4);width:1.5em !important;height:1.5em !important}:host>div .icons>smoothly-icon:hover{fill:rgba(var(--color), 1)}:host>div input{width:100%;background-color:transparent;outline:none;border:none;cursor:pointer;color:rgb(var(--color));padding:0 1em;font-family:var(--smoothly-font-family);font-size:1.05em}:host>div input::placeholder{opacity:1;text-overflow:ellipsis}:host(:not(:focus-within)[multiple]) ul>li:last-child{position:absolute;pointer-events:none}:host([label=\"\"]) ul,:host:not([label]) ul,:host([label-setting=hide]) ul{padding-top:0.1em;padding-bottom:0.1em}label{position:absolute;top:1em;left:1em;color:rgba(var(--label-color));transition:var(--intergiro-transition);font-family:var(--smoothly-font-family);pointer-events:none;transform-origin:left}:host([has-selection]) label{display:var(--label-display)}:host([has-selection]) label,:host(:focus-within) label{transform:translateY(-1.2em) scale(0.7)}:host(:hover) smoothly-icon[data-arrow],:host(:focus-within) smoothly-icon[data-arrow]{stroke:rgba(var(--color), 1)}:host smoothly-icon[data-arrow]{pointer-events:none}:host(:not([is-open])) smoothly-icon[data-arrow=up]{display:none}:host([is-open]) smoothly-icon[data-arrow=down]{display:none}:host(:not([has-selection])) smoothly-icon:not([data-arrow]){display:none}:host smoothly-menu-options{position:absolute;z-index:1}:host(:not([is-open]))>smoothly-menu-options{display:none}";
43210
+ const styleCss$m = ":host{--background-color:var(--smoothly-default-color), 1;--color:var(--smoothly-secondary-contrast);--border-color:var(--smoothly-default-shade), 1;--border-highlight-color:var(--smoothly-secondary-contrast), 1;--label-color:var(--smoothly-secondary-contrast), 0.8;--selected-item-border-radius:0.25rem;--selected-item-background-color:var(--smoothly-secondary-color), 1;--selected-item-color:255, 255, 255, 1}:host{display:block;position:relative;background-color:rgba(var(--background-color));width:100%;cursor:pointer;--intergiro-transition:border-color 200ms cubic-bezier(0.645, 0.045, 0.355, 1);transition:var(--intergiro-transition);border:1px solid rgb(var(--border-color));margin:1px;height:40px;border-radius:0.25rem}:host(:focus-within){border-color:rgb(var(--smoothly-primary-shade));border-width:2px;margin:0px}:host>div{display:flex;background-color:transparent;min-height:40px;align-items:center;align-self:center;border:none;max-height:var(--max-height)}:host>div .icons>smoothly-icon{flex-shrink:0;padding-left:0.6em;stroke:rgba(var(--color), 0.4);fill:rgba(var(--color), 0.4);width:1.5em !important;height:1.5em !important}:host>div .icons>smoothly-icon:hover{fill:rgba(var(--color), 1)}:host>div input{width:100%;background-color:transparent;outline:none;border:none;cursor:pointer;color:rgb(var(--color));padding:0 0.6em;font-family:var(--smoothly-font-family);font-size:1.05em}:host>div input::placeholder{opacity:1;text-overflow:ellipsis}:host([is-open])>div input{color:rgb(var(--smoothly-medium-color))}:host(:not(:focus-within)[multiple]) ul>li:last-child{position:absolute;pointer-events:none}:host([label=\"\"]) ul,:host:not([label]) ul,:host([label-setting=hide]) ul{padding-top:0.1em;padding-bottom:0.1em}label{padding-left:0.6em;white-space:nowrap;color:rgba(var(--label-color));transition:var(--intergiro-transition);font-family:var(--smoothly-font-family);pointer-events:none;transform-origin:left}:host([has-selection]) label{display:var(--label-display)}:host([has-selection]) label,:host(:focus-within) label{display:none}:host(:hover) smoothly-icon[data-arrow],:host(:focus-within) smoothly-icon[data-arrow]{stroke:rgba(var(--color), 1)}:host smoothly-icon[data-arrow]{pointer-events:none}:host smoothly-icon{flex-shrink:0;width:1em;height:1em}:host(:not([is-open])) smoothly-icon.up,:host([is-open]) smoothly-icon.down{display:none}smoothly-icon.search{display:flex;align-self:center;padding-left:0.8em}smoothly-icon.up,smoothly-icon.down{display:flex;align-self:center;padding-right:0.8em;stroke:rgb(var(--smoothly-primary-shade))}:host smoothly-menu-options{margin-top:0.5em;padding-top:0.5em;padding-bottom:0.5em;position:absolute;z-index:1}:host(:not([is-open]))>smoothly-menu-options{display:none}";
43210
43211
 
43211
43212
  let SmoothlyPicker$1 = class extends HTMLElement {
43212
43213
  constructor() {
@@ -43217,8 +43218,10 @@ let SmoothlyPicker$1 = class extends HTMLElement {
43217
43218
  this.keepFocusOnReRender = false;
43218
43219
  this.emptyMenuLabel = "No Options";
43219
43220
  this.multiple = false;
43221
+ this.options = [];
43220
43222
  this.selections = [];
43221
43223
  this.selectNoneName = "Select None";
43224
+ this.selectionName = "items selected";
43222
43225
  }
43223
43226
  isOpenChangeHander() {
43224
43227
  if (this.isOpen == false) {
@@ -43238,13 +43241,14 @@ let SmoothlyPicker$1 = class extends HTMLElement {
43238
43241
  }
43239
43242
  toggle(option) {
43240
43243
  option.value == "select-none"
43241
- ? this.clearSelection()
43244
+ ? this.toggleAll()
43242
43245
  : this.selections.map(s => s.value).includes(option.value)
43243
43246
  ? this.unselect(option)
43244
43247
  : this.select(option);
43245
43248
  }
43246
- clearSelection() {
43247
- this.selections = [];
43249
+ toggleAll() {
43250
+ var _a;
43251
+ this.selections = this.selections.length == ((_a = this.options) === null || _a === void 0 ? void 0 : _a.length) ? [] : this.options;
43248
43252
  this.inputElement.focus();
43249
43253
  this.keepFocusOnReRender = true;
43250
43254
  }
@@ -43316,27 +43320,30 @@ let SmoothlyPicker$1 = class extends HTMLElement {
43316
43320
  this.isOpen = false;
43317
43321
  this.filterOptions();
43318
43322
  }
43319
- getCheckHtml() {
43320
- return h("smoothly-icon", { name: "checkmark-sharp", size: "small" });
43323
+ getCheckHtml(checked) {
43324
+ return checked ? (h("smoothly-icon", { slot: "left", name: "checkbox", size: "small" })) : (h("smoothly-icon", { slot: "left", name: "square-outline", size: "small" }));
43321
43325
  }
43322
43326
  render() {
43323
- var _a, _b, _c;
43327
+ var _a, _b, _c, _d;
43324
43328
  const cssVariables = {
43325
43329
  "--max-height": (_a = this.maxHeight) !== null && _a !== void 0 ? _a : "inherit",
43326
43330
  "--label-display": this.labelSetting == "hide" ? "none" : "absolute",
43327
43331
  };
43328
43332
  (_b = this.options) === null || _b === void 0 ? void 0 : _b.forEach(o => {
43329
- o.description = this.selections.map(s => s.value).includes(o.value) ? this.getCheckHtml() : "";
43333
+ o.description = this.getCheckHtml(this.selections.map(s => s.value).includes(o.value));
43330
43334
  });
43331
43335
  const options = [
43332
43336
  {
43333
43337
  value: "select-none",
43334
43338
  name: this.selectNoneName,
43335
- description: this.selections.length == 0 ? this.getCheckHtml() : "",
43339
+ description: this.getCheckHtml(this.selections.length == ((_c = this.options) === null || _c === void 0 ? void 0 : _c.length)),
43340
+ divider: true,
43336
43341
  },
43337
- ...((_c = this.options) !== null && _c !== void 0 ? _c : []),
43342
+ ...((_d = this.options) !== null && _d !== void 0 ? _d : []),
43338
43343
  ];
43339
- return (h(Host, { style: cssVariables, "has-selection": this.selections.length > 0, "is-open": this.isOpen ? "" : undefined, onMouseDown: (e) => e.preventDefault(), onClick: () => this.onClick() }, h("div", null, h("label", null, this.label), h("input", { type: "text", ref: (el) => (this.inputElement = el ? el : this.inputElement), onFocus: () => this.highlightDefault(), onBlur: () => this.onBlur(), placeholder: this.selections.map(selection => selection.name).join(", "), onKeyDown: e => this.onKeyDown(e), onInput: (e) => this.onInput(e) })), h("smoothly-menu-options", { style: { width: "100%" }, optionStyle: Object.assign({ padding: "0 1em", height: "2.5em" }, this.optionStyle), order: false, emptyMenuLabel: this.emptyMenuLabel, "max-menu-height": this.maxMenuHeight, ref: (el) => (this.menuElement = el !== null && el !== void 0 ? el : this.menuElement), onClick: e => e.stopPropagation(), resetHighlightOnOptionsChange: false, options: options })));
43344
+ return (h(Host, { style: cssVariables, "has-selection": this.selections.length > 0, "is-open": this.isOpen ? "" : undefined, onMouseDown: (e) => e.preventDefault(), onClick: () => this.onClick() }, h("div", null, h("smoothly-icon", { class: "search", name: "search-outline", size: "tiny" }), h("label", null, this.label), h("input", { type: "text", ref: (el) => (this.inputElement = el ? el : this.inputElement), onFocus: () => this.highlightDefault(), onBlur: () => this.onBlur(), placeholder: this.selections.length > 3
43345
+ ? this.selections.length.toString() + " " + this.selectionName
43346
+ : this.selections.map(selection => selection.name).join(", "), onKeyDown: e => this.onKeyDown(e), onInput: (e) => this.onInput(e) }), h("smoothly-icon", { class: "down", name: "chevron-down", size: "tiny" }), h("smoothly-icon", { class: "up", name: "chevron-up", size: "tiny" })), h("smoothly-menu-options", { style: { width: "100%" }, optionStyle: Object.assign({}, this.optionStyle), order: false, emptyMenuLabel: this.emptyMenuLabel, "max-menu-height": this.maxMenuHeight, ref: (el) => (this.menuElement = el !== null && el !== void 0 ? el : this.menuElement), onClick: e => e.stopPropagation(), resetHighlightOnOptionsChange: false, options: options })));
43340
43347
  }
43341
43348
  get element() { return this; }
43342
43349
  static get watchers() { return {
@@ -43752,15 +43759,20 @@ function isItem(value) {
43752
43759
  typeof value.filter == "function");
43753
43760
  }
43754
43761
 
43755
- const styleCss$d = ".sc-smoothly-spinner-h{display:block;position:relative}[hidden].sc-smoothly-spinner-h{display:none}.sc-smoothly-spinner-h:not([active]){display:none}.sc-smoothly-spinner-h{position:absolute;left:0;top:0;width:100%;height:100%;background:rgba(var(--smoothly-default-color), var(--smoothly-semitransparent))}.sc-smoothly-spinner-h>div.sc-smoothly-spinner{opacity:1;position:absolute;left:calc(50% - 5em + 1.1em);top:calc(50% - 5em + 1.1em)}.sc-smoothly-spinner-h>div.sc-smoothly-spinner,.sc-smoothly-spinner-h>div.sc-smoothly-spinner::after{border-radius:50%;width:5em;height:5em}.sc-smoothly-spinner-h>div.sc-smoothly-spinner{content:\"\";color:transparent;position:relative;border-top:1.1em solid rgb(var(--smoothly-primary-tint));border-right:1.1em solid rgb(var(--smoothly-primary-tint));border-bottom:1.1em solid rgb(var(--smoothly-primary-tint));border-left:1.1em solid rgb(var(--smoothly-primary-color));-webkit-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0);-webkit-animation:load8 1.1s infinite linear;animation:load8 1.1s infinite linear}@-webkit-keyframes load8{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes load8{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}";
43762
+ const styleCss$d = ".sc-smoothly-spinner-h:not([active]){display:none}[hidden].sc-smoothly-spinner-h{display:none}.sc-smoothly-spinner-h{display:block;stroke:rgb(var(--spinner-color, var(--smoothly-primary-tint)));position:absolute;inset:0;width:100%;height:100%;background-color:rgba(var(--background-color, var(--smoothly-default-color)), var(--background-opacity, var(--smoothly-semitransparent, 0.8)))}.sc-smoothly-spinner-h svg.sc-smoothly-spinner{position:absolute;left:calc(50% - var(--size) / 2);top:calc(50% - var(--size) / 2);width:var(--size);animation:SPIN-SVG 1.4s linear infinite}.sc-smoothly-spinner-h svg.sc-smoothly-spinner circle.sc-smoothly-spinner{transform-origin:center;animation:SPIN-CIRCLE 1.4s ease-in-out infinite;stroke-dasharray:187;stroke-dashoffset:0}@keyframes SPIN-SVG{0%{transform:rotate(0deg)}100%{transform:rotate(270deg)}}@keyframes SPIN-CIRCLE{0%{stroke-dashoffset:187}50%{stroke-dashoffset:46.75;transform:rotate(135deg)}100%{stroke-dashoffset:187;transform:rotate(450deg)}}";
43756
43763
 
43757
43764
  let SmoothlySpinner$1 = class extends HTMLElement {
43758
43765
  constructor() {
43759
43766
  super();
43760
43767
  this.__registerHost();
43768
+ this.size = "large";
43761
43769
  }
43762
43770
  render() {
43763
- return h("div", null, "Loading...");
43771
+ const strokeWidth = this.size == "large" ? 6 : this.size == "medium" ? 8 : 12;
43772
+ return (h(Host, { style: {
43773
+ "--color": `var(--spinner-color)`,
43774
+ "--size": this.size == "large" ? "5em" : this.size == "medium" ? "3em" : "1.2em",
43775
+ } }, h("svg", { class: "spinner", viewBox: `0 0 ${60 + strokeWidth} ${60 + strokeWidth}`, xmlns: "http://www.w3.org/2000/svg" }, h("circle", { class: "path", fill: "none", "stroke-width": strokeWidth, "stroke-linecap": "round", cx: `${30 + strokeWidth / 2}`, cy: `${30 + strokeWidth / 2}`, r: "30" }))));
43764
43776
  }
43765
43777
  static get style() { return styleCss$d; }
43766
43778
  };
@@ -44187,8 +44199,8 @@ const SmoothlyItem = /*@__PURE__*/proxyCustomElement(Item, [6,"smoothly-item",{"
44187
44199
  const SmoothlyMenuOptions = /*@__PURE__*/proxyCustomElement(SmoothlyMenuOptions$1, [1,"smoothly-menu-options",{"emptyMenuLabel":[1025,"empty-menu-label"],"maxMenuHeight":[1,"max-menu-height"],"order":[4],"optionStyle":[8,"option-style"],"options":[1040],"resetHighlightOnOptionsChange":[1028,"reset-highlight-on-options-change"],"filteredOptions":[32],"highlightIndex":[32]},[[0,"optionHover","optionHoverHandler"]]]);
44188
44200
  const SmoothlyNotification = /*@__PURE__*/proxyCustomElement(Notification, [2,"smoothly-notification",{"notice":[16],"tick":[32]},[[0,"trigger","onTrigger"]]]);
44189
44201
  const SmoothlyNotifier = /*@__PURE__*/proxyCustomElement(Notifier, [6,"smoothly-notifier",{"notices":[32]},[[0,"notice","onNotice"],[0,"remove","onRemove"]]]);
44190
- const SmoothlyOption = /*@__PURE__*/proxyCustomElement(SmoothlyOption$1, [1,"smoothly-option",{"aliases":[513],"dataHighlight":[1540,"data-highlight"],"name":[1537],"value":[1537]}]);
44191
- const SmoothlyPicker = /*@__PURE__*/proxyCustomElement(SmoothlyPicker$1, [1,"smoothly-picker",{"maxMenuHeight":[1,"max-menu-height"],"maxHeight":[1,"max-height"],"emptyMenuLabel":[1025,"empty-menu-label"],"multiple":[516],"optionStyle":[8,"option-style"],"options":[16],"labelSetting":[513,"label-setting"],"label":[513],"selections":[1040],"selectNoneName":[1025,"select-none-name"],"isOpen":[32]},[[0,"optionSelect","optionSelectHander"]]]);
44202
+ const SmoothlyOption = /*@__PURE__*/proxyCustomElement(SmoothlyOption$1, [1,"smoothly-option",{"aliases":[513],"dataHighlight":[1540,"data-highlight"],"name":[1537],"value":[1537],"divider":[1540]}]);
44203
+ const SmoothlyPicker = /*@__PURE__*/proxyCustomElement(SmoothlyPicker$1, [1,"smoothly-picker",{"maxMenuHeight":[1,"max-menu-height"],"maxHeight":[1,"max-height"],"emptyMenuLabel":[1025,"empty-menu-label"],"multiple":[516],"optionStyle":[8,"option-style"],"options":[16],"labelSetting":[513,"label-setting"],"label":[513],"selections":[1040],"selectNoneName":[1025,"select-none-name"],"selectionName":[1025,"selection-name"],"isOpen":[32]},[[0,"optionSelect","optionSelectHander"]]]);
44192
44204
  const SmoothlyPopup = /*@__PURE__*/proxyCustomElement(SmoothlyPopup$1, [6,"smoothly-popup",{"visible":[1540],"direction":[1537],"cssVariables":[32]}]);
44193
44205
  const SmoothlyQuiet = /*@__PURE__*/proxyCustomElement(SmoothlyQuiet$1, [6,"smoothly-quiet",{"color":[1]}]);
44194
44206
  const SmoothlyRadio = /*@__PURE__*/proxyCustomElement(SmoothlyRadio$1, [6,"smoothly-radio",{"name":[1],"value":[1],"checked":[1540],"tabIndex":[2,"tab-index"]}]);
@@ -44198,7 +44210,7 @@ const SmoothlyRoom = /*@__PURE__*/proxyCustomElement(SmoothlyRoom$1, [4,"smoothl
44198
44210
  const SmoothlySelect = /*@__PURE__*/proxyCustomElement(SmoothlySelect$1, [6,"smoothly-select",{"identifier":[1],"background":[513],"value":[1025]}]);
44199
44211
  const SmoothlySelectDemo = /*@__PURE__*/proxyCustomElement(SmoothlySelectDemo$1, [2,"smoothly-select-demo",null,[[0,"selectionChanged","handleSelectionChanged"]]]);
44200
44212
  const SmoothlySelector = /*@__PURE__*/proxyCustomElement(Selector, [6,"smoothly-selector",{"opened":[32],"selectedElement":[32],"missing":[32],"filter":[32]},[[0,"click","onClick"],[0,"itemSelected","onItemSelected"],[0,"keydown","onKeyDown"]]]);
44201
- const SmoothlySpinner = /*@__PURE__*/proxyCustomElement(SmoothlySpinner$1, [2,"smoothly-spinner",{"active":[516]}]);
44213
+ const SmoothlySpinner = /*@__PURE__*/proxyCustomElement(SmoothlySpinner$1, [2,"smoothly-spinner",{"active":[516],"size":[513]}]);
44202
44214
  const SmoothlySubmit = /*@__PURE__*/proxyCustomElement(SmoothlySubmit$1, [6,"smoothly-submit",{"processing":[1540],"color":[513],"expand":[513],"fill":[513],"disabled":[516],"prevent":[4]},[[0,"click","handleSubmit"]]]);
44203
44215
  const SmoothlyTab = /*@__PURE__*/proxyCustomElement(SmoothlyTab$1, [6,"smoothly-tab",{"label":[1],"open":[1540]},[[0,"click","onClick"]]]);
44204
44216
  const SmoothlyTabSwitch = /*@__PURE__*/proxyCustomElement(SmoothlyTabSwitch$1, [6,"smoothly-tab-switch",{"selectedElement":[32]},[[0,"expansionOpen","openChanged"]]]);
@@ -591,7 +591,6 @@ const App = (attributes, nodes, utils) => {
591
591
  h("header", null,
592
592
  h("h1", null,
593
593
  h("a", Object.assign({}, href((_a = resolve("")) !== null && _a !== void 0 ? _a : "/")), attributes.label)),
594
- children.filter(child => { var _a; return ((_a = child.vattrs) === null || _a === void 0 ? void 0 : _a.slot) == "header"; }).map(child => child.node),
595
594
  h("nav", null,
596
595
  h("ul", null, utils
597
596
  .map([
@@ -624,7 +623,8 @@ const App = (attributes, nodes, utils) => {
624
623
  const child = nodeToChild(node);
625
624
  return child.vtag == "a" && !((_a = child.vattrs) === null || _a === void 0 ? void 0 : _a.target) ? (h("a", Object.assign({}, child.vattrs, href((_b = child.vattrs) === null || _b === void 0 ? void 0 : _b.href)), child.vchildren)) : (node);
626
625
  })
627
- .map(child => (h("li", null, child)))))),
626
+ .map(child => (h("li", null, child))))),
627
+ children.filter(child => { var _a; return ((_a = child.vattrs) === null || _a === void 0 ? void 0 : _a.slot) == "header"; }).map(child => child.node)),
628
628
  h("content", null,
629
629
  h(Router.Switch, null, children
630
630
  .filter(child => { var _a; return ((_a = child.vattrs) === null || _a === void 0 ? void 0 : _a.path) != undefined; })
@@ -332,7 +332,6 @@ const App = (attributes, nodes, utils) => {
332
332
  h("header", null,
333
333
  h("h1", null,
334
334
  h("a", Object.assign({}, href((_a = resolve("")) !== null && _a !== void 0 ? _a : "/")), attributes.label)),
335
- children.filter(child => { var _a; return ((_a = child.vattrs) === null || _a === void 0 ? void 0 : _a.slot) == "header"; }).map(child => child.node),
336
335
  h("nav", null,
337
336
  h("ul", null, utils
338
337
  .map([
@@ -365,7 +364,8 @@ const App = (attributes, nodes, utils) => {
365
364
  const child = nodeToChild(node);
366
365
  return child.vtag == "a" && !((_a = child.vattrs) === null || _a === void 0 ? void 0 : _a.target) ? (h("a", Object.assign({}, child.vattrs, href((_b = child.vattrs) === null || _b === void 0 ? void 0 : _b.href)), child.vchildren)) : (node);
367
366
  })
368
- .map(child => (h("li", null, child)))))),
367
+ .map(child => (h("li", null, child))))),
368
+ children.filter(child => { var _a; return ((_a = child.vattrs) === null || _a === void 0 ? void 0 : _a.slot) == "header"; }).map(child => child.node)),
369
369
  h("content", null,
370
370
  h(Router.Switch, null, children
371
371
  .filter(child => { var _a; return ((_a = child.vattrs) === null || _a === void 0 ? void 0 : _a.path) != undefined; })
package/dist/esm/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { A as App } from './App-c5f6000f.js';
1
+ export { A as App } from './App-33847333.js';
2
2
  export { C as ClientIdentifier, M as Message, N as Notice, T as Trigger } from './index-c8b5d468.js';
3
3
  export { G as GoogleFont } from './GoogleFont-8474516b.js';
4
4
  import './index-02a70ac1.js';