@magicfeedback/popup-sdk 1.2.0 → 1.4.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/README.md +119 -70
- package/dist/assets/assets/style.css +5 -1
- package/dist/chunk-R4B3K2ZW.mjs +176 -0
- package/dist/chunk-R4B3K2ZW.mjs.map +1 -0
- package/dist/chunk-XFA2Y6CK.mjs +197 -0
- package/dist/chunk-XFA2Y6CK.mjs.map +1 -0
- package/dist/index.d.mts +40 -7
- package/dist/index.d.ts +40 -7
- package/dist/index.js +281 -900
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +276 -33
- package/dist/index.mjs.map +1 -1
- package/dist/react-native.d.mts +22 -2
- package/dist/react-native.d.ts +22 -2
- package/dist/react-native.js +283 -901
- package/dist/react-native.js.map +1 -1
- package/dist/react-native.mjs +278 -34
- package/dist/react-native.mjs.map +1 -1
- package/dist/{renderPopup-R53C7DB3.mjs → renderPopup-TCKR5Z3P.mjs} +5 -871
- package/dist/renderPopup-TCKR5Z3P.mjs.map +1 -0
- package/dist/{renderPopup-NHWJ7YSI.mjs → renderPopup-UYMGEBSI.mjs} +5 -871
- package/dist/renderPopup-UYMGEBSI.mjs.map +1 -0
- package/package.json +5 -10
- package/dist/chunk-4UXOEIAB.mjs +0 -172
- package/dist/chunk-4UXOEIAB.mjs.map +0 -1
- package/dist/chunk-XOTM5CHX.mjs +0 -193
- package/dist/chunk-XOTM5CHX.mjs.map +0 -1
- package/dist/renderPopup-NHWJ7YSI.mjs.map +0 -1
- package/dist/renderPopup-R53C7DB3.mjs.map +0 -1
package/dist/react-native.d.mts
CHANGED
|
@@ -162,6 +162,15 @@ interface DeepdotsInitParams {
|
|
|
162
162
|
* `setContactAttributes` after init (sends only when values changed from the last sync).
|
|
163
163
|
*/
|
|
164
164
|
contactAttributes?: Record<string, string | number | boolean>;
|
|
165
|
+
/**
|
|
166
|
+
* Whether the SDK renders the popup "modal" (card + backdrop + positioning) around the survey.
|
|
167
|
+
* Default `true`. Only affects React Native (the survey WebView HTML); the web DOM popup is
|
|
168
|
+
* unaffected. With `false` the survey is delivered transparent and edge-to-edge so the host
|
|
169
|
+
* mounts its own Modal/container and controls the styling — avoids the "double modal" when the
|
|
170
|
+
* host already wraps the WebView. The survey stays fully functional (bridge, form, nav buttons,
|
|
171
|
+
* close). Ver `ReactNativePopupRenderer`.
|
|
172
|
+
*/
|
|
173
|
+
renderChrome?: boolean;
|
|
165
174
|
}
|
|
166
175
|
/**
|
|
167
176
|
* Options for configuring survey triggers
|
|
@@ -243,7 +252,7 @@ interface PopupRenderer {
|
|
|
243
252
|
/** Preparar recursos si aplica */
|
|
244
253
|
init?(): void;
|
|
245
254
|
/** Mostrar popup */
|
|
246
|
-
show(surveyId: string, productId: string, actions: PopupActions | undefined, emit: (type: DeepdotsEventType, surveyId: string, data?: Record<string, unknown>) => void, onClose: () => void, env?: string, userId?: string, style?: PopupStyle, sessionId?: string, miniService?: string, analyticsFeedbackSessionId?: string): void;
|
|
255
|
+
show(surveyId: string, productId: string, actions: PopupActions | undefined, emit: (type: DeepdotsEventType, surveyId: string, data?: Record<string, unknown>) => void, onClose: () => void, env?: string, userId?: string, style?: PopupStyle, sessionId?: string, miniService?: string, analyticsFeedbackSessionId?: string, renderChrome?: boolean): void;
|
|
247
256
|
/** Ocultar popup */
|
|
248
257
|
hide(): void;
|
|
249
258
|
}
|
|
@@ -323,6 +332,8 @@ declare class DeepdotsPopups {
|
|
|
323
332
|
private deferredExitTimers;
|
|
324
333
|
private baseUrl;
|
|
325
334
|
private env;
|
|
335
|
+
/** Si el SDK pinta el "modal" del popup (RN). Default true; false = el host lo envuelve. */
|
|
336
|
+
private renderChrome;
|
|
326
337
|
/** Identidad + sesión (Fase 1 tracking). Null hasta init(). */
|
|
327
338
|
private tracking;
|
|
328
339
|
/** Capa de analytics (canal separado del feedback). Null hasta init(). */
|
|
@@ -394,6 +405,15 @@ declare class DeepdotsPopups {
|
|
|
394
405
|
trackFindabilityFriction(frictionTopic: string, params?: Record<string, unknown>): void;
|
|
395
406
|
/** Funnel: un paso del embudo, correlacionado por `taskId`. El backend reconstruye conversión/drop-off/tiempo. */
|
|
396
407
|
trackFunnelStep(funnel: string, step: string, taskId: string, params?: Record<string, unknown>): void;
|
|
408
|
+
/**
|
|
409
|
+
* Product Effectiveness: una interacción significativa del usuario (`interaction_type` es la
|
|
410
|
+
* dimensión de agrupación, p. ej. `get_help`, `homepage`, `contact_support`).
|
|
411
|
+
*
|
|
412
|
+
* Existe como evento RESERVADO para que la convención no la invente cada host: un `track()`
|
|
413
|
+
* custom acaba como `deepdots_event_…` y no lo cuenta la analítica de effectiveness.
|
|
414
|
+
* Un `interactionType` vacío se descarta con warning (no aporta dato agrupable).
|
|
415
|
+
*/
|
|
416
|
+
trackMeaningfulInteraction(interactionType: string, params?: Record<string, unknown>): void;
|
|
397
417
|
/**
|
|
398
418
|
* Messaging (#18–22): registra una etapa del funnel de una notificación (push/in-app).
|
|
399
419
|
* No-op si tracking off. El evento se descarta (con warning) si el `channel` no es válido,
|
|
@@ -612,7 +632,7 @@ declare class ReactNativePopupRenderer implements PopupRenderer {
|
|
|
612
632
|
private partialEmitted;
|
|
613
633
|
constructor(options?: ReactNativeRendererOptions);
|
|
614
634
|
init(): void;
|
|
615
|
-
show(surveyId: string, productId: string,
|
|
635
|
+
show(surveyId: string, productId: string, actions: PopupActions | undefined, emit: EmitFn, onClose: () => void, env?: string, userId?: string, style?: PopupStyle, sessionId?: string, miniService?: string, analyticsFeedbackSessionId?: string, renderChrome?: boolean): void;
|
|
616
636
|
hide(): void;
|
|
617
637
|
/**
|
|
618
638
|
* El host la conecta al `onMessage` del WebView. Traduce los mensajes del survey a
|
package/dist/react-native.d.ts
CHANGED
|
@@ -162,6 +162,15 @@ interface DeepdotsInitParams {
|
|
|
162
162
|
* `setContactAttributes` after init (sends only when values changed from the last sync).
|
|
163
163
|
*/
|
|
164
164
|
contactAttributes?: Record<string, string | number | boolean>;
|
|
165
|
+
/**
|
|
166
|
+
* Whether the SDK renders the popup "modal" (card + backdrop + positioning) around the survey.
|
|
167
|
+
* Default `true`. Only affects React Native (the survey WebView HTML); the web DOM popup is
|
|
168
|
+
* unaffected. With `false` the survey is delivered transparent and edge-to-edge so the host
|
|
169
|
+
* mounts its own Modal/container and controls the styling — avoids the "double modal" when the
|
|
170
|
+
* host already wraps the WebView. The survey stays fully functional (bridge, form, nav buttons,
|
|
171
|
+
* close). Ver `ReactNativePopupRenderer`.
|
|
172
|
+
*/
|
|
173
|
+
renderChrome?: boolean;
|
|
165
174
|
}
|
|
166
175
|
/**
|
|
167
176
|
* Options for configuring survey triggers
|
|
@@ -243,7 +252,7 @@ interface PopupRenderer {
|
|
|
243
252
|
/** Preparar recursos si aplica */
|
|
244
253
|
init?(): void;
|
|
245
254
|
/** Mostrar popup */
|
|
246
|
-
show(surveyId: string, productId: string, actions: PopupActions | undefined, emit: (type: DeepdotsEventType, surveyId: string, data?: Record<string, unknown>) => void, onClose: () => void, env?: string, userId?: string, style?: PopupStyle, sessionId?: string, miniService?: string, analyticsFeedbackSessionId?: string): void;
|
|
255
|
+
show(surveyId: string, productId: string, actions: PopupActions | undefined, emit: (type: DeepdotsEventType, surveyId: string, data?: Record<string, unknown>) => void, onClose: () => void, env?: string, userId?: string, style?: PopupStyle, sessionId?: string, miniService?: string, analyticsFeedbackSessionId?: string, renderChrome?: boolean): void;
|
|
247
256
|
/** Ocultar popup */
|
|
248
257
|
hide(): void;
|
|
249
258
|
}
|
|
@@ -323,6 +332,8 @@ declare class DeepdotsPopups {
|
|
|
323
332
|
private deferredExitTimers;
|
|
324
333
|
private baseUrl;
|
|
325
334
|
private env;
|
|
335
|
+
/** Si el SDK pinta el "modal" del popup (RN). Default true; false = el host lo envuelve. */
|
|
336
|
+
private renderChrome;
|
|
326
337
|
/** Identidad + sesión (Fase 1 tracking). Null hasta init(). */
|
|
327
338
|
private tracking;
|
|
328
339
|
/** Capa de analytics (canal separado del feedback). Null hasta init(). */
|
|
@@ -394,6 +405,15 @@ declare class DeepdotsPopups {
|
|
|
394
405
|
trackFindabilityFriction(frictionTopic: string, params?: Record<string, unknown>): void;
|
|
395
406
|
/** Funnel: un paso del embudo, correlacionado por `taskId`. El backend reconstruye conversión/drop-off/tiempo. */
|
|
396
407
|
trackFunnelStep(funnel: string, step: string, taskId: string, params?: Record<string, unknown>): void;
|
|
408
|
+
/**
|
|
409
|
+
* Product Effectiveness: una interacción significativa del usuario (`interaction_type` es la
|
|
410
|
+
* dimensión de agrupación, p. ej. `get_help`, `homepage`, `contact_support`).
|
|
411
|
+
*
|
|
412
|
+
* Existe como evento RESERVADO para que la convención no la invente cada host: un `track()`
|
|
413
|
+
* custom acaba como `deepdots_event_…` y no lo cuenta la analítica de effectiveness.
|
|
414
|
+
* Un `interactionType` vacío se descarta con warning (no aporta dato agrupable).
|
|
415
|
+
*/
|
|
416
|
+
trackMeaningfulInteraction(interactionType: string, params?: Record<string, unknown>): void;
|
|
397
417
|
/**
|
|
398
418
|
* Messaging (#18–22): registra una etapa del funnel de una notificación (push/in-app).
|
|
399
419
|
* No-op si tracking off. El evento se descarta (con warning) si el `channel` no es válido,
|
|
@@ -612,7 +632,7 @@ declare class ReactNativePopupRenderer implements PopupRenderer {
|
|
|
612
632
|
private partialEmitted;
|
|
613
633
|
constructor(options?: ReactNativeRendererOptions);
|
|
614
634
|
init(): void;
|
|
615
|
-
show(surveyId: string, productId: string,
|
|
635
|
+
show(surveyId: string, productId: string, actions: PopupActions | undefined, emit: EmitFn, onClose: () => void, env?: string, userId?: string, style?: PopupStyle, sessionId?: string, miniService?: string, analyticsFeedbackSessionId?: string, renderChrome?: boolean): void;
|
|
616
636
|
hide(): void;
|
|
617
637
|
/**
|
|
618
638
|
* El host la conecta al `onMessage` del WebView. Traduce los mensajes del survey a
|