@solhun/feedback-kit-web 0.11.0 → 0.12.0
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.cjs +46 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +46 -6
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -1180,7 +1180,7 @@ import {
|
|
|
1180
1180
|
} from "react";
|
|
1181
1181
|
|
|
1182
1182
|
// src/version.ts
|
|
1183
|
-
var VERSION = true ? "0.
|
|
1183
|
+
var VERSION = true ? "0.12.0" : "dev";
|
|
1184
1184
|
|
|
1185
1185
|
// src/dev-clipboard.ts
|
|
1186
1186
|
import { sourceFromElement } from "@solhun/feedback-kit-core";
|
|
@@ -1258,6 +1258,36 @@ function resolveDevMode(propValue, stored) {
|
|
|
1258
1258
|
if (stored !== null) return stored;
|
|
1259
1259
|
return propValue === true;
|
|
1260
1260
|
}
|
|
1261
|
+
var SETTINGS_FLAG = "fk-settings";
|
|
1262
|
+
var SESSION_KEY = "feedback-kit:settings-visible";
|
|
1263
|
+
function isSettingsRequested(search, session) {
|
|
1264
|
+
const store = session === void 0 ? sessionStorageOrNull() : session;
|
|
1265
|
+
let requested = false;
|
|
1266
|
+
try {
|
|
1267
|
+
requested = new URLSearchParams(search).get(SETTINGS_FLAG) === "1";
|
|
1268
|
+
} catch {
|
|
1269
|
+
requested = false;
|
|
1270
|
+
}
|
|
1271
|
+
if (requested) {
|
|
1272
|
+
try {
|
|
1273
|
+
store?.setItem(SESSION_KEY, "1");
|
|
1274
|
+
} catch {
|
|
1275
|
+
}
|
|
1276
|
+
return true;
|
|
1277
|
+
}
|
|
1278
|
+
try {
|
|
1279
|
+
return store?.getItem(SESSION_KEY) === "1";
|
|
1280
|
+
} catch {
|
|
1281
|
+
return false;
|
|
1282
|
+
}
|
|
1283
|
+
}
|
|
1284
|
+
function sessionStorageOrNull() {
|
|
1285
|
+
try {
|
|
1286
|
+
return globalThis.sessionStorage ?? null;
|
|
1287
|
+
} catch {
|
|
1288
|
+
return null;
|
|
1289
|
+
}
|
|
1290
|
+
}
|
|
1261
1291
|
|
|
1262
1292
|
// src/feedback-kit.tsx
|
|
1263
1293
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -1755,9 +1785,12 @@ function FeedbackKit(props) {
|
|
|
1755
1785
|
const [pickingState, setPickingState] = useState(INITIAL_PICKING_STATE);
|
|
1756
1786
|
const [announcement, setAnnouncement] = useState(null);
|
|
1757
1787
|
const [devMode, setDevMode] = useState(() => resolveDevMode(props.devMode, readDevPreference()));
|
|
1758
|
-
const [
|
|
1788
|
+
const [devToggleAvailable] = useState(
|
|
1759
1789
|
() => props.devMode === true || isDevSettingsHost(globalThis.location?.hostname ?? "")
|
|
1760
1790
|
);
|
|
1791
|
+
const [devSettingsAvailable] = useState(
|
|
1792
|
+
() => props.devMode === true || isDevSettingsHost(globalThis.location?.hostname ?? "") || isSettingsRequested(globalThis.location?.search ?? "")
|
|
1793
|
+
);
|
|
1761
1794
|
const [devSettingsOpen, setDevSettingsOpen] = useState(false);
|
|
1762
1795
|
const [connection, setConnection] = useState(null);
|
|
1763
1796
|
const [connectionState, setConnectionState] = useState("idle");
|
|
@@ -2187,6 +2220,7 @@ function FeedbackKit(props) {
|
|
|
2187
2220
|
{
|
|
2188
2221
|
type: "checkbox",
|
|
2189
2222
|
checked: devMode,
|
|
2223
|
+
disabled: !devToggleAvailable,
|
|
2190
2224
|
onChange: (event) => toggleDevMode(event.currentTarget.checked),
|
|
2191
2225
|
style: { marginTop: 3 }
|
|
2192
2226
|
}
|
|
@@ -2244,11 +2278,17 @@ function FeedbackKit(props) {
|
|
|
2244
2278
|
]
|
|
2245
2279
|
}
|
|
2246
2280
|
),
|
|
2247
|
-
/* @__PURE__ */
|
|
2248
|
-
"\
|
|
2281
|
+
/* @__PURE__ */ jsx("p", { style: { margin: "12px 0 0", color: TOKENS.muted, fontSize: 12 }, children: devToggleAvailable ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2282
|
+
"\uAC1C\uBC1C\uC6A9 \uBAA8\uB4DC\uB294 \uB85C\uCEEC(",
|
|
2249
2283
|
/* @__PURE__ */ jsx("code", { children: "localhost" }),
|
|
2250
|
-
")\uC5D0\uC11C\uB9CC \
|
|
2251
|
-
] }),
|
|
2284
|
+
")\uC5D0\uC11C\uB9CC \uCF24 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uBC30\uD3EC\uB41C \uD654\uBA74\uC5D0\uC11C \uC2E4\uC0AC\uC6A9\uC790\uAC00 \uCF1C\uBA74 \uADF8 \uC0AC\uB78C \uC81C\uBCF4\uAC00 \uC5B4\uB514\uC5D0\uB3C4 \uC548 \uB0A8\uAE30 \uB54C\uBB38\uC785\uB2C8\uB2E4."
|
|
2285
|
+
] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2286
|
+
"\uC5EC\uAE30\uC11C\uB294 ",
|
|
2287
|
+
/* @__PURE__ */ jsx("b", { children: "\uBCF4\uAE30\uB9CC" }),
|
|
2288
|
+
" \uB429\uB2C8\uB2E4. \uAC1C\uBC1C\uC6A9 \uBAA8\uB4DC\uB294 \uB85C\uCEEC(",
|
|
2289
|
+
/* @__PURE__ */ jsx("code", { children: "localhost" }),
|
|
2290
|
+
")\uC5D0\uC11C\uB9CC \uCF24 \uC218 \uC788\uC2B5\uB2C8\uB2E4 \u2014 \uC2E4\uC0AC\uC6A9\uC790\uAC00 \uCF1C\uBA74 \uADF8 \uC0AC\uB78C \uC81C\uBCF4\uAC00 \uC5B4\uB514\uC5D0\uB3C4 \uC548 \uB0A8\uAE30 \uB54C\uBB38\uC785\uB2C8\uB2E4."
|
|
2291
|
+
] }) }),
|
|
2252
2292
|
/* @__PURE__ */ jsx("div", { style: { display: "flex", justifyContent: "flex-end", marginTop: 12 }, children: /* @__PURE__ */ jsx("button", { type: "button", style: baseButton, onClick: () => setDevSettingsOpen(false), children: "\uB2EB\uAE30" }) })
|
|
2253
2293
|
]
|
|
2254
2294
|
}
|