@vibe-flags/core 0.1.4 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +2 -2
- package/dist/vibe-flags.cdn.js +79 -98
- package/dist/vibe-flags.cdn.mjs +106 -125
- package/dist/vibe-flags.js +101 -120
- package/package.json +1 -1
package/dist/vibe-flags.cdn.mjs
CHANGED
|
@@ -3,16 +3,16 @@
|
|
|
3
3
|
* Copyright 2019 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
5
5
|
*/
|
|
6
|
-
const D = globalThis,
|
|
6
|
+
const D = globalThis, Y = D.ShadowRoot && (D.ShadyCSS === void 0 || D.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype, Z = Symbol(), re = /* @__PURE__ */ new WeakMap();
|
|
7
7
|
let be = class {
|
|
8
8
|
constructor(e, t, s) {
|
|
9
|
-
if (this._$cssResult$ = !0, s !==
|
|
9
|
+
if (this._$cssResult$ = !0, s !== Z) throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
|
|
10
10
|
this.cssText = e, this.t = t;
|
|
11
11
|
}
|
|
12
12
|
get styleSheet() {
|
|
13
13
|
let e = this.o;
|
|
14
14
|
const t = this.t;
|
|
15
|
-
if (
|
|
15
|
+
if (Y && e === void 0) {
|
|
16
16
|
const s = t !== void 0 && t.length === 1;
|
|
17
17
|
s && (e = re.get(t)), e === void 0 && ((this.o = e = new CSSStyleSheet()).replaceSync(this.cssText), s && re.set(t, e));
|
|
18
18
|
}
|
|
@@ -22,20 +22,20 @@ let be = class {
|
|
|
22
22
|
return this.cssText;
|
|
23
23
|
}
|
|
24
24
|
};
|
|
25
|
-
const _e = (i) => new be(typeof i == "string" ? i : i + "", void 0,
|
|
25
|
+
const _e = (i) => new be(typeof i == "string" ? i : i + "", void 0, Z), X = (i, ...e) => {
|
|
26
26
|
const t = i.length === 1 ? i[0] : e.reduce((s, r, o) => s + ((n) => {
|
|
27
27
|
if (n._$cssResult$ === !0) return n.cssText;
|
|
28
28
|
if (typeof n == "number") return n;
|
|
29
29
|
throw Error("Value passed to 'css' function must be a 'css' function result: " + n + ". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.");
|
|
30
30
|
})(r) + i[o + 1], i[0]);
|
|
31
|
-
return new be(t, i,
|
|
31
|
+
return new be(t, i, Z);
|
|
32
32
|
}, we = (i, e) => {
|
|
33
|
-
if (
|
|
33
|
+
if (Y) i.adoptedStyleSheets = e.map((t) => t instanceof CSSStyleSheet ? t : t.styleSheet);
|
|
34
34
|
else for (const t of e) {
|
|
35
35
|
const s = document.createElement("style"), r = D.litNonce;
|
|
36
36
|
r !== void 0 && s.setAttribute("nonce", r), s.textContent = t.cssText, i.appendChild(s);
|
|
37
37
|
}
|
|
38
|
-
}, oe =
|
|
38
|
+
}, oe = Y ? (i) => i : (i) => i instanceof CSSStyleSheet ? ((e) => {
|
|
39
39
|
let t = "";
|
|
40
40
|
for (const s of e.cssRules) t += s.cssText;
|
|
41
41
|
return _e(t);
|
|
@@ -262,7 +262,7 @@ A.elementStyles = [], A.shadowRootOptions = { mode: "open" }, A[O("elementProper
|
|
|
262
262
|
* Copyright 2017 Google LLC
|
|
263
263
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
264
264
|
*/
|
|
265
|
-
const Q = globalThis, le = (i) => i, B = Q.trustedTypes, he = B ? B.createPolicy("lit-html", { createHTML: (i) => i }) : void 0,
|
|
265
|
+
const Q = globalThis, le = (i) => i, B = Q.trustedTypes, he = B ? B.createPolicy("lit-html", { createHTML: (i) => i }) : void 0, ye = "$lit$", y = `lit$${Math.random().toFixed(9).slice(2)}$`, $e = "?" + y, Te = `<${$e}>`, w = document, M = () => w.createComment(""), T = (i) => i === null || typeof i != "object" && typeof i != "function", ee = Array.isArray, Ue = (i) => ee(i) || typeof i?.[Symbol.iterator] == "function", K = `[
|
|
266
266
|
\f\r]`, k = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, ce = /-->/g, de = />/g, x = RegExp(`>|${K}(?:([^\\s"'>=/]+)(${K}*=${K}*(?:[^
|
|
267
267
|
\f\r"'\`<>=]|("|')|))|$)`, "g"), pe = /'/g, fe = /"/g, me = /^(?:script|style|textarea|title)$/i, Fe = (i) => (e, ...t) => ({ _$litType$: i, strings: e, values: t }), f = Fe(1), S = Symbol.for("lit-noChange"), c = Symbol.for("lit-nothing"), ue = /* @__PURE__ */ new WeakMap(), _ = w.createTreeWalker(w, 129);
|
|
268
268
|
function xe(i, e) {
|
|
@@ -277,7 +277,7 @@ const Ne = (i, e) => {
|
|
|
277
277
|
let d, p, h = -1, g = 0;
|
|
278
278
|
for (; g < a.length && (n.lastIndex = g, p = n.exec(a), p !== null); ) g = n.lastIndex, n === k ? p[1] === "!--" ? n = ce : p[1] !== void 0 ? n = de : p[2] !== void 0 ? (me.test(p[2]) && (r = RegExp("</" + p[2], "g")), n = x) : p[3] !== void 0 && (n = x) : n === x ? p[0] === ">" ? (n = r ?? k, h = -1) : p[1] === void 0 ? h = -2 : (h = n.lastIndex - p[2].length, d = p[1], n = p[3] === void 0 ? x : p[3] === '"' ? fe : pe) : n === fe || n === pe ? n = x : n === ce || n === de ? n = k : (n = x, r = void 0);
|
|
279
279
|
const b = n === x && i[l + 1].startsWith("/>") ? " " : "";
|
|
280
|
-
o += n === k ? a + Te : h >= 0 ? (s.push(d), a.slice(0, h) +
|
|
280
|
+
o += n === k ? a + Te : h >= 0 ? (s.push(d), a.slice(0, h) + ye + a.slice(h) + y + b) : a + y + (h === -2 ? l : b);
|
|
281
281
|
}
|
|
282
282
|
return [xe(i, o + (i[t] || "<?>") + (e === 2 ? "</svg>" : e === 3 ? "</math>" : "")), s];
|
|
283
283
|
};
|
|
@@ -293,22 +293,22 @@ class U {
|
|
|
293
293
|
}
|
|
294
294
|
for (; (r = _.nextNode()) !== null && a.length < l; ) {
|
|
295
295
|
if (r.nodeType === 1) {
|
|
296
|
-
if (r.hasAttributes()) for (const h of r.getAttributeNames()) if (h.endsWith(
|
|
297
|
-
const g = p[n++], b = r.getAttribute(h).split(
|
|
296
|
+
if (r.hasAttributes()) for (const h of r.getAttributeNames()) if (h.endsWith(ye)) {
|
|
297
|
+
const g = p[n++], b = r.getAttribute(h).split(y), I = /([.?@])?(.*)/.exec(g);
|
|
298
298
|
a.push({ type: 1, index: o, name: I[2], strings: b, ctor: I[1] === "." ? Re : I[1] === "?" ? je : I[1] === "@" ? Ie : W }), r.removeAttribute(h);
|
|
299
|
-
} else h.startsWith(
|
|
299
|
+
} else h.startsWith(y) && (a.push({ type: 6, index: o }), r.removeAttribute(h));
|
|
300
300
|
if (me.test(r.tagName)) {
|
|
301
|
-
const h = r.textContent.split(
|
|
301
|
+
const h = r.textContent.split(y), g = h.length - 1;
|
|
302
302
|
if (g > 0) {
|
|
303
303
|
r.textContent = B ? B.emptyScript : "";
|
|
304
304
|
for (let b = 0; b < g; b++) r.append(h[b], M()), _.nextNode(), a.push({ type: 2, index: ++o });
|
|
305
305
|
r.append(h[g], M());
|
|
306
306
|
}
|
|
307
307
|
}
|
|
308
|
-
} else if (r.nodeType === 8) if (r.data ===
|
|
308
|
+
} else if (r.nodeType === 8) if (r.data === $e) a.push({ type: 2, index: o });
|
|
309
309
|
else {
|
|
310
310
|
let h = -1;
|
|
311
|
-
for (; (h = r.data.indexOf(
|
|
311
|
+
for (; (h = r.data.indexOf(y, h + 1)) !== -1; ) a.push({ type: 7, index: o }), h += y.length - 1;
|
|
312
312
|
}
|
|
313
313
|
o++;
|
|
314
314
|
}
|
|
@@ -601,8 +601,8 @@ class Je extends EventTarget {
|
|
|
601
601
|
}
|
|
602
602
|
register(e) {
|
|
603
603
|
this.configs.set(e.key, e);
|
|
604
|
-
const t = this.readFromStorage(e.key);
|
|
605
|
-
this.state[e.key] =
|
|
604
|
+
const t = J(e), s = this.readFromStorage(e.key), r = s !== null && (e.type === "boolean" && typeof s == "boolean" || e.type === "select" && typeof s == "string" && e.options.includes(s));
|
|
605
|
+
this.state[e.key] = r ? s : t, this.listening || (this.listening = !0, typeof window < "u" && window.addEventListener("storage", this.onStorageEvent)), this.dispatch(e.key);
|
|
606
606
|
}
|
|
607
607
|
unregister(e) {
|
|
608
608
|
this.configs.delete(e), delete this.state[e], this.dispatch();
|
|
@@ -660,10 +660,10 @@ class Je extends EventTarget {
|
|
|
660
660
|
}
|
|
661
661
|
}
|
|
662
662
|
const u = new Je();
|
|
663
|
-
var
|
|
664
|
-
for (var r = s > 1 ? void 0 : s ?
|
|
663
|
+
var Ye = Object.defineProperty, Ze = Object.getOwnPropertyDescriptor, R = (i, e, t, s) => {
|
|
664
|
+
for (var r = s > 1 ? void 0 : s ? Ze(e, t) : e, o = i.length - 1, n; o >= 0; o--)
|
|
665
665
|
(n = i[o]) && (r = (s ? n(e, t, r) : n(r)) || r);
|
|
666
|
-
return s && r &&
|
|
666
|
+
return s && r && Ye(e, t, r), r;
|
|
667
667
|
};
|
|
668
668
|
if (typeof document < "u" && !document.getElementById("vibe-flag-fouc")) {
|
|
669
669
|
const i = document.createElement("style");
|
|
@@ -717,10 +717,10 @@ R([
|
|
|
717
717
|
C = R([
|
|
718
718
|
N("vibe-flag-boolean")
|
|
719
719
|
], C);
|
|
720
|
-
var
|
|
720
|
+
var Xe = Object.defineProperty, Ge = Object.getOwnPropertyDescriptor, se = (i, e, t, s) => {
|
|
721
721
|
for (var r = s > 1 ? void 0 : s ? Ge(e, t) : e, o = i.length - 1, n; o >= 0; o--)
|
|
722
722
|
(n = i[o]) && (r = (s ? n(e, t, r) : n(r)) || r);
|
|
723
|
-
return s && r &&
|
|
723
|
+
return s && r && Xe(e, t, r), r;
|
|
724
724
|
};
|
|
725
725
|
let L = class extends v {
|
|
726
726
|
constructor() {
|
|
@@ -780,6 +780,9 @@ let V = class extends v {
|
|
|
780
780
|
constructor() {
|
|
781
781
|
super(...arguments), this.value = "", this.active = !1;
|
|
782
782
|
}
|
|
783
|
+
firstUpdated() {
|
|
784
|
+
this.style.display = "contents";
|
|
785
|
+
}
|
|
783
786
|
render() {
|
|
784
787
|
return this.active ? f`<slot></slot>` : c;
|
|
785
788
|
}
|
|
@@ -793,7 +796,7 @@ ie([
|
|
|
793
796
|
V = ie([
|
|
794
797
|
N("vibe-flag-option")
|
|
795
798
|
], V);
|
|
796
|
-
const tt =
|
|
799
|
+
const tt = X`
|
|
797
800
|
:host {
|
|
798
801
|
--vf-bg: #0a0a0a;
|
|
799
802
|
--vf-bg-muted: #171717;
|
|
@@ -817,7 +820,7 @@ const tt = Z`
|
|
|
817
820
|
--vf-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.6),
|
|
818
821
|
0 8px 10px -6px rgba(0, 0, 0, 0.6);
|
|
819
822
|
}
|
|
820
|
-
`, st =
|
|
823
|
+
`, st = X`
|
|
821
824
|
:host {
|
|
822
825
|
--vf-bg: #ffffff;
|
|
823
826
|
--vf-bg-muted: #f5f5f5;
|
|
@@ -848,7 +851,7 @@ var it = Object.defineProperty, rt = Object.getOwnPropertyDescriptor, j = (i, e,
|
|
|
848
851
|
return s && r && it(e, t, r), r;
|
|
849
852
|
};
|
|
850
853
|
const ve = "vibeFlagsTheme";
|
|
851
|
-
let
|
|
854
|
+
let $ = class extends v {
|
|
852
855
|
constructor() {
|
|
853
856
|
super(...arguments), this.open = !1, this.flags = {}, this.configs = [], this.darkMode = !0, this.onFlagChange = () => {
|
|
854
857
|
this.syncFromStore();
|
|
@@ -871,19 +874,16 @@ let y = class extends v {
|
|
|
871
874
|
applyTheme() {
|
|
872
875
|
const i = this.darkMode ? tt : st, e = new CSSStyleSheet();
|
|
873
876
|
e.replaceSync(i.cssText), this.shadowRoot.adoptedStyleSheets = [
|
|
874
|
-
|
|
877
|
+
...$.elementStyles.map((t) => t.styleSheet),
|
|
875
878
|
e
|
|
876
879
|
];
|
|
877
880
|
}
|
|
878
881
|
syncFromStore() {
|
|
879
882
|
this.configs = u.getConfig(), this.flags = u.getAll();
|
|
880
883
|
}
|
|
881
|
-
|
|
884
|
+
toggle() {
|
|
882
885
|
this.open = !this.open;
|
|
883
886
|
}
|
|
884
|
-
closeSidebar() {
|
|
885
|
-
this.open = !1;
|
|
886
|
-
}
|
|
887
887
|
onToggle(i) {
|
|
888
888
|
const e = this.flags[i];
|
|
889
889
|
u.set(i, !e);
|
|
@@ -963,14 +963,12 @@ let y = class extends v {
|
|
|
963
963
|
render() {
|
|
964
964
|
return f`
|
|
965
965
|
${this.open ? c : f`
|
|
966
|
-
<button class="fab" @click=${this.
|
|
966
|
+
<button class="fab" @click=${this.toggle} aria-label="Toggle feature flags">
|
|
967
967
|
${this.renderFlagIcon()}
|
|
968
968
|
</button>
|
|
969
969
|
`}
|
|
970
970
|
|
|
971
|
-
<div class="
|
|
972
|
-
|
|
973
|
-
<div class="sidebar ${this.open ? "open" : ""}">
|
|
971
|
+
<div class="card ${this.open ? "open" : ""}">
|
|
974
972
|
<div class="header">
|
|
975
973
|
<h2>
|
|
976
974
|
${this.renderFlagIcon()}
|
|
@@ -981,7 +979,7 @@ let y = class extends v {
|
|
|
981
979
|
<button class="icon-btn" @click=${this.toggleTheme} aria-label="Toggle theme" title="${this.darkMode ? "Switch to light theme" : "Switch to dark theme"}">
|
|
982
980
|
${this.darkMode ? this.renderSunIcon() : this.renderMoonIcon()}
|
|
983
981
|
</button>
|
|
984
|
-
<button class="icon-btn" @click=${this.
|
|
982
|
+
<button class="icon-btn" @click=${this.toggle} aria-label="Close">
|
|
985
983
|
${this.renderCloseIcon()}
|
|
986
984
|
</button>
|
|
987
985
|
</div>
|
|
@@ -1002,8 +1000,8 @@ let y = class extends v {
|
|
|
1002
1000
|
`;
|
|
1003
1001
|
}
|
|
1004
1002
|
};
|
|
1005
|
-
|
|
1006
|
-
|
|
1003
|
+
$.styles = [
|
|
1004
|
+
X`
|
|
1007
1005
|
* {
|
|
1008
1006
|
box-sizing: border-box;
|
|
1009
1007
|
margin: 0;
|
|
@@ -1012,15 +1010,13 @@ y.styles = [
|
|
|
1012
1010
|
|
|
1013
1011
|
.fab {
|
|
1014
1012
|
position: fixed;
|
|
1015
|
-
right:
|
|
1016
|
-
|
|
1017
|
-
transform: translateY(-50%);
|
|
1013
|
+
right: 16px;
|
|
1014
|
+
bottom: 16px;
|
|
1018
1015
|
z-index: 99999;
|
|
1019
|
-
width:
|
|
1020
|
-
height:
|
|
1016
|
+
width: 42px;
|
|
1017
|
+
height: 42px;
|
|
1021
1018
|
border: 1px solid var(--vf-border);
|
|
1022
|
-
border-
|
|
1023
|
-
border-radius: var(--vf-radius-lg) 0 0 var(--vf-radius-lg);
|
|
1019
|
+
border-radius: 12px;
|
|
1024
1020
|
background: var(--vf-bg);
|
|
1025
1021
|
color: var(--vf-text);
|
|
1026
1022
|
cursor: pointer;
|
|
@@ -1033,94 +1029,80 @@ y.styles = [
|
|
|
1033
1029
|
}
|
|
1034
1030
|
|
|
1035
1031
|
.fab:hover {
|
|
1036
|
-
width: 46px;
|
|
1037
1032
|
background: var(--vf-bg-muted);
|
|
1033
|
+
box-shadow: var(--vf-shadow-xl);
|
|
1034
|
+
transform: translateY(-1px);
|
|
1038
1035
|
}
|
|
1039
1036
|
|
|
1040
1037
|
.fab svg {
|
|
1041
|
-
width:
|
|
1042
|
-
height:
|
|
1038
|
+
width: 18px;
|
|
1039
|
+
height: 18px;
|
|
1043
1040
|
flex-shrink: 0;
|
|
1044
1041
|
}
|
|
1045
1042
|
|
|
1046
|
-
.
|
|
1047
|
-
position: fixed;
|
|
1048
|
-
inset: 0;
|
|
1049
|
-
z-index: 100000;
|
|
1050
|
-
background: rgba(0, 0, 0, 0.4);
|
|
1051
|
-
opacity: 0;
|
|
1052
|
-
transition: opacity 0.3s ease;
|
|
1053
|
-
pointer-events: none;
|
|
1054
|
-
}
|
|
1055
|
-
|
|
1056
|
-
.backdrop.open {
|
|
1057
|
-
opacity: 1;
|
|
1058
|
-
pointer-events: auto;
|
|
1059
|
-
}
|
|
1060
|
-
|
|
1061
|
-
.sidebar {
|
|
1043
|
+
.card {
|
|
1062
1044
|
position: fixed;
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
bottom: 0;
|
|
1045
|
+
right: 16px;
|
|
1046
|
+
bottom: 16px;
|
|
1066
1047
|
z-index: 100001;
|
|
1067
|
-
width:
|
|
1068
|
-
max-width:
|
|
1048
|
+
width: 300px;
|
|
1049
|
+
max-width: calc(100vw - 32px);
|
|
1050
|
+
max-height: calc(100vh - 32px);
|
|
1069
1051
|
background: var(--vf-bg);
|
|
1070
|
-
border
|
|
1052
|
+
border: 1px solid var(--vf-border);
|
|
1053
|
+
border-radius: 14px;
|
|
1071
1054
|
box-shadow: var(--vf-shadow-xl);
|
|
1072
|
-
transform: translateX(100%);
|
|
1073
|
-
transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
|
|
1074
|
-
display: flex;
|
|
1075
|
-
flex-direction: column;
|
|
1076
1055
|
font-family: var(--vf-font);
|
|
1077
1056
|
color: var(--vf-text);
|
|
1057
|
+
overflow: hidden;
|
|
1058
|
+
display: flex;
|
|
1059
|
+
flex-direction: column;
|
|
1060
|
+
opacity: 0;
|
|
1061
|
+
transform: translateY(8px) scale(0.96);
|
|
1062
|
+
pointer-events: none;
|
|
1063
|
+
transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
|
|
1078
1064
|
}
|
|
1079
1065
|
|
|
1080
|
-
.
|
|
1081
|
-
|
|
1066
|
+
.card.open {
|
|
1067
|
+
opacity: 1;
|
|
1068
|
+
transform: translateY(0) scale(1);
|
|
1069
|
+
pointer-events: auto;
|
|
1082
1070
|
}
|
|
1083
1071
|
|
|
1084
1072
|
.header {
|
|
1085
1073
|
display: flex;
|
|
1086
1074
|
align-items: center;
|
|
1087
1075
|
justify-content: space-between;
|
|
1088
|
-
padding:
|
|
1076
|
+
padding: 12px 14px;
|
|
1089
1077
|
border-bottom: 1px solid var(--vf-border);
|
|
1090
1078
|
flex-shrink: 0;
|
|
1091
1079
|
}
|
|
1092
1080
|
|
|
1093
|
-
.header-left {
|
|
1094
|
-
display: flex;
|
|
1095
|
-
align-items: center;
|
|
1096
|
-
gap: 8px;
|
|
1097
|
-
}
|
|
1098
|
-
|
|
1099
1081
|
.header h2 {
|
|
1100
|
-
font-size:
|
|
1082
|
+
font-size: 13px;
|
|
1101
1083
|
font-weight: 600;
|
|
1102
|
-
letter-spacing: -0.
|
|
1084
|
+
letter-spacing: -0.01em;
|
|
1103
1085
|
display: flex;
|
|
1104
1086
|
align-items: center;
|
|
1105
|
-
gap:
|
|
1087
|
+
gap: 7px;
|
|
1106
1088
|
}
|
|
1107
1089
|
|
|
1108
1090
|
.header h2 svg {
|
|
1109
|
-
width:
|
|
1110
|
-
height:
|
|
1091
|
+
width: 15px;
|
|
1092
|
+
height: 15px;
|
|
1111
1093
|
color: var(--vf-accent);
|
|
1112
1094
|
}
|
|
1113
1095
|
|
|
1114
1096
|
.header-actions {
|
|
1115
1097
|
display: flex;
|
|
1116
1098
|
align-items: center;
|
|
1117
|
-
gap:
|
|
1099
|
+
gap: 2px;
|
|
1118
1100
|
}
|
|
1119
1101
|
|
|
1120
1102
|
.badge {
|
|
1121
|
-
font-size:
|
|
1103
|
+
font-size: 10px;
|
|
1122
1104
|
font-weight: 500;
|
|
1123
|
-
padding:
|
|
1105
|
+
padding: 1px 6px;
|
|
1124
1106
|
border-radius: 9999px;
|
|
1125
1107
|
background: var(--vf-bg-muted);
|
|
1126
1108
|
color: var(--vf-text-muted);
|
|
@@ -1128,8 +1110,8 @@ y.styles = [
|
|
|
1128
1110
|
}
|
|
1129
1111
|
|
|
1130
1112
|
.icon-btn {
|
|
1131
|
-
width:
|
|
1132
|
-
height:
|
|
1113
|
+
width: 28px;
|
|
1114
|
+
height: 28px;
|
|
1133
1115
|
border: none;
|
|
1134
1116
|
border-radius: var(--vf-radius);
|
|
1135
1117
|
background: transparent;
|
|
@@ -1147,18 +1129,17 @@ y.styles = [
|
|
|
1147
1129
|
}
|
|
1148
1130
|
|
|
1149
1131
|
.icon-btn svg {
|
|
1150
|
-
width:
|
|
1151
|
-
height:
|
|
1132
|
+
width: 14px;
|
|
1133
|
+
height: 14px;
|
|
1152
1134
|
}
|
|
1153
1135
|
|
|
1154
1136
|
.flags {
|
|
1155
|
-
flex: 1;
|
|
1156
1137
|
overflow-y: auto;
|
|
1157
|
-
|
|
1138
|
+
flex: 1;
|
|
1158
1139
|
}
|
|
1159
1140
|
|
|
1160
1141
|
.flag-item {
|
|
1161
|
-
padding:
|
|
1142
|
+
padding: 10px 14px;
|
|
1162
1143
|
transition: background 0.1s ease;
|
|
1163
1144
|
}
|
|
1164
1145
|
|
|
@@ -1171,13 +1152,13 @@ y.styles = [
|
|
|
1171
1152
|
}
|
|
1172
1153
|
|
|
1173
1154
|
.flag-label {
|
|
1174
|
-
font-size:
|
|
1155
|
+
font-size: 12px;
|
|
1175
1156
|
font-weight: 500;
|
|
1176
|
-
margin-bottom:
|
|
1157
|
+
margin-bottom: 1px;
|
|
1177
1158
|
}
|
|
1178
1159
|
|
|
1179
1160
|
.flag-key {
|
|
1180
|
-
font-size:
|
|
1161
|
+
font-size: 10px;
|
|
1181
1162
|
color: var(--vf-text-muted);
|
|
1182
1163
|
font-family: 'SF Mono', 'Fira Code', 'Fira Mono', Menlo, Consolas,
|
|
1183
1164
|
monospace;
|
|
@@ -1187,7 +1168,7 @@ y.styles = [
|
|
|
1187
1168
|
display: flex;
|
|
1188
1169
|
align-items: center;
|
|
1189
1170
|
justify-content: space-between;
|
|
1190
|
-
gap:
|
|
1171
|
+
gap: 10px;
|
|
1191
1172
|
}
|
|
1192
1173
|
|
|
1193
1174
|
.flag-info {
|
|
@@ -1198,8 +1179,8 @@ y.styles = [
|
|
|
1198
1179
|
/* Toggle switch */
|
|
1199
1180
|
.toggle {
|
|
1200
1181
|
position: relative;
|
|
1201
|
-
width:
|
|
1202
|
-
height:
|
|
1182
|
+
width: 36px;
|
|
1183
|
+
height: 20px;
|
|
1203
1184
|
flex-shrink: 0;
|
|
1204
1185
|
}
|
|
1205
1186
|
|
|
@@ -1213,7 +1194,7 @@ y.styles = [
|
|
|
1213
1194
|
.toggle-track {
|
|
1214
1195
|
position: absolute;
|
|
1215
1196
|
inset: 0;
|
|
1216
|
-
border-radius:
|
|
1197
|
+
border-radius: 10px;
|
|
1217
1198
|
background: var(--vf-border);
|
|
1218
1199
|
cursor: pointer;
|
|
1219
1200
|
transition: background 0.2s ease;
|
|
@@ -1227,8 +1208,8 @@ y.styles = [
|
|
|
1227
1208
|
position: absolute;
|
|
1228
1209
|
top: 2px;
|
|
1229
1210
|
left: 2px;
|
|
1230
|
-
width:
|
|
1231
|
-
height:
|
|
1211
|
+
width: 16px;
|
|
1212
|
+
height: 16px;
|
|
1232
1213
|
border-radius: 50%;
|
|
1233
1214
|
background: white;
|
|
1234
1215
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
|
|
@@ -1237,7 +1218,7 @@ y.styles = [
|
|
|
1237
1218
|
}
|
|
1238
1219
|
|
|
1239
1220
|
.toggle input:checked ~ .toggle-thumb {
|
|
1240
|
-
transform: translateX(
|
|
1221
|
+
transform: translateX(16px);
|
|
1241
1222
|
}
|
|
1242
1223
|
|
|
1243
1224
|
/* Select dropdown */
|
|
@@ -1249,16 +1230,16 @@ y.styles = [
|
|
|
1249
1230
|
.select {
|
|
1250
1231
|
appearance: none;
|
|
1251
1232
|
-webkit-appearance: none;
|
|
1252
|
-
font-size:
|
|
1233
|
+
font-size: 12px;
|
|
1253
1234
|
font-family: var(--vf-font);
|
|
1254
|
-
padding:
|
|
1235
|
+
padding: 5px 26px 5px 8px;
|
|
1255
1236
|
border: 1px solid var(--vf-border);
|
|
1256
1237
|
border-radius: var(--vf-radius);
|
|
1257
1238
|
background: var(--vf-bg);
|
|
1258
1239
|
color: var(--vf-text);
|
|
1259
1240
|
cursor: pointer;
|
|
1260
1241
|
outline: none;
|
|
1261
|
-
min-width:
|
|
1242
|
+
min-width: 80px;
|
|
1262
1243
|
transition: border-color 0.15s ease;
|
|
1263
1244
|
}
|
|
1264
1245
|
|
|
@@ -1273,7 +1254,7 @@ y.styles = [
|
|
|
1273
1254
|
|
|
1274
1255
|
.select-chevron {
|
|
1275
1256
|
position: absolute;
|
|
1276
|
-
right:
|
|
1257
|
+
right: 6px;
|
|
1277
1258
|
top: 50%;
|
|
1278
1259
|
transform: translateY(-50%);
|
|
1279
1260
|
pointer-events: none;
|
|
@@ -1281,21 +1262,21 @@ y.styles = [
|
|
|
1281
1262
|
}
|
|
1282
1263
|
|
|
1283
1264
|
.select-chevron svg {
|
|
1284
|
-
width:
|
|
1285
|
-
height:
|
|
1265
|
+
width: 12px;
|
|
1266
|
+
height: 12px;
|
|
1286
1267
|
}
|
|
1287
1268
|
|
|
1288
1269
|
/* Footer */
|
|
1289
1270
|
.footer {
|
|
1290
|
-
padding:
|
|
1271
|
+
padding: 10px 14px;
|
|
1291
1272
|
border-top: 1px solid var(--vf-border);
|
|
1292
1273
|
flex-shrink: 0;
|
|
1293
1274
|
}
|
|
1294
1275
|
|
|
1295
1276
|
.reset-btn {
|
|
1296
1277
|
width: 100%;
|
|
1297
|
-
padding:
|
|
1298
|
-
font-size:
|
|
1278
|
+
padding: 6px 12px;
|
|
1279
|
+
font-size: 12px;
|
|
1299
1280
|
font-weight: 500;
|
|
1300
1281
|
font-family: var(--vf-font);
|
|
1301
1282
|
border: 1px solid var(--vf-border);
|
|
@@ -1312,33 +1293,33 @@ y.styles = [
|
|
|
1312
1293
|
}
|
|
1313
1294
|
|
|
1314
1295
|
.empty {
|
|
1315
|
-
padding:
|
|
1296
|
+
padding: 24px 14px;
|
|
1316
1297
|
text-align: center;
|
|
1317
1298
|
color: var(--vf-text-muted);
|
|
1318
|
-
font-size:
|
|
1299
|
+
font-size: 12px;
|
|
1319
1300
|
}
|
|
1320
1301
|
`
|
|
1321
1302
|
];
|
|
1322
1303
|
j([
|
|
1323
1304
|
H()
|
|
1324
|
-
],
|
|
1305
|
+
], $.prototype, "open", 2);
|
|
1325
1306
|
j([
|
|
1326
1307
|
H()
|
|
1327
|
-
],
|
|
1308
|
+
], $.prototype, "flags", 2);
|
|
1328
1309
|
j([
|
|
1329
1310
|
H()
|
|
1330
|
-
],
|
|
1311
|
+
], $.prototype, "configs", 2);
|
|
1331
1312
|
j([
|
|
1332
1313
|
H()
|
|
1333
|
-
],
|
|
1334
|
-
|
|
1314
|
+
], $.prototype, "darkMode", 2);
|
|
1315
|
+
$ = j([
|
|
1335
1316
|
N("vibe-toolbar")
|
|
1336
|
-
],
|
|
1317
|
+
], $);
|
|
1337
1318
|
export {
|
|
1338
1319
|
C as VibeFlagBoolean,
|
|
1339
1320
|
V as VibeFlagOption,
|
|
1340
1321
|
L as VibeFlagSelect,
|
|
1341
1322
|
ge as VibeFlags,
|
|
1342
|
-
|
|
1323
|
+
$ as VibeToolbar,
|
|
1343
1324
|
u as flagStore
|
|
1344
1325
|
};
|