@wireai/activation 0.13.2 → 0.13.3
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 +4 -3
- package/CHANGELOG.md +228 -4
- package/README.md +16 -2
- package/dist/analytics/index.d.mts +4 -4
- package/dist/analytics/index.d.ts +4 -4
- package/dist/analytics/index.js +104 -470
- package/dist/analytics/index.js.map +1 -1
- package/dist/analytics/index.mjs +102 -468
- package/dist/analytics/index.mjs.map +1 -1
- package/dist/coachmarks/index.d.mts +14 -1
- package/dist/coachmarks/index.d.ts +14 -1
- package/dist/coachmarks/index.js +58 -14
- package/dist/coachmarks/index.js.map +1 -1
- package/dist/coachmarks/index.mjs +58 -14
- package/dist/coachmarks/index.mjs.map +1 -1
- package/dist/{currentSession-ClkLjcJ0.d.mts → currentSession-BoWtr3Jp.d.mts} +2 -2
- package/dist/{currentSession-DOVZEWJl.d.ts → currentSession-CCOMlaQ2.d.ts} +2 -2
- package/dist/{decision-Bl_M2y3r.d.mts → decision-Cjw0jbEj.d.mts} +1 -1
- package/dist/{decision-Cau5KmP6.d.ts → decision-GfpXAsk_.d.ts} +1 -1
- package/dist/index.d.mts +25 -2
- package/dist/index.d.ts +25 -2
- package/dist/index.js +220 -573
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +217 -570
- package/dist/index.mjs.map +1 -1
- package/dist/questionnaire/index.d.mts +42 -10
- package/dist/questionnaire/index.d.ts +42 -10
- package/dist/questionnaire/index.js +45 -13
- package/dist/questionnaire/index.js.map +1 -1
- package/dist/questionnaire/index.mjs +45 -13
- package/dist/questionnaire/index.mjs.map +1 -1
- package/dist/reviews/index.d.mts +4 -4
- package/dist/reviews/index.d.ts +4 -4
- package/dist/reviews/index.js +27 -7
- package/dist/reviews/index.js.map +1 -1
- package/dist/reviews/index.mjs +27 -7
- package/dist/reviews/index.mjs.map +1 -1
- package/dist/showcase/index.js +7 -2
- package/dist/showcase/index.js.map +1 -1
- package/dist/showcase/index.mjs +7 -2
- package/dist/showcase/index.mjs.map +1 -1
- package/dist/{transport-DsRe4epC.d.ts → transport-CefdERPs.d.mts} +44 -5
- package/dist/{transport-CF_eHwzC.d.mts → transport-DFuPyCoJ.d.ts} +44 -5
- package/dist/{types-Buj9Lw9t.d.ts → types-UVYt9BJe.d.ts} +41 -1
- package/dist/{types-CNUqMK0D.d.mts → types-l2tfg23P.d.mts} +41 -1
- package/package.json +4 -1
- package/src/OnboardingFlow.tsx +44 -15
- package/src/WireOnboarding.tsx +7 -6
- package/src/activation/wireActivation.ts +3 -3
- package/src/analytics/analyticsFacade.ts +2 -2
- package/src/analytics/eventQueue.ts +83 -20
- package/src/cards/CardGridSelectCard.tsx +1 -1
- package/src/cards/ChipSelectCard.tsx +2 -2
- package/src/cards/SelectionCard.tsx +1 -1
- package/src/coachmarks/runtime.ts +62 -2
- package/src/coachmarks/useCoachmarkTour.ts +62 -14
- package/src/context/deviceId.ts +4 -4
- package/src/features/WireFeaturesProvider.tsx +4 -1
- package/src/identity/userIdentity.ts +1 -1
- package/src/questionnaire/QuestionnaireGate.tsx +90 -10
- package/src/questionnaire/index.ts +9 -1
- package/src/questionnaire/transport.ts +46 -11
- package/src/reviews/ReviewGate.tsx +61 -6
- package/src/reviews/index.ts +10 -1
- package/src/reviews/transport.ts +58 -12
- package/src/session-analytics/useLifecycleEvents.ts +1 -1
- package/src/theme/ThemeContext.tsx +42 -1
- package/src/types.ts +1 -1
- package/src/utils/submitResult.ts +39 -0
package/dist/reviews/index.mjs
CHANGED
|
@@ -54,7 +54,12 @@ var defaultOnboardingTheme = {
|
|
|
54
54
|
var mergeTheme = (override) => {
|
|
55
55
|
return defaultOnboardingTheme;
|
|
56
56
|
};
|
|
57
|
-
var
|
|
57
|
+
var THEME_CONTEXT_SLOT = /* @__PURE__ */ Symbol.for("@wireai/activation:themeContext");
|
|
58
|
+
var themeGlobal = globalThis;
|
|
59
|
+
if (!themeGlobal[THEME_CONTEXT_SLOT]) {
|
|
60
|
+
themeGlobal[THEME_CONTEXT_SLOT] = createContext(null);
|
|
61
|
+
}
|
|
62
|
+
var OnboardingThemeContext = themeGlobal[THEME_CONTEXT_SLOT];
|
|
58
63
|
var useOnboardingTheme = () => {
|
|
59
64
|
const ctx = useContext(OnboardingThemeContext);
|
|
60
65
|
return ctx != null ? ctx : mergeTheme();
|
|
@@ -786,19 +791,21 @@ var ensureCurrentSessionId = () => {
|
|
|
786
791
|
};
|
|
787
792
|
|
|
788
793
|
// src/reviews/transport.ts
|
|
789
|
-
var submitReview = (target, review) => {
|
|
790
|
-
if (!(target == null ? void 0 : target.serverUrl)) return;
|
|
794
|
+
var submitReview = async (target, review) => {
|
|
795
|
+
if (!(target == null ? void 0 : target.serverUrl)) return "unsent";
|
|
791
796
|
try {
|
|
792
797
|
const url = `${target.serverUrl.replace(/\/$/, "")}/v1/reviews`;
|
|
793
798
|
const headers = { "Content-Type": "application/json" };
|
|
794
799
|
if (target.apiKey) headers.Authorization = `Bearer ${target.apiKey}`;
|
|
795
|
-
|
|
800
|
+
const res = await fetch(url, {
|
|
796
801
|
method: "POST",
|
|
797
802
|
headers,
|
|
798
803
|
body: JSON.stringify(review)
|
|
799
|
-
}).catch(() => {
|
|
800
804
|
});
|
|
805
|
+
if (!res) return "unsent";
|
|
806
|
+
return res.ok ? "accepted" : "rejected";
|
|
801
807
|
} catch {
|
|
808
|
+
return "unsent";
|
|
802
809
|
}
|
|
803
810
|
};
|
|
804
811
|
var fetchReviewDecision = async (target, options = {}) => {
|
|
@@ -887,17 +894,30 @@ var _ReviewGate = ({
|
|
|
887
894
|
onResolved == null ? void 0 : onResolved();
|
|
888
895
|
}, [onResolved]);
|
|
889
896
|
const postedRef = React7.useRef(false);
|
|
897
|
+
const unackedRef = React7.useRef(null);
|
|
890
898
|
const postOnce = useCallback(
|
|
891
899
|
(body) => {
|
|
892
900
|
if (postedRef.current) return;
|
|
893
901
|
postedRef.current = true;
|
|
894
|
-
|
|
902
|
+
unackedRef.current = body;
|
|
903
|
+
void submitReview(target, body).then((result) => {
|
|
904
|
+
if (result === "unsent") {
|
|
905
|
+
postedRef.current = false;
|
|
906
|
+
return;
|
|
907
|
+
}
|
|
908
|
+
unackedRef.current = null;
|
|
909
|
+
});
|
|
895
910
|
},
|
|
896
911
|
[target]
|
|
897
912
|
);
|
|
898
913
|
const abandonRef = React7.useRef(() => {
|
|
899
914
|
});
|
|
900
915
|
abandonRef.current = () => {
|
|
916
|
+
const undelivered = unackedRef.current;
|
|
917
|
+
if (undelivered && !postedRef.current) {
|
|
918
|
+
postOnce(undelivered);
|
|
919
|
+
return;
|
|
920
|
+
}
|
|
901
921
|
if (postedRef.current || stars < 1) return;
|
|
902
922
|
postOnce(
|
|
903
923
|
buildReviewSubmission({
|
|
@@ -1265,7 +1285,7 @@ var useWireFeatures = (config) => {
|
|
|
1265
1285
|
return flags;
|
|
1266
1286
|
};
|
|
1267
1287
|
var CONTEXT_SYMBOL = /* @__PURE__ */ Symbol.for("wireai.features.context");
|
|
1268
|
-
var globalObj =
|
|
1288
|
+
var globalObj = globalThis;
|
|
1269
1289
|
if (!globalObj[CONTEXT_SYMBOL]) {
|
|
1270
1290
|
globalObj[CONTEXT_SYMBOL] = createContext(null);
|
|
1271
1291
|
}
|