pulse-feedback-widget 1.3.1 → 2.0.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/PulseWidget.d.ts +3 -2
- package/dist/PulseWidget.d.ts.map +1 -1
- package/dist/PulseWidget.mjs +26 -15
- package/dist/PulseWidget.mjs.map +1 -1
- package/dist/components/FeedbackPanel.d.ts +7 -1
- package/dist/components/FeedbackPanel.d.ts.map +1 -1
- package/dist/components/FeedbackPanel.mjs +9 -2
- package/dist/components/FeedbackPanel.mjs.map +1 -1
- package/dist/components/FeedbackPanel.module.css.mjs +1 -1
- package/dist/components/TriggerButton.d.ts +6 -1
- package/dist/components/TriggerButton.d.ts.map +1 -1
- package/dist/components/TriggerButton.mjs +9 -2
- package/dist/components/TriggerButton.mjs.map +1 -1
- package/dist/components/TriggerButton.module.css.mjs +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/types.d.ts +16 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.mjs.map +1 -1
- package/package.json +1 -1
package/dist/PulseWidget.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { PulseWidgetProps, PulseWidgetHandle } from './types';
|
|
3
|
+
export declare const PulseWidget: React.ForwardRefExoticComponent<PulseWidgetProps & React.RefAttributes<PulseWidgetHandle>>;
|
|
3
4
|
//# sourceMappingURL=PulseWidget.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PulseWidget.d.ts","sourceRoot":"","sources":["../src/PulseWidget.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PulseWidget.d.ts","sourceRoot":"","sources":["../src/PulseWidget.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA6G,MAAM,OAAO,CAAC;AAClI,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAanE,eAAO,MAAM,WAAW,4FA4HtB,CAAC"}
|
package/dist/PulseWidget.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
3
|
-
import { lazy, useState, useMemo,
|
|
3
|
+
import { lazy, forwardRef, useState, useMemo, useCallback, useImperativeHandle, useEffect, useRef, Suspense } from 'react';
|
|
4
4
|
import { getDeviceId } from './lib/device.mjs';
|
|
5
5
|
import { createHttpClient } from './lib/http.mjs';
|
|
6
6
|
import { checkUnreadReplies } from './lib/api.mjs';
|
|
@@ -9,21 +9,33 @@ import { TriggerButton } from './components/TriggerButton.mjs';
|
|
|
9
9
|
|
|
10
10
|
const FeedbackPanel = lazy(() => import('./components/FeedbackPanel.mjs').then((m) => ({ default: m.FeedbackPanel })));
|
|
11
11
|
const DEFAULT_API_URL = 'https://10-pulse.vercel.app';
|
|
12
|
-
function PulseWidget({
|
|
12
|
+
const PulseWidget = forwardRef(function PulseWidget({ apiKey, apiUrl = DEFAULT_API_URL, position = 'bottom-right', offset, hideDefaultLauncher = false, accentColor = '#6366F1', greeting = 'Hi! \u{1F44B}', placeholder = "What's on your mind?", hideOnPaths = [], collectEmail = true, collectDiagnostics = false, userId, metadata = {}, onOpen, onClose: onCloseProp, onSubmit, }, ref) {
|
|
13
13
|
const [isOpen, setIsOpen] = useState(false);
|
|
14
14
|
const [hasNotification, setHasNotification] = useState(false);
|
|
15
15
|
const [hidden, setHidden] = useState(false);
|
|
16
16
|
// Prop validation
|
|
17
|
-
if (!projectId || typeof projectId !== 'string') {
|
|
18
|
-
console.error('[Pulse] Invalid projectId: must be a non-empty string');
|
|
19
|
-
return null;
|
|
20
|
-
}
|
|
21
17
|
if (!apiKey || typeof apiKey !== 'string') {
|
|
22
18
|
console.error('[Pulse] Invalid apiKey: must be a non-empty string');
|
|
23
19
|
return null;
|
|
24
20
|
}
|
|
25
21
|
const deviceId = useMemo(() => getDeviceId(), []);
|
|
26
22
|
const client = useMemo(() => createHttpClient(apiUrl, apiKey, deviceId, userId), [apiUrl, apiKey, deviceId, userId]);
|
|
23
|
+
// Stable open/close callbacks
|
|
24
|
+
const open = useCallback(() => { setIsOpen(true); onOpen?.(); }, [onOpen]);
|
|
25
|
+
const close = useCallback(() => { setIsOpen(false); setHasNotification(false); onCloseProp?.(); }, [onCloseProp]);
|
|
26
|
+
// Imperative handle (React ref API)
|
|
27
|
+
useImperativeHandle(ref, () => ({
|
|
28
|
+
open,
|
|
29
|
+
close,
|
|
30
|
+
isOpen: () => isOpen,
|
|
31
|
+
}), [open, close, isOpen]);
|
|
32
|
+
// Global API (window.Pulse)
|
|
33
|
+
useEffect(() => {
|
|
34
|
+
if (typeof window === 'undefined')
|
|
35
|
+
return;
|
|
36
|
+
window.Pulse = { open, close, isOpen: () => isOpen };
|
|
37
|
+
return () => { delete window.Pulse; };
|
|
38
|
+
}, [open, close, isOpen]);
|
|
27
39
|
// Diagnostics log collector
|
|
28
40
|
const logCollectorRef = useRef(null);
|
|
29
41
|
useEffect(() => {
|
|
@@ -57,15 +69,14 @@ function PulseWidget({ projectId, apiKey, apiUrl = DEFAULT_API_URL, position = '
|
|
|
57
69
|
}, [client, deviceId]);
|
|
58
70
|
if (hidden)
|
|
59
71
|
return null;
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
}
|
|
72
|
+
// Panel bottom offset calculation
|
|
73
|
+
// 56 = 48px trigger height + 8px gap
|
|
74
|
+
const triggerBottom = offset?.bottom;
|
|
75
|
+
const panelBottomOffset = triggerBottom !== undefined
|
|
76
|
+
? (hideDefaultLauncher ? triggerBottom : triggerBottom + 56)
|
|
77
|
+
: (hideDefaultLauncher ? 16 : undefined);
|
|
78
|
+
return (jsxs(Fragment, { children: [!isOpen && !hideDefaultLauncher && (jsx(TriggerButton, { onClick: open, position: position, accentColor: accentColor, hasNotification: hasNotification, offset: offset })), isOpen && (jsx(Suspense, { fallback: null, children: jsx(FeedbackPanel, { client: client, accentColor: accentColor, greeting: greeting, placeholder: placeholder, collectEmail: collectEmail, logCollectorRef: logCollectorRef, metadata: metadata, position: position, offset: offset, panelBottomOffset: panelBottomOffset, onClose: close, onSubmit: onSubmit }) }))] }));
|
|
79
|
+
});
|
|
69
80
|
|
|
70
81
|
export { PulseWidget };
|
|
71
82
|
//# sourceMappingURL=PulseWidget.mjs.map
|
package/dist/PulseWidget.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PulseWidget.mjs","sources":["../src/PulseWidget.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;AAUA;AAIA;
|
|
1
|
+
{"version":3,"file":"PulseWidget.mjs","sources":["../src/PulseWidget.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;AAUA;AAIA;AAEO;;;;;;AAwBH;AACA;;AAGF;AACA;;;AAOA;;AAGA;;;AAGE;;;;;;AAMA;;;;AAKF;;;AAGI;;AAEF;AACE;AACA;AACF;AACF;;;;;AAKE;AACA;AACF;;;AAIE;;;AAEA;AACE;AACA;;;AAEF;;AAEF;AAEA;AAAY;;;AAIZ;AACA;AACE;AACA;;AAkCJ;;"}
|
|
@@ -10,9 +10,15 @@ interface FeedbackPanelProps {
|
|
|
10
10
|
logCollectorRef: React.RefObject<LogCollector | null>;
|
|
11
11
|
metadata: Record<string, unknown>;
|
|
12
12
|
position: 'bottom-right' | 'bottom-left';
|
|
13
|
+
offset?: {
|
|
14
|
+
bottom?: number;
|
|
15
|
+
left?: number;
|
|
16
|
+
right?: number;
|
|
17
|
+
};
|
|
18
|
+
panelBottomOffset?: number;
|
|
13
19
|
onClose: () => void;
|
|
14
20
|
onSubmit?: (threadId: string) => void;
|
|
15
21
|
}
|
|
16
|
-
export declare function FeedbackPanel({ client, accentColor, greeting, placeholder, collectEmail, logCollectorRef, metadata, position, onClose, onSubmit, }: FeedbackPanelProps): import("react/jsx-runtime").JSX.Element;
|
|
22
|
+
export declare function FeedbackPanel({ client, accentColor, greeting, placeholder, collectEmail, logCollectorRef, metadata, position, offset, panelBottomOffset, onClose, onSubmit, }: FeedbackPanelProps): import("react/jsx-runtime").JSX.Element;
|
|
17
23
|
export {};
|
|
18
24
|
//# sourceMappingURL=FeedbackPanel.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeedbackPanel.d.ts","sourceRoot":"","sources":["../../src/components/FeedbackPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAMzD,UAAU,kBAAkB;IAC1B,MAAM,EAAE,UAAU,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IACtD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,QAAQ,EAAE,cAAc,GAAG,aAAa,CAAC;IACzC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC;AAID,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,WAAW,EACX,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,eAAe,EACf,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,QAAQ,GACT,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"FeedbackPanel.d.ts","sourceRoot":"","sources":["../../src/components/FeedbackPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAMzD,UAAU,kBAAkB;IAC1B,MAAM,EAAE,UAAU,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IACtD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,QAAQ,EAAE,cAAc,GAAG,aAAa,CAAC;IACzC,MAAM,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC;AAID,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,WAAW,EACX,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,eAAe,EACf,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,iBAAiB,EACjB,OAAO,EACP,QAAQ,GACT,EAAE,kBAAkB,2CA2GpB"}
|
|
@@ -5,7 +5,7 @@ import { ThreadList } from './ThreadList.mjs';
|
|
|
5
5
|
import { ConversationView } from './ConversationView.mjs';
|
|
6
6
|
import styles from './FeedbackPanel.module.css.mjs';
|
|
7
7
|
|
|
8
|
-
function FeedbackPanel({ client, accentColor, greeting, placeholder, collectEmail, logCollectorRef, metadata, position, onClose, onSubmit, }) {
|
|
8
|
+
function FeedbackPanel({ client, accentColor, greeting, placeholder, collectEmail, logCollectorRef, metadata, position, offset, panelBottomOffset, onClose, onSubmit, }) {
|
|
9
9
|
const [tab, setTab] = useState('new');
|
|
10
10
|
const [selectedThread, setSelectedThread] = useState(null);
|
|
11
11
|
const [isDark, setIsDark] = useState(false);
|
|
@@ -25,6 +25,13 @@ function FeedbackPanel({ client, accentColor, greeting, placeholder, collectEmai
|
|
|
25
25
|
}, [onClose]);
|
|
26
26
|
const posClass = position === 'bottom-left' ? styles.bottomLeft : styles.bottomRight;
|
|
27
27
|
const themeClass = isDark ? styles.panelDark : styles.panelLight;
|
|
28
|
+
const inlinePos = {};
|
|
29
|
+
if (panelBottomOffset !== undefined)
|
|
30
|
+
inlinePos.bottom = panelBottomOffset;
|
|
31
|
+
if (position === 'bottom-right' && offset?.right !== undefined)
|
|
32
|
+
inlinePos.right = offset.right;
|
|
33
|
+
if (position === 'bottom-left' && offset?.left !== undefined)
|
|
34
|
+
inlinePos.left = offset.left;
|
|
28
35
|
function renderBody() {
|
|
29
36
|
if (selectedThread) {
|
|
30
37
|
return (jsx(ConversationView, { client: client, thread: selectedThread, accentColor: accentColor, onBack: () => setSelectedThread(null) }));
|
|
@@ -34,7 +41,7 @@ function FeedbackPanel({ client, accentColor, greeting, placeholder, collectEmai
|
|
|
34
41
|
}
|
|
35
42
|
return (jsx(ThreadList, { client: client, onSelectThread: (thread) => setSelectedThread(thread) }));
|
|
36
43
|
}
|
|
37
|
-
return (jsxs(Fragment, { children: [jsx("div", { className: styles.overlay, onClick: onClose }), jsxs("div", { className: `${styles.panel} ${posClass} ${themeClass}`, style: { '--pulse-accent': accentColor }, onClick: (e) => e.stopPropagation(), children: [jsxs("div", { className: styles.header, children: [jsx("p", { className: styles.greeting, children: greeting }), jsx("button", { type: "button", className: styles.closeBtn, onClick: onClose, "aria-label": "Close", children: jsxs("svg", { className: styles.closeIcon, viewBox: "0 0 24 24", children: [jsx("line", { x1: "18", y1: "6", x2: "6", y2: "18" }), jsx("line", { x1: "6", y1: "6", x2: "18", y2: "18" })] }) })] }), !selectedThread && (jsxs("div", { className: styles.tabs, children: [jsx("button", { type: "button", className: `${styles.tab} ${tab === 'new' ? styles.tabActive : ''}`, style: tab === 'new' ? { borderBottomColor: accentColor } : undefined, onClick: () => setTab('new'), children: "New" }), jsx("button", { type: "button", className: `${styles.tab} ${tab === 'threads' ? styles.tabActive : ''}`, style: tab === 'threads' ? { borderBottomColor: accentColor } : undefined, onClick: () => setTab('threads'), children: "My Threads" })] })), jsx("div", { className: styles.body, children: renderBody() })] })] }));
|
|
44
|
+
return (jsxs(Fragment, { children: [jsx("div", { className: styles.overlay, onClick: onClose }), jsxs("div", { className: `${styles.panel} ${posClass} ${themeClass}`, style: { '--pulse-accent': accentColor, ...inlinePos }, onClick: (e) => e.stopPropagation(), children: [jsxs("div", { className: styles.header, children: [jsx("p", { className: styles.greeting, children: greeting }), jsx("button", { type: "button", className: styles.closeBtn, onClick: onClose, "aria-label": "Close", children: jsxs("svg", { className: styles.closeIcon, viewBox: "0 0 24 24", children: [jsx("line", { x1: "18", y1: "6", x2: "6", y2: "18" }), jsx("line", { x1: "6", y1: "6", x2: "18", y2: "18" })] }) })] }), !selectedThread && (jsxs("div", { className: styles.tabs, children: [jsx("button", { type: "button", className: `${styles.tab} ${tab === 'new' ? styles.tabActive : ''}`, style: tab === 'new' ? { borderBottomColor: accentColor } : undefined, onClick: () => setTab('new'), children: "New" }), jsx("button", { type: "button", className: `${styles.tab} ${tab === 'threads' ? styles.tabActive : ''}`, style: tab === 'threads' ? { borderBottomColor: accentColor } : undefined, onClick: () => setTab('threads'), children: "My Threads" })] })), jsx("div", { className: styles.body, children: renderBody() })] })] }));
|
|
38
45
|
}
|
|
39
46
|
|
|
40
47
|
export { FeedbackPanel };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeedbackPanel.mjs","sources":["../../src/components/FeedbackPanel.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs","_Fragment"],"mappings":";;;;;;;
|
|
1
|
+
{"version":3,"file":"FeedbackPanel.mjs","sources":["../../src/components/FeedbackPanel.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs","_Fragment"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import styleInject from '../node_modules/style-inject/dist/style-inject.es.mjs';
|
|
2
2
|
|
|
3
|
-
var css_248z = ".FeedbackPanel-module_overlay__7EKR-{inset:0;position:fixed;z-index:9999}.FeedbackPanel-module_panel__kSC1b{animation:FeedbackPanel-module_slideUp__HxbOr .2s cubic-bezier(.22,1,.36,1);border-radius:16px;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;max-height:520px;overflow:hidden;position:fixed;width:380px;z-index:10000}.FeedbackPanel-module_panelLight__KDQJ4{--pulse-bg:#fff;--pulse-bg-secondary:#f9fafb;--pulse-bg-hover:#f3f4f6;--pulse-text-primary:#111827;--pulse-text-secondary:#6b7280;--pulse-text-tertiary:#9ca3af;--pulse-border:#e5e7eb;--pulse-border-strong:#d1d5db;background:#fff;box-shadow:0 8px 40px rgba(0,0,0,.12);color:#111827}.FeedbackPanel-module_panelDark__EUh4H{--pulse-bg:#1a1a2e;--pulse-bg-secondary:#16162a;--pulse-bg-hover:#22223a;--pulse-text-primary:#e5e7eb;--pulse-text-secondary:#9ca3af;--pulse-text-tertiary:#6b7280;--pulse-border:#2a2a40;--pulse-border-strong:#3a3a55;background:#1a1a2e;box-shadow:0 8px 40px rgba(0,0,0,.32);color:#e5e7eb}.FeedbackPanel-module_bottomRight__331Vd{bottom:72px;right:16px}.FeedbackPanel-module_bottomLeft__W1rlu{bottom:72px;left:16px}.FeedbackPanel-module_header__yWwBD{align-items:center;border-bottom:1px solid var(--pulse-border,#e5e7eb);display:flex;flex-shrink:0;justify-content:space-between;padding:14px 16px}.FeedbackPanel-module_greeting__DLD1g{color:var(--pulse-text-primary,#111827);font-size:15px;font-weight:600;margin:0}.FeedbackPanel-module_closeBtn__HdntP{align-items:center;background:transparent;border:none;border-radius:6px;color:var(--pulse-text-secondary,#6b7280);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:background .12s ease;width:28px}.FeedbackPanel-module_closeBtn__HdntP:hover{background:var(--pulse-bg-hover,#f3f4f6)}.FeedbackPanel-module_closeIcon__eM6qt{stroke:currentColor;stroke-width:2;fill:none;height:18px;width:18px}.FeedbackPanel-module_tabs__-Tq3f{border-bottom:1px solid var(--pulse-border,#e5e7eb);display:flex;flex-shrink:0}.FeedbackPanel-module_tab__MgsxB{background:transparent;border:none;border-bottom:2px solid transparent;color:var(--pulse-text-secondary,#6b7280);cursor:pointer;flex:1;font-family:inherit;font-size:13px;font-weight:500;padding:10px;transition:all .12s ease}.FeedbackPanel-module_tabActive__cSus0{border-bottom-color:var(--pulse-accent,#6366f1);color:var(--pulse-text-primary,#111827)}.FeedbackPanel-module_body__hp-M0{flex:1;overflow-y:auto;padding:16px}@keyframes FeedbackPanel-module_slideUp__HxbOr{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:479px){.FeedbackPanel-module_panel__kSC1b{border-radius:16px 16px 16px 16px;bottom:16px!important;left:16px!important;max-height:70vh;right:16px!important;width:calc(100vw - 32px)}}@media (prefers-reduced-motion:reduce){.FeedbackPanel-module_panel__kSC1b{animation:none}}\n/*# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
var css_248z = ".FeedbackPanel-module_overlay__7EKR-{inset:0;position:fixed;z-index:9999}.FeedbackPanel-module_panel__kSC1b{animation:FeedbackPanel-module_slideUp__HxbOr .2s cubic-bezier(.22,1,.36,1);border-radius:16px;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;max-height:520px;overflow:hidden;position:fixed;width:380px;z-index:10000}.FeedbackPanel-module_panelLight__KDQJ4{--pulse-bg:#fff;--pulse-bg-secondary:#f9fafb;--pulse-bg-hover:#f3f4f6;--pulse-text-primary:#111827;--pulse-text-secondary:#6b7280;--pulse-text-tertiary:#9ca3af;--pulse-border:#e5e7eb;--pulse-border-strong:#d1d5db;background:#fff;box-shadow:0 8px 40px rgba(0,0,0,.12);color:#111827}.FeedbackPanel-module_panelDark__EUh4H{--pulse-bg:#1a1a2e;--pulse-bg-secondary:#16162a;--pulse-bg-hover:#22223a;--pulse-text-primary:#e5e7eb;--pulse-text-secondary:#9ca3af;--pulse-text-tertiary:#6b7280;--pulse-border:#2a2a40;--pulse-border-strong:#3a3a55;background:#1a1a2e;box-shadow:0 8px 40px rgba(0,0,0,.32);color:#e5e7eb}.FeedbackPanel-module_bottomRight__331Vd{bottom:72px;right:var(--pulse-offset-right,16px)}.FeedbackPanel-module_bottomLeft__W1rlu{bottom:72px;left:var(--pulse-offset-left,16px)}.FeedbackPanel-module_header__yWwBD{align-items:center;border-bottom:1px solid var(--pulse-border,#e5e7eb);display:flex;flex-shrink:0;justify-content:space-between;padding:14px 16px}.FeedbackPanel-module_greeting__DLD1g{color:var(--pulse-text-primary,#111827);font-size:15px;font-weight:600;margin:0}.FeedbackPanel-module_closeBtn__HdntP{align-items:center;background:transparent;border:none;border-radius:6px;color:var(--pulse-text-secondary,#6b7280);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:background .12s ease;width:28px}.FeedbackPanel-module_closeBtn__HdntP:hover{background:var(--pulse-bg-hover,#f3f4f6)}.FeedbackPanel-module_closeIcon__eM6qt{stroke:currentColor;stroke-width:2;fill:none;height:18px;width:18px}.FeedbackPanel-module_tabs__-Tq3f{border-bottom:1px solid var(--pulse-border,#e5e7eb);display:flex;flex-shrink:0}.FeedbackPanel-module_tab__MgsxB{background:transparent;border:none;border-bottom:2px solid transparent;color:var(--pulse-text-secondary,#6b7280);cursor:pointer;flex:1;font-family:inherit;font-size:13px;font-weight:500;padding:10px;transition:all .12s ease}.FeedbackPanel-module_tabActive__cSus0{border-bottom-color:var(--pulse-accent,#6366f1);color:var(--pulse-text-primary,#111827)}.FeedbackPanel-module_body__hp-M0{flex:1;overflow-y:auto;padding:16px}@keyframes FeedbackPanel-module_slideUp__HxbOr{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:479px){.FeedbackPanel-module_panel__kSC1b{border-radius:16px 16px 16px 16px;bottom:16px!important;left:16px!important;max-height:70vh;right:16px!important;width:calc(100vw - 32px)}}@media (prefers-reduced-motion:reduce){.FeedbackPanel-module_panel__kSC1b{animation:none}}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkZlZWRiYWNrUGFuZWwubW9kdWxlLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxQ0FFRSxPQUFRLENBRFIsY0FBZSxDQUVmLFlBQ0YsQ0FFQSxtQ0FXRSwyRUFBdUQsQ0FOdkQsa0JBQW1CLENBRW5CLFlBQWEsQ0FDYixxQkFBc0IsQ0FDdEIsNEZBQ3FDLENBTnJDLGdCQUFpQixDQUVqQixlQUFnQixDQUxoQixjQUFlLENBRWYsV0FBWSxDQURaLGFBVUYsQ0FFQSx3Q0FJRSxlQUFtQixDQUNuQiw0QkFBNkIsQ0FDN0Isd0JBQXlCLENBQ3pCLDRCQUE2QixDQUM3Qiw4QkFBK0IsQ0FDL0IsNkJBQThCLENBQzlCLHNCQUF1QixDQUN2Qiw2QkFBOEIsQ0FWOUIsZUFBbUIsQ0FFbkIscUNBQTBDLENBRDFDLGFBVUYsQ0FFQSx1Q0FJRSxrQkFBbUIsQ0FDbkIsNEJBQTZCLENBQzdCLHdCQUF5QixDQUN6Qiw0QkFBNkIsQ0FDN0IsOEJBQStCLENBQy9CLDZCQUE4QixDQUM5QixzQkFBdUIsQ0FDdkIsNkJBQThCLENBVjlCLGtCQUFtQixDQUVuQixxQ0FBMEMsQ0FEMUMsYUFVRixDQUVBLHlDQUNFLFdBQVksQ0FDWixvQ0FDRixDQUVBLHdDQUNFLFdBQVksQ0FDWixrQ0FDRixDQUVBLG9DQUVFLGtCQUFtQixDQUduQixtREFBcUQsQ0FKckQsWUFBYSxDQUtiLGFBQWMsQ0FIZCw2QkFBOEIsQ0FDOUIsaUJBR0YsQ0FFQSxzQ0FJRSx1Q0FBeUMsQ0FIekMsY0FBZSxDQUNmLGVBQWdCLENBQ2hCLFFBRUYsQ0FFQSxzQ0FRRSxrQkFBbUIsQ0FIbkIsc0JBQXVCLENBRHZCLFdBQVksQ0FEWixpQkFBa0IsQ0FPbEIseUNBQTJDLENBSjNDLGNBQWUsQ0FDZixZQUFhLENBTGIsV0FBWSxDQU9aLHNCQUF1QixDQUd2QixTQUFVLENBRFYsK0JBQWlDLENBVmpDLFVBWUYsQ0FFQSw0Q0FDRSx3Q0FDRixDQUVBLHVDQUdFLG1CQUFvQixDQUNwQixjQUFlLENBQ2YsU0FBVSxDQUhWLFdBQVksQ0FEWixVQUtGLENBRUEsa0NBRUUsbURBQXFELENBRHJELFlBQWEsQ0FFYixhQUNGLENBRUEsaUNBSUUsc0JBQXVCLENBT3ZCLFdBQW9DLENBQXBDLG1DQUFvQyxDQUhwQyx5Q0FBMkMsQ0FIM0MsY0FBZSxDQUpmLE1BQU8sQ0FTUCxtQkFBb0IsQ0FKcEIsY0FBZSxDQUNmLGVBQWdCLENBTGhCLFlBQWEsQ0FPYix3QkFHRixDQUVBLHVDQUNFLCtDQUFpRCxDQUNqRCx1Q0FDRixDQUVBLGtDQUNFLE1BQU8sQ0FDUCxlQUFnQixDQUNoQixZQUNGLENBRUEsK0NBQ0UsR0FDRSxTQUFVLENBQ1YseUJBQ0YsQ0FDQSxHQUNFLFNBQVUsQ0FDVix1QkFDRixDQUNGLENBR0EseUJBQ0UsbUNBTUUsaUNBQWtDLENBSGxDLHFCQUF1QixDQUN2QixtQkFBcUIsQ0FGckIsZUFBZ0IsQ0FHaEIsb0JBQXNCLENBSnRCLHdCQU1GLENBQ0YsQ0FFQSx1Q0FDRSxtQ0FDRSxjQUNGLENBQ0YiLCJmaWxlIjoiRmVlZGJhY2tQYW5lbC5tb2R1bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLm92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGluc2V0OiAwO1xuICB6LWluZGV4OiA5OTk5O1xufVxuXG4ucGFuZWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDAwO1xuICB3aWR0aDogMzgwcHg7XG4gIG1heC1oZWlnaHQ6IDUyMHB4O1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnU2Vnb2UgVUknLCBSb2JvdG8sXG4gICAgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGFuaW1hdGlvbjogc2xpZGVVcCAyMDBtcyBjdWJpYy1iZXppZXIoMC4yMiwgMSwgMC4zNiwgMSk7XG59XG5cbi5wYW5lbExpZ2h0IHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgY29sb3I6ICMxMTE4Mjc7XG4gIGJveC1zaGFkb3c6IDAgOHB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgLS1wdWxzZS1iZzogI2ZmZmZmZjtcbiAgLS1wdWxzZS1iZy1zZWNvbmRhcnk6ICNmOWZhZmI7XG4gIC0tcHVsc2UtYmctaG92ZXI6ICNmM2Y0ZjY7XG4gIC0tcHVsc2UtdGV4dC1wcmltYXJ5OiAjMTExODI3O1xuICAtLXB1bHNlLXRleHQtc2Vjb25kYXJ5OiAjNmI3MjgwO1xuICAtLXB1bHNlLXRleHQtdGVydGlhcnk6ICM5Y2EzYWY7XG4gIC0tcHVsc2UtYm9yZGVyOiAjZTVlN2ViO1xuICAtLXB1bHNlLWJvcmRlci1zdHJvbmc6ICNkMWQ1ZGI7XG59XG5cbi5wYW5lbERhcmsge1xuICBiYWNrZ3JvdW5kOiAjMWExYTJlO1xuICBjb2xvcjogI2U1ZTdlYjtcbiAgYm94LXNoYWRvdzogMCA4cHggNDBweCByZ2JhKDAsIDAsIDAsIDAuMzIpO1xuICAtLXB1bHNlLWJnOiAjMWExYTJlO1xuICAtLXB1bHNlLWJnLXNlY29uZGFyeTogIzE2MTYyYTtcbiAgLS1wdWxzZS1iZy1ob3ZlcjogIzIyMjIzYTtcbiAgLS1wdWxzZS10ZXh0LXByaW1hcnk6ICNlNWU3ZWI7XG4gIC0tcHVsc2UtdGV4dC1zZWNvbmRhcnk6ICM5Y2EzYWY7XG4gIC0tcHVsc2UtdGV4dC10ZXJ0aWFyeTogIzZiNzI4MDtcbiAgLS1wdWxzZS1ib3JkZXI6ICMyYTJhNDA7XG4gIC0tcHVsc2UtYm9yZGVyLXN0cm9uZzogIzNhM2E1NTtcbn1cblxuLmJvdHRvbVJpZ2h0IHtcbiAgYm90dG9tOiA3MnB4O1xuICByaWdodDogdmFyKC0tcHVsc2Utb2Zmc2V0LXJpZ2h0LCAxNnB4KTtcbn1cblxuLmJvdHRvbUxlZnQge1xuICBib3R0b206IDcycHg7XG4gIGxlZnQ6IHZhcigtLXB1bHNlLW9mZnNldC1sZWZ0LCAxNnB4KTtcbn1cblxuLmhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMTRweCAxNnB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tcHVsc2UtYm9yZGVyLCAjZTVlN2ViKTtcbiAgZmxleC1zaHJpbms6IDA7XG59XG5cbi5ncmVldGluZyB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogdmFyKC0tcHVsc2UtdGV4dC1wcmltYXJ5LCAjMTExODI3KTtcbn1cblxuLmNsb3NlQnRuIHtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMjhweDtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tcHVsc2UtdGV4dC1zZWNvbmRhcnksICM2YjcyODApO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDEyMG1zIGVhc2U7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5jbG9zZUJ0bjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXB1bHNlLWJnLWhvdmVyLCAjZjNmNGY2KTtcbn1cblxuLmNsb3NlSWNvbiB7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIHN0cm9rZTogY3VycmVudENvbG9yO1xuICBzdHJva2Utd2lkdGg6IDI7XG4gIGZpbGw6IG5vbmU7XG59XG5cbi50YWJzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXB1bHNlLWJvcmRlciwgI2U1ZTdlYik7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4udGFiIHtcbiAgZmxleDogMTtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiB2YXIoLS1wdWxzZS10ZXh0LXNlY29uZGFyeSwgIzZiNzI4MCk7XG4gIHRyYW5zaXRpb246IGFsbCAxMjBtcyBlYXNlO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4udGFiQWN0aXZlIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tcHVsc2UtYWNjZW50LCAjNjM2NmYxKTtcbiAgY29sb3I6IHZhcigtLXB1bHNlLXRleHQtcHJpbWFyeSwgIzExMTgyNyk7XG59XG5cbi5ib2R5IHtcbiAgZmxleDogMTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcGFkZGluZzogMTZweDtcbn1cblxuQGtleWZyYW1lcyBzbGlkZVVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuLyogTW9iaWxlOiBmdWxsLXdpZHRoIGJvdHRvbSBzaGVldCAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gIC5wYW5lbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwdncgLSAzMnB4KTtcbiAgICBtYXgtaGVpZ2h0OiA3MHZoO1xuICAgIGJvdHRvbTogMTZweCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDE2cHggIWltcG9ydGFudDtcbiAgICByaWdodDogMTZweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHggMTZweCAxNnB4IDE2cHg7XG4gIH1cbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnBhbmVsIHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gIH1cbn1cbiJdfQ== */";
|
|
4
4
|
var styles = {"overlay":"FeedbackPanel-module_overlay__7EKR-","panel":"FeedbackPanel-module_panel__kSC1b","panelLight":"FeedbackPanel-module_panelLight__KDQJ4","panelDark":"FeedbackPanel-module_panelDark__EUh4H","bottomRight":"FeedbackPanel-module_bottomRight__331Vd","bottomLeft":"FeedbackPanel-module_bottomLeft__W1rlu","header":"FeedbackPanel-module_header__yWwBD","greeting":"FeedbackPanel-module_greeting__DLD1g","closeBtn":"FeedbackPanel-module_closeBtn__HdntP","closeIcon":"FeedbackPanel-module_closeIcon__eM6qt","tabs":"FeedbackPanel-module_tabs__-Tq3f","tab":"FeedbackPanel-module_tab__MgsxB","tabActive":"FeedbackPanel-module_tabActive__cSus0","body":"FeedbackPanel-module_body__hp-M0"};
|
|
5
5
|
styleInject(css_248z);
|
|
6
6
|
|
|
@@ -3,7 +3,12 @@ interface TriggerButtonProps {
|
|
|
3
3
|
position: 'bottom-right' | 'bottom-left';
|
|
4
4
|
accentColor: string;
|
|
5
5
|
hasNotification: boolean;
|
|
6
|
+
offset?: {
|
|
7
|
+
bottom?: number;
|
|
8
|
+
left?: number;
|
|
9
|
+
right?: number;
|
|
10
|
+
};
|
|
6
11
|
}
|
|
7
|
-
export declare function TriggerButton({ onClick, position, accentColor, hasNotification }: TriggerButtonProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export declare function TriggerButton({ onClick, position, accentColor, hasNotification, offset }: TriggerButtonProps): import("react/jsx-runtime").JSX.Element;
|
|
8
13
|
export {};
|
|
9
14
|
//# sourceMappingURL=TriggerButton.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TriggerButton.d.ts","sourceRoot":"","sources":["../../src/components/TriggerButton.tsx"],"names":[],"mappings":"AAGA,UAAU,kBAAkB;IAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,cAAc,GAAG,aAAa,CAAC;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"TriggerButton.d.ts","sourceRoot":"","sources":["../../src/components/TriggerButton.tsx"],"names":[],"mappings":"AAGA,UAAU,kBAAkB;IAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,cAAc,GAAG,aAAa,CAAC;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7D;AAED,wBAAgB,aAAa,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,kBAAkB,2CAsB5G"}
|
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import styles from './TriggerButton.module.css.mjs';
|
|
3
3
|
|
|
4
|
-
function TriggerButton({ onClick, position, accentColor, hasNotification }) {
|
|
4
|
+
function TriggerButton({ onClick, position, accentColor, hasNotification, offset }) {
|
|
5
5
|
const posClass = position === 'bottom-left' ? styles.bottomLeft : styles.bottomRight;
|
|
6
|
-
|
|
6
|
+
const inlinePos = {};
|
|
7
|
+
if (offset?.bottom !== undefined)
|
|
8
|
+
inlinePos.bottom = offset.bottom;
|
|
9
|
+
if (position === 'bottom-right' && offset?.right !== undefined)
|
|
10
|
+
inlinePos.right = offset.right;
|
|
11
|
+
if (position === 'bottom-left' && offset?.left !== undefined)
|
|
12
|
+
inlinePos.left = offset.left;
|
|
13
|
+
return (jsxs("button", { className: `${styles.trigger} ${posClass}`, onClick: onClick, style: { backgroundColor: accentColor, ...inlinePos }, "aria-label": "Open feedback", type: "button", children: [jsx("svg", { className: styles.triggerIcon, viewBox: "0 0 24 24", children: jsx("path", { d: "M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z" }) }), hasNotification && jsx("span", { className: styles.notificationDot })] }));
|
|
7
14
|
}
|
|
8
15
|
|
|
9
16
|
export { TriggerButton };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TriggerButton.mjs","sources":["../../src/components/TriggerButton.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"TriggerButton.mjs","sources":["../../src/components/TriggerButton.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":";;;AAWM,SAAU,aAAa,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,EAAsB,EAAA;AAC3G,IAAA,MAAM,QAAQ,GAAG,QAAQ,KAAK,aAAa,GAAG,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,WAAW;IAEpF,MAAM,SAAS,GAAwB,EAAE;AACzC,IAAA,IAAI,MAAM,EAAE,MAAM,KAAK,SAAS;AAAE,QAAA,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM;IAClE,IAAI,QAAQ,KAAK,cAAc,IAAI,MAAM,EAAE,KAAK,KAAK,SAAS;AAAE,QAAA,SAAS,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK;IAC9F,IAAI,QAAQ,KAAK,aAAa,IAAI,MAAM,EAAE,IAAI,KAAK,SAAS;AAAE,QAAA,SAAS,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI;AAE1F,IAAA,QACEA,IAAA,CAAA,QAAA,EAAA,EACE,SAAS,EAAE,CAAA,EAAG,MAAM,CAAC,OAAO,CAAA,CAAA,EAAI,QAAQ,CAAA,CAAE,EAC1C,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,EAAE,eAAe,EAAE,WAAW,EAAE,GAAG,SAAS,EAAE,EAAA,YAAA,EAC1C,eAAe,EAC1B,IAAI,EAAC,QAAQ,EAAA,QAAA,EAAA,CAEbC,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,MAAM,CAAC,WAAW,EAAE,OAAO,EAAC,WAAW,EAAA,QAAA,EACrDA,GAAA,CAAA,MAAA,EAAA,EAAM,CAAC,EAAC,+DAA+D,EAAA,CAAG,EAAA,CACtE,EACL,eAAe,IAAIA,GAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,MAAM,CAAC,eAAe,EAAA,CAAI,CAAA,EAAA,CACxD;AAEb;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import styleInject from '../node_modules/style-inject/dist/style-inject.es.mjs';
|
|
2
2
|
|
|
3
|
-
var css_248z = ".TriggerButton-module_trigger__02CR-{align-items:center;border:none;border-radius:50%;box-shadow:0 2px 12px rgba(0,0,0,.15);cursor:pointer;display:flex;height:48px;justify-content:center;outline:none;padding:0;position:fixed;transition:transform .12s cubic-bezier(.22,1,.36,1),box-shadow .12s cubic-bezier(.22,1,.36,1);width:48px;z-index:9999}.TriggerButton-module_trigger__02CR-:hover{box-shadow:0 4px 20px rgba(0,0,0,.2);transform:scale(1.08)}.TriggerButton-module_trigger__02CR-:active{transform:scale(.95)}.TriggerButton-module_bottomRight__566sd{bottom:16px;right:16px}.TriggerButton-module_bottomLeft__G7wbE{bottom:16px;left:16px}.TriggerButton-module_triggerIcon__WdZYH{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;color:#fff;height:24px;width:24px}.TriggerButton-module_notificationDot__b1Thf{animation:TriggerButton-module_pulse-dot__TIqUH 2s ease-in-out infinite;background:#ef4444;border:2px solid #fff;border-radius:50%;height:10px;position:absolute;right:-2px;top:-2px;width:10px}@keyframes TriggerButton-module_pulse-dot__TIqUH{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.3)}}@media (max-width:479px){.TriggerButton-module_trigger__02CR-{height:36px;width:36px}.TriggerButton-module_bottomRight__566sd{bottom:
|
|
3
|
+
var css_248z = ".TriggerButton-module_trigger__02CR-{align-items:center;border:none;border-radius:50%;box-shadow:0 2px 12px rgba(0,0,0,.15);cursor:pointer;display:flex;height:48px;justify-content:center;outline:none;padding:0;position:fixed;transition:transform .12s cubic-bezier(.22,1,.36,1),box-shadow .12s cubic-bezier(.22,1,.36,1);width:48px;z-index:9999}.TriggerButton-module_trigger__02CR-:hover{box-shadow:0 4px 20px rgba(0,0,0,.2);transform:scale(1.08)}.TriggerButton-module_trigger__02CR-:active{transform:scale(.95)}.TriggerButton-module_bottomRight__566sd{bottom:var(--pulse-offset-bottom,16px);right:var(--pulse-offset-right,16px)}.TriggerButton-module_bottomLeft__G7wbE{bottom:var(--pulse-offset-bottom,16px);left:var(--pulse-offset-left,16px)}.TriggerButton-module_triggerIcon__WdZYH{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;color:#fff;height:24px;width:24px}.TriggerButton-module_notificationDot__b1Thf{animation:TriggerButton-module_pulse-dot__TIqUH 2s ease-in-out infinite;background:#ef4444;border:2px solid #fff;border-radius:50%;height:10px;position:absolute;right:-2px;top:-2px;width:10px}@keyframes TriggerButton-module_pulse-dot__TIqUH{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.3)}}@media (max-width:479px){.TriggerButton-module_trigger__02CR-{height:36px;width:36px}.TriggerButton-module_bottomRight__566sd{bottom:var(--pulse-trigger-bottom,var(--pulse-offset-bottom,72px));right:var(--pulse-offset-right,12px)}.TriggerButton-module_bottomLeft__G7wbE{bottom:var(--pulse-trigger-bottom,var(--pulse-offset-bottom,72px));left:var(--pulse-offset-left,12px)}.TriggerButton-module_triggerIcon__WdZYH{height:18px;width:18px}.TriggerButton-module_notificationDot__b1Thf{height:8px;right:-1px;top:-1px;width:8px}}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRyaWdnZXJCdXR0b24ubW9kdWxlLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxQ0FTRSxrQkFBbUIsQ0FIbkIsV0FBWSxDQURaLGlCQUFrQixDQU1sQixxQ0FBMEMsQ0FKMUMsY0FBZSxDQUNmLFlBQWEsQ0FKYixXQUFZLENBTVosc0JBQXVCLENBS3ZCLFlBQWEsQ0FEYixTQUFVLENBYlYsY0FBZSxDQVdmLDZGQUMyRCxDQVYzRCxVQUFXLENBRFgsWUFjRixDQUVBLDJDQUVFLG9DQUF5QyxDQUR6QyxxQkFFRixDQUVBLDRDQUNFLG9CQUNGLENBRUEseUNBQ0Usc0NBQXdDLENBQ3hDLG9DQUNGLENBRUEsd0NBQ0Usc0NBQXdDLENBQ3hDLGtDQUNGLENBRUEseUNBSUUsU0FBVSxDQUNWLG1CQUFvQixDQUNwQixnQkFBaUIsQ0FDakIsb0JBQXFCLENBQ3JCLHFCQUFzQixDQUx0QixVQUFjLENBRGQsV0FBWSxDQURaLFVBUUYsQ0FFQSw2Q0FTRSx1RUFBNEMsQ0FGNUMsa0JBQW1CLENBQ25CLHFCQUF5QixDQUZ6QixpQkFBa0IsQ0FEbEIsV0FBWSxDQUpaLGlCQUFrQixDQUVsQixVQUFXLENBRFgsUUFBUyxDQUVULFVBTUYsQ0FFQSxpREFDRSxNQUFnQyxTQUFVLENBQS9CLGtCQUFpQyxDQUM1QyxJQUE2QixVQUFZLENBQW5DLG9CQUFxQyxDQUM3QyxDQUVBLHlCQUNFLHFDQUVFLFdBQVksQ0FEWixVQUVGLENBRUEseUNBQ0Usa0VBQXFFLENBQ3JFLG9DQUNGLENBRUEsd0NBQ0Usa0VBQXFFLENBQ3JFLGtDQUNGLENBRUEseUNBRUUsV0FBWSxDQURaLFVBRUYsQ0FFQSw2Q0FFRSxVQUFXLENBRVgsVUFBVyxDQURYLFFBQVMsQ0FGVCxTQUlGLENBQ0YiLCJmaWxlIjoiVHJpZ2dlckJ1dHRvbi5tb2R1bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnRyaWdnZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5OTk7XG4gIHdpZHRoOiA0OHB4O1xuICBoZWlnaHQ6IDQ4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3gtc2hhZG93OiAwIDJweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMjBtcyBjdWJpYy1iZXppZXIoMC4yMiwgMSwgMC4zNiwgMSksXG4gICAgICAgICAgICAgIGJveC1zaGFkb3cgMTIwbXMgY3ViaWMtYmV6aWVyKDAuMjIsIDEsIDAuMzYsIDEpO1xuICBwYWRkaW5nOiAwO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4udHJpZ2dlcjpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4udHJpZ2dlcjphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xufVxuXG4uYm90dG9tUmlnaHQge1xuICBib3R0b206IHZhcigtLXB1bHNlLW9mZnNldC1ib3R0b20sIDE2cHgpO1xuICByaWdodDogdmFyKC0tcHVsc2Utb2Zmc2V0LXJpZ2h0LCAxNnB4KTtcbn1cblxuLmJvdHRvbUxlZnQge1xuICBib3R0b206IHZhcigtLXB1bHNlLW9mZnNldC1ib3R0b20sIDE2cHgpO1xuICBsZWZ0OiB2YXIoLS1wdWxzZS1vZmZzZXQtbGVmdCwgMTZweCk7XG59XG5cbi50cmlnZ2VySWNvbiB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBmaWxsOiBub25lO1xuICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcbiAgc3Ryb2tlLXdpZHRoOiAxLjU7XG4gIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcbiAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcbn1cblxuLm5vdGlmaWNhdGlvbkRvdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMnB4O1xuICByaWdodDogLTJweDtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiAjRUY0NDQ0O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmZmZmZmO1xuICBhbmltYXRpb246IHB1bHNlLWRvdCAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBwdWxzZS1kb3Qge1xuICAwJSwgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IG9wYWNpdHk6IDE7IH1cbiAgNTAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjMpOyBvcGFjaXR5OiAwLjg7IH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gIC50cmlnZ2VyIHtcbiAgICB3aWR0aDogMzZweDtcbiAgICBoZWlnaHQ6IDM2cHg7XG4gIH1cblxuICAuYm90dG9tUmlnaHQge1xuICAgIGJvdHRvbTogdmFyKC0tcHVsc2UtdHJpZ2dlci1ib3R0b20sIHZhcigtLXB1bHNlLW9mZnNldC1ib3R0b20sIDcycHgpKTtcbiAgICByaWdodDogdmFyKC0tcHVsc2Utb2Zmc2V0LXJpZ2h0LCAxMnB4KTtcbiAgfVxuXG4gIC5ib3R0b21MZWZ0IHtcbiAgICBib3R0b206IHZhcigtLXB1bHNlLXRyaWdnZXItYm90dG9tLCB2YXIoLS1wdWxzZS1vZmZzZXQtYm90dG9tLCA3MnB4KSk7XG4gICAgbGVmdDogdmFyKC0tcHVsc2Utb2Zmc2V0LWxlZnQsIDEycHgpO1xuICB9XG5cbiAgLnRyaWdnZXJJY29uIHtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gIH1cblxuICAubm90aWZpY2F0aW9uRG90IHtcbiAgICB3aWR0aDogOHB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIHRvcDogLTFweDtcbiAgICByaWdodDogLTFweDtcbiAgfVxufVxuIl19 */";
|
|
4
4
|
var styles = {"trigger":"TriggerButton-module_trigger__02CR-","bottomRight":"TriggerButton-module_bottomRight__566sd","bottomLeft":"TriggerButton-module_bottomLeft__G7wbE","triggerIcon":"TriggerButton-module_triggerIcon__WdZYH","notificationDot":"TriggerButton-module_notificationDot__b1Thf"};
|
|
5
5
|
styleInject(css_248z);
|
|
6
6
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { PulseWidget } from './PulseWidget';
|
|
2
|
-
export type { PulseWidgetProps, FeedbackType, ThreadStatus, DiagnosticsSnapshot } from './types';
|
|
2
|
+
export type { PulseWidgetProps, PulseWidgetHandle, FeedbackType, ThreadStatus, DiagnosticsSnapshot } from './types';
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -59,10 +59,15 @@ export interface DiagnosticsSnapshot {
|
|
|
59
59
|
}>;
|
|
60
60
|
}
|
|
61
61
|
export interface PulseWidgetProps {
|
|
62
|
-
projectId: string;
|
|
63
62
|
apiKey: string;
|
|
64
63
|
apiUrl?: string;
|
|
65
64
|
position?: 'bottom-right' | 'bottom-left';
|
|
65
|
+
offset?: {
|
|
66
|
+
bottom?: number;
|
|
67
|
+
left?: number;
|
|
68
|
+
right?: number;
|
|
69
|
+
};
|
|
70
|
+
hideDefaultLauncher?: boolean;
|
|
66
71
|
accentColor?: string;
|
|
67
72
|
greeting?: string;
|
|
68
73
|
placeholder?: string;
|
|
@@ -75,6 +80,16 @@ export interface PulseWidgetProps {
|
|
|
75
80
|
onClose?: () => void;
|
|
76
81
|
onSubmit?: (threadId: string) => void;
|
|
77
82
|
}
|
|
83
|
+
export interface PulseWidgetHandle {
|
|
84
|
+
open: () => void;
|
|
85
|
+
close: () => void;
|
|
86
|
+
isOpen: () => boolean;
|
|
87
|
+
}
|
|
88
|
+
declare global {
|
|
89
|
+
interface Window {
|
|
90
|
+
Pulse?: PulseWidgetHandle;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
78
93
|
export declare const FEEDBACK_TYPES: {
|
|
79
94
|
value: FeedbackType;
|
|
80
95
|
emoji: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE/E,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,aAAa,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEvF,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,WAAW,CAAC;AAEjD,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACzE,MAAM,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1H,cAAc,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC9H;AAED,MAAM,WAAW,gBAAgB;IAC/B,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.mjs","sources":["../src/types.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;
|
|
1
|
+
{"version":3,"file":"types.mjs","sources":["../src/types.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;AAkFA;AACO,MAAM,cAAc,GAA2E;AACpG,IAAA,EAAE,KAAK,EAAE,KAAK,EAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAO,KAAK,EAAE,SAAS,EAAE;AACvE,IAAA,EAAE,KAAK,EAAE,SAAS,EAAG,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAG,KAAK,EAAE,SAAS,EAAE;AACvE,IAAA,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;AACtE,IAAA,EAAE,KAAK,EAAE,QAAQ,EAAI,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAI,KAAK,EAAE,SAAS,EAAE;AACvE,IAAA,EAAE,KAAK,EAAE,OAAO,EAAK,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAK,KAAK,EAAE,SAAS,EAAE;;;;;"}
|
package/package.json
CHANGED