flowgrid-sdk 1.2.0 → 1.3.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 +224 -250
- package/dist/237.flowgrid.min.js +2 -0
- package/dist/237.flowgrid.min.js.map +1 -0
- package/dist/546.flowgrid.min.js +3 -0
- package/dist/546.flowgrid.min.js.LICENSE.txt +14 -0
- package/dist/546.flowgrid.min.js.map +1 -0
- package/dist/EXAMPLE.d.ts +1 -0
- package/dist/EXAMPLE.js +55 -0
- package/dist/EXAMPLE.js.map +1 -0
- package/dist/browser.d.ts +46 -103
- package/dist/browser.js +102 -0
- package/dist/browser.js.map +1 -0
- package/dist/flowgrid.min.js +1 -1
- package/dist/flowgrid.min.js.map +1 -1
- package/dist/index.d.ts +7 -8
- package/dist/index.js +64 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/client/transport.d.ts +14 -4
- package/dist/lib/client/transport.js +432 -0
- package/dist/lib/client/transport.js.map +1 -0
- package/dist/lib/consent/index.d.ts +0 -5
- package/dist/lib/consent/index.js +32 -0
- package/dist/lib/consent/index.js.map +1 -0
- package/dist/lib/consent/manager.js +336 -0
- package/dist/lib/consent/manager.js.map +1 -0
- package/dist/lib/consent/types.d.ts +3 -20
- package/dist/lib/consent/types.js +10 -0
- package/dist/lib/consent/types.js.map +1 -0
- package/dist/lib/features/analytics/attribution.d.ts +6 -47
- package/dist/lib/features/analytics/attribution.js +181 -0
- package/dist/lib/features/analytics/attribution.js.map +1 -0
- package/dist/lib/features/analytics/events.d.ts +1 -28
- package/dist/lib/features/analytics/events.js +256 -0
- package/dist/lib/features/analytics/events.js.map +1 -0
- package/dist/lib/features/analytics/funnels.js +260 -0
- package/dist/lib/features/analytics/funnels.js.map +1 -0
- package/dist/lib/features/analytics/heatmaps.d.ts +12 -19
- package/dist/lib/features/analytics/heatmaps.js +258 -0
- package/dist/lib/features/analytics/heatmaps.js.map +1 -0
- package/dist/lib/features/analytics/identify.d.ts +1 -21
- package/dist/lib/features/analytics/identify.js +213 -0
- package/dist/lib/features/analytics/identify.js.map +1 -0
- package/dist/lib/features/analytics/index.d.ts +2 -0
- package/dist/lib/features/analytics/index.js +15 -0
- package/dist/lib/features/analytics/index.js.map +1 -0
- package/dist/lib/features/analytics/page-views.d.ts +13 -30
- package/dist/lib/features/analytics/page-views.js +268 -0
- package/dist/lib/features/analytics/page-views.js.map +1 -0
- package/dist/lib/features/analytics/performance.d.ts +18 -24
- package/dist/lib/features/analytics/performance.js +232 -0
- package/dist/lib/features/analytics/performance.js.map +1 -0
- package/dist/lib/features/analytics/replay.d.ts +170 -0
- package/dist/lib/features/analytics/replay.js +381 -0
- package/dist/lib/features/analytics/replay.js.map +1 -0
- package/dist/lib/features/analytics/retention.d.ts +1 -76
- package/dist/lib/features/analytics/retention.js +135 -0
- package/dist/lib/features/analytics/retention.js.map +1 -0
- package/dist/lib/features/analytics/sessions.d.ts +12 -37
- package/dist/lib/features/analytics/sessions.js +213 -0
- package/dist/lib/features/analytics/sessions.js.map +1 -0
- package/dist/lib/features/core/activation.d.ts +1 -24
- package/dist/lib/features/core/activation.js +175 -0
- package/dist/lib/features/core/activation.js.map +1 -0
- package/dist/lib/features/core/experiment.d.ts +53 -21
- package/dist/lib/features/core/experiment.js +554 -0
- package/dist/lib/features/core/experiment.js.map +1 -0
- package/dist/lib/features/core/index.js +9 -0
- package/dist/lib/features/core/index.js.map +1 -0
- package/dist/lib/features/core/track-feature.d.ts +1 -8
- package/dist/lib/features/core/track-feature.js +119 -0
- package/dist/lib/features/core/track-feature.js.map +1 -0
- package/dist/lib/features/core/track-prompt.d.ts +5 -8
- package/dist/lib/features/core/track-prompt.js +181 -0
- package/dist/lib/features/core/track-prompt.js.map +1 -0
- package/dist/lib/features/ecommerce/cart.d.ts +1 -24
- package/dist/lib/features/ecommerce/cart.js +244 -0
- package/dist/lib/features/ecommerce/cart.js.map +1 -0
- package/dist/lib/features/ecommerce/checkout.d.ts +1 -28
- package/dist/lib/features/ecommerce/checkout.js +254 -0
- package/dist/lib/features/ecommerce/checkout.js.map +1 -0
- package/dist/lib/features/ecommerce/index.d.ts +0 -2
- package/dist/lib/features/ecommerce/index.js +15 -0
- package/dist/lib/features/ecommerce/index.js.map +1 -0
- package/dist/lib/features/ecommerce/ltv.d.ts +1 -69
- package/dist/lib/features/ecommerce/ltv.js +114 -0
- package/dist/lib/features/ecommerce/ltv.js.map +1 -0
- package/dist/lib/features/ecommerce/products.d.ts +1 -33
- package/dist/lib/features/ecommerce/products.js +223 -0
- package/dist/lib/features/ecommerce/products.js.map +1 -0
- package/dist/lib/features/ecommerce/promotions.d.ts +1 -30
- package/dist/lib/features/ecommerce/promotions.js +197 -0
- package/dist/lib/features/ecommerce/promotions.js.map +1 -0
- package/dist/lib/features/ecommerce/purchases.d.ts +1 -48
- package/dist/lib/features/ecommerce/purchases.js +193 -0
- package/dist/lib/features/ecommerce/purchases.js.map +1 -0
- package/dist/lib/features/ecommerce/refunds.d.ts +1 -27
- package/dist/lib/features/ecommerce/refunds.js +195 -0
- package/dist/lib/features/ecommerce/refunds.js.map +1 -0
- package/dist/lib/features/ecommerce/search.d.ts +1 -24
- package/dist/lib/features/ecommerce/search.js +156 -0
- package/dist/lib/features/ecommerce/search.js.map +1 -0
- package/dist/lib/features/ecommerce/subscriptions.d.ts +1 -28
- package/dist/lib/features/ecommerce/subscriptions.js +207 -0
- package/dist/lib/features/ecommerce/subscriptions.js.map +1 -0
- package/dist/lib/features/ecommerce/wishlist.d.ts +1 -28
- package/dist/lib/features/ecommerce/wishlist.js +186 -0
- package/dist/lib/features/ecommerce/wishlist.js.map +1 -0
- package/dist/lib/features/enterprise/acquisition.d.ts +2 -57
- package/dist/lib/features/enterprise/acquisition.js +166 -0
- package/dist/lib/features/enterprise/acquisition.js.map +1 -0
- package/dist/lib/features/enterprise/alerts.d.ts +1 -37
- package/dist/lib/features/enterprise/alerts.js +246 -0
- package/dist/lib/features/enterprise/alerts.js.map +1 -0
- package/dist/lib/features/enterprise/churn.d.ts +1 -42
- package/dist/lib/features/enterprise/churn.js +175 -0
- package/dist/lib/features/enterprise/churn.js.map +1 -0
- package/dist/lib/features/enterprise/cohorts.d.ts +1 -37
- package/dist/lib/features/enterprise/cohorts.js +201 -0
- package/dist/lib/features/enterprise/cohorts.js.map +1 -0
- package/dist/lib/features/enterprise/engagement.d.ts +40 -46
- package/dist/lib/features/enterprise/engagement.js +335 -0
- package/dist/lib/features/enterprise/engagement.js.map +1 -0
- package/dist/lib/features/enterprise/forecasting.d.ts +0 -50
- package/dist/lib/features/enterprise/forecasting.js +232 -0
- package/dist/lib/features/enterprise/forecasting.js.map +1 -0
- package/dist/lib/features/enterprise/index.d.ts +1 -1
- package/dist/lib/features/enterprise/index.js +76 -0
- package/dist/lib/features/enterprise/index.js.map +1 -0
- package/dist/lib/features/enterprise/monetization.d.ts +1 -60
- package/dist/lib/features/enterprise/monetization.js +146 -0
- package/dist/lib/features/enterprise/monetization.js.map +1 -0
- package/dist/lib/features/enterprise/multi-path-funnels.d.ts +1 -17
- package/dist/lib/features/enterprise/multi-path-funnels.js +205 -0
- package/dist/lib/features/enterprise/multi-path-funnels.js.map +1 -0
- package/dist/lib/features/enterprise/paths.d.ts +1 -56
- package/dist/lib/features/enterprise/paths.js +149 -0
- package/dist/lib/features/enterprise/paths.js.map +1 -0
- package/dist/lib/features/enterprise/security.d.ts +8 -57
- package/dist/lib/features/enterprise/security.js +202 -0
- package/dist/lib/features/enterprise/security.js.map +1 -0
- package/dist/lib/features/enterprise/support.d.ts +3 -42
- package/dist/lib/features/enterprise/support.js +162 -0
- package/dist/lib/features/enterprise/support.js.map +1 -0
- package/dist/lib/flowgrid.d.ts +278 -0
- package/dist/lib/flowgrid.js +323 -0
- package/dist/lib/flowgrid.js.map +1 -0
- package/dist/lib/frameworks/index.d.ts +13 -6
- package/dist/lib/frameworks/index.js +18 -0
- package/dist/lib/frameworks/index.js.map +1 -0
- package/dist/lib/frameworks/nextjs/client.js +355 -0
- package/dist/lib/frameworks/nextjs/client.js.map +1 -0
- package/dist/lib/frameworks/nextjs/index.js +31 -0
- package/dist/lib/frameworks/nextjs/index.js.map +1 -0
- package/dist/lib/frameworks/nextjs/server.js +259 -0
- package/dist/lib/frameworks/nextjs/server.js.map +1 -0
- package/dist/lib/frameworks/node/index.js +391 -0
- package/dist/lib/frameworks/node/index.js.map +1 -0
- package/dist/lib/frameworks/nuxt/index.js +288 -0
- package/dist/lib/frameworks/nuxt/index.js.map +1 -0
- package/dist/lib/frameworks/react/CookieBanner.js +166 -0
- package/dist/lib/frameworks/react/CookieBanner.js.map +1 -0
- package/dist/lib/frameworks/react/index.d.ts +2 -2
- package/dist/lib/frameworks/react/index.js +271 -0
- package/dist/lib/frameworks/react/index.js.map +1 -0
- package/dist/lib/frameworks/vue/CookieBanner.js +165 -0
- package/dist/lib/frameworks/vue/CookieBanner.js.map +1 -0
- package/dist/lib/frameworks/vue/index.d.ts +2 -2
- package/dist/lib/frameworks/vue/index.js +390 -0
- package/dist/lib/frameworks/vue/index.js.map +1 -0
- package/dist/lib/tracking/analytics/attribution.d.ts +14 -0
- package/dist/lib/tracking/analytics/attribution.js +18 -0
- package/dist/lib/tracking/analytics/attribution.js.map +1 -0
- package/dist/lib/tracking/analytics/events.d.ts +26 -0
- package/dist/lib/tracking/analytics/events.js +30 -0
- package/dist/lib/tracking/analytics/events.js.map +1 -0
- package/dist/lib/tracking/analytics/funnels.d.ts +16 -0
- package/dist/lib/tracking/analytics/funnels.js +22 -0
- package/dist/lib/tracking/analytics/funnels.js.map +1 -0
- package/dist/lib/tracking/analytics/heatmaps.d.ts +27 -0
- package/dist/lib/tracking/analytics/heatmaps.js +22 -0
- package/dist/lib/tracking/analytics/heatmaps.js.map +1 -0
- package/dist/lib/tracking/analytics/identify.d.ts +16 -0
- package/dist/lib/tracking/analytics/identify.js +22 -0
- package/dist/lib/tracking/analytics/identify.js.map +1 -0
- package/dist/lib/tracking/analytics/index.d.ts +10 -0
- package/dist/lib/tracking/analytics/index.js +11 -0
- package/dist/lib/tracking/analytics/index.js.map +1 -0
- package/dist/lib/tracking/analytics/page-views.d.ts +29 -0
- package/dist/lib/tracking/analytics/page-views.js +50 -0
- package/dist/lib/tracking/analytics/page-views.js.map +1 -0
- package/dist/lib/tracking/analytics/performance.d.ts +22 -0
- package/dist/lib/tracking/analytics/performance.js +22 -0
- package/dist/lib/tracking/analytics/performance.js.map +1 -0
- package/dist/lib/tracking/analytics/replay.d.ts +34 -0
- package/dist/lib/tracking/analytics/replay.js +46 -0
- package/dist/lib/tracking/analytics/replay.js.map +1 -0
- package/dist/lib/tracking/analytics/retention.d.ts +10 -0
- package/dist/lib/tracking/analytics/retention.js +10 -0
- package/dist/lib/tracking/analytics/retention.js.map +1 -0
- package/dist/lib/tracking/analytics/sessions.d.ts +20 -0
- package/dist/lib/tracking/analytics/sessions.js +26 -0
- package/dist/lib/tracking/analytics/sessions.js.map +1 -0
- package/dist/lib/tracking/core/activation.d.ts +23 -0
- package/dist/lib/tracking/core/activation.js +33 -0
- package/dist/lib/tracking/core/activation.js.map +1 -0
- package/dist/lib/tracking/core/experiment.d.ts +122 -0
- package/dist/lib/tracking/core/experiment.js +150 -0
- package/dist/lib/tracking/core/experiment.js.map +1 -0
- package/dist/lib/tracking/core/feature.d.ts +13 -0
- package/dist/lib/tracking/core/feature.js +14 -0
- package/dist/lib/tracking/core/feature.js.map +1 -0
- package/dist/lib/tracking/core/index.d.ts +4 -0
- package/dist/lib/tracking/core/index.js +5 -0
- package/dist/lib/tracking/core/index.js.map +1 -0
- package/dist/lib/tracking/core/prompt.d.ts +18 -0
- package/dist/lib/tracking/core/prompt.js +26 -0
- package/dist/lib/tracking/core/prompt.js.map +1 -0
- package/dist/lib/tracking/ecommerce/cart.d.ts +17 -0
- package/dist/lib/tracking/ecommerce/cart.js +22 -0
- package/dist/lib/tracking/ecommerce/cart.js.map +1 -0
- package/dist/lib/tracking/ecommerce/checkout.d.ts +17 -0
- package/dist/lib/tracking/ecommerce/checkout.js +22 -0
- package/dist/lib/tracking/ecommerce/checkout.js.map +1 -0
- package/dist/lib/tracking/ecommerce/index.d.ts +10 -0
- package/dist/lib/tracking/ecommerce/index.js +11 -0
- package/dist/lib/tracking/ecommerce/index.js.map +1 -0
- package/dist/lib/tracking/ecommerce/ltv.d.ts +15 -0
- package/dist/lib/tracking/ecommerce/ltv.js +14 -0
- package/dist/lib/tracking/ecommerce/ltv.js.map +1 -0
- package/dist/lib/tracking/ecommerce/products.d.ts +15 -0
- package/dist/lib/tracking/ecommerce/products.js +18 -0
- package/dist/lib/tracking/ecommerce/products.js.map +1 -0
- package/dist/lib/tracking/ecommerce/promotions.d.ts +14 -0
- package/dist/lib/tracking/ecommerce/promotions.js +25 -0
- package/dist/lib/tracking/ecommerce/promotions.js.map +1 -0
- package/dist/lib/tracking/ecommerce/purchases.d.ts +11 -0
- package/dist/lib/tracking/ecommerce/purchases.js +10 -0
- package/dist/lib/tracking/ecommerce/purchases.js.map +1 -0
- package/dist/lib/tracking/ecommerce/refunds.d.ts +17 -0
- package/dist/lib/tracking/ecommerce/refunds.js +22 -0
- package/dist/lib/tracking/ecommerce/refunds.js.map +1 -0
- package/dist/lib/tracking/ecommerce/search.d.ts +24 -0
- package/dist/lib/tracking/ecommerce/search.js +22 -0
- package/dist/lib/tracking/ecommerce/search.js.map +1 -0
- package/dist/lib/tracking/ecommerce/subscriptions.d.ts +21 -0
- package/dist/lib/tracking/ecommerce/subscriptions.js +38 -0
- package/dist/lib/tracking/ecommerce/subscriptions.js.map +1 -0
- package/dist/lib/tracking/ecommerce/wishlist.d.ts +19 -0
- package/dist/lib/tracking/ecommerce/wishlist.js +26 -0
- package/dist/lib/tracking/ecommerce/wishlist.js.map +1 -0
- package/dist/lib/tracking/enterprise/acquisition.d.ts +25 -0
- package/dist/lib/tracking/enterprise/acquisition.js +22 -0
- package/dist/lib/tracking/enterprise/acquisition.js.map +1 -0
- package/dist/lib/tracking/enterprise/alerts.d.ts +32 -0
- package/dist/lib/tracking/enterprise/alerts.js +30 -0
- package/dist/lib/tracking/enterprise/alerts.js.map +1 -0
- package/dist/lib/tracking/enterprise/churn.d.ts +23 -0
- package/dist/lib/tracking/enterprise/churn.js +22 -0
- package/dist/lib/tracking/enterprise/churn.js.map +1 -0
- package/dist/lib/tracking/enterprise/cohorts.d.ts +18 -0
- package/dist/lib/tracking/enterprise/cohorts.js +18 -0
- package/dist/lib/tracking/enterprise/cohorts.js.map +1 -0
- package/dist/lib/tracking/enterprise/engagement.d.ts +31 -0
- package/dist/lib/tracking/enterprise/engagement.js +44 -0
- package/dist/lib/tracking/enterprise/engagement.js.map +1 -0
- package/dist/lib/tracking/enterprise/forecasting.d.ts +18 -0
- package/dist/lib/tracking/enterprise/forecasting.js +22 -0
- package/dist/lib/tracking/enterprise/forecasting.js.map +1 -0
- package/dist/lib/tracking/enterprise/index.d.ts +11 -0
- package/dist/lib/tracking/enterprise/index.js +12 -0
- package/dist/lib/tracking/enterprise/index.js.map +1 -0
- package/dist/lib/tracking/enterprise/monetization.d.ts +14 -0
- package/dist/lib/tracking/enterprise/monetization.js +10 -0
- package/dist/lib/tracking/enterprise/monetization.js.map +1 -0
- package/dist/lib/tracking/enterprise/multi-path-funnels.d.ts +20 -0
- package/dist/lib/tracking/enterprise/multi-path-funnels.js +18 -0
- package/dist/lib/tracking/enterprise/multi-path-funnels.js.map +1 -0
- package/dist/lib/tracking/enterprise/paths.d.ts +20 -0
- package/dist/lib/tracking/enterprise/paths.js +18 -0
- package/dist/lib/tracking/enterprise/paths.js.map +1 -0
- package/dist/lib/tracking/enterprise/security.d.ts +28 -0
- package/dist/lib/tracking/enterprise/security.js +26 -0
- package/dist/lib/tracking/enterprise/security.js.map +1 -0
- package/dist/lib/tracking/enterprise/support.d.ts +25 -0
- package/dist/lib/tracking/enterprise/support.js +22 -0
- package/dist/lib/tracking/enterprise/support.js.map +1 -0
- package/dist/lib/tracking/index.d.ts +4 -0
- package/dist/lib/tracking/index.js +5 -0
- package/dist/lib/tracking/index.js.map +1 -0
- package/dist/lib/types/analytics.d.ts +10 -2
- package/dist/lib/types/analytics.js +6 -0
- package/dist/lib/types/analytics.js.map +1 -0
- package/dist/lib/types/common.js +6 -0
- package/dist/lib/types/common.js.map +1 -0
- package/dist/lib/types/ecommerce.js +6 -0
- package/dist/lib/types/ecommerce.js.map +1 -0
- package/dist/lib/types/index.js +8 -0
- package/dist/lib/types/index.js.map +1 -0
- package/dist/lib/utils/browser.d.ts +16 -0
- package/dist/lib/utils/browser.js +32 -0
- package/dist/lib/utils/browser.js.map +1 -0
- package/dist/lib/utils/identity.js +346 -0
- package/dist/lib/utils/identity.js.map +1 -0
- package/dist/lib/utils/storage.js +105 -0
- package/dist/lib/utils/storage.js.map +1 -0
- package/dist/umd/237.index.js +2 -0
- package/dist/umd/237.index.js.map +1 -0
- package/dist/umd/546.index.js +3 -0
- package/dist/umd/546.index.js.LICENSE.txt +14 -0
- package/dist/umd/546.index.js.map +1 -0
- package/dist/umd/index.js +2 -0
- package/dist/umd/index.js.map +1 -0
- package/package.json +27 -80
- package/dist/lib/features/ecommerce/inventory.d.ts +0 -219
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/EXAMPLE.js
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { FlowGrid } from "./lib/flowgrid";
|
|
2
|
+
const fg = FlowGrid.init({
|
|
3
|
+
webId: "your_web_id",
|
|
4
|
+
apiKey: "your_api_key",
|
|
5
|
+
endpoint: "https://core.flow-grid.xyz"
|
|
6
|
+
});
|
|
7
|
+
const experiment = fg.experiments;
|
|
8
|
+
experiment.define({
|
|
9
|
+
experimentId: "button_color_test",
|
|
10
|
+
name: "Button Color Test",
|
|
11
|
+
description: "Testing different button colors to improve conversion rates",
|
|
12
|
+
primaryMetric: "conversion_rate",
|
|
13
|
+
variants: [
|
|
14
|
+
{ id: "blue", name: "Blue Button", weight: 50 },
|
|
15
|
+
{ id: "green", name: "Green Button", weight: 50 }
|
|
16
|
+
]
|
|
17
|
+
});
|
|
18
|
+
experiment.init([
|
|
19
|
+
{
|
|
20
|
+
id: "button_color_test",
|
|
21
|
+
variants: [
|
|
22
|
+
{ id: "blue", weight: 50 },
|
|
23
|
+
{ id: "green", weight: 50 }
|
|
24
|
+
]
|
|
25
|
+
}
|
|
26
|
+
]);
|
|
27
|
+
const variant = experiment.variant("button_color_test");
|
|
28
|
+
console.log(`User is in variant: ${variant}`);
|
|
29
|
+
experiment.assign("button_color_test", "user_123", variant, "random");
|
|
30
|
+
experiment.exposure("button_color_test", "user_123", variant);
|
|
31
|
+
experiment.conversion("button_color_test", "user_123", variant, "signup");
|
|
32
|
+
// const search = fg.search
|
|
33
|
+
// const batch = [
|
|
34
|
+
// "example",
|
|
35
|
+
// "example",
|
|
36
|
+
// "example",
|
|
37
|
+
// "example",
|
|
38
|
+
// "example",
|
|
39
|
+
// "example",
|
|
40
|
+
// "example",
|
|
41
|
+
// "example",
|
|
42
|
+
// "example",
|
|
43
|
+
// "example",
|
|
44
|
+
// "example",
|
|
45
|
+
// "example",
|
|
46
|
+
// "example",
|
|
47
|
+
// "example",
|
|
48
|
+
// "example",
|
|
49
|
+
// "example",
|
|
50
|
+
// "example",
|
|
51
|
+
// ];
|
|
52
|
+
// batch.forEach(async (query, index) => {
|
|
53
|
+
// await search.query(query, 10, { userId: `user_${index}`, sessionId: `session_${index}` });
|
|
54
|
+
// })
|
|
55
|
+
//# sourceMappingURL=EXAMPLE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EXAMPLE.js","sourceRoot":"","sources":["../src/EXAMPLE.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC;IACxB,KAAK,EAAE,aAAa;IACpB,MAAM,EAAE,cAAc;IACtB,QAAQ,EAAE,4BAA4B;CACtC,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,EAAE,CAAC,WAAW,CAAC;AAElC,UAAU,CAAC,MAAM,CAAC;IACjB,YAAY,EAAE,mBAAmB;IACjC,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,6DAA6D;IAC1E,aAAa,EAAE,iBAAiB;IAChC,QAAQ,EAAE;QACT,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE;QAC/C,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,EAAE;KACjD;CACD,CAAC,CAAC;AAEH,UAAU,CAAC,IAAI,CAAC;IACf;QACC,EAAE,EAAE,mBAAmB;QACvB,QAAQ,EAAE;YACT,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE;YAC1B,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;SAC3B;KACD;CACD,CAAC,CAAC;AAEH,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;AACxD,OAAO,CAAC,GAAG,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;AAE9C,UAAU,CAAC,MAAM,CAAC,mBAAmB,EAAE,UAAU,EAAE,OAAQ,EAAE,QAAQ,CAAC,CAAC;AACvE,UAAU,CAAC,QAAQ,CAAC,mBAAmB,EAAE,UAAU,EAAE,OAAQ,CAAC,CAAC;AAC/D,UAAU,CAAC,UAAU,CAAC,mBAAmB,EAAE,UAAU,EAAE,OAAQ,EAAE,QAAQ,CAAC,CAAC;AAE3E,2BAA2B;AAE3B,kBAAkB;AAClB,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,KAAK;AAEL,0CAA0C;AAC1C,8FAA8F;AAC9F,KAAK"}
|
package/dist/browser.d.ts
CHANGED
|
@@ -3,116 +3,59 @@
|
|
|
3
3
|
* @module browser
|
|
4
4
|
*
|
|
5
5
|
* @description
|
|
6
|
-
*
|
|
7
|
-
*
|
|
6
|
+
* Minimal script-tag facade over the unified FlowGrid SDK. Browser users get a
|
|
7
|
+
* tiny top-level API for the common path, while advanced users can call
|
|
8
|
+
* `FlowGrid.instance()` and use the full SDK namespaces.
|
|
8
9
|
*
|
|
9
10
|
* @example
|
|
10
11
|
* ```html
|
|
11
12
|
* <script src="https://cdn.flowgrid.com/sdk/v1/flowgrid.min.js"></script>
|
|
12
13
|
* <script>
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
* });
|
|
18
|
-
*
|
|
19
|
-
* // Track events
|
|
20
|
-
* flowgrid.track('button_click', { button: 'signup' });
|
|
21
|
-
* flowgrid.page();
|
|
22
|
-
* flowgrid.identify('user_123', { email: 'user@example.com' });
|
|
14
|
+
* FlowGrid.init({ webId: 'your-web-id', apiKey: 'your-api-key' });
|
|
15
|
+
* FlowGrid.track('button_click', { button: 'signup' });
|
|
16
|
+
* FlowGrid.page();
|
|
17
|
+
* FlowGrid.identify('user_123', { plan: 'pro' });
|
|
23
18
|
* </script>
|
|
24
19
|
* ```
|
|
25
20
|
*/
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
}
|
|
36
|
-
declare class FlowGridBrowser {
|
|
37
|
-
private config;
|
|
38
|
-
private activation;
|
|
39
|
-
private trackFeature;
|
|
40
|
-
private experiment;
|
|
41
|
-
private pageViews;
|
|
42
|
-
private sessions;
|
|
43
|
-
private events;
|
|
44
|
-
private identifyModule;
|
|
45
|
-
private products;
|
|
46
|
-
private cart;
|
|
47
|
-
private checkout;
|
|
48
|
-
private purchases;
|
|
49
|
-
private sessionId;
|
|
50
|
-
private visitorId;
|
|
51
|
-
private identity;
|
|
52
|
-
/**
|
|
53
|
-
* Initialize FlowGrid SDK for browser use.
|
|
54
|
-
*/
|
|
55
|
-
init(config: BrowserConfig): void;
|
|
56
|
-
/**
|
|
57
|
-
* Track a custom event.
|
|
58
|
-
*/
|
|
59
|
-
track(eventName: string, properties?: Record<string, unknown>): Promise<void>;
|
|
60
|
-
/**
|
|
61
|
-
* Track a page view.
|
|
62
|
-
*/
|
|
63
|
-
page(url?: string, title?: string): Promise<void>;
|
|
64
|
-
/**
|
|
65
|
-
* Identify a user.
|
|
66
|
-
*/
|
|
67
|
-
identify(userId: string, traits?: Record<string, unknown>): Promise<void>;
|
|
68
|
-
/**
|
|
69
|
-
* Track product view.
|
|
70
|
-
*/
|
|
71
|
-
productView(product: {
|
|
72
|
-
productId: string;
|
|
73
|
-
name: string;
|
|
74
|
-
price: number;
|
|
75
|
-
currency?: string;
|
|
76
|
-
category?: string;
|
|
77
|
-
brand?: string;
|
|
78
|
-
}): Promise<void>;
|
|
79
|
-
/**
|
|
80
|
-
* Track add to cart.
|
|
81
|
-
*/
|
|
82
|
-
addToCart(product: {
|
|
83
|
-
productId: string;
|
|
84
|
-
name: string;
|
|
85
|
-
price: number;
|
|
21
|
+
import { FlowGrid, FlowGridInitConfig } from "./lib/flowgrid";
|
|
22
|
+
import type { ConsentCategory } from "./lib/client/transport";
|
|
23
|
+
import type { Product } from "./lib/types";
|
|
24
|
+
type BrowserProduct = Pick<Product, "productId" | "name" | "price"> & Partial<Product>;
|
|
25
|
+
type BrowserOrder = {
|
|
26
|
+
orderId: string;
|
|
27
|
+
total: number;
|
|
28
|
+
currency?: Product["currency"];
|
|
29
|
+
items: Array<Pick<Product, "productId" | "name" | "price"> & Partial<Product> & {
|
|
86
30
|
quantity: number;
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
*/
|
|
115
|
-
private parseUTM;
|
|
31
|
+
}>;
|
|
32
|
+
subtotal?: number;
|
|
33
|
+
discountTotal?: number;
|
|
34
|
+
shippingTotal?: number;
|
|
35
|
+
taxTotal?: number;
|
|
36
|
+
};
|
|
37
|
+
type BrowserFacade = {
|
|
38
|
+
init(config: FlowGridInitConfig): FlowGrid;
|
|
39
|
+
instance(): FlowGrid | null;
|
|
40
|
+
reset(): void;
|
|
41
|
+
setConsent(consent: Partial<Record<ConsentCategory, boolean>>): void;
|
|
42
|
+
hasConsent(category: ConsentCategory): boolean;
|
|
43
|
+
autoTrack(options?: Parameters<FlowGrid["autoTrack"]>[0]): () => void;
|
|
44
|
+
track: FlowGrid["track"];
|
|
45
|
+
page: FlowGrid["page"];
|
|
46
|
+
identify: FlowGrid["identifyUser"];
|
|
47
|
+
experiment: FlowGrid["experiment"];
|
|
48
|
+
productView(product: BrowserProduct, properties?: Record<string, unknown>): ReturnType<FlowGrid["products"]["view"]>;
|
|
49
|
+
addToCart(product: BrowserProduct, quantity?: number, cartId?: string): ReturnType<FlowGrid["cart"]["add"]>;
|
|
50
|
+
purchase(order: BrowserOrder): ReturnType<FlowGrid["purchases"]["complete"]>;
|
|
51
|
+
};
|
|
52
|
+
declare const browserFlowGrid: BrowserFacade;
|
|
53
|
+
declare global {
|
|
54
|
+
interface Window {
|
|
55
|
+
FlowGrid: BrowserFacade;
|
|
56
|
+
flowgrid: BrowserFacade;
|
|
57
|
+
}
|
|
116
58
|
}
|
|
117
|
-
|
|
118
|
-
export
|
|
59
|
+
export { FlowGrid };
|
|
60
|
+
export type { BrowserFacade, BrowserOrder, BrowserProduct };
|
|
61
|
+
export default browserFlowGrid;
|
package/dist/browser.js
ADDED
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview FlowGrid SDK - Browser Bundle
|
|
3
|
+
* @module browser
|
|
4
|
+
*
|
|
5
|
+
* @description
|
|
6
|
+
* Minimal script-tag facade over the unified FlowGrid SDK. Browser users get a
|
|
7
|
+
* tiny top-level API for the common path, while advanced users can call
|
|
8
|
+
* `FlowGrid.instance()` and use the full SDK namespaces.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```html
|
|
12
|
+
* <script src="https://cdn.flowgrid.com/sdk/v1/flowgrid.min.js"></script>
|
|
13
|
+
* <script>
|
|
14
|
+
* FlowGrid.init({ webId: 'your-web-id', apiKey: 'your-api-key' });
|
|
15
|
+
* FlowGrid.track('button_click', { button: 'signup' });
|
|
16
|
+
* FlowGrid.page();
|
|
17
|
+
* FlowGrid.identify('user_123', { plan: 'pro' });
|
|
18
|
+
* </script>
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
import { FlowGrid } from "./lib/flowgrid";
|
|
22
|
+
function getInstance() {
|
|
23
|
+
const instance = FlowGrid.instance();
|
|
24
|
+
if (!instance) {
|
|
25
|
+
throw new Error("FlowGrid not initialized. Call FlowGrid.init() first.");
|
|
26
|
+
}
|
|
27
|
+
return instance;
|
|
28
|
+
}
|
|
29
|
+
function normalizeProduct(product) {
|
|
30
|
+
return {
|
|
31
|
+
...product,
|
|
32
|
+
currency: product.currency ?? "USD",
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
function normalizeOrder(order) {
|
|
36
|
+
const currency = order.currency ?? "USD";
|
|
37
|
+
const items = order.items.map((item) => ({
|
|
38
|
+
...item,
|
|
39
|
+
currency: item.currency ?? currency,
|
|
40
|
+
quantity: item.quantity,
|
|
41
|
+
lineTotal: item.price * item.quantity,
|
|
42
|
+
}));
|
|
43
|
+
const subtotal = order.subtotal ?? items.reduce((sum, item) => sum + item.lineTotal, 0);
|
|
44
|
+
return {
|
|
45
|
+
orderId: order.orderId,
|
|
46
|
+
items,
|
|
47
|
+
subtotal,
|
|
48
|
+
discountTotal: order.discountTotal ?? 0,
|
|
49
|
+
shippingTotal: order.shippingTotal ?? 0,
|
|
50
|
+
taxTotal: order.taxTotal ?? 0,
|
|
51
|
+
total: order.total,
|
|
52
|
+
currency,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
const browserFlowGrid = {
|
|
56
|
+
init(config) {
|
|
57
|
+
return FlowGrid.init(config);
|
|
58
|
+
},
|
|
59
|
+
instance() {
|
|
60
|
+
return FlowGrid.instance();
|
|
61
|
+
},
|
|
62
|
+
reset() {
|
|
63
|
+
FlowGrid.reset();
|
|
64
|
+
},
|
|
65
|
+
setConsent(consent) {
|
|
66
|
+
FlowGrid.setConsent(consent);
|
|
67
|
+
},
|
|
68
|
+
hasConsent(category) {
|
|
69
|
+
return FlowGrid.hasConsent(category);
|
|
70
|
+
},
|
|
71
|
+
autoTrack(options) {
|
|
72
|
+
return getInstance().autoTrack(options);
|
|
73
|
+
},
|
|
74
|
+
track(eventName, properties, options) {
|
|
75
|
+
return getInstance().track(eventName, properties, options);
|
|
76
|
+
},
|
|
77
|
+
page(pathOrUrl, properties, options) {
|
|
78
|
+
return getInstance().page(pathOrUrl, properties, options);
|
|
79
|
+
},
|
|
80
|
+
identify(userId, traits, anonymousId) {
|
|
81
|
+
return getInstance().identifyUser(userId, traits, anonymousId);
|
|
82
|
+
},
|
|
83
|
+
experiment(experimentId, options) {
|
|
84
|
+
return getInstance().experiment(experimentId, options);
|
|
85
|
+
},
|
|
86
|
+
productView(product, properties) {
|
|
87
|
+
return getInstance().products.view(normalizeProduct(product), properties);
|
|
88
|
+
},
|
|
89
|
+
addToCart(product, quantity = 1, cartId) {
|
|
90
|
+
return getInstance().cart.add(normalizeProduct(product), quantity, cartId);
|
|
91
|
+
},
|
|
92
|
+
purchase(order) {
|
|
93
|
+
return getInstance().purchases.complete(normalizeOrder(order));
|
|
94
|
+
},
|
|
95
|
+
};
|
|
96
|
+
if (typeof window !== "undefined") {
|
|
97
|
+
window.FlowGrid = browserFlowGrid;
|
|
98
|
+
window.flowgrid = browserFlowGrid;
|
|
99
|
+
}
|
|
100
|
+
export { FlowGrid };
|
|
101
|
+
export default browserFlowGrid;
|
|
102
|
+
//# sourceMappingURL=browser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"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"}
|