@wireai/activation 0.12.2 → 0.13.2
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/AGENTS.md +3 -1
- package/CHANGELOG.md +259 -1
- package/README.md +87 -3
- package/dist/analytics/index.d.mts +2 -2
- package/dist/analytics/index.d.ts +2 -2
- package/dist/analytics/index.js +174 -36
- package/dist/analytics/index.js.map +1 -1
- package/dist/analytics/index.mjs +174 -37
- package/dist/analytics/index.mjs.map +1 -1
- package/dist/{currentSession-BlCeDP0f.d.mts → currentSession-ClkLjcJ0.d.mts} +456 -19
- package/dist/{currentSession-BxEB37xt.d.ts → currentSession-DOVZEWJl.d.ts} +456 -19
- package/dist/index.d.mts +197 -16
- package/dist/index.d.ts +197 -16
- package/dist/index.js +1056 -390
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +836 -193
- package/dist/index.mjs.map +1 -1
- package/dist/questionnaire/index.js.map +1 -1
- package/dist/questionnaire/index.mjs.map +1 -1
- package/dist/reviews/index.js +20 -7
- package/dist/reviews/index.js.map +1 -1
- package/dist/reviews/index.mjs +20 -7
- package/dist/reviews/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/OnboardingFlow.tsx +141 -3
- package/src/WireOnboarding.tsx +178 -34
- package/src/activation/wireActivation.ts +13 -7
- package/src/analytics/analyticsEvent.ts +16 -1
- package/src/analytics/analyticsFacade.ts +11 -10
- package/src/analytics/currentSession.ts +6 -20
- package/src/analytics/eventQueue.ts +71 -1
- package/src/analytics/index.ts +1 -1
- package/src/analytics/reportClientEvent.ts +157 -38
- package/src/cards/PermissionCard.tsx +438 -0
- package/src/cards/index.ts +7 -0
- package/src/config/wireConfigFromEnv.ts +1 -10
- package/src/context/deviceId.ts +77 -16
- package/src/context/userContext.ts +4 -15
- package/src/identity/identityRecord.ts +123 -0
- package/src/identity/userIdentity.ts +45 -9
- package/src/illustrations/defaultIllustrations.tsx +44 -3
- package/src/index.ts +44 -4
- package/src/permissions/index.ts +64 -0
- package/src/permissions/permissionCopy.ts +87 -0
- package/src/permissions/permissionEvents.ts +76 -0
- package/src/permissions/permissionMemory.ts +88 -0
- package/src/permissions/placement.ts +88 -0
- package/src/permissions/types.ts +131 -0
- package/src/session/persistedSession.ts +10 -3
- package/src/session-analytics/useLifecycleEvents.ts +10 -1
- package/src/types.ts +77 -1
- package/src/utils/deriveAnswers.ts +6 -2
- package/src/utils/readProgress.ts +4 -0
- package/src/utils/warnInDev.ts +33 -0
- package/src/components/DoneBlock.tsx +0 -37
package/dist/reviews/index.mjs
CHANGED
|
@@ -731,24 +731,30 @@ var requestStoreReview = async (store) => {
|
|
|
731
731
|
|
|
732
732
|
// src/analytics/reportClientEvent.ts
|
|
733
733
|
var makeSessionId = () => `wire_${Date.now().toString(36)}_${Math.random().toString(36).slice(2, 10)}`;
|
|
734
|
+
var toWireEvents = (events) => events.map((event) => {
|
|
735
|
+
if (typeof event.ts !== "number") return event;
|
|
736
|
+
const { ts, ...rest } = event;
|
|
737
|
+
if (!Number.isFinite(ts)) return rest;
|
|
738
|
+
try {
|
|
739
|
+
return { ...rest, ts: new Date(ts).toISOString() };
|
|
740
|
+
} catch {
|
|
741
|
+
return rest;
|
|
742
|
+
}
|
|
743
|
+
});
|
|
734
744
|
var buildEventsRequest = (target, events) => {
|
|
735
745
|
if (!(target == null ? void 0 : target.serverUrl) || events.length === 0) return null;
|
|
736
746
|
try {
|
|
737
747
|
const url = `${target.serverUrl.replace(/\/$/, "")}/v1/events`;
|
|
738
748
|
const headers = { "Content-Type": "application/json" };
|
|
739
749
|
if (target.apiKey) headers.Authorization = `Bearer ${target.apiKey}`;
|
|
740
|
-
|
|
750
|
+
const body = JSON.stringify({ events: toWireEvents(events) });
|
|
751
|
+
return { url, init: { method: "POST", headers, body } };
|
|
741
752
|
} catch {
|
|
742
753
|
return null;
|
|
743
754
|
}
|
|
744
755
|
};
|
|
745
756
|
|
|
746
|
-
// src/
|
|
747
|
-
var CURRENT_SESSION_ID_SLOT = /* @__PURE__ */ Symbol.for(
|
|
748
|
-
"@wireai/activation:currentSessionId"
|
|
749
|
-
);
|
|
750
|
-
var globalSlot = globalThis;
|
|
751
|
-
var getCurrentSessionId = () => globalSlot[CURRENT_SESSION_ID_SLOT];
|
|
757
|
+
// src/utils/warnInDev.ts
|
|
752
758
|
var warnInDev = (message) => {
|
|
753
759
|
if (typeof __DEV__ !== "undefined" && __DEV__ && typeof console !== "undefined" && console.warn) {
|
|
754
760
|
console.warn(message);
|
|
@@ -756,6 +762,13 @@ var warnInDev = (message) => {
|
|
|
756
762
|
}
|
|
757
763
|
return false;
|
|
758
764
|
};
|
|
765
|
+
|
|
766
|
+
// src/analytics/currentSession.ts
|
|
767
|
+
var CURRENT_SESSION_ID_SLOT = /* @__PURE__ */ Symbol.for(
|
|
768
|
+
"@wireai/activation:currentSessionId"
|
|
769
|
+
);
|
|
770
|
+
var globalSlot = globalThis;
|
|
771
|
+
var getCurrentSessionId = () => globalSlot[CURRENT_SESSION_ID_SLOT];
|
|
759
772
|
var MINT_WARNING = "[wireai] No app-open session was registered, so a session id was minted for this event (the server drops an event that has no session_id, and still answers 200). Mount useLifecycleEvents at your app root so events correlate to a real app-open.";
|
|
760
773
|
var MINT_WARNED_SLOT = /* @__PURE__ */ Symbol.for(
|
|
761
774
|
"@wireai/activation:currentSessionIdMintWarned"
|